@wealthx/shadcn 1.5.6 → 1.5.7

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.
Files changed (91) hide show
  1. package/.turbo/turbo-build.log +141 -135
  2. package/CHANGELOG.md +6 -0
  3. package/dist/{chunk-2LLFNGJZ.mjs → chunk-3OOUI5TO.mjs} +1 -1
  4. package/dist/{chunk-AUEUTZIC.mjs → chunk-3QAQQBCM.mjs} +2 -2
  5. package/dist/chunk-3Z75IKFO.mjs +34 -0
  6. package/dist/{chunk-RAKBWNQH.mjs → chunk-5WCIGJ3E.mjs} +26 -65
  7. package/dist/chunk-65PZNG4Y.mjs +129 -0
  8. package/dist/{chunk-D447W45Z.mjs → chunk-7OLKVKJF.mjs} +41 -49
  9. package/dist/{chunk-UEREFDAE.mjs → chunk-AZGLSIHF.mjs} +1 -1
  10. package/dist/{chunk-QRVEI6J3.mjs → chunk-BQBSYM2I.mjs} +1 -3
  11. package/dist/{chunk-BFB3UH7V.mjs → chunk-C2QMHKLT.mjs} +1 -1
  12. package/dist/chunk-CEEVYRQA.mjs +61 -0
  13. package/dist/{chunk-VJ3GC7W3.mjs → chunk-CXGZSIQN.mjs} +4 -30
  14. package/dist/{chunk-VLELWBEW.mjs → chunk-E2BNCA6L.mjs} +1 -1
  15. package/dist/{chunk-46Q4335I.mjs → chunk-F73QFUZH.mjs} +10 -20
  16. package/dist/{chunk-Q35PNFJ7.mjs → chunk-FBNEIYSE.mjs} +1 -1
  17. package/dist/{chunk-HO6S3ECM.mjs → chunk-G4WLCKFV.mjs} +1 -1
  18. package/dist/{chunk-ODO6BUOF.mjs → chunk-HRHXZIX5.mjs} +1 -3
  19. package/dist/{chunk-IXR4BQSQ.mjs → chunk-I6QVWQCD.mjs} +1 -1
  20. package/dist/{chunk-Q5SGEIJV.mjs → chunk-IXKE6LHN.mjs} +1 -1
  21. package/dist/{chunk-OL65UQHQ.mjs → chunk-JCH2BG24.mjs} +26 -60
  22. package/dist/{chunk-PV3Y7QGK.mjs → chunk-LHWJQNLG.mjs} +3 -3
  23. package/dist/{chunk-JTG5R5YV.mjs → chunk-MS4PDUSU.mjs} +284 -58
  24. package/dist/{chunk-VFH632TB.mjs → chunk-SDNG4XL6.mjs} +1 -1
  25. package/dist/{chunk-DFL5CV75.mjs → chunk-T6MMCOX6.mjs} +1 -1
  26. package/dist/{chunk-6TX73WG7.mjs → chunk-TCE5L44O.mjs} +3 -2
  27. package/dist/{chunk-HROG643K.mjs → chunk-W5QJ57PU.mjs} +1 -1
  28. package/dist/{chunk-EW72FINW.mjs → chunk-XVZGXPIX.mjs} +1 -1
  29. package/dist/components/ui/about-you-form.mjs +3 -3
  30. package/dist/components/ui/add-column-modal.js +56 -227
  31. package/dist/components/ui/add-column-modal.mjs +1 -2
  32. package/dist/components/ui/ai-conversations.js +278 -58
  33. package/dist/components/ui/ai-conversations.mjs +1 -1
  34. package/dist/components/ui/appointment-action-dialogs.mjs +3 -3
  35. package/dist/components/ui/appointment-availability-settings.js +2 -28
  36. package/dist/components/ui/appointment-availability-settings.mjs +4 -4
  37. package/dist/components/ui/appointment-book-dialog.js +11 -21
  38. package/dist/components/ui/appointment-book-dialog.mjs +3 -3
  39. package/dist/components/ui/appointment-calendar-view.mjs +2 -2
  40. package/dist/components/ui/appointment-detail-sheet.mjs +4 -4
  41. package/dist/components/ui/appointment-upcoming-card.mjs +3 -3
  42. package/dist/components/ui/bank-statement-generate-dialog.mjs +4 -4
  43. package/dist/components/ui/calendar.mjs +2 -2
  44. package/dist/components/ui/dashboard-transactions-table.mjs +1 -1
  45. package/dist/components/ui/date-picker.mjs +3 -3
  46. package/dist/components/ui/financial-cards.mjs +2 -2
  47. package/dist/components/ui/financial-sections.mjs +3 -3
  48. package/dist/components/ui/integration-card.js +326 -0
  49. package/dist/components/ui/integration-card.mjs +11 -0
  50. package/dist/components/ui/kanban-column.js +151 -243
  51. package/dist/components/ui/kanban-column.mjs +3 -4
  52. package/dist/components/ui/loan-application-cards.mjs +1 -1
  53. package/dist/components/ui/onboarding-layout.js +65 -4
  54. package/dist/components/ui/onboarding-layout.mjs +6 -4
  55. package/dist/components/ui/opportunity-card.js +126 -216
  56. package/dist/components/ui/opportunity-card.mjs +2 -3
  57. package/dist/components/ui/opportunity-edit-modals.mjs +4 -4
  58. package/dist/components/ui/opportunity-summary-tab.mjs +6 -6
  59. package/dist/components/ui/pipeline-board.js +167 -261
  60. package/dist/components/ui/pipeline-board.mjs +4 -5
  61. package/dist/components/ui/pipeline-chart.js +128 -55
  62. package/dist/components/ui/pipeline-chart.mjs +2 -1
  63. package/dist/components/ui/pipeline-dialogs.mjs +4 -4
  64. package/dist/components/ui/savings-goal-modal.mjs +3 -3
  65. package/dist/components/ui/selectable-card.js +163 -0
  66. package/dist/components/ui/selectable-card.mjs +9 -0
  67. package/dist/components/ui/signup-shell.js +3 -2
  68. package/dist/components/ui/signup-shell.mjs +2 -2
  69. package/dist/components/ui/stepper.js +3 -2
  70. package/dist/components/ui/stepper.mjs +1 -1
  71. package/dist/index.js +2121 -1878
  72. package/dist/index.mjs +56 -46
  73. package/dist/styles.css +1 -1
  74. package/package.json +11 -1
  75. package/src/components/index.tsx +13 -1
  76. package/src/components/ui/add-column-modal.tsx +9 -58
  77. package/src/components/ui/ai-conversations.tsx +308 -42
  78. package/src/components/ui/appointment-availability-settings.tsx +2 -35
  79. package/src/components/ui/appointment-book-dialog.tsx +25 -48
  80. package/src/components/ui/integration-card.tsx +88 -0
  81. package/src/components/ui/kanban-column.tsx +0 -7
  82. package/src/components/ui/onboarding-layout.tsx +102 -1
  83. package/src/components/ui/opportunity-card.tsx +5 -53
  84. package/src/components/ui/pipeline-board.tsx +0 -3
  85. package/src/components/ui/pipeline-chart.tsx +47 -53
  86. package/src/components/ui/selectable-card.tsx +37 -0
  87. package/src/components/ui/stepper.tsx +3 -2
  88. package/src/lib/format-date.ts +6 -6
  89. package/src/styles/styles-css.ts +1 -1
  90. package/tsup.config.ts +2 -0
  91. package/dist/chunk-2P7HP7LR.mjs +0 -68
