pxengine 0.1.41 → 0.1.43

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.cjs CHANGED
@@ -121,9 +121,14 @@ __export(index_exports, {
121
121
  CountrySelectDisplay: () => CountrySelectDisplay,
122
122
  CountrySelectEdit: () => CountrySelectEdit,
123
123
  CreatorActionHeader: () => CreatorActionHeader,
124
+ CreatorCompactView: () => CreatorCompactView,
124
125
  CreatorGridCard: () => CreatorGridCard,
126
+ CreatorImageList: () => CreatorImageList,
125
127
  CreatorProfileSummary: () => CreatorProfileSummary,
128
+ CreatorProgressBar: () => CreatorProgressBar,
126
129
  CreatorSearch: () => CreatorSearch,
130
+ CreatorWidget: () => CreatorWidget,
131
+ CreatorWidgetSkeleton: () => CreatorWidgetSkeleton,
127
132
  DataGrid: () => DataGrid,
128
133
  Dialog: () => Dialog,
129
134
  DialogAtom: () => DialogAtom,
@@ -301,12 +306,13 @@ __export(index_exports, {
301
306
  UIComponentSelector: () => UIComponentSelector,
302
307
  VideoAtom: () => VideoAtom,
303
308
  WorkflowVisualizer: () => WorkflowVisualizer,
304
- cn: () => cn
309
+ cn: () => cn,
310
+ useCreatorWidgetPolling: () => useCreatorWidgetPolling
305
311
  });
306
312
  module.exports = __toCommonJS(index_exports);
307
313
 
308
314
  // src/render/PXEngineRenderer.tsx
309
- var import_react71 = __toESM(require("react"), 1);
315
+ var import_react75 = __toESM(require("react"), 1);
310
316
 
311
317
  // src/atoms/index.ts
312
318
  var atoms_exports = {};
@@ -33589,9 +33595,14 @@ __export(molecules_exports, {
33589
33595
  CountrySelectDisplay: () => CountrySelectDisplay,
33590
33596
  CountrySelectEdit: () => CountrySelectEdit,
33591
33597
  CreatorActionHeader: () => CreatorActionHeader,
33598
+ CreatorCompactView: () => CreatorCompactView,
33592
33599
  CreatorGridCard: () => CreatorGridCard,
33600
+ CreatorImageList: () => CreatorImageList,
33593
33601
  CreatorProfileSummary: () => CreatorProfileSummary,
33602
+ CreatorProgressBar: () => CreatorProgressBar,
33594
33603
  CreatorSearch: () => CreatorSearch,
33604
+ CreatorWidget: () => CreatorWidget,
33605
+ CreatorWidgetSkeleton: () => CreatorWidgetSkeleton,
33595
33606
  DataGrid: () => DataGrid,
33596
33607
  EditableField: () => EditableField,
33597
33608
  EmptyState: () => EmptyState,
@@ -33619,7 +33630,8 @@ __export(molecules_exports, {
33619
33630
  ToolListCard: () => ToolListCard,
33620
33631
  TopPostsGrid: () => TopPostsGrid,
33621
33632
  UIComponentSelector: () => UIComponentSelector,
33622
- WorkflowVisualizer: () => WorkflowVisualizer
33633
+ WorkflowVisualizer: () => WorkflowVisualizer,
33634
+ useCreatorWidgetPolling: () => useCreatorWidgetPolling
33623
33635
  });
33624
33636
 
33625
33637
  // src/molecules/generic/EditableField/EditableField.tsx
@@ -36629,7 +36641,8 @@ var CampaignConceptCard = import_react64.default.memo(
36629
36641
  ...field,
36630
36642
  label: "Budget Allocation",
36631
36643
  renderDisplay: (val) => {
36632
- if (!val) return /* @__PURE__ */ (0, import_jsx_runtime121.jsx)("span", { className: "text-muted-foreground text-sm", children: "-" });
36644
+ if (!val)
36645
+ return /* @__PURE__ */ (0, import_jsx_runtime121.jsx)("span", { className: "text-muted-foreground text-sm", children: "-" });
36633
36646
  if (Array.isArray(val)) {
36634
36647
  return /* @__PURE__ */ (0, import_jsx_runtime121.jsx)("div", { className: "space-y-2", children: val.map((item, idx) => {
36635
36648
  const label = item?.label ?? item?.key ?? `Item ${idx + 1}`;
@@ -36647,7 +36660,8 @@ var CampaignConceptCard = import_react64.default.memo(
36647
36660
  }
36648
36661
  if (typeof val === "object") {
36649
36662
  const entries = Object.entries(val);
36650
- if (entries.length === 0) return /* @__PURE__ */ (0, import_jsx_runtime121.jsx)("span", { className: "text-muted-foreground text-sm", children: "-" });
36663
+ if (entries.length === 0)
36664
+ return /* @__PURE__ */ (0, import_jsx_runtime121.jsx)("span", { className: "text-muted-foreground text-sm", children: "-" });
36651
36665
  return /* @__PURE__ */ (0, import_jsx_runtime121.jsx)("div", { className: "space-y-2", children: entries.map(([k, v], idx) => /* @__PURE__ */ (0, import_jsx_runtime121.jsxs)("div", { className: "flex items-center gap-2", children: [
36652
36666
  /* @__PURE__ */ (0, import_jsx_runtime121.jsxs)("span", { className: "text-muted-foreground font-medium", children: [
36653
36667
  idx + 1,
@@ -36694,7 +36708,8 @@ var CampaignConceptCard = import_react64.default.memo(
36694
36708
  ...field,
36695
36709
  label: "Estimated Creators",
36696
36710
  renderDisplay: (val) => {
36697
- if (!val) return /* @__PURE__ */ (0, import_jsx_runtime121.jsx)("span", { className: "text-muted-foreground text-sm", children: "-" });
36711
+ if (!val)
36712
+ return /* @__PURE__ */ (0, import_jsx_runtime121.jsx)("span", { className: "text-muted-foreground text-sm", children: "-" });
36698
36713
  const displayValue = typeof val === "object" && !Array.isArray(val) ? `${val.min ?? 0}-${val.max ?? 0}` : String(val);
36699
36714
  return /* @__PURE__ */ (0, import_jsx_runtime121.jsx)("span", { className: "text-foreground text-sm", children: displayValue });
36700
36715
  },
@@ -36759,13 +36774,7 @@ var CampaignConceptCard = import_react64.default.memo(
36759
36774
  return {
36760
36775
  ...field,
36761
36776
  renderDisplay: (v) => /* @__PURE__ */ (0, import_jsx_runtime121.jsx)(PlatformSelectDisplay, { value: v }),
36762
- renderEdit: (v, onChange) => /* @__PURE__ */ (0, import_jsx_runtime121.jsx)(
36763
- PlatformSelectEdit,
36764
- {
36765
- value: v,
36766
- onChange
36767
- }
36768
- )
36777
+ renderEdit: (v, onChange) => /* @__PURE__ */ (0, import_jsx_runtime121.jsx)(PlatformSelectEdit, { value: v, onChange })
36769
36778
  };
36770
36779
  }
36771
36780
  if (field.key === "description" || field.key === "creator_strategy" || field.key === "creatorStrategy") {
@@ -36779,7 +36788,8 @@ var CampaignConceptCard = import_react64.default.memo(
36779
36788
  ...field,
36780
36789
  renderDisplay: (val) => {
36781
36790
  if (Array.isArray(val)) {
36782
- if (val.length === 0) return /* @__PURE__ */ (0, import_jsx_runtime121.jsx)("span", { className: "text-muted-foreground text-sm", children: "-" });
36791
+ if (val.length === 0)
36792
+ return /* @__PURE__ */ (0, import_jsx_runtime121.jsx)("span", { className: "text-muted-foreground text-sm", children: "-" });
36783
36793
  return /* @__PURE__ */ (0, import_jsx_runtime121.jsx)("div", { className: "flex flex-wrap gap-2 pt-1", children: val.map((item, idx) => {
36784
36794
  const label = typeof item === "object" && item !== null ? item.label || item.value || item.name || JSON.stringify(item) : String(item);
36785
36795
  return /* @__PURE__ */ (0, import_jsx_runtime121.jsx)(
@@ -36804,7 +36814,7 @@ var CampaignConceptCard = import_react64.default.memo(
36804
36814
  "div",
36805
36815
  {
36806
36816
  className: cn(
36807
- "w-full max-w-[600px] rounded-xl border bg-background dark:bg-gray100 relative transition-all duration-300",
36817
+ "w-full rounded-xl border bg-background dark:bg-gray100 relative transition-all duration-300",
36808
36818
  isSelected || isRecommended ? "border-2 border-green500" : "border-gray400",
36809
36819
  className
36810
36820
  ),
@@ -36819,7 +36829,8 @@ var CampaignConceptCard = import_react64.default.memo(
36819
36829
  /* @__PURE__ */ (0, import_jsx_runtime121.jsxs)("h3", { className: "mb-1 py-1 text-txtColor font-bold text-lg", children: [
36820
36830
  "Concept ",
36821
36831
  index !== void 0 ? index : "",
36822
- " : ",
36832
+ " :",
36833
+ " ",
36823
36834
  typeof cardTitle === "object" ? JSON.stringify(cardTitle) : String(cardTitle)
36824
36835
  ] }),
36825
36836
  /* @__PURE__ */ (0, import_jsx_runtime121.jsxs)("div", { className: "flex flex-wrap gap-2", children: [
@@ -36827,25 +36838,32 @@ var CampaignConceptCard = import_react64.default.memo(
36827
36838
  !effectiveIsLatest && selectionStatus && /* @__PURE__ */ (0, import_jsx_runtime121.jsx)("div", { className: "inline-flex text-[10px] font-bold uppercase tracking-widest text-[#3B82F6]", children: /* @__PURE__ */ (0, import_jsx_runtime121.jsx)("span", { className: "bg-[#3B82F6]/10 px-2 py-0.5 rounded border border-[#3B82F6]/20", children: selectionStatus === "agent" ? "Selected by Agent" : "Selected by You" }) })
36828
36839
  ] })
36829
36840
  ] }),
36830
- /* @__PURE__ */ (0, import_jsx_runtime121.jsx)("div", { className: "flex items-center gap-2 ml-3", onClick: (e) => e.stopPropagation(), children: /* @__PURE__ */ (0, import_jsx_runtime121.jsx)(
36831
- "button",
36841
+ /* @__PURE__ */ (0, import_jsx_runtime121.jsx)(
36842
+ "div",
36832
36843
  {
36833
- onClick: (e) => {
36834
- e.preventDefault();
36835
- e.stopPropagation();
36836
- handleToggle();
36837
- },
36838
- className: "p-2 bg-background hover:bg-gray200 dark:hover:bg-gray200 text-foreground rounded-lg shadow-lg",
36839
- "aria-label": isOpen ? "Collapse" : "Expand",
36840
- title: isOpen ? "Collapse" : "Expand",
36844
+ className: "flex items-center gap-2 ml-3",
36845
+ onClick: (e) => e.stopPropagation(),
36841
36846
  children: /* @__PURE__ */ (0, import_jsx_runtime121.jsx)(
36842
- ChevronDown,
36847
+ "button",
36843
36848
  {
36844
- className: `h-4 w-4 transition-transform ${isOpen ? "rotate-0" : "-rotate-90"}`
36849
+ onClick: (e) => {
36850
+ e.preventDefault();
36851
+ e.stopPropagation();
36852
+ handleToggle();
36853
+ },
36854
+ className: "p-2 bg-background hover:bg-gray200 dark:hover:bg-gray200 text-foreground rounded-lg shadow-lg",
36855
+ "aria-label": isOpen ? "Collapse" : "Expand",
36856
+ title: isOpen ? "Collapse" : "Expand",
36857
+ children: /* @__PURE__ */ (0, import_jsx_runtime121.jsx)(
36858
+ ChevronDown,
36859
+ {
36860
+ className: `h-4 w-4 transition-transform ${isOpen ? "rotate-0" : "-rotate-90"}`
36861
+ }
36862
+ )
36845
36863
  }
36846
36864
  )
36847
36865
  }
36848
- ) })
36866
+ )
36849
36867
  ]
36850
36868
  }
36851
36869
  ),
@@ -36857,7 +36875,7 @@ var CampaignConceptCard = import_react64.default.memo(
36857
36875
  exit: { height: 0, opacity: 0 },
36858
36876
  transition: { duration: 0.2, ease: "easeIn" },
36859
36877
  className: "overflow-hidden",
36860
- children: /* @__PURE__ */ (0, import_jsx_runtime121.jsxs)("div", { className: "px-4 py-3 w-full overflow-y-auto max-h-[400px] relative", children: [
36878
+ children: /* @__PURE__ */ (0, import_jsx_runtime121.jsxs)("div", { className: "px-4 py-3 w-full relative", children: [
36861
36879
  /* @__PURE__ */ (0, import_jsx_runtime121.jsx)(
36862
36880
  "div",
36863
36881
  {
@@ -36898,8 +36916,506 @@ var CampaignConceptCard = import_react64.default.memo(
36898
36916
  );
36899
36917
  CampaignConceptCard.displayName = "CampaignConceptCard";
36900
36918
 
36901
- // src/molecules/agent-builder/ToolListCard/ToolListCard.tsx
36919
+ // src/molecules/creator-discovery/CreatorWidget/CreatorWidget.tsx
36920
+ var import_react68 = require("react");
36921
+
36922
+ // src/molecules/creator-discovery/CreatorWidget/CreatorImageList.tsx
36923
+ var import_react65 = require("react");
36902
36924
  var import_jsx_runtime122 = require("react/jsx-runtime");
36925
+ function useMediaQuery(query) {
36926
+ const [matches, setMatches] = (0, import_react65.useState)(false);
36927
+ (0, import_react65.useEffect)(() => {
36928
+ const media = window.matchMedia(query);
36929
+ const listener = () => setMatches(media.matches);
36930
+ listener();
36931
+ media.addEventListener("change", listener);
36932
+ return () => media.removeEventListener("change", listener);
36933
+ }, [query]);
36934
+ return matches;
36935
+ }
36936
+ function CreatorImage({
36937
+ img,
36938
+ idx,
36939
+ creatorsPercentage,
36940
+ totalCreators
36941
+ }) {
36942
+ const processedCount = Math.floor(creatorsPercentage / 100 * totalCreators);
36943
+ const isProcessed = idx < processedCount;
36944
+ const isCurrentlyProcessing = idx === processedCount;
36945
+ return /* @__PURE__ */ (0, import_jsx_runtime122.jsxs)("div", { className: "relative w-8 h-8", children: [
36946
+ /* @__PURE__ */ (0, import_jsx_runtime122.jsx)(
36947
+ "img",
36948
+ {
36949
+ src: img,
36950
+ alt: `Creator ${idx + 1}`,
36951
+ className: `w-8 h-8 rounded-full border-2 ${isProcessed ? "border-green-600" : "border-foreground"} object-cover transition-all duration-300`
36952
+ }
36953
+ ),
36954
+ !isProcessed && /* @__PURE__ */ (0, import_jsx_runtime122.jsx)("div", { className: "absolute inset-0 bg-black/50 rounded-full pointer-events-none" }),
36955
+ isCurrentlyProcessing && /* @__PURE__ */ (0, import_jsx_runtime122.jsxs)(import_jsx_runtime122.Fragment, { children: [
36956
+ /* @__PURE__ */ (0, import_jsx_runtime122.jsx)(
36957
+ "div",
36958
+ {
36959
+ className: "absolute inset-0 bg-black/50 rounded-full pointer-events-none",
36960
+ style: {
36961
+ background: `conic-gradient(
36962
+ from 0deg,
36963
+ #FFFFFF80 0deg,
36964
+ #FFFFFF80 60deg,
36965
+ #000000bf 60deg,
36966
+ #000000bf 360deg
36967
+ )`,
36968
+ opacity: 0.9
36969
+ }
36970
+ }
36971
+ ),
36972
+ /* @__PURE__ */ (0, import_jsx_runtime122.jsx)("div", { className: "absolute inset-0 rounded-full border-2 border-[#9CA3AF]/30 pointer-events-none" })
36973
+ ] })
36974
+ ] });
36975
+ }
36976
+ function CreatorImageList({
36977
+ creatorImages = [],
36978
+ creatorLength = 0,
36979
+ isAgentOutput,
36980
+ initialCreatorsPercentage
36981
+ }) {
36982
+ const isMobile = useMediaQuery("(max-width: 640px)");
36983
+ const isTablet = useMediaQuery("(min-width: 641px) and (max-width: 1024px)");
36984
+ const visibleCount = isMobile ? 7 : isTablet ? 10 : isAgentOutput ? 6 : 15;
36985
+ return /* @__PURE__ */ (0, import_jsx_runtime122.jsxs)("div", { className: "flex flex-nowrap sm:flex-wrap -space-x-2 w-fit", children: [
36986
+ creatorImages.slice(0, visibleCount).map((img, idx) => /* @__PURE__ */ (0, import_jsx_runtime122.jsx)(
36987
+ CreatorImage,
36988
+ {
36989
+ img,
36990
+ idx,
36991
+ creatorsPercentage: initialCreatorsPercentage || 0,
36992
+ totalCreators: creatorLength
36993
+ },
36994
+ idx
36995
+ )),
36996
+ creatorLength > visibleCount && /* @__PURE__ */ (0, import_jsx_runtime122.jsxs)(
36997
+ "div",
36998
+ {
36999
+ 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"}`,
37000
+ children: [
37001
+ "+",
37002
+ creatorLength - visibleCount
37003
+ ]
37004
+ }
37005
+ )
37006
+ ] });
37007
+ }
37008
+
37009
+ // src/molecules/creator-discovery/CreatorWidget/CreatorProgressBar.tsx
37010
+ var import_react66 = require("react");
37011
+ var import_framer_motion2 = require("framer-motion");
37012
+ var import_jsx_runtime123 = require("react/jsx-runtime");
37013
+ function truncateName(name, maxLength) {
37014
+ if (!name || name.length <= maxLength) return name || "";
37015
+ return name.substring(0, maxLength) + "...";
37016
+ }
37017
+ function ProgressBar({ overallPercentage }) {
37018
+ const [showTooltip, setShowTooltip] = (0, import_react66.useState)(true);
37019
+ (0, import_react66.useEffect)(() => {
37020
+ if (overallPercentage && overallPercentage >= 100) {
37021
+ setShowTooltip(false);
37022
+ }
37023
+ }, [overallPercentage]);
37024
+ return /* @__PURE__ */ (0, import_jsx_runtime123.jsx)("div", { className: "relative w-full", children: /* @__PURE__ */ (0, import_jsx_runtime123.jsx)("div", { className: "md:w-full dark:bg-purple500 bg-gray-200 rounded-full h-[6px]", children: /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(
37025
+ import_framer_motion2.motion.div,
37026
+ {
37027
+ className: "bg-purple100 h-[6px] rounded-full relative",
37028
+ initial: { width: 0 },
37029
+ animate: { width: `${overallPercentage}%` },
37030
+ transition: { duration: 0.5, ease: "easeOut" },
37031
+ children: /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(import_framer_motion2.AnimatePresence, { children: showTooltip && /* @__PURE__ */ (0, import_jsx_runtime123.jsxs)(
37032
+ import_framer_motion2.motion.div,
37033
+ {
37034
+ initial: { opacity: 0, y: 5 },
37035
+ animate: { opacity: 1, y: 0 },
37036
+ exit: { opacity: 0, y: 5 },
37037
+ className: "absolute -top-10 right-[-25px] bg-gray50 text-gray900 text-lg px-1 rounded-[6px] shadow-lg whitespace-nowrap border-2 border-gray300",
37038
+ children: [
37039
+ overallPercentage ? Math.round(overallPercentage) : 0,
37040
+ "%",
37041
+ /* @__PURE__ */ (0, import_jsx_runtime123.jsxs)("div", { className: "absolute left-1/2 top-full -translate-x-1/2", children: [
37042
+ /* @__PURE__ */ (0, import_jsx_runtime123.jsx)("div", { className: "w-0 h-0 border-l-[6px] border-r-[6px] border-t-[6px] border-transparent border-t-gray300" }),
37043
+ /* @__PURE__ */ (0, import_jsx_runtime123.jsx)("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" })
37044
+ ] })
37045
+ ]
37046
+ }
37047
+ ) })
37048
+ }
37049
+ ) }) });
37050
+ }
37051
+ function CreatorProgressBar({
37052
+ statusDetails,
37053
+ timeRemaining: _timeRemaining
37054
+ }) {
37055
+ return /* @__PURE__ */ (0, import_jsx_runtime123.jsxs)("div", { children: [
37056
+ /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(ProgressBar, { overallPercentage: statusDetails?.overall_percentage }),
37057
+ /* @__PURE__ */ (0, import_jsx_runtime123.jsx)("div", { className: "dark:text-gray400 text-gray-500 text-xs mt-2", children: (statusDetails?.overall_percentage ?? 0) < 100 && /* @__PURE__ */ (0, import_jsx_runtime123.jsx)("span", { children: statusDetails?.thinking_message ? truncateName(statusDetails.thinking_message, 200) : "Processing..." }) })
37058
+ ] });
37059
+ }
37060
+
37061
+ // src/molecules/creator-discovery/CreatorWidget/CreatorWidgetSkeleton.tsx
37062
+ var import_jsx_runtime124 = require("react/jsx-runtime");
37063
+ function CreatorWidgetSkeleton() {
37064
+ return /* @__PURE__ */ (0, import_jsx_runtime124.jsx)("div", { className: "bg-background dark:bg-gray50 rounded-[25px] border border-gray300 overflow-hidden shadow-sm w-full relative", children: /* @__PURE__ */ (0, import_jsx_runtime124.jsxs)("div", { className: "p-4 md:p-6 space-y-4", children: [
37065
+ /* @__PURE__ */ (0, import_jsx_runtime124.jsx)("div", { className: "flex flex-col md:flex-row md:items-center md:justify-between gap-4 relative", children: /* @__PURE__ */ (0, import_jsx_runtime124.jsxs)("div", { className: "flex flex-col gap-2 md:gap-4", children: [
37066
+ /* @__PURE__ */ (0, import_jsx_runtime124.jsx)("div", { className: "w-40 h-6 bg-purple200 rounded-md animate-pulse" }),
37067
+ /* @__PURE__ */ (0, import_jsx_runtime124.jsx)("div", { className: "w-64 h-7 bg-gray200 dark:bg-gray300 rounded animate-pulse" })
37068
+ ] }) }),
37069
+ /* @__PURE__ */ (0, import_jsx_runtime124.jsxs)("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: [
37070
+ /* @__PURE__ */ (0, import_jsx_runtime124.jsxs)("div", { className: "flex flex-col gap-4 md:gap-6 min-w-0", children: [
37071
+ /* @__PURE__ */ (0, import_jsx_runtime124.jsx)("div", { className: "flex -space-x-2", children: Array.from({ length: 10 }).map((_, idx) => /* @__PURE__ */ (0, import_jsx_runtime124.jsx)(
37072
+ "div",
37073
+ {
37074
+ className: "w-8 h-8 md:w-10 md:h-10 rounded-full border-2 border-gray300 bg-gray200 animate-pulse"
37075
+ },
37076
+ idx
37077
+ )) }),
37078
+ /* @__PURE__ */ (0, import_jsx_runtime124.jsx)("div", { className: "space-y-2", children: /* @__PURE__ */ (0, import_jsx_runtime124.jsx)("div", { className: "w-full max-w-xs bg-gray200 rounded-full h-2 animate-pulse" }) })
37079
+ ] }),
37080
+ /* @__PURE__ */ (0, import_jsx_runtime124.jsx)("div", { className: "px-6 py-2 bg-gray200 rounded-[30px] animate-pulse h-10 w-48" })
37081
+ ] })
37082
+ ] }) });
37083
+ }
37084
+
37085
+ // src/molecules/creator-discovery/CreatorWidget/CreatorCompactView.tsx
37086
+ var import_jsx_runtime125 = require("react/jsx-runtime");
37087
+ function CreatorCompactView({
37088
+ versions,
37089
+ selectedVersion,
37090
+ creatorImages,
37091
+ creatorLength,
37092
+ isAgentOutput,
37093
+ onVersionSelect,
37094
+ onViewCreators,
37095
+ versionStatus,
37096
+ statusDetails,
37097
+ timeDisplay,
37098
+ isLoading
37099
+ }) {
37100
+ const isComplete = versionStatus === "completed" || versionStatus === "complete";
37101
+ const statusTitle = isComplete ? "Creator Search Complete" : versionStatus === "failed" ? "Creator Search Failed" : "Creator Search Processing";
37102
+ if (isLoading) {
37103
+ return /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(CreatorWidgetSkeleton, {});
37104
+ }
37105
+ return /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("div", { className: "bg-background dark:bg-gray100 rounded-[25px] border border-gray300 overflow-hidden shadow-sm w-full relative", children: /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)("div", { className: "p-4 md:p-6 space-y-4", children: [
37106
+ /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)("div", { className: "flex flex-col md:flex-row md:items-center md:justify-between gap-4 relative", children: [
37107
+ /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)("div", { className: "flex flex-col gap-2 md:gap-4", children: [
37108
+ /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("h4", { className: "w-fit rounded-md bg-purple200 px-2 py-[4px] text-xs font-medium text-purpleText", children: "VERIFIED CREATORS LIST" }),
37109
+ /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("h3", { className: "text-gray900 md:text-lg font-bold", children: statusTitle })
37110
+ ] }),
37111
+ versions.length > 1 && /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("div", { className: "relative md:self-start", children: /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)(DropdownMenu, { children: [
37112
+ /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)(
37113
+ DropdownMenuTrigger,
37114
+ {
37115
+ disabled: !isComplete,
37116
+ 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"}`,
37117
+ children: [
37118
+ "Version ",
37119
+ selectedVersion ?? "-",
37120
+ /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(ChevronDown, { className: "w-3 h-3 md:w-4 md:h-4 transition-transform" })
37121
+ ]
37122
+ }
37123
+ ),
37124
+ /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(DropdownMenuContent, { className: "bg-gray25 border-2 border-gray400 min-w-[120px] max-h-[150px] overflow-y-auto", children: versions.map((v) => /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)(
37125
+ DropdownMenuItem,
37126
+ {
37127
+ onClick: () => onVersionSelect(v),
37128
+ className: "cursor-pointer text-sm",
37129
+ children: [
37130
+ "Version ",
37131
+ v
37132
+ ]
37133
+ },
37134
+ v
37135
+ )) })
37136
+ ] }) })
37137
+ ] }),
37138
+ /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("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__ */ (0, import_jsx_runtime125.jsxs)("div", { className: "flex flex-col items-center justify-center w-full py-6 md:py-8 text-center text-red-500", children: [
37139
+ /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("p", { className: "text-base md:text-lg font-semibold mb-2", children: "Creator Search Failed" }),
37140
+ /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("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." })
37141
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)(import_jsx_runtime125.Fragment, { children: [
37142
+ /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)("div", { className: "flex flex-col gap-4 md:gap-6 min-w-0", children: [
37143
+ /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(
37144
+ CreatorImageList,
37145
+ {
37146
+ creatorImages,
37147
+ creatorLength,
37148
+ isAgentOutput,
37149
+ initialCreatorsPercentage: statusDetails?.social_fetch_percentage
37150
+ }
37151
+ ),
37152
+ /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(
37153
+ CreatorProgressBar,
37154
+ {
37155
+ statusDetails,
37156
+ timeRemaining: timeDisplay
37157
+ }
37158
+ )
37159
+ ] }),
37160
+ /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)(
37161
+ "button",
37162
+ {
37163
+ 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"}`,
37164
+ onClick: onViewCreators,
37165
+ disabled: !isComplete,
37166
+ children: [
37167
+ "View ",
37168
+ creatorLength,
37169
+ " Verified Creators",
37170
+ /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(Triangle, { className: "w-3 h-3 md:w-4 md:h-4 rotate-90 font-bold" })
37171
+ ]
37172
+ }
37173
+ )
37174
+ ] }) })
37175
+ ] }) });
37176
+ }
37177
+
37178
+ // src/molecules/creator-discovery/CreatorWidget/useCreatorWidgetPolling.ts
37179
+ var import_react67 = require("react");
37180
+ var DEFAULT_POLLING_CONFIG = {
37181
+ pollInterval: 5e3,
37182
+ maxDuration: 15 * 60 * 1e3,
37183
+ maxErrors: 10,
37184
+ secondsPerCreator: 13
37185
+ };
37186
+ function useCreatorWidgetPolling({
37187
+ sessionId,
37188
+ currentVersion,
37189
+ fetchVersions,
37190
+ fetchStatus,
37191
+ pollingConfig,
37192
+ onStatusChange
37193
+ }) {
37194
+ const config = (0, import_react67.useMemo)(
37195
+ () => ({ ...DEFAULT_POLLING_CONFIG, ...pollingConfig }),
37196
+ [pollingConfig]
37197
+ );
37198
+ const [versionData, setVersionData] = (0, import_react67.useState)(null);
37199
+ const [totalVersions, setTotalVersions] = (0, import_react67.useState)(0);
37200
+ const [selectedVersion, setSelectedVersion] = (0, import_react67.useState)();
37201
+ const [isLoadingVersion, setIsLoadingVersion] = (0, import_react67.useState)(false);
37202
+ const [isValidationComplete, setIsValidationComplete] = (0, import_react67.useState)(false);
37203
+ const [versionStatus, setVersionStatus] = (0, import_react67.useState)("checking");
37204
+ const [statusDetails, setStatusDetails] = (0, import_react67.useState)();
37205
+ const [timeDisplay, setTimeDisplay] = (0, import_react67.useState)("");
37206
+ const [loadingStatus, setLoadingStatus] = (0, import_react67.useState)(true);
37207
+ const remainingTimeRef = (0, import_react67.useRef)(0);
37208
+ const requestedVersion = selectedVersion ?? currentVersion ?? versionData?.currentVersion;
37209
+ const fetchVersionData = (0, import_react67.useCallback)(async () => {
37210
+ if (!sessionId) return;
37211
+ if (!versionData) setIsLoadingVersion(true);
37212
+ try {
37213
+ const data = await fetchVersions({
37214
+ sessionId,
37215
+ version: requestedVersion,
37216
+ validated: isValidationComplete
37217
+ });
37218
+ if (data.success !== false) {
37219
+ setVersionData(data);
37220
+ setTotalVersions(data.totalVersions || 0);
37221
+ }
37222
+ } catch (err) {
37223
+ if (err.name !== "AbortError") {
37224
+ console.error("Error fetching creator version:", err);
37225
+ }
37226
+ } finally {
37227
+ setIsLoadingVersion(false);
37228
+ }
37229
+ }, [sessionId, requestedVersion, isValidationComplete, fetchVersions, versionData]);
37230
+ (0, import_react67.useEffect)(() => {
37231
+ fetchVersionData();
37232
+ }, [sessionId, requestedVersion, isValidationComplete]);
37233
+ (0, import_react67.useEffect)(() => {
37234
+ if (totalVersions > 0 || !sessionId) return;
37235
+ const interval = setInterval(() => {
37236
+ if (totalVersions === 0) fetchVersionData();
37237
+ }, config.pollInterval);
37238
+ return () => clearInterval(interval);
37239
+ }, [totalVersions, sessionId, fetchVersionData, config.pollInterval]);
37240
+ (0, import_react67.useEffect)(() => {
37241
+ if (!selectedVersion && !requestedVersion) return;
37242
+ const activeVersion = selectedVersion ?? requestedVersion;
37243
+ let isMounted = true;
37244
+ let intervalId = null;
37245
+ let timerIntervalId = null;
37246
+ let elapsed = 0;
37247
+ let errorCount = 0;
37248
+ setLoadingStatus(true);
37249
+ setStatusDetails(void 0);
37250
+ setVersionStatus("checking");
37251
+ const creatorLength2 = versionData?.length || 0;
37252
+ remainingTimeRef.current = creatorLength2 > 0 ? creatorLength2 * config.secondsPerCreator : 60;
37253
+ const formatTime = (seconds) => {
37254
+ if (seconds <= 0) return "to complete";
37255
+ const minutes = Math.floor(seconds / 60);
37256
+ return minutes >= 1 ? `${minutes} min remaining...` : `${seconds} sec remaining...`;
37257
+ };
37258
+ setTimeDisplay(formatTime(remainingTimeRef.current));
37259
+ timerIntervalId = setInterval(() => {
37260
+ if (remainingTimeRef.current > 0) remainingTimeRef.current -= 1;
37261
+ setTimeDisplay(formatTime(remainingTimeRef.current));
37262
+ }, 1e3);
37263
+ const updateStatus = (status) => {
37264
+ setVersionStatus(status);
37265
+ onStatusChange?.(status);
37266
+ };
37267
+ const stopPolling = () => {
37268
+ if (intervalId) clearInterval(intervalId);
37269
+ if (timerIntervalId) clearInterval(timerIntervalId);
37270
+ setTimeDisplay("");
37271
+ };
37272
+ const pollStatus = async () => {
37273
+ try {
37274
+ const data = await fetchStatus({
37275
+ sessionId,
37276
+ versionNo: activeVersion
37277
+ });
37278
+ if (!isMounted) return;
37279
+ if (data?.status) setStatusDetails(data.status);
37280
+ const s = data?.status?.status;
37281
+ if (s === "completed" || s === "complete") {
37282
+ updateStatus(s);
37283
+ setIsValidationComplete(true);
37284
+ stopPolling();
37285
+ return;
37286
+ }
37287
+ if (s === "failed") {
37288
+ updateStatus("failed");
37289
+ stopPolling();
37290
+ return;
37291
+ }
37292
+ errorCount = 0;
37293
+ updateStatus(s || "in-progress");
37294
+ } catch (err) {
37295
+ console.error("Error fetching status:", err);
37296
+ errorCount++;
37297
+ if (errorCount >= config.maxErrors) {
37298
+ console.error(`Polling failed after ${config.maxErrors} consecutive errors`);
37299
+ updateStatus("failed");
37300
+ setLoadingStatus(false);
37301
+ stopPolling();
37302
+ return;
37303
+ }
37304
+ } finally {
37305
+ setLoadingStatus(false);
37306
+ }
37307
+ };
37308
+ pollStatus();
37309
+ intervalId = setInterval(() => {
37310
+ elapsed += config.pollInterval;
37311
+ if (elapsed >= config.maxDuration) {
37312
+ console.warn("Stopped polling after max duration");
37313
+ stopPolling();
37314
+ } else {
37315
+ pollStatus();
37316
+ }
37317
+ }, config.pollInterval);
37318
+ return () => {
37319
+ isMounted = false;
37320
+ stopPolling();
37321
+ };
37322
+ }, [selectedVersion, requestedVersion, sessionId]);
37323
+ const versionNumbers = (0, import_react67.useMemo)(() => {
37324
+ if (!totalVersions) return [];
37325
+ return Array.from({ length: totalVersions }, (_, i) => i + 1);
37326
+ }, [totalVersions]);
37327
+ const creatorIds = versionData?.ids || [];
37328
+ const creatorImages = versionData?.images || [];
37329
+ const creatorLength = versionData?.length || 0;
37330
+ const searchSpec = versionData?.searchSpec || {};
37331
+ const displayVersion = versionData?.currentVersion ?? requestedVersion;
37332
+ return {
37333
+ versionData,
37334
+ versionNumbers,
37335
+ selectedVersion: displayVersion,
37336
+ setSelectedVersion,
37337
+ creatorImages,
37338
+ creatorLength,
37339
+ creatorIds,
37340
+ searchSpec,
37341
+ versionStatus,
37342
+ statusDetails,
37343
+ timeDisplay,
37344
+ isLoading: loadingStatus || isLoadingVersion,
37345
+ isValidationComplete
37346
+ };
37347
+ }
37348
+
37349
+ // src/molecules/creator-discovery/CreatorWidget/CreatorWidget.tsx
37350
+ var import_jsx_runtime126 = require("react/jsx-runtime");
37351
+ function CreatorWidgetInner({
37352
+ sessionId,
37353
+ currentVersion,
37354
+ isAgentOutput = false,
37355
+ fetchVersions,
37356
+ fetchStatus,
37357
+ pollingConfig,
37358
+ onStatusChange,
37359
+ onAction,
37360
+ className
37361
+ }) {
37362
+ const {
37363
+ versionNumbers,
37364
+ selectedVersion,
37365
+ setSelectedVersion,
37366
+ creatorImages,
37367
+ creatorLength,
37368
+ creatorIds,
37369
+ searchSpec,
37370
+ versionStatus,
37371
+ statusDetails,
37372
+ timeDisplay,
37373
+ isLoading
37374
+ } = useCreatorWidgetPolling({
37375
+ sessionId,
37376
+ currentVersion,
37377
+ fetchVersions,
37378
+ fetchStatus,
37379
+ pollingConfig,
37380
+ onStatusChange
37381
+ });
37382
+ const handleVersionSelect = (0, import_react68.useCallback)(
37383
+ (version) => setSelectedVersion(version),
37384
+ [setSelectedVersion]
37385
+ );
37386
+ const handleViewCreators = (0, import_react68.useCallback)(() => {
37387
+ onAction?.({
37388
+ type: "view-creators",
37389
+ sessionId,
37390
+ creatorIds,
37391
+ version: selectedVersion,
37392
+ searchSpec
37393
+ });
37394
+ }, [onAction, sessionId, creatorIds, selectedVersion, searchSpec]);
37395
+ if (!fetchVersions || !fetchStatus) {
37396
+ return /* @__PURE__ */ (0, import_jsx_runtime126.jsx)(CreatorWidgetSkeleton, {});
37397
+ }
37398
+ return /* @__PURE__ */ (0, import_jsx_runtime126.jsx)("div", { className, children: /* @__PURE__ */ (0, import_jsx_runtime126.jsx)(
37399
+ CreatorCompactView,
37400
+ {
37401
+ versions: versionNumbers,
37402
+ selectedVersion,
37403
+ creatorImages,
37404
+ creatorLength,
37405
+ isAgentOutput,
37406
+ onVersionSelect: handleVersionSelect,
37407
+ onViewCreators: handleViewCreators,
37408
+ versionStatus,
37409
+ statusDetails,
37410
+ timeDisplay,
37411
+ isLoading
37412
+ }
37413
+ ) });
37414
+ }
37415
+ var CreatorWidget = (0, import_react68.memo)(CreatorWidgetInner);
37416
+
37417
+ // src/molecules/agent-builder/ToolListCard/ToolListCard.tsx
37418
+ var import_jsx_runtime127 = require("react/jsx-runtime");
36903
37419
  var ICON_MAP = {
36904
37420
  Search,
36905
37421
  Database,
@@ -36956,7 +37472,7 @@ var ToolListCard = ({
36956
37472
  grouped[cat].push(tool);
36957
37473
  }
36958
37474
  const categories = Object.keys(grouped);
36959
- return /* @__PURE__ */ (0, import_jsx_runtime122.jsxs)(
37475
+ return /* @__PURE__ */ (0, import_jsx_runtime127.jsxs)(
36960
37476
  "div",
36961
37477
  {
36962
37478
  className: cn(
@@ -36964,33 +37480,33 @@ var ToolListCard = ({
36964
37480
  className
36965
37481
  ),
36966
37482
  children: [
36967
- /* @__PURE__ */ (0, import_jsx_runtime122.jsxs)("div", { className: "px-4 py-3 border-b border-[var(--border-color)] bg-[var(--foreground)]/[0.03] flex items-center gap-2.5", children: [
36968
- /* @__PURE__ */ (0, import_jsx_runtime122.jsx)("div", { className: "w-6 h-6 rounded-md bg-interactive/10 flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime122.jsx)(Wrench, { className: "w-3.5 h-3.5 text-interactive" }) }),
36969
- /* @__PURE__ */ (0, import_jsx_runtime122.jsx)("h4", { className: "text-sm font-semibold text-[var(--foreground)]", children: "Available Tools" }),
36970
- /* @__PURE__ */ (0, import_jsx_runtime122.jsx)("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 })
37483
+ /* @__PURE__ */ (0, import_jsx_runtime127.jsxs)("div", { className: "px-4 py-3 border-b border-[var(--border-color)] bg-[var(--foreground)]/[0.03] flex items-center gap-2.5", children: [
37484
+ /* @__PURE__ */ (0, import_jsx_runtime127.jsx)("div", { className: "w-6 h-6 rounded-md bg-interactive/10 flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(Wrench, { className: "w-3.5 h-3.5 text-interactive" }) }),
37485
+ /* @__PURE__ */ (0, import_jsx_runtime127.jsx)("h4", { className: "text-sm font-semibold text-[var(--foreground)]", children: "Available Tools" }),
37486
+ /* @__PURE__ */ (0, import_jsx_runtime127.jsx)("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 })
36971
37487
  ] }),
36972
- /* @__PURE__ */ (0, import_jsx_runtime122.jsx)("div", { className: "divide-y divide-[var(--border-color)]", children: categories.map((cat) => {
37488
+ /* @__PURE__ */ (0, import_jsx_runtime127.jsx)("div", { className: "divide-y divide-[var(--border-color)]", children: categories.map((cat) => {
36973
37489
  const CatIcon = resolveCategoryIcon(cat);
36974
- return /* @__PURE__ */ (0, import_jsx_runtime122.jsxs)("div", { className: "px-4 py-3", children: [
36975
- /* @__PURE__ */ (0, import_jsx_runtime122.jsxs)("div", { className: "flex items-center gap-2 mb-2.5", children: [
36976
- /* @__PURE__ */ (0, import_jsx_runtime122.jsx)(CatIcon, { className: "w-3.5 h-3.5 text-interactive/70" }),
36977
- /* @__PURE__ */ (0, import_jsx_runtime122.jsx)("span", { className: "text-[11px] font-semibold text-[var(--foreground)]/50 uppercase tracking-wider", children: cat }),
36978
- /* @__PURE__ */ (0, import_jsx_runtime122.jsx)("span", { className: "text-[10px] text-[var(--foreground)]/30", children: grouped[cat].length })
37490
+ return /* @__PURE__ */ (0, import_jsx_runtime127.jsxs)("div", { className: "px-4 py-3", children: [
37491
+ /* @__PURE__ */ (0, import_jsx_runtime127.jsxs)("div", { className: "flex items-center gap-2 mb-2.5", children: [
37492
+ /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(CatIcon, { className: "w-3.5 h-3.5 text-interactive/70" }),
37493
+ /* @__PURE__ */ (0, import_jsx_runtime127.jsx)("span", { className: "text-[11px] font-semibold text-[var(--foreground)]/50 uppercase tracking-wider", children: cat }),
37494
+ /* @__PURE__ */ (0, import_jsx_runtime127.jsx)("span", { className: "text-[10px] text-[var(--foreground)]/30", children: grouped[cat].length })
36979
37495
  ] }),
36980
- /* @__PURE__ */ (0, import_jsx_runtime122.jsx)("div", { className: "space-y-1.5", children: grouped[cat].map((tool) => {
37496
+ /* @__PURE__ */ (0, import_jsx_runtime127.jsx)("div", { className: "space-y-1.5", children: grouped[cat].map((tool) => {
36981
37497
  const ToolIcon = resolveIcon(tool);
36982
- return /* @__PURE__ */ (0, import_jsx_runtime122.jsxs)(
37498
+ return /* @__PURE__ */ (0, import_jsx_runtime127.jsxs)(
36983
37499
  "div",
36984
37500
  {
36985
37501
  className: "group flex items-start gap-3 px-3 py-2 rounded-lg hover:bg-[var(--foreground)]/[0.03] transition-colors",
36986
37502
  children: [
36987
- /* @__PURE__ */ (0, import_jsx_runtime122.jsx)("div", { className: "shrink-0 mt-0.5 w-5 h-5 rounded flex items-center justify-center bg-interactive/[0.08]", children: /* @__PURE__ */ (0, import_jsx_runtime122.jsx)(ToolIcon, { className: "w-3 h-3 text-interactive/60" }) }),
36988
- /* @__PURE__ */ (0, import_jsx_runtime122.jsxs)("div", { className: "flex-1 min-w-0", children: [
36989
- /* @__PURE__ */ (0, import_jsx_runtime122.jsxs)("div", { className: "flex items-center gap-2 flex-wrap", children: [
36990
- tool.display_name && tool.display_name !== tool.name && /* @__PURE__ */ (0, import_jsx_runtime122.jsx)("span", { className: "text-[13px] font-medium text-[var(--foreground)] truncate max-w-full", children: tool.display_name }),
36991
- /* @__PURE__ */ (0, import_jsx_runtime122.jsx)("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 })
37503
+ /* @__PURE__ */ (0, import_jsx_runtime127.jsx)("div", { className: "shrink-0 mt-0.5 w-5 h-5 rounded flex items-center justify-center bg-interactive/[0.08]", children: /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(ToolIcon, { className: "w-3 h-3 text-interactive/60" }) }),
37504
+ /* @__PURE__ */ (0, import_jsx_runtime127.jsxs)("div", { className: "flex-1 min-w-0", children: [
37505
+ /* @__PURE__ */ (0, import_jsx_runtime127.jsxs)("div", { className: "flex items-center gap-2 flex-wrap", children: [
37506
+ tool.display_name && tool.display_name !== tool.name && /* @__PURE__ */ (0, import_jsx_runtime127.jsx)("span", { className: "text-[13px] font-medium text-[var(--foreground)] truncate max-w-full", children: tool.display_name }),
37507
+ /* @__PURE__ */ (0, import_jsx_runtime127.jsx)("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 })
36992
37508
  ] }),
36993
- tool.description && /* @__PURE__ */ (0, import_jsx_runtime122.jsx)("p", { className: "text-xs text-[var(--foreground)]/50 leading-relaxed mt-0.5 break-words whitespace-normal", children: tool.description })
37509
+ tool.description && /* @__PURE__ */ (0, import_jsx_runtime127.jsx)("p", { className: "text-xs text-[var(--foreground)]/50 leading-relaxed mt-0.5 break-words whitespace-normal", children: tool.description })
36994
37510
  ] })
36995
37511
  ]
36996
37512
  },
@@ -37005,8 +37521,8 @@ var ToolListCard = ({
37005
37521
  };
37006
37522
 
37007
37523
  // src/molecules/agent-builder/AgentCard/AgentCard.tsx
37008
- var import_react65 = require("react");
37009
- var import_jsx_runtime123 = require("react/jsx-runtime");
37524
+ var import_react69 = require("react");
37525
+ var import_jsx_runtime128 = require("react/jsx-runtime");
37010
37526
  var AgentCard = ({
37011
37527
  agent,
37012
37528
  editable = true,
@@ -37014,15 +37530,15 @@ var AgentCard = ({
37014
37530
  onSave,
37015
37531
  className
37016
37532
  }) => {
37017
- const [isEditing, setIsEditing] = (0, import_react65.useState)(false);
37018
- const [isSaving, setIsSaving] = (0, import_react65.useState)(false);
37019
- const [editState, setEditState] = (0, import_react65.useState)({
37533
+ const [isEditing, setIsEditing] = (0, import_react69.useState)(false);
37534
+ const [isSaving, setIsSaving] = (0, import_react69.useState)(false);
37535
+ const [editState, setEditState] = (0, import_react69.useState)({
37020
37536
  display_name: agent.display_name,
37021
37537
  description: agent.description,
37022
37538
  image: agent.image || ""
37023
37539
  });
37024
37540
  const avatarUrl = agent.image || `https://api.dicebear.com/7.x/avataaars/svg?seed=${agent.name}`;
37025
- const handleEdit = (0, import_react65.useCallback)(() => {
37541
+ const handleEdit = (0, import_react69.useCallback)(() => {
37026
37542
  setEditState({
37027
37543
  display_name: agent.display_name,
37028
37544
  description: agent.description,
@@ -37030,10 +37546,10 @@ var AgentCard = ({
37030
37546
  });
37031
37547
  setIsEditing(true);
37032
37548
  }, [agent]);
37033
- const handleCancel = (0, import_react65.useCallback)(() => {
37549
+ const handleCancel = (0, import_react69.useCallback)(() => {
37034
37550
  setIsEditing(false);
37035
37551
  }, []);
37036
- const handleSave = (0, import_react65.useCallback)(async () => {
37552
+ const handleSave = (0, import_react69.useCallback)(async () => {
37037
37553
  if (!onSave) return;
37038
37554
  const updates = {};
37039
37555
  if (editState.display_name !== agent.display_name)
@@ -37057,7 +37573,7 @@ var AgentCard = ({
37057
37573
  }
37058
37574
  }, [onSave, agent, editState]);
37059
37575
  if (compact) {
37060
- return /* @__PURE__ */ (0, import_jsx_runtime123.jsxs)(
37576
+ return /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)(
37061
37577
  "div",
37062
37578
  {
37063
37579
  className: cn(
@@ -37065,14 +37581,14 @@ var AgentCard = ({
37065
37581
  className
37066
37582
  ),
37067
37583
  children: [
37068
- /* @__PURE__ */ (0, import_jsx_runtime123.jsxs)(Avatar, { className: "h-8 w-8 shrink-0", children: [
37069
- /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(AvatarImage, { src: avatarUrl, alt: agent.display_name }),
37070
- /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(AvatarFallback, { className: "bg-interactive/10 text-interactive text-xs font-bold", children: agent.display_name.charAt(0) })
37584
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)(Avatar, { className: "h-8 w-8 shrink-0", children: [
37585
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(AvatarImage, { src: avatarUrl, alt: agent.display_name }),
37586
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(AvatarFallback, { className: "bg-interactive/10 text-interactive text-xs font-bold", children: agent.display_name.charAt(0) })
37071
37587
  ] }),
37072
- /* @__PURE__ */ (0, import_jsx_runtime123.jsxs)("div", { className: "flex-1 min-w-0", children: [
37073
- /* @__PURE__ */ (0, import_jsx_runtime123.jsxs)("div", { className: "flex items-center gap-2", children: [
37074
- /* @__PURE__ */ (0, import_jsx_runtime123.jsx)("span", { className: "text-[var(--foreground)] text-sm font-semibold truncate", children: agent.display_name }),
37075
- /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(
37588
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)("div", { className: "flex-1 min-w-0", children: [
37589
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)("div", { className: "flex items-center gap-2", children: [
37590
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsx)("span", { className: "text-[var(--foreground)] text-sm font-semibold truncate", children: agent.display_name }),
37591
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(
37076
37592
  "span",
37077
37593
  {
37078
37594
  className: cn(
@@ -37083,13 +37599,13 @@ var AgentCard = ({
37083
37599
  }
37084
37600
  )
37085
37601
  ] }),
37086
- /* @__PURE__ */ (0, import_jsx_runtime123.jsx)("p", { className: "text-[var(--foreground)]/50 text-xs truncate", children: agent.description })
37602
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsx)("p", { className: "text-[var(--foreground)]/50 text-xs truncate", children: agent.description })
37087
37603
  ] })
37088
37604
  ]
37089
37605
  }
37090
37606
  );
37091
37607
  }
37092
- return /* @__PURE__ */ (0, import_jsx_runtime123.jsxs)(
37608
+ return /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)(
37093
37609
  "div",
37094
37610
  {
37095
37611
  className: cn(
@@ -37097,14 +37613,14 @@ var AgentCard = ({
37097
37613
  className
37098
37614
  ),
37099
37615
  children: [
37100
- /* @__PURE__ */ (0, import_jsx_runtime123.jsxs)("div", { className: "flex items-start gap-4 px-5 py-4", children: [
37101
- /* @__PURE__ */ (0, import_jsx_runtime123.jsxs)(Avatar, { className: "h-12 w-12 shrink-0 border-2 border-interactive/20", children: [
37102
- /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(AvatarImage, { src: isEditing && editState.image ? editState.image : avatarUrl, alt: agent.display_name }),
37103
- /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(AvatarFallback, { className: "bg-interactive/10 text-interactive text-lg font-bold", children: agent.display_name.charAt(0) })
37616
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)("div", { className: "flex items-start gap-4 px-5 py-4", children: [
37617
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)(Avatar, { className: "h-12 w-12 shrink-0 border-2 border-interactive/20", children: [
37618
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(AvatarImage, { src: isEditing && editState.image ? editState.image : avatarUrl, alt: agent.display_name }),
37619
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(AvatarFallback, { className: "bg-interactive/10 text-interactive text-lg font-bold", children: agent.display_name.charAt(0) })
37104
37620
  ] }),
37105
- /* @__PURE__ */ (0, import_jsx_runtime123.jsxs)("div", { className: "flex-1 min-w-0", children: [
37106
- /* @__PURE__ */ (0, import_jsx_runtime123.jsxs)("div", { className: "flex items-center gap-2", children: [
37107
- isEditing ? /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(
37621
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)("div", { className: "flex-1 min-w-0", children: [
37622
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)("div", { className: "flex items-center gap-2", children: [
37623
+ isEditing ? /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(
37108
37624
  "input",
37109
37625
  {
37110
37626
  type: "text",
@@ -37114,9 +37630,9 @@ var AgentCard = ({
37114
37630
  className: "flex-1 bg-transparent border-b border-interactive/30 text-sm font-semibold text-foreground outline-none focus:border-interactive transition-all",
37115
37631
  placeholder: "Agent name"
37116
37632
  }
37117
- ) : /* @__PURE__ */ (0, import_jsx_runtime123.jsx)("h4", { className: "text-sm font-semibold text-[var(--foreground)] truncate", children: agent.display_name }),
37118
- /* @__PURE__ */ (0, import_jsx_runtime123.jsx)("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 }),
37119
- /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(
37633
+ ) : /* @__PURE__ */ (0, import_jsx_runtime128.jsx)("h4", { className: "text-sm font-semibold text-[var(--foreground)] truncate", children: agent.display_name }),
37634
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsx)("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 }),
37635
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(
37120
37636
  "span",
37121
37637
  {
37122
37638
  className: cn(
@@ -37127,7 +37643,7 @@ var AgentCard = ({
37127
37643
  }
37128
37644
  )
37129
37645
  ] }),
37130
- /* @__PURE__ */ (0, import_jsx_runtime123.jsx)("div", { className: "mt-1", children: isEditing ? /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(
37646
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsx)("div", { className: "mt-1", children: isEditing ? /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(
37131
37647
  "textarea",
37132
37648
  {
37133
37649
  value: editState.description,
@@ -37137,10 +37653,10 @@ var AgentCard = ({
37137
37653
  rows: 2,
37138
37654
  placeholder: "Describe this agent..."
37139
37655
  }
37140
- ) : /* @__PURE__ */ (0, import_jsx_runtime123.jsx)("p", { className: "text-xs text-[var(--foreground)]/60 leading-relaxed", children: agent.description }) }),
37141
- isEditing && /* @__PURE__ */ (0, import_jsx_runtime123.jsxs)("div", { className: "mt-2 flex items-center gap-2", children: [
37142
- /* @__PURE__ */ (0, import_jsx_runtime123.jsx)("span", { className: "text-[10px] text-[var(--foreground)]/30 uppercase font-semibold", children: "Avatar:" }),
37143
- /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(
37656
+ ) : /* @__PURE__ */ (0, import_jsx_runtime128.jsx)("p", { className: "text-xs text-[var(--foreground)]/60 leading-relaxed whitespace-normal", children: agent.description }) }),
37657
+ isEditing && /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)("div", { className: "mt-2 flex items-center gap-2", children: [
37658
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsx)("span", { className: "text-[10px] text-[var(--foreground)]/30 uppercase font-semibold", children: "Avatar:" }),
37659
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(
37144
37660
  "input",
37145
37661
  {
37146
37662
  type: "text",
@@ -37153,8 +37669,8 @@ var AgentCard = ({
37153
37669
  )
37154
37670
  ] })
37155
37671
  ] }),
37156
- editable && onSave && /* @__PURE__ */ (0, import_jsx_runtime123.jsx)("div", { className: "flex items-center gap-1.5 shrink-0", children: isEditing ? /* @__PURE__ */ (0, import_jsx_runtime123.jsxs)(import_jsx_runtime123.Fragment, { children: [
37157
- /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(
37672
+ editable && onSave && /* @__PURE__ */ (0, import_jsx_runtime128.jsx)("div", { className: "flex items-center gap-1.5 shrink-0", children: isEditing ? /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)(import_jsx_runtime128.Fragment, { children: [
37673
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(
37158
37674
  "button",
37159
37675
  {
37160
37676
  onClick: handleCancel,
@@ -37163,7 +37679,7 @@ var AgentCard = ({
37163
37679
  children: "Cancel"
37164
37680
  }
37165
37681
  ),
37166
- /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(
37682
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(
37167
37683
  "button",
37168
37684
  {
37169
37685
  onClick: handleSave,
@@ -37172,7 +37688,7 @@ var AgentCard = ({
37172
37688
  children: isSaving ? "Saving..." : "Save"
37173
37689
  }
37174
37690
  )
37175
- ] }) : /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(
37691
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(
37176
37692
  "button",
37177
37693
  {
37178
37694
  onClick: handleEdit,
@@ -37181,18 +37697,18 @@ var AgentCard = ({
37181
37697
  }
37182
37698
  ) })
37183
37699
  ] }),
37184
- /* @__PURE__ */ (0, import_jsx_runtime123.jsx)("div", { className: "flex flex-wrap items-center gap-3 px-5 pb-3 text-xs", children: /* @__PURE__ */ (0, import_jsx_runtime123.jsxs)("span", { className: "text-[var(--foreground)]/40", children: [
37700
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsx)("div", { className: "flex flex-wrap items-center gap-3 px-5 pb-3 text-xs", children: /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)("span", { className: "text-[var(--foreground)]/40", children: [
37185
37701
  "Model:",
37186
37702
  " ",
37187
- /* @__PURE__ */ (0, import_jsx_runtime123.jsx)("span", { className: "font-mono text-[var(--foreground)]/70", children: agent.model })
37703
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsx)("span", { className: "font-mono text-[var(--foreground)]/70", children: agent.model })
37188
37704
  ] }) }),
37189
- agent.tools && agent.tools.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime123.jsxs)("div", { className: "border-t border-[var(--border-color)] px-5 py-3", children: [
37190
- /* @__PURE__ */ (0, import_jsx_runtime123.jsxs)("p", { className: "text-[11px] font-semibold text-[var(--foreground)]/40 uppercase tracking-wide mb-2", children: [
37705
+ agent.tools && agent.tools.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)("div", { className: "border-t border-[var(--border-color)] px-5 py-3", children: [
37706
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)("p", { className: "text-[11px] font-semibold text-[var(--foreground)]/40 uppercase tracking-wide mb-2", children: [
37191
37707
  "Tools (",
37192
37708
  agent.tools.length,
37193
37709
  ")"
37194
37710
  ] }),
37195
- /* @__PURE__ */ (0, import_jsx_runtime123.jsx)("div", { className: "flex flex-wrap gap-1.5", children: agent.tools.map((tool) => /* @__PURE__ */ (0, import_jsx_runtime123.jsx)(
37711
+ /* @__PURE__ */ (0, import_jsx_runtime128.jsx)("div", { className: "flex flex-wrap gap-1.5", children: agent.tools.map((tool) => /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(
37196
37712
  "span",
37197
37713
  {
37198
37714
  className: "text-[11px] px-2 py-0.5 rounded-md bg-interactive/10 text-interactive font-mono border border-interactive/20",
@@ -37207,7 +37723,7 @@ var AgentCard = ({
37207
37723
  };
37208
37724
 
37209
37725
  // src/molecules/agent-builder/AgentDataTable/AgentDataTable.tsx
37210
- var import_jsx_runtime124 = require("react/jsx-runtime");
37726
+ var import_jsx_runtime129 = require("react/jsx-runtime");
37211
37727
  var AgentDataTable = ({
37212
37728
  headers,
37213
37729
  rows,
@@ -37215,7 +37731,7 @@ var AgentDataTable = ({
37215
37731
  }) => {
37216
37732
  const renderCell = (value) => {
37217
37733
  if (typeof value === "boolean") {
37218
- return /* @__PURE__ */ (0, import_jsx_runtime124.jsxs)(
37734
+ return /* @__PURE__ */ (0, import_jsx_runtime129.jsxs)(
37219
37735
  "span",
37220
37736
  {
37221
37737
  className: cn(
@@ -37223,7 +37739,7 @@ var AgentDataTable = ({
37223
37739
  value ? "bg-emerald-500/10 text-emerald-600" : "bg-red-500/10 text-red-500"
37224
37740
  ),
37225
37741
  children: [
37226
- /* @__PURE__ */ (0, import_jsx_runtime124.jsx)(
37742
+ /* @__PURE__ */ (0, import_jsx_runtime129.jsx)(
37227
37743
  "span",
37228
37744
  {
37229
37745
  className: cn(
@@ -37237,17 +37753,17 @@ var AgentDataTable = ({
37237
37753
  }
37238
37754
  );
37239
37755
  }
37240
- return /* @__PURE__ */ (0, import_jsx_runtime124.jsx)("span", { className: "text-[var(--foreground)]", children: String(value) });
37756
+ return /* @__PURE__ */ (0, import_jsx_runtime129.jsx)("span", { className: "text-[var(--foreground)]", children: String(value) });
37241
37757
  };
37242
- return /* @__PURE__ */ (0, import_jsx_runtime124.jsx)(
37758
+ return /* @__PURE__ */ (0, import_jsx_runtime129.jsx)(
37243
37759
  "div",
37244
37760
  {
37245
37761
  className: cn(
37246
37762
  "text-foreground hover:bg-muted/50 hover:text-foreground my-3 rounded-xl border border-[var(--border-color)] bg-[var(--card-background)] overflow-hidden",
37247
37763
  className
37248
37764
  ),
37249
- children: /* @__PURE__ */ (0, import_jsx_runtime124.jsx)("div", { className: "overflow-x-auto", children: /* @__PURE__ */ (0, import_jsx_runtime124.jsxs)("table", { className: "w-full text-xs", children: [
37250
- /* @__PURE__ */ (0, import_jsx_runtime124.jsx)("thead", { children: /* @__PURE__ */ (0, import_jsx_runtime124.jsx)("tr", { className: "border-b border-[var(--border-color)] bg-[var(--foreground)]/[0.03]", children: headers.map((header) => /* @__PURE__ */ (0, import_jsx_runtime124.jsx)(
37765
+ children: /* @__PURE__ */ (0, import_jsx_runtime129.jsx)("div", { className: "overflow-x-auto", children: /* @__PURE__ */ (0, import_jsx_runtime129.jsxs)("table", { className: "w-full text-xs", children: [
37766
+ /* @__PURE__ */ (0, import_jsx_runtime129.jsx)("thead", { children: /* @__PURE__ */ (0, import_jsx_runtime129.jsx)("tr", { className: "border-b border-[var(--border-color)] bg-[var(--foreground)]/[0.03]", children: headers.map((header) => /* @__PURE__ */ (0, import_jsx_runtime129.jsx)(
37251
37767
  "th",
37252
37768
  {
37253
37769
  className: "text-left px-4 py-2.5 text-[11px] font-semibold text-[var(--foreground)]/60 uppercase tracking-wide whitespace-nowrap",
@@ -37255,11 +37771,11 @@ var AgentDataTable = ({
37255
37771
  },
37256
37772
  header
37257
37773
  )) }) }),
37258
- /* @__PURE__ */ (0, import_jsx_runtime124.jsx)("tbody", { children: rows.map((row, rowIdx) => /* @__PURE__ */ (0, import_jsx_runtime124.jsx)(
37774
+ /* @__PURE__ */ (0, import_jsx_runtime129.jsx)("tbody", { children: rows.map((row, rowIdx) => /* @__PURE__ */ (0, import_jsx_runtime129.jsx)(
37259
37775
  "tr",
37260
37776
  {
37261
37777
  className: "border-b border-[var(--border-color)] last:border-b-0 hover:bg-[var(--foreground)]/[0.02] transition-colors",
37262
- children: row.map((cell, cellIdx) => /* @__PURE__ */ (0, import_jsx_runtime124.jsx)(
37778
+ children: row.map((cell, cellIdx) => /* @__PURE__ */ (0, import_jsx_runtime129.jsx)(
37263
37779
  "td",
37264
37780
  {
37265
37781
  className: "px-4 py-2.5 text-xs whitespace-nowrap",
@@ -37276,14 +37792,16 @@ var AgentDataTable = ({
37276
37792
  };
37277
37793
 
37278
37794
  // src/molecules/agent-builder/WorkflowVisualizer/WorkflowVisualizer.tsx
37279
- var import_react66 = require("react");
37280
- var import_jsx_runtime125 = require("react/jsx-runtime");
37795
+ var import_react70 = require("react");
37796
+ var import_jsx_runtime130 = require("react/jsx-runtime");
37281
37797
  var WorkflowVisualizer = ({
37282
37798
  steps,
37283
37799
  className
37284
37800
  }) => {
37285
- const [expandedStep, setExpandedStep] = (0, import_react66.useState)(null);
37286
- return /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)(
37801
+ const [expandedStep, setExpandedStep] = (0, import_react70.useState)(
37802
+ steps[0]?.id || null
37803
+ );
37804
+ return /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)(
37287
37805
  "div",
37288
37806
  {
37289
37807
  className: cn(
@@ -37291,8 +37809,8 @@ var WorkflowVisualizer = ({
37291
37809
  className
37292
37810
  ),
37293
37811
  children: [
37294
- /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)("div", { className: "px-4 py-3 border-b border-[var(--border-color)] bg-[var(--foreground)]/[0.03] flex items-center gap-2.5", children: [
37295
- /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("div", { className: "w-6 h-6 rounded-md bg-interactive/10 flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(
37812
+ /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)("div", { className: "px-4 py-3 border-b border-[var(--border-color)] bg-[var(--foreground)]/[0.03] flex items-center gap-2.5", children: [
37813
+ /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("div", { className: "w-6 h-6 rounded-md bg-interactive/10 flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(
37296
37814
  "svg",
37297
37815
  {
37298
37816
  width: "14",
@@ -37304,24 +37822,24 @@ var WorkflowVisualizer = ({
37304
37822
  className: "text-interactive",
37305
37823
  strokeLinecap: "round",
37306
37824
  strokeLinejoin: "round",
37307
- children: /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("polyline", { points: "22 12 18 12 15 21 9 3 6 12 2 12" })
37825
+ children: /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("polyline", { points: "22 12 18 12 15 21 9 3 6 12 2 12" })
37308
37826
  }
37309
37827
  ) }),
37310
- /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("h4", { className: "text-sm font-semibold text-[var(--foreground)]", children: "Workflow" }),
37311
- /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)("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: [
37828
+ /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("h4", { className: "text-sm font-semibold text-[var(--foreground)]", children: "Workflow" }),
37829
+ /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)("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: [
37312
37830
  steps.length,
37313
37831
  " steps"
37314
37832
  ] })
37315
37833
  ] }),
37316
- /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("div", { className: "px-4 py-3", children: steps.map((step, idx) => {
37834
+ /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("div", { className: "px-4 py-3", children: steps.map((step, idx) => {
37317
37835
  const isLast = idx === steps.length - 1;
37318
37836
  const isExpanded = expandedStep === step.id;
37319
- return /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)("div", { className: "flex gap-3", children: [
37320
- /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)("div", { className: "flex flex-col items-center shrink-0", children: [
37321
- /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("div", { className: "w-7 h-7 rounded-full bg-interactive/10 border-2 border-interactive/30 flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("span", { className: "text-[10px] font-bold text-interactive", children: idx + 1 }) }),
37322
- !isLast && /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("div", { className: "w-0.5 flex-1 min-h-[16px] bg-interactive/15" })
37837
+ return /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)("div", { className: "flex gap-3", children: [
37838
+ /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)("div", { className: "flex flex-col items-center shrink-0", children: [
37839
+ /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("div", { className: "w-7 h-7 rounded-full bg-interactive/10 border-2 border-interactive/30 flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("span", { className: "text-[10px] font-bold text-interactive", children: idx + 1 }) }),
37840
+ !isLast && /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("div", { className: "w-0.5 flex-1 min-h-[16px] bg-interactive/15" })
37323
37841
  ] }),
37324
- /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)(
37842
+ /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)(
37325
37843
  "div",
37326
37844
  {
37327
37845
  className: cn(
@@ -37329,20 +37847,14 @@ var WorkflowVisualizer = ({
37329
37847
  isExpanded ? "bg-[var(--foreground)]/[0.02]" : "hover:bg-[var(--foreground)]/[0.02]"
37330
37848
  ),
37331
37849
  children: [
37332
- /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)(
37850
+ /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)(
37333
37851
  "button",
37334
37852
  {
37335
37853
  onClick: () => setExpandedStep(isExpanded ? null : step.id),
37336
- className: "w-full text-left px-3 py-2.5 flex items-center gap-2",
37854
+ className: "w-full text-left px-3 py-2.5 flex items-center gap-2 whitespace-normal",
37337
37855
  children: [
37338
- /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)("div", { className: "flex-1 min-w-0", children: [
37339
- /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("span", { className: "text-[13px] font-medium text-[var(--foreground)]", children: step.name }),
37340
- step.description && !isExpanded && /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)("span", { className: "text-xs text-[var(--foreground)]/40 ml-2", children: [
37341
- "\u2014 ",
37342
- step.description
37343
- ] })
37344
- ] }),
37345
- /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(
37856
+ /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("div", { className: "flex-1 min-w-0", children: /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("span", { className: "text-[13px] font-medium text-[var(--foreground)]", children: step.name }) }),
37857
+ /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(
37346
37858
  "svg",
37347
37859
  {
37348
37860
  width: "12",
@@ -37355,28 +37867,28 @@ var WorkflowVisualizer = ({
37355
37867
  "shrink-0 text-[var(--foreground)]/30 transition-transform",
37356
37868
  isExpanded && "rotate-180"
37357
37869
  ),
37358
- children: /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("polyline", { points: "6 9 12 15 18 9" })
37870
+ children: /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("polyline", { points: "6 9 12 15 18 9" })
37359
37871
  }
37360
37872
  )
37361
37873
  ]
37362
37874
  }
37363
37875
  ),
37364
- isExpanded && /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)("div", { className: "px-3 pb-3 space-y-2.5", children: [
37365
- step.description && /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("p", { className: "text-xs text-[var(--foreground)]/50 leading-relaxed", children: step.description }),
37366
- step.sub_steps && step.sub_steps.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("div", { className: "space-y-1", children: step.sub_steps.map((sub) => /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)(
37876
+ isExpanded && /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)("div", { className: "px-3 pb-3 space-y-2.5", children: [
37877
+ step.description && /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("p", { className: "text-xs text-[var(--foreground)]/50 leading-relaxed whitespace-normal", children: step.description }),
37878
+ step.sub_steps && step.sub_steps.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("div", { className: "space-y-1", children: step.sub_steps.map((sub) => /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)(
37367
37879
  "div",
37368
37880
  {
37369
37881
  className: "flex items-start gap-2 text-xs",
37370
37882
  children: [
37371
- /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("span", { className: "shrink-0 mt-0.5 w-1.5 h-1.5 rounded-full bg-interactive/40" }),
37372
- /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("span", { className: "text-[var(--foreground)]/60", children: sub.action })
37883
+ /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("span", { className: "shrink-0 mt-0.5 w-1.5 h-1.5 rounded-full bg-interactive/40" }),
37884
+ /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("span", { className: "text-[var(--foreground)]/60", children: sub.action })
37373
37885
  ]
37374
37886
  },
37375
37887
  sub.id
37376
37888
  )) }),
37377
- step.tools && step.tools.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)("div", { className: "flex items-center gap-1.5 flex-wrap", children: [
37378
- /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("span", { className: "text-[10px] text-[var(--foreground)]/30 uppercase font-semibold tracking-wider", children: "Tools:" }),
37379
- step.tools.map((tool) => /* @__PURE__ */ (0, import_jsx_runtime125.jsx)(
37889
+ step.tools && step.tools.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)("div", { className: "flex items-center gap-1.5 flex-wrap", children: [
37890
+ /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("span", { className: "text-[10px] text-[var(--foreground)]/30 uppercase font-semibold tracking-wider", children: "Tools:" }),
37891
+ step.tools.map((tool) => /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(
37380
37892
  "span",
37381
37893
  {
37382
37894
  className: "text-[10px] font-mono px-1.5 py-0.5 rounded bg-interactive/[0.08] text-interactive/70 border border-interactive/10",
@@ -37385,9 +37897,9 @@ var WorkflowVisualizer = ({
37385
37897
  tool
37386
37898
  ))
37387
37899
  ] }),
37388
- step.on_failure && /* @__PURE__ */ (0, import_jsx_runtime125.jsxs)("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: [
37389
- /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("span", { className: "shrink-0 text-[10px] font-semibold text-[#ef4444]/70 uppercase tracking-wider mt-px", children: "On failure:" }),
37390
- /* @__PURE__ */ (0, import_jsx_runtime125.jsx)("span", { className: "text-[var(--foreground)]/50", children: step.on_failure })
37900
+ step.on_failure && /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)("div", { className: "flex items-start gap-2 text-xs bg-[#ef4444]/[0.06] border border-[#ef4444]/10 rounded-md px-2.5 py-2 whitespace-normal", children: [
37901
+ /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("span", { className: "shrink-0 text-[10px] font-semibold text-[#ef4444]/70 uppercase tracking-wider mt-px", children: "On failure:" }),
37902
+ /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("span", { className: "text-[var(--foreground)]/50", children: step.on_failure })
37391
37903
  ] })
37392
37904
  ] })
37393
37905
  ]
@@ -37401,8 +37913,8 @@ var WorkflowVisualizer = ({
37401
37913
  };
37402
37914
 
37403
37915
  // src/molecules/agent-builder/InstructionPreview/InstructionPreview.tsx
37404
- var import_react67 = require("react");
37405
- var import_jsx_runtime126 = require("react/jsx-runtime");
37916
+ var import_react71 = require("react");
37917
+ var import_jsx_runtime131 = require("react/jsx-runtime");
37406
37918
  var InstructionPreview = ({
37407
37919
  agent_name,
37408
37920
  description,
@@ -37411,11 +37923,11 @@ var InstructionPreview = ({
37411
37923
  tools,
37412
37924
  className
37413
37925
  }) => {
37414
- const [isExpanded, setIsExpanded] = (0, import_react67.useState)(false);
37926
+ const [isExpanded, setIsExpanded] = (0, import_react71.useState)(false);
37415
37927
  const previewLength = 300;
37416
37928
  const isLong = instruction.length > previewLength;
37417
37929
  const displayText = isExpanded || !isLong ? instruction : instruction.slice(0, previewLength) + "...";
37418
- return /* @__PURE__ */ (0, import_jsx_runtime126.jsxs)(
37930
+ return /* @__PURE__ */ (0, import_jsx_runtime131.jsxs)(
37419
37931
  "div",
37420
37932
  {
37421
37933
  className: cn(
@@ -37423,8 +37935,8 @@ var InstructionPreview = ({
37423
37935
  className
37424
37936
  ),
37425
37937
  children: [
37426
- /* @__PURE__ */ (0, import_jsx_runtime126.jsx)("div", { className: "px-4 py-3 border-b border-[var(--border-color)] bg-[var(--foreground)]/[0.03]", children: /* @__PURE__ */ (0, import_jsx_runtime126.jsxs)("div", { className: "flex items-center gap-2.5", children: [
37427
- /* @__PURE__ */ (0, import_jsx_runtime126.jsx)("div", { className: "w-6 h-6 rounded-md bg-interactive/10 flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime126.jsxs)(
37938
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsx)("div", { className: "px-4 py-3 border-b border-[var(--border-color)] bg-[var(--foreground)]/[0.03]", children: /* @__PURE__ */ (0, import_jsx_runtime131.jsxs)("div", { className: "flex items-center gap-2.5", children: [
37939
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsx)("div", { className: "w-6 h-6 rounded-md bg-interactive/10 flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime131.jsxs)(
37428
37940
  "svg",
37429
37941
  {
37430
37942
  width: "14",
@@ -37437,24 +37949,24 @@ var InstructionPreview = ({
37437
37949
  strokeLinecap: "round",
37438
37950
  strokeLinejoin: "round",
37439
37951
  children: [
37440
- /* @__PURE__ */ (0, import_jsx_runtime126.jsx)("path", { d: "M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z" }),
37441
- /* @__PURE__ */ (0, import_jsx_runtime126.jsx)("polyline", { points: "14 2 14 8 20 8" }),
37442
- /* @__PURE__ */ (0, import_jsx_runtime126.jsx)("line", { x1: "16", y1: "13", x2: "8", y2: "13" }),
37443
- /* @__PURE__ */ (0, import_jsx_runtime126.jsx)("line", { x1: "16", y1: "17", x2: "8", y2: "17" }),
37444
- /* @__PURE__ */ (0, import_jsx_runtime126.jsx)("polyline", { points: "10 9 9 9 8 9" })
37952
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsx)("path", { d: "M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z" }),
37953
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsx)("polyline", { points: "14 2 14 8 20 8" }),
37954
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsx)("line", { x1: "16", y1: "13", x2: "8", y2: "13" }),
37955
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsx)("line", { x1: "16", y1: "17", x2: "8", y2: "17" }),
37956
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsx)("polyline", { points: "10 9 9 9 8 9" })
37445
37957
  ]
37446
37958
  }
37447
37959
  ) }),
37448
- /* @__PURE__ */ (0, import_jsx_runtime126.jsxs)("div", { className: "flex-1 min-w-0", children: [
37449
- /* @__PURE__ */ (0, import_jsx_runtime126.jsx)("h4", { className: "text-sm font-semibold text-[var(--foreground)]", children: agent_name }),
37450
- description && /* @__PURE__ */ (0, import_jsx_runtime126.jsx)("p", { className: "text-[11px] text-[var(--foreground)]/40 mt-0.5", children: description })
37960
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsxs)("div", { className: "flex-1 min-w-0", children: [
37961
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsx)("h4", { className: "text-sm font-semibold text-[var(--foreground)]", children: agent_name }),
37962
+ description && /* @__PURE__ */ (0, import_jsx_runtime131.jsx)("p", { className: "text-[11px] text-[var(--foreground)]/40 mt-0.5 whitespace-normal", children: description })
37451
37963
  ] })
37452
37964
  ] }) }),
37453
- /* @__PURE__ */ (0, import_jsx_runtime126.jsxs)("div", { className: "px-4 py-3 space-y-3", children: [
37454
- /* @__PURE__ */ (0, import_jsx_runtime126.jsxs)("div", { children: [
37455
- /* @__PURE__ */ (0, import_jsx_runtime126.jsx)("p", { className: "text-[10px] font-semibold text-[var(--foreground)]/30 uppercase tracking-wider mb-1.5", children: "Instruction" }),
37456
- /* @__PURE__ */ (0, import_jsx_runtime126.jsx)("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 }),
37457
- isLong && /* @__PURE__ */ (0, import_jsx_runtime126.jsx)(
37965
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsxs)("div", { className: "px-4 py-3 space-y-3", children: [
37966
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsxs)("div", { children: [
37967
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsx)("p", { className: "text-[10px] font-semibold text-[var(--foreground)]/30 uppercase tracking-wider mb-1.5", children: "Instruction" }),
37968
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsx)("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 }),
37969
+ isLong && /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(
37458
37970
  "button",
37459
37971
  {
37460
37972
  onClick: () => setIsExpanded(!isExpanded),
@@ -37463,16 +37975,16 @@ var InstructionPreview = ({
37463
37975
  }
37464
37976
  )
37465
37977
  ] }),
37466
- workflow_summary && workflow_summary.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime126.jsxs)("div", { children: [
37467
- /* @__PURE__ */ (0, import_jsx_runtime126.jsx)("p", { className: "text-[10px] font-semibold text-[var(--foreground)]/30 uppercase tracking-wider mb-1.5", children: "Workflow" }),
37468
- /* @__PURE__ */ (0, import_jsx_runtime126.jsx)("div", { className: "space-y-1", children: workflow_summary.map((step, idx) => /* @__PURE__ */ (0, import_jsx_runtime126.jsxs)("div", { className: "flex items-start gap-2 text-xs", children: [
37469
- /* @__PURE__ */ (0, import_jsx_runtime126.jsx)("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 }),
37470
- /* @__PURE__ */ (0, import_jsx_runtime126.jsx)("span", { className: "text-[var(--foreground)]/50 mt-0.5", children: step })
37978
+ workflow_summary && workflow_summary.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime131.jsxs)("div", { children: [
37979
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsx)("p", { className: "text-[10px] font-semibold text-[var(--foreground)]/30 uppercase tracking-wider mb-1.5", children: "Workflow" }),
37980
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsx)("div", { className: "space-y-1", children: workflow_summary.map((step, idx) => /* @__PURE__ */ (0, import_jsx_runtime131.jsxs)("div", { className: "flex items-start gap-2 text-xs", children: [
37981
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsx)("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 }),
37982
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsx)("span", { className: "text-[var(--foreground)]/50 mt-0.5", children: step })
37471
37983
  ] }, idx)) })
37472
37984
  ] }),
37473
- tools && tools.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime126.jsxs)("div", { children: [
37474
- /* @__PURE__ */ (0, import_jsx_runtime126.jsx)("p", { className: "text-[10px] font-semibold text-[var(--foreground)]/30 uppercase tracking-wider mb-1.5", children: "Tools" }),
37475
- /* @__PURE__ */ (0, import_jsx_runtime126.jsx)("div", { className: "flex flex-wrap gap-1.5", children: tools.map((tool) => /* @__PURE__ */ (0, import_jsx_runtime126.jsx)(
37985
+ tools && tools.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime131.jsxs)("div", { children: [
37986
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsx)("p", { className: "text-[10px] font-semibold text-[var(--foreground)]/30 uppercase tracking-wider mb-1.5", children: "Tools" }),
37987
+ /* @__PURE__ */ (0, import_jsx_runtime131.jsx)("div", { className: "flex flex-wrap gap-1.5", children: tools.map((tool) => /* @__PURE__ */ (0, import_jsx_runtime131.jsx)(
37476
37988
  "span",
37477
37989
  {
37478
37990
  className: "text-[10px] font-mono px-2 py-0.5 rounded bg-interactive/[0.08] text-interactive/70 border border-interactive/10",
@@ -37488,16 +38000,17 @@ var InstructionPreview = ({
37488
38000
  };
37489
38001
 
37490
38002
  // src/molecules/agent-builder/UIComponentSelector/UIComponentSelector.tsx
37491
- var import_react68 = require("react");
37492
- var import_jsx_runtime127 = require("react/jsx-runtime");
38003
+ var import_react72 = require("react");
38004
+ var import_jsx_runtime132 = require("react/jsx-runtime");
37493
38005
  function UIComponentSelector({
37494
38006
  components,
37495
38007
  onSelect,
37496
38008
  onPreview,
37497
- className
38009
+ className,
38010
+ isLatestMessage = true
37498
38011
  }) {
37499
- const [selected, setSelected] = (0, import_react68.useState)(/* @__PURE__ */ new Set());
37500
- const [submitted, setSubmitted] = (0, import_react68.useState)(false);
38012
+ const [selected, setSelected] = (0, import_react72.useState)(/* @__PURE__ */ new Set());
38013
+ const [submitted, setSubmitted] = (0, import_react72.useState)(false);
37501
38014
  const grouped = components.reduce(
37502
38015
  (acc, comp) => {
37503
38016
  const cat = comp.category || "Other";
@@ -37508,7 +38021,7 @@ function UIComponentSelector({
37508
38021
  {}
37509
38022
  );
37510
38023
  const toggle = (name) => {
37511
- if (submitted) return;
38024
+ if (submitted || !isLatestMessage) return;
37512
38025
  setSelected((prev) => {
37513
38026
  const next = new Set(prev);
37514
38027
  if (next.has(name)) next.delete(name);
@@ -37521,7 +38034,7 @@ function UIComponentSelector({
37521
38034
  onSelect?.(Array.from(selected));
37522
38035
  };
37523
38036
  const categoryOrder = Object.keys(grouped).sort();
37524
- return /* @__PURE__ */ (0, import_jsx_runtime127.jsxs)(
38037
+ return /* @__PURE__ */ (0, import_jsx_runtime132.jsxs)(
37525
38038
  "div",
37526
38039
  {
37527
38040
  className: cn(
@@ -37529,36 +38042,36 @@ function UIComponentSelector({
37529
38042
  className
37530
38043
  ),
37531
38044
  children: [
37532
- /* @__PURE__ */ (0, import_jsx_runtime127.jsxs)("div", { className: "px-4 py-3 border-b border-border bg-muted/50", children: [
37533
- /* @__PURE__ */ (0, import_jsx_runtime127.jsx)("h3", { className: "text-sm font-semibold text-foreground", children: "Select UI Components" }),
37534
- /* @__PURE__ */ (0, import_jsx_runtime127.jsx)("p", { className: "text-xs text-muted-foreground mt-0.5", children: "Choose which visual components this agent can use in its responses." })
38045
+ /* @__PURE__ */ (0, import_jsx_runtime132.jsxs)("div", { className: "px-4 py-3 border-b border-border bg-muted/50", children: [
38046
+ /* @__PURE__ */ (0, import_jsx_runtime132.jsx)("h3", { className: "text-sm font-semibold text-foreground", children: "Select UI Components" }),
38047
+ /* @__PURE__ */ (0, import_jsx_runtime132.jsx)("p", { className: "text-xs text-muted-foreground mt-0.5", children: "Choose which visual components this agent can use in its responses." })
37535
38048
  ] }),
37536
- /* @__PURE__ */ (0, import_jsx_runtime127.jsx)("div", { className: "px-4 py-3 space-y-4", children: categoryOrder.map((category) => /* @__PURE__ */ (0, import_jsx_runtime127.jsxs)("div", { children: [
37537
- /* @__PURE__ */ (0, import_jsx_runtime127.jsx)("h4", { className: "text-xs font-medium text-muted-foreground uppercase tracking-wider mb-2", children: category }),
37538
- /* @__PURE__ */ (0, import_jsx_runtime127.jsx)("div", { className: "space-y-1.5", children: grouped[category].map((comp) => /* @__PURE__ */ (0, import_jsx_runtime127.jsxs)(
38049
+ /* @__PURE__ */ (0, import_jsx_runtime132.jsx)("div", { className: "px-4 py-3 space-y-4", children: categoryOrder.map((category) => /* @__PURE__ */ (0, import_jsx_runtime132.jsxs)("div", { children: [
38050
+ /* @__PURE__ */ (0, import_jsx_runtime132.jsx)("h4", { className: "text-xs font-medium text-muted-foreground uppercase tracking-wider mb-2", children: category }),
38051
+ /* @__PURE__ */ (0, import_jsx_runtime132.jsx)("div", { className: "space-y-1.5", children: grouped[category].map((comp) => /* @__PURE__ */ (0, import_jsx_runtime132.jsxs)(
37539
38052
  "label",
37540
38053
  {
37541
38054
  className: cn(
37542
38055
  "flex items-start gap-3 px-3 py-2 rounded-lg cursor-pointer transition-colors",
37543
- submitted ? "cursor-default opacity-70" : "hover:bg-muted/50",
38056
+ submitted || !isLatestMessage ? "cursor-default opacity-70" : "hover:bg-muted/50",
37544
38057
  selected.has(comp.name) && !submitted && "bg-interactive/5 border border-interactive/20",
37545
38058
  selected.has(comp.name) && submitted && "bg-interactive/5"
37546
38059
  ),
37547
38060
  children: [
37548
- /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(
38061
+ /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(
37549
38062
  "input",
37550
38063
  {
37551
38064
  type: "checkbox",
37552
38065
  checked: selected.has(comp.name),
37553
38066
  onChange: () => toggle(comp.name),
37554
- disabled: submitted,
38067
+ disabled: submitted || !isLatestMessage,
37555
38068
  className: "mt-0.5 h-4 w-4 rounded border-border text-interactive focus:ring-interactive/50 disabled:opacity-50"
37556
38069
  }
37557
38070
  ),
37558
- /* @__PURE__ */ (0, import_jsx_runtime127.jsxs)("div", { className: "flex-1 min-w-0", children: [
37559
- /* @__PURE__ */ (0, import_jsx_runtime127.jsxs)("div", { className: "flex items-center gap-1", children: [
37560
- /* @__PURE__ */ (0, import_jsx_runtime127.jsx)("span", { className: "text-sm font-medium text-foreground", children: comp.display_name }),
37561
- onPreview && /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(
38071
+ /* @__PURE__ */ (0, import_jsx_runtime132.jsxs)("div", { className: "flex-1 min-w-0", children: [
38072
+ /* @__PURE__ */ (0, import_jsx_runtime132.jsxs)("div", { className: "flex items-center gap-1", children: [
38073
+ /* @__PURE__ */ (0, import_jsx_runtime132.jsx)("span", { className: "text-sm font-medium text-foreground", children: comp.display_name }),
38074
+ onPreview && /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(
37562
38075
  "button",
37563
38076
  {
37564
38077
  type: "button",
@@ -37569,7 +38082,7 @@ function UIComponentSelector({
37569
38082
  },
37570
38083
  className: "shrink-0 p-0.5 rounded hover:bg-muted transition-colors",
37571
38084
  title: `Preview ${comp.display_name}`,
37572
- children: /* @__PURE__ */ (0, import_jsx_runtime127.jsxs)(
38085
+ children: /* @__PURE__ */ (0, import_jsx_runtime132.jsxs)(
37573
38086
  "svg",
37574
38087
  {
37575
38088
  width: "14",
@@ -37582,28 +38095,28 @@ function UIComponentSelector({
37582
38095
  strokeLinejoin: "round",
37583
38096
  className: "text-muted-foreground hover:text-primary",
37584
38097
  children: [
37585
- /* @__PURE__ */ (0, import_jsx_runtime127.jsx)("circle", { cx: "12", cy: "12", r: "10" }),
37586
- /* @__PURE__ */ (0, import_jsx_runtime127.jsx)("line", { x1: "12", y1: "16", x2: "12", y2: "12" }),
37587
- /* @__PURE__ */ (0, import_jsx_runtime127.jsx)("line", { x1: "12", y1: "8", x2: "12.01", y2: "8" })
38098
+ /* @__PURE__ */ (0, import_jsx_runtime132.jsx)("circle", { cx: "12", cy: "12", r: "10" }),
38099
+ /* @__PURE__ */ (0, import_jsx_runtime132.jsx)("line", { x1: "12", y1: "16", x2: "12", y2: "12" }),
38100
+ /* @__PURE__ */ (0, import_jsx_runtime132.jsx)("line", { x1: "12", y1: "8", x2: "12.01", y2: "8" })
37588
38101
  ]
37589
38102
  }
37590
38103
  )
37591
38104
  }
37592
38105
  )
37593
38106
  ] }),
37594
- /* @__PURE__ */ (0, import_jsx_runtime127.jsx)("span", { className: "ml-0 text-xs text-muted-foreground", children: comp.description })
38107
+ /* @__PURE__ */ (0, import_jsx_runtime132.jsx)("span", { className: "ml-0 text-xs text-muted-foreground", children: comp.description })
37595
38108
  ] })
37596
38109
  ]
37597
38110
  },
37598
38111
  comp.name
37599
38112
  )) })
37600
38113
  ] }, category)) }),
37601
- !submitted && /* @__PURE__ */ (0, import_jsx_runtime127.jsxs)("div", { className: "px-4 py-3 border-t border-border flex items-center justify-between", children: [
37602
- /* @__PURE__ */ (0, import_jsx_runtime127.jsxs)("span", { className: "text-xs text-muted-foreground", children: [
38114
+ !submitted && isLatestMessage && /* @__PURE__ */ (0, import_jsx_runtime132.jsxs)("div", { className: "px-4 py-3 border-t border-border flex items-center justify-between", children: [
38115
+ /* @__PURE__ */ (0, import_jsx_runtime132.jsxs)("span", { className: "text-xs text-muted-foreground", children: [
37603
38116
  selected.size,
37604
38117
  " selected"
37605
38118
  ] }),
37606
- /* @__PURE__ */ (0, import_jsx_runtime127.jsx)(
38119
+ /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(
37607
38120
  "button",
37608
38121
  {
37609
38122
  onClick: handleContinue,
@@ -37618,7 +38131,7 @@ function UIComponentSelector({
37618
38131
  }
37619
38132
 
37620
38133
  // src/molecules/agent-builder/MultiAgentCard/MultiAgentCard.tsx
37621
- var import_jsx_runtime128 = require("react/jsx-runtime");
38134
+ var import_jsx_runtime133 = require("react/jsx-runtime");
37622
38135
  var MultiAgentCard = ({
37623
38136
  name,
37624
38137
  display_name,
@@ -37628,7 +38141,7 @@ var MultiAgentCard = ({
37628
38141
  className
37629
38142
  }) => {
37630
38143
  const avatarUrl = `https://api.dicebear.com/7.x/avataaars/svg?seed=${name}`;
37631
- return /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)(
38144
+ return /* @__PURE__ */ (0, import_jsx_runtime133.jsxs)(
37632
38145
  "div",
37633
38146
  {
37634
38147
  className: cn(
@@ -37636,14 +38149,14 @@ var MultiAgentCard = ({
37636
38149
  className
37637
38150
  ),
37638
38151
  children: [
37639
- /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)("div", { className: "flex items-start gap-4 px-5 py-4", children: [
37640
- /* @__PURE__ */ (0, import_jsx_runtime128.jsx)("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__ */ (0, import_jsx_runtime128.jsx)("img", { src: avatarUrl, alt: display_name, className: "h-full w-full" }) }),
37641
- /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)("div", { className: "flex-1 min-w-0", children: [
37642
- /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)("div", { className: "flex items-center gap-2", children: [
37643
- /* @__PURE__ */ (0, import_jsx_runtime128.jsx)("h4", { className: "text-sm font-semibold text-[var(--foreground)] truncate", children: display_name }),
37644
- /* @__PURE__ */ (0, import_jsx_runtime128.jsx)("span", { className: "text-[11px] font-mono text-[var(--foreground)]/40 bg-[var(--foreground)]/[0.05] px-1.5 py-0.5 rounded", children: name }),
37645
- /* @__PURE__ */ (0, import_jsx_runtime128.jsx)("span", { className: "text-[10px] px-1.5 py-0.5 rounded-full font-medium bg-interactive/10 text-interactive", children: "Multi-Agent" }),
37646
- /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(
38152
+ /* @__PURE__ */ (0, import_jsx_runtime133.jsxs)("div", { className: "flex items-start gap-4 px-5 py-4", children: [
38153
+ /* @__PURE__ */ (0, import_jsx_runtime133.jsx)("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__ */ (0, import_jsx_runtime133.jsx)("img", { src: avatarUrl, alt: display_name, className: "h-full w-full" }) }),
38154
+ /* @__PURE__ */ (0, import_jsx_runtime133.jsxs)("div", { className: "flex-1 min-w-0", children: [
38155
+ /* @__PURE__ */ (0, import_jsx_runtime133.jsxs)("div", { className: "flex items-center gap-2", children: [
38156
+ /* @__PURE__ */ (0, import_jsx_runtime133.jsx)("h4", { className: "text-sm font-semibold text-[var(--foreground)] truncate", children: display_name }),
38157
+ /* @__PURE__ */ (0, import_jsx_runtime133.jsx)("span", { className: "text-[11px] font-mono text-[var(--foreground)]/40 bg-[var(--foreground)]/[0.05] px-1.5 py-0.5 rounded", children: name }),
38158
+ /* @__PURE__ */ (0, import_jsx_runtime133.jsx)("span", { className: "text-[10px] px-1.5 py-0.5 rounded-full font-medium bg-interactive/10 text-interactive", children: "Multi-Agent" }),
38159
+ /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(
37647
38160
  "span",
37648
38161
  {
37649
38162
  className: cn(
@@ -37654,18 +38167,18 @@ var MultiAgentCard = ({
37654
38167
  }
37655
38168
  )
37656
38169
  ] }),
37657
- /* @__PURE__ */ (0, import_jsx_runtime128.jsx)("p", { className: "text-xs text-[var(--foreground)]/60 leading-relaxed mt-1 whitespace-normal", style: { textWrap: "auto" }, children: description })
38170
+ /* @__PURE__ */ (0, import_jsx_runtime133.jsx)("p", { className: "text-xs text-[var(--foreground)]/60 leading-relaxed mt-1 whitespace-normal", style: { textWrap: "auto" }, children: description })
37658
38171
  ] })
37659
38172
  ] }),
37660
- stages.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)("div", { className: "border-t border-[var(--border-color)] px-5 py-4", children: [
37661
- /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)("p", { className: "text-[11px] font-semibold text-[var(--foreground)]/40 uppercase tracking-wide mb-3", children: [
38173
+ stages.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime133.jsxs)("div", { className: "border-t border-[var(--border-color)] px-5 py-4", children: [
38174
+ /* @__PURE__ */ (0, import_jsx_runtime133.jsxs)("p", { className: "text-[11px] font-semibold text-[var(--foreground)]/40 uppercase tracking-wide mb-3", children: [
37662
38175
  "Stages (",
37663
38176
  stages.length,
37664
38177
  ")"
37665
38178
  ] }),
37666
- /* @__PURE__ */ (0, import_jsx_runtime128.jsx)("div", { className: "flex flex-col gap-0", children: stages.map((stage, idx) => /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)("div", { className: "flex items-stretch", children: [
37667
- /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)("div", { className: "flex flex-col items-center mr-3 w-5", children: [
37668
- /* @__PURE__ */ (0, import_jsx_runtime128.jsx)(
38179
+ /* @__PURE__ */ (0, import_jsx_runtime133.jsx)("div", { className: "flex flex-col gap-0", children: stages.map((stage, idx) => /* @__PURE__ */ (0, import_jsx_runtime133.jsxs)("div", { className: "flex items-stretch", children: [
38180
+ /* @__PURE__ */ (0, import_jsx_runtime133.jsxs)("div", { className: "flex flex-col items-center mr-3 w-5", children: [
38181
+ /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(
37669
38182
  "div",
37670
38183
  {
37671
38184
  className: cn(
@@ -37675,20 +38188,20 @@ var MultiAgentCard = ({
37675
38188
  children: idx + 1
37676
38189
  }
37677
38190
  ),
37678
- idx < stages.length - 1 && /* @__PURE__ */ (0, import_jsx_runtime128.jsx)("div", { className: "w-px flex-1 bg-interactive/20 min-h-[16px]" })
38191
+ idx < stages.length - 1 && /* @__PURE__ */ (0, import_jsx_runtime133.jsx)("div", { className: "w-px flex-1 bg-interactive/20 min-h-[16px]" })
37679
38192
  ] }),
37680
- /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)("div", { className: "flex-1 mb-2 p-3 rounded-lg border border-[var(--border-color)] bg-[var(--foreground)]/[0.02]", children: [
37681
- /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)("div", { className: "flex items-center gap-2", children: [
37682
- /* @__PURE__ */ (0, import_jsx_runtime128.jsx)("span", { className: "text-xs font-semibold text-[var(--foreground)]", children: stage.name }),
37683
- /* @__PURE__ */ (0, import_jsx_runtime128.jsx)("span", { className: "text-[10px] font-mono text-[var(--foreground)]/30", children: stage.agent_name })
38193
+ /* @__PURE__ */ (0, import_jsx_runtime133.jsxs)("div", { className: "flex-1 mb-2 p-3 rounded-lg border border-[var(--border-color)] bg-[var(--foreground)]/[0.02]", children: [
38194
+ /* @__PURE__ */ (0, import_jsx_runtime133.jsxs)("div", { className: "flex items-center gap-2", children: [
38195
+ /* @__PURE__ */ (0, import_jsx_runtime133.jsx)("span", { className: "text-xs font-semibold text-[var(--foreground)]", children: stage.name }),
38196
+ /* @__PURE__ */ (0, import_jsx_runtime133.jsx)("span", { className: "text-[10px] font-mono text-[var(--foreground)]/30", children: stage.agent_name })
37684
38197
  ] }),
37685
- /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)("div", { className: "flex items-center gap-3 mt-1.5 text-[10px] text-[var(--foreground)]/50", children: [
37686
- stage.tools && stage.tools.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)("span", { children: [
38198
+ /* @__PURE__ */ (0, import_jsx_runtime133.jsxs)("div", { className: "flex items-center gap-3 mt-1.5 text-[10px] text-[var(--foreground)]/50", children: [
38199
+ stage.tools && stage.tools.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime133.jsxs)("span", { children: [
37687
38200
  stage.tools.length,
37688
38201
  " tool",
37689
38202
  stage.tools.length !== 1 ? "s" : ""
37690
38203
  ] }),
37691
- stage.ui_components && stage.ui_components.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime128.jsxs)("span", { children: [
38204
+ stage.ui_components && stage.ui_components.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime133.jsxs)("span", { children: [
37692
38205
  stage.ui_components.length,
37693
38206
  " component",
37694
38207
  stage.ui_components.length !== 1 ? "s" : ""
@@ -37703,12 +38216,12 @@ var MultiAgentCard = ({
37703
38216
  };
37704
38217
 
37705
38218
  // src/molecules/agent-builder/MultiAgentPlan/MultiAgentPlan.tsx
37706
- var import_jsx_runtime129 = require("react/jsx-runtime");
38219
+ var import_jsx_runtime134 = require("react/jsx-runtime");
37707
38220
  var MultiAgentPlan = ({
37708
38221
  stages = [],
37709
38222
  className
37710
38223
  }) => {
37711
- return /* @__PURE__ */ (0, import_jsx_runtime129.jsxs)(
38224
+ return /* @__PURE__ */ (0, import_jsx_runtime134.jsxs)(
37712
38225
  "div",
37713
38226
  {
37714
38227
  className: cn(
@@ -37716,8 +38229,8 @@ var MultiAgentPlan = ({
37716
38229
  className
37717
38230
  ),
37718
38231
  children: [
37719
- /* @__PURE__ */ (0, import_jsx_runtime129.jsx)("div", { className: "px-4 py-3 border-b border-[var(--border-color)] bg-[var(--foreground)]/[0.02]", children: /* @__PURE__ */ (0, import_jsx_runtime129.jsxs)("div", { className: "flex items-center gap-2", children: [
37720
- /* @__PURE__ */ (0, import_jsx_runtime129.jsx)("div", { className: "w-4 h-4 rounded bg-violet-500/20 flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime129.jsx)(
38232
+ /* @__PURE__ */ (0, import_jsx_runtime134.jsx)("div", { className: "px-4 py-3 border-b border-[var(--border-color)] bg-[var(--foreground)]/[0.02]", children: /* @__PURE__ */ (0, import_jsx_runtime134.jsxs)("div", { className: "flex items-center gap-2", children: [
38233
+ /* @__PURE__ */ (0, import_jsx_runtime134.jsx)("div", { className: "w-4 h-4 rounded bg-violet-500/20 flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(
37721
38234
  "svg",
37722
38235
  {
37723
38236
  width: "10",
@@ -37727,20 +38240,20 @@ var MultiAgentPlan = ({
37727
38240
  stroke: "currentColor",
37728
38241
  strokeWidth: "2",
37729
38242
  className: "text-violet-600",
37730
- children: /* @__PURE__ */ (0, import_jsx_runtime129.jsx)("path", { d: "M16 3h5v5M4 20L21 3M21 16v5h-5M15 15l6 6M4 4l5 5" })
38243
+ children: /* @__PURE__ */ (0, import_jsx_runtime134.jsx)("path", { d: "M16 3h5v5M4 20L21 3M21 16v5h-5M15 15l6 6M4 4l5 5" })
37731
38244
  }
37732
38245
  ) }),
37733
- /* @__PURE__ */ (0, import_jsx_runtime129.jsx)("span", { className: "text-xs font-semibold text-[var(--foreground)]", children: "Proposed Multi-Agent Workflow" }),
37734
- /* @__PURE__ */ (0, import_jsx_runtime129.jsx)("span", { className: "text-[10px] px-1.5 py-0.5 rounded-full bg-amber-500/10 text-amber-600 font-medium", children: "Draft" })
38246
+ /* @__PURE__ */ (0, import_jsx_runtime134.jsx)("span", { className: "text-xs font-semibold text-[var(--foreground)]", children: "Proposed Multi-Agent Workflow" }),
38247
+ /* @__PURE__ */ (0, import_jsx_runtime134.jsx)("span", { className: "text-[10px] px-1.5 py-0.5 rounded-full bg-amber-500/10 text-amber-600 font-medium", children: "Draft" })
37735
38248
  ] }) }),
37736
- /* @__PURE__ */ (0, import_jsx_runtime129.jsx)("div", { className: "px-4 py-3", children: /* @__PURE__ */ (0, import_jsx_runtime129.jsx)("div", { className: "flex flex-col gap-0", children: stages.map((stage, idx) => /* @__PURE__ */ (0, import_jsx_runtime129.jsxs)("div", { className: "flex items-stretch min-w-0", children: [
37737
- /* @__PURE__ */ (0, import_jsx_runtime129.jsxs)("div", { className: "flex flex-col items-center mr-3 w-6", children: [
37738
- /* @__PURE__ */ (0, import_jsx_runtime129.jsx)("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 }),
37739
- idx < stages.length - 1 && /* @__PURE__ */ (0, import_jsx_runtime129.jsx)("div", { className: "w-px flex-1 bg-interactive/20 min-h-[12px]" })
38249
+ /* @__PURE__ */ (0, import_jsx_runtime134.jsx)("div", { className: "px-4 py-3", children: /* @__PURE__ */ (0, import_jsx_runtime134.jsx)("div", { className: "flex flex-col gap-0", children: stages.map((stage, idx) => /* @__PURE__ */ (0, import_jsx_runtime134.jsxs)("div", { className: "flex items-stretch min-w-0", children: [
38250
+ /* @__PURE__ */ (0, import_jsx_runtime134.jsxs)("div", { className: "flex flex-col items-center mr-3 w-6", children: [
38251
+ /* @__PURE__ */ (0, import_jsx_runtime134.jsx)("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 }),
38252
+ idx < stages.length - 1 && /* @__PURE__ */ (0, import_jsx_runtime134.jsx)("div", { className: "w-px flex-1 bg-interactive/20 min-h-[12px]" })
37740
38253
  ] }),
37741
- /* @__PURE__ */ (0, import_jsx_runtime129.jsxs)("div", { className: "flex-1 mb-2 pb-2 min-w-0", children: [
37742
- /* @__PURE__ */ (0, import_jsx_runtime129.jsx)("p", { className: "text-xs font-semibold text-foreground", children: stage.name }),
37743
- stage.description && /* @__PURE__ */ (0, import_jsx_runtime129.jsx)(
38254
+ /* @__PURE__ */ (0, import_jsx_runtime134.jsxs)("div", { className: "flex-1 mb-2 pb-2 min-w-0", children: [
38255
+ /* @__PURE__ */ (0, import_jsx_runtime134.jsx)("p", { className: "text-xs font-semibold text-foreground", children: stage.name }),
38256
+ stage.description && /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(
37744
38257
  "p",
37745
38258
  {
37746
38259
  className: "text-[11px] text-foreground/50 mt-0.5 whitespace-normal",
@@ -37748,7 +38261,7 @@ var MultiAgentPlan = ({
37748
38261
  children: stage.description
37749
38262
  }
37750
38263
  ),
37751
- stage.proposed_tools && stage.proposed_tools.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime129.jsx)("div", { className: "flex flex-wrap gap-1 mt-1.5", children: stage.proposed_tools.map((tool) => /* @__PURE__ */ (0, import_jsx_runtime129.jsx)(
38264
+ stage.proposed_tools && stage.proposed_tools.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime134.jsx)("div", { className: "flex flex-wrap gap-1 mt-1.5", children: stage.proposed_tools.map((tool) => /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(
37752
38265
  "span",
37753
38266
  {
37754
38267
  className: "text-[10px] px-1.5 py-0.5 rounded bg-interactive/10 text-interactive font-mono",
@@ -37764,17 +38277,18 @@ var MultiAgentPlan = ({
37764
38277
  };
37765
38278
 
37766
38279
  // src/molecules/agent-builder/MultiAgentUISelector/MultiAgentUISelector.tsx
37767
- var import_react69 = require("react");
37768
- var import_jsx_runtime130 = require("react/jsx-runtime");
38280
+ var import_react73 = require("react");
38281
+ var import_jsx_runtime135 = require("react/jsx-runtime");
37769
38282
  var MultiAgentUISelector = ({
37770
38283
  stages = [],
37771
38284
  components = [],
37772
38285
  onSelect,
37773
38286
  onPreview,
37774
- className
38287
+ className,
38288
+ isLatestMessage = true
37775
38289
  }) => {
37776
- const [activeStageId, setActiveStageId] = (0, import_react69.useState)(stages[0]?.id || "");
37777
- const [selections, setSelections] = (0, import_react69.useState)(
38290
+ const [activeStageId, setActiveStageId] = (0, import_react73.useState)(stages[0]?.id || "");
38291
+ const [selections, setSelections] = (0, import_react73.useState)(
37778
38292
  () => {
37779
38293
  const init = {};
37780
38294
  for (const stage of stages) {
@@ -37783,16 +38297,16 @@ var MultiAgentUISelector = ({
37783
38297
  return init;
37784
38298
  }
37785
38299
  );
37786
- const [submitted, setSubmitted] = (0, import_react69.useState)(false);
38300
+ const [submitted, setSubmitted] = (0, import_react73.useState)(false);
37787
38301
  const grouped = components.reduce((acc, comp) => {
37788
38302
  const cat = comp.category || "Other";
37789
38303
  if (!acc[cat]) acc[cat] = [];
37790
38304
  acc[cat].push(comp);
37791
38305
  return acc;
37792
38306
  }, {});
37793
- const toggleComponent = (0, import_react69.useCallback)(
38307
+ const toggleComponent = (0, import_react73.useCallback)(
37794
38308
  (stageId, compName) => {
37795
- if (submitted) return;
38309
+ if (submitted || !isLatestMessage) return;
37796
38310
  setSelections((prev) => {
37797
38311
  const updated = { ...prev };
37798
38312
  const set = new Set(updated[stageId] || []);
@@ -37807,7 +38321,7 @@ var MultiAgentUISelector = ({
37807
38321
  },
37808
38322
  [submitted]
37809
38323
  );
37810
- const handleContinue = (0, import_react69.useCallback)(() => {
38324
+ const handleContinue = (0, import_react73.useCallback)(() => {
37811
38325
  setSubmitted(true);
37812
38326
  if (onSelect) {
37813
38327
  const result = {};
@@ -37818,7 +38332,7 @@ var MultiAgentUISelector = ({
37818
38332
  }
37819
38333
  }, [onSelect, selections]);
37820
38334
  const activeStage = stages.find((s) => s.id === activeStageId);
37821
- return /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)(
38335
+ return /* @__PURE__ */ (0, import_jsx_runtime135.jsxs)(
37822
38336
  "div",
37823
38337
  {
37824
38338
  className: cn(
@@ -37826,8 +38340,8 @@ var MultiAgentUISelector = ({
37826
38340
  className
37827
38341
  ),
37828
38342
  children: [
37829
- /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("div", { className: "px-4 py-3 border-b border-[var(--border-color)] bg-[var(--foreground)]/[0.02]", children: /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)("div", { className: "flex items-center gap-2", children: [
37830
- /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("div", { className: "w-4 h-4 rounded bg-interactive/20 flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)(
38343
+ /* @__PURE__ */ (0, import_jsx_runtime135.jsx)("div", { className: "px-4 py-3 border-b border-[var(--border-color)] bg-[var(--foreground)]/[0.02]", children: /* @__PURE__ */ (0, import_jsx_runtime135.jsxs)("div", { className: "flex items-center gap-2", children: [
38344
+ /* @__PURE__ */ (0, import_jsx_runtime135.jsx)("div", { className: "w-4 h-4 rounded bg-interactive/20 flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime135.jsxs)(
37831
38345
  "svg",
37832
38346
  {
37833
38347
  width: "10",
@@ -37838,42 +38352,40 @@ var MultiAgentUISelector = ({
37838
38352
  strokeWidth: "2",
37839
38353
  className: "text-interactive",
37840
38354
  children: [
37841
- /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("rect", { x: "3", y: "3", width: "7", height: "7" }),
37842
- /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("rect", { x: "14", y: "3", width: "7", height: "7" }),
37843
- /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("rect", { x: "3", y: "14", width: "7", height: "7" }),
37844
- /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("rect", { x: "14", y: "14", width: "7", height: "7" })
38355
+ /* @__PURE__ */ (0, import_jsx_runtime135.jsx)("rect", { x: "3", y: "3", width: "7", height: "7" }),
38356
+ /* @__PURE__ */ (0, import_jsx_runtime135.jsx)("rect", { x: "14", y: "3", width: "7", height: "7" }),
38357
+ /* @__PURE__ */ (0, import_jsx_runtime135.jsx)("rect", { x: "3", y: "14", width: "7", height: "7" }),
38358
+ /* @__PURE__ */ (0, import_jsx_runtime135.jsx)("rect", { x: "14", y: "14", width: "7", height: "7" })
37845
38359
  ]
37846
38360
  }
37847
38361
  ) }),
37848
- /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("span", { className: "text-xs font-semibold text-[var(--foreground)]", children: "UI Components per Stage" })
38362
+ /* @__PURE__ */ (0, import_jsx_runtime135.jsx)("span", { className: "text-xs font-semibold text-[var(--foreground)]", children: "UI Components per Stage" })
37849
38363
  ] }) }),
37850
- /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("div", { className: "flex border-b border-[var(--border-color)] px-4", children: stages.map((stage) => /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(
38364
+ /* @__PURE__ */ (0, import_jsx_runtime135.jsx)("div", { className: "flex border-b border-[var(--border-color)] px-4", children: stages.map((stage) => /* @__PURE__ */ (0, import_jsx_runtime135.jsx)(
37851
38365
  "button",
37852
38366
  {
37853
38367
  onClick: () => setActiveStageId(stage.id),
37854
- disabled: submitted,
37855
38368
  className: cn(
37856
38369
  "px-3 py-2 text-[11px] font-medium border-b-2 -mb-px transition-colors",
37857
- activeStageId === stage.id ? "border-interactive text-interactive" : "border-transparent text-[var(--foreground)]/50 hover:text-[var(--foreground)]",
37858
- submitted && "opacity-60 cursor-default"
38370
+ activeStageId === stage.id ? "border-interactive text-interactive" : "border-transparent text-[var(--foreground)]/50 hover:text-[var(--foreground)]"
37859
38371
  ),
37860
38372
  children: stage.name
37861
38373
  },
37862
38374
  stage.id
37863
38375
  )) }),
37864
- /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)("div", { className: "px-4 py-3", children: [
37865
- activeStage && /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)("p", { className: "text-[10px] text-[var(--foreground)]/40 mb-3", children: [
38376
+ /* @__PURE__ */ (0, import_jsx_runtime135.jsxs)("div", { className: "px-4 py-3", children: [
38377
+ activeStage && /* @__PURE__ */ (0, import_jsx_runtime135.jsxs)("p", { className: "text-[10px] text-[var(--foreground)]/40 mb-3", children: [
37866
38378
  "Select components for ",
37867
- /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("strong", { children: activeStage.name }),
38379
+ /* @__PURE__ */ (0, import_jsx_runtime135.jsx)("strong", { children: activeStage.name }),
37868
38380
  " (",
37869
38381
  activeStage.agent_name,
37870
38382
  ")"
37871
38383
  ] }),
37872
- Object.entries(grouped).map(([category, comps]) => /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)("div", { className: "mb-3", children: [
37873
- /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("p", { className: "text-[10px] font-semibold text-[var(--foreground)]/40 uppercase tracking-wide mb-1.5", children: category }),
37874
- /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("div", { className: "grid grid-cols-2 gap-1.5", children: comps.map((comp) => {
38384
+ Object.entries(grouped).map(([category, comps]) => /* @__PURE__ */ (0, import_jsx_runtime135.jsxs)("div", { className: "mb-3", children: [
38385
+ /* @__PURE__ */ (0, import_jsx_runtime135.jsx)("p", { className: "text-[10px] font-semibold text-[var(--foreground)]/40 uppercase tracking-wide mb-1.5", children: category }),
38386
+ /* @__PURE__ */ (0, import_jsx_runtime135.jsx)("div", { className: "grid grid-cols-2 gap-1.5", children: comps.map((comp) => {
37875
38387
  const isSelected = selections[activeStageId]?.has(comp.name) || false;
37876
- return /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)(
38388
+ return /* @__PURE__ */ (0, import_jsx_runtime135.jsxs)(
37877
38389
  "div",
37878
38390
  {
37879
38391
  role: "button",
@@ -37888,18 +38400,18 @@ var MultiAgentUISelector = ({
37888
38400
  className: cn(
37889
38401
  "text-left p-2.5 rounded-lg border text-[11px] transition-all overflow-hidden cursor-pointer",
37890
38402
  isSelected ? "border-interactive bg-interactive/5" : "border-[var(--border-color)] hover:border-interactive/50",
37891
- submitted && "opacity-60 cursor-default pointer-events-none"
38403
+ (submitted || !isLatestMessage) && "opacity-60 cursor-default"
37892
38404
  ),
37893
38405
  children: [
37894
- /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)("div", { className: "flex items-center gap-1.5", children: [
37895
- /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(
38406
+ /* @__PURE__ */ (0, import_jsx_runtime135.jsxs)("div", { className: "flex items-center gap-1.5", children: [
38407
+ /* @__PURE__ */ (0, import_jsx_runtime135.jsx)(
37896
38408
  "div",
37897
38409
  {
37898
38410
  className: cn(
37899
38411
  "w-3.5 h-3.5 rounded border flex items-center justify-center shrink-0",
37900
38412
  isSelected ? "bg-interactive border-interactive" : "border-[var(--foreground)]/20"
37901
38413
  ),
37902
- children: isSelected && /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(
38414
+ children: isSelected && /* @__PURE__ */ (0, import_jsx_runtime135.jsx)(
37903
38415
  "svg",
37904
38416
  {
37905
38417
  width: "8",
@@ -37908,13 +38420,13 @@ var MultiAgentUISelector = ({
37908
38420
  fill: "none",
37909
38421
  stroke: "white",
37910
38422
  strokeWidth: "3",
37911
- children: /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("polyline", { points: "20 6 9 17 4 12" })
38423
+ children: /* @__PURE__ */ (0, import_jsx_runtime135.jsx)("polyline", { points: "20 6 9 17 4 12" })
37912
38424
  }
37913
38425
  )
37914
38426
  }
37915
38427
  ),
37916
- /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("span", { className: "font-medium text-[var(--foreground)]", children: comp.display_name }),
37917
- onPreview && /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(
38428
+ /* @__PURE__ */ (0, import_jsx_runtime135.jsx)("span", { className: "font-medium text-[var(--foreground)]", children: comp.display_name }),
38429
+ onPreview && /* @__PURE__ */ (0, import_jsx_runtime135.jsx)(
37918
38430
  "button",
37919
38431
  {
37920
38432
  type: "button",
@@ -37924,7 +38436,7 @@ var MultiAgentUISelector = ({
37924
38436
  },
37925
38437
  className: "ml-auto shrink-0 p-0.5 rounded hover:bg-[var(--foreground)]/10 transition-colors",
37926
38438
  title: `Preview ${comp.display_name}`,
37927
- children: /* @__PURE__ */ (0, import_jsx_runtime130.jsxs)(
38439
+ children: /* @__PURE__ */ (0, import_jsx_runtime135.jsxs)(
37928
38440
  "svg",
37929
38441
  {
37930
38442
  width: "14",
@@ -37937,16 +38449,16 @@ var MultiAgentUISelector = ({
37937
38449
  strokeLinejoin: "round",
37938
38450
  className: "text-[var(--foreground)]/40 hover:text-[var(--primary-color)]",
37939
38451
  children: [
37940
- /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("circle", { cx: "12", cy: "12", r: "10" }),
37941
- /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("line", { x1: "12", y1: "16", x2: "12", y2: "12" }),
37942
- /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("line", { x1: "12", y1: "8", x2: "12.01", y2: "8" })
38452
+ /* @__PURE__ */ (0, import_jsx_runtime135.jsx)("circle", { cx: "12", cy: "12", r: "10" }),
38453
+ /* @__PURE__ */ (0, import_jsx_runtime135.jsx)("line", { x1: "12", y1: "16", x2: "12", y2: "12" }),
38454
+ /* @__PURE__ */ (0, import_jsx_runtime135.jsx)("line", { x1: "12", y1: "8", x2: "12.01", y2: "8" })
37943
38455
  ]
37944
38456
  }
37945
38457
  )
37946
38458
  }
37947
38459
  )
37948
38460
  ] }),
37949
- /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("p", { className: "text-[10px] text-[var(--foreground)]/40 mt-0.5 ml-5 whitespace-normal", children: comp.description })
38461
+ /* @__PURE__ */ (0, import_jsx_runtime135.jsx)("p", { className: "text-[10px] text-[var(--foreground)]/40 mt-0.5 ml-5 whitespace-normal", children: comp.description })
37950
38462
  ]
37951
38463
  },
37952
38464
  comp.name
@@ -37954,7 +38466,7 @@ var MultiAgentUISelector = ({
37954
38466
  }) })
37955
38467
  ] }, category))
37956
38468
  ] }),
37957
- !submitted && /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("div", { className: "px-4 pb-3", children: /* @__PURE__ */ (0, import_jsx_runtime130.jsx)(
38469
+ !submitted && isLatestMessage && /* @__PURE__ */ (0, import_jsx_runtime135.jsx)("div", { className: "px-4 pb-3", children: /* @__PURE__ */ (0, import_jsx_runtime135.jsx)(
37958
38470
  "button",
37959
38471
  {
37960
38472
  onClick: handleContinue,
@@ -37962,20 +38474,20 @@ var MultiAgentUISelector = ({
37962
38474
  children: "Continue"
37963
38475
  }
37964
38476
  ) }),
37965
- submitted && /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("div", { className: "px-4 pb-3", children: /* @__PURE__ */ (0, import_jsx_runtime130.jsx)("div", { className: "text-[10px] text-emerald-600 font-medium text-center py-1.5 ", children: "Selections confirmed" }) })
38477
+ submitted && /* @__PURE__ */ (0, import_jsx_runtime135.jsx)("div", { className: "px-4 pb-3", children: /* @__PURE__ */ (0, import_jsx_runtime135.jsx)("div", { className: "text-[10px] text-emerald-600 font-medium text-center py-1.5 ", children: "Selections confirmed" }) })
37966
38478
  ]
37967
38479
  }
37968
38480
  );
37969
38481
  };
37970
38482
 
37971
38483
  // src/molecules/agent-builder/StageIndicator/StageIndicator.tsx
37972
- var import_jsx_runtime131 = require("react/jsx-runtime");
38484
+ var import_jsx_runtime136 = require("react/jsx-runtime");
37973
38485
  var StageIndicator = ({
37974
38486
  stage_name,
37975
38487
  agent_name,
37976
38488
  className
37977
38489
  }) => {
37978
- return /* @__PURE__ */ (0, import_jsx_runtime131.jsxs)(
38490
+ return /* @__PURE__ */ (0, import_jsx_runtime136.jsxs)(
37979
38491
  "div",
37980
38492
  {
37981
38493
  className: cn(
@@ -37983,12 +38495,12 @@ var StageIndicator = ({
37983
38495
  className
37984
38496
  ),
37985
38497
  children: [
37986
- /* @__PURE__ */ (0, import_jsx_runtime131.jsx)("div", { className: "flex-1 h-px bg-[var(--border-color)]" }),
37987
- /* @__PURE__ */ (0, import_jsx_runtime131.jsxs)("div", { className: "flex items-center gap-1.5 px-3 py-1 rounded-full bg-violet-500/10 border border-violet-500/20", children: [
37988
- /* @__PURE__ */ (0, import_jsx_runtime131.jsx)("div", { className: "w-1.5 h-1.5 rounded-full bg-violet-500 animate-pulse" }),
37989
- /* @__PURE__ */ (0, import_jsx_runtime131.jsx)("span", { className: "text-[10px] font-medium text-violet-600", children: stage_name || agent_name })
38498
+ /* @__PURE__ */ (0, import_jsx_runtime136.jsx)("div", { className: "flex-1 h-px bg-[var(--border-color)]" }),
38499
+ /* @__PURE__ */ (0, import_jsx_runtime136.jsxs)("div", { className: "flex items-center gap-1.5 px-3 py-1 rounded-full bg-violet-500/10 border border-violet-500/20", children: [
38500
+ /* @__PURE__ */ (0, import_jsx_runtime136.jsx)("div", { className: "w-1.5 h-1.5 rounded-full bg-violet-500 animate-pulse" }),
38501
+ /* @__PURE__ */ (0, import_jsx_runtime136.jsx)("span", { className: "text-[10px] font-medium text-violet-600", children: stage_name || agent_name })
37990
38502
  ] }),
37991
- /* @__PURE__ */ (0, import_jsx_runtime131.jsx)("div", { className: "flex-1 h-px bg-[var(--border-color)]" })
38503
+ /* @__PURE__ */ (0, import_jsx_runtime136.jsx)("div", { className: "flex-1 h-px bg-[var(--border-color)]" })
37992
38504
  ]
37993
38505
  }
37994
38506
  );
@@ -38286,7 +38798,7 @@ __export(ui_exports, {
38286
38798
  // src/components/ui/button-group.tsx
38287
38799
  var import_react_slot4 = require("@radix-ui/react-slot");
38288
38800
  var import_class_variance_authority8 = require("class-variance-authority");
38289
- var import_jsx_runtime132 = require("react/jsx-runtime");
38801
+ var import_jsx_runtime137 = require("react/jsx-runtime");
38290
38802
  var buttonGroupVariants = (0, import_class_variance_authority8.cva)(
38291
38803
  "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",
38292
38804
  {
@@ -38306,7 +38818,7 @@ function ButtonGroup({
38306
38818
  orientation,
38307
38819
  ...props
38308
38820
  }) {
38309
- return /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(
38821
+ return /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(
38310
38822
  "div",
38311
38823
  {
38312
38824
  role: "group",
@@ -38323,7 +38835,7 @@ function ButtonGroupText({
38323
38835
  ...props
38324
38836
  }) {
38325
38837
  const Comp = asChild ? import_react_slot4.Slot : "div";
38326
- return /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(
38838
+ return /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(
38327
38839
  Comp,
38328
38840
  {
38329
38841
  className: cn(
@@ -38339,7 +38851,7 @@ function ButtonGroupSeparator({
38339
38851
  orientation = "vertical",
38340
38852
  ...props
38341
38853
  }) {
38342
- return /* @__PURE__ */ (0, import_jsx_runtime132.jsx)(
38854
+ return /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(
38343
38855
  Separator2,
38344
38856
  {
38345
38857
  "data-slot": "button-group-separator",
@@ -38355,9 +38867,9 @@ function ButtonGroupSeparator({
38355
38867
 
38356
38868
  // src/components/ui/empty.tsx
38357
38869
  var import_class_variance_authority9 = require("class-variance-authority");
38358
- var import_jsx_runtime133 = require("react/jsx-runtime");
38870
+ var import_jsx_runtime138 = require("react/jsx-runtime");
38359
38871
  function Empty({ className, ...props }) {
38360
- return /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(
38872
+ return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
38361
38873
  "div",
38362
38874
  {
38363
38875
  "data-slot": "empty",
@@ -38370,7 +38882,7 @@ function Empty({ className, ...props }) {
38370
38882
  );
38371
38883
  }
38372
38884
  function EmptyHeader({ className, ...props }) {
38373
- return /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(
38885
+ return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
38374
38886
  "div",
38375
38887
  {
38376
38888
  "data-slot": "empty-header",
@@ -38401,7 +38913,7 @@ function EmptyMedia({
38401
38913
  variant = "default",
38402
38914
  ...props
38403
38915
  }) {
38404
- return /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(
38916
+ return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
38405
38917
  "div",
38406
38918
  {
38407
38919
  "data-slot": "empty-icon",
@@ -38412,7 +38924,7 @@ function EmptyMedia({
38412
38924
  );
38413
38925
  }
38414
38926
  function EmptyTitle({ className, ...props }) {
38415
- return /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(
38927
+ return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
38416
38928
  "div",
38417
38929
  {
38418
38930
  "data-slot": "empty-title",
@@ -38422,7 +38934,7 @@ function EmptyTitle({ className, ...props }) {
38422
38934
  );
38423
38935
  }
38424
38936
  function EmptyDescription({ className, ...props }) {
38425
- return /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(
38937
+ return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
38426
38938
  "div",
38427
38939
  {
38428
38940
  "data-slot": "empty-description",
@@ -38435,7 +38947,7 @@ function EmptyDescription({ className, ...props }) {
38435
38947
  );
38436
38948
  }
38437
38949
  function EmptyContent({ className, ...props }) {
38438
- return /* @__PURE__ */ (0, import_jsx_runtime133.jsx)(
38950
+ return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
38439
38951
  "div",
38440
38952
  {
38441
38953
  "data-slot": "empty-content",
@@ -38449,11 +38961,11 @@ function EmptyContent({ className, ...props }) {
38449
38961
  }
38450
38962
 
38451
38963
  // src/components/ui/field.tsx
38452
- var import_react70 = require("react");
38964
+ var import_react74 = require("react");
38453
38965
  var import_class_variance_authority10 = require("class-variance-authority");
38454
- var import_jsx_runtime134 = require("react/jsx-runtime");
38966
+ var import_jsx_runtime139 = require("react/jsx-runtime");
38455
38967
  function FieldSet({ className, ...props }) {
38456
- return /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(
38968
+ return /* @__PURE__ */ (0, import_jsx_runtime139.jsx)(
38457
38969
  "fieldset",
38458
38970
  {
38459
38971
  "data-slot": "field-set",
@@ -38471,7 +38983,7 @@ function FieldLegend({
38471
38983
  variant = "legend",
38472
38984
  ...props
38473
38985
  }) {
38474
- return /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(
38986
+ return /* @__PURE__ */ (0, import_jsx_runtime139.jsx)(
38475
38987
  "legend",
38476
38988
  {
38477
38989
  "data-slot": "field-legend",
@@ -38487,7 +38999,7 @@ function FieldLegend({
38487
38999
  );
38488
39000
  }
38489
39001
  function FieldGroup({ className, ...props }) {
38490
- return /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(
39002
+ return /* @__PURE__ */ (0, import_jsx_runtime139.jsx)(
38491
39003
  "div",
38492
39004
  {
38493
39005
  "data-slot": "field-group",
@@ -38527,7 +39039,7 @@ function Field({
38527
39039
  orientation = "vertical",
38528
39040
  ...props
38529
39041
  }) {
38530
- return /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(
39042
+ return /* @__PURE__ */ (0, import_jsx_runtime139.jsx)(
38531
39043
  "div",
38532
39044
  {
38533
39045
  role: "group",
@@ -38539,7 +39051,7 @@ function Field({
38539
39051
  );
38540
39052
  }
38541
39053
  function FieldContent({ className, ...props }) {
38542
- return /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(
39054
+ return /* @__PURE__ */ (0, import_jsx_runtime139.jsx)(
38543
39055
  "div",
38544
39056
  {
38545
39057
  "data-slot": "field-content",
@@ -38555,7 +39067,7 @@ function FieldLabel({
38555
39067
  className,
38556
39068
  ...props
38557
39069
  }) {
38558
- return /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(
39070
+ return /* @__PURE__ */ (0, import_jsx_runtime139.jsx)(
38559
39071
  Label,
38560
39072
  {
38561
39073
  "data-slot": "field-label",
@@ -38570,7 +39082,7 @@ function FieldLabel({
38570
39082
  );
38571
39083
  }
38572
39084
  function FieldTitle({ className, ...props }) {
38573
- return /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(
39085
+ return /* @__PURE__ */ (0, import_jsx_runtime139.jsx)(
38574
39086
  "div",
38575
39087
  {
38576
39088
  "data-slot": "field-label",
@@ -38583,7 +39095,7 @@ function FieldTitle({ className, ...props }) {
38583
39095
  );
38584
39096
  }
38585
39097
  function FieldDescription({ className, ...props }) {
38586
- return /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(
39098
+ return /* @__PURE__ */ (0, import_jsx_runtime139.jsx)(
38587
39099
  "p",
38588
39100
  {
38589
39101
  "data-slot": "field-description",
@@ -38602,7 +39114,7 @@ function FieldSeparator({
38602
39114
  className,
38603
39115
  ...props
38604
39116
  }) {
38605
- return /* @__PURE__ */ (0, import_jsx_runtime134.jsxs)(
39117
+ return /* @__PURE__ */ (0, import_jsx_runtime139.jsxs)(
38606
39118
  "div",
38607
39119
  {
38608
39120
  "data-slot": "field-separator",
@@ -38613,8 +39125,8 @@ function FieldSeparator({
38613
39125
  ),
38614
39126
  ...props,
38615
39127
  children: [
38616
- /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(Separator2, { className: "absolute inset-0 top-1/2" }),
38617
- children && /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(
39128
+ /* @__PURE__ */ (0, import_jsx_runtime139.jsx)(Separator2, { className: "absolute inset-0 top-1/2" }),
39129
+ children && /* @__PURE__ */ (0, import_jsx_runtime139.jsx)(
38618
39130
  "span",
38619
39131
  {
38620
39132
  className: "bg-background text-muted-foreground relative mx-auto block w-fit px-2",
@@ -38632,7 +39144,7 @@ function FieldError({
38632
39144
  errors,
38633
39145
  ...props
38634
39146
  }) {
38635
- const content = (0, import_react70.useMemo)(() => {
39147
+ const content = (0, import_react74.useMemo)(() => {
38636
39148
  if (children) {
38637
39149
  return children;
38638
39150
  }
@@ -38642,14 +39154,14 @@ function FieldError({
38642
39154
  if (errors?.length === 1 && errors[0]?.message) {
38643
39155
  return errors[0].message;
38644
39156
  }
38645
- return /* @__PURE__ */ (0, import_jsx_runtime134.jsx)("ul", { className: "ml-4 flex list-disc flex-col gap-1", children: errors.map(
38646
- (error, index) => error?.message && /* @__PURE__ */ (0, import_jsx_runtime134.jsx)("li", { children: error.message }, index)
39157
+ return /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("ul", { className: "ml-4 flex list-disc flex-col gap-1", children: errors.map(
39158
+ (error, index) => error?.message && /* @__PURE__ */ (0, import_jsx_runtime139.jsx)("li", { children: error.message }, index)
38647
39159
  ) });
38648
39160
  }, [children, errors]);
38649
39161
  if (!content) {
38650
39162
  return null;
38651
39163
  }
38652
- return /* @__PURE__ */ (0, import_jsx_runtime134.jsx)(
39164
+ return /* @__PURE__ */ (0, import_jsx_runtime139.jsx)(
38653
39165
  "div",
38654
39166
  {
38655
39167
  role: "alert",
@@ -38663,9 +39175,9 @@ function FieldError({
38663
39175
 
38664
39176
  // src/components/ui/input-group.tsx
38665
39177
  var import_class_variance_authority11 = require("class-variance-authority");
38666
- var import_jsx_runtime135 = require("react/jsx-runtime");
39178
+ var import_jsx_runtime140 = require("react/jsx-runtime");
38667
39179
  function InputGroup({ className, ...props }) {
38668
- return /* @__PURE__ */ (0, import_jsx_runtime135.jsx)(
39180
+ return /* @__PURE__ */ (0, import_jsx_runtime140.jsx)(
38669
39181
  "div",
38670
39182
  {
38671
39183
  "data-slot": "input-group",
@@ -38709,7 +39221,7 @@ function InputGroupAddon({
38709
39221
  align = "inline-start",
38710
39222
  ...props
38711
39223
  }) {
38712
- return /* @__PURE__ */ (0, import_jsx_runtime135.jsx)(
39224
+ return /* @__PURE__ */ (0, import_jsx_runtime140.jsx)(
38713
39225
  "div",
38714
39226
  {
38715
39227
  role: "group",
@@ -38749,7 +39261,7 @@ function InputGroupButton({
38749
39261
  size = "xs",
38750
39262
  ...props
38751
39263
  }) {
38752
- return /* @__PURE__ */ (0, import_jsx_runtime135.jsx)(
39264
+ return /* @__PURE__ */ (0, import_jsx_runtime140.jsx)(
38753
39265
  Button,
38754
39266
  {
38755
39267
  type,
@@ -38761,7 +39273,7 @@ function InputGroupButton({
38761
39273
  );
38762
39274
  }
38763
39275
  function InputGroupText({ className, ...props }) {
38764
- return /* @__PURE__ */ (0, import_jsx_runtime135.jsx)(
39276
+ return /* @__PURE__ */ (0, import_jsx_runtime140.jsx)(
38765
39277
  "span",
38766
39278
  {
38767
39279
  className: cn(
@@ -38776,7 +39288,7 @@ function InputGroupInput({
38776
39288
  className,
38777
39289
  ...props
38778
39290
  }) {
38779
- return /* @__PURE__ */ (0, import_jsx_runtime135.jsx)(
39291
+ return /* @__PURE__ */ (0, import_jsx_runtime140.jsx)(
38780
39292
  Input,
38781
39293
  {
38782
39294
  "data-slot": "input-group-control",
@@ -38792,7 +39304,7 @@ function InputGroupTextarea({
38792
39304
  className,
38793
39305
  ...props
38794
39306
  }) {
38795
- return /* @__PURE__ */ (0, import_jsx_runtime135.jsx)(
39307
+ return /* @__PURE__ */ (0, import_jsx_runtime140.jsx)(
38796
39308
  Textarea,
38797
39309
  {
38798
39310
  "data-slot": "input-group-control",
@@ -38808,9 +39320,9 @@ function InputGroupTextarea({
38808
39320
  // src/components/ui/item.tsx
38809
39321
  var import_react_slot5 = require("@radix-ui/react-slot");
38810
39322
  var import_class_variance_authority12 = require("class-variance-authority");
38811
- var import_jsx_runtime136 = require("react/jsx-runtime");
39323
+ var import_jsx_runtime141 = require("react/jsx-runtime");
38812
39324
  function ItemGroup({ className, ...props }) {
38813
- return /* @__PURE__ */ (0, import_jsx_runtime136.jsx)(
39325
+ return /* @__PURE__ */ (0, import_jsx_runtime141.jsx)(
38814
39326
  "div",
38815
39327
  {
38816
39328
  role: "list",
@@ -38824,7 +39336,7 @@ function ItemSeparator({
38824
39336
  className,
38825
39337
  ...props
38826
39338
  }) {
38827
- return /* @__PURE__ */ (0, import_jsx_runtime136.jsx)(
39339
+ return /* @__PURE__ */ (0, import_jsx_runtime141.jsx)(
38828
39340
  Separator2,
38829
39341
  {
38830
39342
  "data-slot": "item-separator",
@@ -38862,7 +39374,7 @@ function Item8({
38862
39374
  ...props
38863
39375
  }) {
38864
39376
  const Comp = asChild ? import_react_slot5.Slot : "div";
38865
- return /* @__PURE__ */ (0, import_jsx_runtime136.jsx)(
39377
+ return /* @__PURE__ */ (0, import_jsx_runtime141.jsx)(
38866
39378
  Comp,
38867
39379
  {
38868
39380
  "data-slot": "item",
@@ -38893,7 +39405,7 @@ function ItemMedia({
38893
39405
  variant = "default",
38894
39406
  ...props
38895
39407
  }) {
38896
- return /* @__PURE__ */ (0, import_jsx_runtime136.jsx)(
39408
+ return /* @__PURE__ */ (0, import_jsx_runtime141.jsx)(
38897
39409
  "div",
38898
39410
  {
38899
39411
  "data-slot": "item-media",
@@ -38904,7 +39416,7 @@ function ItemMedia({
38904
39416
  );
38905
39417
  }
38906
39418
  function ItemContent({ className, ...props }) {
38907
- return /* @__PURE__ */ (0, import_jsx_runtime136.jsx)(
39419
+ return /* @__PURE__ */ (0, import_jsx_runtime141.jsx)(
38908
39420
  "div",
38909
39421
  {
38910
39422
  "data-slot": "item-content",
@@ -38917,7 +39429,7 @@ function ItemContent({ className, ...props }) {
38917
39429
  );
38918
39430
  }
38919
39431
  function ItemTitle({ className, ...props }) {
38920
- return /* @__PURE__ */ (0, import_jsx_runtime136.jsx)(
39432
+ return /* @__PURE__ */ (0, import_jsx_runtime141.jsx)(
38921
39433
  "div",
38922
39434
  {
38923
39435
  "data-slot": "item-title",
@@ -38930,7 +39442,7 @@ function ItemTitle({ className, ...props }) {
38930
39442
  );
38931
39443
  }
38932
39444
  function ItemDescription({ className, ...props }) {
38933
- return /* @__PURE__ */ (0, import_jsx_runtime136.jsx)(
39445
+ return /* @__PURE__ */ (0, import_jsx_runtime141.jsx)(
38934
39446
  "p",
38935
39447
  {
38936
39448
  "data-slot": "item-description",
@@ -38944,7 +39456,7 @@ function ItemDescription({ className, ...props }) {
38944
39456
  );
38945
39457
  }
38946
39458
  function ItemActions({ className, ...props }) {
38947
- return /* @__PURE__ */ (0, import_jsx_runtime136.jsx)(
39459
+ return /* @__PURE__ */ (0, import_jsx_runtime141.jsx)(
38948
39460
  "div",
38949
39461
  {
38950
39462
  "data-slot": "item-actions",
@@ -38954,7 +39466,7 @@ function ItemActions({ className, ...props }) {
38954
39466
  );
38955
39467
  }
38956
39468
  function ItemHeader({ className, ...props }) {
38957
- return /* @__PURE__ */ (0, import_jsx_runtime136.jsx)(
39469
+ return /* @__PURE__ */ (0, import_jsx_runtime141.jsx)(
38958
39470
  "div",
38959
39471
  {
38960
39472
  "data-slot": "item-header",
@@ -38967,7 +39479,7 @@ function ItemHeader({ className, ...props }) {
38967
39479
  );
38968
39480
  }
38969
39481
  function ItemFooter({ className, ...props }) {
38970
- return /* @__PURE__ */ (0, import_jsx_runtime136.jsx)(
39482
+ return /* @__PURE__ */ (0, import_jsx_runtime141.jsx)(
38971
39483
  "div",
38972
39484
  {
38973
39485
  "data-slot": "item-footer",
@@ -38981,9 +39493,9 @@ function ItemFooter({ className, ...props }) {
38981
39493
  }
38982
39494
 
38983
39495
  // src/components/ui/kbd.tsx
38984
- var import_jsx_runtime137 = require("react/jsx-runtime");
39496
+ var import_jsx_runtime142 = require("react/jsx-runtime");
38985
39497
  function Kbd({ className, ...props }) {
38986
- return /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(
39498
+ return /* @__PURE__ */ (0, import_jsx_runtime142.jsx)(
38987
39499
  "kbd",
38988
39500
  {
38989
39501
  "data-slot": "kbd",
@@ -38998,7 +39510,7 @@ function Kbd({ className, ...props }) {
38998
39510
  );
38999
39511
  }
39000
39512
  function KbdGroup({ className, ...props }) {
39001
- return /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(
39513
+ return /* @__PURE__ */ (0, import_jsx_runtime142.jsx)(
39002
39514
  "kbd",
39003
39515
  {
39004
39516
  "data-slot": "kbd-group",
@@ -39031,7 +39543,7 @@ function useIsMobile() {
39031
39543
  }
39032
39544
 
39033
39545
  // src/components/ui/sidebar.tsx
39034
- var import_jsx_runtime138 = require("react/jsx-runtime");
39546
+ var import_jsx_runtime143 = require("react/jsx-runtime");
39035
39547
  var SIDEBAR_COOKIE_NAME = "sidebar_state";
39036
39548
  var SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7;
39037
39549
  var SIDEBAR_WIDTH = "16rem";
@@ -39098,7 +39610,7 @@ var SidebarProvider = React100.forwardRef(
39098
39610
  }),
39099
39611
  [state, open, setOpen, isMobile, openMobile, setOpenMobile, toggleSidebar]
39100
39612
  );
39101
- return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(SidebarContext.Provider, { value: contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(TooltipProvider, { delayDuration: 0, children: /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
39613
+ return /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(SidebarContext.Provider, { value: contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(TooltipProvider, { delayDuration: 0, children: /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
39102
39614
  "div",
39103
39615
  {
39104
39616
  style: {
@@ -39129,7 +39641,7 @@ var Sidebar = React100.forwardRef(
39129
39641
  }, ref) => {
39130
39642
  const { isMobile, state, openMobile, setOpenMobile } = useSidebar();
39131
39643
  if (collapsible === "none") {
39132
- return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
39644
+ return /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
39133
39645
  "div",
39134
39646
  {
39135
39647
  className: cn(
@@ -39143,7 +39655,7 @@ var Sidebar = React100.forwardRef(
39143
39655
  );
39144
39656
  }
39145
39657
  if (isMobile) {
39146
- return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(Sheet2, { open: openMobile, onOpenChange: setOpenMobile, ...props, children: /* @__PURE__ */ (0, import_jsx_runtime138.jsxs)(
39658
+ return /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(Sheet2, { open: openMobile, onOpenChange: setOpenMobile, ...props, children: /* @__PURE__ */ (0, import_jsx_runtime143.jsxs)(
39147
39659
  SheetContent,
39148
39660
  {
39149
39661
  "data-sidebar": "sidebar",
@@ -39154,16 +39666,16 @@ var Sidebar = React100.forwardRef(
39154
39666
  },
39155
39667
  side,
39156
39668
  children: [
39157
- /* @__PURE__ */ (0, import_jsx_runtime138.jsxs)(SheetHeader, { className: "sr-only", children: [
39158
- /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(SheetTitle, { children: "Sidebar" }),
39159
- /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(SheetDescription, { children: "Displays the mobile sidebar." })
39669
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsxs)(SheetHeader, { className: "sr-only", children: [
39670
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(SheetTitle, { children: "Sidebar" }),
39671
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(SheetDescription, { children: "Displays the mobile sidebar." })
39160
39672
  ] }),
39161
- /* @__PURE__ */ (0, import_jsx_runtime138.jsx)("div", { className: "flex h-full w-full flex-col", children })
39673
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("div", { className: "flex h-full w-full flex-col", children })
39162
39674
  ]
39163
39675
  }
39164
39676
  ) });
39165
39677
  }
39166
- return /* @__PURE__ */ (0, import_jsx_runtime138.jsxs)(
39678
+ return /* @__PURE__ */ (0, import_jsx_runtime143.jsxs)(
39167
39679
  "div",
39168
39680
  {
39169
39681
  ref,
@@ -39173,7 +39685,7 @@ var Sidebar = React100.forwardRef(
39173
39685
  "data-variant": variant,
39174
39686
  "data-side": side,
39175
39687
  children: [
39176
- /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
39688
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
39177
39689
  "div",
39178
39690
  {
39179
39691
  className: cn(
@@ -39184,7 +39696,7 @@ var Sidebar = React100.forwardRef(
39184
39696
  )
39185
39697
  }
39186
39698
  ),
39187
- /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
39699
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
39188
39700
  "div",
39189
39701
  {
39190
39702
  className: cn(
@@ -39195,7 +39707,7 @@ var Sidebar = React100.forwardRef(
39195
39707
  className
39196
39708
  ),
39197
39709
  ...props,
39198
- children: /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
39710
+ children: /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
39199
39711
  "div",
39200
39712
  {
39201
39713
  "data-sidebar": "sidebar",
@@ -39213,7 +39725,7 @@ var Sidebar = React100.forwardRef(
39213
39725
  Sidebar.displayName = "Sidebar";
39214
39726
  var SidebarTrigger = React100.forwardRef(({ className, onClick, ...props }, ref) => {
39215
39727
  const { toggleSidebar } = useSidebar();
39216
- return /* @__PURE__ */ (0, import_jsx_runtime138.jsxs)(
39728
+ return /* @__PURE__ */ (0, import_jsx_runtime143.jsxs)(
39217
39729
  Button,
39218
39730
  {
39219
39731
  ref,
@@ -39227,8 +39739,8 @@ var SidebarTrigger = React100.forwardRef(({ className, onClick, ...props }, ref)
39227
39739
  },
39228
39740
  ...props,
39229
39741
  children: [
39230
- /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(PanelLeft, {}),
39231
- /* @__PURE__ */ (0, import_jsx_runtime138.jsx)("span", { className: "sr-only", children: "Toggle Sidebar" })
39742
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(PanelLeft, {}),
39743
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("span", { className: "sr-only", children: "Toggle Sidebar" })
39232
39744
  ]
39233
39745
  }
39234
39746
  );
@@ -39236,7 +39748,7 @@ var SidebarTrigger = React100.forwardRef(({ className, onClick, ...props }, ref)
39236
39748
  SidebarTrigger.displayName = "SidebarTrigger";
39237
39749
  var SidebarRail = React100.forwardRef(({ className, ...props }, ref) => {
39238
39750
  const { toggleSidebar } = useSidebar();
39239
- return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
39751
+ return /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
39240
39752
  "button",
39241
39753
  {
39242
39754
  ref,
@@ -39260,7 +39772,7 @@ var SidebarRail = React100.forwardRef(({ className, ...props }, ref) => {
39260
39772
  });
39261
39773
  SidebarRail.displayName = "SidebarRail";
39262
39774
  var SidebarInset = React100.forwardRef(({ className, ...props }, ref) => {
39263
- return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
39775
+ return /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
39264
39776
  "main",
39265
39777
  {
39266
39778
  ref,
@@ -39275,7 +39787,7 @@ var SidebarInset = React100.forwardRef(({ className, ...props }, ref) => {
39275
39787
  });
39276
39788
  SidebarInset.displayName = "SidebarInset";
39277
39789
  var SidebarInput = React100.forwardRef(({ className, ...props }, ref) => {
39278
- return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
39790
+ return /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
39279
39791
  Input,
39280
39792
  {
39281
39793
  ref,
@@ -39290,7 +39802,7 @@ var SidebarInput = React100.forwardRef(({ className, ...props }, ref) => {
39290
39802
  });
39291
39803
  SidebarInput.displayName = "SidebarInput";
39292
39804
  var SidebarHeader = React100.forwardRef(({ className, ...props }, ref) => {
39293
- return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
39805
+ return /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
39294
39806
  "div",
39295
39807
  {
39296
39808
  ref,
@@ -39302,7 +39814,7 @@ var SidebarHeader = React100.forwardRef(({ className, ...props }, ref) => {
39302
39814
  });
39303
39815
  SidebarHeader.displayName = "SidebarHeader";
39304
39816
  var SidebarFooter = React100.forwardRef(({ className, ...props }, ref) => {
39305
- return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
39817
+ return /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
39306
39818
  "div",
39307
39819
  {
39308
39820
  ref,
@@ -39314,7 +39826,7 @@ var SidebarFooter = React100.forwardRef(({ className, ...props }, ref) => {
39314
39826
  });
39315
39827
  SidebarFooter.displayName = "SidebarFooter";
39316
39828
  var SidebarSeparator = React100.forwardRef(({ className, ...props }, ref) => {
39317
- return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
39829
+ return /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
39318
39830
  Separator2,
39319
39831
  {
39320
39832
  ref,
@@ -39326,7 +39838,7 @@ var SidebarSeparator = React100.forwardRef(({ className, ...props }, ref) => {
39326
39838
  });
39327
39839
  SidebarSeparator.displayName = "SidebarSeparator";
39328
39840
  var SidebarContent = React100.forwardRef(({ className, ...props }, ref) => {
39329
- return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
39841
+ return /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
39330
39842
  "div",
39331
39843
  {
39332
39844
  ref,
@@ -39341,7 +39853,7 @@ var SidebarContent = React100.forwardRef(({ className, ...props }, ref) => {
39341
39853
  });
39342
39854
  SidebarContent.displayName = "SidebarContent";
39343
39855
  var SidebarGroup = React100.forwardRef(({ className, ...props }, ref) => {
39344
- return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
39856
+ return /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
39345
39857
  "div",
39346
39858
  {
39347
39859
  ref,
@@ -39354,7 +39866,7 @@ var SidebarGroup = React100.forwardRef(({ className, ...props }, ref) => {
39354
39866
  SidebarGroup.displayName = "SidebarGroup";
39355
39867
  var SidebarGroupLabel = React100.forwardRef(({ className, asChild = false, ...props }, ref) => {
39356
39868
  const Comp = asChild ? import_react_slot6.Slot : "div";
39357
- return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
39869
+ return /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
39358
39870
  Comp,
39359
39871
  {
39360
39872
  ref,
@@ -39371,7 +39883,7 @@ var SidebarGroupLabel = React100.forwardRef(({ className, asChild = false, ...pr
39371
39883
  SidebarGroupLabel.displayName = "SidebarGroupLabel";
39372
39884
  var SidebarGroupAction = React100.forwardRef(({ className, asChild = false, ...props }, ref) => {
39373
39885
  const Comp = asChild ? import_react_slot6.Slot : "button";
39374
- return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
39886
+ return /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
39375
39887
  Comp,
39376
39888
  {
39377
39889
  ref,
@@ -39388,7 +39900,7 @@ var SidebarGroupAction = React100.forwardRef(({ className, asChild = false, ...p
39388
39900
  );
39389
39901
  });
39390
39902
  SidebarGroupAction.displayName = "SidebarGroupAction";
39391
- var SidebarGroupContent = React100.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
39903
+ var SidebarGroupContent = React100.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
39392
39904
  "div",
39393
39905
  {
39394
39906
  ref,
@@ -39398,7 +39910,7 @@ var SidebarGroupContent = React100.forwardRef(({ className, ...props }, ref) =>
39398
39910
  }
39399
39911
  ));
39400
39912
  SidebarGroupContent.displayName = "SidebarGroupContent";
39401
- var SidebarMenu = React100.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
39913
+ var SidebarMenu = React100.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
39402
39914
  "ul",
39403
39915
  {
39404
39916
  ref,
@@ -39408,7 +39920,7 @@ var SidebarMenu = React100.forwardRef(({ className, ...props }, ref) => /* @__PU
39408
39920
  }
39409
39921
  ));
39410
39922
  SidebarMenu.displayName = "SidebarMenu";
39411
- var SidebarMenuItem = React100.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
39923
+ var SidebarMenuItem = React100.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
39412
39924
  "li",
39413
39925
  {
39414
39926
  ref,
@@ -39450,7 +39962,7 @@ var SidebarMenuButton = React100.forwardRef(
39450
39962
  }, ref) => {
39451
39963
  const Comp = asChild ? import_react_slot6.Slot : "button";
39452
39964
  const { isMobile, state } = useSidebar();
39453
- const button = /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
39965
+ const button = /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
39454
39966
  Comp,
39455
39967
  {
39456
39968
  ref,
@@ -39469,9 +39981,9 @@ var SidebarMenuButton = React100.forwardRef(
39469
39981
  children: tooltip
39470
39982
  };
39471
39983
  }
39472
- return /* @__PURE__ */ (0, import_jsx_runtime138.jsxs)(Tooltip, { children: [
39473
- /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(TooltipTrigger, { asChild: true, children: button }),
39474
- /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
39984
+ return /* @__PURE__ */ (0, import_jsx_runtime143.jsxs)(Tooltip, { children: [
39985
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(TooltipTrigger, { asChild: true, children: button }),
39986
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
39475
39987
  TooltipContent,
39476
39988
  {
39477
39989
  side: "right",
@@ -39486,7 +39998,7 @@ var SidebarMenuButton = React100.forwardRef(
39486
39998
  SidebarMenuButton.displayName = "SidebarMenuButton";
39487
39999
  var SidebarMenuAction = React100.forwardRef(({ className, asChild = false, showOnHover = false, ...props }, ref) => {
39488
40000
  const Comp = asChild ? import_react_slot6.Slot : "button";
39489
- return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
40001
+ return /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
39490
40002
  Comp,
39491
40003
  {
39492
40004
  ref,
@@ -39507,7 +40019,7 @@ var SidebarMenuAction = React100.forwardRef(({ className, asChild = false, showO
39507
40019
  );
39508
40020
  });
39509
40021
  SidebarMenuAction.displayName = "SidebarMenuAction";
39510
- var SidebarMenuBadge = React100.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
40022
+ var SidebarMenuBadge = React100.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
39511
40023
  "div",
39512
40024
  {
39513
40025
  ref,
@@ -39529,7 +40041,7 @@ var SidebarMenuSkeleton = React100.forwardRef(({ className, showIcon = false, ..
39529
40041
  const width = React100.useMemo(() => {
39530
40042
  return `${Math.floor(Math.random() * 40) + 50}%`;
39531
40043
  }, []);
39532
- return /* @__PURE__ */ (0, import_jsx_runtime138.jsxs)(
40044
+ return /* @__PURE__ */ (0, import_jsx_runtime143.jsxs)(
39533
40045
  "div",
39534
40046
  {
39535
40047
  ref,
@@ -39537,14 +40049,14 @@ var SidebarMenuSkeleton = React100.forwardRef(({ className, showIcon = false, ..
39537
40049
  className: cn("flex h-8 items-center gap-2 rounded-md px-2", className),
39538
40050
  ...props,
39539
40051
  children: [
39540
- showIcon && /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
40052
+ showIcon && /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
39541
40053
  Skeleton,
39542
40054
  {
39543
40055
  className: "size-4 rounded-md",
39544
40056
  "data-sidebar": "menu-skeleton-icon"
39545
40057
  }
39546
40058
  ),
39547
- /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
40059
+ /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
39548
40060
  Skeleton,
39549
40061
  {
39550
40062
  className: "h-4 max-w-[--skeleton-width] flex-1",
@@ -39559,7 +40071,7 @@ var SidebarMenuSkeleton = React100.forwardRef(({ className, showIcon = false, ..
39559
40071
  );
39560
40072
  });
39561
40073
  SidebarMenuSkeleton.displayName = "SidebarMenuSkeleton";
39562
- var SidebarMenuSub = React100.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
40074
+ var SidebarMenuSub = React100.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
39563
40075
  "ul",
39564
40076
  {
39565
40077
  ref,
@@ -39573,11 +40085,11 @@ var SidebarMenuSub = React100.forwardRef(({ className, ...props }, ref) => /* @_
39573
40085
  }
39574
40086
  ));
39575
40087
  SidebarMenuSub.displayName = "SidebarMenuSub";
39576
- var SidebarMenuSubItem = React100.forwardRef(({ ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime138.jsx)("li", { ref, ...props }));
40088
+ var SidebarMenuSubItem = React100.forwardRef(({ ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime143.jsx)("li", { ref, ...props }));
39577
40089
  SidebarMenuSubItem.displayName = "SidebarMenuSubItem";
39578
40090
  var SidebarMenuSubButton = React100.forwardRef(({ asChild = false, size = "md", isActive, className, ...props }, ref) => {
39579
40091
  const Comp = asChild ? import_react_slot6.Slot : "a";
39580
- return /* @__PURE__ */ (0, import_jsx_runtime138.jsx)(
40092
+ return /* @__PURE__ */ (0, import_jsx_runtime143.jsx)(
39581
40093
  Comp,
39582
40094
  {
39583
40095
  ref,
@@ -39601,20 +40113,20 @@ SidebarMenuSubButton.displayName = "SidebarMenuSubButton";
39601
40113
  // src/components/ui/sonner.tsx
39602
40114
  var import_next_themes = require("next-themes");
39603
40115
  var import_sonner = require("sonner");
39604
- var import_jsx_runtime139 = require("react/jsx-runtime");
40116
+ var import_jsx_runtime144 = require("react/jsx-runtime");
39605
40117
  var Toaster = ({ ...props }) => {
39606
40118
  const { theme = "system" } = (0, import_next_themes.useTheme)();
39607
- return /* @__PURE__ */ (0, import_jsx_runtime139.jsx)(
40119
+ return /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(
39608
40120
  import_sonner.Toaster,
39609
40121
  {
39610
40122
  theme,
39611
40123
  className: "toaster group",
39612
40124
  icons: {
39613
- success: /* @__PURE__ */ (0, import_jsx_runtime139.jsx)(CircleCheck, { className: "h-4 w-4" }),
39614
- info: /* @__PURE__ */ (0, import_jsx_runtime139.jsx)(Info, { className: "h-4 w-4" }),
39615
- warning: /* @__PURE__ */ (0, import_jsx_runtime139.jsx)(TriangleAlert, { className: "h-4 w-4" }),
39616
- error: /* @__PURE__ */ (0, import_jsx_runtime139.jsx)(OctagonX, { className: "h-4 w-4" }),
39617
- loading: /* @__PURE__ */ (0, import_jsx_runtime139.jsx)(LoaderCircle, { className: "h-4 w-4 animate-spin" })
40125
+ success: /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(CircleCheck, { className: "h-4 w-4" }),
40126
+ info: /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(Info, { className: "h-4 w-4" }),
40127
+ warning: /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(TriangleAlert, { className: "h-4 w-4" }),
40128
+ error: /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(OctagonX, { className: "h-4 w-4" }),
40129
+ loading: /* @__PURE__ */ (0, import_jsx_runtime144.jsx)(LoaderCircle, { className: "h-4 w-4 animate-spin" })
39618
40130
  },
39619
40131
  toastOptions: {
39620
40132
  classNames: {
@@ -39632,24 +40144,24 @@ var Toaster = ({ ...props }) => {
39632
40144
  // src/components/ui/toggle-group.tsx
39633
40145
  var React101 = __toESM(require("react"), 1);
39634
40146
  var ToggleGroupPrimitive = __toESM(require("@radix-ui/react-toggle-group"), 1);
39635
- var import_jsx_runtime140 = require("react/jsx-runtime");
40147
+ var import_jsx_runtime145 = require("react/jsx-runtime");
39636
40148
  var ToggleGroupContext = React101.createContext({
39637
40149
  size: "default",
39638
40150
  variant: "default"
39639
40151
  });
39640
- var ToggleGroup = React101.forwardRef(({ className, variant, size, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime140.jsx)(
40152
+ var ToggleGroup = React101.forwardRef(({ className, variant, size, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime145.jsx)(
39641
40153
  ToggleGroupPrimitive.Root,
39642
40154
  {
39643
40155
  ref,
39644
40156
  className: cn("flex items-center justify-center gap-1", className),
39645
40157
  ...props,
39646
- children: /* @__PURE__ */ (0, import_jsx_runtime140.jsx)(ToggleGroupContext.Provider, { value: { variant, size }, children })
40158
+ children: /* @__PURE__ */ (0, import_jsx_runtime145.jsx)(ToggleGroupContext.Provider, { value: { variant, size }, children })
39647
40159
  }
39648
40160
  ));
39649
40161
  ToggleGroup.displayName = ToggleGroupPrimitive.Root.displayName;
39650
40162
  var ToggleGroupItem = React101.forwardRef(({ className, children, variant, size, ...props }, ref) => {
39651
40163
  const context = React101.useContext(ToggleGroupContext);
39652
- return /* @__PURE__ */ (0, import_jsx_runtime140.jsx)(
40164
+ return /* @__PURE__ */ (0, import_jsx_runtime145.jsx)(
39653
40165
  ToggleGroupPrimitive.Item,
39654
40166
  {
39655
40167
  ref,
@@ -39668,7 +40180,7 @@ var ToggleGroupItem = React101.forwardRef(({ className, children, variant, size,
39668
40180
  ToggleGroupItem.displayName = ToggleGroupPrimitive.Item.displayName;
39669
40181
 
39670
40182
  // src/render/PXEngineRenderer.tsx
39671
- var import_jsx_runtime141 = require("react/jsx-runtime");
40183
+ var import_jsx_runtime146 = require("react/jsx-runtime");
39672
40184
  var CONTEXT_DEPENDENT_COMPONENTS = /* @__PURE__ */ new Set([
39673
40185
  // Form components - require FormField + FormItem context
39674
40186
  "FormLabel",
@@ -39760,24 +40272,24 @@ var COMPONENT_SUGGESTIONS = {
39760
40272
  };
39761
40273
  var renderContextDependentError = (componentName, normalizedName, key) => {
39762
40274
  const suggestion = COMPONENT_SUGGESTIONS[normalizedName] || `${componentName}Atom (if available)`;
39763
- return /* @__PURE__ */ (0, import_jsx_runtime141.jsxs)(
40275
+ return /* @__PURE__ */ (0, import_jsx_runtime146.jsxs)(
39764
40276
  "div",
39765
40277
  {
39766
40278
  className: "p-4 border-2 border-amber-500/50 rounded-lg bg-amber-50/80 space-y-2 my-2",
39767
40279
  children: [
39768
- /* @__PURE__ */ (0, import_jsx_runtime141.jsxs)("div", { className: "flex items-start gap-2", children: [
39769
- /* @__PURE__ */ (0, import_jsx_runtime141.jsx)("span", { className: "text-amber-600 font-bold text-lg", children: "\u26A0\uFE0F" }),
39770
- /* @__PURE__ */ (0, import_jsx_runtime141.jsxs)("div", { className: "flex-1", children: [
39771
- /* @__PURE__ */ (0, import_jsx_runtime141.jsxs)("p", { className: "text-sm font-semibold text-amber-900", children: [
40280
+ /* @__PURE__ */ (0, import_jsx_runtime146.jsxs)("div", { className: "flex items-start gap-2", children: [
40281
+ /* @__PURE__ */ (0, import_jsx_runtime146.jsx)("span", { className: "text-amber-600 font-bold text-lg", children: "\u26A0\uFE0F" }),
40282
+ /* @__PURE__ */ (0, import_jsx_runtime146.jsxs)("div", { className: "flex-1", children: [
40283
+ /* @__PURE__ */ (0, import_jsx_runtime146.jsxs)("p", { className: "text-sm font-semibold text-amber-900", children: [
39772
40284
  "Invalid Component: ",
39773
40285
  componentName
39774
40286
  ] }),
39775
- /* @__PURE__ */ (0, import_jsx_runtime141.jsx)("p", { className: "text-xs text-amber-700 mt-1", children: "This component requires React Context and cannot be rendered directly in schemas." })
40287
+ /* @__PURE__ */ (0, import_jsx_runtime146.jsx)("p", { className: "text-xs text-amber-700 mt-1", children: "This component requires React Context and cannot be rendered directly in schemas." })
39776
40288
  ] })
39777
40289
  ] }),
39778
- /* @__PURE__ */ (0, import_jsx_runtime141.jsxs)("div", { className: "bg-white/60 p-3 rounded border border-amber-200", children: [
39779
- /* @__PURE__ */ (0, import_jsx_runtime141.jsx)("p", { className: "text-xs font-semibold text-gray-700 mb-1.5", children: "\u2713 Use instead:" }),
39780
- /* @__PURE__ */ (0, import_jsx_runtime141.jsx)("code", { className: "text-xs text-blue-700 bg-blue-50 px-2 py-1 rounded", children: suggestion })
40290
+ /* @__PURE__ */ (0, import_jsx_runtime146.jsxs)("div", { className: "bg-white/60 p-3 rounded border border-amber-200", children: [
40291
+ /* @__PURE__ */ (0, import_jsx_runtime146.jsx)("p", { className: "text-xs font-semibold text-gray-700 mb-1.5", children: "\u2713 Use instead:" }),
40292
+ /* @__PURE__ */ (0, import_jsx_runtime146.jsx)("code", { className: "text-xs text-blue-700 bg-blue-50 px-2 py-1 rounded", children: suggestion })
39781
40293
  ] })
39782
40294
  ]
39783
40295
  },
@@ -39857,7 +40369,7 @@ var PXEngineRenderer = ({
39857
40369
  if (typeof component === "string" || typeof component === "number") {
39858
40370
  return component;
39859
40371
  }
39860
- if (import_react71.default.isValidElement(component)) {
40372
+ if (import_react75.default.isValidElement(component)) {
39861
40373
  return component;
39862
40374
  }
39863
40375
  if (!component || typeof component !== "object") return null;
@@ -39936,7 +40448,7 @@ var PXEngineRenderer = ({
39936
40448
  const isAtomWithRenderProp = ATOMS_WITH_RENDER.has(atomName);
39937
40449
  const finalStyle = { ...dynamicStyle, ...finalProps.style || {} };
39938
40450
  if (isAtomWithRenderProp) {
39939
- return /* @__PURE__ */ (0, import_jsx_runtime141.jsx)(
40451
+ return /* @__PURE__ */ (0, import_jsx_runtime146.jsx)(
39940
40452
  TargetComponent,
39941
40453
  {
39942
40454
  ...finalProps,
@@ -39948,7 +40460,7 @@ var PXEngineRenderer = ({
39948
40460
  uniqueKey
39949
40461
  );
39950
40462
  } else {
39951
- return /* @__PURE__ */ (0, import_jsx_runtime141.jsx)(
40463
+ return /* @__PURE__ */ (0, import_jsx_runtime146.jsx)(
39952
40464
  TargetComponent,
39953
40465
  {
39954
40466
  ...finalProps,
@@ -39960,7 +40472,7 @@ var PXEngineRenderer = ({
39960
40472
  );
39961
40473
  }
39962
40474
  };
39963
- return /* @__PURE__ */ (0, import_jsx_runtime141.jsx)("div", { className: "px-engine-root relative w-full h-full", children: renderRecursive(root) });
40475
+ return /* @__PURE__ */ (0, import_jsx_runtime146.jsx)("div", { className: "px-engine-root relative w-full h-full", children: renderRecursive(root) });
39964
40476
  };
39965
40477
  // Annotate the CommonJS export names for ESM import in node:
39966
40478
  0 && (module.exports = {
@@ -40055,9 +40567,14 @@ var PXEngineRenderer = ({
40055
40567
  CountrySelectDisplay,
40056
40568
  CountrySelectEdit,
40057
40569
  CreatorActionHeader,
40570
+ CreatorCompactView,
40058
40571
  CreatorGridCard,
40572
+ CreatorImageList,
40059
40573
  CreatorProfileSummary,
40574
+ CreatorProgressBar,
40060
40575
  CreatorSearch,
40576
+ CreatorWidget,
40577
+ CreatorWidgetSkeleton,
40061
40578
  DataGrid,
40062
40579
  Dialog,
40063
40580
  DialogAtom,
@@ -40235,7 +40752,8 @@ var PXEngineRenderer = ({
40235
40752
  UIComponentSelector,
40236
40753
  VideoAtom,
40237
40754
  WorkflowVisualizer,
40238
- cn
40755
+ cn,
40756
+ useCreatorWidgetPolling
40239
40757
  });
40240
40758
  /*! Bundled license information:
40241
40759