@datatechsolutions/ui 2.11.65 → 2.11.66

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.
@@ -16415,50 +16415,58 @@ var DashboardDemo = ({
16415
16415
  }
16416
16416
  );
16417
16417
  };
16418
+ var DEFAULT_THEME = {
16419
+ runButtonGradient: "from-indigo-600 to-violet-600",
16420
+ runButtonShadow: "shadow-indigo-500/20",
16421
+ stepActiveBg: "bg-indigo-500",
16422
+ activeRing: "ring-indigo-500/60",
16423
+ activeEdgeStroke: "#818cf8",
16424
+ completeEdgeStroke: "#10b981",
16425
+ badge: "bg-indigo-500/15 text-indigo-700 dark:text-indigo-300"
16426
+ };
16418
16427
  var NODE_TYPE_META = {
16419
- start: { icon: HeroIcons.PlayIcon, color: "text-emerald-300", bg: "bg-emerald-500/15", glow: "rgba(16,185,129,0.45)" },
16420
- end: { icon: HeroIcons.CheckCircleIcon, color: "text-emerald-300", bg: "bg-emerald-500/15", glow: "rgba(16,185,129,0.45)" },
16421
- datasource: { icon: HeroIcons.CircleStackIcon, color: "text-sky-300", bg: "bg-sky-500/15", glow: "rgba(14,165,233,0.45)" },
16422
- entity: { icon: HeroIcons.RectangleStackIcon, color: "text-sky-300", bg: "bg-sky-500/15", glow: "rgba(14,165,233,0.45)" },
16423
- http_request: { icon: HeroIcons.CloudIcon, color: "text-cyan-300", bg: "bg-cyan-500/15", glow: "rgba(34,211,238,0.45)" },
16424
- knowledge_base: { icon: HeroIcons.ServerStackIcon, color: "text-cyan-300", bg: "bg-cyan-500/15", glow: "rgba(34,211,238,0.45)" },
16425
- agent: { icon: HeroIcons.CpuChipIcon, color: "text-purple-300", bg: "bg-purple-500/15", glow: "rgba(168,85,247,0.5)" },
16426
- agent_tool: { icon: HeroIcons.BeakerIcon, color: "text-violet-300", bg: "bg-violet-500/15", glow: "rgba(139,92,246,0.5)" },
16427
- tool: { icon: HeroIcons.BeakerIcon, color: "text-violet-300", bg: "bg-violet-500/15", glow: "rgba(139,92,246,0.5)" },
16428
- code: { icon: HeroIcons.CodeBracketIcon, color: "text-amber-300", bg: "bg-amber-500/15", glow: "rgba(245,158,11,0.45)" },
16429
- template_transform: { icon: HeroIcons.DocumentTextIcon, color: "text-amber-300", bg: "bg-amber-500/15", glow: "rgba(245,158,11,0.45)" },
16430
- if_else: { icon: HeroIcons.BoltIcon, color: "text-orange-300", bg: "bg-orange-500/15", glow: "rgba(251,146,60,0.5)" },
16431
- question_classifier: { icon: HeroIcons.BoltIcon, color: "text-orange-300", bg: "bg-orange-500/15", glow: "rgba(251,146,60,0.5)" },
16432
- parameter_extractor: { icon: HeroIcons.AdjustmentsHorizontalIcon, color: "text-orange-300", bg: "bg-orange-500/15", glow: "rgba(251,146,60,0.5)" },
16433
- variable_aggregator: { icon: HeroIcons.AdjustmentsHorizontalIcon, color: "text-yellow-300", bg: "bg-yellow-500/15", glow: "rgba(234,179,8,0.45)" },
16434
- variable_assigner: { icon: HeroIcons.AdjustmentsHorizontalIcon, color: "text-yellow-300", bg: "bg-yellow-500/15", glow: "rgba(234,179,8,0.45)" },
16435
- iteration: { icon: HeroIcons.ArrowPathIcon, color: "text-fuchsia-300", bg: "bg-fuchsia-500/15", glow: "rgba(232,121,249,0.5)" },
16436
- iteration_start: { icon: HeroIcons.ArrowPathIcon, color: "text-fuchsia-300", bg: "bg-fuchsia-500/15", glow: "rgba(232,121,249,0.5)" },
16437
- list_operator: { icon: HeroIcons.AdjustmentsHorizontalIcon, color: "text-fuchsia-300", bg: "bg-fuchsia-500/15", glow: "rgba(232,121,249,0.5)" },
16438
- answer: { icon: HeroIcons.ChartBarIcon, color: "text-emerald-300", bg: "bg-emerald-500/15", glow: "rgba(16,185,129,0.45)" },
16439
- dashboard_output: { icon: HeroIcons.ChartBarIcon, color: "text-emerald-300", bg: "bg-emerald-500/15", glow: "rgba(16,185,129,0.45)" },
16440
- rule: { icon: HeroIcons.BoltIcon, color: "text-rose-300", bg: "bg-rose-500/15", glow: "rgba(244,63,94,0.5)" },
16441
- document_extractor: { icon: HeroIcons.DocumentTextIcon, color: "text-amber-300", bg: "bg-amber-500/15", glow: "rgba(245,158,11,0.45)" },
16442
- model_provider: { icon: HeroIcons.CpuChipIcon, color: "text-violet-300", bg: "bg-violet-500/15", glow: "rgba(139,92,246,0.5)" },
16443
- note: { icon: HeroIcons.DocumentTextIcon, color: "text-slate-300", bg: "bg-slate-500/15", glow: "rgba(100,116,139,0.4)" },
16444
- group: { icon: HeroIcons.RectangleStackIcon, color: "text-slate-300", bg: "bg-slate-500/15", glow: "rgba(100,116,139,0.4)" }
16428
+ start: { icon: HeroIcons.PlayIcon, color: "text-emerald-300", bg: "bg-emerald-500/15", glow: "rgba(16,185,129,0.45)", tag: "start" },
16429
+ end: { icon: HeroIcons.CheckCircleIcon, color: "text-emerald-300", bg: "bg-emerald-500/15", glow: "rgba(16,185,129,0.45)", tag: "end" },
16430
+ datasource: { icon: HeroIcons.CircleStackIcon, color: "text-sky-300", bg: "bg-sky-500/15", glow: "rgba(14,165,233,0.45)", tag: "datasource" },
16431
+ entity: { icon: HeroIcons.RectangleStackIcon, color: "text-sky-300", bg: "bg-sky-500/15", glow: "rgba(14,165,233,0.45)", tag: "entity" },
16432
+ http_request: { icon: HeroIcons.CloudIcon, color: "text-cyan-300", bg: "bg-cyan-500/15", glow: "rgba(34,211,238,0.45)", tag: "http" },
16433
+ knowledge_base: { icon: HeroIcons.ServerStackIcon, color: "text-cyan-300", bg: "bg-cyan-500/15", glow: "rgba(34,211,238,0.45)", tag: "kb" },
16434
+ agent: { icon: HeroIcons.CpuChipIcon, color: "text-purple-300", bg: "bg-purple-500/15", glow: "rgba(168,85,247,0.5)", tag: "agent" },
16435
+ agent_tool: { icon: HeroIcons.BeakerIcon, color: "text-violet-300", bg: "bg-violet-500/15", glow: "rgba(139,92,246,0.5)", tag: "agent.tool" },
16436
+ tool: { icon: HeroIcons.BeakerIcon, color: "text-violet-300", bg: "bg-violet-500/15", glow: "rgba(139,92,246,0.5)", tag: "tool" },
16437
+ code: { icon: HeroIcons.CodeBracketIcon, color: "text-amber-300", bg: "bg-amber-500/15", glow: "rgba(245,158,11,0.45)", tag: "code" },
16438
+ template_transform: { icon: HeroIcons.DocumentTextIcon, color: "text-amber-300", bg: "bg-amber-500/15", glow: "rgba(245,158,11,0.45)", tag: "template" },
16439
+ if_else: { icon: HeroIcons.BoltIcon, color: "text-orange-300", bg: "bg-orange-500/15", glow: "rgba(251,146,60,0.5)", tag: "branch" },
16440
+ question_classifier: { icon: HeroIcons.BoltIcon, color: "text-orange-300", bg: "bg-orange-500/15", glow: "rgba(251,146,60,0.5)", tag: "classifier" },
16441
+ parameter_extractor: { icon: HeroIcons.AdjustmentsHorizontalIcon, color: "text-orange-300", bg: "bg-orange-500/15", glow: "rgba(251,146,60,0.5)", tag: "extractor" },
16442
+ variable_aggregator: { icon: HeroIcons.AdjustmentsHorizontalIcon, color: "text-yellow-300", bg: "bg-yellow-500/15", glow: "rgba(234,179,8,0.45)", tag: "aggregate" },
16443
+ variable_assigner: { icon: HeroIcons.AdjustmentsHorizontalIcon, color: "text-yellow-300", bg: "bg-yellow-500/15", glow: "rgba(234,179,8,0.45)", tag: "assign" },
16444
+ iteration: { icon: HeroIcons.ArrowPathIcon, color: "text-fuchsia-300", bg: "bg-fuchsia-500/15", glow: "rgba(232,121,249,0.5)", tag: "iterate" },
16445
+ iteration_start: { icon: HeroIcons.ArrowPathIcon, color: "text-fuchsia-300", bg: "bg-fuchsia-500/15", glow: "rgba(232,121,249,0.5)", tag: "iterate.start" },
16446
+ list_operator: { icon: HeroIcons.AdjustmentsHorizontalIcon, color: "text-fuchsia-300", bg: "bg-fuchsia-500/15", glow: "rgba(232,121,249,0.5)", tag: "list" },
16447
+ answer: { icon: HeroIcons.ChartBarIcon, color: "text-emerald-300", bg: "bg-emerald-500/15", glow: "rgba(16,185,129,0.45)", tag: "answer" },
16448
+ dashboard_output: { icon: HeroIcons.ChartBarIcon, color: "text-emerald-300", bg: "bg-emerald-500/15", glow: "rgba(16,185,129,0.45)", tag: "dashboard" },
16449
+ rule: { icon: HeroIcons.BoltIcon, color: "text-rose-300", bg: "bg-rose-500/15", glow: "rgba(244,63,94,0.5)", tag: "rule" },
16450
+ document_extractor: { icon: HeroIcons.DocumentTextIcon, color: "text-amber-300", bg: "bg-amber-500/15", glow: "rgba(245,158,11,0.45)", tag: "extract" },
16451
+ model_provider: { icon: HeroIcons.CpuChipIcon, color: "text-violet-300", bg: "bg-violet-500/15", glow: "rgba(139,92,246,0.5)", tag: "model" },
16452
+ note: { icon: HeroIcons.DocumentTextIcon, color: "text-slate-300", bg: "bg-slate-500/15", glow: "rgba(100,116,139,0.4)", tag: "note" },
16453
+ group: { icon: HeroIcons.RectangleStackIcon, color: "text-slate-300", bg: "bg-slate-500/15", glow: "rgba(100,116,139,0.4)", tag: "group" }
16445
16454
  };
