@senitix/ui 0.4.0

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 (206) hide show
  1. package/dist/avatar-C0aVNCG9.cjs +2 -0
  2. package/dist/avatar-C0aVNCG9.cjs.map +1 -0
  3. package/dist/avatar-CN6wcrqY.js +288 -0
  4. package/dist/avatar-CN6wcrqY.js.map +1 -0
  5. package/dist/calendar-BFWc4IB7.js +1182 -0
  6. package/dist/calendar-BFWc4IB7.js.map +1 -0
  7. package/dist/calendar-BUm7YrNf.cjs +2 -0
  8. package/dist/calendar-BUm7YrNf.cjs.map +1 -0
  9. package/dist/calendar-ChJkFXXr.js +11 -0
  10. package/dist/calendar-ChJkFXXr.js.map +1 -0
  11. package/dist/calendar-SwL5isYC.cjs +2 -0
  12. package/dist/calendar-SwL5isYC.cjs.map +1 -0
  13. package/dist/card-K4fxyYwE.js +51 -0
  14. package/dist/card-K4fxyYwE.js.map +1 -0
  15. package/dist/card-tMkUxpmW.cjs +2 -0
  16. package/dist/card-tMkUxpmW.cjs.map +1 -0
  17. package/dist/checkbox-CpOq5hkT.js +289 -0
  18. package/dist/checkbox-CpOq5hkT.js.map +1 -0
  19. package/dist/checkbox-D7-LQyCl.cjs +2 -0
  20. package/dist/checkbox-D7-LQyCl.cjs.map +1 -0
  21. package/dist/chevron-down-DHdXqOqK.cjs +2 -0
  22. package/dist/chevron-down-DHdXqOqK.cjs.map +1 -0
  23. package/dist/chevron-down-DJ1_YIFu.js +8 -0
  24. package/dist/chevron-down-DJ1_YIFu.js.map +1 -0
  25. package/dist/chevron-right-B3bovvh0.js +8 -0
  26. package/dist/chevron-right-B3bovvh0.js.map +1 -0
  27. package/dist/chevron-right-Dvyd11q0.cjs +2 -0
  28. package/dist/chevron-right-Dvyd11q0.cjs.map +1 -0
  29. package/dist/chevron-up-B9fuiZhc.cjs +2 -0
  30. package/dist/chevron-up-B9fuiZhc.cjs.map +1 -0
  31. package/dist/chevron-up-CGtXOr51.js +6 -0
  32. package/dist/chevron-up-CGtXOr51.js.map +1 -0
  33. package/dist/components/charts/index.cjs.js +2 -0
  34. package/dist/components/charts/index.cjs.js.map +1 -0
  35. package/dist/components/charts/index.es.js +12 -0
  36. package/dist/components/charts/index.es.js.map +1 -0
  37. package/dist/components/data-display/index.cjs.js +2 -0
  38. package/dist/components/data-display/index.cjs.js.map +1 -0
  39. package/dist/components/data-display/index.es.js +25 -0
  40. package/dist/components/data-display/index.es.js.map +1 -0
  41. package/dist/components/dnd/index.cjs.js +2 -0
  42. package/dist/components/dnd/index.cjs.js.map +1 -0
  43. package/dist/components/dnd/index.es.js +9 -0
  44. package/dist/components/dnd/index.es.js.map +1 -0
  45. package/dist/components/feedback/index.cjs.js +2 -0
  46. package/dist/components/feedback/index.cjs.js.map +1 -0
  47. package/dist/components/feedback/index.es.js +16 -0
  48. package/dist/components/feedback/index.es.js.map +1 -0
  49. package/dist/components/forms/index.cjs.js +2 -0
  50. package/dist/components/forms/index.cjs.js.map +1 -0
  51. package/dist/components/forms/index.es.js +27 -0
  52. package/dist/components/forms/index.es.js.map +1 -0
  53. package/dist/components/layouts/index.cjs.js +2 -0
  54. package/dist/components/layouts/index.cjs.js.map +1 -0
  55. package/dist/components/layouts/index.es.js +25 -0
  56. package/dist/components/layouts/index.es.js.map +1 -0
  57. package/dist/components/navigation/index.cjs.js +2 -0
  58. package/dist/components/navigation/index.cjs.js.map +1 -0
  59. package/dist/components/navigation/index.es.js +42 -0
  60. package/dist/components/navigation/index.es.js.map +1 -0
  61. package/dist/components/ui/index.cjs.js +2 -0
  62. package/dist/components/ui/index.cjs.js.map +1 -0
  63. package/dist/components/ui/index.es.js +165 -0
  64. package/dist/components/ui/index.es.js.map +1 -0
  65. package/dist/createLucideIcon-BbeNo6vq.js +56 -0
  66. package/dist/createLucideIcon-BbeNo6vq.js.map +1 -0
  67. package/dist/createLucideIcon-i5GEhNMV.cjs +2 -0
  68. package/dist/createLucideIcon-i5GEhNMV.cjs.map +1 -0
  69. package/dist/ellipsis-BW2gWki8.cjs +2 -0
  70. package/dist/ellipsis-BW2gWki8.cjs.map +1 -0
  71. package/dist/ellipsis-CiKEaUNP.js +10 -0
  72. package/dist/ellipsis-CiKEaUNP.js.map +1 -0
  73. package/dist/file-V_hhCUhr.cjs +2 -0
  74. package/dist/file-V_hhCUhr.cjs.map +1 -0
  75. package/dist/file-wzTXnWqz.js +9 -0
  76. package/dist/file-wzTXnWqz.js.map +1 -0
  77. package/dist/filter-tags-DjUaNXHR.cjs +5 -0
  78. package/dist/filter-tags-DjUaNXHR.cjs.map +1 -0
  79. package/dist/filter-tags-i_I8qV1N.js +2658 -0
  80. package/dist/filter-tags-i_I8qV1N.js.map +1 -0
  81. package/dist/full-calendar-7ac2FFU6.js +3518 -0
  82. package/dist/full-calendar-7ac2FFU6.js.map +1 -0
  83. package/dist/full-calendar-Cpeh5xMP.cjs +8 -0
  84. package/dist/full-calendar-Cpeh5xMP.cjs.map +1 -0
  85. package/dist/global-search-UNXjoFlI.cjs +2 -0
  86. package/dist/global-search-UNXjoFlI.cjs.map +1 -0
  87. package/dist/global-search-h1rVbP2q.js +1188 -0
  88. package/dist/global-search-h1rVbP2q.js.map +1 -0
  89. package/dist/hooks/index.cjs.js +2 -0
  90. package/dist/hooks/index.cjs.js.map +1 -0
  91. package/dist/hooks/index.es.js +13 -0
  92. package/dist/hooks/index.es.js.map +1 -0
  93. package/dist/index-Co9o9StL.js +33 -0
  94. package/dist/index-Co9o9StL.js.map +1 -0
  95. package/dist/index-CwJPJKOE.js +2278 -0
  96. package/dist/index-CwJPJKOE.js.map +1 -0
  97. package/dist/index-CzVK9Zyb.cjs +6 -0
  98. package/dist/index-CzVK9Zyb.cjs.map +1 -0
  99. package/dist/index-l828OqQN.js +288 -0
  100. package/dist/index-l828OqQN.js.map +1 -0
  101. package/dist/index-lGzB9daF.cjs +2 -0
  102. package/dist/index-lGzB9daF.cjs.map +1 -0
  103. package/dist/index-lT9bLt9X.cjs +2 -0
  104. package/dist/index-lT9bLt9X.cjs.map +1 -0
  105. package/dist/index.cjs.js +2 -0
  106. package/dist/index.cjs.js.map +1 -0
  107. package/dist/index.es.js +332 -0
  108. package/dist/index.es.js.map +1 -0
  109. package/dist/input-CZrckPLk.cjs +42 -0
  110. package/dist/input-CZrckPLk.cjs.map +1 -0
  111. package/dist/input-D4AoiWxo.js +3629 -0
  112. package/dist/input-D4AoiWxo.js.map +1 -0
  113. package/dist/locale-provider-DHMwuneF.cjs +2 -0
  114. package/dist/locale-provider-DHMwuneF.cjs.map +1 -0
  115. package/dist/locale-provider-DanG6RRG.js +1012 -0
  116. package/dist/locale-provider-DanG6RRG.js.map +1 -0
  117. package/dist/locale-selector-Ppe0KTi-.cjs +2 -0
  118. package/dist/locale-selector-Ppe0KTi-.cjs.map +1 -0
  119. package/dist/locale-selector-xn2GpdP9.js +1745 -0
  120. package/dist/locale-selector-xn2GpdP9.js.map +1 -0
  121. package/dist/minus-BXBFZSZs.cjs +2 -0
  122. package/dist/minus-BXBFZSZs.cjs.map +1 -0
  123. package/dist/minus-DvlYtl96.js +6 -0
  124. package/dist/minus-DvlYtl96.js.map +1 -0
  125. package/dist/multi-container-C2UpSw5f.js +731 -0
  126. package/dist/multi-container-C2UpSw5f.js.map +1 -0
  127. package/dist/multi-container-DMKL8c9B.cjs +2 -0
  128. package/dist/multi-container-DMKL8c9B.cjs.map +1 -0
  129. package/dist/pipeline-By5_8AFg.cjs +2 -0
  130. package/dist/pipeline-By5_8AFg.cjs.map +1 -0
  131. package/dist/pipeline-D-QNSU0U.js +1036 -0
  132. package/dist/pipeline-D-QNSU0U.js.map +1 -0
  133. package/dist/plus-8wKRkVu-.cjs +2 -0
  134. package/dist/plus-8wKRkVu-.cjs.map +1 -0
  135. package/dist/plus-CJD68KQD.js +9 -0
  136. package/dist/plus-CJD68KQD.js.map +1 -0
  137. package/dist/popover-4V4sGe1U.js +765 -0
  138. package/dist/popover-4V4sGe1U.js.map +1 -0
  139. package/dist/popover-ivh-plLc.cjs +2 -0
  140. package/dist/popover-ivh-plLc.cjs.map +1 -0
  141. package/dist/progress-CFnuLqnS.cjs +7 -0
  142. package/dist/progress-CFnuLqnS.cjs.map +1 -0
  143. package/dist/progress-D5AsrWa6.js +222 -0
  144. package/dist/progress-D5AsrWa6.js.map +1 -0
  145. package/dist/providers/index.cjs.js +2 -0
  146. package/dist/providers/index.cjs.js.map +1 -0
  147. package/dist/providers/index.es.js +9 -0
  148. package/dist/providers/index.es.js.map +1 -0
  149. package/dist/scroll-area-DQeqDp3Y.js +952 -0
  150. package/dist/scroll-area-DQeqDp3Y.js.map +1 -0
  151. package/dist/scroll-area-DYOiJMXh.cjs +2 -0
  152. package/dist/scroll-area-DYOiJMXh.cjs.map +1 -0
  153. package/dist/select-C1rNBi6c.js +974 -0
  154. package/dist/select-C1rNBi6c.js.map +1 -0
  155. package/dist/select-m-Mqwxu3.cjs +2 -0
  156. package/dist/select-m-Mqwxu3.cjs.map +1 -0
  157. package/dist/separator-DBUivkHq.cjs +2 -0
  158. package/dist/separator-DBUivkHq.cjs.map +1 -0
  159. package/dist/separator-DsfoJx-2.js +395 -0
  160. package/dist/separator-DsfoJx-2.js.map +1 -0
  161. package/dist/sheet-BVWCpq7E.js +84 -0
  162. package/dist/sheet-BVWCpq7E.js.map +1 -0
  163. package/dist/sheet-mKiFLVnK.cjs +2 -0
  164. package/dist/sheet-mKiFLVnK.cjs.map +1 -0
  165. package/dist/skeleton-BSwwYaQU.cjs +2 -0
  166. package/dist/skeleton-BSwwYaQU.cjs.map +1 -0
  167. package/dist/skeleton-BmGbfJw3.js +9 -0
  168. package/dist/skeleton-BmGbfJw3.js.map +1 -0
  169. package/dist/sortable.esm-Blhf_jh1.js +3391 -0
  170. package/dist/sortable.esm-Blhf_jh1.js.map +1 -0
  171. package/dist/sortable.esm-DcQYlXi3.cjs +6 -0
  172. package/dist/sortable.esm-DcQYlXi3.cjs.map +1 -0
  173. package/dist/sparkline-chart-Da-ehDGv.js +21082 -0
  174. package/dist/sparkline-chart-Da-ehDGv.js.map +1 -0
  175. package/dist/sparkline-chart-ca3uTzVK.cjs +68 -0
  176. package/dist/sparkline-chart-ca3uTzVK.cjs.map +1 -0
  177. package/dist/trending-up-D3Nfrhi3.cjs +2 -0
  178. package/dist/trending-up-D3Nfrhi3.cjs.map +1 -0
  179. package/dist/trending-up-DPwlYzQb.js +9 -0
  180. package/dist/trending-up-DPwlYzQb.js.map +1 -0
  181. package/dist/ui.css +1 -0
  182. package/dist/use-formatters-d97RVcmg.cjs +2 -0
  183. package/dist/use-formatters-d97RVcmg.cjs.map +1 -0
  184. package/dist/use-formatters-l1_2c8z0.js +6682 -0
  185. package/dist/use-formatters-l1_2c8z0.js.map +1 -0
  186. package/dist/use-local-storage-BjlrKzE-.js +42 -0
  187. package/dist/use-local-storage-BjlrKzE-.js.map +1 -0
  188. package/dist/use-local-storage-q-1odzIu.cjs +2 -0
  189. package/dist/use-local-storage-q-1odzIu.cjs.map +1 -0
  190. package/dist/use-mobile-C-LMK4T8.js +15 -0
  191. package/dist/use-mobile-C-LMK4T8.js.map +1 -0
  192. package/dist/use-mobile-DY7TJ5lx.cjs +2 -0
  193. package/dist/use-mobile-DY7TJ5lx.cjs.map +1 -0
  194. package/dist/use-toast-DG2qdYhl.js +97 -0
  195. package/dist/use-toast-DG2qdYhl.js.map +1 -0
  196. package/dist/use-toast-DxZJ8uUm.cjs +2 -0
  197. package/dist/use-toast-DxZJ8uUm.cjs.map +1 -0
  198. package/dist/utils/index.cjs.js +2 -0
  199. package/dist/utils/index.cjs.js.map +1 -0
  200. package/dist/utils/index.es.js +5 -0
  201. package/dist/utils/index.es.js.map +1 -0
  202. package/dist/welcome-card-CPolYl1D.cjs +2 -0
  203. package/dist/welcome-card-CPolYl1D.cjs.map +1 -0
  204. package/dist/welcome-card-CxMJZ8bv.js +963 -0
  205. package/dist/welcome-card-CxMJZ8bv.js.map +1 -0
  206. package/package.json +179 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"welcome-card-CxMJZ8bv.js","sources":["../node_modules/lucide-react/dist/esm/icons/arrow-right.js","../node_modules/lucide-react/dist/esm/icons/building-2.js","../node_modules/lucide-react/dist/esm/icons/copy.js","../node_modules/lucide-react/dist/esm/icons/external-link.js","../node_modules/lucide-react/dist/esm/icons/mail.js","../node_modules/lucide-react/dist/esm/icons/message-square.js","../node_modules/lucide-react/dist/esm/icons/phone.js","../node_modules/lucide-react/dist/esm/icons/refresh-cw.js","../node_modules/lucide-react/dist/esm/icons/sparkles.js","../node_modules/lucide-react/dist/esm/icons/square-pen.js","../node_modules/lucide-react/dist/esm/icons/thumbs-down.js","../node_modules/lucide-react/dist/esm/icons/thumbs-up.js","../node_modules/lucide-react/dist/esm/icons/trash-2.js","../src/components/feedback/contact-card.tsx","../src/components/feedback/deal-card.tsx","../src/components/feedback/pipeline-board.tsx","../src/components/feedback/lead-score-indicator.tsx","../src/components/feedback/status-badge.tsx","../src/components/feedback/progress-tracker.tsx","../src/components/feedback/ai-summary-card.tsx","../src/components/feedback/feature-highlight-card.tsx","../src/components/feedback/alert-banner.tsx","../src/components/feedback/activity-item.tsx","../src/components/feedback/welcome-card.tsx"],"sourcesContent":["/**\n * @license lucide-react v0.441.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst ArrowRight = createLucideIcon(\"ArrowRight\", [\n [\"path\", { d: \"M5 12h14\", key: \"1ays0h\" }],\n [\"path\", { d: \"m12 5 7 7-7 7\", key: \"xquz4c\" }]\n]);\n\nexport { ArrowRight as default };\n//# sourceMappingURL=arrow-right.js.map\n","/**\n * @license lucide-react v0.441.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst Building2 = createLucideIcon(\"Building2\", [\n [\"path\", { d: \"M6 22V4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v18Z\", key: \"1b4qmf\" }],\n [\"path\", { d: \"M6 12H4a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h2\", key: \"i71pzd\" }],\n [\"path\", { d: \"M18 9h2a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2h-2\", key: \"10jefs\" }],\n [\"path\", { d: \"M10 6h4\", key: \"1itunk\" }],\n [\"path\", { d: \"M10 10h4\", key: \"tcdvrf\" }],\n [\"path\", { d: \"M10 14h4\", key: \"kelpxr\" }],\n [\"path\", { d: \"M10 18h4\", key: \"1ulq68\" }]\n]);\n\nexport { Building2 as default };\n//# sourceMappingURL=building-2.js.map\n","/**\n * @license lucide-react v0.441.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst Copy = createLucideIcon(\"Copy\", [\n [\"rect\", { width: \"14\", height: \"14\", x: \"8\", y: \"8\", rx: \"2\", ry: \"2\", key: \"17jyea\" }],\n [\"path\", { d: \"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\", key: \"zix9uf\" }]\n]);\n\nexport { Copy as default };\n//# sourceMappingURL=copy.js.map\n","/**\n * @license lucide-react v0.441.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst ExternalLink = createLucideIcon(\"ExternalLink\", [\n [\"path\", { d: \"M15 3h6v6\", key: \"1q9fwt\" }],\n [\"path\", { d: \"M10 14 21 3\", key: \"gplh6r\" }],\n [\"path\", { d: \"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6\", key: \"a6xqqp\" }]\n]);\n\nexport { ExternalLink as default };\n//# sourceMappingURL=external-link.js.map\n","/**\n * @license lucide-react v0.441.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst Mail = createLucideIcon(\"Mail\", [\n [\"rect\", { width: \"20\", height: \"16\", x: \"2\", y: \"4\", rx: \"2\", key: \"18n3k1\" }],\n [\"path\", { d: \"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7\", key: \"1ocrg3\" }]\n]);\n\nexport { Mail as default };\n//# sourceMappingURL=mail.js.map\n","/**\n * @license lucide-react v0.441.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst MessageSquare = createLucideIcon(\"MessageSquare\", [\n [\"path\", { d: \"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z\", key: \"1lielz\" }]\n]);\n\nexport { MessageSquare as default };\n//# sourceMappingURL=message-square.js.map\n","/**\n * @license lucide-react v0.441.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst Phone = createLucideIcon(\"Phone\", [\n [\n \"path\",\n {\n d: \"M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z\",\n key: \"foiqr5\"\n }\n ]\n]);\n\nexport { Phone as default };\n//# sourceMappingURL=phone.js.map\n","/**\n * @license lucide-react v0.441.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst RefreshCw = createLucideIcon(\"RefreshCw\", [\n [\"path\", { d: \"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8\", key: \"v9h5vc\" }],\n [\"path\", { d: \"M21 3v5h-5\", key: \"1q7to0\" }],\n [\"path\", { d: \"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16\", key: \"3uifl3\" }],\n [\"path\", { d: \"M8 16H3v5\", key: \"1cv678\" }]\n]);\n\nexport { RefreshCw as default };\n//# sourceMappingURL=refresh-cw.js.map\n","/**\n * @license lucide-react v0.441.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst Sparkles = createLucideIcon(\"Sparkles\", [\n [\n \"path\",\n {\n d: \"M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z\",\n key: \"4pj2yx\"\n }\n ],\n [\"path\", { d: \"M20 3v4\", key: \"1olli1\" }],\n [\"path\", { d: \"M22 5h-4\", key: \"1gvqau\" }],\n [\"path\", { d: \"M4 17v2\", key: \"vumght\" }],\n [\"path\", { d: \"M5 18H3\", key: \"zchphs\" }]\n]);\n\nexport { Sparkles as default };\n//# sourceMappingURL=sparkles.js.map\n","/**\n * @license lucide-react v0.441.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst SquarePen = createLucideIcon(\"SquarePen\", [\n [\"path\", { d: \"M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\", key: \"1m0v6g\" }],\n [\n \"path\",\n {\n d: \"M18.375 2.625a1 1 0 0 1 3 3l-9.013 9.014a2 2 0 0 1-.853.505l-2.873.84a.5.5 0 0 1-.62-.62l.84-2.873a2 2 0 0 1 .506-.852z\",\n key: \"ohrbg2\"\n }\n ]\n]);\n\nexport { SquarePen as default };\n//# sourceMappingURL=square-pen.js.map\n","/**\n * @license lucide-react v0.441.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst ThumbsDown = createLucideIcon(\"ThumbsDown\", [\n [\"path\", { d: \"M17 14V2\", key: \"8ymqnk\" }],\n [\n \"path\",\n {\n d: \"M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z\",\n key: \"m61m77\"\n }\n ]\n]);\n\nexport { ThumbsDown as default };\n//# sourceMappingURL=thumbs-down.js.map\n","/**\n * @license lucide-react v0.441.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst ThumbsUp = createLucideIcon(\"ThumbsUp\", [\n [\"path\", { d: \"M7 10v12\", key: \"1qc93n\" }],\n [\n \"path\",\n {\n d: \"M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z\",\n key: \"emmmcr\"\n }\n ]\n]);\n\nexport { ThumbsUp as default };\n//# sourceMappingURL=thumbs-up.js.map\n","/**\n * @license lucide-react v0.441.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst Trash2 = createLucideIcon(\"Trash2\", [\n [\"path\", { d: \"M3 6h18\", key: \"d0wm0j\" }],\n [\"path\", { d: \"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6\", key: \"4alrt4\" }],\n [\"path\", { d: \"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2\", key: \"v07s0e\" }],\n [\"line\", { x1: \"10\", x2: \"10\", y1: \"11\", y2: \"17\", key: \"1uufr5\" }],\n [\"line\", { x1: \"14\", x2: \"14\", y1: \"11\", y2: \"17\", key: \"xtxkd\" }]\n]);\n\nexport { Trash2 as default };\n//# sourceMappingURL=trash-2.js.map\n","import * as React from 'react'\nimport { Mail, Phone, Building2, MapPin } from 'lucide-react'\nimport { cn } from '@/utils/cn'\nimport { Card, CardContent, CardHeader } from '@/components/ui/card'\nimport { Avatar, AvatarFallback, AvatarImage } from '@/components/ui/avatar'\nimport { Badge } from '@/components/ui/badge'\n\nexport interface ContactCardProps extends React.HTMLAttributes<HTMLDivElement> {\n name: string\n email?: string\n phone?: string\n company?: string\n position?: string\n location?: string\n avatar?: string\n initials?: string\n status?: 'active' | 'inactive' | 'lead' | 'customer'\n tags?: string[]\n onClick?: () => void\n}\n\nconst statusColors = {\n active: 'bg-success text-success-foreground',\n inactive: 'bg-muted text-muted-foreground',\n lead: 'bg-warning text-warning-foreground',\n customer: 'bg-primary text-primary-foreground',\n}\n\nconst ContactCard = React.forwardRef<HTMLDivElement, ContactCardProps>(\n (\n {\n className,\n name,\n email,\n phone,\n company,\n position,\n location,\n avatar,\n initials,\n status,\n tags,\n onClick,\n ...props\n },\n ref\n ) => {\n return (\n <Card\n ref={ref}\n className={cn('transition-shadow hover:shadow-md', onClick && 'cursor-pointer', className)}\n onClick={onClick}\n {...props}\n >\n <CardHeader className=\"pb-3\">\n <div className=\"flex items-start gap-4\">\n <Avatar className=\"h-12 w-12\">\n {avatar && <AvatarImage src={avatar} alt={name} />}\n <AvatarFallback>{initials || name.charAt(0).toUpperCase()}</AvatarFallback>\n </Avatar>\n <div className=\"flex-1 space-y-1\">\n <div className=\"flex items-center gap-2\">\n <h3 className=\"font-semibold leading-none\">{name}</h3>\n {status && (\n <Badge className={cn('text-xs', statusColors[status])}>\n {status.charAt(0).toUpperCase() + status.slice(1)}\n </Badge>\n )}\n </div>\n {position && <p className=\"text-sm text-muted-foreground\">{position}</p>}\n </div>\n </div>\n </CardHeader>\n <CardContent className=\"space-y-2 text-sm\">\n {email && (\n <div className=\"flex items-center gap-2 text-muted-foreground\">\n <Mail className=\"h-4 w-4\" />\n <span>{email}</span>\n </div>\n )}\n {phone && (\n <div className=\"flex items-center gap-2 text-muted-foreground\">\n <Phone className=\"h-4 w-4\" />\n <span>{phone}</span>\n </div>\n )}\n {company && (\n <div className=\"flex items-center gap-2 text-muted-foreground\">\n <Building2 className=\"h-4 w-4\" />\n <span>{company}</span>\n </div>\n )}\n {location && (\n <div className=\"flex items-center gap-2 text-muted-foreground\">\n <MapPin className=\"h-4 w-4\" />\n <span>{location}</span>\n </div>\n )}\n {tags && tags.length > 0 && (\n <div className=\"flex flex-wrap gap-1 pt-2\">\n {tags.map((tag, index) => (\n <Badge key={index} variant=\"secondary\" className=\"text-xs\">\n {tag}\n </Badge>\n ))}\n </div>\n )}\n </CardContent>\n </Card>\n )\n }\n)\nContactCard.displayName = 'ContactCard'\n\nexport { ContactCard }\n","import * as React from 'react'\nimport { Calendar } from 'lucide-react'\nimport { cn } from '@/utils/cn'\nimport { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/card'\nimport { Badge } from '@/components/ui/badge'\nimport { Avatar, AvatarFallback, AvatarImage } from '@/components/ui/avatar'\nimport { Progress } from '@/components/ui/progress'\nimport { useFormatters } from '@/hooks/use-formatters'\nimport { type CurrencyCode } from '@/lib/currencies'\n\nexport interface DealCardProps extends React.HTMLAttributes<HTMLDivElement> {\n title: string\n value: number | string\n company?: string\n stage?: string\n probability?: number\n closeDate?: Date | string\n closeDateFormat?: string\n currency?: CurrencyCode\n showCurrencyCode?: boolean\n probabilityLabel?: string\n owner?: {\n name: string\n avatar?: string\n }\n priority?: 'low' | 'medium' | 'high'\n onClick?: () => void\n onDragStart?: (e: React.DragEvent) => void\n draggable?: boolean\n /** If true, the value is already formatted and won't be processed */\n valueFormatted?: boolean\n}\n\nconst priorityColors = {\n low: 'bg-muted text-muted-foreground',\n medium: 'bg-warning text-warning-foreground',\n high: 'bg-destructive text-destructive-foreground',\n}\n\nconst DealCard = React.forwardRef<HTMLDivElement, DealCardProps>(\n (\n {\n className,\n title,\n value,\n company,\n stage,\n probability,\n closeDate,\n closeDateFormat,\n currency,\n showCurrencyCode = false,\n probabilityLabel,\n owner,\n priority,\n onClick,\n onDragStart,\n draggable = false,\n valueFormatted = false,\n ...props\n },\n ref\n ) => {\n const { formatCurrency, formatDate, t } = useFormatters()\n\n const displayValue = React.useMemo(() => {\n if (valueFormatted || typeof value === 'string') {\n return value\n }\n // Use provided currency or fall back to locale default\n if (currency) {\n const formatted = new Intl.NumberFormat(undefined, {\n style: 'currency',\n currency: currency,\n minimumFractionDigits: 0,\n maximumFractionDigits: 0,\n }).format(value)\n return showCurrencyCode ? `${currency} ${formatted.replace(/[^0-9.,\\s]/g, '').trim()}` : formatted\n }\n return formatCurrency(value, { minimumFractionDigits: 0, maximumFractionDigits: 0 })\n }, [value, valueFormatted, formatCurrency, currency, showCurrencyCode])\n\n const displayDate = React.useMemo(() => {\n if (!closeDate) return null\n return formatDate(closeDate, closeDateFormat)\n }, [closeDate, closeDateFormat, formatDate])\n\n return (\n <Card\n ref={ref}\n className={cn(\n 'transition-all hover:shadow-md',\n onClick && 'cursor-pointer',\n draggable && 'cursor-grab active:cursor-grabbing',\n className\n )}\n onClick={onClick}\n onDragStart={onDragStart}\n draggable={draggable}\n {...props}\n >\n <CardHeader className=\"pb-2\">\n <div className=\"flex items-start justify-between\">\n <div className=\"space-y-1\">\n <CardTitle className=\"text-base\">{title}</CardTitle>\n {company && <p className=\"text-sm text-muted-foreground\">{company}</p>}\n </div>\n {priority && (\n <Badge className={cn('text-xs', priorityColors[priority])}>\n {priority.charAt(0).toUpperCase() + priority.slice(1)}\n </Badge>\n )}\n </div>\n </CardHeader>\n <CardContent className=\"space-y-3\">\n <div className=\"flex items-center justify-between\">\n <div className=\"text-lg font-bold\">\n {displayValue}\n </div>\n {stage && (\n <Badge variant=\"outline\" className=\"text-xs\">\n {stage}\n </Badge>\n )}\n </div>\n\n {probability !== undefined && (\n <div className=\"space-y-1\">\n <div className=\"flex justify-between text-xs\">\n <span className=\"text-muted-foreground\">{probabilityLabel || t('deal.probability')}</span>\n <span className=\"font-medium\">{probability}%</span>\n </div>\n <Progress value={probability} className=\"h-2\" />\n </div>\n )}\n\n <div className=\"flex items-center justify-between text-xs text-muted-foreground\">\n {displayDate && (\n <div className=\"flex items-center gap-1\">\n <Calendar className=\"h-3 w-3\" />\n <span>{displayDate}</span>\n </div>\n )}\n {owner && (\n <div className=\"flex items-center gap-1\">\n <Avatar className=\"h-5 w-5\">\n {owner.avatar && <AvatarImage src={owner.avatar} />}\n <AvatarFallback className=\"text-[10px]\">\n {owner.name.charAt(0).toUpperCase()}\n </AvatarFallback>\n </Avatar>\n <span>{owner.name}</span>\n </div>\n )}\n </div>\n </CardContent>\n </Card>\n )\n }\n)\nDealCard.displayName = 'DealCard'\n\nexport { DealCard }\n","import * as React from 'react'\nimport { Plus } from 'lucide-react'\nimport { cn } from '@/utils/cn'\nimport { Button } from '@/components/ui/button'\nimport { ScrollArea, ScrollBar } from '@/components/ui/scroll-area'\n\nexport interface PipelineColumn<T> {\n id: string\n title: string\n items: T[]\n color?: string\n}\n\nexport interface PipelineBoardProps<T> extends React.HTMLAttributes<HTMLDivElement> {\n columns: PipelineColumn<T>[]\n renderItem: (item: T, columnId: string) => React.ReactNode\n onItemMove?: (itemId: string, fromColumnId: string, toColumnId: string) => void\n onAddItem?: (columnId: string) => void\n showAddButton?: boolean\n columnWidth?: number\n getItemId: (item: T) => string\n}\n\nfunction PipelineBoard<T>({\n className,\n columns,\n renderItem,\n onItemMove,\n onAddItem,\n showAddButton = true,\n columnWidth = 300,\n getItemId,\n}: PipelineBoardProps<T>) {\n const [draggedItem, setDraggedItem] = React.useState<{\n id: string\n columnId: string\n } | null>(null)\n\n const handleDragStart = (itemId: string, columnId: string) => {\n setDraggedItem({ id: itemId, columnId })\n }\n\n const handleDragOver = (e: React.DragEvent) => {\n e.preventDefault()\n }\n\n const handleDrop = (targetColumnId: string) => {\n if (draggedItem && draggedItem.columnId !== targetColumnId) {\n onItemMove?.(draggedItem.id, draggedItem.columnId, targetColumnId)\n }\n setDraggedItem(null)\n }\n\n const handleDragEnd = () => {\n setDraggedItem(null)\n }\n\n return (\n <ScrollArea className={cn('w-full', className)}>\n <div className=\"flex gap-4 p-4\">\n {columns.map((column) => (\n <div\n key={column.id}\n className=\"flex shrink-0 flex-col rounded-lg bg-muted/50\"\n style={{ width: columnWidth }}\n onDragOver={handleDragOver}\n onDrop={() => handleDrop(column.id)}\n >\n <div className=\"flex items-center justify-between p-3\">\n <div className=\"flex items-center gap-2\">\n {column.color && (\n <div\n className=\"h-3 w-3 rounded-full\"\n style={{ backgroundColor: column.color }}\n />\n )}\n <h3 className=\"text-sm font-semibold\">{column.title}</h3>\n <span className=\"rounded-full bg-muted px-2 py-0.5 text-xs text-muted-foreground\">\n {column.items.length}\n </span>\n </div>\n {showAddButton && onAddItem && (\n <Button\n variant=\"ghost\"\n size=\"icon\"\n className=\"h-6 w-6\"\n onClick={() => onAddItem(column.id)}\n >\n <Plus className=\"h-4 w-4\" />\n </Button>\n )}\n </div>\n <div className=\"flex flex-1 flex-col gap-2 p-2\">\n {column.items.map((item) => {\n const itemId = getItemId(item)\n return (\n <div\n key={itemId}\n draggable\n onDragStart={() => handleDragStart(itemId, column.id)}\n onDragEnd={handleDragEnd}\n className={cn(\n 'transition-opacity',\n draggedItem?.id === itemId && 'opacity-50'\n )}\n >\n {renderItem(item, column.id)}\n </div>\n )\n })}\n </div>\n </div>\n ))}\n </div>\n <ScrollBar orientation=\"horizontal\" />\n </ScrollArea>\n )\n}\n\nexport { PipelineBoard }\n","import * as React from 'react'\nimport { cn } from '@/utils/cn'\n\nexport interface LeadScoreIndicatorProps extends React.HTMLAttributes<HTMLDivElement> {\n score: number\n maxScore?: number\n showLabel?: boolean\n size?: 'sm' | 'md' | 'lg'\n}\n\nconst getScoreColor = (score: number, maxScore: number) => {\n const percentage = (score / maxScore) * 100\n if (percentage >= 80) return 'bg-success text-success-foreground'\n if (percentage >= 60) return 'bg-primary text-primary-foreground'\n if (percentage >= 40) return 'bg-warning text-warning-foreground'\n return 'bg-destructive text-destructive-foreground'\n}\n\nconst getScoreLabel = (score: number, maxScore: number) => {\n const percentage = (score / maxScore) * 100\n if (percentage >= 80) return 'Hot'\n if (percentage >= 60) return 'Warm'\n if (percentage >= 40) return 'Cold'\n return 'Very Cold'\n}\n\nconst sizeClasses = {\n sm: 'h-6 w-6 text-xs',\n md: 'h-8 w-8 text-sm',\n lg: 'h-10 w-10 text-base',\n}\n\nconst LeadScoreIndicator = React.forwardRef<HTMLDivElement, LeadScoreIndicatorProps>(\n ({ className, score, maxScore = 100, showLabel = false, size = 'md', ...props }, ref) => {\n const colorClass = getScoreColor(score, maxScore)\n const label = getScoreLabel(score, maxScore)\n\n return (\n <div ref={ref} className={cn('flex items-center gap-2', className)} {...props}>\n <div\n className={cn(\n 'flex items-center justify-center rounded-full font-semibold',\n sizeClasses[size],\n colorClass\n )}\n >\n {score}\n </div>\n {showLabel && (\n <span className={cn('text-sm font-medium', colorClass.split(' ')[0].replace('bg-', 'text-'))}>\n {label}\n </span>\n )}\n </div>\n )\n }\n)\nLeadScoreIndicator.displayName = 'LeadScoreIndicator'\n\nexport { LeadScoreIndicator }\n","import { cn } from '@/utils/cn'\nimport { Badge } from '@/components/ui/badge'\n\nexport type StatusType =\n | 'active'\n | 'inactive'\n | 'pending'\n | 'completed'\n | 'cancelled'\n | 'draft'\n | 'published'\n | 'archived'\n | 'open'\n | 'closed'\n | 'won'\n | 'lost'\n | 'qualified'\n | 'unqualified'\n\nexport interface StatusBadgeProps extends React.HTMLAttributes<HTMLDivElement> {\n status: StatusType | string\n customColors?: Record<string, string>\n showDot?: boolean\n}\n\nconst defaultStatusColors: Record<StatusType, string> = {\n active: 'bg-success/15 text-success border-success/30',\n inactive: 'bg-muted text-muted-foreground border-muted',\n pending: 'bg-warning/15 text-warning border-warning/30',\n completed: 'bg-success/15 text-success border-success/30',\n cancelled: 'bg-destructive/15 text-destructive border-destructive/30',\n draft: 'bg-muted text-muted-foreground border-muted',\n published: 'bg-success/15 text-success border-success/30',\n archived: 'bg-muted text-muted-foreground border-muted',\n open: 'bg-info/15 text-info border-info/30',\n closed: 'bg-muted text-muted-foreground border-muted',\n won: 'bg-success/15 text-success border-success/30',\n lost: 'bg-destructive/15 text-destructive border-destructive/30',\n qualified: 'bg-primary/15 text-primary border-primary/30',\n unqualified: 'bg-muted text-muted-foreground border-muted',\n}\n\nconst defaultDotColors: Record<StatusType, string> = {\n active: 'bg-success',\n inactive: 'bg-muted-foreground',\n pending: 'bg-warning',\n completed: 'bg-success',\n cancelled: 'bg-destructive',\n draft: 'bg-muted-foreground',\n published: 'bg-success',\n archived: 'bg-muted-foreground',\n open: 'bg-info',\n closed: 'bg-muted-foreground',\n won: 'bg-success',\n lost: 'bg-destructive',\n qualified: 'bg-primary',\n unqualified: 'bg-muted-foreground',\n}\n\nfunction StatusBadge({ className, status, customColors, showDot = true }: StatusBadgeProps) {\n const statusKey = status.toLowerCase() as StatusType\n const colorClass = customColors?.[status] || defaultStatusColors[statusKey] || 'bg-muted text-muted-foreground'\n const dotColor = defaultDotColors[statusKey] || 'bg-muted-foreground'\n\n const displayText = status.charAt(0).toUpperCase() + status.slice(1).toLowerCase()\n\n return (\n <Badge variant=\"outline\" className={cn('gap-1.5 font-medium', colorClass, className)}>\n {showDot && <span className={cn('h-2 w-2 rounded-full', dotColor)} />}\n {displayText}\n </Badge>\n )\n}\n\nexport { StatusBadge }\n","import * as React from 'react'\nimport { Check } from 'lucide-react'\nimport { cn } from '@/utils/cn'\n\nexport interface ProgressStep {\n id: string | number\n title: string\n description?: string\n}\n\nexport interface ProgressTrackerProps extends React.HTMLAttributes<HTMLDivElement> {\n steps: ProgressStep[]\n currentStep: number\n orientation?: 'horizontal' | 'vertical'\n onStepClick?: (stepIndex: number) => void\n}\n\nconst ProgressTracker = React.forwardRef<HTMLDivElement, ProgressTrackerProps>(\n ({ className, steps, currentStep, orientation = 'horizontal', onStepClick, ...props }, ref) => {\n return (\n <div\n ref={ref}\n className={cn(\n 'flex',\n orientation === 'horizontal' ? 'flex-row items-start' : 'flex-col',\n className\n )}\n {...props}\n >\n {steps.map((step, index) => {\n const isCompleted = index < currentStep\n const isCurrent = index === currentStep\n const isClickable = onStepClick !== undefined\n\n return (\n <div\n key={step.id}\n className={cn(\n 'flex',\n orientation === 'horizontal'\n ? 'flex-1 flex-col items-center'\n : 'flex-row items-start gap-4 pb-8 last:pb-0'\n )}\n >\n <div\n className={cn(\n 'flex items-center',\n orientation === 'horizontal' ? 'w-full' : 'flex-col'\n )}\n >\n {orientation === 'horizontal' && index > 0 && (\n <div\n className={cn(\n 'h-0.5 flex-1',\n index <= currentStep ? 'bg-primary' : 'bg-border'\n )}\n />\n )}\n <button\n type=\"button\"\n onClick={() => isClickable && onStepClick(index)}\n disabled={!isClickable}\n className={cn(\n 'relative z-10 flex h-10 w-10 shrink-0 items-center justify-center rounded-full border-2 text-sm font-medium transition-colors',\n isCompleted\n ? 'border-primary bg-primary text-primary-foreground'\n : isCurrent\n ? 'border-primary bg-background text-primary'\n : 'border-border bg-background text-muted-foreground',\n isClickable && 'cursor-pointer hover:border-primary/50'\n )}\n >\n {isCompleted ? <Check className=\"h-5 w-5\" /> : index + 1}\n </button>\n {orientation === 'horizontal' && index < steps.length - 1 && (\n <div\n className={cn(\n 'h-0.5 flex-1',\n index < currentStep ? 'bg-primary' : 'bg-border'\n )}\n />\n )}\n {orientation === 'vertical' && index < steps.length - 1 && (\n <div\n className={cn(\n 'my-2 w-0.5 flex-1',\n index < currentStep ? 'bg-primary' : 'bg-border'\n )}\n style={{ minHeight: '2rem' }}\n />\n )}\n </div>\n <div\n className={cn(\n 'text-center',\n orientation === 'horizontal' ? 'mt-2 px-2' : 'pt-1'\n )}\n >\n <p\n className={cn(\n 'text-sm font-medium',\n isCurrent || isCompleted ? 'text-foreground' : 'text-muted-foreground'\n )}\n >\n {step.title}\n </p>\n {step.description && (\n <p className=\"mt-0.5 text-xs text-muted-foreground\">{step.description}</p>\n )}\n </div>\n </div>\n )\n })}\n </div>\n )\n }\n)\nProgressTracker.displayName = 'ProgressTracker'\n\nexport { ProgressTracker }\n","import * as React from 'react'\nimport { Sparkles, RefreshCw, Copy, Check, ThumbsUp, ThumbsDown } from 'lucide-react'\nimport { cn } from '@/utils/cn'\nimport { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/card'\nimport { Button } from '@/components/ui/button'\nimport { Badge } from '@/components/ui/badge'\nimport { Skeleton } from '@/components/ui/skeleton'\n\nexport interface AISummaryCardProps extends React.HTMLAttributes<HTMLDivElement> {\n title?: string\n summary?: string\n loading?: boolean\n error?: string\n onRefresh?: () => void\n onCopy?: () => void\n onFeedback?: (feedback: 'positive' | 'negative') => void\n model?: string\n generatedAt?: string\n confidence?: number\n}\n\nconst AISummaryCard = React.forwardRef<HTMLDivElement, AISummaryCardProps>(\n (\n {\n className,\n title = 'AI Summary',\n summary,\n loading = false,\n error,\n onRefresh,\n onCopy,\n onFeedback,\n model,\n generatedAt,\n confidence,\n ...props\n },\n ref\n ) => {\n const [copied, setCopied] = React.useState(false)\n const [feedback, setFeedback] = React.useState<'positive' | 'negative' | null>(null)\n\n const handleCopy = async () => {\n if (summary && onCopy) {\n await navigator.clipboard.writeText(summary)\n setCopied(true)\n onCopy()\n setTimeout(() => setCopied(false), 2000)\n }\n }\n\n const handleFeedback = (type: 'positive' | 'negative') => {\n setFeedback(type)\n onFeedback?.(type)\n }\n\n return (\n <Card ref={ref} className={cn('relative overflow-hidden', className)} {...props}>\n <div className=\"absolute inset-x-0 top-0 h-1 bg-gradient-to-r from-primary/50 via-primary to-primary/50\" />\n <CardHeader className=\"flex flex-row items-center justify-between space-y-0 pb-2\">\n <div className=\"flex items-center gap-2\">\n <Sparkles className=\"h-4 w-4 text-primary\" />\n <CardTitle className=\"text-base font-medium\">{title}</CardTitle>\n {model && (\n <Badge variant=\"outline\" className=\"text-xs\">\n {model}\n </Badge>\n )}\n </div>\n <div className=\"flex items-center gap-1\">\n {onRefresh && (\n <Button\n variant=\"ghost\"\n size=\"icon\"\n className=\"h-7 w-7\"\n onClick={onRefresh}\n disabled={loading}\n >\n <RefreshCw className={cn('h-4 w-4', loading && 'animate-spin')} />\n </Button>\n )}\n {summary && onCopy && (\n <Button\n variant=\"ghost\"\n size=\"icon\"\n className=\"h-7 w-7\"\n onClick={handleCopy}\n >\n {copied ? (\n <Check className=\"h-4 w-4 text-success\" />\n ) : (\n <Copy className=\"h-4 w-4\" />\n )}\n </Button>\n )}\n </div>\n </CardHeader>\n <CardContent className=\"space-y-3\">\n {loading ? (\n <div className=\"space-y-2\">\n <Skeleton className=\"h-4 w-full\" />\n <Skeleton className=\"h-4 w-full\" />\n <Skeleton className=\"h-4 w-3/4\" />\n </div>\n ) : error ? (\n <div className=\"rounded-md bg-destructive/10 p-3 text-sm text-destructive\">\n {error}\n </div>\n ) : summary ? (\n <>\n <p className=\"text-sm text-muted-foreground leading-relaxed\">{summary}</p>\n <div className=\"flex items-center justify-between pt-2\">\n <div className=\"flex items-center gap-2 text-xs text-muted-foreground\">\n {confidence !== undefined && (\n <span>Confidence: {Math.round(confidence * 100)}%</span>\n )}\n {generatedAt && <span>{generatedAt}</span>}\n </div>\n {onFeedback && (\n <div className=\"flex items-center gap-1\">\n <span className=\"text-xs text-muted-foreground mr-1\">Was this helpful?</span>\n <Button\n variant={feedback === 'positive' ? 'default' : 'ghost'}\n size=\"icon\"\n className=\"h-7 w-7\"\n onClick={() => handleFeedback('positive')}\n >\n <ThumbsUp className=\"h-3.5 w-3.5\" />\n </Button>\n <Button\n variant={feedback === 'negative' ? 'destructive' : 'ghost'}\n size=\"icon\"\n className=\"h-7 w-7\"\n onClick={() => handleFeedback('negative')}\n >\n <ThumbsDown className=\"h-3.5 w-3.5\" />\n </Button>\n </div>\n )}\n </div>\n </>\n ) : (\n <p className=\"text-sm text-muted-foreground\">No summary available</p>\n )}\n </CardContent>\n </Card>\n )\n }\n)\nAISummaryCard.displayName = 'AISummaryCard'\n\nexport { AISummaryCard }\n","import * as React from 'react'\nimport { X, Sparkles, ArrowRight, ExternalLink } from 'lucide-react'\nimport { cn } from '@/utils/cn'\nimport { Card, CardContent } from '@/components/ui/card'\nimport { Button } from '@/components/ui/button'\nimport { Badge } from '@/components/ui/badge'\n\nexport interface FeatureHighlightCardProps extends React.HTMLAttributes<HTMLDivElement> {\n title: string\n description: string\n badge?: string\n icon?: React.ReactNode\n image?: string\n actionLabel?: string\n onAction?: () => void\n learnMoreUrl?: string\n dismissible?: boolean\n onDismiss?: () => void\n variant?: 'default' | 'gradient' | 'bordered'\n}\n\nconst FeatureHighlightCard = React.forwardRef<HTMLDivElement, FeatureHighlightCardProps>(\n (\n {\n className,\n title,\n description,\n badge,\n icon,\n image,\n actionLabel = 'Try it now',\n onAction,\n learnMoreUrl,\n dismissible = true,\n onDismiss,\n variant = 'default',\n ...props\n },\n ref\n ) => {\n const variantClasses = {\n default: 'bg-card',\n gradient: 'bg-gradient-to-br from-primary/10 via-primary/5 to-transparent',\n bordered: 'border-2 border-primary/20',\n }\n\n return (\n <Card\n ref={ref}\n className={cn('relative overflow-hidden', variantClasses[variant], className)}\n {...props}\n >\n {dismissible && onDismiss && (\n <Button\n variant=\"ghost\"\n size=\"icon\"\n className=\"absolute right-2 top-2 h-6 w-6\"\n onClick={onDismiss}\n >\n <X className=\"h-4 w-4\" />\n </Button>\n )}\n <CardContent className=\"p-6\">\n <div className=\"flex gap-4\">\n {(icon || image) && (\n <div className=\"flex-shrink-0\">\n {icon ? (\n <div className=\"flex h-12 w-12 items-center justify-center rounded-lg bg-primary/10 text-primary\">\n {icon}\n </div>\n ) : image ? (\n <img\n src={image}\n alt=\"\"\n className=\"h-12 w-12 rounded-lg object-cover\"\n />\n ) : null}\n </div>\n )}\n <div className=\"flex-1 space-y-3\">\n <div className=\"flex items-start justify-between gap-2\">\n <div>\n {badge && (\n <Badge variant=\"secondary\" className=\"mb-2\">\n <Sparkles className=\"mr-1 h-3 w-3\" />\n {badge}\n </Badge>\n )}\n <h3 className=\"font-semibold\">{title}</h3>\n </div>\n </div>\n <p className=\"text-sm text-muted-foreground\">{description}</p>\n <div className=\"flex items-center gap-2 pt-2\">\n {onAction && (\n <Button size=\"sm\" onClick={onAction}>\n {actionLabel}\n <ArrowRight className=\"ml-1 h-4 w-4\" />\n </Button>\n )}\n {learnMoreUrl && (\n <Button variant=\"ghost\" size=\"sm\" asChild>\n <a href={learnMoreUrl} target=\"_blank\" rel=\"noopener noreferrer\">\n Learn more\n <ExternalLink className=\"ml-1 h-3 w-3\" />\n </a>\n </Button>\n )}\n </div>\n </div>\n </div>\n </CardContent>\n </Card>\n )\n }\n)\nFeatureHighlightCard.displayName = 'FeatureHighlightCard'\n\nexport { FeatureHighlightCard }\n","import * as React from 'react'\nimport { X, AlertTriangle, Info, AlertCircle, CheckCircle } from 'lucide-react'\nimport { cva, type VariantProps } from 'class-variance-authority'\nimport { cn } from '@/utils/cn'\nimport { Button } from '@/components/ui/button'\n\nconst alertBannerVariants = cva(\n 'relative flex items-center gap-3 px-4 py-3 text-sm',\n {\n variants: {\n variant: {\n default: 'bg-muted text-foreground',\n info: 'bg-info/10 text-info-foreground border-info/20',\n success: 'bg-success/10 text-success-foreground border-success/20',\n warning: 'bg-warning/10 text-warning-foreground border-warning/20',\n destructive: 'bg-destructive/10 text-destructive-foreground border-destructive/20',\n },\n position: {\n top: 'fixed top-0 left-0 right-0 z-50 border-b',\n bottom: 'fixed bottom-0 left-0 right-0 z-50 border-t',\n inline: 'rounded-lg border',\n },\n },\n defaultVariants: {\n variant: 'default',\n position: 'inline',\n },\n }\n)\n\nconst iconMap = {\n default: Info,\n info: Info,\n success: CheckCircle,\n warning: AlertTriangle,\n destructive: AlertCircle,\n}\n\nexport interface AlertBannerProps\n extends React.HTMLAttributes<HTMLDivElement>,\n VariantProps<typeof alertBannerVariants> {\n title?: string\n message: string\n dismissible?: boolean\n onDismiss?: () => void\n action?: {\n label: string\n onClick: () => void\n }\n showIcon?: boolean\n}\n\nconst AlertBanner = React.forwardRef<HTMLDivElement, AlertBannerProps>(\n (\n {\n className,\n variant = 'default',\n position = 'inline',\n title,\n message,\n dismissible = true,\n onDismiss,\n action,\n showIcon = true,\n ...props\n },\n ref\n ) => {\n const Icon = iconMap[variant || 'default']\n\n return (\n <div\n ref={ref}\n role=\"alert\"\n className={cn(alertBannerVariants({ variant, position }), className)}\n {...props}\n >\n {showIcon && <Icon className=\"h-5 w-5 flex-shrink-0\" />}\n <div className=\"flex flex-1 flex-col gap-0.5\">\n {title && <p className=\"font-medium\">{title}</p>}\n <p className={cn(!title && 'font-normal', title && 'text-muted-foreground')}>{message}</p>\n </div>\n <div className=\"flex items-center gap-2\">\n {action && (\n <Button\n variant={variant === 'destructive' ? 'destructive' : 'outline'}\n size=\"sm\"\n onClick={action.onClick}\n >\n {action.label}\n </Button>\n )}\n {dismissible && onDismiss && (\n <Button\n variant=\"ghost\"\n size=\"icon\"\n className=\"h-6 w-6 flex-shrink-0\"\n onClick={onDismiss}\n >\n <X className=\"h-4 w-4\" />\n </Button>\n )}\n </div>\n </div>\n )\n }\n)\nAlertBanner.displayName = 'AlertBanner'\n\nexport { AlertBanner, alertBannerVariants }\n","import * as React from 'react'\nimport { Mail, Phone, Calendar, FileText, MessageSquare, Edit, Trash2 } from 'lucide-react'\nimport { cn } from '@/utils/cn'\nimport { Avatar, AvatarFallback, AvatarImage } from '@/components/ui/avatar'\nimport { Button } from '@/components/ui/button'\n\nexport type CRMActivityType = 'email' | 'call' | 'meeting' | 'note' | 'task' | 'message'\n\nexport interface CRMActivityItemProps extends React.HTMLAttributes<HTMLDivElement> {\n type: CRMActivityType\n title: string\n description?: string\n timestamp: string\n user?: {\n name: string\n avatar?: string\n }\n actions?: {\n onEdit?: () => void\n onDelete?: () => void\n }\n metadata?: Record<string, string>\n}\n\nconst activityIcons: Record<CRMActivityType, React.ReactNode> = {\n email: <Mail className=\"h-4 w-4\" />,\n call: <Phone className=\"h-4 w-4\" />,\n meeting: <Calendar className=\"h-4 w-4\" />,\n note: <FileText className=\"h-4 w-4\" />,\n task: <FileText className=\"h-4 w-4\" />,\n message: <MessageSquare className=\"h-4 w-4\" />,\n}\n\nconst activityColors: Record<CRMActivityType, string> = {\n email: 'bg-blue-100 text-blue-600 dark:bg-blue-900/30 dark:text-blue-400',\n call: 'bg-green-100 text-green-600 dark:bg-green-900/30 dark:text-green-400',\n meeting: 'bg-purple-100 text-purple-600 dark:bg-purple-900/30 dark:text-purple-400',\n note: 'bg-yellow-100 text-yellow-600 dark:bg-yellow-900/30 dark:text-yellow-400',\n task: 'bg-orange-100 text-orange-600 dark:bg-orange-900/30 dark:text-orange-400',\n message: 'bg-pink-100 text-pink-600 dark:bg-pink-900/30 dark:text-pink-400',\n}\n\nconst CRMActivityItem = React.forwardRef<HTMLDivElement, CRMActivityItemProps>(\n (\n {\n className,\n type,\n title,\n description,\n timestamp,\n user,\n actions,\n metadata,\n ...props\n },\n ref\n ) => {\n return (\n <div\n ref={ref}\n className={cn('group flex gap-4 rounded-lg p-3 hover:bg-muted/50', className)}\n {...props}\n >\n <div className={cn('flex h-10 w-10 items-center justify-center rounded-lg', activityColors[type])}>\n {activityIcons[type]}\n </div>\n\n <div className=\"flex flex-1 flex-col gap-1\">\n <div className=\"flex items-start justify-between\">\n <div>\n <h4 className=\"font-medium\">{title}</h4>\n {description && (\n <p className=\"text-sm text-muted-foreground line-clamp-2\">{description}</p>\n )}\n </div>\n {actions && (\n <div className=\"flex items-center gap-1 opacity-0 transition-opacity group-hover:opacity-100\">\n {actions.onEdit && (\n <Button variant=\"ghost\" size=\"icon\" className=\"h-7 w-7\" onClick={actions.onEdit}>\n <Edit className=\"h-3.5 w-3.5\" />\n </Button>\n )}\n {actions.onDelete && (\n <Button\n variant=\"ghost\"\n size=\"icon\"\n className=\"h-7 w-7 text-destructive hover:text-destructive\"\n onClick={actions.onDelete}\n >\n <Trash2 className=\"h-3.5 w-3.5\" />\n </Button>\n )}\n </div>\n )}\n </div>\n\n {metadata && Object.keys(metadata).length > 0 && (\n <div className=\"flex flex-wrap gap-2 text-xs text-muted-foreground\">\n {Object.entries(metadata).map(([key, value]) => (\n <span key={key}>\n <span className=\"font-medium\">{key}:</span> {value}\n </span>\n ))}\n </div>\n )}\n\n <div className=\"flex items-center gap-2 text-xs text-muted-foreground\">\n {user && (\n <>\n <Avatar className=\"h-5 w-5\">\n {user.avatar && <AvatarImage src={user.avatar} />}\n <AvatarFallback className=\"text-[10px]\">\n {user.name.charAt(0).toUpperCase()}\n </AvatarFallback>\n </Avatar>\n <span>{user.name}</span>\n <span>•</span>\n </>\n )}\n <span>{timestamp}</span>\n </div>\n </div>\n </div>\n )\n }\n)\nCRMActivityItem.displayName = 'CRMActivityItem'\n\nexport { CRMActivityItem }\n","import * as React from 'react'\nimport { X, ArrowRight, Sparkles } from 'lucide-react'\nimport { cn } from '@/utils/cn'\nimport { Card, CardContent } from '@/components/ui/card'\nimport { Button } from '@/components/ui/button'\nimport { Progress } from '@/components/ui/progress'\n\nexport interface WelcomeStep {\n id: string\n title: string\n description?: string\n completed: boolean\n href?: string\n onClick?: () => void\n}\n\nexport interface WelcomeCardProps extends React.HTMLAttributes<HTMLDivElement> {\n title: string\n subtitle?: string\n userName?: string\n steps?: WelcomeStep[]\n dismissible?: boolean\n onDismiss?: () => void\n showProgress?: boolean\n image?: string\n ctaLabel?: string\n ctaOnClick?: () => void\n}\n\nconst WelcomeCard = React.forwardRef<HTMLDivElement, WelcomeCardProps>(\n (\n {\n className,\n title,\n subtitle,\n userName,\n steps = [],\n dismissible = true,\n onDismiss,\n showProgress = true,\n image,\n ctaLabel,\n ctaOnClick,\n ...props\n },\n ref\n ) => {\n const completedCount = steps.filter((s) => s.completed).length\n const progressPercent = steps.length > 0 ? (completedCount / steps.length) * 100 : 0\n\n return (\n <Card\n ref={ref}\n className={cn('relative overflow-hidden', className)}\n {...props}\n >\n <div className=\"absolute inset-0 bg-gradient-to-r from-primary/5 via-primary/10 to-transparent\" />\n {dismissible && onDismiss && (\n <Button\n variant=\"ghost\"\n size=\"icon\"\n className=\"absolute right-2 top-2 h-6 w-6 z-10\"\n onClick={onDismiss}\n >\n <X className=\"h-4 w-4\" />\n </Button>\n )}\n <CardContent className=\"relative p-6\">\n <div className=\"flex gap-6\">\n <div className=\"flex-1 space-y-4\">\n <div className=\"flex items-center gap-2\">\n <Sparkles className=\"h-5 w-5 text-primary\" />\n <span className=\"text-sm font-medium text-primary\">Welcome</span>\n </div>\n\n <div>\n <h2 className=\"text-2xl font-bold\">\n {userName ? `${title}, ${userName}!` : title}\n </h2>\n {subtitle && <p className=\"mt-1 text-muted-foreground\">{subtitle}</p>}\n </div>\n\n {showProgress && steps.length > 0 && (\n <div className=\"space-y-2\">\n <div className=\"flex items-center justify-between text-sm\">\n <span className=\"text-muted-foreground\">Setup progress</span>\n <span className=\"font-medium\">{completedCount}/{steps.length} completed</span>\n </div>\n <Progress value={progressPercent} className=\"h-2\" />\n </div>\n )}\n\n {steps.length > 0 && (\n <div className=\"space-y-2\">\n {steps.slice(0, 3).map((step) => (\n <button\n key={step.id}\n onClick={step.onClick}\n className={cn(\n 'flex w-full items-center gap-3 rounded-lg p-3 text-left transition-colors hover:bg-muted',\n step.completed && 'opacity-50'\n )}\n >\n <div\n className={cn(\n 'flex h-6 w-6 items-center justify-center rounded-full border-2',\n step.completed\n ? 'border-primary bg-primary text-primary-foreground'\n : 'border-muted-foreground/30'\n )}\n >\n {step.completed && (\n <svg\n className=\"h-3.5 w-3.5\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n stroke=\"currentColor\"\n strokeWidth={3}\n >\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" d=\"M5 13l4 4L19 7\" />\n </svg>\n )}\n </div>\n <div className=\"flex-1\">\n <p className={cn('font-medium', step.completed && 'line-through')}>\n {step.title}\n </p>\n {step.description && (\n <p className=\"text-xs text-muted-foreground\">{step.description}</p>\n )}\n </div>\n {!step.completed && <ArrowRight className=\"h-4 w-4 text-muted-foreground\" />}\n </button>\n ))}\n </div>\n )}\n\n {ctaLabel && ctaOnClick && (\n <Button onClick={ctaOnClick} className=\"gap-2\">\n {ctaLabel}\n <ArrowRight className=\"h-4 w-4\" />\n </Button>\n )}\n </div>\n\n {image && (\n <div className=\"hidden lg:block\">\n <img src={image} alt=\"\" className=\"h-48 w-48 object-contain\" />\n </div>\n )}\n </div>\n </CardContent>\n </Card>\n )\n }\n)\nWelcomeCard.displayName = 'WelcomeCard'\n\nexport { WelcomeCard }\n"],"names":["ArrowRight","createLucideIcon","Building2","Copy","ExternalLink","Mail","MessageSquare","Phone","RefreshCw","Sparkles","SquarePen","ThumbsDown","ThumbsUp","Trash2","statusColors","ContactCard","React","className","name","email","phone","company","position","location","avatar","initials","status","tags","onClick","props","ref","jsxs","Card","cn","jsx","CardHeader","Avatar","AvatarImage","AvatarFallback","Badge","CardContent","MapPin","tag","index","priorityColors","DealCard","title","value","stage","probability","closeDate","closeDateFormat","currency","showCurrencyCode","probabilityLabel","owner","priority","onDragStart","draggable","valueFormatted","formatCurrency","formatDate","t","useFormatters","displayValue","formatted","displayDate","CardTitle","Progress","Calendar","PipelineBoard","columns","renderItem","onItemMove","onAddItem","showAddButton","columnWidth","getItemId","draggedItem","setDraggedItem","handleDragStart","itemId","columnId","handleDragOver","e","handleDrop","targetColumnId","handleDragEnd","ScrollArea","column","Button","Plus","item","ScrollBar","getScoreColor","score","maxScore","percentage","getScoreLabel","sizeClasses","LeadScoreIndicator","showLabel","size","colorClass","label","defaultStatusColors","defaultDotColors","StatusBadge","customColors","showDot","statusKey","dotColor","displayText","ProgressTracker","steps","currentStep","orientation","onStepClick","step","isCompleted","isCurrent","isClickable","Check","AISummaryCard","summary","loading","error","onRefresh","onCopy","onFeedback","model","generatedAt","confidence","copied","setCopied","feedback","setFeedback","handleCopy","handleFeedback","type","Skeleton","Fragment","FeatureHighlightCard","description","badge","icon","image","actionLabel","onAction","learnMoreUrl","dismissible","onDismiss","variant","X","alertBannerVariants","cva","iconMap","Info","CheckCircle","AlertTriangle","AlertCircle","AlertBanner","message","action","showIcon","Icon","activityIcons","FileText","activityColors","CRMActivityItem","timestamp","user","actions","metadata","Edit","key","WelcomeCard","subtitle","userName","showProgress","ctaLabel","ctaOnClick","completedCount","s","progressPercent"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12]}