@@ -853,66 +853,8 @@ function Progress(_a) {
853
853
  );
854
854
  }
855
855
 
856
- // src/components/ui/tooltip.tsx
857
- var import_tooltip = require("@base-ui/react/tooltip");
858
- var import_jsx_runtime15 = require("react/jsx-runtime");
859
- function TooltipProvider(_a) {
860
- var _b = _a, {
861
- delay = 0
862
- } = _b, props = __objRest(_b, [
863
- "delay"
864
- ]);
865
- return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
866
- import_tooltip.Tooltip.Provider,
867
- __spreadValues({
868
- "data-slot": "tooltip-provider",
869
- delay
870
- }, props)
871
- );
872
- }
873
- function Tooltip(_a) {
874
- var props = __objRest(_a, []);
875
- return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_tooltip.Tooltip.Root, __spreadValues({ "data-slot": "tooltip" }, props));
876
- }
877
- function TooltipTrigger(_a) {
878
- var props = __objRest(_a, []);
879
- return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_tooltip.Tooltip.Trigger, __spreadValues({ "data-slot": "tooltip-trigger" }, props));
880
- }
881
- function TooltipContent(_a) {
882
- var _b = _a, {
883
- className,
884
- sideOffset = 8,
885
- side,
886
- children,
887
- style
888
- } = _b, props = __objRest(_b, [
889
- "className",
890
- "sideOffset",
891
- "side",
892
- "children",
893
- "style"
894
- ]);
895
- const themeVars = useThemeVars();
896
- return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_tooltip.Tooltip.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_tooltip.Tooltip.Positioner, { sideOffset, side, children: /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
897
- import_tooltip.Tooltip.Popup,
898
- __spreadProps(__spreadValues({
899
- className: cn(
900
- "relative z-50 w-fit animate-in overflow-visible bg-brand-secondary px-3 py-1.5 text-caption text-balance text-brand-secondary-foreground fade-in-0 zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-ending-style:animate-out data-ending-style:fade-out-0 data-ending-style:zoom-out-95 data-ending-style:fill-mode-forwards",
901
- className
902
- ),
903
- "data-slot": "tooltip-content",
904
- style: __spreadValues(__spreadValues({}, themeVars), style)
905
- }, props), {
906
- children: [
907
- children,
908
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_tooltip.Tooltip.Arrow, { className: "z-50 size-2.5 rotate-45 bg-brand-secondary data-[side=bottom]:-top-1 data-[side=left]:-right-1 data-[side=right]:-left-1 data-[side=top]:-bottom-1" })
909
- ]
910
- })
911
- ) }) });
912
- }
913
-
914
856
  // src/components/ui/opportunity-card.tsx
