pxengine 0.1.35 → 0.1.37

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -5,7 +5,7 @@ var __export = (target, all) => {
5
5
  };
6
6
 
7
7
  // src/render/PXEngineRenderer.tsx
8
- import React101 from "react";
8
+ import React102 from "react";
9
9
 
10
10
  // src/atoms/index.ts
11
11
  var atoms_exports = {};
@@ -33324,16 +33324,21 @@ __export(molecules_exports, {
33324
33324
  KeywordBundlesEdit: () => KeywordBundlesEdit,
33325
33325
  LoadingOverlay: () => LoadingOverlay,
33326
33326
  MCQCard: () => MCQCard,
33327
+ MultiAgentCard: () => MultiAgentCard,
33328
+ MultiAgentPlan: () => MultiAgentPlan,
33329
+ MultiAgentUISelector: () => MultiAgentUISelector,
33327
33330
  NotificationList: () => NotificationList,
33328
33331
  PlatformIconGroup: () => PlatformIconGroup,
33329
33332
  PlatformSelectDisplay: () => PlatformSelectDisplay,
33330
33333
  PlatformSelectEdit: () => PlatformSelectEdit,
33331
33334
  SearchSpecCard: () => SearchSpecCard,
33335
+ StageIndicator: () => StageIndicator,
33332
33336
  StatsGrid: () => StatsGrid,
33333
33337
  StepWizard: () => StepWizard,
33334
33338
  TagCloud: () => TagCloud,
33335
33339
  ToolListCard: () => ToolListCard,
33336
33340
  TopPostsGrid: () => TopPostsGrid,
33341
+ UIComponentSelector: () => UIComponentSelector,
33337
33342
  WorkflowVisualizer: () => WorkflowVisualizer
33338
33343
  });
33339
33344
 
@@ -37200,6 +37205,432 @@ var InstructionPreview = ({
37200
37205
  );
37201
37206
  };
37202
37207
 