16446
- var FALLBACK_META = { icon: HeroIcons.BoltIcon, color: "text-gray-300", bg: "bg-gray-500/15", glow: "rgba(100,116,139,0.4)" };
16455
+ var FALLBACK_META = { icon: HeroIcons.BoltIcon, color: "text-gray-300", bg: "bg-gray-500/15", glow: "rgba(100,116,139,0.4)", tag: "node" };
16447
16456
  function getNodeMeta(type) {
16448
16457
  return NODE_TYPE_META[type] ?? FALLBACK_META;
16449
16458
  }
16450
- var NODE_W = 180;
16451
- var NODE_H = 80;
16452
- var PADDING = 24;
16453
16459
  function DepartmentWorkflowDemo({
16454
16460
  workflow,
16455
16461
  stepDurationMs = 1100,
16456
16462
  autoPlay = false,
16457
16463
  className,
16458
16464
  hideHeader = false,
16459
- onComplete
16465
+ onComplete,
16466
+ theme
16460
16467
  }) {
16461
- const { graph, steps, title, description, accentBadge = "bg-indigo-500/15 text-indigo-300", completionSummary } = workflow;
16468
+ const t = { ...DEFAULT_THEME, ...theme };
16469
+ const { graph, steps, title, description, accentBadge, completionSummary } = workflow;
16462
16470
  const [stepIndex, setStepIndex] = React12.useState(-1);
16463
16471
  const intervalRef = React12.useRef(null);
16464
16472
  const completedRef = React12.useRef(false);
@@ -16466,6 +16474,20 @@ function DepartmentWorkflowDemo({
16466
16474
  const isIdle = stepIndex === -1;
16467
16475
  const isRunning = stepIndex >= 0 && stepIndex < total - 1;
16468
16476
  const isComplete = stepIndex === total - 1 && total > 0;
16477
+ const columns = React12.useMemo(() => {
16478
+ const stepByNode = /* @__PURE__ */ new Map();
16479
+ steps.forEach((s, idx) => {
16480
+ for (const id of s.nodes) {
16481
+ if (!stepByNode.has(id)) stepByNode.set(id, idx);
16482
+ }
16483
+ });
16484
+ const cols = steps.map(() => []);
16485
+ for (const node2 of graph.nodes) {
16486
+ const idx = stepByNode.get(node2.id);
16487
+ if (idx !== void 0) cols[idx].push(node2);
16488
+ }
16489
+ return cols.map((col, i) => ({ stepIndex: i, nodes: col, label: steps[i]?.label ?? "" })).filter((c) => c.nodes.length > 0);
16490
+ }, [graph.nodes, steps]);
16469
16491
  const activeNodeIds = React12.useMemo(() => {
16470
16492
  if (stepIndex < 0) return /* @__PURE__ */ new Set();
16471
16493
  return new Set(steps[stepIndex]?.nodes ?? []);
@@ -16515,42 +16537,32 @@ function DepartmentWorkflowDemo({
16515
16537
  if (intervalRef.current) clearInterval(intervalRef.current);
16516
16538
  };
16517
16539
  }, [autoPlay, handleRun]);
16518
- const bounds = React12.useMemo(() => {
16519
- if (graph.nodes.length === 0) return { width: 800, height: 400 };
16520
- let maxX = 0;
16521
- let maxY = 0;
16522
- for (const node2 of graph.nodes) {
16523
- if (node2.position.x > maxX) maxX = node2.position.x;
16524
- if (node2.position.y > maxY) maxY = node2.position.y;
16525
- }
16526
- return { width: maxX + NODE_W + PADDING * 2, height: maxY + NODE_H + PADDING * 2 };
16527
- }, [graph.nodes]);
16528
16540
  const currentStepLabel = stepIndex >= 0 ? steps[stepIndex]?.label : "Ready to run";
16529
16541
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `liquid-surface rounded-2xl overflow-hidden ${className ?? ""}`, children: [
16530
16542
  !hideHeader && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "border-b border-white/5 px-5 py-4 flex items-start gap-4", children: [
16531
16543
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex-1 min-w-0", children: [
16532
- /* @__PURE__ */ jsxRuntime.jsxs("span", { className: `inline-flex items-center gap-1.5 rounded-full px-2.5 py-0.5 text-[10px] font-semibold uppercase tracking-wider ${accentBadge}`, children: [
16544
+ /* @__PURE__ */ jsxRuntime.jsxs("span", { className: `inline-flex items-center gap-1.5 rounded-full px-2.5 py-0.5 text-[10px] font-semibold uppercase tracking-wider ${accentBadge ?? t.badge}`, children: [
16533
16545
  /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.BoltIcon, { className: "h-3 w-3" }),
16534
16546
  "Astrlabe workflow"
16535
16547
  ] }),
16536
- /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mt-2 text-lg font-bold text-white", children: title }),
16537
- /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-0.5 text-xs text-gray-400", children: description })
16548
+ /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mt-2 text-lg font-bold text-gray-900 dark:text-white", children: title }),
16549
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "mt-0.5 text-xs text-gray-500 dark:text-gray-400", children: description })
16538
16550
  ] }),
16539
16551
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2 shrink-0", children: [
16540
16552
  stepIndex >= 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center gap-0.5", children: steps.map((_, index) => /* @__PURE__ */ jsxRuntime.jsx(
16541
16553
  "div",
16542
16554
  {
16543
- className: `h-1 w-3 rounded-full transition-all duration-500 ${index < stepIndex || isComplete ? "bg-emerald-500" : index === stepIndex ? "bg-indigo-500 animate-pulse" : "bg-white/10"}`
16555
+ className: `h-1 w-3 rounded-full transition-all duration-500 ${index < stepIndex || isComplete ? "bg-emerald-500" : index === stepIndex ? `${t.stepActiveBg} animate-pulse` : "bg-white/10"}`
16544
16556
  },
16545
16557
  index
16546
16558
  )) }),
