@wealthx/shadcn 1.5.5 → 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 (95) hide show
  1. package/.turbo/turbo-build.log +164 -158
  2. package/CHANGELOG.md +12 -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-PV7PNA6K.mjs → chunk-IKDTOCSY.mjs} +2 -4
  21. package/dist/{chunk-Q5SGEIJV.mjs → chunk-IXKE6LHN.mjs} +1 -1
  22. package/dist/{chunk-OL65UQHQ.mjs → chunk-JCH2BG24.mjs} +26 -60
  23. package/dist/{chunk-PV3Y7QGK.mjs → chunk-LHWJQNLG.mjs} +3 -3
  24. package/dist/{chunk-JTG5R5YV.mjs → chunk-MS4PDUSU.mjs} +284 -58
  25. package/dist/{chunk-VFH632TB.mjs → chunk-SDNG4XL6.mjs} +1 -1
  26. package/dist/{chunk-DFL5CV75.mjs → chunk-T6MMCOX6.mjs} +1 -1
  27. package/dist/{chunk-6TX73WG7.mjs → chunk-TCE5L44O.mjs} +3 -2
  28. package/dist/{chunk-HROG643K.mjs → chunk-W5QJ57PU.mjs} +1 -1
  29. package/dist/{chunk-EW72FINW.mjs → chunk-XVZGXPIX.mjs} +1 -1
  30. package/dist/components/ui/about-you-form.mjs +3 -3
  31. package/dist/components/ui/add-column-modal.js +56 -227
  32. package/dist/components/ui/add-column-modal.mjs +1 -2
  33. package/dist/components/ui/ai-conversations.js +278 -58
  34. package/dist/components/ui/ai-conversations.mjs +1 -1
  35. package/dist/components/ui/appointment-action-dialogs.mjs +3 -3
  36. package/dist/components/ui/appointment-availability-settings.js +2 -28
  37. package/dist/components/ui/appointment-availability-settings.mjs +4 -4
  38. package/dist/components/ui/appointment-book-dialog.js +11 -21
  39. package/dist/components/ui/appointment-book-dialog.mjs +3 -3
  40. package/dist/components/ui/appointment-calendar-view.mjs +2 -2
  41. package/dist/components/ui/appointment-detail-sheet.mjs +4 -4
  42. package/dist/components/ui/appointment-upcoming-card.mjs +3 -3
  43. package/dist/components/ui/bank-statement-generate-dialog.mjs +4 -4
  44. package/dist/components/ui/calendar.mjs +2 -2
  45. package/dist/components/ui/dashboard-transactions-table.mjs +1 -1
  46. package/dist/components/ui/date-picker.mjs +3 -3
  47. package/dist/components/ui/financial-cards.mjs +2 -2
  48. package/dist/components/ui/financial-sections.mjs +3 -3
  49. package/dist/components/ui/integration-card.js +326 -0
  50. package/dist/components/ui/integration-card.mjs +11 -0
  51. package/dist/components/ui/kanban-column.js +151 -243
  52. package/dist/components/ui/kanban-column.mjs +3 -4
  53. package/dist/components/ui/loan-application-cards.mjs +1 -1
  54. package/dist/components/ui/onboarding-layout.js +65 -4
  55. package/dist/components/ui/onboarding-layout.mjs +6 -4
  56. package/dist/components/ui/opportunity-card.js +126 -216
  57. package/dist/components/ui/opportunity-card.mjs +2 -3
  58. package/dist/components/ui/opportunity-edit-modals.mjs +4 -4
  59. package/dist/components/ui/opportunity-summary-tab.mjs +6 -6
  60. package/dist/components/ui/pipeline-board.js +167 -261
  61. package/dist/components/ui/pipeline-board.mjs +4 -5
  62. package/dist/components/ui/pipeline-chart.js +128 -55
  63. package/dist/components/ui/pipeline-chart.mjs +2 -1
  64. package/dist/components/ui/pipeline-dialogs.mjs +4 -4
  65. package/dist/components/ui/savings-goal-modal.mjs +3 -3
  66. package/dist/components/ui/selectable-card.js +163 -0
  67. package/dist/components/ui/selectable-card.mjs +9 -0
  68. package/dist/components/ui/sidebar-nav.js +2 -4
  69. package/dist/components/ui/sidebar-nav.mjs +1 -1
  70. package/dist/components/ui/signup-shell.js +3 -2
  71. package/dist/components/ui/signup-shell.mjs +2 -2
  72. package/dist/components/ui/stepper.js +3 -2
  73. package/dist/components/ui/stepper.mjs +1 -1
  74. package/dist/index.js +2122 -1881
  75. package/dist/index.mjs +56 -46
  76. package/dist/styles.css +1 -1
  77. package/package.json +11 -1
  78. package/src/components/index.tsx +26 -2
  79. package/src/components/ui/add-column-modal.tsx +9 -58
  80. package/src/components/ui/ai-conversations.tsx +308 -42
  81. package/src/components/ui/appointment-availability-settings.tsx +2 -35
  82. package/src/components/ui/appointment-book-dialog.tsx +25 -48
  83. package/src/components/ui/integration-card.tsx +88 -0
  84. package/src/components/ui/kanban-column.tsx +0 -7
  85. package/src/components/ui/onboarding-layout.tsx +102 -1
  86. package/src/components/ui/opportunity-card.tsx +5 -53
  87. package/src/components/ui/pipeline-board.tsx +0 -3
  88. package/src/components/ui/pipeline-chart.tsx +47 -53
  89. package/src/components/ui/selectable-card.tsx +37 -0
  90. package/src/components/ui/sidebar-nav.tsx +0 -2
  91. package/src/components/ui/stepper.tsx +3 -2
  92. package/src/lib/format-date.ts +6 -6
  93. package/src/styles/styles-css.ts +1 -1
  94. package/tsup.config.ts +2 -0
  95. package/dist/chunk-2P7HP7LR.mjs +0 -68