37208
+ // src/molecules/agent-builder/UIComponentSelector/UIComponentSelector.tsx
37209
+ import { useState as useState13 } from "react";
37210
+ import { jsx as jsx127, jsxs as jsxs86 } from "react/jsx-runtime";
37211
+ function UIComponentSelector({
37212
+ components,
37213
+ onSelect,
37214
+ className
37215
+ }) {
37216
+ const [selected, setSelected] = useState13(/* @__PURE__ */ new Set());
37217
+ const [submitted, setSubmitted] = useState13(false);
37218
+ const grouped = components.reduce(
37219
+ (acc, comp) => {
37220
+ const cat = comp.category || "Other";
37221
+ if (!acc[cat]) acc[cat] = [];
37222
+ acc[cat].push(comp);
37223
+ return acc;
37224
+ },
37225
+ {}
37226
+ );
37227
+ const toggle = (name) => {
37228
+ if (submitted) return;
37229
+ setSelected((prev) => {
37230
+ const next = new Set(prev);
37231
+ if (next.has(name)) next.delete(name);
37232
+ else next.add(name);
37233
+ return next;
37234
+ });
37235
+ };
37236
+ const handleContinue = () => {
37237
+ setSubmitted(true);
37238
+ onSelect?.(Array.from(selected));
37239
+ };
37240
+ const categoryOrder = Object.keys(grouped).sort();
37241
+ return /* @__PURE__ */ jsxs86(
37242
+ "div",
37243
+ {
37244
+ className: cn(
37245
+ "rounded-xl border border-border bg-card overflow-hidden",
37246
+ className
37247
+ ),
37248
+ children: [
37249
+ /* @__PURE__ */ jsxs86("div", { className: "px-4 py-3 border-b border-border bg-muted/50", children: [
37250
+ /* @__PURE__ */ jsx127("h3", { className: "text-sm font-semibold text-foreground", children: "Select UI Components" }),
37251
+ /* @__PURE__ */ jsx127("p", { className: "text-xs text-muted-foreground mt-0.5", children: "Choose which visual components this agent can use in its responses." })
37252
+ ] }),
37253
+ /* @__PURE__ */ jsx127("div", { className: "px-4 py-3 space-y-4", children: categoryOrder.map((category) => /* @__PURE__ */ jsxs86("div", { children: [
37254
+ /* @__PURE__ */ jsx127("h4", { className: "text-xs font-medium text-muted-foreground uppercase tracking-wider mb-2", children: category }),
37255
+ /* @__PURE__ */ jsx127("div", { className: "space-y-1.5", children: grouped[category].map((comp) => /* @__PURE__ */ jsxs86(
37256
+ "label",
37257
+ {
37258
+ className: cn(
37259
+ "flex items-start gap-3 px-3 py-2 rounded-lg cursor-pointer transition-colors",
37260
+ submitted ? "cursor-default opacity-70" : "hover:bg-muted/50",
37261
+ selected.has(comp.name) && !submitted && "bg-primary/5 border border-primary/20",
37262
+ selected.has(comp.name) && submitted && "bg-primary/5"
37263
+ ),
37264
+ children: [
37265
+ /* @__PURE__ */ jsx127(
37266
+ "input",
37267
+ {
37268
+ type: "checkbox",
37269
+ checked: selected.has(comp.name),
37270
+ onChange: () => toggle(comp.name),
37271
+ disabled: submitted,
37272
+ className: "mt-0.5 h-4 w-4 rounded border-border text-primary focus:ring-primary/50 disabled:opacity-50"
37273
+ }
37274
+ ),
37275
+ /* @__PURE__ */ jsxs86("div", { className: "flex-1 min-w-0", children: [
37276
+ /* @__PURE__ */ jsx127("span", { className: "text-sm font-medium text-foreground", children: comp.display_name }),
37277
+ /* @__PURE__ */ jsx127("span", { className: "ml-2 text-xs text-muted-foreground", children: comp.description })
37278
+ ] })
37279
+ ]
37280
+ },
37281
+ comp.name
37282
+ )) })
37283
+ ] }, category)) }),
37284
+ !submitted && /* @__PURE__ */ jsxs86("div", { className: "px-4 py-3 border-t border-border flex items-center justify-between", children: [
37285
+ /* @__PURE__ */ jsxs86("span", { className: "text-xs text-muted-foreground", children: [
37286
+ selected.size,
37287
+ " selected"
37288
+ ] }),
37289
+ /* @__PURE__ */ jsx127(
37290
+ "button",
37291
+ {
37292
+ onClick: handleContinue,
37293
+ className: "px-4 py-1.5 text-sm font-medium rounded-lg bg-primary text-primary-foreground hover:bg-primary/90 transition-colors",
37294
+ children: "Continue"
37295
+ }
37296
+ )
37297
+ ] })
37298
+ ]
37299
+ }
37300
+ );
37301
+ }
37302
+
37303
+ // src/molecules/agent-builder/MultiAgentCard/MultiAgentCard.tsx
37304
+ import { jsx as jsx128, jsxs as jsxs87 } from "react/jsx-runtime";
37305
+ var MultiAgentCard = ({
37306
+ name,
37307
+ display_name,
37308
+ description,
37309
+ stages = [],
37310
+ enabled = true,
37311
+ className
37312
+ }) => {
37313
+ const avatarUrl = `https://api.dicebear.com/7.x/avataaars/svg?seed=${name}`;
37314
+ return /* @__PURE__ */ jsxs87(
37315
+ "div",
37316
+ {
37317
+ className: cn(
37318
+ "text-foreground hover:bg-muted/50 hover:text-foreground my-3 rounded-xl border border-[var(--border-color)] bg-[var(--card-background)] overflow-hidden shadow-sm",
37319
+ className
37320
+ ),
37321
+ children: [
37322
+ /* @__PURE__ */ jsxs87("div", { className: "flex items-start gap-4 px-5 py-4", children: [
37323
+ /* @__PURE__ */ jsx128("div", { className: "h-12 w-12 shrink-0 rounded-full border-2 border-[var(--primary-color)]/20 overflow-hidden bg-[var(--primary-color)]/10 flex items-center justify-center", children: /* @__PURE__ */ jsx128("img", { src: avatarUrl, alt: display_name, className: "h-full w-full" }) }),
37324
+ /* @__PURE__ */ jsxs87("div", { className: "flex-1 min-w-0", children: [
37325
+ /* @__PURE__ */ jsxs87("div", { className: "flex items-center gap-2", children: [
37326
+ /* @__PURE__ */ jsx128("h4", { className: "text-sm font-semibold text-[var(--foreground)] truncate", children: display_name }),
37327
+ /* @__PURE__ */ jsx128("span", { className: "text-[11px] font-mono text-[var(--foreground)]/40 bg-[var(--foreground)]/[0.05] px-1.5 py-0.5 rounded", children: name }),
37328
+ /* @__PURE__ */ jsx128("span", { className: "text-[10px] px-1.5 py-0.5 rounded-full font-medium bg-violet-500/10 text-violet-600", children: "Multi-Agent" }),
37329
+ /* @__PURE__ */ jsx128(
37330
+ "span",
37331
+ {
37332
+ className: cn(
37333
+ "text-[10px] px-1.5 py-0.5 rounded-full font-medium",
37334
+ enabled ? "bg-emerald-500/10 text-emerald-600" : "bg-red-500/10 text-red-500"
37335
+ ),
37336
+ children: enabled ? "Active" : "Disabled"
37337
+ }
37338
+ )
37339
+ ] }),
37340
+ /* @__PURE__ */ jsx128("p", { className: "text-xs text-[var(--foreground)]/60 leading-relaxed mt-1", children: description })
37341
+ ] })
37342
+ ] }),
37343
+ stages.length > 0 && /* @__PURE__ */ jsxs87("div", { className: "border-t border-[var(--border-color)] px-5 py-4", children: [
37344
+ /* @__PURE__ */ jsxs87("p", { className: "text-[11px] font-semibold text-[var(--foreground)]/40 uppercase tracking-wide mb-3", children: [
37345
+ "Stages (",
37346
+ stages.length,
37347
+ ")"
37348
+ ] }),
37349
+ /* @__PURE__ */ jsx128("div", { className: "flex flex-col gap-0", children: stages.map((stage, idx) => /* @__PURE__ */ jsxs87("div", { className: "flex items-stretch", children: [
37350
+ /* @__PURE__ */ jsxs87("div", { className: "flex flex-col items-center mr-3 w-5", children: [
37351
+ /* @__PURE__ */ jsx128(
37352
+ "div",
37353
+ {
37354
+ className: cn(
37355
+ "w-5 h-5 rounded-full flex items-center justify-center text-[10px] font-bold shrink-0",
37356
+ "bg-[var(--primary-color)]/10 text-[var(--primary-color)] border border-[var(--primary-color)]/30"
37357
+ ),
37358
+ children: idx + 1
37359
+ }
37360
+ ),
37361
+ idx < stages.length - 1 && /* @__PURE__ */ jsx128("div", { className: "w-px flex-1 bg-[var(--primary-color)]/20 min-h-[16px]" })
37362
+ ] }),
37363
+ /* @__PURE__ */ jsxs87("div", { className: "flex-1 mb-2 p-3 rounded-lg border border-[var(--border-color)] bg-[var(--foreground)]/[0.02]", children: [
37364
+ /* @__PURE__ */ jsxs87("div", { className: "flex items-center gap-2", children: [
37365
+ /* @__PURE__ */ jsx128("span", { className: "text-xs font-semibold text-[var(--foreground)]", children: stage.name }),
37366
+ /* @__PURE__ */ jsx128("span", { className: "text-[10px] font-mono text-[var(--foreground)]/30", children: stage.agent_name })
37367
+ ] }),
37368
+ /* @__PURE__ */ jsxs87("div", { className: "flex items-center gap-3 mt-1.5 text-[10px] text-[var(--foreground)]/50", children: [
37369
+ stage.tools && stage.tools.length > 0 && /* @__PURE__ */ jsxs87("span", { children: [
37370
+ stage.tools.length,
37371
+ " tool",
37372
+ stage.tools.length !== 1 ? "s" : ""
37373
+ ] }),
37374
+ stage.ui_components && stage.ui_components.length > 0 && /* @__PURE__ */ jsxs87("span", { children: [
37375
+ stage.ui_components.length,
37376
+ " component",
37377
+ stage.ui_components.length !== 1 ? "s" : ""
37378
+ ] })
37379
+ ] })
37380
+ ] })
37381
+ ] }, stage.agent_name || idx)) })
37382
+ ] })
37383
+ ]
37384
+ }
37385
+ );
37386
+ };
37387
+
37388
+ // src/molecules/agent-builder/MultiAgentPlan/MultiAgentPlan.tsx
37389
+ import { jsx as jsx129, jsxs as jsxs88 } from "react/jsx-runtime";
37390
+ var MultiAgentPlan = ({
37391
+ stages = [],
37392
+ className
37393
+ }) => {
37394
+ return /* @__PURE__ */ jsxs88(
37395
+ "div",
37396
+ {
37397
+ className: cn(
37398
+ "text-foreground hover:bg-muted/50 hover:text-foreground my-3 rounded-xl border border-[var(--border-color)] bg-[var(--card-background)] overflow-hidden shadow-sm",
37399
+ className
37400
+ ),
37401
+ children: [
37402
+ /* @__PURE__ */ jsx129("div", { className: "px-4 py-3 border-b border-[var(--border-color)] bg-[var(--foreground)]/[0.02]", children: /* @__PURE__ */ jsxs88("div", { className: "flex items-center gap-2", children: [
37403
+ /* @__PURE__ */ jsx129("div", { className: "w-4 h-4 rounded bg-violet-500/20 flex items-center justify-center", children: /* @__PURE__ */ jsx129(
37404
+ "svg",
37405
+ {
37406
+ width: "10",
37407
+ height: "10",
37408
+ viewBox: "0 0 24 24",
37409
+ fill: "none",
37410
+ stroke: "currentColor",
37411
+ strokeWidth: "2",
37412
+ className: "text-violet-600",
37413
+ children: /* @__PURE__ */ jsx129("path", { d: "M16 3h5v5M4 20L21 3M21 16v5h-5M15 15l6 6M4 4l5 5" })
37414
+ }
37415
+ ) }),
37416
+ /* @__PURE__ */ jsx129("span", { className: "text-xs font-semibold text-[var(--foreground)]", children: "Proposed Multi-Agent Workflow" }),
37417
+ /* @__PURE__ */ jsx129("span", { className: "text-[10px] px-1.5 py-0.5 rounded-full bg-amber-500/10 text-amber-600 font-medium", children: "Draft" })
37418
+ ] }) }),
37419
+ /* @__PURE__ */ jsx129("div", { className: "px-4 py-3", children: /* @__PURE__ */ jsx129("div", { className: "flex flex-col gap-0", children: stages.map((stage, idx) => /* @__PURE__ */ jsxs88("div", { className: "flex items-stretch", children: [
37420
+ /* @__PURE__ */ jsxs88("div", { className: "flex flex-col items-center mr-3 w-6", children: [
37421
+ /* @__PURE__ */ jsx129("div", { className: "w-6 h-6 rounded-full flex items-center justify-center text-[10px] font-bold shrink-0 bg-[var(--primary-color)]/10 text-[var(--primary-color)] border border-[var(--primary-color)]/30", children: idx + 1 }),
37422
+ idx < stages.length - 1 && /* @__PURE__ */ jsx129("div", { className: "w-px flex-1 bg-[var(--primary-color)]/20 min-h-[12px]" })
37423
+ ] }),
37424
+ /* @__PURE__ */ jsxs88("div", { className: "flex-1 mb-2 pb-2", children: [
37425
+ /* @__PURE__ */ jsx129("p", { className: "text-xs font-semibold text-[var(--foreground)]", children: stage.name }),
37426
+ stage.description && /* @__PURE__ */ jsx129("p", { className: "text-[11px] text-[var(--foreground)]/50 mt-0.5", children: stage.description }),
37427
+ stage.proposed_tools && stage.proposed_tools.length > 0 && /* @__PURE__ */ jsx129("div", { className: "flex flex-wrap gap-1 mt-1.5", children: stage.proposed_tools.map((tool) => /* @__PURE__ */ jsx129(
37428
+ "span",
37429
+ {
37430
+ className: "text-[10px] px-1.5 py-0.5 rounded bg-[var(--primary-color)]/10 text-[var(--primary-color)] font-mono",
37431
+ children: tool
37432
+ },
37433
+ tool
37434
+ )) })
37435
+ ] })
37436
+ ] }, stage.name || idx)) }) })
37437
+ ]
37438
+ }
37439
+ );
37440
+ };
37441
+
37442
+ // src/molecules/agent-builder/MultiAgentUISelector/MultiAgentUISelector.tsx
37443
+ import { useState as useState14, useCallback as useCallback5 } from "react";
37444
+ import { jsx as jsx130, jsxs as jsxs89 } from "react/jsx-runtime";
37445
+ var MultiAgentUISelector = ({
37446
+ stages = [],
37447
+ components = [],
37448
+ onSelect,
37449
+ className
37450
+ }) => {
37451
+ const [activeStageId, setActiveStageId] = useState14(stages[0]?.id || "");
37452
+ const [selections, setSelections] = useState14(
37453
+ () => {
37454
+ const init = {};
37455
+ for (const stage of stages) {
37456
+ init[stage.id] = /* @__PURE__ */ new Set();
37457
+ }
37458
+ return init;
37459
+ }
37460
+ );
37461
+ const [submitted, setSubmitted] = useState14(false);
37462
+ const grouped = components.reduce((acc, comp) => {
37463
+ const cat = comp.category || "Other";
37464
+ if (!acc[cat]) acc[cat] = [];
37465
+ acc[cat].push(comp);
37466
+ return acc;
37467
+ }, {});
37468
+ const toggleComponent = useCallback5(
37469
+ (stageId, compName) => {
37470
+ if (submitted) return;
37471
+ setSelections((prev) => {
37472
+ const updated = { ...prev };
37473
+ const set = new Set(updated[stageId] || []);
37474
+ if (set.has(compName)) {
37475
+ set.delete(compName);
37476
+ } else {
37477
+ set.add(compName);
37478
+ }
37479
+ updated[stageId] = set;
37480
+ return updated;
37481
+ });
37482
+ },
37483
+ [submitted]
37484
+ );
37485
+ const handleContinue = useCallback5(() => {
37486
+ setSubmitted(true);
37487
+ if (onSelect) {
37488
+ const result = {};
37489
+ for (const [stageId, set] of Object.entries(selections)) {
37490
+ result[stageId] = Array.from(set);
37491
+ }
37492
+ onSelect(result);
37493
+ }
37494
+ }, [onSelect, selections]);
37495
+ const activeStage = stages.find((s) => s.id === activeStageId);
37496
+ return /* @__PURE__ */ jsxs89(
37497
+ "div",
37498
+ {
37499
+ className: cn(
37500
+ "text-foreground hover:bg-muted/50 hover:text-foreground my-3 rounded-xl border border-[var(--border-color)] bg-[var(--card-background)] overflow-hidden shadow-sm",
37501
+ className
37502
+ ),
37503
+ children: [
37504
+ /* @__PURE__ */ jsx130("div", { className: "px-4 py-3 border-b border-[var(--border-color)] bg-[var(--foreground)]/[0.02]", children: /* @__PURE__ */ jsxs89("div", { className: "flex items-center gap-2", children: [
37505
+ /* @__PURE__ */ jsx130("div", { className: "w-4 h-4 rounded bg-[var(--primary-color)]/20 flex items-center justify-center", children: /* @__PURE__ */ jsxs89(
37506
+ "svg",
37507
+ {
37508
+ width: "10",
37509
+ height: "10",
37510
+ viewBox: "0 0 24 24",
37511
+ fill: "none",
37512
+ stroke: "currentColor",
37513
+ strokeWidth: "2",
37514
+ className: "text-[var(--primary-color)]",
37515
+ children: [
37516
+ /* @__PURE__ */ jsx130("rect", { x: "3", y: "3", width: "7", height: "7" }),
37517
+ /* @__PURE__ */ jsx130("rect", { x: "14", y: "3", width: "7", height: "7" }),
37518
+ /* @__PURE__ */ jsx130("rect", { x: "3", y: "14", width: "7", height: "7" }),
37519
+ /* @__PURE__ */ jsx130("rect", { x: "14", y: "14", width: "7", height: "7" })
37520
+ ]
37521
+ }
37522
+ ) }),
37523
+ /* @__PURE__ */ jsx130("span", { className: "text-xs font-semibold text-[var(--foreground)]", children: "UI Components per Stage" })
37524
+ ] }) }),
37525
+ /* @__PURE__ */ jsx130("div", { className: "flex border-b border-[var(--border-color)] px-4", children: stages.map((stage) => /* @__PURE__ */ jsx130(
37526
+ "button",
37527
+ {
37528
+ onClick: () => setActiveStageId(stage.id),
37529
+ disabled: submitted,
37530
+ className: cn(
37531
+ "px-3 py-2 text-[11px] font-medium border-b-2 transition-colors",
37532
+ activeStageId === stage.id ? "border-[var(--primary-color)] text-[var(--primary-color)]" : "border-transparent text-[var(--foreground)]/50 hover:text-[var(--foreground)]",
37533
+ submitted && "opacity-60 cursor-default"
37534
+ ),
37535
+ children: stage.name
37536
+ },
37537
+ stage.id
37538
+ )) }),
37539
+ /* @__PURE__ */ jsxs89("div", { className: "px-4 py-3", children: [
37540
+ activeStage && /* @__PURE__ */ jsxs89("p", { className: "text-[10px] text-[var(--foreground)]/40 mb-3", children: [
37541
+ "Select components for ",
37542
+ /* @__PURE__ */ jsx130("strong", { children: activeStage.name }),
37543
+ " (",
37544
+ activeStage.agent_name,
37545
+ ")"
37546
+ ] }),
37547
+ Object.entries(grouped).map(([category, comps]) => /* @__PURE__ */ jsxs89("div", { className: "mb-3", children: [
37548
+ /* @__PURE__ */ jsx130("p", { className: "text-[10px] font-semibold text-[var(--foreground)]/40 uppercase tracking-wide mb-1.5", children: category }),
37549
+ /* @__PURE__ */ jsx130("div", { className: "grid grid-cols-2 gap-1.5", children: comps.map((comp) => {
37550
+ const isSelected = selections[activeStageId]?.has(comp.name) || false;
37551
+ return /* @__PURE__ */ jsxs89(
37552
+ "button",
37553
+ {
37554
+ onClick: () => toggleComponent(activeStageId, comp.name),
37555
+ disabled: submitted,
37556
+ className: cn(
37557
+ "text-left p-2.5 rounded-lg border text-[11px] transition-all overflow-hidden",
37558
+ isSelected ? "border-[var(--primary-color)] bg-[var(--primary-color)]/5" : "border-[var(--border-color)] hover:border-[var(--primary-color)]/50",
37559
+ submitted && "opacity-60 cursor-default"
37560
+ ),
37561
+ children: [
37562
+ /* @__PURE__ */ jsxs89("div", { className: "flex items-center gap-1.5", children: [
37563
+ /* @__PURE__ */ jsx130(
37564
+ "div",
37565
+ {
37566
+ className: cn(
37567
+ "w-3.5 h-3.5 rounded border flex items-center justify-center shrink-0",
37568
+ isSelected ? "bg-[var(--primary-color)] border-[var(--primary-color)]" : "border-[var(--foreground)]/20"
37569
+ ),
37570
+ children: isSelected && /* @__PURE__ */ jsx130(
37571
+ "svg",
37572
+ {
37573
+ width: "8",
37574
+ height: "8",
37575
+ viewBox: "0 0 24 24",
37576
+ fill: "none",
37577
+ stroke: "white",
37578
+ strokeWidth: "3",
37579
+ children: /* @__PURE__ */ jsx130("polyline", { points: "20 6 9 17 4 12" })
37580
+ }
37581
+ )
37582
+ }
37583
+ ),
37584
+ /* @__PURE__ */ jsx130("span", { className: "font-medium text-[var(--foreground)]", children: comp.display_name })
37585
+ ] }),
37586
+ /* @__PURE__ */ jsx130("p", { className: "text-[10px] text-[var(--foreground)]/40 mt-0.5 ml-5 whitespace-normal", children: comp.description })
37587
+ ]
37588
+ },
37589
+ comp.name
37590
+ );
37591
+ }) })
37592
+ ] }, category))
37593
+ ] }),
37594
+ !submitted && /* @__PURE__ */ jsx130("div", { className: "px-4 pb-3", children: /* @__PURE__ */ jsx130(
37595
+ "button",
37596
+ {
37597
+ onClick: handleContinue,
37598
+ className: "w-full py-2 rounded-lg bg-[var(--primary-color)] text-white text-xs font-medium hover:opacity-90 transition-opacity",
37599
+ children: "Continue"
37600
+ }
37601
+ ) }),
37602
+ submitted && /* @__PURE__ */ jsx130("div", { className: "px-4 pb-3", children: /* @__PURE__ */ jsx130("div", { className: "text-[10px] text-emerald-600 font-medium text-center py-1.5 ", children: "Selections confirmed" }) })
37603
+ ]
37604
+ }
37605
+ );
37606
+ };
37607
+
37608
+ // src/molecules/agent-builder/StageIndicator/StageIndicator.tsx
37609
+ import { jsx as jsx131, jsxs as jsxs90 } from "react/jsx-runtime";
37610
+ var StageIndicator = ({
37611
+ stage_name,
37612
+ agent_name,
37613
+ className
37614
+ }) => {
37615
+ return /* @__PURE__ */ jsxs90(
37616
+ "div",
37617
+ {
37618
+ className: cn(
37619
+ "flex items-center gap-3 my-4",
37620
+ className
37621
+ ),
37622
+ children: [
37623
+ /* @__PURE__ */ jsx131("div", { className: "flex-1 h-px bg-[var(--border-color)]" }),
37624
+ /* @__PURE__ */ jsxs90("div", { className: "flex items-center gap-1.5 px-3 py-1 rounded-full bg-violet-500/10 border border-violet-500/20", children: [
37625
+ /* @__PURE__ */ jsx131("div", { className: "w-1.5 h-1.5 rounded-full bg-violet-500 animate-pulse" }),
37626
+ /* @__PURE__ */ jsx131("span", { className: "text-[10px] font-medium text-violet-600", children: stage_name || agent_name })
37627
+ ] }),
37628
+ /* @__PURE__ */ jsx131("div", { className: "flex-1 h-px bg-[var(--border-color)]" })
37629
+ ]
37630
+ }
37631
+ );
37632
+ };
37633
+
37203
37634
  // src/components/ui/index.ts