16547
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "max-w-[180px] truncate text-[10px] text-gray-400", children: currentStepLabel }),
16559
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "max-w-[180px] truncate text-[10px] text-gray-500 dark:text-gray-400", children: currentStepLabel }),
16548
16560
  isIdle ? /* @__PURE__ */ jsxRuntime.jsxs(
16549
16561
  "button",
16550
16562
  {
16551
16563
  type: "button",
16552
16564
  onClick: handleRun,
16553
- className: "flex items-center gap-1 rounded-lg bg-gradient-to-r from-indigo-600 to-violet-600 px-3 py-1 text-[11px] font-semibold text-white shadow-lg shadow-indigo-500/20 hover:shadow-indigo-500/30 hover:scale-105 active:scale-95 transition-all",
16565
+ className: `flex items-center gap-1 rounded-lg bg-gradient-to-r ${t.runButtonGradient} px-3 py-1 text-[11px] font-semibold text-white shadow-lg ${t.runButtonShadow} hover:scale-105 active:scale-95 transition-all`,
16554
16566
  children: [
16555
16567
  /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.PlayIcon, { className: "h-3 w-3" }),
16556
16568
  " Run"
@@ -16572,7 +16584,7 @@ function DepartmentWorkflowDemo({
16572
16584
  {
16573
16585
  type: "button",
16574
16586
  onClick: handleRun,
16575
- className: "flex items-center gap-1 rounded-lg border border-white/10 px-3 py-1 text-[11px] font-medium text-gray-300 hover:bg-white/5",
16587
+ className: "flex items-center gap-1 rounded-lg border border-white/10 px-3 py-1 text-[11px] font-medium text-gray-700 dark:text-gray-300 hover:bg-white/5",
16576
16588
  children: [
16577
16589
  /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.ArrowPathIcon, { className: "h-3 w-3" }),
16578
16590
  " Replay"
@@ -16581,80 +16593,74 @@ function DepartmentWorkflowDemo({
16581
16593
  )
16582
16594
  ] })
16583
16595
  ] }),