package/package.json ADDED
@@ -0,0 +1,179 @@
1
+ {
2
+ "name": "@senitix/ui",
3
+ "version": "0.4.0",
4
+ "description": "Comprehensive React UI kit for CRM, ERP, HRM, CMS SaaS applications",
5
+ "publishConfig": {
6
+ "access": "restricted",
7
+ "registry": "https://registry.npmjs.org/"
8
+ },
9
+ "type": "module",
10
+ "main": "./dist/index.cjs.js",
11
+ "module": "./dist/index.es.js",
12
+ "types": "./dist/index.d.ts",
13
+ "exports": {
14
+ ".": {
15
+ "types": "./dist/index.d.ts",
16
+ "import": "./dist/index.es.js",
17
+ "require": "./dist/index.cjs.js"
18
+ },
19
+ "./styles.css": "./dist/styles.css",
20
+ "./ui": {
21
+ "types": "./dist/components/ui/index.d.ts",
22
+ "import": "./dist/components/ui/index.es.js",
23
+ "require": "./dist/components/ui/index.cjs.js"
24
+ },
25
+ "./forms": {
26
+ "types": "./dist/components/forms/index.d.ts",
27
+ "import": "./dist/components/forms/index.es.js",
28
+ "require": "./dist/components/forms/index.cjs.js"
29
+ },
30
+ "./data-display": {
31
+ "types": "./dist/components/data-display/index.d.ts",
32
+ "import": "./dist/components/data-display/index.es.js",
33
+ "require": "./dist/components/data-display/index.cjs.js"
34
+ },
35
+ "./navigation": {
36
+ "types": "./dist/components/navigation/index.d.ts",
37
+ "import": "./dist/components/navigation/index.es.js",
38
+ "require": "./dist/components/navigation/index.cjs.js"
39
+ },
40
+ "./feedback": {
41
+ "types": "./dist/components/feedback/index.d.ts",
42
+ "import": "./dist/components/feedback/index.es.js",
43
+ "require": "./dist/components/feedback/index.cjs.js"
44
+ },
45
+ "./layouts": {
46
+ "types": "./dist/components/layouts/index.d.ts",
47
+ "import": "./dist/components/layouts/index.es.js",
48
+ "require": "./dist/components/layouts/index.cjs.js"
49
+ },
50
+ "./charts": {
51
+ "types": "./dist/components/charts/index.d.ts",
52
+ "import": "./dist/components/charts/index.es.js",
53
+ "require": "./dist/components/charts/index.cjs.js"
54
+ },
55
+ "./dnd": {
56
+ "types": "./dist/components/dnd/index.d.ts",
57
+ "import": "./dist/components/dnd/index.es.js",
58
+ "require": "./dist/components/dnd/index.cjs.js"
59
+ },
60
+ "./hooks": {
61
+ "types": "./dist/hooks/index.d.ts",
62
+ "import": "./dist/hooks/index.es.js",
63
+ "require": "./dist/hooks/index.cjs.js"
64
+ },
65
+ "./providers": {
66
+ "types": "./dist/providers/index.d.ts",
67
+ "import": "./dist/providers/index.es.js",
68
+ "require": "./dist/providers/index.cjs.js"
69
+ },
70
+ "./utils": {
71
+ "types": "./dist/utils/index.d.ts",
72
+ "import": "./dist/utils/index.es.js",
73
+ "require": "./dist/utils/index.cjs.js"
74
+ }
75
+ },
76
+ "files": [
77
+ "dist"
78
+ ],
79
+ "sideEffects": [
80
+ "**/*.css"
81
+ ],
82
+ "scripts": {
83
+ "dev": "vite",
84
+ "build": "tsc --noEmit && vite build",
85
+ "lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0",
86
+ "lint:fix": "eslint . --ext ts,tsx --fix",
87
+ "format": "prettier --write \"src/**/*.{ts,tsx,css}\"",
88
+ "storybook": "storybook dev -p 6006",
89
+ "build-storybook": "storybook build"
90
+ },
91
+ "peerDependencies": {
92
+ "react": ">=18.0.0",
93
+ "react-dom": ">=18.0.0"
94
+ },
95
+ "dependencies": {
96
+ "@dnd-kit/core": "^6.3.1",
97
+ "@dnd-kit/modifiers": "^9.0.0",
98
+ "@dnd-kit/sortable": "^10.0.0",
99
+ "@dnd-kit/utilities": "^3.2.2",
100
+ "@radix-ui/react-accordion": "^1.2.0",
101
+ "@radix-ui/react-alert-dialog": "^1.1.1",
102
+ "@radix-ui/react-avatar": "^1.1.0",
103
+ "@radix-ui/react-checkbox": "^1.1.1",
104
+ "@radix-ui/react-collapsible": "^1.1.0",
105
+ "@radix-ui/react-dialog": "^1.1.1",
106
+ "@radix-ui/react-dropdown-menu": "^2.1.1",
107
+ "@radix-ui/react-label": "^2.1.0",
108
+ "@radix-ui/react-popover": "^1.1.1",
109
+ "@radix-ui/react-progress": "^1.1.0",
110
+ "@radix-ui/react-radio-group": "^1.2.0",
111
+ "@radix-ui/react-scroll-area": "^1.1.0",
112
+ "@radix-ui/react-select": "^2.1.1",
113
+ "@radix-ui/react-separator": "^1.1.0",
114
+ "@radix-ui/react-slider": "^1.2.0",
115
+ "@radix-ui/react-slot": "^1.1.0",
116
+ "@radix-ui/react-switch": "^1.1.0",
117
+ "@radix-ui/react-tabs": "^1.1.0",
118
+ "@radix-ui/react-toast": "^1.2.1",
119
+ "@radix-ui/react-tooltip": "^1.1.2",
120
+ "@tanstack/react-table": "^8.20.5",
121
+ "class-variance-authority": "^0.7.0",
122
+ "clsx": "^2.1.1",
123
+ "cmdk": "^1.0.0",
124
+ "date-fns": "^3.6.0",
125
+ "lucide-react": "^0.441.0",
126
+ "react-day-picker": "^8.10.1",
127
+ "react-hook-form": "^7.53.0",
128
+ "recharts": "^2.12.7",
129
+ "tailwind-merge": "^2.5.2",
130
+ "tailwindcss-animate": "^1.0.7"
131
+ },
132
+ "devDependencies": {
133
+ "@storybook/addon-essentials": "^8.3.0",
134
+ "@storybook/addon-interactions": "^8.3.0",
135
+ "@storybook/addon-links": "^8.3.0",
136
+ "@storybook/addon-themes": "^8.3.0",
137
+ "@storybook/blocks": "^8.3.0",
138
+ "@storybook/react": "^8.3.0",
139
+ "@storybook/react-vite": "^8.3.0",
140
+ "@types/node": "^22.5.4",
141
+ "@types/react": "^18.3.5",
142
+ "@types/react-dom": "^18.3.0",
143
+ "@typescript-eslint/eslint-plugin": "^7.18.0",
144
+ "@typescript-eslint/parser": "^7.18.0",
145
+ "@vitejs/plugin-react": "^4.3.1",
146
+ "autoprefixer": "^10.4.20",
147
+ "eslint": "^8.57.0",
148
+ "eslint-config-prettier": "^9.1.0",
149
+ "eslint-plugin-react": "^7.35.2",
150
+ "eslint-plugin-react-hooks": "^4.6.2",
151
+ "eslint-plugin-storybook": "^0.8.0",
152
+ "postcss": "^8.4.45",
153
+ "prettier": "^3.3.3",
154
+ "react": "^18.3.1",
155
+ "react-dom": "^18.3.1",
156
+ "storybook": "^8.3.0",
157
+ "tailwindcss": "^3.4.10",
158
+ "typescript": "^5.5.4",
159
+ "vite": "^7.3.1"
160
+ },
161
+ "keywords": [
162
+ "react",
163
+ "ui",
164
+ "components",
165
+ "tailwindcss",
166
+ "shadcn",
167
+ "radix-ui",
168
+ "crm",
169
+ "erp",
170
+ "dashboard",
171
+ "senitix"
172
+ ],
173
+ "author": "Senitix",
174
+ "license": "MIT",
175
+ "repository": {
176
+ "type": "git",
177
+ "url": "https://github.com/senitix/ui"
178
+ }
179
+ }