37204
37635
  var ui_exports = {};
37205
37636
  __export(ui_exports, {
@@ -37492,7 +37923,7 @@ __export(ui_exports, {
37492
37923
  // src/components/ui/button-group.tsx
37493
37924
  import { Slot as Slot4 } from "@radix-ui/react-slot";
37494
37925
  import { cva as cva8 } from "class-variance-authority";
37495
- import { jsx as jsx127 } from "react/jsx-runtime";
37926
+ import { jsx as jsx132 } from "react/jsx-runtime";
37496
37927
  var buttonGroupVariants = cva8(
37497
37928
  "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",
37498
37929
  {
@@ -37512,7 +37943,7 @@ function ButtonGroup({
37512
37943
  orientation,
37513
37944
  ...props
37514
37945
  }) {
37515
- return /* @__PURE__ */ jsx127(
37946
+ return /* @__PURE__ */ jsx132(
37516
37947
  "div",
37517
37948
  {
37518
37949
  role: "group",
@@ -37529,7 +37960,7 @@ function ButtonGroupText({
37529
37960
  ...props
37530
37961
  }) {
37531
37962
  const Comp = asChild ? Slot4 : "div";
37532
- return /* @__PURE__ */ jsx127(
37963
+ return /* @__PURE__ */ jsx132(
37533
37964
  Comp,
37534
37965
  {
37535
37966
  className: cn(
@@ -37545,7 +37976,7 @@ function ButtonGroupSeparator({
37545
37976
  orientation = "vertical",
37546
37977
  ...props
37547
37978
  }) {
37548
- return /* @__PURE__ */ jsx127(
37979
+ return /* @__PURE__ */ jsx132(
37549
37980
  Separator2,
37550
37981
  {
37551
37982
  "data-slot": "button-group-separator",
@@ -37561,9 +37992,9 @@ function ButtonGroupSeparator({
37561
37992
 
37562
37993
  // src/components/ui/empty.tsx
37563
37994
  import { cva as cva9 } from "class-variance-authority";
37564
- import { jsx as jsx128 } from "react/jsx-runtime";
37995
+ import { jsx as jsx133 } from "react/jsx-runtime";
37565
37996
  function Empty({ className, ...props }) {
37566
- return /* @__PURE__ */ jsx128(
37997
+ return /* @__PURE__ */ jsx133(
37567
37998
  "div",
37568
37999
  {
37569
38000
  "data-slot": "empty",
@@ -37576,7 +38007,7 @@ function Empty({ className, ...props }) {
37576
38007
  );
37577
38008
  }
37578
38009
  function EmptyHeader({ className, ...props }) {
37579
- return /* @__PURE__ */ jsx128(
38010
+ return /* @__PURE__ */ jsx133(
37580
38011
  "div",
37581
38012
  {
37582
38013
  "data-slot": "empty-header",
@@ -37607,7 +38038,7 @@ function EmptyMedia({
37607
38038
  variant = "default",
37608
38039
  ...props
37609
38040
  }) {
37610
- return /* @__PURE__ */ jsx128(
38041
+ return /* @__PURE__ */ jsx133(
37611
38042
  "div",
37612
38043
  {
37613
38044
  "data-slot": "empty-icon",
@@ -37618,7 +38049,7 @@ function EmptyMedia({
37618
38049
  );
37619
38050
  }
37620
38051
  function EmptyTitle({ className, ...props }) {
37621
- return /* @__PURE__ */ jsx128(
38052
+ return /* @__PURE__ */ jsx133(
37622
38053
  "div",
37623
38054
  {
37624
38055
  "data-slot": "empty-title",
@@ -37628,7 +38059,7 @@ function EmptyTitle({ className, ...props }) {
37628
38059
  );
37629
38060
  }
37630
38061
  function EmptyDescription({ className, ...props }) {
37631
- return /* @__PURE__ */ jsx128(
38062
+ return /* @__PURE__ */ jsx133(
37632
38063
  "div",
37633
38064
  {
37634
38065
  "data-slot": "empty-description",
@@ -37641,7 +38072,7 @@ function EmptyDescription({ className, ...props }) {
37641
38072
  );
37642
38073
  }
37643
38074
  function EmptyContent({ className, ...props }) {
37644
- return /* @__PURE__ */ jsx128(
38075
+ return /* @__PURE__ */ jsx133(
37645
38076
  "div",
37646
38077
  {
37647
38078
  "data-slot": "empty-content",
@@ -37657,9 +38088,9 @@ function EmptyContent({ className, ...props }) {
37657
38088
  // src/components/ui/field.tsx
37658
38089
  import { useMemo as useMemo9 } from "react";
37659
38090
  import { cva as cva10 } from "class-variance-authority";
37660
- import { jsx as jsx129, jsxs as jsxs86 } from "react/jsx-runtime";
38091
+ import { jsx as jsx134, jsxs as jsxs91 } from "react/jsx-runtime";
37661
38092
  function FieldSet({ className, ...props }) {
37662
- return /* @__PURE__ */ jsx129(
38093
+ return /* @__PURE__ */ jsx134(
37663
38094
  "fieldset",
37664
38095
  {
37665
38096
  "data-slot": "field-set",
@@ -37677,7 +38108,7 @@ function FieldLegend({
37677
38108
  variant = "legend",
37678
38109
  ...props
37679
38110
  }) {
37680
- return /* @__PURE__ */ jsx129(
38111
+ return /* @__PURE__ */ jsx134(
37681
38112
  "legend",
37682
38113
  {
37683
38114
  "data-slot": "field-legend",
@@ -37693,7 +38124,7 @@ function FieldLegend({
37693
38124
  );
37694
38125
  }
37695
38126
  function FieldGroup({ className, ...props }) {
37696
- return /* @__PURE__ */ jsx129(
38127
+ return /* @__PURE__ */ jsx134(
37697
38128
  "div",
37698
38129
  {
37699
38130
  "data-slot": "field-group",
@@ -37733,7 +38164,7 @@ function Field({
37733
38164
  orientation = "vertical",
37734
38165
  ...props
37735
38166
  }) {
37736
- return /* @__PURE__ */ jsx129(
38167
+ return /* @__PURE__ */ jsx134(
37737
38168
  "div",
37738
38169
  {
37739
38170
  role: "group",
@@ -37745,7 +38176,7 @@ function Field({
37745
38176
  );
37746
38177
  }
37747
38178
  function FieldContent({ className, ...props }) {
37748
- return /* @__PURE__ */ jsx129(
38179
+ return /* @__PURE__ */ jsx134(
37749
38180
  "div",
37750
38181
  {
37751
38182
  "data-slot": "field-content",
@@ -37761,7 +38192,7 @@ function FieldLabel({
37761
38192
  className,
37762
38193
  ...props
37763
38194
  }) {
37764
- return /* @__PURE__ */ jsx129(
38195
+ return /* @__PURE__ */ jsx134(
37765
38196
  Label,
37766
38197
  {
37767
38198
  "data-slot": "field-label",
@@ -37776,7 +38207,7 @@ function FieldLabel({
37776
38207
  );
37777
38208
  }
37778
38209
  function FieldTitle({ className, ...props }) {
37779
- return /* @__PURE__ */ jsx129(
38210
+ return /* @__PURE__ */ jsx134(
37780
38211
  "div",
37781
38212
  {
37782
38213
  "data-slot": "field-label",
@@ -37789,7 +38220,7 @@ function FieldTitle({ className, ...props }) {
37789
38220
  );
37790
38221
  }
37791
38222
  function FieldDescription({ className, ...props }) {
37792
- return /* @__PURE__ */ jsx129(
38223
+ return /* @__PURE__ */ jsx134(
37793
38224
  "p",
37794
38225
  {
37795
38226
  "data-slot": "field-description",
@@ -37808,7 +38239,7 @@ function FieldSeparator({
37808
38239
  className,
37809
38240
  ...props
37810
38241
  }) {
37811
- return /* @__PURE__ */ jsxs86(
38242
+ return /* @__PURE__ */ jsxs91(
37812
38243
  "div",
37813
38244
  {
37814
38245
  "data-slot": "field-separator",
@@ -37819,8 +38250,8 @@ function FieldSeparator({
37819
38250
  ),
37820
38251
  ...props,
37821
38252
  children: [
37822
- /* @__PURE__ */ jsx129(Separator2, { className: "absolute inset-0 top-1/2" }),
37823
- children && /* @__PURE__ */ jsx129(
38253
+ /* @__PURE__ */ jsx134(Separator2, { className: "absolute inset-0 top-1/2" }),
38254
+ children && /* @__PURE__ */ jsx134(
37824
38255
  "span",
37825
38256
  {
37826
38257
  className: "bg-background text-muted-foreground relative mx-auto block w-fit px-2",
@@ -37848,14 +38279,14 @@ function FieldError({
37848
38279
  if (errors?.length === 1 && errors[0]?.message) {
37849
38280
  return errors[0].message;
37850
38281
  }
37851
- return /* @__PURE__ */ jsx129("ul", { className: "ml-4 flex list-disc flex-col gap-1", children: errors.map(
37852
- (error, index) => error?.message && /* @__PURE__ */ jsx129("li", { children: error.message }, index)
38282
+ return /* @__PURE__ */ jsx134("ul", { className: "ml-4 flex list-disc flex-col gap-1", children: errors.map(
38283
+ (error, index) => error?.message && /* @__PURE__ */ jsx134("li", { children: error.message }, index)
37853
38284
  ) });
37854
38285
  }, [children, errors]);
37855
38286
  if (!content) {
37856
38287
  return null;
37857
38288
  }
37858
- return /* @__PURE__ */ jsx129(
38289
+ return /* @__PURE__ */ jsx134(
37859
38290
  "div",
37860
38291
  {
37861
38292
  role: "alert",
@@ -37869,9 +38300,9 @@ function FieldError({
37869
38300
 
37870
38301
  // src/components/ui/input-group.tsx
37871
38302
  import { cva as cva11 } from "class-variance-authority";
37872
- import { jsx as jsx130 } from "react/jsx-runtime";
38303
+ import { jsx as jsx135 } from "react/jsx-runtime";
37873
38304
  function InputGroup({ className, ...props }) {
37874
- return /* @__PURE__ */ jsx130(
38305
+ return /* @__PURE__ */ jsx135(
37875
38306
  "div",
37876
38307
  {
37877
38308
  "data-slot": "input-group",
@@ -37915,7 +38346,7 @@ function InputGroupAddon({
37915
38346
  align = "inline-start",
37916
38347
  ...props
37917
38348
  }) {
37918
- return /* @__PURE__ */ jsx130(
38349
+ return /* @__PURE__ */ jsx135(
37919
38350
  "div",
37920
38351
  {
37921
38352
  role: "group",
@@ -37955,7 +38386,7 @@ function InputGroupButton({
37955
38386
  size = "xs",
37956
38387
  ...props
37957
38388
  }) {
37958
- return /* @__PURE__ */ jsx130(
38389
+ return /* @__PURE__ */ jsx135(
37959
38390
  Button,
37960
38391
  {
37961
38392
  type,
@@ -37967,7 +38398,7 @@ function InputGroupButton({
37967
38398
  );
37968
38399
  }
37969
38400
  function InputGroupText({ className, ...props }) {
37970
- return /* @__PURE__ */ jsx130(
38401
+ return /* @__PURE__ */ jsx135(
37971
38402
  "span",
37972
38403
  {
37973
38404
  className: cn(
@@ -37982,7 +38413,7 @@ function InputGroupInput({
37982
38413
  className,
37983
38414
  ...props
37984
38415
  }) {
37985
- return /* @__PURE__ */ jsx130(
38416
+ return /* @__PURE__ */ jsx135(
37986
38417
  Input,
37987
38418
  {
37988
38419
  "data-slot": "input-group-control",
@@ -37998,7 +38429,7 @@ function InputGroupTextarea({
37998
38429
  className,
37999
38430
  ...props
38000
38431
  }) {
38001
- return /* @__PURE__ */ jsx130(
38432
+ return /* @__PURE__ */ jsx135(
38002
38433
  Textarea,
38003
38434
  {
38004
38435
  "data-slot": "input-group-control",
@@ -38014,9 +38445,9 @@ function InputGroupTextarea({
38014
38445
  // src/components/ui/item.tsx
38015
38446
  import { Slot as Slot5 } from "@radix-ui/react-slot";
38016
38447
  import { cva as cva12 } from "class-variance-authority";
38017
- import { jsx as jsx131 } from "react/jsx-runtime";
38448
+ import { jsx as jsx136 } from "react/jsx-runtime";
38018
38449
  function ItemGroup({ className, ...props }) {
38019
- return /* @__PURE__ */ jsx131(
38450
+ return /* @__PURE__ */ jsx136(
38020
38451
  "div",
38021
38452
  {
38022
38453
  role: "list",
@@ -38030,7 +38461,7 @@ function ItemSeparator({
38030
38461
  className,
38031
38462
  ...props
38032
38463
  }) {
38033
- return /* @__PURE__ */ jsx131(
38464
+ return /* @__PURE__ */ jsx136(
38034
38465
  Separator2,
38035
38466
  {
38036
38467
  "data-slot": "item-separator",
@@ -38068,7 +38499,7 @@ function Item8({
38068
38499
  ...props
38069
38500
  }) {
38070
38501
  const Comp = asChild ? Slot5 : "div";
38071
- return /* @__PURE__ */ jsx131(
38502
+ return /* @__PURE__ */ jsx136(
38072
38503
  Comp,
38073
38504
  {
38074
38505
  "data-slot": "item",
@@ -38099,7 +38530,7 @@ function ItemMedia({
38099
38530
  variant = "default",
38100
38531
  ...props
38101
38532
  }) {
38102
- return /* @__PURE__ */ jsx131(
38533
+ return /* @__PURE__ */ jsx136(
38103
38534
  "div",
38104
38535
  {
38105
38536
  "data-slot": "item-media",
@@ -38110,7 +38541,7 @@ function ItemMedia({
38110
38541
  );
38111
38542
  }
38112
38543
  function ItemContent({ className, ...props }) {
38113
- return /* @__PURE__ */ jsx131(
38544
+ return /* @__PURE__ */ jsx136(
38114
38545
  "div",
38115
38546
  {
38116
38547
  "data-slot": "item-content",
@@ -38123,7 +38554,7 @@ function ItemContent({ className, ...props }) {
38123
38554
  );
38124
38555
  }
38125
38556
  function ItemTitle({ className, ...props }) {
38126
- return /* @__PURE__ */ jsx131(
38557
+ return /* @__PURE__ */ jsx136(
38127
38558
  "div",
38128
38559
  {
38129
38560
  "data-slot": "item-title",
@@ -38136,7 +38567,7 @@ function ItemTitle({ className, ...props }) {
38136
38567
  );
38137
38568
  }
38138
38569
  function ItemDescription({ className, ...props }) {
38139
- return /* @__PURE__ */ jsx131(
38570
+ return /* @__PURE__ */ jsx136(
38140
38571
  "p",
38141
38572
  {
38142
38573
  "data-slot": "item-description",
@@ -38150,7 +38581,7 @@ function ItemDescription({ className, ...props }) {
38150
38581
  );
38151
38582
  }
38152
38583
  function ItemActions({ className, ...props }) {
38153
- return /* @__PURE__ */ jsx131(
38584
+ return /* @__PURE__ */ jsx136(
38154
38585
  "div",
38155
38586
  {
38156
38587
  "data-slot": "item-actions",
@@ -38160,7 +38591,7 @@ function ItemActions({ className, ...props }) {
38160
38591
  );
38161
38592
  }
38162
38593
  function ItemHeader({ className, ...props }) {
38163
- return /* @__PURE__ */ jsx131(
38594
+ return /* @__PURE__ */ jsx136(
38164
38595
  "div",
38165
38596
  {
38166
38597
  "data-slot": "item-header",
@@ -38173,7 +38604,7 @@ function ItemHeader({ className, ...props }) {
38173
38604
  );
38174
38605
  }
38175
38606
  function ItemFooter({ className, ...props }) {
38176
- return /* @__PURE__ */ jsx131(
38607
+ return /* @__PURE__ */ jsx136(
38177
38608
  "div",
38178
38609
  {
38179
38610
  "data-slot": "item-footer",
@@ -38187,9 +38618,9 @@ function ItemFooter({ className, ...props }) {
38187
38618
  }
38188
38619
 
38189
38620
  // src/components/ui/kbd.tsx
38190
- import { jsx as jsx132 } from "react/jsx-runtime";
38621
+ import { jsx as jsx137 } from "react/jsx-runtime";
38191
38622
  function Kbd({ className, ...props }) {
38192
- return /* @__PURE__ */ jsx132(
38623
+ return /* @__PURE__ */ jsx137(
38193
38624
  "kbd",
38194
38625
  {
38195
38626
  "data-slot": "kbd",
@@ -38204,7 +38635,7 @@ function Kbd({ className, ...props }) {
38204
38635
  );
38205
38636
  }
38206
38637
  function KbdGroup({ className, ...props }) {
38207
- return /* @__PURE__ */ jsx132(
38638
+ return /* @__PURE__ */ jsx137(
38208
38639
  "kbd",
38209
38640
  {
38210
38641
  "data-slot": "kbd-group",
@@ -38215,16 +38646,16 @@ function KbdGroup({ className, ...props }) {
38215
38646
  }
38216
38647
 
38217
38648
  // src/components/ui/sidebar.tsx
38218
- import * as React99 from "react";
38649
+ import * as React100 from "react";
38219
38650
  import { Slot as Slot6 } from "@radix-ui/react-slot";
38220
38651
  import { cva as cva13 } from "class-variance-authority";
38221
38652
 
38222
38653
  // src/hooks/use-mobile.tsx
38223
- import * as React98 from "react";
38654
+ import * as React99 from "react";
38224
38655
  var MOBILE_BREAKPOINT = 768;
38225
38656
  function useIsMobile() {
38226
- const [isMobile, setIsMobile] = React98.useState(void 0);
38227
- React98.useEffect(() => {
38657
+ const [isMobile, setIsMobile] = React99.useState(void 0);
38658
+ React99.useEffect(() => {
38228
38659
  const mql = window.matchMedia(`(max-width: ${MOBILE_BREAKPOINT - 1}px)`);
38229
38660
  const onChange = () => {
38230
38661
  setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);
@@ -38237,22 +38668,22 @@ function useIsMobile() {
38237
38668
  }
38238
38669
 
38239
38670
  // src/components/ui/sidebar.tsx
38240
- import { jsx as jsx133, jsxs as jsxs87 } from "react/jsx-runtime";
38671
+ import { jsx as jsx138, jsxs as jsxs92 } from "react/jsx-runtime";
38241
38672
  var SIDEBAR_COOKIE_NAME = "sidebar_state";
38242
38673
  var SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7;
38243
38674
  var SIDEBAR_WIDTH = "16rem";
38244
38675
  var SIDEBAR_WIDTH_MOBILE = "18rem";
38245
38676
  var SIDEBAR_WIDTH_ICON = "3rem";
38246
38677
  var SIDEBAR_KEYBOARD_SHORTCUT = "b";
38247
- var SidebarContext = React99.createContext(null);
38678
+ var SidebarContext = React100.createContext(null);
38248
38679
  function useSidebar() {
38249
- const context = React99.useContext(SidebarContext);
38680
+ const context = React100.useContext(SidebarContext);
38250
38681
  if (!context) {
38251
38682
  throw new Error("useSidebar must be used within a SidebarProvider.");
38252
38683
  }
38253
38684
  return context;
38254
38685
  }
38255
- var SidebarProvider = React99.forwardRef(
38686
+ var SidebarProvider = React100.forwardRef(
38256
38687
  ({
38257
38688
  defaultOpen = true,
38258
38689
  open: openProp,
@@ -38263,10 +38694,10 @@ var SidebarProvider = React99.forwardRef(
38263
38694
  ...props
38264
38695
  }, ref) => {
38265
38696
  const isMobile = useIsMobile();
38266
- const [openMobile, setOpenMobile] = React99.useState(false);
38267
- const [_open, _setOpen] = React99.useState(defaultOpen);
38697
+ const [openMobile, setOpenMobile] = React100.useState(false);
38698
+ const [_open, _setOpen] = React100.useState(defaultOpen);
38268
38699
  const open = openProp ?? _open;
38269
- const setOpen = React99.useCallback(
38700
+ const setOpen = React100.useCallback(
38270
38701
  (value) => {
38271
38702
  const openState = typeof value === "function" ? value(open) : value;
38272
38703
  if (setOpenProp) {
@@ -38278,10 +38709,10 @@ var SidebarProvider = React99.forwardRef(
38278
38709
  },
38279
38710
  [setOpenProp, open]
38280
38711
  );
38281
- const toggleSidebar = React99.useCallback(() => {
38712
+ const toggleSidebar = React100.useCallback(() => {
38282
38713
  return isMobile ? setOpenMobile((open2) => !open2) : setOpen((open2) => !open2);
38283
38714
  }, [isMobile, setOpen, setOpenMobile]);
38284
- React99.useEffect(() => {
38715
+ React100.useEffect(() => {
38285
38716
  const handleKeyDown = (event) => {
38286
38717
  if (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {
38287
38718
  event.preventDefault();
@@ -38292,7 +38723,7 @@ var SidebarProvider = React99.forwardRef(
38292
38723
  return () => window.removeEventListener("keydown", handleKeyDown);
38293
38724
  }, [toggleSidebar]);
38294
38725
  const state = open ? "expanded" : "collapsed";
38295
- const contextValue = React99.useMemo(
38726
+ const contextValue = React100.useMemo(
38296
38727
  () => ({
38297
38728
  state,
38298
38729
  open,
@@ -38304,7 +38735,7 @@ var SidebarProvider = React99.forwardRef(
38304
38735
  }),
38305
38736
  [state, open, setOpen, isMobile, openMobile, setOpenMobile, toggleSidebar]
38306
38737
  );
38307
- return /* @__PURE__ */ jsx133(SidebarContext.Provider, { value: contextValue, children: /* @__PURE__ */ jsx133(TooltipProvider, { delayDuration: 0, children: /* @__PURE__ */ jsx133(
38738
+ return /* @__PURE__ */ jsx138(SidebarContext.Provider, { value: contextValue, children: /* @__PURE__ */ jsx138(TooltipProvider, { delayDuration: 0, children: /* @__PURE__ */ jsx138(
38308
38739
  "div",
38309
38740
  {
38310
38741
  style: {
@@ -38324,7 +38755,7 @@ var SidebarProvider = React99.forwardRef(
38324
38755
  }
38325
38756
  );
38326
38757
  SidebarProvider.displayName = "SidebarProvider";
38327
- var Sidebar = React99.forwardRef(
38758
+ var Sidebar = React100.forwardRef(
38328
38759
  ({
38329
38760
  side = "left",
38330
38761
  variant = "sidebar",
@@ -38335,7 +38766,7 @@ var Sidebar = React99.forwardRef(
38335
38766
  }, ref) => {
38336
38767
  const { isMobile, state, openMobile, setOpenMobile } = useSidebar();
38337
38768
  if (collapsible === "none") {
38338
- return /* @__PURE__ */ jsx133(
38769
+ return /* @__PURE__ */ jsx138(
38339
38770
  "div",
38340
38771
  {
38341
38772
  className: cn(
@@ -38349,7 +38780,7 @@ var Sidebar = React99.forwardRef(
38349
38780
  );
38350
38781
  }
38351
38782
  if (isMobile) {
38352
- return /* @__PURE__ */ jsx133(Sheet2, { open: openMobile, onOpenChange: setOpenMobile, ...props, children: /* @__PURE__ */ jsxs87(
38783
+ return /* @__PURE__ */ jsx138(Sheet2, { open: openMobile, onOpenChange: setOpenMobile, ...props, children: /* @__PURE__ */ jsxs92(
38353
38784
  SheetContent,
38354
38785
  {
38355
38786
  "data-sidebar": "sidebar",
@@ -38360,16 +38791,16 @@ var Sidebar = React99.forwardRef(
38360
38791
  },
38361
38792
  side,
38362
38793
  children: [
38363
- /* @__PURE__ */ jsxs87(SheetHeader, { className: "sr-only", children: [
38364
- /* @__PURE__ */ jsx133(SheetTitle, { children: "Sidebar" }),
38365
- /* @__PURE__ */ jsx133(SheetDescription, { children: "Displays the mobile sidebar." })
38794
+ /* @__PURE__ */ jsxs92(SheetHeader, { className: "sr-only", children: [
38795
+ /* @__PURE__ */ jsx138(SheetTitle, { children: "Sidebar" }),
38796
+ /* @__PURE__ */ jsx138(SheetDescription, { children: "Displays the mobile sidebar." })
38366
38797
  ] }),
38367
- /* @__PURE__ */ jsx133("div", { className: "flex h-full w-full flex-col", children })
38798
+ /* @__PURE__ */ jsx138("div", { className: "flex h-full w-full flex-col", children })
38368
38799
  ]
38369
38800
  }
38370
38801
  ) });
38371
38802
  }
38372
- return /* @__PURE__ */ jsxs87(
38803
+ return /* @__PURE__ */ jsxs92(
38373
38804
  "div",
38374
38805
  {
38375
38806
  ref,
@@ -38379,7 +38810,7 @@ var Sidebar = React99.forwardRef(
38379
38810
  "data-variant": variant,
38380
38811
  "data-side": side,
38381
38812
  children: [
38382
- /* @__PURE__ */ jsx133(
38813
+ /* @__PURE__ */ jsx138(
38383
38814
  "div",
38384
38815
  {
38385
38816
  className: cn(
@@ -38390,7 +38821,7 @@ var Sidebar = React99.forwardRef(
38390
38821
  )
38391
38822
  }
38392
38823
  ),
38393
- /* @__PURE__ */ jsx133(
38824
+ /* @__PURE__ */ jsx138(
38394
38825
  "div",
38395
38826
  {
38396
38827
  className: cn(
@@ -38401,7 +38832,7 @@ var Sidebar = React99.forwardRef(
38401
38832
  className
38402
38833
  ),
38403
38834
  ...props,
38404
- children: /* @__PURE__ */ jsx133(
38835
+ children: /* @__PURE__ */ jsx138(
38405
38836
  "div",
38406
38837
  {
38407
38838
  "data-sidebar": "sidebar",
@@ -38417,9 +38848,9 @@ var Sidebar = React99.forwardRef(
38417
38848
  }
38418
38849
  );
38419
38850
  Sidebar.displayName = "Sidebar";
38420
- var SidebarTrigger = React99.forwardRef(({ className, onClick, ...props }, ref) => {
38851
+ var SidebarTrigger = React100.forwardRef(({ className, onClick, ...props }, ref) => {
38421
38852
  const { toggleSidebar } = useSidebar();
38422
- return /* @__PURE__ */ jsxs87(
38853
+ return /* @__PURE__ */ jsxs92(
38423
38854
  Button,
38424
38855
  {
38425
38856
  ref,
@@ -38433,16 +38864,16 @@ var SidebarTrigger = React99.forwardRef(({ className, onClick, ...props }, ref)
38433
38864
  },
38434
38865
  ...props,
38435
38866
  children: [
38436
- /* @__PURE__ */ jsx133(PanelLeft, {}),
38437
- /* @__PURE__ */ jsx133("span", { className: "sr-only", children: "Toggle Sidebar" })
38867
+ /* @__PURE__ */ jsx138(PanelLeft, {}),
38868
+ /* @__PURE__ */ jsx138("span", { className: "sr-only", children: "Toggle Sidebar" })
38438
38869
  ]
38439
38870
  }
38440
38871
  );
38441
38872
  });
38442
38873
  SidebarTrigger.displayName = "SidebarTrigger";
38443
- var SidebarRail = React99.forwardRef(({ className, ...props }, ref) => {
38874
+ var SidebarRail = React100.forwardRef(({ className, ...props }, ref) => {
38444
38875
  const { toggleSidebar } = useSidebar();
38445
- return /* @__PURE__ */ jsx133(
38876
+ return /* @__PURE__ */ jsx138(
38446
38877
  "button",
38447
38878
  {
38448
38879
  ref,
@@ -38465,8 +38896,8 @@ var SidebarRail = React99.forwardRef(({ className, ...props }, ref) => {
38465
38896
  );
38466
38897
  });
38467
38898
  SidebarRail.displayName = "SidebarRail";
38468
- var SidebarInset = React99.forwardRef(({ className, ...props }, ref) => {
38469
- return /* @__PURE__ */ jsx133(
38899
+ var SidebarInset = React100.forwardRef(({ className, ...props }, ref) => {
38900
+ return /* @__PURE__ */ jsx138(
38470
38901
  "main",
38471
38902
  {
38472
38903
  ref,
@@ -38480,8 +38911,8 @@ var SidebarInset = React99.forwardRef(({ className, ...props }, ref) => {
38480
38911
  );
38481
38912
  });
38482
38913
  SidebarInset.displayName = "SidebarInset";
38483
- var SidebarInput = React99.forwardRef(({ className, ...props }, ref) => {
38484
- return /* @__PURE__ */ jsx133(
38914
+ var SidebarInput = React100.forwardRef(({ className, ...props }, ref) => {
38915
+ return /* @__PURE__ */ jsx138(
38485
38916
  Input,
38486
38917
  {
38487
38918
  ref,
@@ -38495,8 +38926,8 @@ var SidebarInput = React99.forwardRef(({ className, ...props }, ref) => {
38495
38926
  );
38496
38927
  });
38497
38928
  SidebarInput.displayName = "SidebarInput";
38498
- var SidebarHeader = React99.forwardRef(({ className, ...props }, ref) => {
38499
- return /* @__PURE__ */ jsx133(
38929
+ var SidebarHeader = React100.forwardRef(({ className, ...props }, ref) => {
38930
+ return /* @__PURE__ */ jsx138(
38500
38931
  "div",
38501
38932
  {
38502
38933
  ref,
@@ -38507,8 +38938,8 @@ var SidebarHeader = React99.forwardRef(({ className, ...props }, ref) => {
38507
38938
  );
38508
38939
  });
38509
38940
  SidebarHeader.displayName = "SidebarHeader";
38510
- var SidebarFooter = React99.forwardRef(({ className, ...props }, ref) => {
38511
- return /* @__PURE__ */ jsx133(
38941
+ var SidebarFooter = React100.forwardRef(({ className, ...props }, ref) => {
38942
+ return /* @__PURE__ */ jsx138(
38512
38943
  "div",
38513
38944
  {
38514
38945
  ref,
@@ -38519,8 +38950,8 @@ var SidebarFooter = React99.forwardRef(({ className, ...props }, ref) => {
38519
38950
  );
38520
38951
  });
38521
38952
  SidebarFooter.displayName = "SidebarFooter";
38522
- var SidebarSeparator = React99.forwardRef(({ className, ...props }, ref) => {
38523
- return /* @__PURE__ */ jsx133(
38953
+ var SidebarSeparator = React100.forwardRef(({ className, ...props }, ref) => {
38954
+ return /* @__PURE__ */ jsx138(
38524
38955
  Separator2,
38525
38956
  {
38526
38957
  ref,
@@ -38531,8 +38962,8 @@ var SidebarSeparator = React99.forwardRef(({ className, ...props }, ref) => {
38531
38962
  );
38532
38963
  });
38533
38964
  SidebarSeparator.displayName = "SidebarSeparator";
38534
- var SidebarContent = React99.forwardRef(({ className, ...props }, ref) => {
38535
- return /* @__PURE__ */ jsx133(
38965
+ var SidebarContent = React100.forwardRef(({ className, ...props }, ref) => {
38966
+ return /* @__PURE__ */ jsx138(
38536
38967
  "div",
38537
38968
  {
38538
38969
  ref,
@@ -38546,8 +38977,8 @@ var SidebarContent = React99.forwardRef(({ className, ...props }, ref) => {
38546
38977
  );
38547
38978
  });
38548
38979
  SidebarContent.displayName = "SidebarContent";
38549
- var SidebarGroup = React99.forwardRef(({ className, ...props }, ref) => {
38550
- return /* @__PURE__ */ jsx133(
38980
+ var SidebarGroup = React100.forwardRef(({ className, ...props }, ref) => {
38981
+ return /* @__PURE__ */ jsx138(
38551
38982
  "div",
38552
38983
  {
38553
38984
  ref,
@@ -38558,9 +38989,9 @@ var SidebarGroup = React99.forwardRef(({ className, ...props }, ref) => {
38558
38989
  );
38559
38990
  });
38560
38991
  SidebarGroup.displayName = "SidebarGroup";
38561
- var SidebarGroupLabel = React99.forwardRef(({ className, asChild = false, ...props }, ref) => {
38992
+ var SidebarGroupLabel = React100.forwardRef(({ className, asChild = false, ...props }, ref) => {
38562
38993
  const Comp = asChild ? Slot6 : "div";
38563
- return /* @__PURE__ */ jsx133(
38994
+ return /* @__PURE__ */ jsx138(
38564
38995
  Comp,
38565
38996
  {
38566
38997
  ref,
@@ -38575,9 +39006,9 @@ var SidebarGroupLabel = React99.forwardRef(({ className, asChild = false, ...pro
38575
39006
  );
38576
39007
  });
38577
39008
  SidebarGroupLabel.displayName = "SidebarGroupLabel";
38578
- var SidebarGroupAction = React99.forwardRef(({ className, asChild = false, ...props }, ref) => {
39009
+ var SidebarGroupAction = React100.forwardRef(({ className, asChild = false, ...props }, ref) => {
38579
39010
  const Comp = asChild ? Slot6 : "button";
38580
- return /* @__PURE__ */ jsx133(
39011
+ return /* @__PURE__ */ jsx138(
38581
39012
  Comp,
38582
39013
  {
38583
39014
  ref,
@@ -38594,7 +39025,7 @@ var SidebarGroupAction = React99.forwardRef(({ className, asChild = false, ...pr
38594
39025
  );
38595
39026
  });
38596
39027
  SidebarGroupAction.displayName = "SidebarGroupAction";
38597
- var SidebarGroupContent = React99.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx133(
39028
+ var SidebarGroupContent = React100.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx138(
38598
39029
  "div",
38599
39030
  {
38600
39031
  ref,
@@ -38604,7 +39035,7 @@ var SidebarGroupContent = React99.forwardRef(({ className, ...props }, ref) => /
38604
39035
  }
38605
39036
  ));
38606
39037
  SidebarGroupContent.displayName = "SidebarGroupContent";
38607
- var SidebarMenu = React99.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx133(
39038
+ var SidebarMenu = React100.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx138(
38608
39039
  "ul",
38609
39040
  {
38610
39041
  ref,
@@ -38614,7 +39045,7 @@ var SidebarMenu = React99.forwardRef(({ className, ...props }, ref) => /* @__PUR
38614
39045
  }
38615
39046
  ));
38616
39047
  SidebarMenu.displayName = "SidebarMenu";
38617
- var SidebarMenuItem = React99.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx133(
39048
+ var SidebarMenuItem = React100.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx138(
38618
39049
  "li",
38619
39050
  {
38620
39051
  ref,
@@ -38644,7 +39075,7 @@ var sidebarMenuButtonVariants = cva13(
38644
39075
  }
38645
39076
  }
38646
39077
  );
38647
- var SidebarMenuButton = React99.forwardRef(
39078
+ var SidebarMenuButton = React100.forwardRef(
38648
39079
  ({
38649
39080
  asChild = false,
38650
39081
  isActive = false,
@@ -38656,7 +39087,7 @@ var SidebarMenuButton = React99.forwardRef(
38656
39087
  }, ref) => {
38657
39088
  const Comp = asChild ? Slot6 : "button";
38658
39089
  const { isMobile, state } = useSidebar();
38659
- const button = /* @__PURE__ */ jsx133(
39090
+ const button = /* @__PURE__ */ jsx138(
38660
39091
  Comp,
38661
39092
  {
38662
39093
  ref,
@@ -38675,9 +39106,9 @@ var SidebarMenuButton = React99.forwardRef(
38675
39106
  children: tooltip
38676
39107
  };
38677
39108
  }
38678
- return /* @__PURE__ */ jsxs87(Tooltip, { children: [
38679
- /* @__PURE__ */ jsx133(TooltipTrigger, { asChild: true, children: button }),
38680
- /* @__PURE__ */ jsx133(
39109
+ return /* @__PURE__ */ jsxs92(Tooltip, { children: [
39110
+ /* @__PURE__ */ jsx138(TooltipTrigger, { asChild: true, children: button }),
39111
+ /* @__PURE__ */ jsx138(
38681
39112
  TooltipContent,
38682
39113
  {
38683
39114
  side: "right",
@@ -38690,9 +39121,9 @@ var SidebarMenuButton = React99.forwardRef(
38690
39121
  }
38691
39122
  );
38692
39123
  SidebarMenuButton.displayName = "SidebarMenuButton";
38693
- var SidebarMenuAction = React99.forwardRef(({ className, asChild = false, showOnHover = false, ...props }, ref) => {
39124
+ var SidebarMenuAction = React100.forwardRef(({ className, asChild = false, showOnHover = false, ...props }, ref) => {
38694
39125
  const Comp = asChild ? Slot6 : "button";
38695
- return /* @__PURE__ */ jsx133(
39126
+ return /* @__PURE__ */ jsx138(
38696
39127
  Comp,
38697
39128
  {
38698
39129
  ref,
@@ -38713,7 +39144,7 @@ var SidebarMenuAction = React99.forwardRef(({ className, asChild = false, showOn
38713
39144
  );
38714
39145
  });
38715
39146
  SidebarMenuAction.displayName = "SidebarMenuAction";
38716
- var SidebarMenuBadge = React99.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx133(
39147
+ var SidebarMenuBadge = React100.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx138(
38717
39148
  "div",
38718
39149
  {
38719
39150
  ref,
@@ -38731,11 +39162,11 @@ var SidebarMenuBadge = React99.forwardRef(({ className, ...props }, ref) => /* @
38731
39162
  }
38732
39163
  ));
38733
39164
  SidebarMenuBadge.displayName = "SidebarMenuBadge";
38734
- var SidebarMenuSkeleton = React99.forwardRef(({ className, showIcon = false, ...props }, ref) => {
38735
- const width = React99.useMemo(() => {
39165
+ var SidebarMenuSkeleton = React100.forwardRef(({ className, showIcon = false, ...props }, ref) => {
39166
+ const width = React100.useMemo(() => {
38736
39167
  return `${Math.floor(Math.random() * 40) + 50}%`;
38737
39168
  }, []);
38738
- return /* @__PURE__ */ jsxs87(
39169
+ return /* @__PURE__ */ jsxs92(
38739
39170
  "div",
38740
39171
  {
38741
39172
  ref,
@@ -38743,14 +39174,14 @@ var SidebarMenuSkeleton = React99.forwardRef(({ className, showIcon = false, ...
38743
39174
  className: cn("flex h-8 items-center gap-2 rounded-md px-2", className),
38744
39175
  ...props,
38745
39176
  children: [
38746
- showIcon && /* @__PURE__ */ jsx133(
39177
+ showIcon && /* @__PURE__ */ jsx138(
38747
39178
  Skeleton,
38748
39179
  {
38749
39180
  className: "size-4 rounded-md",
38750
39181
  "data-sidebar": "menu-skeleton-icon"
38751
39182
  }
38752
39183
  ),
38753
- /* @__PURE__ */ jsx133(
39184
+ /* @__PURE__ */ jsx138(
38754
39185
  Skeleton,
38755
39186
  {
38756
39187
  className: "h-4 max-w-[--skeleton-width] flex-1",
@@ -38765,7 +39196,7 @@ var SidebarMenuSkeleton = React99.forwardRef(({ className, showIcon = false, ...
38765
39196
  );
38766
39197
  });
38767
39198
  SidebarMenuSkeleton.displayName = "SidebarMenuSkeleton";
38768
- var SidebarMenuSub = React99.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx133(
39199
+ var SidebarMenuSub = React100.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx138(
38769
39200
  "ul",
38770
39201
  {
38771
39202
  ref,
@@ -38779,11 +39210,11 @@ var SidebarMenuSub = React99.forwardRef(({ className, ...props }, ref) => /* @__
38779
39210
  }
38780
39211
  ));
38781
39212
  SidebarMenuSub.displayName = "SidebarMenuSub";
38782
- var SidebarMenuSubItem = React99.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsx133("li", { ref, ...props }));
39213
+ var SidebarMenuSubItem = React100.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsx138("li", { ref, ...props }));
38783
39214
  SidebarMenuSubItem.displayName = "SidebarMenuSubItem";
38784
- var SidebarMenuSubButton = React99.forwardRef(({ asChild = false, size = "md", isActive, className, ...props }, ref) => {
39215
+ var SidebarMenuSubButton = React100.forwardRef(({ asChild = false, size = "md", isActive, className, ...props }, ref) => {
38785
39216
  const Comp = asChild ? Slot6 : "a";
38786
- return /* @__PURE__ */ jsx133(
39217
+ return /* @__PURE__ */ jsx138(
38787
39218
  Comp,
38788
39219
  {
38789
39220
  ref,
@@ -38807,20 +39238,20 @@ SidebarMenuSubButton.displayName = "SidebarMenuSubButton";
38807
39238
  // src/components/ui/sonner.tsx
38808
39239
  import { useTheme } from "next-themes";
38809
39240
  import { Toaster as Sonner } from "sonner";
38810
- import { jsx as jsx134 } from "react/jsx-runtime";
39241
+ import { jsx as jsx139 } from "react/jsx-runtime";
38811
39242
  var Toaster = ({ ...props }) => {
38812
39243
  const { theme = "system" } = useTheme();
38813
- return /* @__PURE__ */ jsx134(
39244
+ return /* @__PURE__ */ jsx139(
38814
39245
  Sonner,
38815
39246
  {
38816
39247
  theme,
38817
39248
  className: "toaster group",
38818
39249
  icons: {
38819
- success: /* @__PURE__ */ jsx134(CircleCheck, { className: "h-4 w-4" }),
38820
- info: /* @__PURE__ */ jsx134(Info, { className: "h-4 w-4" }),
38821
- warning: /* @__PURE__ */ jsx134(TriangleAlert, { className: "h-4 w-4" }),
38822
- error: /* @__PURE__ */ jsx134(OctagonX, { className: "h-4 w-4" }),
38823
- loading: /* @__PURE__ */ jsx134(LoaderCircle, { className: "h-4 w-4 animate-spin" })
39250
+ success: /* @__PURE__ */ jsx139(CircleCheck, { className: "h-4 w-4" }),
39251
+ info: /* @__PURE__ */ jsx139(Info, { className: "h-4 w-4" }),
39252
+ warning: /* @__PURE__ */ jsx139(TriangleAlert, { className: "h-4 w-4" }),
39253
+ error: /* @__PURE__ */ jsx139(OctagonX, { className: "h-4 w-4" }),
39254
+ loading: /* @__PURE__ */ jsx139(LoaderCircle, { className: "h-4 w-4 animate-spin" })
38824
39255
  },
38825
39256
  toastOptions: {
38826
39257
  classNames: {
@@ -38836,26 +39267,26 @@ var Toaster = ({ ...props }) => {
38836
39267
  };
38837
39268
 
38838
39269
  // src/components/ui/toggle-group.tsx
38839
- import * as React100 from "react";
39270
+ import * as React101 from "react";
38840
39271
  import * as ToggleGroupPrimitive from "@radix-ui/react-toggle-group";
38841
- import { jsx as jsx135 } from "react/jsx-runtime";
38842
- var ToggleGroupContext = React100.createContext({
39272
+ import { jsx as jsx140 } from "react/jsx-runtime";
39273
+ var ToggleGroupContext = React101.createContext({
38843
39274
  size: "default",
38844
39275
  variant: "default"
38845
39276
  });
38846
- var ToggleGroup = React100.forwardRef(({ className, variant, size, children, ...props }, ref) => /* @__PURE__ */ jsx135(
39277
+ var ToggleGroup = React101.forwardRef(({ className, variant, size, children, ...props }, ref) => /* @__PURE__ */ jsx140(
38847
39278
  ToggleGroupPrimitive.Root,
38848
39279
  {
38849
39280
  ref,
38850
39281
  className: cn("flex items-center justify-center gap-1", className),
38851
39282
  ...props,
38852
- children: /* @__PURE__ */ jsx135(ToggleGroupContext.Provider, { value: { variant, size }, children })
39283
+ children: /* @__PURE__ */ jsx140(ToggleGroupContext.Provider, { value: { variant, size }, children })
38853
39284
  }
38854
39285
  ));
38855
39286
  ToggleGroup.displayName = ToggleGroupPrimitive.Root.displayName;
38856
- var ToggleGroupItem = React100.forwardRef(({ className, children, variant, size, ...props }, ref) => {
38857
- const context = React100.useContext(ToggleGroupContext);
38858
- return /* @__PURE__ */ jsx135(
39287
+ var ToggleGroupItem = React101.forwardRef(({ className, children, variant, size, ...props }, ref) => {
39288
+ const context = React101.useContext(ToggleGroupContext);
39289
+ return /* @__PURE__ */ jsx140(
38859
39290
  ToggleGroupPrimitive.Item,
38860
39291
  {
38861
39292
  ref,
@@ -38874,7 +39305,7 @@ var ToggleGroupItem = React100.forwardRef(({ className, children, variant, size,
38874
39305
  ToggleGroupItem.displayName = ToggleGroupPrimitive.Item.displayName;
38875
39306
 
38876
39307
  // src/render/PXEngineRenderer.tsx
38877
- import { jsx as jsx136, jsxs as jsxs88 } from "react/jsx-runtime";
39308
+ import { jsx as jsx141, jsxs as jsxs93 } from "react/jsx-runtime";
38878
39309
  var CONTEXT_DEPENDENT_COMPONENTS = /* @__PURE__ */ new Set([
38879
39310
  // Form components - require FormField + FormItem context
38880
39311
  "FormLabel",
@@ -38966,24 +39397,24 @@ var COMPONENT_SUGGESTIONS = {
38966
39397
  };
38967
39398
  var renderContextDependentError = (componentName, normalizedName, key) => {
38968
39399
  const suggestion = COMPONENT_SUGGESTIONS[normalizedName] || `${componentName}Atom (if available)`;
38969
- return /* @__PURE__ */ jsxs88(
39400
+ return /* @__PURE__ */ jsxs93(
38970
39401
  "div",
38971
39402
  {
38972
39403
  className: "p-4 border-2 border-amber-500/50 rounded-lg bg-amber-50/80 space-y-2 my-2",
38973
39404
  children: [
38974
- /* @__PURE__ */ jsxs88("div", { className: "flex items-start gap-2", children: [
38975
- /* @__PURE__ */ jsx136("span", { className: "text-amber-600 font-bold text-lg", children: "\u26A0\uFE0F" }),
38976
- /* @__PURE__ */ jsxs88("div", { className: "flex-1", children: [
38977
- /* @__PURE__ */ jsxs88("p", { className: "text-sm font-semibold text-amber-900", children: [
39405
+ /* @__PURE__ */ jsxs93("div", { className: "flex items-start gap-2", children: [
39406
+ /* @__PURE__ */ jsx141("span", { className: "text-amber-600 font-bold text-lg", children: "\u26A0\uFE0F" }),
39407
+ /* @__PURE__ */ jsxs93("div", { className: "flex-1", children: [
39408
+ /* @__PURE__ */ jsxs93("p", { className: "text-sm font-semibold text-amber-900", children: [
38978
39409
  "Invalid Component: ",
38979
39410
  componentName
38980
39411
  ] }),
38981
- /* @__PURE__ */ jsx136("p", { className: "text-xs text-amber-700 mt-1", children: "This component requires React Context and cannot be rendered directly in schemas." })
39412
+ /* @__PURE__ */ jsx141("p", { className: "text-xs text-amber-700 mt-1", children: "This component requires React Context and cannot be rendered directly in schemas." })
38982
39413
  ] })
38983
39414
  ] }),
38984
- /* @__PURE__ */ jsxs88("div", { className: "bg-white/60 p-3 rounded border border-amber-200", children: [
38985
- /* @__PURE__ */ jsx136("p", { className: "text-xs font-semibold text-gray-700 mb-1.5", children: "\u2713 Use instead:" }),
38986
- /* @__PURE__ */ jsx136("code", { className: "text-xs text-blue-700 bg-blue-50 px-2 py-1 rounded", children: suggestion })
39415
+ /* @__PURE__ */ jsxs93("div", { className: "bg-white/60 p-3 rounded border border-amber-200", children: [
39416
+ /* @__PURE__ */ jsx141("p", { className: "text-xs font-semibold text-gray-700 mb-1.5", children: "\u2713 Use instead:" }),
39417
+ /* @__PURE__ */ jsx141("code", { className: "text-xs text-blue-700 bg-blue-50 px-2 py-1 rounded", children: suggestion })
38987
39418
  ] })
38988
39419
  ]
38989
39420
  },
@@ -39063,7 +39494,7 @@ var PXEngineRenderer = ({
39063
39494
  if (typeof component === "string" || typeof component === "number") {
39064
39495
  return component;
39065
39496
  }
39066
- if (React101.isValidElement(component)) {
39497
+ if (React102.isValidElement(component)) {
39067
39498
  return component;
39068
39499
  }
39069
39500
  if (!component || typeof component !== "object") return null;
@@ -39119,6 +39550,7 @@ var PXEngineRenderer = ({
39119
39550
  console.warn(
39120
39551
  `[PXEngineRenderer] Component not found: ${componentName}`
39121
39552
  );
39553
+ return null;
39122
39554
  }
39123
39555
  }
39124
39556
  const resolvedNormalized = resolvedIdentifier.charAt(0).toUpperCase() + resolvedIdentifier.slice(1);
@@ -39141,7 +39573,7 @@ var PXEngineRenderer = ({
39141
39573
  const isAtomWithRenderProp = ATOMS_WITH_RENDER.has(atomName);
39142
39574
  const finalStyle = { ...dynamicStyle, ...finalProps.style || {} };
39143
39575
  if (isAtomWithRenderProp) {
39144
- return /* @__PURE__ */ jsx136(
39576
+ return /* @__PURE__ */ jsx141(
39145
39577
  TargetComponent,
39146
39578
  {
39147
39579
  ...finalProps,
@@ -39153,7 +39585,7 @@ var PXEngineRenderer = ({
39153
39585
  uniqueKey
39154
39586
  );
39155
39587
  } else {
39156
- return /* @__PURE__ */ jsx136(
39588
+ return /* @__PURE__ */ jsx141(
39157
39589
  TargetComponent,
39158
39590
  {
39159
39591
  ...finalProps,
@@ -39165,7 +39597,7 @@ var PXEngineRenderer = ({
39165
39597
  );
39166
39598
  }
39167
39599
  };
39168
- return /* @__PURE__ */ jsx136("div", { className: "px-engine-root relative w-full h-full", children: renderRecursive(root) });
39600
+ return /* @__PURE__ */ jsx141("div", { className: "px-engine-root relative w-full h-full", children: renderRecursive(root) });
39169
39601
  };
39170
39602
  export {
39171
39603
  Accordion,
@@ -39338,6 +39770,9 @@ export {
39338
39770
  MenubarSeparator,
39339
39771
  MenubarShortcut,
39340
39772
  MenubarTrigger,
39773
+ MultiAgentCard,
39774
+ MultiAgentPlan,
39775
+ MultiAgentUISelector,
39341
39776
  NavigationMenu,
39342
39777
  NavigationMenuContent,
39343
39778
  NavigationMenuItem,
@@ -39402,6 +39837,7 @@ export {
39402
39837
  SliderAtom,
39403
39838
  Spinner,
39404
39839
  SpinnerAtom,
39840
+ StageIndicator,
39405
39841
  StatsGrid,
39406
39842
  StepWizard,
39407
39843
  Switch,
@@ -39432,6 +39868,7 @@ export {
39432
39868
  TooltipProvider,
39433
39869
  TooltipTrigger,
39434
39870
  TopPostsGrid,
39871
+ UIComponentSelector,
39435
39872
  VideoAtom,
39436
39873
  WorkflowVisualizer,
39437
39874
  cn