16584
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative overflow-auto p-6", style: { minHeight: bounds.height + PADDING * 2 }, children: [
16596
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "overflow-x-auto px-4 py-5", children: [
16585
16597
  /* @__PURE__ */ jsxRuntime.jsx("style", { children: `
16586
- @keyframes astGlow { 0%, 100% { box-shadow: 0 0 12px var(--glow); } 50% { box-shadow: 0 0 28px var(--glow); } }
16587
- @keyframes astEdge { to { stroke-dashoffset: -16; } }
16598
+ @keyframes deptGlow { 0%, 100% { box-shadow: 0 0 12px var(--glow); } 50% { box-shadow: 0 0 28px var(--glow); } }
16599
+ @keyframes deptEdge { to { stroke-dashoffset: -16; } }
16588
16600
  ` }),
16589
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "relative", style: { width: bounds.width, height: bounds.height }, children: [
16590
- /* @__PURE__ */ jsxRuntime.jsx("svg", { className: "absolute inset-0 pointer-events-none", width: bounds.width, height: bounds.height, children: graph.edges.map((edge2) => {
16591
- const source = graph.nodes.find((n) => n.id === edge2.source);
16592
- const target = graph.nodes.find((n) => n.id === edge2.target);
16593
- if (!source || !target) return null;
16594
- const x1 = source.position.x + NODE_W;
16595
- const y1 = source.position.y + NODE_H / 2;
16596
- const x2 = target.position.x;
16597
- const y2 = target.position.y + NODE_H / 2;
16598
- const midX = (x1 + x2) / 2;
16599
- const isActive = activeNodeIds.has(edge2.source) || completedNodeIds.has(edge2.source) && (activeNodeIds.has(edge2.target) || completedNodeIds.has(edge2.target));
16600
- const isComplete2 = completedNodeIds.has(edge2.source) && completedNodeIds.has(edge2.target);
16601
- const stroke = isComplete2 ? "#10b981" : isActive ? "#818cf8" : "#334155";
16602
- return /* @__PURE__ */ jsxRuntime.jsxs("g", { children: [
16601
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-stretch gap-0 min-w-full", children: columns.map((col, colIdx) => {
16602
+ const isStepActive = stepIndex === col.stepIndex;
16603
+ const isStepDone = stepIndex > col.stepIndex;
16604
+ const showsConnector = colIdx > 0;
16605
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex shrink-0 items-stretch", children: [
16606
+ showsConnector && /* @__PURE__ */ jsxRuntime.jsxs("svg", { width: "36", height: "100", className: "self-center shrink-0", viewBox: "0 0 36 100", children: [
16603
16607
  /* @__PURE__ */ jsxRuntime.jsx(
16604
- "path",
16608
+ "line",
16605
16609
  {
16606
- d: `M ${x1} ${y1} C ${midX} ${y1}, ${midX} ${y2}, ${x2} ${y2}`,
16607
- fill: "none",
16608
- stroke,
16609
- strokeWidth: 2,
16610
+ x1: "0",
16611
+ y1: "50",
16612
+ x2: "36",
16613
+ y2: "50",
16614
+ stroke: isStepDone ? t.completeEdgeStroke : isStepActive ? t.activeEdgeStroke : "#334155",
16615
+ strokeWidth: "2",
16610
16616
  strokeDasharray: "6 4",
16611
- style: { animation: isActive && !isComplete2 ? "astEdge 0.8s linear infinite" : "none" }
16617
+ style: { animation: isStepActive ? "deptEdge 0.8s linear infinite" : "none" }
16612
16618
  }
16613
16619
  ),
16614
- /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: x2, cy: y2, r: "3", fill: stroke })
16615
- ] }, edge2.id);
16616
- }) }),
16617
- graph.nodes.map((node2) => {
16618
- const status = getStatus(node2);
16619
- const meta = getNodeMeta(node2.type);
16620
- const statusBorder = status === "running" ? "ring-2 ring-indigo-500/60 scale-[1.04]" : status === "complete" ? "ring-1 ring-emerald-500/40" : "opacity-60";
16621
- return /* @__PURE__ */ jsxRuntime.jsx(
16622
- "div",
16623
- {
16624
- className: `absolute liquid-surface rounded-2xl px-3 py-2.5 transition-all duration-500 ${statusBorder}`,
16625
- style: {
16626
- left: node2.position.x,
16627
- top: node2.position.y,
16628
- width: NODE_W,
16629
- height: NODE_H,
16630
- ...status === "running" ? { "--glow": meta.glow, animation: "astGlow 1.4s ease-in-out infinite" } : {}
16631
- },
16632
- children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-start gap-2.5", children: [
16633
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: `flex h-8 w-8 shrink-0 items-center justify-center rounded-lg ${meta.bg}`, children: /* @__PURE__ */ jsxRuntime.jsx(meta.icon, { className: `h-4 w-4 ${meta.color}` }) }),
16634
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "min-w-0 flex-1", children: [
16635
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "truncate text-[12px] font-semibold text-white", children: node2.data.label }),
16636
- /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-1 text-[9px] text-gray-500 font-mono", children: [
16637
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "truncate", children: node2.type }),
16638
- status === "running" && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "flex items-center gap-0.5 text-indigo-300", children: [
16639
- /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.ArrowRightIcon, { className: "h-2.5 w-2.5 animate-pulse" }),
16640
- "running"
16641
- ] }),
16642
- status === "complete" && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "flex items-center gap-0.5 text-emerald-400", children: [
16643
- /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.CheckCircleIcon, { className: "h-2.5 w-2.5" }),
16644
- "done"
16620
+ /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "34", cy: "50", r: "3", fill: isStepDone ? t.completeEdgeStroke : isStepActive ? t.activeEdgeStroke : "#334155" })
16621
+ ] }),
16622
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex w-[160px] flex-col gap-2 shrink-0", children: [
16623
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "text-[8px] font-bold uppercase tracking-wider text-gray-400 dark:text-gray-500 text-center", children: [
16624
+ "Step ",
16625
+ col.stepIndex + 1
16626
+ ] }),
16627
+ col.nodes.map((node2) => {
16628
+ const status = getStatus(node2);
16629
+ const meta = getNodeMeta(node2.type);
16630
+ const statusClass = status === "running" ? `scale-[1.04] ring-2 ${t.activeRing}` : status === "complete" ? "ring-1 ring-emerald-500/40" : "opacity-50";
16631
+ return /* @__PURE__ */ jsxRuntime.jsx(
16632
+ "div",
16633
+ {
16634
+ className: `liquid-surface rounded-xl p-2.5 transition-all duration-500 ${statusClass}`,
16635
+ style: status === "running" ? { "--glow": meta.glow, animation: "deptGlow 1.4s ease-in-out infinite" } : void 0,
16636
+ children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
16637
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: `flex h-8 w-8 shrink-0 items-center justify-center rounded-lg ${meta.bg}`, children: /* @__PURE__ */ jsxRuntime.jsx(meta.icon, { className: `h-4 w-4 ${meta.color}` }) }),
16638
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "min-w-0 flex-1", children: [
16639
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "truncate text-[11px] font-semibold text-gray-900 dark:text-white", children: node2.data.label }),
16640
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-1 text-[8px] text-gray-500 dark:text-gray-500", children: [
16641
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "truncate font-mono", children: meta.tag }),
16642
+ status === "running" && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: `flex items-center gap-0.5 ${t.stepActiveBg.replace("bg-", "text-")}`, children: [
16643
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "h-1 w-1 rounded-full bg-current animate-pulse" }),
16644
+ "ativo"
16645
+ ] }),
16646
+ status === "complete" && /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "flex items-center gap-0.5 text-emerald-500", children: [
16647
+ /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.CheckCircleIcon, { className: "h-2.5 w-2.5" }),
16648
+ "ok"
16649
+ ] })
16650
+ ] })
16645
16651
  ] })
