@smart-coder-labs/apple-design-system 1.0.0 → 1.0.2

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 (649) hide show
  1. package/README.md +13 -13
  2. package/dist/cli/commands/add.js +25 -18
  3. package/dist/cli/commands/add.js.map +1 -1
  4. package/dist/cli/commands/init.js +27 -20
  5. package/dist/cli/commands/init.js.map +1 -1
  6. package/dist/cli/index.js +8 -6
  7. package/dist/cli/index.js.map +1 -1
  8. package/dist/cli/utils/registry.js +8 -3
  9. package/dist/cli/utils/registry.js.map +1 -1
  10. package/dist/index.d.ts +0 -240
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +7 -136
  13. package/dist/index.js.map +1 -1
  14. package/dist/lib/utils.js +7 -4
  15. package/dist/lib/utils.js.map +1 -1
  16. package/dist/scripts/build-registry.js +13 -8
  17. package/dist/scripts/build-registry.js.map +1 -1
  18. package/dist/tokens.js +4 -1
  19. package/dist/tokens.js.map +1 -1
  20. package/dist/tsconfig.build.tsbuildinfo +1 -1
  21. package/package.json +4 -1
  22. package/dist/components/AIThinkingIndicator.d.ts +0 -10
  23. package/dist/components/AIThinkingIndicator.d.ts.map +0 -1
  24. package/dist/components/AIThinkingIndicator.js +0 -60
  25. package/dist/components/AIThinkingIndicator.js.map +0 -1
  26. package/dist/components/Accordion.d.ts +0 -27
  27. package/dist/components/Accordion.d.ts.map +0 -1
  28. package/dist/components/Accordion.js +0 -123
  29. package/dist/components/Accordion.js.map +0 -1
  30. package/dist/components/ActivityFeed.d.ts +0 -26
  31. package/dist/components/ActivityFeed.d.ts.map +0 -1
  32. package/dist/components/ActivityFeed.js +0 -55
  33. package/dist/components/ActivityFeed.js.map +0 -1
  34. package/dist/components/ActivityMonitor.d.ts +0 -38
  35. package/dist/components/ActivityMonitor.d.ts.map +0 -1
  36. package/dist/components/ActivityMonitor.js +0 -164
  37. package/dist/components/ActivityMonitor.js.map +0 -1
  38. package/dist/components/AddressSelector.d.ts +0 -23
  39. package/dist/components/AddressSelector.d.ts.map +0 -1
  40. package/dist/components/AddressSelector.js +0 -145
  41. package/dist/components/AddressSelector.js.map +0 -1
  42. package/dist/components/AgendaView.d.ts +0 -11
  43. package/dist/components/AgendaView.d.ts.map +0 -1
  44. package/dist/components/AgendaView.js +0 -47
  45. package/dist/components/AgendaView.js.map +0 -1
  46. package/dist/components/Alert.d.ts +0 -9
  47. package/dist/components/Alert.d.ts.map +0 -1
  48. package/dist/components/Alert.js +0 -38
  49. package/dist/components/Alert.js.map +0 -1
  50. package/dist/components/AudioPlayer.d.ts +0 -11
  51. package/dist/components/AudioPlayer.d.ts.map +0 -1
  52. package/dist/components/AudioPlayer.js +0 -116
  53. package/dist/components/AudioPlayer.js.map +0 -1
  54. package/dist/components/Avatar.d.ts +0 -17
  55. package/dist/components/Avatar.d.ts.map +0 -1
  56. package/dist/components/Avatar.js +0 -74
  57. package/dist/components/Avatar.js.map +0 -1
  58. package/dist/components/AvatarGroup.d.ts +0 -15
  59. package/dist/components/AvatarGroup.d.ts.map +0 -1
  60. package/dist/components/AvatarGroup.js +0 -28
  61. package/dist/components/AvatarGroup.js.map +0 -1
  62. package/dist/components/Badge.d.ts +0 -21
  63. package/dist/components/Badge.d.ts.map +0 -1
  64. package/dist/components/Badge.js +0 -103
  65. package/dist/components/Badge.js.map +0 -1
  66. package/dist/components/BarcodeGenerator.d.ts +0 -18
  67. package/dist/components/BarcodeGenerator.d.ts.map +0 -1
  68. package/dist/components/BarcodeGenerator.js +0 -64
  69. package/dist/components/BarcodeGenerator.js.map +0 -1
  70. package/dist/components/Blockquote.d.ts +0 -9
  71. package/dist/components/Blockquote.d.ts.map +0 -1
  72. package/dist/components/Blockquote.js +0 -8
  73. package/dist/components/Blockquote.js.map +0 -1
  74. package/dist/components/BottomNavigation.d.ts +0 -21
  75. package/dist/components/BottomNavigation.d.ts.map +0 -1
  76. package/dist/components/BottomNavigation.js +0 -77
  77. package/dist/components/BottomNavigation.js.map +0 -1
  78. package/dist/components/Breadcrumb.d.ts +0 -20
  79. package/dist/components/Breadcrumb.d.ts.map +0 -1
  80. package/dist/components/Breadcrumb.js +0 -24
  81. package/dist/components/Breadcrumb.js.map +0 -1
  82. package/dist/components/BreadcrumbTabsHybrid.d.ts +0 -25
  83. package/dist/components/BreadcrumbTabsHybrid.d.ts.map +0 -1
  84. package/dist/components/BreadcrumbTabsHybrid.js +0 -58
  85. package/dist/components/BreadcrumbTabsHybrid.js.map +0 -1
  86. package/dist/components/Button.d.ts +0 -14
  87. package/dist/components/Button.d.ts.map +0 -1
  88. package/dist/components/Button.js +0 -91
  89. package/dist/components/Button.js.map +0 -1
  90. package/dist/components/ButtonWithDropdown.d.ts +0 -19
  91. package/dist/components/ButtonWithDropdown.d.ts.map +0 -1
  92. package/dist/components/ButtonWithDropdown.js +0 -33
  93. package/dist/components/ButtonWithDropdown.js.map +0 -1
  94. package/dist/components/Calendar.d.ts +0 -28
  95. package/dist/components/Calendar.d.ts.map +0 -1
  96. package/dist/components/Calendar.js +0 -365
  97. package/dist/components/Calendar.js.map +0 -1
  98. package/dist/components/Callout.d.ts +0 -11
  99. package/dist/components/Callout.d.ts.map +0 -1
  100. package/dist/components/Callout.js +0 -35
  101. package/dist/components/Callout.js.map +0 -1
  102. package/dist/components/Caption.d.ts +0 -6
  103. package/dist/components/Caption.d.ts.map +0 -1
  104. package/dist/components/Caption.js +0 -7
  105. package/dist/components/Caption.js.map +0 -1
  106. package/dist/components/Card.d.ts +0 -30
  107. package/dist/components/Card.d.ts.map +0 -1
  108. package/dist/components/Card.js +0 -72
  109. package/dist/components/Card.js.map +0 -1
  110. package/dist/components/CartPreview.d.ts +0 -28
  111. package/dist/components/CartPreview.d.ts.map +0 -1
  112. package/dist/components/CartPreview.js +0 -80
  113. package/dist/components/CartPreview.js.map +0 -1
  114. package/dist/components/Chart.d.ts +0 -19
  115. package/dist/components/Chart.d.ts.map +0 -1
  116. package/dist/components/Chart.js +0 -46
  117. package/dist/components/Chart.js.map +0 -1
  118. package/dist/components/ChatBubble.d.ts +0 -19
  119. package/dist/components/ChatBubble.d.ts.map +0 -1
  120. package/dist/components/ChatBubble.js +0 -27
  121. package/dist/components/ChatBubble.js.map +0 -1
  122. package/dist/components/ChatInput.d.ts +0 -22
  123. package/dist/components/ChatInput.d.ts.map +0 -1
  124. package/dist/components/ChatInput.js +0 -115
  125. package/dist/components/ChatInput.js.map +0 -1
  126. package/dist/components/Checkbox.d.ts +0 -10
  127. package/dist/components/Checkbox.d.ts.map +0 -1
  128. package/dist/components/Checkbox.js +0 -35
  129. package/dist/components/Checkbox.js.map +0 -1
  130. package/dist/components/Chip.d.ts +0 -14
  131. package/dist/components/Chip.d.ts.map +0 -1
  132. package/dist/components/Chip.js +0 -43
  133. package/dist/components/Chip.js.map +0 -1
  134. package/dist/components/CodeBlock.d.ts +0 -9
  135. package/dist/components/CodeBlock.d.ts.map +0 -1
  136. package/dist/components/CodeBlock.js +0 -16
  137. package/dist/components/CodeBlock.js.map +0 -1
  138. package/dist/components/Collapsible.d.ts +0 -19
  139. package/dist/components/Collapsible.d.ts.map +0 -1
  140. package/dist/components/Collapsible.js +0 -42
  141. package/dist/components/Collapsible.js.map +0 -1
  142. package/dist/components/Combobox.d.ts +0 -17
  143. package/dist/components/Combobox.d.ts.map +0 -1
  144. package/dist/components/Combobox.js +0 -114
  145. package/dist/components/Combobox.js.map +0 -1
  146. package/dist/components/CommandMenu.d.ts +0 -36
  147. package/dist/components/CommandMenu.d.ts.map +0 -1
  148. package/dist/components/CommandMenu.js +0 -102
  149. package/dist/components/CommandMenu.js.map +0 -1
  150. package/dist/components/CommentThread.d.ts +0 -28
  151. package/dist/components/CommentThread.d.ts.map +0 -1
  152. package/dist/components/CommentThread.js +0 -66
  153. package/dist/components/CommentThread.js.map +0 -1
  154. package/dist/components/ConfirmDialog.d.ts +0 -27
  155. package/dist/components/ConfirmDialog.d.ts.map +0 -1
  156. package/dist/components/ConfirmDialog.js +0 -62
  157. package/dist/components/ConfirmDialog.js.map +0 -1
  158. package/dist/components/ContextMenu.d.ts +0 -85
  159. package/dist/components/ContextMenu.d.ts.map +0 -1
  160. package/dist/components/ContextMenu.js +0 -191
  161. package/dist/components/ContextMenu.js.map +0 -1
  162. package/dist/components/ControlCenterToggles.d.ts +0 -18
  163. package/dist/components/ControlCenterToggles.d.ts.map +0 -1
  164. package/dist/components/ControlCenterToggles.js +0 -14
  165. package/dist/components/ControlCenterToggles.js.map +0 -1
  166. package/dist/components/Counters.d.ts +0 -16
  167. package/dist/components/Counters.d.ts.map +0 -1
  168. package/dist/components/Counters.js +0 -9
  169. package/dist/components/Counters.js.map +0 -1
  170. package/dist/components/CountersListWithChart.d.ts +0 -15
  171. package/dist/components/CountersListWithChart.d.ts.map +0 -1
  172. package/dist/components/CountersListWithChart.js +0 -22
  173. package/dist/components/CountersListWithChart.js.map +0 -1
  174. package/dist/components/DataGrid.d.ts +0 -38
  175. package/dist/components/DataGrid.d.ts.map +0 -1
  176. package/dist/components/DataGrid.js +0 -271
  177. package/dist/components/DataGrid.js.map +0 -1
  178. package/dist/components/DatePicker.d.ts +0 -17
  179. package/dist/components/DatePicker.d.ts.map +0 -1
  180. package/dist/components/DatePicker.js +0 -248
  181. package/dist/components/DatePicker.js.map +0 -1
  182. package/dist/components/DateRangePicker.d.ts +0 -21
  183. package/dist/components/DateRangePicker.d.ts.map +0 -1
  184. package/dist/components/DateRangePicker.js +0 -213
  185. package/dist/components/DateRangePicker.js.map +0 -1
  186. package/dist/components/DefinitionList.d.ts +0 -21
  187. package/dist/components/DefinitionList.d.ts.map +0 -1
  188. package/dist/components/DefinitionList.js +0 -44
  189. package/dist/components/DefinitionList.js.map +0 -1
  190. package/dist/components/DescriptionBlock.d.ts +0 -36
  191. package/dist/components/DescriptionBlock.d.ts.map +0 -1
  192. package/dist/components/DescriptionBlock.js +0 -27
  193. package/dist/components/DescriptionBlock.js.map +0 -1
  194. package/dist/components/DeviceList.d.ts +0 -24
  195. package/dist/components/DeviceList.d.ts.map +0 -1
  196. package/dist/components/DeviceList.js +0 -46
  197. package/dist/components/DeviceList.js.map +0 -1
  198. package/dist/components/DiffViewer.d.ts +0 -13
  199. package/dist/components/DiffViewer.d.ts.map +0 -1
  200. package/dist/components/DiffViewer.js +0 -93
  201. package/dist/components/DiffViewer.js.map +0 -1
  202. package/dist/components/Divider.d.ts +0 -28
  203. package/dist/components/Divider.d.ts.map +0 -1
  204. package/dist/components/Divider.js +0 -16
  205. package/dist/components/Divider.js.map +0 -1
  206. package/dist/components/DockBar.d.ts +0 -29
  207. package/dist/components/DockBar.d.ts.map +0 -1
  208. package/dist/components/DockBar.js +0 -64
  209. package/dist/components/DockBar.js.map +0 -1
  210. package/dist/components/EmptyState.d.ts +0 -25
  211. package/dist/components/EmptyState.d.ts.map +0 -1
  212. package/dist/components/EmptyState.js +0 -20
  213. package/dist/components/EmptyState.js.map +0 -1
  214. package/dist/components/ErrorBoundary.d.ts +0 -24
  215. package/dist/components/ErrorBoundary.d.ts.map +0 -1
  216. package/dist/components/ErrorBoundary.js +0 -55
  217. package/dist/components/ErrorBoundary.js.map +0 -1
  218. package/dist/components/FAB.d.ts +0 -15
  219. package/dist/components/FAB.d.ts.map +0 -1
  220. package/dist/components/FAB.js +0 -46
  221. package/dist/components/FAB.js.map +0 -1
  222. package/dist/components/FABGroup.d.ts +0 -15
  223. package/dist/components/FABGroup.d.ts.map +0 -1
  224. package/dist/components/FABGroup.js +0 -47
  225. package/dist/components/FABGroup.js.map +0 -1
  226. package/dist/components/FileIntelligencePreview.d.ts +0 -25
  227. package/dist/components/FileIntelligencePreview.d.ts.map +0 -1
  228. package/dist/components/FileIntelligencePreview.js +0 -66
  229. package/dist/components/FileIntelligencePreview.js.map +0 -1
  230. package/dist/components/FileUpload.d.ts +0 -13
  231. package/dist/components/FileUpload.d.ts.map +0 -1
  232. package/dist/components/FileUpload.js +0 -107
  233. package/dist/components/FileUpload.js.map +0 -1
  234. package/dist/components/FilterBar.d.ts +0 -35
  235. package/dist/components/FilterBar.d.ts.map +0 -1
  236. package/dist/components/FilterBar.js +0 -79
  237. package/dist/components/FilterBar.js.map +0 -1
  238. package/dist/components/FloatingToolbar.d.ts +0 -24
  239. package/dist/components/FloatingToolbar.d.ts.map +0 -1
  240. package/dist/components/FloatingToolbar.js +0 -180
  241. package/dist/components/FloatingToolbar.js.map +0 -1
  242. package/dist/components/Footer.d.ts +0 -32
  243. package/dist/components/Footer.d.ts.map +0 -1
  244. package/dist/components/Footer.js +0 -31
  245. package/dist/components/Footer.js.map +0 -1
  246. package/dist/components/Gallery.d.ts +0 -11
  247. package/dist/components/Gallery.d.ts.map +0 -1
  248. package/dist/components/Gallery.js +0 -32
  249. package/dist/components/Gallery.js.map +0 -1
  250. package/dist/components/GestureCard.d.ts +0 -12
  251. package/dist/components/GestureCard.d.ts.map +0 -1
  252. package/dist/components/GestureCard.js +0 -58
  253. package/dist/components/GestureCard.js.map +0 -1
  254. package/dist/components/GridSystem.d.ts +0 -72
  255. package/dist/components/GridSystem.d.ts.map +0 -1
  256. package/dist/components/GridSystem.js +0 -65
  257. package/dist/components/GridSystem.js.map +0 -1
  258. package/dist/components/HamburgerMenuIcon.d.ts +0 -24
  259. package/dist/components/HamburgerMenuIcon.d.ts.map +0 -1
  260. package/dist/components/HamburgerMenuIcon.js +0 -44
  261. package/dist/components/HamburgerMenuIcon.js.map +0 -1
  262. package/dist/components/HapticButton.d.ts +0 -23
  263. package/dist/components/HapticButton.d.ts.map +0 -1
  264. package/dist/components/HapticButton.js +0 -104
  265. package/dist/components/HapticButton.js.map +0 -1
  266. package/dist/components/Heading.d.ts +0 -6
  267. package/dist/components/Heading.d.ts.map +0 -1
  268. package/dist/components/Heading.js +0 -7
  269. package/dist/components/Heading.js.map +0 -1
  270. package/dist/components/IconButton.d.ts +0 -14
  271. package/dist/components/IconButton.d.ts.map +0 -1
  272. package/dist/components/IconButton.js +0 -39
  273. package/dist/components/IconButton.js.map +0 -1
  274. package/dist/components/ImageCarousel.d.ts +0 -18
  275. package/dist/components/ImageCarousel.d.ts.map +0 -1
  276. package/dist/components/ImageCarousel.js +0 -74
  277. package/dist/components/ImageCarousel.js.map +0 -1
  278. package/dist/components/ImageCropper.d.ts +0 -10
  279. package/dist/components/ImageCropper.d.ts.map +0 -1
  280. package/dist/components/ImageCropper.js +0 -138
  281. package/dist/components/ImageCropper.js.map +0 -1
  282. package/dist/components/Input.d.ts +0 -18
  283. package/dist/components/Input.d.ts.map +0 -1
  284. package/dist/components/Input.js +0 -117
  285. package/dist/components/Input.js.map +0 -1
  286. package/dist/components/InspectorPanel.d.ts +0 -18
  287. package/dist/components/InspectorPanel.d.ts.map +0 -1
  288. package/dist/components/InspectorPanel.js +0 -33
  289. package/dist/components/InspectorPanel.js.map +0 -1
  290. package/dist/components/InvoicePreview.d.ts +0 -41
  291. package/dist/components/InvoicePreview.d.ts.map +0 -1
  292. package/dist/components/InvoicePreview.js +0 -106
  293. package/dist/components/InvoicePreview.js.map +0 -1
  294. package/dist/components/JsonViewer.d.ts +0 -17
  295. package/dist/components/JsonViewer.d.ts.map +0 -1
  296. package/dist/components/JsonViewer.js +0 -58
  297. package/dist/components/JsonViewer.js.map +0 -1
  298. package/dist/components/KPIBlock.d.ts +0 -23
  299. package/dist/components/KPIBlock.d.ts.map +0 -1
  300. package/dist/components/KPIBlock.js +0 -82
  301. package/dist/components/KPIBlock.js.map +0 -1
  302. package/dist/components/KanbanBoard.d.ts +0 -34
  303. package/dist/components/KanbanBoard.d.ts.map +0 -1
  304. package/dist/components/KanbanBoard.js +0 -296
  305. package/dist/components/KanbanBoard.js.map +0 -1
  306. package/dist/components/KeyValueInfo.d.ts +0 -28
  307. package/dist/components/KeyValueInfo.d.ts.map +0 -1
  308. package/dist/components/KeyValueInfo.js +0 -80
  309. package/dist/components/KeyValueInfo.js.map +0 -1
  310. package/dist/components/Label.d.ts +0 -8
  311. package/dist/components/Label.d.ts.map +0 -1
  312. package/dist/components/Label.js +0 -9
  313. package/dist/components/Label.js.map +0 -1
  314. package/dist/components/Layout.d.ts +0 -16
  315. package/dist/components/Layout.d.ts.map +0 -1
  316. package/dist/components/Layout.js +0 -26
  317. package/dist/components/Layout.js.map +0 -1
  318. package/dist/components/Lightbox.d.ts +0 -18
  319. package/dist/components/Lightbox.d.ts.map +0 -1
  320. package/dist/components/Lightbox.js +0 -60
  321. package/dist/components/Lightbox.js.map +0 -1
  322. package/dist/components/LoadingOverlay.d.ts +0 -32
  323. package/dist/components/LoadingOverlay.d.ts.map +0 -1
  324. package/dist/components/LoadingOverlay.js +0 -10
  325. package/dist/components/LoadingOverlay.js.map +0 -1
  326. package/dist/components/LoginForm.d.ts +0 -14
  327. package/dist/components/LoginForm.d.ts.map +0 -1
  328. package/dist/components/LoginForm.js +0 -36
  329. package/dist/components/LoginForm.js.map +0 -1
  330. package/dist/components/MaintenanceMode.d.ts +0 -41
  331. package/dist/components/MaintenanceMode.d.ts.map +0 -1
  332. package/dist/components/MaintenanceMode.js +0 -21
  333. package/dist/components/MaintenanceMode.js.map +0 -1
  334. package/dist/components/MarkdownEditor.d.ts +0 -14
  335. package/dist/components/MarkdownEditor.d.ts.map +0 -1
  336. package/dist/components/MarkdownEditor.js +0 -55
  337. package/dist/components/MarkdownEditor.js.map +0 -1
  338. package/dist/components/MasonryLayout.d.ts +0 -31
  339. package/dist/components/MasonryLayout.d.ts.map +0 -1
  340. package/dist/components/MasonryLayout.js +0 -17
  341. package/dist/components/MasonryLayout.js.map +0 -1
  342. package/dist/components/MenuBar.d.ts +0 -34
  343. package/dist/components/MenuBar.d.ts.map +0 -1
  344. package/dist/components/MenuBar.js +0 -66
  345. package/dist/components/MenuBar.js.map +0 -1
  346. package/dist/components/MessageReactions.d.ts +0 -22
  347. package/dist/components/MessageReactions.d.ts.map +0 -1
  348. package/dist/components/MessageReactions.js +0 -37
  349. package/dist/components/MessageReactions.js.map +0 -1
  350. package/dist/components/Modal.d.ts +0 -37
  351. package/dist/components/Modal.d.ts.map +0 -1
  352. package/dist/components/Modal.js +0 -93
  353. package/dist/components/Modal.js.map +0 -1
  354. package/dist/components/ModalStackManager.d.ts +0 -34
  355. package/dist/components/ModalStackManager.d.ts.map +0 -1
  356. package/dist/components/ModalStackManager.js +0 -52
  357. package/dist/components/ModalStackManager.js.map +0 -1
  358. package/dist/components/MultiFileUpload.d.ts +0 -15
  359. package/dist/components/MultiFileUpload.d.ts.map +0 -1
  360. package/dist/components/MultiFileUpload.js +0 -138
  361. package/dist/components/MultiFileUpload.js.map +0 -1
  362. package/dist/components/NavBar.d.ts +0 -30
  363. package/dist/components/NavBar.d.ts.map +0 -1
  364. package/dist/components/NavBar.js +0 -80
  365. package/dist/components/NavBar.js.map +0 -1
  366. package/dist/components/NavigationDrawer.d.ts +0 -48
  367. package/dist/components/NavigationDrawer.d.ts.map +0 -1
  368. package/dist/components/NavigationDrawer.js +0 -95
  369. package/dist/components/NavigationDrawer.js.map +0 -1
  370. package/dist/components/NotificationCenterPanel.d.ts +0 -25
  371. package/dist/components/NotificationCenterPanel.d.ts.map +0 -1
  372. package/dist/components/NotificationCenterPanel.js +0 -50
  373. package/dist/components/NotificationCenterPanel.js.map +0 -1
  374. package/dist/components/OTPInput.d.ts +0 -15
  375. package/dist/components/OTPInput.d.ts.map +0 -1
  376. package/dist/components/OTPInput.js +0 -144
  377. package/dist/components/OTPInput.js.map +0 -1
  378. package/dist/components/OfflineState.d.ts +0 -36
  379. package/dist/components/OfflineState.d.ts.map +0 -1
  380. package/dist/components/OfflineState.js +0 -21
  381. package/dist/components/OfflineState.js.map +0 -1
  382. package/dist/components/OrderSummary.d.ts +0 -19
  383. package/dist/components/OrderSummary.d.ts.map +0 -1
  384. package/dist/components/OrderSummary.js +0 -8
  385. package/dist/components/OrderSummary.js.map +0 -1
  386. package/dist/components/Pagination.d.ts +0 -28
  387. package/dist/components/Pagination.d.ts.map +0 -1
  388. package/dist/components/Pagination.js +0 -119
  389. package/dist/components/Pagination.js.map +0 -1
  390. package/dist/components/Panel.d.ts +0 -14
  391. package/dist/components/Panel.d.ts.map +0 -1
  392. package/dist/components/Panel.js +0 -27
  393. package/dist/components/Panel.js.map +0 -1
  394. package/dist/components/Paragraph.d.ts +0 -6
  395. package/dist/components/Paragraph.d.ts.map +0 -1
  396. package/dist/components/Paragraph.js +0 -7
  397. package/dist/components/Paragraph.js.map +0 -1
  398. package/dist/components/PasswordInput.d.ts +0 -16
  399. package/dist/components/PasswordInput.d.ts.map +0 -1
  400. package/dist/components/PasswordInput.js +0 -66
  401. package/dist/components/PasswordInput.js.map +0 -1
  402. package/dist/components/PaymentMethodSelector.d.ts +0 -22
  403. package/dist/components/PaymentMethodSelector.d.ts.map +0 -1
  404. package/dist/components/PaymentMethodSelector.js +0 -24
  405. package/dist/components/PaymentMethodSelector.js.map +0 -1
  406. package/dist/components/PermissionsMatrix.d.ts +0 -23
  407. package/dist/components/PermissionsMatrix.d.ts.map +0 -1
  408. package/dist/components/PermissionsMatrix.js +0 -52
  409. package/dist/components/PermissionsMatrix.js.map +0 -1
  410. package/dist/components/Popover.d.ts +0 -19
  411. package/dist/components/Popover.d.ts.map +0 -1
  412. package/dist/components/Popover.js +0 -159
  413. package/dist/components/Popover.js.map +0 -1
  414. package/dist/components/PriceDisplay.d.ts +0 -18
  415. package/dist/components/PriceDisplay.d.ts.map +0 -1
  416. package/dist/components/PriceDisplay.js +0 -37
  417. package/dist/components/PriceDisplay.js.map +0 -1
  418. package/dist/components/ProductCard.d.ts +0 -30
  419. package/dist/components/ProductCard.d.ts.map +0 -1
  420. package/dist/components/ProductCard.js +0 -73
  421. package/dist/components/ProductCard.js.map +0 -1
  422. package/dist/components/Progress.d.ts +0 -9
  423. package/dist/components/Progress.d.ts.map +0 -1
  424. package/dist/components/Progress.js +0 -13
  425. package/dist/components/Progress.js.map +0 -1
  426. package/dist/components/PromptSuggestionChips.d.ts +0 -15
  427. package/dist/components/PromptSuggestionChips.d.ts.map +0 -1
  428. package/dist/components/PromptSuggestionChips.js +0 -17
  429. package/dist/components/PromptSuggestionChips.js.map +0 -1
  430. package/dist/components/PropertyList.d.ts +0 -29
  431. package/dist/components/PropertyList.d.ts.map +0 -1
  432. package/dist/components/PropertyList.js +0 -90
  433. package/dist/components/PropertyList.js.map +0 -1
  434. package/dist/components/QRCodeGenerator.d.ts +0 -17
  435. package/dist/components/QRCodeGenerator.d.ts.map +0 -1
  436. package/dist/components/QRCodeGenerator.js +0 -56
  437. package/dist/components/QRCodeGenerator.js.map +0 -1
  438. package/dist/components/QuantitySelector.d.ts +0 -16
  439. package/dist/components/QuantitySelector.d.ts.map +0 -1
  440. package/dist/components/QuantitySelector.js +0 -55
  441. package/dist/components/QuantitySelector.js.map +0 -1
  442. package/dist/components/QueryBuilder.d.ts +0 -30
  443. package/dist/components/QueryBuilder.d.ts.map +0 -1
  444. package/dist/components/QueryBuilder.js +0 -227
  445. package/dist/components/QueryBuilder.js.map +0 -1
  446. package/dist/components/RadioGroup.d.ts +0 -16
  447. package/dist/components/RadioGroup.d.ts.map +0 -1
  448. package/dist/components/RadioGroup.js +0 -36
  449. package/dist/components/RadioGroup.js.map +0 -1
  450. package/dist/components/RangeSlider.d.ts +0 -18
  451. package/dist/components/RangeSlider.d.ts.map +0 -1
  452. package/dist/components/RangeSlider.js +0 -121
  453. package/dist/components/RangeSlider.js.map +0 -1
  454. package/dist/components/RatingInput.d.ts +0 -15
  455. package/dist/components/RatingInput.d.ts.map +0 -1
  456. package/dist/components/RatingInput.js +0 -44
  457. package/dist/components/RatingInput.js.map +0 -1
  458. package/dist/components/RecoveryCodeDisplay.d.ts +0 -12
  459. package/dist/components/RecoveryCodeDisplay.d.ts.map +0 -1
  460. package/dist/components/RecoveryCodeDisplay.js +0 -48
  461. package/dist/components/RecoveryCodeDisplay.js.map +0 -1
  462. package/dist/components/ResizablePanel.d.ts +0 -18
  463. package/dist/components/ResizablePanel.d.ts.map +0 -1
  464. package/dist/components/ResizablePanel.js +0 -64
  465. package/dist/components/ResizablePanel.js.map +0 -1
  466. package/dist/components/Reviews.d.ts +0 -26
  467. package/dist/components/Reviews.d.ts.map +0 -1
  468. package/dist/components/Reviews.js +0 -30
  469. package/dist/components/Reviews.js.map +0 -1
  470. package/dist/components/RichTextEditor.d.ts +0 -14
  471. package/dist/components/RichTextEditor.d.ts.map +0 -1
  472. package/dist/components/RichTextEditor.js +0 -38
  473. package/dist/components/RichTextEditor.js.map +0 -1
  474. package/dist/components/RotarySelector.d.ts +0 -20
  475. package/dist/components/RotarySelector.d.ts.map +0 -1
  476. package/dist/components/RotarySelector.js +0 -99
  477. package/dist/components/RotarySelector.js.map +0 -1
  478. package/dist/components/SchedulerTimeline.d.ts +0 -31
  479. package/dist/components/SchedulerTimeline.d.ts.map +0 -1
  480. package/dist/components/SchedulerTimeline.js +0 -210
  481. package/dist/components/SchedulerTimeline.js.map +0 -1
  482. package/dist/components/ScrollArea.d.ts +0 -11
  483. package/dist/components/ScrollArea.d.ts.map +0 -1
  484. package/dist/components/ScrollArea.js +0 -132
  485. package/dist/components/ScrollArea.js.map +0 -1
  486. package/dist/components/SearchInput.d.ts +0 -13
  487. package/dist/components/SearchInput.d.ts.map +0 -1
  488. package/dist/components/SearchInput.js +0 -34
  489. package/dist/components/SearchInput.js.map +0 -1
  490. package/dist/components/SectionHeader.d.ts +0 -27
  491. package/dist/components/SectionHeader.d.ts.map +0 -1
  492. package/dist/components/SectionHeader.js +0 -18
  493. package/dist/components/SectionHeader.js.map +0 -1
  494. package/dist/components/SecurityActivityLog.d.ts +0 -20
  495. package/dist/components/SecurityActivityLog.d.ts.map +0 -1
  496. package/dist/components/SecurityActivityLog.js +0 -56
  497. package/dist/components/SecurityActivityLog.js.map +0 -1
  498. package/dist/components/SegmentedInput.d.ts +0 -15
  499. package/dist/components/SegmentedInput.d.ts.map +0 -1
  500. package/dist/components/SegmentedInput.js +0 -134
  501. package/dist/components/SegmentedInput.js.map +0 -1
  502. package/dist/components/Select.d.ts +0 -57
  503. package/dist/components/Select.d.ts.map +0 -1
  504. package/dist/components/Select.js +0 -275
  505. package/dist/components/Select.js.map +0 -1
  506. package/dist/components/Sheet.d.ts +0 -35
  507. package/dist/components/Sheet.d.ts.map +0 -1
  508. package/dist/components/Sheet.js +0 -117
  509. package/dist/components/Sheet.js.map +0 -1
  510. package/dist/components/Sidebar.d.ts +0 -23
  511. package/dist/components/Sidebar.d.ts.map +0 -1
  512. package/dist/components/Sidebar.js +0 -21
  513. package/dist/components/Sidebar.js.map +0 -1
  514. package/dist/components/SignaturePad.d.ts +0 -19
  515. package/dist/components/SignaturePad.d.ts.map +0 -1
  516. package/dist/components/SignaturePad.js +0 -133
  517. package/dist/components/SignaturePad.js.map +0 -1
  518. package/dist/components/SignupForm.d.ts +0 -15
  519. package/dist/components/SignupForm.d.ts.map +0 -1
  520. package/dist/components/SignupForm.js +0 -50
  521. package/dist/components/SignupForm.js.map +0 -1
  522. package/dist/components/Skeleton.d.ts +0 -3
  523. package/dist/components/Skeleton.d.ts.map +0 -1
  524. package/dist/components/Skeleton.js +0 -13
  525. package/dist/components/Skeleton.js.map +0 -1
  526. package/dist/components/SlideToDelete.d.ts +0 -26
  527. package/dist/components/SlideToDelete.d.ts.map +0 -1
  528. package/dist/components/SlideToDelete.js +0 -88
  529. package/dist/components/SlideToDelete.js.map +0 -1
  530. package/dist/components/Slider.d.ts +0 -18
  531. package/dist/components/Slider.d.ts.map +0 -1
  532. package/dist/components/Slider.js +0 -99
  533. package/dist/components/Slider.js.map +0 -1
  534. package/dist/components/Snackbar.d.ts +0 -16
  535. package/dist/components/Snackbar.d.ts.map +0 -1
  536. package/dist/components/Snackbar.js +0 -39
  537. package/dist/components/Snackbar.js.map +0 -1
  538. package/dist/components/Spacer.d.ts +0 -21
  539. package/dist/components/Spacer.d.ts.map +0 -1
  540. package/dist/components/Spacer.js +0 -44
  541. package/dist/components/Spacer.js.map +0 -1
  542. package/dist/components/Sparkline.d.ts +0 -17
  543. package/dist/components/Sparkline.d.ts.map +0 -1
  544. package/dist/components/Sparkline.js +0 -41
  545. package/dist/components/Sparkline.js.map +0 -1
  546. package/dist/components/Spinner.d.ts +0 -8
  547. package/dist/components/Spinner.d.ts.map +0 -1
  548. package/dist/components/Spinner.js +0 -26
  549. package/dist/components/Spinner.js.map +0 -1
  550. package/dist/components/SplitButton.d.ts +0 -20
  551. package/dist/components/SplitButton.d.ts.map +0 -1
  552. package/dist/components/SplitButton.js +0 -48
  553. package/dist/components/SplitButton.js.map +0 -1
  554. package/dist/components/SplitView.d.ts +0 -40
  555. package/dist/components/SplitView.d.ts.map +0 -1
  556. package/dist/components/SplitView.js +0 -14
  557. package/dist/components/SplitView.js.map +0 -1
  558. package/dist/components/StatisticDisplay.d.ts +0 -48
  559. package/dist/components/StatisticDisplay.d.ts.map +0 -1
  560. package/dist/components/StatisticDisplay.js +0 -141
  561. package/dist/components/StatisticDisplay.js.map +0 -1
  562. package/dist/components/Stepper.d.ts +0 -24
  563. package/dist/components/Stepper.d.ts.map +0 -1
  564. package/dist/components/Stepper.js +0 -99
  565. package/dist/components/Stepper.js.map +0 -1
  566. package/dist/components/StickyContainer.d.ts +0 -32
  567. package/dist/components/StickyContainer.d.ts.map +0 -1
  568. package/dist/components/StickyContainer.js +0 -17
  569. package/dist/components/StickyContainer.js.map +0 -1
  570. package/dist/components/Switch.d.ts +0 -12
  571. package/dist/components/Switch.d.ts.map +0 -1
  572. package/dist/components/Switch.js +0 -46
  573. package/dist/components/Switch.js.map +0 -1
  574. package/dist/components/Table.d.ts +0 -22
  575. package/dist/components/Table.d.ts.map +0 -1
  576. package/dist/components/Table.js +0 -72
  577. package/dist/components/Table.js.map +0 -1
  578. package/dist/components/Tabs.d.ts +0 -29
  579. package/dist/components/Tabs.d.ts.map +0 -1
  580. package/dist/components/Tabs.js +0 -63
  581. package/dist/components/Tabs.js.map +0 -1
  582. package/dist/components/Tag.d.ts +0 -14
  583. package/dist/components/Tag.d.ts.map +0 -1
  584. package/dist/components/Tag.js +0 -44
  585. package/dist/components/Tag.js.map +0 -1
  586. package/dist/components/TagsInput.d.ts +0 -15
  587. package/dist/components/TagsInput.d.ts.map +0 -1
  588. package/dist/components/TagsInput.js +0 -54
  589. package/dist/components/TagsInput.js.map +0 -1
  590. package/dist/components/Text.d.ts +0 -21
  591. package/dist/components/Text.d.ts.map +0 -1
  592. package/dist/components/Text.js +0 -47
  593. package/dist/components/Text.js.map +0 -1
  594. package/dist/components/Textarea.d.ts +0 -6
  595. package/dist/components/Textarea.d.ts.map +0 -1
  596. package/dist/components/Textarea.js +0 -10
  597. package/dist/components/Textarea.js.map +0 -1
  598. package/dist/components/ThemeToggle.d.ts +0 -22
  599. package/dist/components/ThemeToggle.d.ts.map +0 -1
  600. package/dist/components/ThemeToggle.js +0 -81
  601. package/dist/components/ThemeToggle.js.map +0 -1
  602. package/dist/components/TimePicker.d.ts +0 -15
  603. package/dist/components/TimePicker.d.ts.map +0 -1
  604. package/dist/components/TimePicker.js +0 -148
  605. package/dist/components/TimePicker.js.map +0 -1
  606. package/dist/components/Timeline.d.ts +0 -21
  607. package/dist/components/Timeline.d.ts.map +0 -1
  608. package/dist/components/Timeline.js +0 -63
  609. package/dist/components/Timeline.js.map +0 -1
  610. package/dist/components/Title.d.ts +0 -17
  611. package/dist/components/Title.d.ts.map +0 -1
  612. package/dist/components/Title.js +0 -46
  613. package/dist/components/Title.js.map +0 -1
  614. package/dist/components/Toast.d.ts +0 -25
  615. package/dist/components/Toast.d.ts.map +0 -1
  616. package/dist/components/Toast.js +0 -96
  617. package/dist/components/Toast.js.map +0 -1
  618. package/dist/components/Tooltip.d.ts +0 -13
  619. package/dist/components/Tooltip.d.ts.map +0 -1
  620. package/dist/components/Tooltip.js +0 -20
  621. package/dist/components/Tooltip.js.map +0 -1
  622. package/dist/components/TopActionBar.d.ts +0 -60
  623. package/dist/components/TopActionBar.d.ts.map +0 -1
  624. package/dist/components/TopActionBar.js +0 -69
  625. package/dist/components/TopActionBar.js.map +0 -1
  626. package/dist/components/TreeView.d.ts +0 -29
  627. package/dist/components/TreeView.d.ts.map +0 -1
  628. package/dist/components/TreeView.js +0 -97
  629. package/dist/components/TreeView.js.map +0 -1
  630. package/dist/components/TwoFactorAuth.d.ts +0 -12
  631. package/dist/components/TwoFactorAuth.d.ts.map +0 -1
  632. package/dist/components/TwoFactorAuth.js +0 -48
  633. package/dist/components/TwoFactorAuth.js.map +0 -1
  634. package/dist/components/VideoPlayer.d.ts +0 -11
  635. package/dist/components/VideoPlayer.d.ts.map +0 -1
  636. package/dist/components/VideoPlayer.js +0 -132
  637. package/dist/components/VideoPlayer.js.map +0 -1
  638. package/dist/components/VoiceRecorder.d.ts +0 -11
  639. package/dist/components/VoiceRecorder.d.ts.map +0 -1
  640. package/dist/components/VoiceRecorder.js +0 -145
  641. package/dist/components/VoiceRecorder.js.map +0 -1
  642. package/dist/components/WindowControls.d.ts +0 -10
  643. package/dist/components/WindowControls.d.ts.map +0 -1
  644. package/dist/components/WindowControls.js +0 -18
  645. package/dist/components/WindowControls.js.map +0 -1
  646. package/dist/components/WindowFrame.d.ts +0 -11
  647. package/dist/components/WindowFrame.d.ts.map +0 -1
  648. package/dist/components/WindowFrame.js +0 -26
  649. package/dist/components/WindowFrame.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"Callout.d.ts","sourceRoot":"","sources":["../../components/Callout.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqB,MAAM,OAAO,CAAC;AAQ1C,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;AAElF,MAAM,WAAW,YAAa,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;IACtE,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;CAC1B;AAMD,eAAO,MAAM,OAAO,qFA+EnB,CAAC"}
