@wealthx/shadcn 1.3.2 → 1.3.4

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 (313) hide show
  1. package/.turbo/turbo-build.log +227 -191
  2. package/CHANGELOG.md +12 -0
  3. package/dist/{chunk-2UM72RJ7.mjs → chunk-2D3HQPFN.mjs} +12 -10
  4. package/dist/chunk-2EM2FRU6.mjs +613 -0
  5. package/dist/{chunk-FH6QVUVZ.mjs → chunk-2GIYVERS.mjs} +2 -2
  6. package/dist/chunk-2P7HP7LR.mjs +68 -0
  7. package/dist/{chunk-HISNT2MG.mjs → chunk-37AE3OM5.mjs} +5 -5
  8. package/dist/{chunk-HBZLGDIN.mjs → chunk-3ERBUVHC.mjs} +169 -110
  9. package/dist/{chunk-C7CQJNMR.mjs → chunk-3VDET466.mjs} +2 -2
  10. package/dist/{chunk-462HMNO4.mjs → chunk-4MM7LHM5.mjs} +2 -2
  11. package/dist/{chunk-QMY3AZJH.mjs → chunk-4Z66LMIQ.mjs} +2 -2
  12. package/dist/{chunk-U5X52X37.mjs → chunk-57ZXILTS.mjs} +6 -6
  13. package/dist/{chunk-2A5RRQGG.mjs → chunk-5NF6T2RS.mjs} +11 -20
  14. package/dist/{chunk-3OYFOX3X.mjs → chunk-5VOTTIXF.mjs} +2 -2
  15. package/dist/{chunk-LBMRIB3G.mjs → chunk-6AJUS7VX.mjs} +1 -1
  16. package/dist/{chunk-OODBHKG7.mjs → chunk-6HIOM2HL.mjs} +7 -4
  17. package/dist/{chunk-BDYZCBRT.mjs → chunk-6QAFGZC2.mjs} +2 -2
  18. package/dist/{chunk-U4NDAF2P.mjs → chunk-6TX73WG7.mjs} +1 -1
  19. package/dist/{chunk-GD4BJDJR.mjs → chunk-7BTFGCFC.mjs} +4 -4
  20. package/dist/{chunk-FAKPBKLT.mjs → chunk-7GWRPXHD.mjs} +4 -4
  21. package/dist/{chunk-NMOI6CQD.mjs → chunk-7YI3HEBH.mjs} +5 -5
  22. package/dist/{chunk-T4BJLT57.mjs → chunk-AE7MASLF.mjs} +5 -5
  23. package/dist/{chunk-VLQZANBF.mjs → chunk-AFML43VJ.mjs} +6 -1
  24. package/dist/chunk-BBXSNDS3.mjs +260 -0
  25. package/dist/chunk-BOW7U26Y.mjs +203 -0
  26. package/dist/{chunk-34NWQURD.mjs → chunk-BS75ICOO.mjs} +2 -2
  27. package/dist/chunk-D2NSIIXG.mjs +394 -0
  28. package/dist/{chunk-3GF7OVTP.mjs → chunk-DGNHGNYH.mjs} +2 -2
  29. package/dist/{chunk-VLARHE5V.mjs → chunk-DMXYRCHM.mjs} +6 -6
  30. package/dist/{chunk-OGOYQ7BG.mjs → chunk-DQB4EPIS.mjs} +1 -1
  31. package/dist/{chunk-MIZQHHUO.mjs → chunk-FL6DZFJK.mjs} +106 -38
  32. package/dist/{chunk-I3RZS7V2.mjs → chunk-FLL633WS.mjs} +19 -33
  33. package/dist/{chunk-PBL4OQV2.mjs → chunk-FTPBQVQ6.mjs} +4 -4
  34. package/dist/chunk-FYPSTTEJ.mjs +169 -0
  35. package/dist/{chunk-6O6KD7CE.mjs → chunk-G27TSQLQ.mjs} +6 -6
  36. package/dist/{chunk-66MI7Q4B.mjs → chunk-GT3RU6GA.mjs} +2 -2
  37. package/dist/{chunk-D6ID6M4V.mjs → chunk-GTAVSBDO.mjs} +2 -2
  38. package/dist/{chunk-24FUO7TD.mjs → chunk-H6NQTIF4.mjs} +2 -2
  39. package/dist/{chunk-7DHU4VGG.mjs → chunk-HK4HUQTV.mjs} +2 -2
  40. package/dist/chunk-I4KVSZCH.mjs +101 -0
  41. package/dist/{chunk-RGVKLTLH.mjs → chunk-IKXYTCSB.mjs} +2 -2
  42. package/dist/{chunk-Y6DWJSKZ.mjs → chunk-ISUA7DSB.mjs} +1 -1
  43. package/dist/{chunk-J5UICVJS.mjs → chunk-JPGL36WQ.mjs} +2 -2
  44. package/dist/{chunk-7XJHLGUV.mjs → chunk-JTK6VJXY.mjs} +2 -2
  45. package/dist/{chunk-7YAU5CY6.mjs → chunk-JVMXMFBB.mjs} +2 -2
  46. package/dist/{chunk-IAE3F7DR.mjs → chunk-JZY6TNIS.mjs} +21 -21
  47. package/dist/{chunk-K5A5L6T2.mjs → chunk-K4KOD3KR.mjs} +12 -12
  48. package/dist/{chunk-MBON7YRJ.mjs → chunk-K5QV4TT6.mjs} +3 -3
  49. package/dist/{chunk-IHMFS7NZ.mjs → chunk-K5VHK7CM.mjs} +21 -21
  50. package/dist/{chunk-RJI6GKVF.mjs → chunk-KCWNDYPZ.mjs} +5 -5
  51. package/dist/{chunk-UFYSFDER.mjs → chunk-KFH36NKF.mjs} +1 -1
  52. package/dist/{chunk-EBXQWIYG.mjs → chunk-KLTACJ2G.mjs} +5 -5
  53. package/dist/{chunk-3TTACBDP.mjs → chunk-KWD6GANL.mjs} +4 -4
  54. package/dist/{chunk-IOJRDS6V.mjs → chunk-L4NSRQ3T.mjs} +218 -147
  55. package/dist/{chunk-GYMYRIZP.mjs → chunk-LBTHZSBT.mjs} +2 -2
  56. package/dist/{chunk-AMQZRHEZ.mjs → chunk-LQULK2E3.mjs} +5 -5
  57. package/dist/{chunk-YJG55G2H.mjs → chunk-LR6LHDP3.mjs} +5 -5
  58. package/dist/{chunk-7PV3IWCN.mjs → chunk-M4VYX2PV.mjs} +19 -1
  59. package/dist/{chunk-P76HMUI6.mjs → chunk-MDUKXXIL.mjs} +2 -2
  60. package/dist/{chunk-LV35NGVG.mjs → chunk-N6Q5IPKT.mjs} +9 -9
  61. package/dist/{chunk-DOEO3CDL.mjs → chunk-NB3ZL36B.mjs} +1 -1
  62. package/dist/{chunk-XREGSKX3.mjs → chunk-NOOEKOWY.mjs} +5 -5
  63. package/dist/{chunk-NL3ZO62D.mjs → chunk-NT4FX27K.mjs} +1 -1
  64. package/dist/{chunk-QZ4RE6NA.mjs → chunk-NTYQWVLI.mjs} +6 -6
  65. package/dist/{chunk-ERGGHC2V.mjs → chunk-OEOOYMC2.mjs} +2 -2
  66. package/dist/{chunk-4GAWMKMI.mjs → chunk-OIKBW2QD.mjs} +291 -54
  67. package/dist/{chunk-DUJTAXMH.mjs → chunk-OKTJFDPN.mjs} +6 -6
  68. package/dist/chunk-OLKMCXAR.mjs +1219 -0
  69. package/dist/{chunk-EI5F6FMT.mjs → chunk-OWFQSXVD.mjs} +3 -3
  70. package/dist/{chunk-6DZEXFNB.mjs → chunk-P2N2PEFY.mjs} +3 -3
  71. package/dist/{chunk-NSLMILBT.mjs → chunk-P7CEBZM6.mjs} +2 -2
  72. package/dist/{chunk-7S5AESZO.mjs → chunk-PNRUH7JY.mjs} +6 -6
  73. package/dist/{chunk-ZU4NV6RG.mjs → chunk-PNSYFE3K.mjs} +2 -2
  74. package/dist/{chunk-JKGDCQTZ.mjs → chunk-QTRSCVQ3.mjs} +5 -5
  75. package/dist/{chunk-ABFDMHOR.mjs → chunk-QX7IFQSF.mjs} +5 -5
  76. package/dist/{chunk-CFMQP5QS.mjs → chunk-QXKGOMUX.mjs} +6 -6
  77. package/dist/{chunk-NQPOYKAQ.mjs → chunk-R2ON6CAN.mjs} +2 -2
  78. package/dist/{chunk-DBHJ5KC3.mjs → chunk-R4HCRDU5.mjs} +1 -1
  79. package/dist/{chunk-EWRB4PAD.mjs → chunk-RCAOCHWA.mjs} +14 -14
  80. package/dist/{chunk-EFRENWEJ.mjs → chunk-RSUIPKGX.mjs} +2 -2
  81. package/dist/{chunk-DGHAXJBN.mjs → chunk-S2FKV4M5.mjs} +5 -5
  82. package/dist/{chunk-RGU7HOEC.mjs → chunk-SET2ANTY.mjs} +5 -7
  83. package/dist/chunk-SFH2NJEJ.mjs +47 -0
  84. package/dist/{chunk-6AW4KJHE.mjs → chunk-SIVYAI3M.mjs} +12 -12
  85. package/dist/{chunk-5FQIKDKP.mjs → chunk-THVO2N47.mjs} +8 -8
  86. package/dist/{chunk-JMHR3YGZ.mjs → chunk-TLAWKTSA.mjs} +3 -3
  87. package/dist/{chunk-HVY6KCCF.mjs → chunk-TOWTPLRC.mjs} +68 -72
  88. package/dist/{chunk-6JQFUE5I.mjs → chunk-UALR6JGV.mjs} +2 -2
  89. package/dist/{chunk-N6TNTQL6.mjs → chunk-UJZ4UHWI.mjs} +9 -11
  90. package/dist/{chunk-MARPPFOJ.mjs → chunk-UNACI2YK.mjs} +2 -2
  91. package/dist/{chunk-3NCUZIFP.mjs → chunk-V6XGXYCJ.mjs} +7 -7
  92. package/dist/chunk-VB5M6OZQ.mjs +57 -0
  93. package/dist/{chunk-5IS7G74I.mjs → chunk-VY5NEUP7.mjs} +6 -6
  94. package/dist/{chunk-JHJHG4GO.mjs → chunk-WE4YKBDE.mjs} +2 -2
  95. package/dist/{chunk-BKNFWEH2.mjs → chunk-WL6WVV47.mjs} +3 -3
  96. package/dist/{chunk-FWCSY2DS.mjs → chunk-WNQUEZJF.mjs} +22 -1
  97. package/dist/{chunk-2Y7YJKPE.mjs → chunk-WZ6UJCBL.mjs} +1 -1
  98. package/dist/{chunk-UMTOX62O.mjs → chunk-XYPW2XA5.mjs} +13 -10
  99. package/dist/chunk-Y2MTAVAK.mjs +34 -0
  100. package/dist/{chunk-6CR5N2JW.mjs → chunk-YCWLFG27.mjs} +6 -6
  101. package/dist/{chunk-PU4YZQXV.mjs → chunk-YE67AALL.mjs} +12 -12
  102. package/dist/{chunk-M3FV7LOK.mjs → chunk-YEWNFK5S.mjs} +6 -1
  103. package/dist/{chunk-R3VSPKNP.mjs → chunk-YIZHS72Z.mjs} +11 -12
  104. package/dist/{chunk-7PYJD5JI.mjs → chunk-ZEDMKQK2.mjs} +2 -2
  105. package/dist/{chunk-N2PT566P.mjs → chunk-ZFCDYW6N.mjs} +4 -4
  106. package/dist/chunk-ZGQIVGIN.mjs +57 -0
  107. package/dist/{chunk-Q2BGOAMG.mjs → chunk-ZKWXDQDG.mjs} +4 -4
  108. package/dist/{chunk-GHC7LLUX.mjs → chunk-ZOWL2L5J.mjs} +5 -5
  109. package/dist/components/ui/accordion.mjs +3 -3
  110. package/dist/components/ui/add-column-modal.js +2 -2
  111. package/dist/components/ui/add-column-modal.mjs +10 -10
  112. package/dist/components/ui/add-lead-modal.js +424 -82
  113. package/dist/components/ui/add-lead-modal.mjs +12 -9
  114. package/dist/components/ui/advisor-card.js +2 -2
  115. package/dist/components/ui/advisor-card.mjs +8 -8
  116. package/dist/components/ui/ai-assistant-drawer.js +2 -2
  117. package/dist/components/ui/ai-assistant-drawer.mjs +9 -9
  118. package/dist/components/ui/ai-builder.js +958 -0
  119. package/dist/components/ui/ai-builder.mjs +25 -0
  120. package/dist/components/ui/ai-conversations.js +2045 -0
  121. package/dist/components/ui/ai-conversations.mjs +41 -0
  122. package/dist/components/ui/alert-dialog.js +2 -2
  123. package/dist/components/ui/alert-dialog.mjs +5 -5
  124. package/dist/components/ui/alert.mjs +3 -3
  125. package/dist/components/ui/appointment-action-dialogs.js +19 -3
  126. package/dist/components/ui/appointment-action-dialogs.mjs +15 -14
  127. package/dist/components/ui/appointment-availability-settings.js +181 -111
  128. package/dist/components/ui/appointment-availability-settings.mjs +20 -18
  129. package/dist/components/ui/appointment-book-dialog.js +113 -24
  130. package/dist/components/ui/appointment-book-dialog.mjs +21 -20
  131. package/dist/components/ui/appointment-calendar-view.js +19 -3
  132. package/dist/components/ui/appointment-calendar-view.mjs +10 -9
  133. package/dist/components/ui/appointment-detail-sheet.js +19 -3
  134. package/dist/components/ui/appointment-detail-sheet.mjs +18 -17
  135. package/dist/components/ui/appointment-gmail-connect.js +49 -89
  136. package/dist/components/ui/appointment-gmail-connect.mjs +8 -9
  137. package/dist/components/ui/appointment-mini-card.js +2 -2
  138. package/dist/components/ui/appointment-mini-card.mjs +6 -6
  139. package/dist/components/ui/appointment-time-slot-picker.mjs +6 -6
  140. package/dist/components/ui/appointment-upcoming-card.js +19 -3
  141. package/dist/components/ui/appointment-upcoming-card.mjs +15 -14
  142. package/dist/components/ui/auth-logo.js +95 -0
  143. package/dist/components/ui/auth-logo.mjs +8 -0
  144. package/dist/components/ui/auth-page-layout.js +108 -0
  145. package/dist/components/ui/auth-page-layout.mjs +8 -0
  146. package/dist/components/ui/avatar.mjs +3 -3
  147. package/dist/components/ui/backoffice-alert-history-chart.js +2 -2
  148. package/dist/components/ui/backoffice-alert-history-chart.mjs +9 -9
  149. package/dist/components/ui/backoffice-alerts-chart.js +2 -2
  150. package/dist/components/ui/backoffice-alerts-chart.mjs +11 -11
  151. package/dist/components/ui/backoffice-connections-chart.js +2 -2
  152. package/dist/components/ui/backoffice-connections-chart.mjs +11 -11
  153. package/dist/components/ui/backoffice-contact-history-chart.js +2 -2
  154. package/dist/components/ui/backoffice-contact-history-chart.mjs +9 -9
  155. package/dist/components/ui/badge.mjs +4 -4
  156. package/dist/components/ui/borrowing-capacity-line-chart.js +145 -132
  157. package/dist/components/ui/borrowing-capacity-line-chart.mjs +9 -9
  158. package/dist/components/ui/button.js +2 -2
  159. package/dist/components/ui/button.mjs +4 -4
  160. package/dist/components/ui/calendar.js +17 -3
  161. package/dist/components/ui/calendar.mjs +6 -5
  162. package/dist/components/ui/card.mjs +3 -3
  163. package/dist/components/ui/cash-balance-line-chart.js +158 -158
  164. package/dist/components/ui/cash-balance-line-chart.mjs +9 -9
  165. package/dist/components/ui/cashflow-bar-chart.js +2 -2
  166. package/dist/components/ui/cashflow-bar-chart.mjs +9 -9
  167. package/dist/components/ui/chat-widget-primitives.js +573 -0
  168. package/dist/components/ui/chat-widget-primitives.mjs +21 -0
  169. package/dist/components/ui/chat-widget.js +1268 -0
  170. package/dist/components/ui/chat-widget.mjs +29 -0
  171. package/dist/components/ui/checkbox.mjs +3 -3
  172. package/dist/components/ui/chip.js +2 -2
  173. package/dist/components/ui/chip.mjs +6 -6
  174. package/dist/components/ui/color-picker.js +2 -2
  175. package/dist/components/ui/color-picker.mjs +7 -7
  176. package/dist/components/ui/combobox.mjs +3 -3
  177. package/dist/components/ui/data-table.js +2 -2
  178. package/dist/components/ui/data-table.mjs +12 -12
  179. package/dist/components/ui/date-picker.js +22 -6
  180. package/dist/components/ui/date-picker.mjs +9 -8
  181. package/dist/components/ui/dialog.js +2 -2
  182. package/dist/components/ui/dialog.mjs +5 -5
  183. package/dist/components/ui/document-checklist-template.js +630 -0
  184. package/dist/components/ui/document-checklist-template.mjs +15 -0
  185. package/dist/components/ui/drawer.js +2 -2
  186. package/dist/components/ui/drawer.mjs +3 -3
  187. package/dist/components/ui/dropdown-menu.mjs +3 -3
  188. package/dist/components/ui/empty.mjs +3 -3
  189. package/dist/components/ui/expense-bar-chart.js +2 -2
  190. package/dist/components/ui/expense-bar-chart.mjs +9 -9
  191. package/dist/components/ui/field.mjs +5 -5
  192. package/dist/components/ui/financial-cards.js +431 -291
  193. package/dist/components/ui/financial-cards.mjs +10 -9
  194. package/dist/components/ui/financial-drawers.js +4 -4
  195. package/dist/components/ui/financial-drawers.mjs +8 -8
  196. package/dist/components/ui/financial-primitives.mjs +3 -3
  197. package/dist/components/ui/financial-sections.js +8 -9
  198. package/dist/components/ui/financial-sections.mjs +12 -12
  199. package/dist/components/ui/form-primitives.mjs +8 -8
  200. package/dist/components/ui/income-bar-chart.js +2 -2
  201. package/dist/components/ui/income-bar-chart.mjs +9 -9
  202. package/dist/components/ui/input-group.js +2 -2
  203. package/dist/components/ui/input-group.mjs +7 -7
  204. package/dist/components/ui/input-otp.mjs +3 -3
  205. package/dist/components/ui/input.mjs +3 -3
  206. package/dist/components/ui/kanban-column.js +19 -23
  207. package/dist/components/ui/kanban-column.mjs +14 -14
  208. package/dist/components/ui/label.mjs +3 -3
  209. package/dist/components/ui/onboarding-layout.js +476 -0
  210. package/dist/components/ui/onboarding-layout.mjs +11 -0
  211. package/dist/components/ui/opportunity-card.js +2 -2
  212. package/dist/components/ui/opportunity-card.mjs +12 -12
  213. package/dist/components/ui/opportunity-edit-modals.js +22 -6
  214. package/dist/components/ui/opportunity-edit-modals.mjs +21 -20
  215. package/dist/components/ui/opportunity-summary-tab.js +991 -674
  216. package/dist/components/ui/opportunity-summary-tab.mjs +26 -26
  217. package/dist/components/ui/page-header.mjs +3 -3
  218. package/dist/components/ui/page-top-bar.mjs +3 -3
  219. package/dist/components/ui/pagination.js +2 -2
  220. package/dist/components/ui/pagination.mjs +6 -6
  221. package/dist/components/ui/password-strength-tooltip.js +197 -0
  222. package/dist/components/ui/password-strength-tooltip.mjs +11 -0
  223. package/dist/components/ui/pipeline-alerts.mjs +3 -3
  224. package/dist/components/ui/pipeline-board.js +19 -23
  225. package/dist/components/ui/pipeline-board.mjs +18 -18
  226. package/dist/components/ui/pipeline-chart.js +12 -6
  227. package/dist/components/ui/pipeline-chart.mjs +4 -3
  228. package/dist/components/ui/pipeline-dialogs.js +28 -12
  229. package/dist/components/ui/pipeline-dialogs.mjs +14 -13
  230. package/dist/components/ui/pipeline-primitives.mjs +6 -6
  231. package/dist/components/ui/popover.mjs +3 -3
  232. package/dist/components/ui/progress.mjs +3 -3
  233. package/dist/components/ui/property-cashflow-doughnut-chart.js +2 -2
  234. package/dist/components/ui/property-cashflow-doughnut-chart.mjs +9 -9
  235. package/dist/components/ui/property-debt-equity-doughnut-chart.js +2 -2
  236. package/dist/components/ui/property-debt-equity-doughnut-chart.mjs +9 -9
  237. package/dist/components/ui/property-mobile-estimate-line-chart.js +2 -2
  238. package/dist/components/ui/property-mobile-estimate-line-chart.mjs +9 -9
  239. package/dist/components/ui/radio-group.mjs +3 -3
  240. package/dist/components/ui/select.mjs +3 -3
  241. package/dist/components/ui/separator.mjs +3 -3
  242. package/dist/components/ui/sheet.mjs +3 -3
  243. package/dist/components/ui/sidebar-nav.js +6 -5
  244. package/dist/components/ui/sidebar-nav.mjs +7 -7
  245. package/dist/components/ui/skeleton.mjs +3 -3
  246. package/dist/components/ui/slider.mjs +3 -3
  247. package/dist/components/ui/sonner.mjs +2 -2
  248. package/dist/components/ui/spinner.mjs +3 -3
  249. package/dist/components/ui/stage-timeline.mjs +10 -10
  250. package/dist/components/ui/stepper.mjs +3 -3
  251. package/dist/components/ui/switch.mjs +3 -3
  252. package/dist/components/ui/table.mjs +3 -3
  253. package/dist/components/ui/tabs.mjs +3 -3
  254. package/dist/components/ui/textarea.mjs +3 -3
  255. package/dist/components/ui/toggle-group.mjs +4 -4
  256. package/dist/components/ui/toggle.mjs +3 -3
  257. package/dist/components/ui/tooltip.mjs +3 -3
  258. package/dist/components/ui/transactions-expense-categories-doughnut-chart.js +2 -2
  259. package/dist/components/ui/transactions-expense-categories-doughnut-chart.mjs +9 -9
  260. package/dist/components/ui/transactions-income-expense-bar-chart.js +2 -2
  261. package/dist/components/ui/transactions-income-expense-bar-chart.mjs +9 -9
  262. package/dist/components/ui/transactions-liabilities-breakdown-doughnut-chart.js +2 -2
  263. package/dist/components/ui/transactions-liabilities-breakdown-doughnut-chart.mjs +9 -9
  264. package/dist/components/ui/two-fa-setup-form.js +612 -0
  265. package/dist/components/ui/two-fa-setup-form.mjs +16 -0
  266. package/dist/components/ui/upload-card.js +187 -0
  267. package/dist/components/ui/upload-card.mjs +10 -0
  268. package/dist/components/ui/video-background.js +118 -0
  269. package/dist/components/ui/video-background.mjs +8 -0
  270. package/dist/index.js +12674 -9311
  271. package/dist/index.mjs +341 -245
  272. package/dist/lib/colors.mjs +1 -1
  273. package/dist/lib/theme-provider.mjs +1 -1
  274. package/dist/lib/typography.mjs +2 -2
  275. package/dist/lib/utils.js +8 -2
  276. package/dist/lib/utils.mjs +6 -4
  277. package/dist/styles.css +1 -1
  278. package/package.json +61 -1
  279. package/src/components/index.tsx +126 -1
  280. package/src/components/ui/add-lead-modal.tsx +101 -142
  281. package/src/components/ui/ai-builder.tsx +560 -0
  282. package/src/components/ui/ai-conversations.tsx +1690 -0
  283. package/src/components/ui/appointment-availability-settings.tsx +152 -101
  284. package/src/components/ui/appointment-book-dialog.tsx +138 -24
  285. package/src/components/ui/appointment-calendar-view.tsx +2 -3
  286. package/src/components/ui/appointment-gmail-connect.tsx +23 -42
  287. package/src/components/ui/auth-logo.tsx +50 -0
  288. package/src/components/ui/auth-page-layout.tsx +59 -0
  289. package/src/components/ui/borrowing-capacity-line-chart.tsx +10 -8
  290. package/src/components/ui/button.tsx +2 -2
  291. package/src/components/ui/calendar.tsx +2 -1
  292. package/src/components/ui/cash-balance-line-chart.tsx +11 -20
  293. package/src/components/ui/chart-shared.tsx +10 -0
  294. package/src/components/ui/chat-widget-primitives.tsx +336 -0
  295. package/src/components/ui/chat-widget.tsx +822 -0
  296. package/src/components/ui/document-checklist-template.tsx +264 -0
  297. package/src/components/ui/drawer.tsx +2 -2
  298. package/src/components/ui/financial-cards.tsx +176 -78
  299. package/src/components/ui/financial-drawers.tsx +2 -2
  300. package/src/components/ui/financial-sections.tsx +1 -1
  301. package/src/components/ui/kanban-column.tsx +2 -5
  302. package/src/components/ui/onboarding-layout.tsx +109 -0
  303. package/src/components/ui/opportunity-summary-tab.tsx +469 -142
  304. package/src/components/ui/password-strength-tooltip.tsx +70 -0
  305. package/src/components/ui/pipeline-chart.tsx +2 -6
  306. package/src/components/ui/sidebar-nav.tsx +1 -11
  307. package/src/components/ui/two-fa-setup-form.tsx +229 -0
  308. package/src/components/ui/upload-card.tsx +98 -0
  309. package/src/components/ui/video-background.tsx +55 -0
  310. package/src/lib/format-date.ts +26 -0
  311. package/src/lib/utils.ts +11 -0
  312. package/src/styles/styles-css.ts +1 -1
  313. package/tsup.config.ts +13 -0