16646
16652
  ] })
16647
- ] })
16648
- ] })
16649
- },
16650
- node2.id
16651
- );
16652
- })
16653
- ] })
16653
+ },
16654
+ node2.id
16655
+ );
16656
+ })
16657
+ ] })
16658
+ ] }, col.stepIndex);
16659
+ }) })
16654
16660
  ] }),
16655
16661
  isComplete && completionSummary && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "border-t border-white/5 bg-emerald-500/[0.06] px-5 py-3 flex items-center gap-2", children: [
16656
- /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.CheckCircleIcon, { className: "h-4 w-4 shrink-0 text-emerald-400" }),
16657
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-[11px] font-semibold text-emerald-300", children: completionSummary })
16662
+ /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.CheckCircleIcon, { className: "h-4 w-4 shrink-0 text-emerald-500" }),
16663
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-[11px] font-semibold text-emerald-700 dark:text-emerald-300", children: completionSummary })
16658
16664
  ] })
16659
16665
  ] });
16660
16666
  }
@@ -17088,6 +17094,32 @@ var lgpdWorkflow = {
17088
17094
  step("Filing compliance report\u2026", "report")
17089
17095
  ]
17090
17096
  };
17097
+ var DEFAULT_ASSISTANT_THEME = {
17098
+ brandGradient: "from-blue-500 to-purple-600",
17099
+ inputAvatar: "from-blue-500 to-purple-600",
17100
+ inputBorder: "border-indigo-300/40 dark:border-indigo-400/30",
17101
+ inputCursor: "bg-indigo-500",
17102
+ stageActiveBadge: "bg-indigo-500/15 text-indigo-600 dark:text-indigo-300",
17103
+ progressActiveBar: "bg-indigo-500",
17104
+ workflow: {}
17105
+ };
17106
+ var koriAssistantTheme = {
17107
+ brandGradient: "from-amber-500 to-orange-600",
17108
+ inputAvatar: "from-amber-500 to-orange-600",
17109
+ inputBorder: "border-amber-300/50 dark:border-amber-400/40",
17110
+ inputCursor: "bg-amber-500",
17111
+ stageActiveBadge: "bg-amber-500/15 text-amber-700 dark:text-amber-300",
17112
+ progressActiveBar: "bg-amber-500",
17113
+ workflow: {
17114
+ runButtonGradient: "from-amber-500 to-orange-600",
17115
+ runButtonShadow: "shadow-amber-500/25",
17116
+ stepActiveBg: "bg-amber-500",
17117
+ activeRing: "ring-amber-500/60",
17118
+ activeEdgeStroke: "#f59e0b",
17119
+ completeEdgeStroke: "#10b981",
17120
+ badge: "bg-amber-500/15 text-amber-700 dark:text-amber-300"
17121
+ }
17122
+ };
17091
17123
  function DepartmentAssistantDemo({
17092
17124
  flows,
17093
17125
  initialIndex = 0,
@@ -17095,8 +17127,11 @@ function DepartmentAssistantDemo({
17095
17127
  dashboardHoldMs = 1e4,
17096
17128
  typingSpeedMs = 32,
17097
17129
  workflowStepMs = 1050,
17130
+ theme,
17131
+ brandName = "Kori AI Assistant",
17098
17132
  className
17099
17133
  }) {
17134
+ const t = { ...DEFAULT_ASSISTANT_THEME, ...theme, workflow: { ...DEFAULT_ASSISTANT_THEME.workflow, ...theme?.workflow } };
17100
17135
  const [flowIndex, setFlowIndex] = React12.useState(initialIndex);
17101
17136
  const [stage, setStage] = React12.useState("input");
17102
17137
  const [typed, setTyped] = React12.useState("");
@@ -17112,25 +17147,25 @@ function DepartmentAssistantDemo({
17112
17147
  setTyped(flow.prompt.slice(0, i));
17113
17148
  } else {
17114
17149
  clearInterval(interval);
17115
- const t = setTimeout(() => setStage("workflow"), 700);
17116
- return () => clearTimeout(t);
17150
+ const timer = setTimeout(() => setStage("workflow"), 700);
17151
+ return () => clearTimeout(timer);
17117
17152
  }
17118
17153
  return void 0;
17119
17154
  }, typingSpeedMs);
17120
17155
  return () => clearInterval(interval);
17121
17156
  }, [stage, flow.prompt, typingSpeedMs]);