@@ -1,35 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { forwardRef } from 'react';
3
- import { cn } from '../lib/utils';
4
- import { Info, AlertCircle, CheckCircle, AlertTriangle, X } from 'lucide-react';
5
- /* ========================================
6
- CALLOUT COMPONENT
7
- ======================================== */
8
- export const Callout = forwardRef(({ variant = 'info', title, icon, dismissible = false, onDismiss, className, children, ...props }, ref) => {
9
- const variants = {
10
- info: {
11
- container: "bg-status-info/10 border-status-info/20 text-status-info",
12
- icon: Info,
13
- },
14
- success: {
15
- container: "bg-status-success/10 border-status-success/20 text-status-success",
16
- icon: CheckCircle,
17
- },
18
- warning: {
19
- container: "bg-status-warning/10 border-status-warning/20 text-status-warning",
20
- icon: AlertTriangle,
21
- },
22
- error: {
23
- container: "bg-status-error/10 border-status-error/20 text-status-error",
24
- icon: AlertCircle,
25
- },
26
- neutral: {
27
- container: "bg-surface-secondary border-border-primary text-text-primary",
28
- icon: Info,
29
- },
30
- };
31
- const Icon = icon || variants[variant].icon;
32
- return (_jsxs("div", { ref: ref, className: cn("relative flex gap-3 p-4 rounded-xl border", variants[variant].container, className), ...props, children: [_jsx("div", { className: "flex-shrink-0 mt-0.5", children: _jsx(Icon, { className: "w-5 h-5" }) }), _jsxs("div", { className: "flex-1 min-w-0", children: [title && (_jsx("h4", { className: "font-semibold mb-1", children: title })), _jsx("div", { className: cn("text-sm", variant === 'neutral' ? "text-text-secondary" : ""), children: children })] }), dismissible && onDismiss && (_jsx("button", { onClick: onDismiss, className: "flex-shrink-0 p-1 rounded-lg hover:bg-black/10 transition-colors focus:outline-none", "aria-label": "Dismiss", children: _jsx(X, { className: "w-4 h-4" }) }))] }));
33
- });
34
- Callout.displayName = 'Callout';
35
- //# sourceMappingURL=Callout.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Callout.js","sourceRoot":"","sources":["../../components/Callout.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC,EAAE,MAAM,cAAc,CAAC;AAgBhF;;8CAE8C;AAE9C,MAAM,CAAC,MAAM,OAAO,GAAG,UAAU,CAC7B,CACI,EACI,OAAO,GAAG,MAAM,EAChB,KAAK,EACL,IAAI,EACJ,WAAW,GAAG,KAAK,EACnB,SAAS,EACT,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACX,EACD,GAAG,EACL,EAAE;IACA,MAAM,QAAQ,GAAG;QACb,IAAI,EAAE;YACF,SAAS,EAAE,0DAA0D;YACrE,IAAI,EAAE,IAAI;SACb;QACD,OAAO,EAAE;YACL,SAAS,EAAE,mEAAmE;YAC9E,IAAI,EAAE,WAAW;SACpB;QACD,OAAO,EAAE;YACL,SAAS,EAAE,mEAAmE;YAC9E,IAAI,EAAE,aAAa;SACtB;QACD,KAAK,EAAE;YACH,SAAS,EAAE,6DAA6D;YACxE,IAAI,EAAE,WAAW;SACpB;QACD,OAAO,EAAE;YACL,SAAS,EAAE,8DAA8D;YACzE,IAAI,EAAE,IAAI;SACb;KACJ,CAAC;IAEF,MAAM,IAAI,GAAG,IAAI,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC;IAE5C,OAAO,CACH,eACI,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,EAAE,CACT,2CAA2C,EAC3C,QAAQ,CAAC,OAAO,CAAC,CAAC,SAAS,EAC3B,SAAS,CACZ,KACG,KAAK,aAET,cAAK,SAAS,EAAC,sBAAsB,YACjC,KAAC,IAAI,IAAC,SAAS,EAAC,SAAS,GAAG,GAC1B,EAEN,eAAK,SAAS,EAAC,gBAAgB,aAC1B,KAAK,IAAI,CACN,aAAI,SAAS,EAAC,oBAAoB,YAC7B,KAAK,GACL,CACR,EACD,cAAK,SAAS,EAAE,EAAE,CACd,SAAS,EACT,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,CACrD,YACI,QAAQ,GACP,IACJ,EAEL,WAAW,IAAI,SAAS,IAAI,CACzB,iBACI,OAAO,EAAE,SAAS,EAClB,SAAS,EAAC,qFAAqF,gBACpF,SAAS,YAEpB,KAAC,CAAC,IAAC,SAAS,EAAC,SAAS,GAAG,GACpB,CACZ,IACC,CACT,CAAC;AACN,CAAC,CACJ,CAAC;AAEF,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC"}
@@ -1,6 +0,0 @@
1
- import React from 'react';
2
- import { TextProps } from './Text';
3
- export interface CaptionProps extends TextProps {
4
- }
5
- export declare const Caption: React.FC<CaptionProps>;
6
- //# sourceMappingURL=Caption.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Caption.d.ts","sourceRoot":"","sources":["../../components/Caption.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAQ,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEzC,MAAM,WAAW,YAAa,SAAQ,SAAS;CAAI;AAEnD,eAAO,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,YAAY,CAgB1C,CAAC"}
@@ -1,7 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { Text } from './Text';
3
- export const Caption = ({ children, className = '', ...props }) => {
4
- return (_jsx(Text, { as: "p", variant: "tiny", color: "tertiary", className: className, ...props, children: children }));
5
- };
6
- Caption.displayName = 'Caption';
7
- //# sourceMappingURL=Caption.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Caption.js","sourceRoot":"","sources":["../../components/Caption.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,IAAI,EAAa,MAAM,QAAQ,CAAC;AAIzC,MAAM,CAAC,MAAM,OAAO,GAA2B,CAAC,EAC5C,QAAQ,EACR,SAAS,GAAG,EAAE,EACd,GAAG,KAAK,EACX,EAAE,EAAE;IACD,OAAO,CACH,KAAC,IAAI,IACD,EAAE,EAAC,GAAG,EACN,OAAO,EAAC,MAAM,EACd,KAAK,EAAC,UAAU,EAChB,SAAS,EAAE,SAAS,KAChB,KAAK,YAER,QAAQ,GACN,CACV,CAAC;AACN,CAAC,CAAC;AAEF,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC"}
@@ -1,30 +0,0 @@
1
- import React from 'react';
2
- import { HTMLMotionProps } from 'framer-motion';
3
- export type CardVariant = 'elevated' | 'glass' | 'outlined' | 'flat';
4
- export interface CardProps extends HTMLMotionProps<'div'> {
5
- variant?: CardVariant;
6
- hoverable?: boolean;
7
- padding?: 'none' | 'sm' | 'md' | 'lg';
8
- }
9
- export declare const Card: React.ForwardRefExoticComponent<Omit<CardProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
10
- export declare const CardHeader: React.FC<{
11
- children: React.ReactNode;
12
- className?: string;
13
- }>;
14
- export declare const CardTitle: React.FC<{
15
- children: React.ReactNode;
16
- className?: string;
17
- }>;
18
- export declare const CardDescription: React.FC<{
19
- children: React.ReactNode;
20
- className?: string;
21
- }>;
22
- export declare const CardContent: React.FC<{
23
- children: React.ReactNode;
24
- className?: string;
25
- }>;
26
- export declare const CardFooter: React.FC<{
27
- children: React.ReactNode;
28
- className?: string;
29
- }>;
30
- //# sourceMappingURL=Card.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Card.d.ts","sourceRoot":"","sources":["../../components/Card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAU,eAAe,EAAE,MAAM,eAAe,CAAC;AAMxD,MAAM,MAAM,WAAW,GAAG,UAAU,GAAG,OAAO,GAAG,UAAU,GAAG,MAAM,CAAC;AAErE,MAAM,WAAW,SAAU,SAAQ,eAAe,CAAC,KAAK,CAAC;IACrD,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;CACzC;AA2CD,eAAO,MAAM,IAAI,+FAgDhB,CAAC;AAQF,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC;IAC9B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAEA,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC;IAC7B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAIA,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC;IACnC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAEA,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC;IAC/B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAEA,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC;IAC9B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB,CAEA,CAAC"}
@@ -1,72 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import React from 'react';
3
- import { motion } from 'framer-motion';
4
- /* ========================================
5
- STYLES
6
- ======================================== */
7
- const baseStyles = `
8
- rounded-2xl
9
- transition-apple
10
- `;
11
- const variantStyles = {
12
- elevated: `
13
- bg-surface-primary
14
- shadow-md
15
- hover:shadow-lg
16
- `,
17
- glass: `
18
- glass
19
- border border-border-secondary
20
- shadow-sm
21
- `,
22
- outlined: `
23
- bg-surface-primary
24
- border border-border-primary
25
- hover:border-border-primary
26
- `,
27
- flat: `
28
- bg-surface-secondary
29
- `,
30
- };
31
- const paddingStyles = {
32
- none: '',
33
- sm: 'p-4',
34
- md: 'p-6',
35
- lg: 'p-8',
36
- };
37
- /* ========================================
38
- COMPONENT
39
- ======================================== */
40
- export const Card = React.forwardRef(({ variant = 'elevated', hoverable = false, padding = 'md', children, className = '', ...props }, ref) => {
41
- const combinedClassName = `
42
- ${baseStyles}
43
- ${variantStyles[variant]}
44
- ${paddingStyles[padding]}
45
- ${className}
46
- `.trim().replace(/\s+/g, ' ');
47
- const hoverAnimation = hoverable
48
- ? {
49
- whileHover: { y: -4, scale: 1.01 },
50
- transition: {
51
- type: 'spring',
52
- stiffness: 300,
53
- damping: 30,
54
- mass: 0.8,
55
- },
56
- }
57
- : {};
58
- return (_jsx(motion.div, { ref: ref, className: combinedClassName, initial: { opacity: 0, y: 8 }, animate: { opacity: 1, y: 0 }, transition: {
59
- duration: 0.22,
60
- ease: [0.16, 1, 0.3, 1],
61
- }, ...hoverAnimation, ...props, children: children }));
62
- });
63
- Card.displayName = 'Card';
64
- /* ========================================
65
- SUB-COMPONENTS
66
- ======================================== */
67
- export const CardHeader = ({ children, className = '' }) => (_jsx("div", { className: `mb-4 ${className}`, children: children }));
68
- export const CardTitle = ({ children, className = '' }) => (_jsx("h3", { className: `text-xl font-semibold text-text-primary mb-1 ${className}`, children: children }));
69
- export const CardDescription = ({ children, className = '' }) => (_jsx("p", { className: `text-sm text-text-secondary ${className}`, children: children }));
70
- export const CardContent = ({ children, className = '' }) => (_jsx("div", { className: className, children: children }));
71
- export const CardFooter = ({ children, className = '' }) => (_jsx("div", { className: `mt-6 flex items-center gap-3 ${className}`, children: children }));
72
- //# sourceMappingURL=Card.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Card.js","sourceRoot":"","sources":["../../components/Card.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,EAAmB,MAAM,eAAe,CAAC;AAcxD;;8CAE8C;AAE9C,MAAM,UAAU,GAAG;;;CAGlB,CAAC;AAEF,MAAM,aAAa,GAAgC;IAC/C,QAAQ,EAAE;;;;GAIX;IACC,KAAK,EAAE;;;;GAIR;IACC,QAAQ,EAAE;;;;GAIX;IACC,IAAI,EAAE;;GAEP;CACF,CAAC;AAEF,MAAM,aAAa,GAAG;IAClB,IAAI,EAAE,EAAE;IACR,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;CACZ,CAAC;AAEF;;8CAE8C;AAE9C,MAAM,CAAC,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAChC,CACI,EACI,OAAO,GAAG,UAAU,EACpB,SAAS,GAAG,KAAK,EACjB,OAAO,GAAG,IAAI,EACd,QAAQ,EACR,SAAS,GAAG,EAAE,EACd,GAAG,KAAK,EACX,EACD,GAAG,EACL,EAAE;IACA,MAAM,iBAAiB,GAAG;QAC1B,UAAU;QACV,aAAa,CAAC,OAAO,CAAC;QACtB,aAAa,CAAC,OAAO,CAAC;QACtB,SAAS;KACZ,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAE1B,MAAM,cAAc,GAAG,SAAS;QAC5B,CAAC,CAAC;YACE,UAAU,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE;YAClC,UAAU,EAAE;gBACR,IAAI,EAAE,QAAiB;gBACvB,SAAS,EAAE,GAAG;gBACd,OAAO,EAAE,EAAE;gBACX,IAAI,EAAE,GAAG;aACZ;SACJ;QACD,CAAC,CAAC,EAAE,CAAC;IAET,OAAO,CACH,KAAC,MAAM,CAAC,GAAG,IACP,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,iBAAiB,EAC5B,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAC7B,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAC7B,UAAU,EAAE;YACR,QAAQ,EAAE,IAAI;YACd,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAqC;SAC9D,KACG,cAAc,KACd,KAAK,YAER,QAAQ,GACA,CAChB,CAAC;AACN,CAAC,CACJ,CAAC;AAEF,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;AAE1B;;8CAE8C;AAE9C,MAAM,CAAC,MAAM,UAAU,GAGlB,CAAC,EAAE,QAAQ,EAAE,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,CACnC,cAAK,SAAS,EAAE,QAAQ,SAAS,EAAE,YAAG,QAAQ,GAAO,CACxD,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAGjB,CAAC,EAAE,QAAQ,EAAE,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,CACnC,aAAI,SAAS,EAAE,gDAAgD,SAAS,EAAE,YACrE,QAAQ,GACR,CACR,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAGvB,CAAC,EAAE,QAAQ,EAAE,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,CACnC,YAAG,SAAS,EAAE,+BAA+B,SAAS,EAAE,YAAG,QAAQ,GAAK,CAC3E,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAGnB,CAAC,EAAE,QAAQ,EAAE,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,CACnC,cAAK,SAAS,EAAE,SAAS,YAAG,QAAQ,GAAO,CAC9C,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAGlB,CAAC,EAAE,QAAQ,EAAE,SAAS,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,CACnC,cAAK,SAAS,EAAE,gCAAgC,SAAS,EAAE,YAAG,QAAQ,GAAO,CAChF,CAAC"}
@@ -1,28 +0,0 @@
1
- import React from 'react';
2
- export interface CartItem {
3
- id: string;
4
- name: string;
5
- price: number;
6
- quantity: number;
7
- image: string;
8
- variant?: string;
9
- maxQuantity?: number;
10
- }
11
- export interface CartPreviewProps {
12
- items: CartItem[];
13
- currency?: string;
14
- onUpdateQuantity?: (itemId: string, quantity: number) => void;
15
- onRemoveItem?: (itemId: string) => void;
16
- onCheckout?: () => void;
17
- onClose?: () => void;
18
- discountCode?: string;
19
- discountAmount?: number;
20
- shippingCost?: number;
21
- freeShippingThreshold?: number;
22
- isOpen?: boolean;
23
- variant?: 'sidebar' | 'dropdown' | 'modal';
24
- className?: string;
25
- }
26
- export declare const CartPreview: React.FC<CartPreviewProps>;
27
- export default CartPreview;
28
- //# sourceMappingURL=CartPreview.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CartPreview.d.ts","sourceRoot":"","sources":["../../components/CartPreview.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAKxC,MAAM,WAAW,QAAQ;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,gBAAgB;IAC7B,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9D,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,OAAO,CAAC;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAuUlD,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -1,80 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { useState } from 'react';
3
- import { X, Plus, Minus, Trash2, ShoppingBag, ArrowRight, Tag } from 'lucide-react';
4
- import { Input } from './Input';
5
- import { Button } from './Button';
6
- export const CartPreview = ({ items, currency = '$', onUpdateQuantity, onRemoveItem, onCheckout, onClose, discountCode, discountAmount = 0, shippingCost = 0, freeShippingThreshold, isOpen = true, variant = 'sidebar', className = '', }) => {
7
- const [promoCode, setPromoCode] = useState(discountCode || '');
8
- const [isApplyingPromo, setIsApplyingPromo] = useState(false);
9
- const subtotal = items.reduce((sum, item) => sum + item.price * item.quantity, 0);
10
- const discount = discountAmount;
11
- const shipping = freeShippingThreshold && subtotal >= freeShippingThreshold ? 0 : shippingCost;
12
- const total = subtotal - discount + shipping;
13
- const handleQuantityChange = (itemId, newQuantity) => {
14
- if (newQuantity < 1)
15
- return;
16
- onUpdateQuantity?.(itemId, newQuantity);
17
- };
18
- const handleRemoveItem = (itemId) => {
19
- onRemoveItem?.(itemId);
20
- };
21
- const handleApplyPromo = () => {
22
- setIsApplyingPromo(true);
23
- // Simulate API call
24
- setTimeout(() => {
25
- setIsApplyingPromo(false);
26
- console.log('Promo code applied:', promoCode);
27
- }, 500);
28
- };
29
- const progressToFreeShipping = freeShippingThreshold
30
- ? Math.min((subtotal / freeShippingThreshold) * 100, 100)
31
- : 0;
32
- const amountToFreeShipping = freeShippingThreshold
33
- ? Math.max(freeShippingThreshold - subtotal, 0)
34
- : 0;
35
- if (!isOpen)
36
- return null;
37
- const variantClasses = {
38
- sidebar: 'fixed right-0 top-0 h-full w-full max-w-md shadow-2xl',
39
- dropdown: 'absolute right-0 top-full mt-2 w-96 shadow-xl rounded-2xl',
40
- modal: 'fixed inset-0 flex items-center justify-center p-4',
41
- };
42
- const containerClasses = {
43
- sidebar: 'h-full',
44
- dropdown: 'max-h-[600px]',
45
- modal: 'w-full max-w-lg max-h-[90vh]',
46
- };
47
- return (_jsxs(_Fragment, { children: [variant === 'modal' && (_jsx("div", { className: "fixed inset-0 bg-black/50 backdrop-blur-sm z-40 animate-fade-in", onClick: onClose })), _jsxs("div", { className: `cart-preview ${variantClasses[variant]} bg-surface-primary border-l border-border-primary z-50 animate-slide-in-right ${className}`, children: [_jsxs("div", { className: `flex flex-col ${containerClasses[variant]}`, children: [_jsxs("div", { className: "flex items-center justify-between p-6 border-b border-border-primary", children: [_jsxs("div", { className: "flex items-center gap-3", children: [_jsx(ShoppingBag, { className: "w-6 h-6 text-text-primary" }), _jsxs("div", { children: [_jsx("h2", { className: "text-xl font-bold text-text-primary", children: "Shopping Cart" }), _jsxs("p", { className: "text-sm text-text-secondary", children: [items.length, " ", items.length === 1 ? 'item' : 'items'] })] })] }), onClose && (_jsx("button", { onClick: onClose, className: "w-10 h-10 rounded-xl flex items-center justify-center hover:bg-background-tertiary/50 transition-colors", "aria-label": "Close cart", children: _jsx(X, { className: "w-5 h-5 text-text-secondary" }) }))] }), freeShippingThreshold && subtotal < freeShippingThreshold && (_jsxs("div", { className: "p-4 bg-accent-blue/5 border-b border-border-primary", children: [_jsxs("div", { className: "flex items-center justify-between mb-2", children: [_jsxs("p", { className: "text-sm text-text-secondary", children: ["Add", ' ', _jsxs("span", { className: "font-semibold text-accent-blue", children: [currency, amountToFreeShipping.toFixed(2)] }), ' ', "for free shipping"] }), _jsxs("span", { className: "text-xs text-text-tertiary", children: [progressToFreeShipping.toFixed(0), "%"] })] }), _jsx("div", { className: "h-2 bg-background-tertiary rounded-full overflow-hidden", children: _jsx("div", { className: "h-full bg-accent-blue transition-all duration-500", style: { width: `${progressToFreeShipping}%` } }) })] })), _jsx("div", { className: "flex-1 overflow-y-auto p-4 space-y-4", children: items.length === 0 ? (_jsxs("div", { className: "flex flex-col items-center justify-center py-12", children: [_jsx(ShoppingBag, { className: "w-16 h-16 text-text-quaternary mb-4" }), _jsx("p", { className: "text-text-secondary text-center", children: "Your cart is empty" })] })) : (items.map((item) => (_jsxs("div", { className: "flex gap-4 p-3 rounded-xl hover:bg-background-secondary transition-colors", children: [_jsx("img", { src: item.image, alt: item.name, className: "w-20 h-20 object-cover rounded-lg bg-background-tertiary flex-shrink-0" }), _jsxs("div", { className: "flex-1 min-w-0", children: [_jsx("h3", { className: "font-semibold text-text-primary text-sm mb-1 truncate", children: item.name }), item.variant && (_jsx("p", { className: "text-xs text-text-tertiary mb-2", children: item.variant })), _jsxs("div", { className: "flex items-center justify-between", children: [_jsxs("div", { className: "flex items-center gap-2", children: [_jsx("button", { onClick: () => handleQuantityChange(item.id, item.quantity - 1), disabled: item.quantity <= 1, className: "w-9 h-9 rounded-lg flex items-center justify-center bg-background-tertiary hover:bg-background-tertiary/70 disabled:opacity-40 disabled:cursor-not-allowed transition-colors", "aria-label": "Decrease quantity", children: _jsx(Minus, { className: "w-4 h-4 text-text-primary" }) }), _jsx("span", { className: "text-base font-medium text-text-primary min-w-[2rem] text-center", children: item.quantity }), _jsx("button", { onClick: () => handleQuantityChange(item.id, item.quantity + 1), disabled: item.maxQuantity ? item.quantity >= item.maxQuantity : false, className: "w-9 h-9 rounded-lg flex items-center justify-center bg-background-tertiary hover:bg-background-tertiary/70 disabled:opacity-40 disabled:cursor-not-allowed transition-colors", "aria-label": "Increase quantity", children: _jsx(Plus, { className: "w-4 h-4 text-text-primary" }) })] }), _jsxs("div", { className: "text-right", children: [_jsxs("p", { className: "font-semibold text-text-primary", children: [currency, (item.price * item.quantity).toFixed(2)] }), item.quantity > 1 && (_jsxs("p", { className: "text-xs text-text-tertiary", children: [currency, item.price.toFixed(2), " each"] }))] })] })] }), _jsx("button", { onClick: () => handleRemoveItem(item.id), className: "w-9 h-9 rounded-lg flex items-center justify-center hover:bg-status-error/10 text-text-tertiary hover:text-status-error transition-colors flex-shrink-0", "aria-label": "Remove item", children: _jsx(Trash2, { className: "w-5 h-5" }) })] }, item.id)))) }), items.length > 0 && (_jsx("div", { className: "p-4 border-t border-border-primary", children: _jsxs("div", { className: "flex gap-2 items-end", children: [_jsx("div", { className: "flex-1", children: _jsx(Input, { type: "text", value: promoCode, onChange: (e) => setPromoCode(e.target.value), placeholder: "Promo code", leftIcon: _jsx(Tag, { className: "w-4 h-4" }) }) }), _jsx(Button, { onClick: handleApplyPromo, disabled: !promoCode || isApplyingPromo, variant: "subtle", children: isApplyingPromo ? 'Applying...' : 'Apply' })] }) })), items.length > 0 && (_jsxs("div", { className: "p-6 border-t border-border-primary bg-background-secondary/50", children: [_jsxs("div", { className: "space-y-3 mb-4", children: [_jsxs("div", { className: "flex justify-between text-sm", children: [_jsx("span", { className: "text-text-secondary", children: "Subtotal" }), _jsxs("span", { className: "font-medium text-text-primary", children: [currency, subtotal.toFixed(2)] })] }), discount > 0 && (_jsxs("div", { className: "flex justify-between text-sm", children: [_jsx("span", { className: "text-text-secondary", children: "Discount" }), _jsxs("span", { className: "font-medium text-status-success", children: ["-", currency, discount.toFixed(2)] })] })), shipping > 0 && (_jsxs("div", { className: "flex justify-between text-sm", children: [_jsx("span", { className: "text-text-secondary", children: "Shipping" }), _jsxs("span", { className: "font-medium text-text-primary", children: [currency, shipping.toFixed(2)] })] })), shipping === 0 && freeShippingThreshold && subtotal >= freeShippingThreshold && (_jsxs("div", { className: "flex justify-between text-sm", children: [_jsx("span", { className: "text-text-secondary", children: "Shipping" }), _jsx("span", { className: "font-medium text-status-success", children: "Free" })] }))] }), _jsxs("div", { className: "flex justify-between items-baseline pt-3 border-t border-border-primary mb-4", children: [_jsx("span", { className: "text-lg font-semibold text-text-primary", children: "Total" }), _jsxs("span", { className: "text-2xl font-bold text-text-primary", children: [currency, total.toFixed(2)] })] }), _jsx(Button, { onClick: onCheckout, variant: "primary", size: "lg", fullWidth: true, rightIcon: _jsx(ArrowRight, { className: "w-5 h-5" }), children: "Proceed to Checkout" })] }))] }), _jsx("style", { dangerouslySetInnerHTML: {
48
- __html: `
49
- @keyframes slideInRight {
50
- from {
51
- opacity: 0;
52
- transform: translateX(100%);
53
- }
54
- to {
55
- opacity: 1;
56
- transform: translateX(0);
57
- }
58
- }
59
-
60
- .animate-slide-in-right {
61
- animation: slideInRight 300ms cubic-bezier(0.16, 1, 0.3, 1);
62
- }
63
-
64
- .animate-fade-in {
65
- animation: fadeIn 200ms cubic-bezier(0.16, 1, 0.3, 1);
66
- }
67
-
68
- @keyframes fadeIn {
69
- from {
70
- opacity: 0;
71
- }
72
- to {
73
- opacity: 1;
74
- }
75
- }
76
- `,
77
- } })] })] }));
78
- };
79
- export default CartPreview;
80
- //# sourceMappingURL=CartPreview.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CartPreview.js","sourceRoot":"","sources":["../../components/CartPreview.tsx"],"names":[],"mappings":"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"}
@@ -1,19 +0,0 @@
1
- import React from 'react';
2
- export interface ChartProps {
3
- type: 'pie' | 'donut' | 'line' | 'bar' | 'radial';
4
- data: {
5
- labels?: string[];
6
- datasets?: Array<{
7
- data: number[];
8
- backgroundColor?: string[];
9
- }>;
10
- };
11
- options?: any;
12
- className?: string;
13
- size?: number;
14
- activeIndex?: number | null;
15
- onSliceHover?: (index: number | null) => void;
16
- }
17
- export declare const Chart: React.FC<ChartProps>;
18
- export default Chart;
19
- //# sourceMappingURL=Chart.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Chart.d.ts","sourceRoot":"","sources":["../../components/Chart.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAC;IAElD,IAAI,EAAE;QACJ,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAClB,QAAQ,CAAC,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,EAAE,CAAC;YAAC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC,CAAC;KAClE,CAAC;IACF,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;CAC/C;AAkBD,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,UAAU,CAgEtC,CAAC;AAEF,eAAe,KAAK,CAAC"}
@@ -1,46 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { cn } from '../lib/utils';
3
- const polarToCartesian = (cx, cy, r, angleDeg) => {
4
- const angleRad = ((angleDeg - 90) * Math.PI) / 180.0;
5
- return {
6
- x: cx + r * Math.cos(angleRad),
7
- y: cy + r * Math.sin(angleRad),
8
- };
9
- };
10
- const describeArc = (cx, cy, r, startAngle, endAngle) => {
11
- const start = polarToCartesian(cx, cy, r, endAngle);
12
- const end = polarToCartesian(cx, cy, r, startAngle);
13
- const largeArcFlag = endAngle - startAngle <= 180 ? '0' : '1';
14
- const d = ['M', start.x, start.y, 'A', r, r, 0, largeArcFlag, 0, end.x, end.y, 'L', cx, cy, 'Z'].join(' ');
15
- return d;
16
- };
17
- export const Chart = ({ type, data, options, className, size = 220, activeIndex = null, onSliceHover, }) => {
18
- const labels = data?.labels || [];
19
- const ds = data?.datasets && data.datasets[0];
20
- const values = ds?.data || [];
21
- const colors = ds?.backgroundColor || [];
22
- const total = values.reduce((s, v) => s + (Number(v) || 0), 0) || 1;
23
- if (type === 'pie' || type === 'donut') {
24
- let cumulative = 0;
25
- const cx = size / 2;
26
- const cy = size / 2;
27
- const r = size / 2 - 4; // padding
28
- const innerRadius = type === 'donut' ? r * 0.55 : 0;
29
- return (_jsx("div", { className: cn('inline-block', className), style: { width: size, height: size }, children: _jsx("svg", { viewBox: `0 0 ${size} ${size}`, width: size, height: size, className: "block", role: "img", "aria-label": "Pie chart", children: _jsxs("g", { children: [values.map((v, i) => {
30
- const value = Number(v) || 0;
31
- const startAngle = (cumulative / total) * 360;
32
- cumulative += value;
33
- const endAngle = (cumulative / total) * 360;
34
- const path = describeArc(cx, cy, r, startAngle, endAngle);
35
- const fill = colors[i] || `hsl(${(i * 60) % 360} 75% 55%)`;
36
- const isActive = activeIndex === i;
37
- const opacity = activeIndex === null ? 1 : isActive ? 1 : 0.45;
38
- const transformStyle = isActive ? { transform: 'scale(1.03)', transformOrigin: `${cx}px ${cy}px` } : undefined;
39
- return (_jsx("path", { d: path, fill: fill, stroke: "rgba(0,0,0,0.06)", strokeWidth: isActive ? 1.5 : 0.5, style: { transition: 'opacity 180ms ease, transform 180ms ease', opacity, ...transformStyle }, className: "chart-slice", onMouseEnter: () => onSliceHover && onSliceHover(i), onMouseLeave: () => onSliceHover && onSliceHover(null), onFocus: () => onSliceHover && onSliceHover(i), onBlur: () => onSliceHover && onSliceHover(null), tabIndex: 0, "aria-label": `${data?.labels?.[i] || 'slice'}: ${value}` }, i));
40
- }), type === 'donut' && (_jsx("circle", { cx: cx, cy: cy, r: innerRadius, fill: "var(--surface-primary, #0b1220)" }))] }) }) }));
41
- }
42
- // fallback placeholder for other chart types
43
- return (_jsx("div", { className: cn('bg-surface-primary rounded-xl shadow p-4 flex items-center justify-center min-h-[180px]', className), children: _jsxs("span", { className: "text-text-secondary", children: ["[Chart: ", type, "]"] }) }));
44
- };
45
- export default Chart;
46
- //# sourceMappingURL=Chart.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Chart.js","sourceRoot":"","sources":["../../components/Chart.tsx"],"names":[],"mappings":"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"}
@@ -1,19 +0,0 @@
1
- import React from 'react';
2
- import { HTMLMotionProps } from 'framer-motion';
3
- export interface ChatBubbleBaseProps {
4
- message: string;
5
- sender?: string;
6
- avatar?: string;
7
- timestamp?: string;
8
- isOwn?: boolean;
9
- variant?: 'default' | 'system' | 'error';
10
- status?: 'sending' | 'sent' | 'delivered' | 'read';
11
- showAvatar?: boolean;
12
- showTimestamp?: boolean;
13
- className?: string;
14
- children?: React.ReactNode;
15
- }
16
- type ChatBubbleProps = ChatBubbleBaseProps & Omit<HTMLMotionProps<'div'>, keyof ChatBubbleBaseProps>;
17
- export declare const ChatBubble: React.ForwardRefExoticComponent<Omit<ChatBubbleProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
18
- export {};
19
- //# sourceMappingURL=ChatBubble.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ChatBubble.d.ts","sourceRoot":"","sources":["../../components/ChatBubble.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAU,eAAe,EAAE,MAAM,eAAe,CAAC;AAOxD,MAAM,WAAW,mBAAmB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,OAAO,CAAC;IACzC,MAAM,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,WAAW,GAAG,MAAM,CAAC;IACnD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC9B;AAED,KAAK,eAAe,GAAG,mBAAmB,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,MAAM,mBAAmB,CAAC,CAAC;AAMrG,eAAO,MAAM,UAAU,qGA2HtB,CAAC"}
@@ -1,27 +0,0 @@
1
- "use client";
2
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
- import React from 'react';
4
- import { cn } from '../lib/utils';
5
- import { motion } from 'framer-motion';
6
- import { Avatar, AvatarImage, AvatarFallback } from './Avatar';
7
- /* ========================================
8
- COMPONENT
9
- ======================================== */
10
- export const ChatBubble = React.forwardRef(({ message, sender, avatar, timestamp, isOwn = false, variant = 'default', status, showAvatar = true, showTimestamp = true, className, children, ...props }, ref) => {
11
- const statusIcons = {
12
- sending: '⏳',
13
- sent: '✓',
14
- delivered: '✓✓',
15
- read: '✓✓',
16
- };
17
- const variantStyles = {
18
- default: isOwn
19
- ? 'bg-accent-blue text-white'
20
- : 'bg-surface-secondary text-text-primary',
21
- system: 'bg-surface-tertiary text-text-secondary text-center',
22
- error: 'bg-status-error/10 text-status-error border border-status-error/20',
23
- };
24
- return (_jsxs(motion.div, { ref: ref, className: cn("flex gap-2 mb-4", isOwn && "flex-row-reverse", className), initial: { opacity: 0, y: 10 }, animate: { opacity: 1, y: 0 }, transition: { duration: 0.2 }, ...props, children: [showAvatar && !isOwn && variant === 'default' && (_jsx("div", { className: "flex-shrink-0", children: _jsxs(Avatar, { className: "w-8 h-8", children: [avatar && _jsx(AvatarImage, { src: avatar, alt: sender }), _jsx(AvatarFallback, { children: sender?.charAt(0).toUpperCase() || 'U' })] }) })), _jsxs("div", { className: cn("flex flex-col", isOwn ? "items-end" : "items-start", variant === 'system' && "items-center w-full"), children: [sender && !isOwn && variant === 'default' && (_jsx("span", { className: "text-xs text-text-tertiary mb-1 px-1", children: sender })), _jsx("div", { className: cn("relative px-4 py-2.5 rounded-2xl max-w-[80%]", variantStyles[variant], isOwn && variant === 'default' && "rounded-br-sm", !isOwn && variant === 'default' && "rounded-bl-sm", variant === 'system' && "max-w-full"), children: _jsx("p", { className: cn("text-sm leading-relaxed whitespace-pre-wrap break-words", variant === 'system' && "text-center"), children: message }) }), _jsxs("div", { className: cn("flex flex-col gap-1 w-full"), children: [children && (_jsx("div", { className: "w-full", children: children })), (showTimestamp || status) && (_jsxs("div", { className: cn("flex items-center gap-1.5 mt-1 px-1", isOwn ? "flex-row-reverse" : "flex-row"), children: [timestamp && showTimestamp && (_jsx("span", { className: "text-xs text-text-tertiary", children: timestamp })), status && isOwn && (_jsx("span", { className: "text-xs text-text-tertiary", children: statusIcons[status] }))] }))] })] })] }));
25
- });
26
- ChatBubble.displayName = 'ChatBubble';
27
- //# sourceMappingURL=ChatBubble.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ChatBubble.js","sourceRoot":"","sources":["../../components/ChatBubble.tsx"],"names":[],"mappings":"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"}
@@ -1,22 +0,0 @@
1
- import React from 'react';
2
- export interface ChatAttachment {
3
- id: string;
4
- file: File;
5
- preview?: string;
6
- type: 'image' | 'file' | 'audio' | 'video';
7
- }
8
- export interface ChatInputProps extends Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange'> {
9
- value?: string;
10
- onChange?: (value: string) => void;
11
- onSend?: (message: string, attachments?: ChatAttachment[]) => void;
12
- placeholder?: string;
13
- attachments?: ChatAttachment[];
14
- onAttachmentsChange?: (attachments: ChatAttachment[]) => void;
15
- maxAttachments?: number;
16
- showAttachmentButton?: boolean;
17
- showVoiceButton?: boolean;
18
- disabled?: boolean;
19
- className?: string;
20
- }
21
- export declare const ChatInput: React.ForwardRefExoticComponent<ChatInputProps & React.RefAttributes<HTMLDivElement>>;
22
- //# sourceMappingURL=ChatInput.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ChatInput.d.ts","sourceRoot":"","sources":["../../components/ChatInput.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAU3D,MAAM,WAAW,cAAc;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,IAAI,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;CAC9C;AAED,MAAM,WAAW,cAAe,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC;IAC1F,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,cAAc,EAAE,KAAK,IAAI,CAAC;IACnE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,cAAc,EAAE,CAAC;IAC/B,mBAAmB,CAAC,EAAE,CAAC,WAAW,EAAE,cAAc,EAAE,KAAK,IAAI,CAAC;IAC9D,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAMD,eAAO,MAAM,SAAS,uFA2OrB,CAAC"}
@@ -1,115 +0,0 @@
1
- "use client";
2
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
- import React, { useState, useRef, useEffect } from 'react';
4
- import { cn } from '../lib/utils';
5
- import { Textarea } from './Textarea';
6
- import { Button } from './Button';
7
- import { Paperclip, Send, X, File, Mic } from 'lucide-react';
8
- /* ========================================
9
- COMPONENT
10
- ======================================== */
11
- export const ChatInput = React.forwardRef(({ value = '', onChange, onSend, placeholder = 'Type a message...', attachments = [], onAttachmentsChange, maxAttachments = 5, showAttachmentButton = true, showVoiceButton = false, disabled = false, className, ...props }, ref) => {
12
- const [inputValue, setInputValue] = useState(value);
13
- const [localAttachments, setLocalAttachments] = useState(attachments);
14
- const fileInputRef = useRef(null);
15
- const textareaRef = useRef(null);
16
- // Sync attachments from props
17
- useEffect(() => {
18
- if (attachments) {
19
- setLocalAttachments(attachments);
20
- }
21
- }, [attachments]);
22
- const handleInputChange = (e) => {
23
- const newValue = e.target.value;
24
- setInputValue(newValue);
25
- onChange?.(newValue);
26
- };
27
- const handleSend = () => {
28
- if ((inputValue.trim() || localAttachments.length > 0) && !disabled) {
29
- onSend?.(inputValue, localAttachments);
30
- setInputValue('');
31
- setLocalAttachments([]);
32
- onAttachmentsChange?.([]);
33
- if (textareaRef.current) {
34
- textareaRef.current.style.height = 'auto';
35
- }
36
- }
37
- };
38
- const handleKeyDown = (e) => {
39
- if (e.key === 'Enter' && !e.shiftKey) {
40
- e.preventDefault();
41
- handleSend();
42
- }
43
- };
44
- const handleFileSelect = (e) => {
45
- const files = Array.from(e.target.files || []);
46
- if (files.length === 0)
47
- return;
48
- const remainingSlots = maxAttachments - localAttachments.length;
49
- if (remainingSlots <= 0) {
50
- alert(`Maximum ${maxAttachments} attachments allowed`);
51
- if (fileInputRef.current) {
52
- fileInputRef.current.value = '';
53
- }
54
- return;
55
- }
56
- const filesToAdd = files.slice(0, remainingSlots);
57
- const newAttachments = [];
58
- filesToAdd.forEach((file) => {
59
- const type = file.type.startsWith('image/') ? 'image'
60
- : file.type.startsWith('video/') ? 'video'
61
- : file.type.startsWith('audio/') ? 'audio'
62
- : 'file';
63
- const attachment = {
64
- id: `${Date.now()}-${Math.random().toString(36).substr(2, 9)}`,
65
- file,
66
- type,
67
- };
68
- if (type === 'image') {
69
- const reader = new FileReader();
70
- reader.onload = (e) => {
71
- attachment.preview = e.target?.result;
72
- setLocalAttachments((prev) => {
73
- const updated = [...prev, attachment];
74
- onAttachmentsChange?.(updated);
75
- return updated;
76
- });
77
- };
78
- reader.onerror = () => {
79
- console.error('Error reading image file');
80
- };
81
- reader.readAsDataURL(file);
82
- }
83
- else {
84
- newAttachments.push(attachment);
85
- }
86
- });
87
- if (newAttachments.length > 0) {
88
- setLocalAttachments((prev) => {
89
- const updated = [...prev, ...newAttachments];
90
- onAttachmentsChange?.(updated);
91
- return updated;
92
- });
93
- }
94
- if (fileInputRef.current) {
95
- fileInputRef.current.value = '';
96
- }
97
- };
98
- const handleRemoveAttachment = (id) => {
99
- const newAttachments = localAttachments.filter((a) => a.id !== id);
100
- setLocalAttachments(newAttachments);
101
- onAttachmentsChange?.(newAttachments);
102
- };
103
- const handleAttachmentClick = () => {
104
- fileInputRef.current?.click();
105
- };
106
- return (_jsxs("div", { ref: ref, className: cn("w-full", className), ...props, children: [localAttachments.length > 0 && (_jsx("div", { className: "flex gap-2 mb-2 overflow-x-auto pb-2", children: localAttachments.map((attachment) => (_jsxs("div", { className: "relative flex-shrink-0 w-20 h-20 rounded-lg overflow-hidden bg-surface-secondary border border-border-primary", children: [attachment.preview ? (_jsx("img", { src: attachment.preview, alt: attachment.file.name, className: "w-full h-full object-cover" })) : (_jsx("div", { className: "w-full h-full flex items-center justify-center", children: _jsx(File, { className: "w-6 h-6 text-text-tertiary" }) })), _jsx("button", { onClick: () => handleRemoveAttachment(attachment.id), className: "absolute top-1 right-1 w-5 h-5 rounded-full bg-black/50 text-white flex items-center justify-center hover:bg-black/70 transition-colors", children: _jsx(X, { className: "w-3 h-3" }) })] }, attachment.id))) })), _jsxs("div", { className: "flex items-center gap-2 p-3 bg-surface-secondary rounded-2xl border border-border-primary", children: [showAttachmentButton && localAttachments.length < maxAttachments && (_jsx(Button, { variant: "ghost", size: "sm", onClick: handleAttachmentClick, disabled: disabled, className: "flex-shrink-0", type: "button", children: _jsx(Paperclip, { className: "w-4 h-4" }) })), _jsx(Textarea, { ref: textareaRef, value: inputValue, onChange: handleInputChange, onKeyDown: handleKeyDown, placeholder: placeholder, disabled: disabled, rows: 1, className: "flex-1 min-h-[40px] max-h-[120px] resize-none border-0 bg-transparent focus-visible:ring-0 py-2", style: {
107
- height: 'auto',
108
- }, onInput: (e) => {
109
- const target = e.target;
110
- target.style.height = 'auto';
111
- target.style.height = `${target.scrollHeight}px`;
112
- } }), showVoiceButton && (_jsx(Button, { variant: "ghost", size: "sm", disabled: disabled, className: "flex-shrink-0", type: "button", children: _jsx(Mic, { className: "w-4 h-4" }) })), _jsx(Button, { variant: "primary", size: "sm", onClick: handleSend, disabled: disabled || (!inputValue.trim() && localAttachments.length === 0), className: "flex-shrink-0", type: "button", children: _jsx(Send, { className: "w-4 h-4" }) }), _jsx("input", { ref: fileInputRef, type: "file", multiple: true, accept: "image/*,video/*,audio/*,.pdf,.doc,.docx,.txt,.csv,.xlsx,.pptx", onChange: handleFileSelect, className: "hidden" })] })] }));
113
- });
114
- ChatInput.displayName = 'ChatInput';
115
- //# sourceMappingURL=ChatInput.js.map