@@ -1,18 +1,17 @@
1
1
  import {
2
2
  PipelineBoard
3
- } from "../../chunk-QRVEI6J3.mjs";
4
- import "../../chunk-ODO6BUOF.mjs";
5
- import "../../chunk-RAKBWNQH.mjs";
3
+ } from "../../chunk-BQBSYM2I.mjs";
4
+ import "../../chunk-HRHXZIX5.mjs";
5
+ import "../../chunk-5WCIGJ3E.mjs";
6
6
  import "../../chunk-2WCIORP7.mjs";
7
7
  import "../../chunk-JPGL36WQ.mjs";
8
8
  import "../../chunk-IKXYTCSB.mjs";
9
9
  import "../../chunk-JVMXMFBB.mjs";
10
10
  import "../../chunk-PNSYFE3K.mjs";
11
11
  import "../../chunk-HNDTLT5X.mjs";
12
- import "../../chunk-6SR4K5T5.mjs";
13
12
  import "../../chunk-2GIYVERS.mjs";
14
13
  import "../../chunk-WL6WVV47.mjs";
15
- import "../../chunk-PV3Y7QGK.mjs";
14
+ import "../../chunk-LHWJQNLG.mjs";
16
15
  import "../../chunk-OWFQSXVD.mjs";
17
16
  import "../../chunk-6QAFGZC2.mjs";
18
17
  import "../../chunk-LBTHZSBT.mjs";
@@ -1,10 +1,39 @@
1
1
  "use strict";
2
2
  var __create = Object.create;
3
3
  var __defProp = Object.defineProperty;
4
+ var __defProps = Object.defineProperties;
4
5
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
5
7
  var __getOwnPropNames = Object.getOwnPropertyNames;
8
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
6
9
  var __getProtoOf = Object.getPrototypeOf;
7
10
  var __hasOwnProp = Object.prototype.hasOwnProperty;