@@ -6,15 +6,16 @@ import {
6
6
  IncomeCard,
7
7
  OtherLiabilityCard,
8
8
  PropertyCard
9
- } from "../../chunk-IOJRDS6V.mjs";
10
- import "../../chunk-OGOYQ7BG.mjs";
11
- import "../../chunk-7PV3IWCN.mjs";
12
- import "../../chunk-7XJHLGUV.mjs";
13
- import "../../chunk-BKNFWEH2.mjs";
14
- import "../../chunk-XREGSKX3.mjs";
15
- import "../../chunk-DBHJ5KC3.mjs";
16
- import "../../chunk-VLQZANBF.mjs";
17
- import "../../chunk-FWCSY2DS.mjs";
9
+ } from "../../chunk-L4NSRQ3T.mjs";
10
+ import "../../chunk-DQB4EPIS.mjs";
11
+ import "../../chunk-JTK6VJXY.mjs";
12
+ import "../../chunk-WL6WVV47.mjs";
13
+ import "../../chunk-M4VYX2PV.mjs";
14
+ import "../../chunk-UNACI2YK.mjs";
15
+ import "../../chunk-NOOEKOWY.mjs";
16
+ import "../../chunk-R4HCRDU5.mjs";
17
+ import "../../chunk-AFML43VJ.mjs";
18
+ import "../../chunk-WNQUEZJF.mjs";
18
19
  export {
19
20
  AboutCard,
20
21
  AlertCard,
@@ -258,9 +258,9 @@ var buttonVariants = (0, import_class_variance_authority.cva)(
258
258
  default: "bg-primary text-primary-foreground shadow-xs hover:bg-primary/90",
259
259
  secondary: "bg-brand-secondary text-brand-secondary-foreground shadow-xs hover:bg-brand-secondary/80 focus-visible:ring-brand-secondary/30",
260
260
  destructive: "bg-destructive text-destructive-foreground shadow-xs hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40",
261
- outline: "border border-input bg-background shadow-xs hover:bg-accent hover:text-accent-foreground focus-visible:ring-border/50 dark:bg-input/30 dark:border-input dark:hover:bg-input/50",
261
+ outline: "border border-input bg-background shadow-xs hover:bg-accent hover:text-accent-foreground focus-visible:border-border focus-visible:ring-border/50 dark:bg-input/30 dark:border-input dark:hover:bg-input/50",
262
262
  "outline-primary": "border border-primary text-foreground bg-transparent shadow-xs hover:bg-primary/5 focus-visible:ring-primary/50",
263
- "outline-secondary": "border border-brand-secondary text-brand-secondary bg-transparent shadow-xs hover:bg-brand-secondary/10 focus-visible:ring-brand-secondary/30",
263
+ "outline-secondary": "border border-brand-secondary text-brand-secondary bg-transparent shadow-xs hover:bg-brand-secondary/10 focus-visible:border-brand-secondary focus-visible:ring-brand-secondary/30",
264
264
  ghost: "hover:bg-accent hover:text-accent-foreground hover:shadow-xs focus-visible:ring-border/50 dark:hover:bg-accent/50",
265
265
  link: "text-primary underline-offset-4 hover:underline"
266
266
  },
@@ -480,7 +480,7 @@ function SummaryReportDrawer({
480
480
  side: "right",
481
481
  showCloseButton: false,
482
482
  className: "w-[min(1080px,90vw)] max-w-none p-0",
483
- children: /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "flex max-h-[100dvh] min-h-0 flex-1 flex-col overflow-hidden px-8 py-6", children: [
483
+ children: /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "flex max-h-[100dvh] min-h-0 flex-1 flex-col gap-4 overflow-hidden px-8 py-6", children: [
484
484
  /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "shrink-0 space-y-4", children: [
485
485
  /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "flex flex-col gap-3", children: [
486
486
  /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "flex items-center justify-between", children: [
@@ -522,7 +522,7 @@ function SummaryReportDrawer({
522
522
  /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
523
523
  Button,
524
524
  {
525
- variant: "outline",
525
+ variant: "outline-secondary",
526
526
  size: "sm",
527
527
  onClick: onCreateJointView,
528
528
  children: "Create Joint View"
@@ -1,16 +1,16 @@
1
1
  import {
2
2
  OpportunityDetailsDrawer,
3
3
  SummaryReportDrawer
4
- } from "../../chunk-7S5AESZO.mjs";
5
- import "../../chunk-462HMNO4.mjs";
6
- import "../../chunk-JHJHG4GO.mjs";
7
- import "../../chunk-7YAU5CY6.mjs";
8
- import "../../chunk-XREGSKX3.mjs";
9
- import "../../chunk-DBHJ5KC3.mjs";
4
+ } from "../../chunk-PNRUH7JY.mjs";
5
+ import "../../chunk-4MM7LHM5.mjs";
6
+ import "../../chunk-WE4YKBDE.mjs";
7
+ import "../../chunk-JVMXMFBB.mjs";
8
+ import "../../chunk-NOOEKOWY.mjs";
9
+ import "../../chunk-R4HCRDU5.mjs";
10
10
  import "../../chunk-FEZKMUCF.mjs";
11
11
  import "../../chunk-QOJ2DQD6.mjs";
12
- import "../../chunk-VLQZANBF.mjs";
13
- import "../../chunk-FWCSY2DS.mjs";
12
+ import "../../chunk-AFML43VJ.mjs";
13
+ import "../../chunk-WNQUEZJF.mjs";
14
14
  export {
15
15
  OpportunityDetailsDrawer,
16
16
  SummaryReportDrawer
@@ -7,9 +7,9 @@ import {
7
7
  FinancialSubsectionTitle,
8
8
  FinancialSubtotalBlock,
9
9
  FinancialSubtotalFrame
10
- } from "../../chunk-OGOYQ7BG.mjs";
11
- import "../../chunk-VLQZANBF.mjs";
12
- import "../../chunk-FWCSY2DS.mjs";
10
+ } from "../../chunk-DQB4EPIS.mjs";
11
+ import "../../chunk-AFML43VJ.mjs";
12
+ import "../../chunk-WNQUEZJF.mjs";
13
13
  export {
14
14
  FinancialCardHeader,
15
15
  FinancialDetailField,
@@ -172,9 +172,9 @@ var buttonVariants = (0, import_class_variance_authority.cva)(
172
172
  default: "bg-primary text-primary-foreground shadow-xs hover:bg-primary/90",
173
173
  secondary: "bg-brand-secondary text-brand-secondary-foreground shadow-xs hover:bg-brand-secondary/80 focus-visible:ring-brand-secondary/30",
174
174
  destructive: "bg-destructive text-destructive-foreground shadow-xs hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40",
175
- outline: "border border-input bg-background shadow-xs hover:bg-accent hover:text-accent-foreground focus-visible:ring-border/50 dark:bg-input/30 dark:border-input dark:hover:bg-input/50",
175
+ outline: "border border-input bg-background shadow-xs hover:bg-accent hover:text-accent-foreground focus-visible:border-border focus-visible:ring-border/50 dark:bg-input/30 dark:border-input dark:hover:bg-input/50",
176
176
  "outline-primary": "border border-primary text-foreground bg-transparent shadow-xs hover:bg-primary/5 focus-visible:ring-primary/50",
177
- "outline-secondary": "border border-brand-secondary text-brand-secondary bg-transparent shadow-xs hover:bg-brand-secondary/10 focus-visible:ring-brand-secondary/30",
177
+ "outline-secondary": "border border-brand-secondary text-brand-secondary bg-transparent shadow-xs hover:bg-brand-secondary/10 focus-visible:border-brand-secondary focus-visible:ring-brand-secondary/30",
178
178
  ghost: "hover:bg-accent hover:text-accent-foreground hover:shadow-xs focus-visible:ring-border/50 dark:hover:bg-accent/50",
179
179
  link: "text-primary underline-offset-4 hover:underline"
180
180
  },
@@ -617,11 +617,10 @@ function PropertyCard({
617
617
  variant: "ghost",
618
618
  "aria-expanded": expanded,
619
619
  onClick: () => setExpanded((prev) => !prev),
620
- className: "h-auto w-full justify-start gap-1.5 px-5 py-3 text-left",
620
+ className: "h-auto w-full justify-start gap-1.5 px-5 py-3 text-left has-[>svg]:px-5",
621
621
  children: [
622
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("span", { className: "text-label-medium text-foreground", children: address }),
623
- type && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(Badge, { variant: "outline", children: type }),
624
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("span", { className: "flex-1" }),
622
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("span", { className: "flex-1 min-w-0 truncate text-label-medium text-foreground", children: address }),
623
+ type && /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(Badge, { className: "shrink-0", variant: "outline", children: type }),
625
624
  /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
626
625
  import_lucide_react4.ChevronDown,
627
626
  {
@@ -643,13 +642,13 @@ function PropertyCard({
643
642
  {
644
643
  className: cn(
645
644
  "grid gap-5 px-5 py-[15px]",
646
- isLinkedToBank ? "grid-cols-3" : "grid-cols-1"
645
+ isLinkedToBank ? "grid-cols-2" : "grid-cols-1"
647
646
  ),
648
647
  children: [
649
648
  /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(FinancialDetailField, { label: "Estimated Value", value: estimated }),
650
649
  isLinkedToBank && /* @__PURE__ */ (0, import_jsx_runtime7.jsxs)(import_jsx_runtime7.Fragment, { children: [
651
650
  /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(FinancialDetailField, { label: "Loan Amount", value: loanAmount }),
652
- /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(FinancialDetailField, { label: "Equity", value: equity })
651
+ /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { className: "col-span-2", children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(FinancialDetailField, { label: "Equity", value: equity }) })
653
652
  ] })
654
653
  ]
655
654
  }
@@ -1067,7 +1066,7 @@ function PropertyHoldingsSection({
1067
1066
  borderless ? /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: "grid grid-cols-2", children: items.map((item, i) => /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
1068
1067
  "div",
1069
1068
  {
1070
- className: i > 0 ? "border-l border-border pl-5" : "pr-5",
1069
+ className: i % 2 !== 0 ? "border-l border-border pl-5" : "pr-5",
1071
1070
  children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(PropertyCard, __spreadProps(__spreadValues({}, item), { borderless: true }))
1072
1071
  },
1073
1072
  `${item.address}-${i}`
@@ -7,18 +7,18 @@ import {
7
7
  LoanScenarioSection,
8
8
  OtherLiabilitiesSection,
9
9
  PropertyHoldingsSection
10
- } from "../../chunk-3NCUZIFP.mjs";
11
- import "../../chunk-IOJRDS6V.mjs";
12
- import "../../chunk-OGOYQ7BG.mjs";
13
- import "../../chunk-7PV3IWCN.mjs";
14
- import "../../chunk-7XJHLGUV.mjs";
15
- import "../../chunk-BKNFWEH2.mjs";
16
- import "../../chunk-MARPPFOJ.mjs";
17
- import "../../chunk-FH6QVUVZ.mjs";
18
- import "../../chunk-XREGSKX3.mjs";
19
- import "../../chunk-DBHJ5KC3.mjs";
20
- import "../../chunk-VLQZANBF.mjs";
21
- import "../../chunk-FWCSY2DS.mjs";
10
+ } from "../../chunk-V6XGXYCJ.mjs";
11
+ import "../../chunk-L4NSRQ3T.mjs";
12
+ import "../../chunk-DQB4EPIS.mjs";
13
+ import "../../chunk-JTK6VJXY.mjs";
14
+ import "../../chunk-WL6WVV47.mjs";
15
+ import "../../chunk-M4VYX2PV.mjs";
16
+ import "../../chunk-UNACI2YK.mjs";
17
+ import "../../chunk-2GIYVERS.mjs";
18
+ import "../../chunk-NOOEKOWY.mjs";
19
+ import "../../chunk-R4HCRDU5.mjs";
20
+ import "../../chunk-AFML43VJ.mjs";
21
+ import "../../chunk-WNQUEZJF.mjs";
22
22
  export {
23
23
  AlertAccordion,
24
24
  DebtSection,
@@ -3,14 +3,14 @@ import {
3
3
  ConcernScale,
4
4
  CurrencyInputWithSlider,
5
5
  OwnershipSplit
6
- } from "../../chunk-U5X52X37.mjs";
7
- import "../../chunk-Y6DWJSKZ.mjs";
8
- import "../../chunk-EI5F6FMT.mjs";
9
- import "../../chunk-BDYZCBRT.mjs";
10
- import "../../chunk-NSLMILBT.mjs";
11
- import "../../chunk-GYMYRIZP.mjs";
12
- import "../../chunk-VLQZANBF.mjs";
13
- import "../../chunk-FWCSY2DS.mjs";
6
+ } from "../../chunk-57ZXILTS.mjs";
7
+ import "../../chunk-ISUA7DSB.mjs";
8
+ import "../../chunk-OWFQSXVD.mjs";
9
+ import "../../chunk-6QAFGZC2.mjs";
10
+ import "../../chunk-P7CEBZM6.mjs";
11
+ import "../../chunk-LBTHZSBT.mjs";
12
+ import "../../chunk-AFML43VJ.mjs";
13
+ import "../../chunk-WNQUEZJF.mjs";
14
14
  export {
15
15
  AddressAutocomplete,
16
16
  ConcernScale,
@@ -298,9 +298,9 @@ var buttonVariants = (0, import_class_variance_authority2.cva)(
298
298
  default: "bg-primary text-primary-foreground shadow-xs hover:bg-primary/90",
299
299
  secondary: "bg-brand-secondary text-brand-secondary-foreground shadow-xs hover:bg-brand-secondary/80 focus-visible:ring-brand-secondary/30",
300
300
  destructive: "bg-destructive text-destructive-foreground shadow-xs hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40",
301
- outline: "border border-input bg-background shadow-xs hover:bg-accent hover:text-accent-foreground focus-visible:ring-border/50 dark:bg-input/30 dark:border-input dark:hover:bg-input/50",
301
+ outline: "border border-input bg-background shadow-xs hover:bg-accent hover:text-accent-foreground focus-visible:border-border focus-visible:ring-border/50 dark:bg-input/30 dark:border-input dark:hover:bg-input/50",
302
302
  "outline-primary": "border border-primary text-foreground bg-transparent shadow-xs hover:bg-primary/5 focus-visible:ring-primary/50",
303
- "outline-secondary": "border border-brand-secondary text-brand-secondary bg-transparent shadow-xs hover:bg-brand-secondary/10 focus-visible:ring-brand-secondary/30",
303
+ "outline-secondary": "border border-brand-secondary text-brand-secondary bg-transparent shadow-xs hover:bg-brand-secondary/10 focus-visible:border-brand-secondary focus-visible:ring-brand-secondary/30",
304
304
  ghost: "hover:bg-accent hover:text-accent-foreground hover:shadow-xs focus-visible:ring-border/50 dark:hover:bg-accent/50",
305
305
  link: "text-primary underline-offset-4 hover:underline"
306
306
  },
@@ -1,17 +1,17 @@
1
1
  import {
2
2
  IncomeBarChart
3
- } from "../../chunk-QZ4RE6NA.mjs";
4
- import "../../chunk-D6ID6M4V.mjs";
5
- import "../../chunk-M3FV7LOK.mjs";
3
+ } from "../../chunk-NTYQWVLI.mjs";
4
+ import "../../chunk-GTAVSBDO.mjs";
5
+ import "../../chunk-YEWNFK5S.mjs";
6
6
  import "../../chunk-MN5NYQCL.mjs";
7
- import "../../chunk-NQPOYKAQ.mjs";
8
- import "../../chunk-C7CQJNMR.mjs";
9
- import "../../chunk-XREGSKX3.mjs";
10
- import "../../chunk-DBHJ5KC3.mjs";
7
+ import "../../chunk-R2ON6CAN.mjs";
8
+ import "../../chunk-3VDET466.mjs";
9
+ import "../../chunk-NOOEKOWY.mjs";
10
+ import "../../chunk-R4HCRDU5.mjs";
11
11
  import "../../chunk-FEZKMUCF.mjs";
12
12
  import "../../chunk-QOJ2DQD6.mjs";
13
- import "../../chunk-VLQZANBF.mjs";
14
- import "../../chunk-FWCSY2DS.mjs";
13
+ import "../../chunk-AFML43VJ.mjs";
14
+ import "../../chunk-WNQUEZJF.mjs";
15
15
  export {
16
16
  IncomeBarChart
17
17
  };
@@ -170,9 +170,9 @@ var buttonVariants = (0, import_class_variance_authority.cva)(
170
170
  default: "bg-primary text-primary-foreground shadow-xs hover:bg-primary/90",
171
171
  secondary: "bg-brand-secondary text-brand-secondary-foreground shadow-xs hover:bg-brand-secondary/80 focus-visible:ring-brand-secondary/30",
172
172
  destructive: "bg-destructive text-destructive-foreground shadow-xs hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40",
173
- outline: "border border-input bg-background shadow-xs hover:bg-accent hover:text-accent-foreground focus-visible:ring-border/50 dark:bg-input/30 dark:border-input dark:hover:bg-input/50",
173
+ outline: "border border-input bg-background shadow-xs hover:bg-accent hover:text-accent-foreground focus-visible:border-border focus-visible:ring-border/50 dark:bg-input/30 dark:border-input dark:hover:bg-input/50",
174
174
  "outline-primary": "border border-primary text-foreground bg-transparent shadow-xs hover:bg-primary/5 focus-visible:ring-primary/50",
175
- "outline-secondary": "border border-brand-secondary text-brand-secondary bg-transparent shadow-xs hover:bg-brand-secondary/10 focus-visible:ring-brand-secondary/30",
175
+ "outline-secondary": "border border-brand-secondary text-brand-secondary bg-transparent shadow-xs hover:bg-brand-secondary/10 focus-visible:border-brand-secondary focus-visible:ring-brand-secondary/30",
176
176
  ghost: "hover:bg-accent hover:text-accent-foreground hover:shadow-xs focus-visible:ring-border/50 dark:hover:bg-accent/50",
177
177
  link: "text-primary underline-offset-4 hover:underline"
178
178
  },
@@ -5,13 +5,13 @@ import {
5
5
  InputGroupInput,
6
6
  InputGroupText,
7
7
  InputGroupTextarea
8
- } from "../../chunk-NMOI6CQD.mjs";
9
- import "../../chunk-34NWQURD.mjs";
10
- import "../../chunk-GYMYRIZP.mjs";
11
- import "../../chunk-XREGSKX3.mjs";
12
- import "../../chunk-DBHJ5KC3.mjs";
13
- import "../../chunk-VLQZANBF.mjs";
14
- import "../../chunk-FWCSY2DS.mjs";
8
+ } from "../../chunk-7YI3HEBH.mjs";
9
+ import "../../chunk-BS75ICOO.mjs";
10
+ import "../../chunk-LBTHZSBT.mjs";
11
+ import "../../chunk-NOOEKOWY.mjs";
12
+ import "../../chunk-R4HCRDU5.mjs";
13
+ import "../../chunk-AFML43VJ.mjs";
14
+ import "../../chunk-WNQUEZJF.mjs";
15
15
  export {
16
16
  InputGroup,
17
17
  InputGroupAddon,
@@ -3,9 +3,9 @@ import {
3
3
  InputOTPGroup,
4
4
  InputOTPSeparator,
5
5
  InputOTPSlot
6
- } from "../../chunk-7DHU4VGG.mjs";
7
- import "../../chunk-VLQZANBF.mjs";
8
- import "../../chunk-FWCSY2DS.mjs";
6
+ } from "../../chunk-HK4HUQTV.mjs";
7
+ import "../../chunk-AFML43VJ.mjs";
8
+ import "../../chunk-WNQUEZJF.mjs";
9
9
  export {
10
10
  InputOTP,
11
11
  InputOTPGroup,
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  Input
3
- } from "../../chunk-GYMYRIZP.mjs";
4
- import "../../chunk-VLQZANBF.mjs";
5
- import "../../chunk-FWCSY2DS.mjs";
3
+ } from "../../chunk-LBTHZSBT.mjs";
4
+ import "../../chunk-AFML43VJ.mjs";
5
+ import "../../chunk-WNQUEZJF.mjs";
6
6
  export {
7
7
  Input
8
8
  };
@@ -111,6 +111,22 @@ function useThemeVars() {
111
111
  return (0, import_react.useContext)(ThemeVarsContext);
112
112
  }
113
113
 
114
+ // src/lib/format-currency.ts
115
+ function formatCurrency(value, options) {
116
+ const { decimals = 0, showSign = false } = options != null ? options : {};
117
+ const abs = Math.abs(value);
118
+ const formatted = new Intl.NumberFormat("en-AU", {
119
+ style: "currency",
120
+ currency: "AUD",
121
+ minimumFractionDigits: decimals,
122
+ maximumFractionDigits: decimals
123
+ }).format(abs);
124
+ if (!showSign) return value < 0 ? `-${formatted}` : formatted;
125
+ if (value > 0) return `+${formatted}`;
126
+ if (value < 0) return `-${formatted}`;
127
+ return formatted;
128
+ }
129
+
114
130
  // src/components/ui/badge.tsx
115
131
  var import_class_variance_authority = require("class-variance-authority");
116
132
 
@@ -218,9 +234,9 @@ var buttonVariants = (0, import_class_variance_authority2.cva)(
218
234
  default: "bg-primary text-primary-foreground shadow-xs hover:bg-primary/90",
219
235
  secondary: "bg-brand-secondary text-brand-secondary-foreground shadow-xs hover:bg-brand-secondary/80 focus-visible:ring-brand-secondary/30",
220
236
  destructive: "bg-destructive text-destructive-foreground shadow-xs hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:bg-destructive/60 dark:focus-visible:ring-destructive/40",
221
- outline: "border border-input bg-background shadow-xs hover:bg-accent hover:text-accent-foreground focus-visible:ring-border/50 dark:bg-input/30 dark:border-input dark:hover:bg-input/50",
237
+ outline: "border border-input bg-background shadow-xs hover:bg-accent hover:text-accent-foreground focus-visible:border-border focus-visible:ring-border/50 dark:bg-input/30 dark:border-input dark:hover:bg-input/50",
222
238
  "outline-primary": "border border-primary text-foreground bg-transparent shadow-xs hover:bg-primary/5 focus-visible:ring-primary/50",
223
- "outline-secondary": "border border-brand-secondary text-brand-secondary bg-transparent shadow-xs hover:bg-brand-secondary/10 focus-visible:ring-brand-secondary/30",
239
+ "outline-secondary": "border border-brand-secondary text-brand-secondary bg-transparent shadow-xs hover:bg-brand-secondary/10 focus-visible:border-brand-secondary focus-visible:ring-brand-secondary/30",
224
240
  ghost: "hover:bg-accent hover:text-accent-foreground hover:shadow-xs focus-visible:ring-border/50 dark:hover:bg-accent/50",
225
241
  link: "text-primary underline-offset-4 hover:underline"
226
242
  },
@@ -387,22 +403,6 @@ function DropdownMenuSeparator(_a) {
387
403
  // src/components/ui/opportunity-card.tsx
388
404
  var import_lucide_react6 = require("lucide-react");
389
405
 
390
- // src/lib/format-currency.ts
391
- function formatCurrency(value, options) {
392
- const { decimals = 0, showSign = false } = options != null ? options : {};
393
- const abs = Math.abs(value);
394
- const formatted = new Intl.NumberFormat("en-AU", {
395
- style: "currency",
396
- currency: "AUD",
397
- minimumFractionDigits: decimals,
398
- maximumFractionDigits: decimals
399
- }).format(abs);
400
- if (!showSign) return value < 0 ? `-${formatted}` : formatted;
401
- if (value > 0) return `+${formatted}`;
402
- if (value < 0) return `-${formatted}`;
403
- return formatted;
404
- }
405
-
406
406
  // src/lib/format-date.ts
407
407
  var import_date_fns = require("date-fns");
408
408
  function safeParse(iso) {
@@ -994,11 +994,7 @@ function LeadCard({
994
994
  // src/components/ui/kanban-column.tsx
995
995
  var import_jsx_runtime11 = require("react/jsx-runtime");
996
996
  function formatTotalValue(value) {
997
- return new Intl.NumberFormat("en-AU", {
998
- style: "currency",
999
- currency: "AUD",
1000
- maximumFractionDigits: 0
1001
- }).format(value);
997
+ return formatCurrency(value);
1002
998
  }
1003
999
  function growthColor(growth) {
1004
1000
  return growth > 0 ? "var(--color-success-text)" : "var(--color-destructive-text)";
@@ -1,22 +1,22 @@
1
1
  import {
2
2
  KanbanColumn
3
- } from "../../chunk-R3VSPKNP.mjs";
4
- import "../../chunk-K5A5L6T2.mjs";
5
- import "../../chunk-MBON7YRJ.mjs";
6
- import "../../chunk-EFRENWEJ.mjs";
3
+ } from "../../chunk-YIZHS72Z.mjs";
4
+ import "../../chunk-K4KOD3KR.mjs";
5
+ import "../../chunk-K5QV4TT6.mjs";
7
6
  import "../../chunk-MN5NYQCL.mjs";
8
- import "../../chunk-7PV3IWCN.mjs";
9
- import "../../chunk-BKNFWEH2.mjs";
10
- import "../../chunk-MARPPFOJ.mjs";
11
- import "../../chunk-FH6QVUVZ.mjs";
12
- import "../../chunk-RGVKLTLH.mjs";
13
- import "../../chunk-7YAU5CY6.mjs";
14
- import "../../chunk-XREGSKX3.mjs";
15
- import "../../chunk-DBHJ5KC3.mjs";
7
+ import "../../chunk-RSUIPKGX.mjs";
8
+ import "../../chunk-WL6WVV47.mjs";
9
+ import "../../chunk-M4VYX2PV.mjs";
10
+ import "../../chunk-UNACI2YK.mjs";
11
+ import "../../chunk-2GIYVERS.mjs";
12
+ import "../../chunk-IKXYTCSB.mjs";
13
+ import "../../chunk-JVMXMFBB.mjs";
14
+ import "../../chunk-NOOEKOWY.mjs";
15
+ import "../../chunk-R4HCRDU5.mjs";
16
16
  import "../../chunk-FEZKMUCF.mjs";
17
17
  import "../../chunk-QOJ2DQD6.mjs";
18
- import "../../chunk-VLQZANBF.mjs";
19
- import "../../chunk-FWCSY2DS.mjs";
18
+ import "../../chunk-AFML43VJ.mjs";
19
+ import "../../chunk-WNQUEZJF.mjs";
20
20
  export {
21
21
  KanbanColumn
22
22
  };
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  Label
3
- } from "../../chunk-NSLMILBT.mjs";
4
- import "../../chunk-VLQZANBF.mjs";
5
- import "../../chunk-FWCSY2DS.mjs";
3
+ } from "../../chunk-P7CEBZM6.mjs";
4
+ import "../../chunk-AFML43VJ.mjs";
5
+ import "../../chunk-WNQUEZJF.mjs";
6
6
  export {
7
7
  Label
8
8
  };