915
- var import_jsx_runtime16 = require("react/jsx-runtime");
857
+ var import_jsx_runtime15 = require("react/jsx-runtime");
916
858
  var PRIORITY_COLORS = {
917
859
  HIGH: "var(--color-destructive)",
918
860
  MEDIUM: "var(--color-warning)",
@@ -959,7 +901,6 @@ function TaskViewCard({
959
901
  onDragStart,
960
902
  className
961
903
  }) {
962
- var _a;
963
904
  const resolvedPriority = resolvePriority(
964
905
  daysSinceColumnChanged,
965
906
  warningDays,
@@ -971,8 +912,6 @@ function TaskViewCard({
971
912
  const totalCount = tasks.length;
972
913
  const hasTasks = totalCount > 0;
973
914
  const allDone = hasTasks && completedCount === totalCount;
974
- const nextPendingTask = tasks.find((t) => !t.completed);
975
- const agentName = (_a = nextPendingTask == null ? void 0 : nextPendingTask.aiAgentName) != null ? _a : null;
976
915
  const [subtasksExpanded, setSubtasksExpanded] = (0, import_react5.useState)(false);
977
916
  const hasMenu = onViewDetails || onChangePriority || onPutOnHold || onDelete;
978
917
  const stopProp = (e) => {
@@ -986,35 +925,23 @@ function TaskViewCard({
986
925
  ].filter(Boolean).join(" \xB7 ");
987
926
  let taskHeader;
988
927
  if (allDone) {
989
- taskHeader = /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
928
+ taskHeader = /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
990
929
  "p",
991
930
  {
992
931
  className: "flex items-center gap-1.5 text-sm font-semibold",
993
932
  style: { color: "var(--color-success-text)" },
994
933
  children: [
995
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_lucide_react6.Check, { className: "size-3.5 shrink-0" }),
934
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_lucide_react6.Check, { className: "size-3.5 shrink-0" }),
996
935
  "All tasks complete"
997
936
  ]
998
937
  }
999
938
  );
1000
939
  } else if (nextTask) {
1001
- taskHeader = /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(import_jsx_runtime16.Fragment, { children: [
1002
- /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "flex items-center gap-1.5", children: [
1003
- agentName && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1004
- import_lucide_react6.Bot,
1005
- {
1006
- className: "size-3.5 shrink-0 text-primary",
1007
- "aria-hidden": "true"
1008
- }
1009
- ),
1010
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("p", { className: "truncate text-sm font-semibold leading-snug", children: nextTask })
1011
- ] }),
1012
- agentName && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("p", { className: "mt-0.5 text-xs text-muted-foreground", children: agentName })
1013
- ] });
940
+ taskHeader = /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("p", { className: "truncate text-sm font-semibold leading-snug", children: nextTask });
1014
941
  } else {
1015
- taskHeader = /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("p", { className: "text-xs text-muted-foreground", children: "No tasks defined for this stage" });
942
+ taskHeader = /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("p", { className: "text-xs text-muted-foreground", children: "No tasks defined for this stage" });
1016
943
  }
1017
- return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
944
+ return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
1018
945
  "div",
1019
946
  {
1020
947
  className: cn(
@@ -1029,9 +956,9 @@ function TaskViewCard({
1029
956
  onDragStart,
1030
957
  onClick: onCardClick,
1031
958
  children: [
1032
- /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "flex items-start gap-2", children: [
1033
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: "min-w-0 flex-1", children: taskHeader }),
1034
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
959
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "flex items-start gap-2", children: [
960
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: "min-w-0 flex-1", children: taskHeader }),
961
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1035
962
  "span",
1036
963
  {
1037
964
  role: "img",
@@ -1041,13 +968,13 @@ function TaskViewCard({
1041
968
  }
1042
969
  )
1043
970
  ] }),
1044
- hasTasks && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "flex items-center gap-2", children: [
1045
- /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("span", { className: "shrink-0 tabular-nums text-xs text-muted-foreground", children: [
971
+ hasTasks && /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "flex items-center gap-2", children: [
972
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("span", { className: "shrink-0 tabular-nums text-xs text-muted-foreground", children: [
1046
973
  completedCount,
1047
974
  "/",
1048
975
  totalCount
1049
976
  ] }),
1050
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
977
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1051
978
  Progress,
1052
979
  {
1053
980
  value: completedCount / totalCount * 100,
@@ -1058,7 +985,7 @@ function TaskViewCard({
1058
985
  }
1059
986
  )
1060
987
  ] }),
1061
- hasTasks && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
988
+ hasTasks && /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
1062
989
  "div",
1063
990
  {
1064
991
  className: "space-y-1 border-t border-border pt-2",
@@ -1066,18 +993,18 @@ function TaskViewCard({
1066
993
  role: "presentation",
1067
994
  onKeyDown: (e) => e.stopPropagation(),
1068
995
  children: [
1069
- /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
996
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
1070
997
  "button",
1071
998
  {
1072
999
  type: "button",
1073
1000
  onClick: () => setSubtasksExpanded((v) => !v),
1074
1001
  className: "flex w-full items-center justify-between text-xs text-muted-foreground hover:text-foreground",
1075
1002
  children: [
1076
- /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("span", { className: "flex items-center gap-1", children: [
1077
- subtasksExpanded ? /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_lucide_react6.ChevronDown, { className: "size-3" }) : /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_lucide_react6.ChevronRight, { className: "size-3" }),
1003
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("span", { className: "flex items-center gap-1", children: [
1004
+ subtasksExpanded ? /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_lucide_react6.ChevronDown, { className: "size-3" }) : /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_lucide_react6.ChevronRight, { className: "size-3" }),
1078
1005
  "Subtasks"
1079
1006
  ] }),
1080
- /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("span", { children: [
1007
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("span", { children: [
1081
1008
  completedCount,
1082
1009
  " / ",
1083
1010
  totalCount
@@ -1085,12 +1012,11 @@ function TaskViewCard({
1085
1012
  ]
1086
1013
  }
1087
1014
  ),
1088
- subtasksExpanded && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("ul", { className: "space-y-1.5 pt-1", children: tasks.map((task) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1015
+ subtasksExpanded && /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("ul", { className: "space-y-1.5 pt-1", children: tasks.map((task) => /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1089
1016
  TaskCheckItem,
1090
1017
  {
1091
1018
  title: task.title,
1092
1019
  completed: task.completed,
1093
- aiAgentName: task.aiAgentName,
1094
1020
  onToggle: () => onTaskToggle == null ? void 0 : onTaskToggle(task.id),
1095
1021
  size: "xs"
1096
1022
  },
@@ -1099,14 +1025,14 @@ function TaskViewCard({
1099
1025
  ]
1100
1026
  }
1101
1027
  ),
1102
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("p", { className: "truncate text-xs text-muted-foreground", children: dealRef }),
1103
- /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "flex items-center gap-1.5", onClick: stopProp, children: [
1104
- daysSinceColumnChanged !== void 0 && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(Badge, { variant: "secondary", className: "px-1.5 text-[10px] font-normal", children: [
1028
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("p", { className: "truncate text-xs text-muted-foreground", children: dealRef }),
1029
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "flex items-center gap-1.5", onClick: stopProp, children: [
1030
+ daysSinceColumnChanged !== void 0 && /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(Badge, { variant: "secondary", className: "px-1.5 text-[10px] font-normal", children: [
1105
1031
  daysSinceColumnChanged,
1106
1032
  "d"
1107
1033
  ] }),
1108
- hasMenu && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: "ml-auto", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(DropdownMenu, { children: [
1109
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1034
+ hasMenu && /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: "ml-auto", children: /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(DropdownMenu, { children: [
1035
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1110
1036
  DropdownMenuTrigger,
1111
1037
  {
1112
1038
  className: cn(
@@ -1114,23 +1040,23 @@ function TaskViewCard({
1114
1040
  "size-7 shrink-0"
1115
1041
  ),
1116
1042
  "aria-label": "Opportunity actions",
1117
- children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_lucide_react6.MoreVertical, { className: "size-4" })
1043
+ children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_lucide_react6.MoreVertical, { className: "size-4" })
1118
1044
  }
1119
1045
  ),
1120
- /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(DropdownMenuContent, { align: "end", children: [
1121
- onViewDetails && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(DropdownMenuItem, { onClick: onViewDetails, children: "View details" }),
1122
- onChangePriority && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(DropdownMenuItem, { onClick: onChangePriority, children: "Change priority" }),
1123
- onPutOnHold && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(DropdownMenuItem, { onClick: onPutOnHold, children: "Put on hold" }),
1124
- onDelete && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(import_jsx_runtime16.Fragment, { children: [
1125
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(DropdownMenuSeparator, {}),
1126
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(DropdownMenuItem, { onClick: onDelete, variant: "destructive", children: "Delete" })
1046
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(DropdownMenuContent, { align: "end", children: [
1047
+ onViewDetails && /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(DropdownMenuItem, { onClick: onViewDetails, children: "View details" }),
1048
+ onChangePriority && /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(DropdownMenuItem, { onClick: onChangePriority, children: "Change priority" }),
1049
+ onPutOnHold && /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(DropdownMenuItem, { onClick: onPutOnHold, children: "Put on hold" }),
1050
+ onDelete && /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(import_jsx_runtime15.Fragment, { children: [
1051
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(DropdownMenuSeparator, {}),
1052
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(DropdownMenuItem, { onClick: onDelete, variant: "destructive", children: "Delete" })
1127
1053
  ] })
1128
1054
  ] })
1129
1055
  ] }) })
1130
1056
  ] }),
1131
- allDone && onMoveToNextStage && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { onClick: stopProp, children: [
1132
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Separator, {}),
1133
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: "pt-2", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1057
+ allDone && onMoveToNextStage && /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { onClick: stopProp, children: [
1058
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(Separator, {}),
1059
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: "pt-2", children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1134
1060
  Button,
1135
1061
  {
1136
1062
  variant: "outline",
@@ -1142,9 +1068,9 @@ function TaskViewCard({
1142
1068
  }
1143
1069
  ) })
1144
1070
  ] }),
1145
- !allDone && nextTask && onMarkAsDone && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { onClick: stopProp, children: [
1146
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Separator, {}),
1147
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: "pt-2", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1071
+ !allDone && nextTask && onMarkAsDone && /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { onClick: stopProp, children: [
1072
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(Separator, {}),
1073
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: "pt-2", children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1148
1074
  Button,
1149
1075
  {
1150
1076
  variant: "default",
@@ -1183,7 +1109,6 @@ function OpportunityCard({
1183
1109
  onTaskToggle,
1184
1110
  onMarkAsDone,
1185
1111
  onMoveToNextStage,
1186
- onLaunchAssistant,
1187
1112
  onChangePriority,
1188
1113
  onDelete,
1189
1114
  onPutOnHold,
@@ -1194,7 +1119,7 @@ function OpportunityCard({
1194
1119
  viewMode = "deal"
1195
1120
  }) {
1196
1121
  if (viewMode === "task") {
1197
- return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1122
+ return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1198
1123
  TaskViewCard,
1199
1124
  {
1200
1125
  customerName,
@@ -1241,7 +1166,7 @@ function OpportunityCard({
1241
1166
  const stopProp = (e) => {
1242
1167
  e.stopPropagation();
1243
1168
  };
1244
- return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
1169
+ return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
1245
1170
  "div",
1246
1171
  {
1247
1172
  className: cn(
@@ -1256,19 +1181,19 @@ function OpportunityCard({
1256
1181
  onDragStart,
1257
1182
  onClick: onCardClick,
1258
1183
  children: [
1259
- onHoldTo && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
1184
+ onHoldTo && /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
1260
1185
  "div",
1261
1186
  {
1262
1187
  className: "flex items-center gap-1.5 rounded border border-warning/30 bg-warning/10 px-2 py-1 text-xs font-medium",
1263
1188
  style: { color: "var(--color-warning-text)" },
1264
1189
  children: [
1265
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_lucide_react6.Clock, { className: "size-3 shrink-0" }),
1190
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_lucide_react6.Clock, { className: "size-3 shrink-0" }),
1266
1191
  "On hold until ",
1267
1192
  formatDateDayMonth(onHoldTo)
1268
1193
  ]
1269
1194
  }
1270
1195
  ),
1271
- isModifyCompletedLoan && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1196
+ isModifyCompletedLoan && /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1272
1197
  "div",
1273
1198
  {
1274
1199
  className: "flex items-center gap-1.5 rounded border border-info/30 bg-info/10 px-2 py-1 text-xs font-medium",
@@ -1276,81 +1201,64 @@ function OpportunityCard({
1276
1201
  children: "Modify completed loan"
1277
1202
  }
1278
1203
  ),
1279
- /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "flex items-start justify-between gap-2", children: [
1280
- /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "flex min-w-0 flex-1 flex-col gap-1", children: [
1281
- (loanPurposeLabel || loanType) && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Badge, { variant: "outline", className: "self-start", children: loanPurposeLabel != null ? loanPurposeLabel : formatLoanType(loanType) }),
1282
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("span", { className: "text-base font-bold tabular-nums text-foreground", children: formatCurrency(amount) })
1204
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "flex items-start justify-between gap-2", children: [
1205
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "flex min-w-0 flex-1 flex-col gap-1", children: [
1206
+ (loanPurposeLabel || loanType) && /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(Badge, { variant: "outline", className: "self-start", children: loanPurposeLabel != null ? loanPurposeLabel : formatLoanType(loanType) }),
1207
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("span", { className: "text-base font-bold tabular-nums text-foreground", children: formatCurrency(amount) })
1283
1208
  ] }),
1284
- /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "flex items-center gap-1 -mr-1 -mt-1", onClick: stopProp, children: [
1285
- onLaunchAssistant && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(TooltipProvider, { delay: 0, children: /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(Tooltip, { children: [
1286
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(TooltipTrigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1287
- Button,
1288
- {
1289
- type: "button",
1290
- variant: "ghost",
1291
- size: "icon",
1292
- className: "size-7 shrink-0",
1293
- onClick: onLaunchAssistant,
1294
- "aria-label": "Launch AI",
1295
- children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_lucide_react6.Bot, { className: "size-4" })
1296
- }
1297
- ) }),
1298
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(TooltipContent, { children: "Launch AI" })
1299
- ] }) }),
1300
- hasMenu && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(DropdownMenu, { children: [
1301
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1302
- DropdownMenuTrigger,
1303
- {
1304
- className: cn(
1305
- buttonVariants({ variant: "ghost", size: "icon" }),
1306
- "size-7 shrink-0"
1307
- ),
1308
- "aria-label": "Opportunity actions",
1309
- children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_lucide_react6.MoreVertical, { className: "size-4" })
1310
- }
1311
- ),
1312
- /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(DropdownMenuContent, { align: "end", children: [
1313
- onViewDetails && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(DropdownMenuItem, { onClick: onViewDetails, children: "View details" }),
1314
- onChangePriority && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(DropdownMenuItem, { onClick: onChangePriority, children: "Change priority" }),
1315
- onPutOnHold && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(DropdownMenuItem, { onClick: onPutOnHold, children: "Put on hold" }),
1316
- onDelete && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(import_jsx_runtime16.Fragment, { children: [
1317
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(DropdownMenuSeparator, {}),
1318
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(DropdownMenuItem, { onClick: onDelete, variant: "destructive", children: "Delete" })
1319
- ] })
1209
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: "flex items-center gap-1 -mr-1 -mt-1", onClick: stopProp, children: hasMenu && /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(DropdownMenu, { children: [
1210
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1211
+ DropdownMenuTrigger,
1212
+ {
1213
+ className: cn(
1214
+ buttonVariants({ variant: "ghost", size: "icon" }),
1215
+ "size-7 shrink-0"
1216
+ ),
1217
+ "aria-label": "Opportunity actions",
1218
+ children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_lucide_react6.MoreVertical, { className: "size-4" })
1219
+ }
1220
+ ),
1221
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(DropdownMenuContent, { align: "end", children: [
1222
+ onViewDetails && /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(DropdownMenuItem, { onClick: onViewDetails, children: "View details" }),
1223
+ onChangePriority && /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(DropdownMenuItem, { onClick: onChangePriority, children: "Change priority" }),
1224
+ onPutOnHold && /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(DropdownMenuItem, { onClick: onPutOnHold, children: "Put on hold" }),
1225
+ onDelete && /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(import_jsx_runtime15.Fragment, { children: [
1226
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(DropdownMenuSeparator, {}),
1227
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(DropdownMenuItem, { onClick: onDelete, variant: "destructive", children: "Delete" })
1320
1228
  ] })
1321
1229
  ] })
1322
- ] })
1230
+ ] }) })
1323
1231
  ] }),
1324
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Separator, {}),
1325
- /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "flex flex-col gap-1", children: [
1326
- /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "flex items-center justify-between gap-2", children: [
1327
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("span", { className: "truncate text-sm font-semibold text-foreground", children: customerName }),
1328
- additionalContacts && additionalContacts > 0 ? /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(Badge, { variant: "secondary", className: "shrink-0 gap-1", children: [
1329
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_lucide_react6.Users, { className: "size-3", "aria-hidden": "true" }),
1232
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(Separator, {}),
1233
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "flex flex-col gap-1", children: [
1234
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "flex items-center justify-between gap-2", children: [
1235
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("span", { className: "truncate text-sm font-semibold text-foreground", children: customerName }),
1236
+ additionalContacts && additionalContacts > 0 ? /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(Badge, { variant: "secondary", className: "shrink-0 gap-1", children: [
1237
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_lucide_react6.Users, { className: "size-3", "aria-hidden": "true" }),
1330
1238
  "Joint"
1331
- ] }) : /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(Badge, { variant: "secondary", className: "shrink-0 gap-1", children: [
1332
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_lucide_react6.User, { className: "size-3", "aria-hidden": "true" }),
1239
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(Badge, { variant: "secondary", className: "shrink-0 gap-1", children: [
1240
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_lucide_react6.User, { className: "size-3", "aria-hidden": "true" }),
1333
1241
  "Individual"
1334
1242
  ] })
1335
1243
  ] }),
1336
- customerPhone && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("span", { className: "flex items-center gap-1.5 text-xs text-muted-foreground", children: [
1337
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_lucide_react6.Phone, { className: "size-3 shrink-0", "aria-hidden": "true" }),
1244
+ customerPhone && /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("span", { className: "flex items-center gap-1.5 text-xs text-muted-foreground", children: [
1245
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_lucide_react6.Phone, { className: "size-3 shrink-0", "aria-hidden": "true" }),
1338
1246
  customerPhone
1339
1247
  ] }),
1340
- customerEmail && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("span", { className: "flex items-center gap-1.5 text-xs text-muted-foreground", children: [
1341
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_lucide_react6.Mail, { className: "size-3 shrink-0", "aria-hidden": "true" }),
1342
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("span", { className: "truncate", children: customerEmail })
1248
+ customerEmail && /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("span", { className: "flex items-center gap-1.5 text-xs text-muted-foreground", children: [
1249
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_lucide_react6.Mail, { className: "size-3 shrink-0", "aria-hidden": "true" }),
1250
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("span", { className: "truncate", children: customerEmail })
1343
1251
  ] })
1344
1252
  ] }),
1345
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Separator, {}),
1346
- /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "flex items-center justify-between", children: [
1347
- /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("span", { className: "flex items-center gap-1.5 text-xs text-muted-foreground", children: [
1348
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_lucide_react6.Calendar, { className: "size-3 shrink-0", "aria-hidden": "true" }),
1253
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(Separator, {}),
1254
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "flex items-center justify-between", children: [
1255
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("span", { className: "flex items-center gap-1.5 text-xs text-muted-foreground", children: [
1256
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_lucide_react6.Calendar, { className: "size-3 shrink-0", "aria-hidden": "true" }),
1349
1257
  formatDateShort(date)
1350
1258
  ] }),
1351
- /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("span", { className: "flex items-center gap-1.5", children: [
1352
- daysSinceColumnChanged !== void 0 && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(import_jsx_runtime16.Fragment, { children: [
1353
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1259
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("span", { className: "flex items-center gap-1.5", children: [
1260
+ daysSinceColumnChanged !== void 0 && /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(import_jsx_runtime15.Fragment, { children: [
1261
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1354
1262
  import_lucide_react6.Clock,
1355
1263
  {
1356
1264
  className: "size-3 shrink-0",
@@ -1358,7 +1266,7 @@ function OpportunityCard({
1358
1266
  "aria-hidden": "true"
1359
1267
  }
1360
1268
  ),
1361
- /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
1269
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
1362
1270
  "span",
1363
1271
  {
1364
1272
  className: "text-xs font-medium tabular-nums",
@@ -1370,7 +1278,7 @@ function OpportunityCard({
1370
1278
  }
1371
1279
  )
1372
1280
  ] }),
1373
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1281
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1374
1282
  "span",
1375
1283
  {
1376
1284
  role: "img",
@@ -1382,8 +1290,8 @@ function OpportunityCard({
1382
1290
  ] })
1383
1291
  ] }),
1384
1292
  hasTasks && // stopPropagation: accordion expand/collapse + task checkboxes must not bubble to onCardClick
1385
- /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { onClick: stopProp, children: [
1386
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1293
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { onClick: stopProp, children: [
1294
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1387
1295
  "div",
1388
1296
  {
1389
1297
  className: "flex gap-0.5",
@@ -1392,7 +1300,7 @@ function OpportunityCard({
1392
1300
  "aria-valuemin": 0,
1393
1301
  "aria-valuemax": tasks.length,
1394
1302
  "aria-label": `${completedCount} of ${tasks.length} tasks complete`,
1395
- children: tasks.map((t, i) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1303
+ children: tasks.map((t, i) => /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1396
1304
  "div",
1397
1305
  {
1398
1306
  className: cn(
@@ -1404,43 +1312,42 @@ function OpportunityCard({
1404
1312
  ))
1405
1313
  }
1406
1314
  ),
1407
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Accordion, { type: "single", collapsible: true, className: "-mx-4", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(AccordionItem, { value: "tasks", className: "border-0", children: [
1408
- /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(AccordionTrigger, { className: "px-4 py-1.5 text-xs font-normal text-muted-foreground hover:no-underline hover:text-foreground [&>svg]:size-3.5", children: [
1315
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(Accordion, { type: "single", collapsible: true, className: "-mx-4", children: /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(AccordionItem, { value: "tasks", className: "border-0", children: [
1316
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(AccordionTrigger, { className: "px-4 py-1.5 text-xs font-normal text-muted-foreground hover:no-underline hover:text-foreground [&>svg]:size-3.5", children: [
1409
1317
  "Tasks (",
1410
1318
  completedCount,
1411
1319
  "/",
1412
1320
  tasks.length,
1413
1321
  ")"
1414
1322
  ] }),
1415
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(AccordionContent, { className: "px-4", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: "flex flex-col", children: tasks.map((task) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1323
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(AccordionContent, { className: "px-4", children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: "flex flex-col", children: tasks.map((task) => /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1416
1324
  TaskCheckItem,
1417
1325
  {
1418
1326
  title: task.title,
1419
1327
  completed: task.completed,
1420
- aiAgentName: task.aiAgentName,
1421
1328
  onToggle: onTaskToggle ? () => onTaskToggle(task.id) : void 0,
1422
1329
  disabled: isSubmitting
1423
1330
  },
1424
1331
  task.id
1425
1332
  )) }) })
1426
1333
  ] }) }),
1427
- nextTask && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "flex items-start gap-1.5 border border-primary/30 bg-primary/5 px-2 py-1.5 text-xs", children: [
1428
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1334
+ nextTask && /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "flex items-start gap-1.5 border border-primary/30 bg-primary/5 px-2 py-1.5 text-xs", children: [
1335
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1429
1336
  import_lucide_react6.ArrowRight,
1430
1337
  {
1431
1338
  className: "mt-0.5 size-3 shrink-0 text-primary",
1432
1339
  "aria-hidden": "true"
1433
1340
  }
1434
1341
  ),
1435
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("span", { className: "font-medium", children: "Next:" }),
1436
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("span", { className: "text-muted-foreground", children: nextTask })
1342
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("span", { className: "font-medium", children: "Next:" }),
1343
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("span", { className: "text-muted-foreground", children: nextTask })
1437
1344
  ] })
1438
1345
  ] }),
1439
1346
  hasActions && // stopPropagation: button clicks must not bubble to onCardClick
1440
- /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { onClick: stopProp, children: [
1441
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Separator, {}),
1442
- (onMoveToNextStage || onMarkAsDone) && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "flex gap-2 pt-2", children: [
1443
- onMoveToNextStage && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1347
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { onClick: stopProp, children: [
1348
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(Separator, {}),
1349
+ (onMoveToNextStage || onMarkAsDone) && /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "flex gap-2 pt-2", children: [
1350
+ onMoveToNextStage && /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1444
1351
  Button,
1445
1352
  {
1446
1353
  variant: "outline",
@@ -1451,7 +1358,7 @@ function OpportunityCard({
1451
1358
  children: "Move to next stage"
1452
1359
  }
1453
1360
  ),
1454
- onMarkAsDone && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1361
+ onMarkAsDone && /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1455
1362
  Button,
1456
1363
  {
1457
1364
  variant: "default",
@@ -1478,7 +1385,7 @@ function LeadCard({
1478
1385
  isSubmitting = false,
1479
1386
  className
1480
1387
  }) {
1481
- return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
1388
+ return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
1482
1389
  "div",
1483
1390
  {
1484
1391
  className: cn(
@@ -1488,20 +1395,20 @@ function LeadCard({
1488
1395
  ),
1489
1396
  "data-slot": "lead-card",
1490
1397
  children: [
1491
- /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "flex items-start justify-between gap-2", children: [
1492
- /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "flex min-w-0 flex-1 flex-col gap-1", children: [
1493
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("span", { className: "text-sm font-semibold text-foreground", children: customerName }),
1494
- customerPhone && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("span", { className: "flex items-center gap-1.5 text-xs text-muted-foreground", children: [
1495
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_lucide_react6.Phone, { className: "size-3 shrink-0", "aria-hidden": "true" }),
1398
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "flex items-start justify-between gap-2", children: [
1399
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "flex min-w-0 flex-1 flex-col gap-1", children: [
1400
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("span", { className: "text-sm font-semibold text-foreground", children: customerName }),
1401
+ customerPhone && /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("span", { className: "flex items-center gap-1.5 text-xs text-muted-foreground", children: [
1402
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_lucide_react6.Phone, { className: "size-3 shrink-0", "aria-hidden": "true" }),
1496
1403
  customerPhone
1497
1404
  ] }),
1498
- customerEmail && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("span", { className: "flex items-center gap-1.5 text-xs text-muted-foreground", children: [
1499
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_lucide_react6.Mail, { className: "size-3 shrink-0", "aria-hidden": "true" }),
1500
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("span", { className: "truncate", children: customerEmail })
1405
+ customerEmail && /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("span", { className: "flex items-center gap-1.5 text-xs text-muted-foreground", children: [
1406
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_lucide_react6.Mail, { className: "size-3 shrink-0", "aria-hidden": "true" }),
1407
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("span", { className: "truncate", children: customerEmail })
1501
1408
  ] })
1502
1409
  ] }),
1503
- onDelete && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(DropdownMenu, { children: [
1504
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1410
+ onDelete && /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(DropdownMenu, { children: [
1411
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1505
1412
  DropdownMenuTrigger,
1506
1413
  {
1507
1414
  className: cn(
@@ -1509,10 +1416,10 @@ function LeadCard({
1509
1416
  "-mr-1 -mt-1 size-7 shrink-0"
1510
1417
  ),
1511
1418
  "aria-label": "Lead actions",
1512
- children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_lucide_react6.MoreVertical, { className: "size-4" })
1419
+ children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_lucide_react6.MoreVertical, { className: "size-4" })
1513
1420
  }
1514
1421
  ),
1515
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(DropdownMenuContent, { align: "end", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1422
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(DropdownMenuContent, { align: "end", children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1516
1423
  DropdownMenuItem,
1517
1424
  {
1518
1425
  onClick: onDelete,
@@ -1522,9 +1429,9 @@ function LeadCard({
1522
1429
  ) })
1523
1430
  ] })
1524
1431
  ] }),
1525
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Separator, {}),
1526
- onSendLoanApplication && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "flex flex-col gap-2", children: [
1527
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1432
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(Separator, {}),
1433
+ onSendLoanApplication && /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "flex flex-col gap-2", children: [
1434
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1528
1435
  Button,
1529
1436
  {
1530
1437
  variant: "outline",
@@ -1535,13 +1442,16 @@ function LeadCard({
1535
1442
  children: "Send Loan Application Request"
1536
1443
  }
1537
1444
  ),
1538
- loanApplicationUrl && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("p", { className: "text-xs text-muted-foreground", children: [
1445
+ loanApplicationUrl && /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("p", { className: "text-xs text-muted-foreground", children: [
1539
1446
  "Or the link below to fill out the loan application directly.",
1540
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("br", {}),
1541
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1447
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("br", {}),
1448
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1542
1449
  "a",
1543
1450
  {
1544
- href: `https://${loanApplicationUrl.replace(/^https?:\/\//, "")}`,
1451
+ href: `https://${loanApplicationUrl.replace(
1452
+ /^https?:\/\//,
1453
+ ""
1454
+ )}`,
1545
1455
  target: "_blank",
1546
1456
  rel: "noreferrer",
1547
1457
  className: "text-primary underline-offset-2 hover:underline",
@@ -1556,7 +1466,7 @@ function LeadCard({
1556
1466
  }
1557
1467
 
1558
1468
  // src/components/ui/kanban-column.tsx
1559
- var import_jsx_runtime17 = require("react/jsx-runtime");
1469
+ var import_jsx_runtime16 = require("react/jsx-runtime");
1560
1470
  function formatTotalValue(value) {
1561
1471
  return formatCurrency(value);
1562
1472
  }
@@ -1582,7 +1492,6 @@ function KanbanColumn({
1582
1492
  onCardClick,
1583
1493
  onViewDetails,
1584
1494
  onChangePriority,
1585
- onLaunchAssistant,
1586
1495
  onPutOnHold,
1587
1496
  onDeleteOpportunity,
1588
1497
  onCardDrop,
@@ -1612,7 +1521,7 @@ function KanbanColumn({
1612
1521
  const cardId = e.dataTransfer.getData("text/plain");
1613
1522
  if (cardId) onCardDrop(cardId);
1614
1523
  }
1615
- return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
1524
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
1616
1525
  "div",
1617
1526
  {
1618
1527
  className: cn(
@@ -1626,15 +1535,15 @@ function KanbanColumn({
1626
1535
  }),
1627
1536
  "data-slot": "kanban-column",
1628
1537
  children: [
1629
- /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("div", { className: "flex flex-col gap-2 border-b border-border bg-background px-3 py-3", children: [
1630
- /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("div", { className: "flex items-center justify-between gap-2", children: [
1631
- /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("h2", { className: "text-sm font-semibold text-foreground", children: [
1632
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("span", { className: "text-muted-foreground", children: stage.count }),
1538
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "flex flex-col gap-2 border-b border-border bg-background px-3 py-3", children: [
1539
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "flex items-center justify-between gap-2", children: [
1540
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("h2", { className: "text-sm font-semibold text-foreground", children: [
1541
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("span", { className: "text-muted-foreground", children: stage.count }),
1633
1542
  " ",
1634
1543
  stage.name
1635
1544
  ] }),
1636
- hasMenu && /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(DropdownMenu, { children: [
1637
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
1545
+ hasMenu && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(DropdownMenu, { children: [
1546
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1638
1547
  DropdownMenuTrigger,
1639
1548
  {
1640
1549
  className: cn(
@@ -1642,14 +1551,14 @@ function KanbanColumn({
1642
1551
  "-mr-1 size-7 shrink-0"
1643
1552
  ),
1644
1553
  "aria-label": "Column actions",
1645
- children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_lucide_react7.MoreVertical, { className: "size-4" })
1554
+ children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_lucide_react7.MoreVertical, { className: "size-4" })
1646
1555
  }
1647
1556
  ),
1648
- /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(DropdownMenuContent, { align: "end", children: [
1649
- onEditColumn && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(DropdownMenuItem, { onClick: onEditColumn, children: "Edit column settings" }),
1650
- !isDefault && onDeleteColumn && /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_jsx_runtime17.Fragment, { children: [
1651
- onEditColumn && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(DropdownMenuSeparator, {}),
1652
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
1557
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(DropdownMenuContent, { align: "end", children: [
1558
+ onEditColumn && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(DropdownMenuItem, { onClick: onEditColumn, children: "Edit column settings" }),
1559
+ !isDefault && onDeleteColumn && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(import_jsx_runtime16.Fragment, { children: [
1560
+ onEditColumn && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(DropdownMenuSeparator, {}),
1561
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1653
1562
  DropdownMenuItem,
1654
1563
  {
1655
1564
  onClick: onDeleteColumn,
@@ -1661,8 +1570,8 @@ function KanbanColumn({
1661
1570
  ] })
1662
1571
  ] })
1663
1572
  ] }),
1664
- /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("div", { className: "flex items-center justify-between gap-2", children: [
1665
- stage.growth != null ? /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
1573
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "flex items-center justify-between gap-2", children: [
1574
+ stage.growth != null ? /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
1666
1575
  Badge,
1667
1576
  {
1668
1577
  variant: "outline",
@@ -1672,11 +1581,11 @@ function KanbanColumn({
1672
1581
  stage.growth
1673
1582
  ]
1674
1583
  }
1675
- ) : /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("span", {}),
1676
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("span", { className: "text-xs font-medium tabular-nums text-muted-foreground", children: formatTotalValue(stage.totalValue) })
1584
+ ) : /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("span", {}),
1585
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("span", { className: "text-xs font-medium tabular-nums text-muted-foreground", children: formatTotalValue(stage.totalValue) })
1677
1586
  ] })
1678
1587
  ] }),
1679
- /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
1588
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
1680
1589
  "div",
1681
1590
  {
1682
1591
  className: cn(
@@ -1687,13 +1596,13 @@ function KanbanColumn({
1687
1596
  onDragLeave: handleDragLeave,
1688
1597
  onDrop: handleDrop,
1689
1598
  children: [
1690
- (isDropTarget || isDragOver) && /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("div", { className: "border border-dashed border-primary/40 bg-primary/5 px-3 py-2 text-center text-xs text-primary", children: [
1599
+ (isDropTarget || isDragOver) && /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "border border-dashed border-primary/40 bg-primary/5 px-3 py-2 text-center text-xs text-primary", children: [
1691
1600
  "Drop here \u2192 ",
1692
1601
  stage.name
1693
1602
  ] }),
1694
- isLoading ? /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "flex flex-1 items-center justify-center py-8", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Spinner, { className: "size-5 text-muted-foreground" }) }) : opportunities.length === 0 ? /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "flex flex-1 items-center justify-center py-8", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("p", { className: "text-xs text-muted-foreground", children: "No opportunities in this stage" }) }) : /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(import_jsx_runtime17.Fragment, { children: [
1603
+ isLoading ? /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: "flex flex-1 items-center justify-center py-8", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Spinner, { className: "size-5 text-muted-foreground" }) }) : opportunities.length === 0 ? /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: "flex flex-1 items-center justify-center py-8", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("p", { className: "text-xs text-muted-foreground", children: "No opportunities in this stage" }) }) : /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(import_jsx_runtime16.Fragment, { children: [
1695
1604
  opportunities.map(
1696
- (opp) => onSendLoanApplication ? /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
1605
+ (opp) => onSendLoanApplication ? /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1697
1606
  LeadCard,
1698
1607
  {
1699
1608
  id: opp.id,
@@ -1706,7 +1615,7 @@ function KanbanColumn({
1706
1615
  isSubmitting: submittingOpportunityId === opp.id
1707
1616
  },
1708
1617
  opp.id
1709
- ) : /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
1618
+ ) : /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1710
1619
  OpportunityCard,
1711
1620
  __spreadProps(__spreadValues({}, opp), {
1712
1621
  draggable: !!onCardDrop,
@@ -1720,7 +1629,6 @@ function KanbanColumn({
1720
1629
  onMoveToNextStage: onMoveToNextStage ? () => onMoveToNextStage(opp.id) : void 0,
1721
1630
  onViewDetails: onViewDetails ? () => onViewDetails(opp.id) : void 0,
1722
1631
  onChangePriority: onChangePriority ? () => onChangePriority(opp.id) : void 0,
1723
- onLaunchAssistant: onLaunchAssistant ? () => onLaunchAssistant(opp.id) : void 0,
1724
1632
  onPutOnHold: onPutOnHold ? () => onPutOnHold(opp.id) : void 0,
1725
1633
  onDelete: onDeleteOpportunity ? () => onDeleteOpportunity(opp.id) : void 0,
1726
1634
  isSubmitting: submittingOpportunityId === opp.id
@@ -1728,12 +1636,12 @@ function KanbanColumn({
1728
1636
  opp.id
1729
1637
  )
1730
1638
  ),
1731
- hasMore && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
1639
+ hasMore && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1732
1640
  "div",
1733
1641
  {
1734
1642
  ref: loaderRef,
1735
1643
  className: "flex min-h-[50px] items-center justify-center",
1736
- children: isLoadingMore && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Spinner, { className: "size-5 text-muted-foreground" })
1644
+ children: isLoadingMore && /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Spinner, { className: "size-5 text-muted-foreground" })
1737
1645
  }
1738
1646
  )
1739
1647
  ] })
@@ -1746,7 +1654,7 @@ function KanbanColumn({
1746
1654
  }
1747
1655
 
1748
1656
  // src/components/ui/pipeline-board.tsx
1749
- var import_jsx_runtime18 = require("react/jsx-runtime");
1657
+ var import_jsx_runtime17 = require("react/jsx-runtime");
1750
1658
  function Toolbar({
1751
1659
  searchValue,
1752
1660
  onSearchChange,
@@ -1755,10 +1663,10 @@ function Toolbar({
1755
1663
  onFilterChange,
1756
1664
  onRefresh
1757
1665
  }) {
1758
- return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("div", { className: "flex flex-wrap items-center gap-3 border-b border-border bg-background px-4 py-3", children: [
1759
- /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("div", { className: "relative w-56 shrink-0", children: [
1760
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_lucide_react8.Search, { className: "absolute left-2.5 top-1/2 size-3.5 -translate-y-1/2 text-muted-foreground" }),
1761
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
1666
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("div", { className: "flex flex-wrap items-center gap-3 border-b border-border bg-background px-4 py-3", children: [
1667
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("div", { className: "relative w-56 shrink-0", children: [
1668
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_lucide_react8.Search, { className: "absolute left-2.5 top-1/2 size-3.5 -translate-y-1/2 text-muted-foreground" }),
1669
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
1762
1670
  Input,
1763
1671
  {
1764
1672
  placeholder: "Search opportunities\u2026",
@@ -1767,7 +1675,7 @@ function Toolbar({
1767
1675
  className: "h-8 pl-8 text-sm"
1768
1676
  }
1769
1677
  ),
1770
- searchValue && /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
1678
+ searchValue && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
1771
1679
  Button,
1772
1680
  {
1773
1681
  type: "button",
@@ -1776,11 +1684,11 @@ function Toolbar({
1776
1684
  onClick: () => onSearchChange(""),
1777
1685
  className: "absolute right-2 top-1/2 size-6 -translate-y-1/2 text-muted-foreground hover:text-foreground",
1778
1686
  "aria-label": "Clear search",
1779
- children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_lucide_react8.X, { className: "size-3.5" })
1687
+ children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_lucide_react8.X, { className: "size-3.5" })
1780
1688
  }
1781
1689
  )
1782
1690
  ] }),
1783
- filterOptions.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
1691
+ filterOptions.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
1784
1692
  ToggleGroup,
1785
1693
  {
1786
1694
  type: "multiple",
@@ -1793,10 +1701,10 @@ function Toolbar({
1793
1701
  const toggled = (_a = newValues.find((v) => !activeFilters.includes(v))) != null ? _a : activeFilters.find((v) => !newValues.includes(v));
1794
1702
  if (toggled) onFilterChange(toggled);
1795
1703
  },
1796
- children: filterOptions.map((option) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(ToggleGroupItem, { value: option, children: option }, option))
1704
+ children: filterOptions.map((option) => /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(ToggleGroupItem, { value: option, children: option }, option))
1797
1705
  }
1798
1706
  ),
1799
- onRefresh && /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
1707
+ onRefresh && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
1800
1708
  Button,
1801
1709
  {
1802
1710
  type: "button",
@@ -1805,7 +1713,7 @@ function Toolbar({
1805
1713
  onClick: onRefresh,
1806
1714
  className: "ml-auto text-muted-foreground hover:text-foreground",
1807
1715
  "aria-label": "Refresh board",
1808
- children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_lucide_react8.RefreshCw, { className: "size-4" })
1716
+ children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_lucide_react8.RefreshCw, { className: "size-4" })
1809
1717
  }
1810
1718
  )
1811
1719
  ] });
@@ -1827,20 +1735,19 @@ function PipelineBoard({
1827
1735
  onMoveToNextStage,
1828
1736
  onViewDetails,
1829
1737
  onChangePriority,
1830
- onLaunchAssistant,
1831
1738
  onPutOnHold,
1832
1739
  onDeleteOpportunity,
1833
1740
  submittingOpportunityId,
1834
1741
  className
1835
1742
  }) {
1836
1743
  const hasToolbar = onSearchChange || filterOptions.length > 0 && onFilterChange;
1837
- return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
1744
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
1838
1745
  "div",
1839
1746
  {
1840
1747
  className: cn("flex h-full flex-col bg-muted/20", className),
1841
1748
  "data-slot": "pipeline-board",
1842
1749
  children: [
1843
- hasToolbar && /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
1750
+ hasToolbar && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
1844
1751
  Toolbar,
1845
1752
  {
1846
1753
  searchValue,
@@ -1853,8 +1760,8 @@ function PipelineBoard({
1853
1760
  onRefresh
1854
1761
  }
1855
1762
  ),
1856
- /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("div", { className: "flex flex-1 gap-3 overflow-x-auto p-4", children: [
1857
- columns.map((col) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
1763
+ /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("div", { className: "flex flex-1 gap-3 overflow-x-auto p-4", children: [
1764
+ columns.map((col) => /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
1858
1765
  KanbanColumn,
1859
1766
  {
1860
1767
  stage: col.stage,
@@ -1876,14 +1783,13 @@ function PipelineBoard({
1876
1783
  onSendLoanApplication: col.onSendLoanApplication,
1877
1784
  onViewDetails,
1878
1785
  onChangePriority,
1879
- onLaunchAssistant,
1880
1786
  onPutOnHold,
1881
1787
  onDeleteOpportunity,
1882
1788
  submittingOpportunityId
1883
1789
  },
1884
1790
  col.key
1885
1791
  )),
1886
- columns.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "flex flex-1 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("p", { className: "text-sm text-muted-foreground", children: "No columns to display." }) })
1792
+ columns.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "flex flex-1 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("p", { className: "text-sm text-muted-foreground", children: "No columns to display." }) })
1887
1793
  ] })
1888
1794
  ]
1889
1795
  }