11
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
12
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
13
+ var __spreadValues = (a, b) => {
14
+ for (var prop in b || (b = {}))
15
+ if (__hasOwnProp.call(b, prop))
16
+ __defNormalProp(a, prop, b[prop]);
17
+ if (__getOwnPropSymbols)
18
+ for (var prop of __getOwnPropSymbols(b)) {
19
+ if (__propIsEnum.call(b, prop))
20
+ __defNormalProp(a, prop, b[prop]);
21
+ }
22
+ return a;
23
+ };
24
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
25
+ var __objRest = (source, exclude) => {
26
+ var target = {};
27
+ for (var prop in source)
28
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
29
+ target[prop] = source[prop];
30
+ if (source != null && __getOwnPropSymbols)
31
+ for (var prop of __getOwnPropSymbols(source)) {
32
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
33
+ target[prop] = source[prop];
34
+ }
35
+ return target;
36
+ };
8
37
  var __export = (target, all) => {
9
38
  for (var name in all)
10
39
  __defProp(target, name, { get: all[name], enumerable: true });
@@ -93,8 +122,66 @@ function formatCurrencyAbbrev(value) {
93
122
  return `${sign}$${abs.toFixed(0)}`;
94
123
  }
95
124
 
96
- // src/components/ui/pipeline-chart.tsx
125
+ // src/components/ui/tooltip.tsx
126
+ var import_tooltip = require("@base-ui/react/tooltip");
97
127
  var import_jsx_runtime2 = require("react/jsx-runtime");
128
+ function TooltipProvider(_a) {
129
+ var _b = _a, {
130
+ delay = 0
131
+ } = _b, props = __objRest(_b, [
132
+ "delay"
133
+ ]);
134
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
135
+ import_tooltip.Tooltip.Provider,
136
+ __spreadValues({
137
+ "data-slot": "tooltip-provider",
138
+ delay
139
+ }, props)
140
+ );
141
+ }
142
+ function Tooltip(_a) {
143
+ var props = __objRest(_a, []);
144
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_tooltip.Tooltip.Root, __spreadValues({ "data-slot": "tooltip" }, props));
145
+ }
146
+ function TooltipTrigger(_a) {
147
+ var props = __objRest(_a, []);
148
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_tooltip.Tooltip.Trigger, __spreadValues({ "data-slot": "tooltip-trigger" }, props));
149
+ }
150
+ function TooltipContent(_a) {
151
+ var _b = _a, {
152
+ className,
153
+ sideOffset = 8,
154
+ side,
155
+ children,
156
+ style
157
+ } = _b, props = __objRest(_b, [
158
+ "className",
159
+ "sideOffset",
160
+ "side",
161
+ "children",
162
+ "style"
163
+ ]);
164
+ const themeVars = useThemeVars();
165
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_tooltip.Tooltip.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_tooltip.Tooltip.Positioner, { sideOffset, side, children: /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(
166
+ import_tooltip.Tooltip.Popup,
167
+ __spreadProps(__spreadValues({
168
+ className: cn(
169
+ "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",
170
+ className
171
+ ),
172
+ "data-slot": "tooltip-content",
173
+ style: __spreadValues(__spreadValues({}, themeVars), style)
174
+ }, props), {
175
+ children: [
176
+ children,
177
+ /* @__PURE__ */ (0, import_jsx_runtime2.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" })
178
+ ]
179
+ })
180
+ ) }) });
181
+ }
182
+
183
+ // src/components/ui/pipeline-chart.tsx
184
+ var import_jsx_runtime3 = require("react/jsx-runtime");
98
185
  function formatValue(v) {
99
186
  return formatCurrencyAbbrev(v);
100
187
  }