17122
17157
  const handleWorkflowComplete = React12.useCallback(() => {
17123
- const t = setTimeout(() => setStage("dashboard"), 1200);
17124
- rotateTimerRef.current = t;
17158
+ const timer = setTimeout(() => setStage("dashboard"), 1200);
17159
+ rotateTimerRef.current = timer;
17125
17160
  }, []);
17126
17161
  React12.useEffect(() => {
17127
17162
  if (stage !== "dashboard") return void 0;
17128
17163
  if (!autoRotate) return void 0;
17129
- const t = setTimeout(() => {
17164
+ const timer = setTimeout(() => {
17130
17165
  setFlowIndex((prev) => (prev + 1) % flows.length);
17131
17166
  setStage("input");
17132
17167
  }, dashboardHoldMs);
17133
- return () => clearTimeout(t);
17168
+ return () => clearTimeout(timer);
17134
17169
  }, [stage, autoRotate, dashboardHoldMs, flows.length]);
17135
17170
  const handleDepartmentSelect = React12.useCallback((next) => {
17136
17171
  if (rotateTimerRef.current) clearTimeout(rotateTimerRef.current);
@@ -17141,8 +17176,8 @@ function DepartmentAssistantDemo({
17141
17176
  return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: `liquid-surface rounded-3xl overflow-hidden ${className ?? ""}`, children: [
17142
17177
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "border-b border-white/5 px-4 py-3 flex flex-wrap items-center gap-2", children: [
17143
17178
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2 pr-3", children: [
17144
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex h-7 w-7 items-center justify-center rounded-lg bg-gradient-to-br from-blue-500 to-purple-600", children: /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.CpuChipIcon, { className: "h-4 w-4 text-white" }) }),
17145
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm font-bold text-gray-900 dark:text-white", children: "Kori AI Assistant" })
17179
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: `flex h-7 w-7 items-center justify-center rounded-lg bg-gradient-to-br ${t.brandGradient}`, children: /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.CpuChipIcon, { className: "h-4 w-4 text-white" }) }),
17180
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm font-bold text-gray-900 dark:text-white", children: brandName })
17146
17181
  ] }),
17147
17182
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex-1" }),
17148
17183
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-wrap items-center gap-1.5", children: flows.map((entry, index) => {
@@ -17152,7 +17187,7 @@ function DepartmentAssistantDemo({
17152
17187
  {
17153
17188
  type: "button",
17154
17189
  onClick: () => handleDepartmentSelect(index),
17155
- className: `group inline-flex items-center gap-1.5 rounded-full px-3 py-1.5 text-[11px] font-semibold transition-all ${isActive ? `bg-gradient-to-r ${entry.accent} text-white shadow-lg shadow-indigo-500/20 scale-105` : "text-gray-600 dark:text-gray-400 hover:bg-white/5 hover:text-gray-900 dark:hover:text-white"}`,
17190
+ className: `group inline-flex items-center gap-1.5 rounded-full px-3 py-1.5 text-[11px] font-semibold transition-all ${isActive ? `bg-gradient-to-r ${entry.accent} text-white shadow-lg scale-105` : "text-gray-600 dark:text-gray-400 hover:bg-white/5 hover:text-gray-900 dark:hover:text-white"}`,
17156
17191
  children: [
17157
17192
  /* @__PURE__ */ jsxRuntime.jsx(entry.icon, { className: "h-3.5 w-3.5" }),
17158
17193
  entry.name
@@ -17163,11 +17198,11 @@ function DepartmentAssistantDemo({
17163
17198
  }) })
17164
17199
  ] }),
17165
17200
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "border-b border-white/5 px-6 py-3 flex items-center gap-3 text-[11px]", children: [
17166
- /* @__PURE__ */ jsxRuntime.jsx(StageChip, { label: "Ask", stageIndex, mine: 0 }),
17201
+ /* @__PURE__ */ jsxRuntime.jsx(StageChip, { label: "Ask", stageIndex, mine: 0, activeBadge: t.stageActiveBadge }),
17167
17202
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-px flex-1 bg-gradient-to-r from-white/10 to-white/5" }),
17168
- /* @__PURE__ */ jsxRuntime.jsx(StageChip, { label: "Orchestrate", stageIndex, mine: 1 }),
17203
+ /* @__PURE__ */ jsxRuntime.jsx(StageChip, { label: "Orchestrate", stageIndex, mine: 1, activeBadge: t.stageActiveBadge }),
17169
17204
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-px flex-1 bg-gradient-to-r from-white/5 to-white/10" }),
17170
- /* @__PURE__ */ jsxRuntime.jsx(StageChip, { label: "Deliver", stageIndex, mine: 2 })
17205
+ /* @__PURE__ */ jsxRuntime.jsx(StageChip, { label: "Deliver", stageIndex, mine: 2, activeBadge: t.stageActiveBadge })
17171
17206
  ] }),
17172
17207
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "relative", style: { minHeight: 600 }, children: /* @__PURE__ */ jsxRuntime.jsxs(framerMotion.AnimatePresence, { mode: "wait", children: [
17173
17208
  stage === "input" && /* @__PURE__ */ jsxRuntime.jsx(
@@ -17178,7 +17213,17 @@ function DepartmentAssistantDemo({
17178
17213
  exit: { opacity: 0, y: -12 },
17179
17214
  transition: { duration: 0.45 },
17180
17215
  className: "flex items-center justify-center p-10",
17181
- children: /* @__PURE__ */ jsxRuntime.jsx(InputStage3, { prompt: typed, department: flow.name, agents: flow.agents })
17216
+ children: /* @__PURE__ */ jsxRuntime.jsx(
17217
+ InputStage3,
17218
+ {
17219
+ prompt: typed,
17220
+ department: flow.name,
17221
+ agents: flow.agents,
17222
+ avatarGradient: t.inputAvatar,
17223
+ borderClass: t.inputBorder,
17224
+ cursorClass: t.inputCursor
17225
+ }
17226
+ )
17182
17227
  },
17183
17228
  `input-${flow.id}`
17184
17229
  ),
@@ -17197,7 +17242,8 @@ function DepartmentAssistantDemo({
17197
17242
  autoPlay: true,
17198
17243
  hideHeader: true,
17199
17244
  stepDurationMs: workflowStepMs,
17200
- onComplete: handleWorkflowComplete
17245
+ onComplete: handleWorkflowComplete,
17246
+ theme: t.workflow
17201
17247
  },
17202
17248
  `wf-${flow.id}`
17203
17249
  )
@@ -17219,7 +17265,7 @@ function DepartmentAssistantDemo({
17219
17265
  ] }) }),
17220
17266
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center justify-between border-t border-white/5 px-5 py-3", children: [
17221
17267
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2 text-[11px] text-gray-500 dark:text-gray-400", children: [
17222
- /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.BoltIcon, { className: "h-3.5 w-3.5 text-indigo-500" }),
17268
+ /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.BoltIcon, { className: `h-3.5 w-3.5 ${t.progressActiveBar.replace("bg-", "text-")}` }),
17223
17269
  /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "font-medium", children: [
17224
17270
  stage === "input" && "Usu\xE1rio envia um pedido ao assistente\u2026",
17225
17271
  stage === "workflow" && "Astrlabe orquestrando agentes e datasources\u2026",
@@ -17229,20 +17275,20 @@ function DepartmentAssistantDemo({
17229
17275
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center gap-1", children: flows.map((entry, index) => /* @__PURE__ */ jsxRuntime.jsx(
17230
17276
  "span",
17231
17277
  {
17232
- className: `h-1 rounded-full transition-all duration-500 ${index === flowIndex ? "w-8 bg-indigo-500" : "w-1.5 bg-gray-300 dark:bg-white/10"}`
17278
+ className: `h-1 rounded-full transition-all duration-500 ${index === flowIndex ? `w-8 ${t.progressActiveBar}` : "w-1.5 bg-gray-300 dark:bg-white/10"}`
17233
17279
  },
17234
17280
  entry.id
17235
17281
  )) })
17236
17282
  ] })
17237
17283
  ] });
17238
17284
  }