@@ -112,12 +199,10 @@ function PipelineChart({
112
199
  }) {
113
200
  const themeVars = useThemeVars();
114
201
  const [activeId, setActiveId] = React2.useState(null);
115
- const [tooltipX, setTooltipX] = React2.useState(0);
116
- const barRef = React2.useRef(null);
117
202
  const nonEmpty = stages.filter((s) => s.value > 0);
118
203
  const total = nonEmpty.reduce((sum, s) => sum + s.value, 0);
119
204
  if (total === 0 || stages.length === 0) {
120
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
205
+ return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
121
206
  "div",
122
207
  {
123
208
  className: cn(
@@ -130,75 +215,63 @@ function PipelineChart({
130
215
  }
131
216
  );
132
217
  }
133
- const activeStage = activeId ? stages.find((s) => s.id === activeId) : null;
134
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(
218
+ return /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(
135
219
  "div",
136
220
  {
137
221
  className: cn("flex flex-col gap-3", className),
138
222
  "data-slot": "pipeline-chart",
139
223
  style: themeVars,
140
224
  children: [
141
- /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(
225
+ /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(TooltipProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
142
226
  "div",
143
227
  {
144
- ref: barRef,
145
228
  className: "relative flex w-full overflow-hidden",
146
229
  style: { height: barHeight },
147
- children: [
148
- nonEmpty.map((stage, i) => {
149
- var _a;
150
- const pct = stage.value / total * 100;
151
- const color = (_a = stage.color) != null ? _a : FALLBACK_COLORS[i % FALLBACK_COLORS.length];
152
- const isActive = activeId === stage.id;
153
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
154
- "div",
230
+ children: nonEmpty.map((stage, i) => {
231
+ var _a;
232
+ const pct = stage.value / total * 100;
233
+ const color = (_a = stage.color) != null ? _a : FALLBACK_COLORS[i % FALLBACK_COLORS.length];
234
+ const isActive = activeId === stage.id;
235
+ return /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(Tooltip, { children: [
236
+ /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
237
+ TooltipTrigger,
155
238
  {
156
- role: "img",
157
- className: "relative h-full cursor-pointer transition-opacity",
158
- style: {
159
- width: `${pct}%`,
160
- backgroundColor: color,
161
- opacity: activeId && !isActive ? 0.5 : 1,
162
- minWidth: 2
163
- },
164
- onMouseEnter: (e) => {
165
- setActiveId(stage.id);
166
- const bar = barRef.current;
167
- if (!bar) return;
168
- const rect = e.currentTarget.getBoundingClientRect();
169
- const barRect = bar.getBoundingClientRect();
170
- setTooltipX(rect.left + rect.width / 2 - barRect.left);
171
- },
172
- onMouseLeave: () => setActiveId(null),
173
- "aria-label": `${stage.name}: ${formatValue(stage.value)}`
174
- },
175
- stage.id
176
- );
177
- }),
178
- activeStage && /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(
179
- "div",
180
- {
181
- className: "pointer-events-none absolute -top-8 z-10 whitespace-nowrap border border-border bg-popover px-2 py-1 text-xs text-popover-foreground shadow-sm",
182
- style: { left: tooltipX, transform: "translateX(-50%)" },
183
- children: [
184
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("span", { className: "font-medium", children: activeStage.name }),
185
- " \u2014 ",
186
- formatValue(activeStage.value)
187
- ]
188
- }
189
- )
190
- ]
239
+ render: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
240
+ "div",
241
+ {
242
+ role: "img",
243
+ className: "relative h-full cursor-pointer transition-opacity",
244
+ style: {
245
+ width: `${pct}%`,
246
+ backgroundColor: color,
247
+ opacity: activeId && !isActive ? 0.5 : 1,
248
+ minWidth: 2
249
+ },
250
+ onMouseEnter: () => setActiveId(stage.id),
251
+ onMouseLeave: () => setActiveId(null),
252
+ "aria-label": `${stage.name}: ${formatValue(stage.value)}`
253
+ }
254
+ )
255
+ }
256
+ ),
257
+ /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(TooltipContent, { side: "top", children: [
258
+ /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("span", { className: "font-medium", children: stage.name }),
259
+ " \u2014 ",
260
+ formatValue(stage.value)
261
+ ] })
262
+ ] }, stage.id);
263
+ })
191
264
  }
192
- ),
193
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "flex flex-wrap gap-x-4 gap-y-1.5", children: nonEmpty.map((stage, i) => {
265
+ ) }),
266
+ /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("div", { className: "flex flex-wrap gap-x-4 gap-y-1.5", children: nonEmpty.map((stage, i) => {
194
267
  var _a;
195
268
  const color = (_a = stage.color) != null ? _a : FALLBACK_COLORS[i % FALLBACK_COLORS.length];
196
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(
269
+ return /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(
197
270
  "div",
198
271
  {
199
272
  className: "flex items-center gap-1.5 text-xs text-muted-foreground",
200
273
  children: [
201
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
274
+ /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
202
275
  "span",
203
276
  {
204
277
  className: "inline-block size-2 shrink-0 rounded-full",
@@ -1,6 +1,7 @@
1
1
  import {
2
2
  PipelineChart
3
- } from "../../chunk-D447W45Z.mjs";
3
+ } from "../../chunk-7OLKVKJF.mjs";
4
+ import "../../chunk-6SR4K5T5.mjs";
4
5
  import "../../chunk-WDTXHLYM.mjs";
5
6
  import "../../chunk-S4CTM3UE.mjs";
6
7
  import "../../chunk-MN5NYQCL.mjs";
@@ -2,13 +2,13 @@ import {
2
2
  ChangePriorityDialog,
3
3
  DeleteOpportunityDialog,
4
4
  PutOnHoldDialog
5
- } from "../../chunk-VFH632TB.mjs";
5
+ } from "../../chunk-SDNG4XL6.mjs";
6
6
  import "../../chunk-TAX3KL66.mjs";
7
7
  import "../../chunk-NCUH54IZ.mjs";
8
- import "../../chunk-BFB3UH7V.mjs";
8
+ import "../../chunk-C2QMHKLT.mjs";
9
9
  import "../../chunk-C6SWS7OW.mjs";
10
- import "../../chunk-Q35PNFJ7.mjs";
11
- import "../../chunk-PV3Y7QGK.mjs";
10
+ import "../../chunk-FBNEIYSE.mjs";
11
+ import "../../chunk-LHWJQNLG.mjs";
12
12
  import "../../chunk-OWFQSXVD.mjs";
13
13
  import "../../chunk-6QAFGZC2.mjs";
14
14
  import "../../chunk-LBTHZSBT.mjs";
@@ -11,10 +11,10 @@ import {
11
11
  } from "../../chunk-NCUH54IZ.mjs";
12
12
  import {
13
13
  DatePicker
14
- } from "../../chunk-BFB3UH7V.mjs";
14
+ } from "../../chunk-C2QMHKLT.mjs";
15
15
  import "../../chunk-C6SWS7OW.mjs";
16
- import "../../chunk-Q35PNFJ7.mjs";
17
- import "../../chunk-PV3Y7QGK.mjs";
16
+ import "../../chunk-FBNEIYSE.mjs";
17
+ import "../../chunk-LHWJQNLG.mjs";
18
18
  import {
19
19
  ToggleGroup,
20
20
  ToggleGroupItem
@@ -0,0 +1,163 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __defProps = Object.defineProperties;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
8
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
10
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
11
+ var __spreadValues = (a, b) => {
12
+ for (var prop in b || (b = {}))
13
+ if (__hasOwnProp.call(b, prop))
14
+ __defNormalProp(a, prop, b[prop]);
15
+ if (__getOwnPropSymbols)
16
+ for (var prop of __getOwnPropSymbols(b)) {
17
+ if (__propIsEnum.call(b, prop))
18
+ __defNormalProp(a, prop, b[prop]);
19
+ }
20
+ return a;
21
+ };
22
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
23
+ var __objRest = (source, exclude) => {
24
+ var target = {};
25
+ for (var prop in source)
26
+ if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
27
+ target[prop] = source[prop];
28
+ if (source != null && __getOwnPropSymbols)
29
+ for (var prop of __getOwnPropSymbols(source)) {
30
+ if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
31
+ target[prop] = source[prop];
32
+ }
33
+ return target;
34
+ };
35
+ var __export = (target, all) => {
36
+ for (var name in all)
37
+ __defProp(target, name, { get: all[name], enumerable: true });
38
+ };
39
+ var __copyProps = (to, from, except, desc) => {
40
+ if (from && typeof from === "object" || typeof from === "function") {
41
+ for (let key of __getOwnPropNames(from))
42
+ if (!__hasOwnProp.call(to, key) && key !== except)
43
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
44
+ }
45
+ return to;
46
+ };
47
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
48
+
49
+ // src/components/ui/selectable-card.tsx
50
+ var selectable_card_exports = {};
51
+ __export(selectable_card_exports, {
52
+ SelectableCard: () => SelectableCard
53
+ });
54
+ module.exports = __toCommonJS(selectable_card_exports);
55
+
56
+ // src/components/ui/radio-group.tsx
57
+ var import_lucide_react = require("lucide-react");
58
+ var import_radio_group = require("@base-ui/react/radio-group");
59
+ var import_radio = require("@base-ui/react/radio");
60
+
61
+ // src/lib/utils.ts
62
+ var import_clsx = require("clsx");
63
+ var import_tailwind_merge = require("tailwind-merge");
64
+ var twMerge = (0, import_tailwind_merge.extendTailwindMerge)({
65
+ extend: {
66
+ classGroups: {
67
+ "font-size": [
68
+ {
69
+ text: [
70
+ "display-large",
71
+ "display-medium",
72
+ "display-small",
73
+ "h1",
74
+ "h2",
75
+ "h3",
76
+ "h4",
77
+ "h5",
78
+ "h6",
79
+ "body-large",
80
+ "body-medium",
81
+ "body-small",
82
+ "label-large",
83
+ "label-medium",
84
+ "label-small",
85
+ "button",
86
+ "button-xs",
87
+ "caption",
88
+ "overline",
89
+ "code"
90
+ ]
91
+ }
92
+ ]
93
+ }
94
+ }
95
+ });
96
+ function cn(...inputs) {
97
+ return twMerge((0, import_clsx.clsx)(inputs));
98
+ }
99
+
100
+ // src/components/ui/radio-group.tsx
101
+ var import_jsx_runtime = require("react/jsx-runtime");
102
+ var CIRCLE_BASE = "inline-flex items-center justify-center aspect-square size-4 shrink-0 rounded-full border border-primary bg-background";
103
+ var INDICATOR_DOT = "size-2 fill-background text-background";
104
+ function RadioGroupItem(_a) {
105
+ var _b = _a, {
106
+ className
107
+ } = _b, props = __objRest(_b, [
108
+ "className"
109
+ ]);
110
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
111
+ import_radio.Radio.Root,
112
+ __spreadProps(__spreadValues({
113
+ className: cn(
114
+ CIRCLE_BASE,
115
+ "transition-all outline-none",
116
+ "focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50",
117
+ "disabled:cursor-not-allowed disabled:opacity-50",
118
+ "data-checked:bg-primary",
119
+ "aria-invalid:border-destructive aria-invalid:ring-destructive/20",
120
+ "aria-invalid:data-checked:border-destructive aria-invalid:data-checked:bg-destructive",
121
+ "dark:bg-input/30 dark:aria-invalid:ring-destructive/40",
122
+ className
123
+ ),
124
+ "data-slot": "radio-group-item"
125
+ }, props), {
126
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
127
+ import_radio.Radio.Indicator,
128
+ {
129
+ "data-slot": "radio-group-indicator",
130
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_lucide_react.CircleIcon, { className: INDICATOR_DOT })
131
+ }
132
+ )
133
+ })
134
+ );
135
+ }
136
+
137
+ // src/components/ui/selectable-card.tsx
138
+ var import_jsx_runtime2 = require("react/jsx-runtime");
139
+ function SelectableCard({
140
+ value,
141
+ selected = false,
142
+ children,
143
+ className
144
+ }) {
145
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(
146
+ "label",
147
+ {
148
+ className: cn(
149
+ "flex cursor-pointer flex-col items-center justify-center gap-3 border border-border p-6 text-center transition-colors hover:border-primary/50",
150
+ selected && "border-primary bg-primary/5",
151
+ className
152
+ ),
153
+ children: [
154
+ /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(RadioGroupItem, { value, className: "sr-only" }),
155
+ children
156
+ ]
157
+ }
158
+ );
159
+ }
160
+ // Annotate the CommonJS export names for ESM import in node:
161
+ 0 && (module.exports = {
162
+ SelectableCard
163
+ });
@@ -0,0 +1,9 @@
1
+ import {
2
+ SelectableCard
3
+ } from "../../chunk-3Z75IKFO.mjs";
4
+ import "../../chunk-JTK6VJXY.mjs";
5
+ import "../../chunk-AFML43VJ.mjs";
6
+ import "../../chunk-WNQUEZJF.mjs";
7
+ export {
8
+ SelectableCard
9
+ };
@@ -607,8 +607,7 @@ function SidebarNav({
607
607
  className: cn(
608
608
  "h-8 w-auto object-contain object-left px-5 transition-opacity duration-200",
609
609
  collapsed ? "opacity-0" : "opacity-100"
610
- ),
611
- style: { filter: "brightness(0) invert(1)" }
610
+ )
612
611
  }
613
612
  ),
614
613
  logoCollapsed && /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
@@ -619,8 +618,7 @@ function SidebarNav({
619
618
  className: cn(
620
619
  "absolute inset-y-0 left-0 right-0 m-auto h-8 w-8 object-contain transition-opacity duration-200",
621
620
  collapsed ? "opacity-100" : "opacity-0"
622
- ),
623
- style: { filter: "brightness(0) invert(1)" }
621
+ )
624
622
  }
625
623
  )
626
624
  ] }),
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SidebarNav
3
- } from "../../chunk-PV7PNA6K.mjs";
3
+ } from "../../chunk-IKDTOCSY.mjs";
4
4
  import "../../chunk-6SR4K5T5.mjs";
5
5
  import "../../chunk-WDTXHLYM.mjs";
6
6
  import "../../chunk-S4CTM3UE.mjs";
@@ -238,7 +238,8 @@ function StepLabel({
238
238
  "span",
239
239
  {
240
240
  className: cn(
241
- "text-sm font-medium leading-tight transition-colors",
241
+ orientation === "vertical" && "flex h-8 items-center",
242
+ "text-label-small transition-colors",
242
243
  (isActive || isCompleted) && !error && "text-foreground",
243
244
  !isActive && !isCompleted && !error && "text-muted-foreground",
244
245
  error && "text-destructive"
@@ -250,7 +251,7 @@ function StepLabel({
250
251
  "span",
251
252
  {
252
253
  className: cn(
253
- "mt-0.5 text-xs",
254
+ "mt-0.5 text-caption",
254
255
  error ? "text-destructive" : "text-muted-foreground"
255
256
  ),
256
257
  children: subtext
@@ -2,8 +2,8 @@ import {
2
2
  FrontendShell,
3
3
  SignupShell,
4
4
  SignupVideoPanel
5
- } from "../../chunk-UEREFDAE.mjs";
6
- import "../../chunk-6TX73WG7.mjs";
5
+ } from "../../chunk-AZGLSIHF.mjs";
6
+ import "../../chunk-TCE5L44O.mjs";
7
7
  import "../../chunk-AFML43VJ.mjs";
8
8
  import "../../chunk-WNQUEZJF.mjs";
9
9
  export {
@@ -239,7 +239,8 @@ function StepLabel({
239
239
  "span",
240
240
  {
241
241
  className: cn(
242
- "text-sm font-medium leading-tight transition-colors",
242
+ orientation === "vertical" && "flex h-8 items-center",
243
+ "text-label-small transition-colors",
243
244
  (isActive || isCompleted) && !error && "text-foreground",
244
245
  !isActive && !isCompleted && !error && "text-muted-foreground",
245
246
  error && "text-destructive"
@@ -251,7 +252,7 @@ function StepLabel({
251
252
  "span",
252
253
  {
253
254
  className: cn(
254
- "mt-0.5 text-xs",
255
+ "mt-0.5 text-caption",
255
256
  error ? "text-destructive" : "text-muted-foreground"
256
257
  ),
257
258
  children: subtext
@@ -5,7 +5,7 @@ import {
5
5
  StepItem,
6
6
  StepLabel,
7
7
  Stepper
8
- } from "../../chunk-6TX73WG7.mjs";
8
+ } from "../../chunk-TCE5L44O.mjs";
9
9
  import "../../chunk-AFML43VJ.mjs";
10
10
  import "../../chunk-WNQUEZJF.mjs";
11
11
  export {