17239
- function StageChip({ label, stageIndex, mine }) {
17285
+ function StageChip({ label, stageIndex, mine, activeBadge }) {
17240
17286
  const isActive = stageIndex === mine;
17241
17287
  const isDone = stageIndex > mine;
17242
17288
  return /* @__PURE__ */ jsxRuntime.jsxs(
17243
17289
  "div",
17244
17290
  {
17245
- className: `inline-flex items-center gap-1.5 rounded-full px-2.5 py-0.5 font-semibold transition-colors ${isActive ? "bg-indigo-500/15 text-indigo-600 dark:text-indigo-300" : isDone ? "bg-emerald-500/10 text-emerald-600 dark:text-emerald-300" : "bg-white/5 text-gray-500 dark:text-gray-500"}`,
17291
+ className: `inline-flex items-center gap-1.5 rounded-full px-2.5 py-0.5 font-semibold transition-colors ${isActive ? activeBadge : isDone ? "bg-emerald-500/10 text-emerald-600 dark:text-emerald-300" : "bg-white/5 text-gray-500 dark:text-gray-500"}`,
17246
17292
  children: [
17247
17293
  isDone ? /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.CheckCircleIcon, { className: "h-3.5 w-3.5" }) : isActive ? /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.BoltIcon, { className: "h-3.5 w-3.5 animate-pulse" }) : /* @__PURE__ */ jsxRuntime.jsx("span", { className: "h-1.5 w-1.5 rounded-full bg-current" }),
17248
17294
  label
@@ -17250,10 +17296,17 @@ function StageChip({ label, stageIndex, mine }) {
17250
17296
  }
17251
17297
  );
17252
17298
  }
17253
- function InputStage3({ prompt, department, agents }) {
17299
+ function InputStage3({
17300
+ prompt,
17301
+ department,
17302
+ agents,
17303
+ avatarGradient,
17304
+ borderClass,
17305
+ cursorClass
17306
+ }) {
17254
17307
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "w-full max-w-2xl", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "rounded-2xl border border-white/10 bg-white/70 dark:bg-zinc-900/70 p-8 shadow-2xl backdrop-blur-sm", children: [
17255
17308
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mb-6 flex items-center gap-3", children: [
17256
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-12 w-12 rounded-xl bg-gradient-to-br from-blue-500 to-purple-600 flex items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.SparklesIcon, { className: "h-6 w-6 text-white" }) }),
17309
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: `h-12 w-12 rounded-xl bg-gradient-to-br ${avatarGradient} flex items-center justify-center`, children: /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.SparklesIcon, { className: "h-6 w-6 text-white" }) }),
17257
17310
  /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
17258
17311
  /* @__PURE__ */ jsxRuntime.jsxs("h3", { className: "text-base font-bold text-gray-900 dark:text-white", children: [
17259
17312
  "Assistente \u2014 ",
@@ -17262,17 +17315,17 @@ function InputStage3({ prompt, department, agents }) {
17262
17315
  /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs text-gray-500 dark:text-gray-400", children: "Digite um pedido e veja os agentes atuarem." })
17263
17316
  ] })
17264
17317
  ] }),
17265
- /* @__PURE__ */ jsxRuntime.jsx("div", { className: "rounded-xl border-2 border-indigo-300/40 bg-indigo-50/50 dark:border-indigo-400/30 dark:bg-indigo-500/5 p-4 min-h-[120px]", children: /* @__PURE__ */ jsxRuntime.jsxs("p", { className: "text-base font-medium text-gray-900 dark:text-white", children: [
17318
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: `rounded-xl border-2 ${borderClass} bg-white/40 dark:bg-white/[0.02] p-4 min-h-[120px]`, children: /* @__PURE__ */ jsxRuntime.jsxs("p", { className: "text-base font-medium text-gray-900 dark:text-white", children: [
17266
17319
  prompt,
17267
- /* @__PURE__ */ jsxRuntime.jsx("span", { className: "ml-1 inline-block w-0.5 h-5 bg-indigo-500 animate-pulse" })
17320
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: `ml-1 inline-block w-0.5 h-5 ${cursorClass} animate-pulse` })
17268
17321
  ] }) }),
17269
17322
  /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mt-4 flex items-center gap-2 text-xs text-gray-500 dark:text-gray-400", children: [
17270
- /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.BoltIcon, { className: "h-3.5 w-3.5 text-indigo-500" }),
17323
+ /* @__PURE__ */ jsxRuntime.jsx(HeroIcons.BoltIcon, { className: `h-3.5 w-3.5 ${cursorClass.replace("bg-", "text-")}` }),
17271
17324
  "Agentes prontos:",
17272
17325
  /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-wrap gap-1.5", children: agents.map((agent) => /* @__PURE__ */ jsxRuntime.jsx(
17273
17326
  "span",
17274
17327
  {
17275
- className: "inline-flex items-center rounded-full border border-indigo-200 bg-indigo-50 px-2 py-0.5 text-[10px] font-semibold text-indigo-700 dark:border-indigo-500/30 dark:bg-indigo-500/10 dark:text-indigo-300",
17328
+ className: "inline-flex items-center rounded-full border border-white/10 bg-white/60 dark:bg-white/[0.04] px-2 py-0.5 text-[10px] font-semibold text-gray-700 dark:text-gray-200",
17276
17329
  children: agent
17277
17330
  },
17278
17331
  agent
@@ -25245,6 +25298,7 @@ exports.isValidThailandProvince = isValidThailandProvince;
25245
25298
  exports.isValidTurkeyProvince = isValidTurkeyProvince;
25246
25299
  exports.isValidUKNation = isValidUKNation;
25247
25300
  exports.isValidUsState = isValidUsState;
25301
+ exports.koriAssistantTheme = koriAssistantTheme;
25248
25302
  exports.koriDepartmentFlows = koriDepartmentFlows;
25249
25303
  exports.lgpdWorkflow = lgpdWorkflow;
25250
25304
  exports.listItem = listItem;
@@ -25283,5 +25337,5 @@ exports.usePullToRefresh = usePullToRefresh;
25283
25337
  exports.validateDashboardSpec = validateDashboardSpec;
25284
25338
  exports.xScale = xScale;
25285
25339
  exports.yScale = yScale;
25286
- //# sourceMappingURL=chunk-3J4F3ZDT.js.map
25287
- //# sourceMappingURL=chunk-3J4F3ZDT.js.map
25340
+ //# sourceMappingURL=chunk-T23YGO4X.js.map
25341
+ //# sourceMappingURL=chunk-T23YGO4X.js.map