@pattern-stack/frontend-patterns 0.1.0 → 0.1.1

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 (627) hide show
  1. package/dist/atoms/composed/Accordion/Accordion.d.ts.map +1 -0
  2. package/dist/atoms/composed/Accordion/index.d.ts.map +1 -0
  3. package/dist/atoms/composed/Alert/Alert.d.ts.map +1 -0
  4. package/dist/atoms/composed/Alert/index.d.ts.map +1 -0
  5. package/dist/atoms/composed/Breadcrumb/Breadcrumb.d.ts.map +1 -0
  6. package/dist/atoms/composed/Breadcrumb/index.d.ts.map +1 -0
  7. package/dist/atoms/{components/data → composed}/Chart/Chart.d.ts +2 -2
  8. package/dist/atoms/composed/Chart/Chart.d.ts.map +1 -0
  9. package/dist/atoms/composed/Chart/index.d.ts.map +1 -0
  10. package/dist/atoms/composed/ColorSwatch/ColorSwatch.d.ts.map +1 -0
  11. package/dist/atoms/composed/ColorSwatch/index.d.ts.map +1 -0
  12. package/dist/atoms/composed/DarkModeToggle.d.ts.map +1 -0
  13. package/dist/atoms/composed/DataBadge/DataBadge.d.ts +13 -0
  14. package/dist/atoms/composed/DataBadge/DataBadge.d.ts.map +1 -0
  15. package/dist/atoms/composed/DataBadge/index.d.ts.map +1 -0
  16. package/dist/atoms/composed/DataTable/DataTable.d.ts +28 -0
  17. package/dist/atoms/composed/DataTable/DataTable.d.ts.map +1 -0
  18. package/dist/atoms/composed/DataTable/TableCellWithTooltip.d.ts.map +1 -0
  19. package/dist/atoms/composed/DataTable/index.d.ts.map +1 -0
  20. package/dist/atoms/composed/DateTimePicker/DateTimePicker.d.ts.map +1 -0
  21. package/dist/atoms/composed/DateTimePicker/index.d.ts.map +1 -0
  22. package/dist/atoms/composed/DetailedCard/DetailedCard.d.ts.map +1 -0
  23. package/dist/atoms/composed/DetailedCard/index.d.ts.map +1 -0
  24. package/dist/atoms/composed/EmptyState/EmptyState.d.ts.map +1 -0
  25. package/dist/atoms/composed/EmptyState/index.d.ts.map +1 -0
  26. package/dist/atoms/composed/FileUpload/FileUpload.d.ts.map +1 -0
  27. package/dist/atoms/composed/FileUpload/index.d.ts.map +1 -0
  28. package/dist/atoms/composed/FormField/FormField.d.ts.map +1 -0
  29. package/dist/atoms/composed/FormField/index.d.ts.map +1 -0
  30. package/dist/atoms/composed/GlobalSearch/GlobalSearch.d.ts.map +1 -0
  31. package/dist/atoms/composed/GlobalSearch/index.d.ts.map +1 -0
  32. package/dist/atoms/{components/data → composed}/IconBadge/IconBadge.d.ts +1 -2
  33. package/dist/atoms/composed/IconBadge/IconBadge.d.ts.map +1 -0
  34. package/dist/atoms/composed/IconBadge/index.d.ts.map +1 -0
  35. package/dist/atoms/composed/Modal/Modal.d.ts.map +1 -0
  36. package/dist/atoms/composed/Modal/index.d.ts.map +1 -0
  37. package/dist/atoms/composed/PaletteSwitcher.d.ts.map +1 -0
  38. package/dist/atoms/composed/ProgressBar/ProgressBar.d.ts.map +1 -0
  39. package/dist/atoms/composed/ProgressBar/index.d.ts.map +1 -0
  40. package/dist/atoms/{components/data → composed}/StatCard/StatCard.d.ts +1 -1
  41. package/dist/atoms/composed/StatCard/StatCard.d.ts.map +1 -0
  42. package/dist/atoms/composed/StatCard/index.d.ts.map +1 -0
  43. package/dist/atoms/composed/StyleGuide.d.ts.map +1 -0
  44. package/dist/atoms/composed/Toast/Toast.d.ts.map +1 -0
  45. package/dist/atoms/composed/Toast/index.d.ts.map +1 -0
  46. package/dist/atoms/composed/Tooltip/Tooltip.d.ts.map +1 -0
  47. package/dist/atoms/composed/Tooltip/index.d.ts +2 -0
  48. package/dist/atoms/composed/Tooltip/index.d.ts.map +1 -0
  49. package/dist/atoms/composed/UserAvatar/UserAvatar.d.ts.map +1 -0
  50. package/dist/atoms/composed/UserAvatar/index.d.ts.map +1 -0
  51. package/dist/atoms/composed/UserMenu/UserMenu.d.ts.map +1 -0
  52. package/dist/atoms/composed/UserMenu/index.d.ts.map +1 -0
  53. package/dist/atoms/composed/index.d.ts +25 -0
  54. package/dist/atoms/composed/index.d.ts.map +1 -0
  55. package/dist/atoms/index.d.ts +5 -4
  56. package/dist/atoms/index.d.ts.map +1 -1
  57. package/dist/atoms/shared/index.d.ts +0 -1
  58. package/dist/atoms/shared/index.d.ts.map +1 -1
  59. package/dist/atoms/types/index.d.ts +0 -3
  60. package/dist/atoms/types/index.d.ts.map +1 -1
  61. package/dist/atoms/ui/Badge.d.ts.map +1 -0
  62. package/dist/atoms/ui/ErrorBoundary.d.ts.map +1 -0
  63. package/dist/atoms/ui/Select.d.ts.map +1 -0
  64. package/dist/atoms/ui/Switch.d.ts.map +1 -0
  65. package/dist/atoms/ui/Tabs.d.ts.map +1 -0
  66. package/dist/atoms/ui/avatar.d.ts.map +1 -0
  67. package/dist/atoms/{primitives → ui}/button.d.ts +3 -3
  68. package/dist/atoms/ui/button.d.ts.map +1 -0
  69. package/dist/atoms/ui/card.d.ts.map +1 -0
  70. package/dist/atoms/ui/dropdown-menu.d.ts.map +1 -0
  71. package/dist/atoms/{primitives → ui}/index.d.ts +0 -2
  72. package/dist/atoms/ui/index.d.ts.map +1 -0
  73. package/dist/atoms/ui/input.d.ts.map +1 -0
  74. package/dist/atoms/ui/label.d.ts.map +1 -0
  75. package/dist/atoms/ui/skeleton.d.ts.map +1 -0
  76. package/dist/atoms/ui/spinner.d.ts.map +1 -0
  77. package/dist/atoms/ui/table.d.ts.map +1 -0
  78. package/dist/atoms/utils/utils.d.ts +0 -5
  79. package/dist/atoms/utils/utils.d.ts.map +1 -1
  80. package/dist/features/auth/components/LoginForm.d.ts.map +1 -1
  81. package/dist/features/auth/hooks/index.d.ts +0 -1
  82. package/dist/features/auth/hooks/index.d.ts.map +1 -1
  83. package/dist/features/auth/index.d.ts +0 -1
  84. package/dist/features/auth/index.d.ts.map +1 -1
  85. package/dist/frontend-patterns.css +1 -4417
  86. package/dist/index.d.ts +0 -8
  87. package/dist/index.d.ts.map +1 -1
  88. package/dist/index.es.js +8507 -27524
  89. package/dist/index.es.js.map +1 -1
  90. package/dist/index.js +8466 -27505
  91. package/dist/index.js.map +1 -1
  92. package/dist/molecules/forms/SearchInput.d.ts.map +1 -1
  93. package/dist/molecules/layout/AppHeader/AppHeader.d.ts.map +1 -1
  94. package/dist/molecules/layout/Sidebar.d.ts.map +1 -1
  95. package/dist/molecules/layout/SidebarButton/SidebarButton.d.ts +0 -2
  96. package/dist/molecules/layout/SidebarButton/SidebarButton.d.ts.map +1 -1
  97. package/dist/molecules/layout/index.d.ts +0 -4
  98. package/dist/molecules/layout/index.d.ts.map +1 -1
  99. package/dist/organisms/showcase/ComponentShowcasePage.d.ts.map +1 -1
  100. package/dist/templates/DataTemplate.d.ts +1 -1
  101. package/dist/templates/DataTemplate.d.ts.map +1 -1
  102. package/dist/templates/admin/AdminCRUDTemplate.d.ts.map +1 -1
  103. package/dist/templates/admin/AdminDashboardTemplate.d.ts +9 -6
  104. package/dist/templates/admin/AdminDashboardTemplate.d.ts.map +1 -1
  105. package/dist/templates/admin/AdminDetailTemplate.d.ts +1 -1
  106. package/dist/templates/admin/AdminDetailTemplate.d.ts.map +1 -1
  107. package/dist/templates/factory.d.ts +1 -2
  108. package/dist/templates/factory.d.ts.map +1 -1
  109. package/dist/templates/index.d.ts +0 -2
  110. package/dist/templates/index.d.ts.map +1 -1
  111. package/package.json +10 -35
  112. package/src/App.css +42 -0
  113. package/src/App.tsx +54 -0
  114. package/src/__tests__/README.md +221 -0
  115. package/src/__tests__/atoms/hooks/simple-hooks.test.ts +44 -0
  116. package/src/__tests__/atoms/ui/button.test.tsx +68 -0
  117. package/src/__tests__/atoms/utils/simple.test.ts +18 -0
  118. package/src/__tests__/atoms/utils/utils.test.ts +77 -0
  119. package/src/__tests__/features/auth/simple-auth.test.tsx +40 -0
  120. package/src/__tests__/molecules/layout/simple-layout.test.tsx +81 -0
  121. package/src/__tests__/organisms/showcase/simple-showcase.test.tsx +167 -0
  122. package/src/__tests__/setup.ts +51 -0
  123. package/src/__tests__/utils.tsx +123 -0
  124. package/src/atoms/composed/Accordion/Accordion.tsx +271 -0
  125. package/src/atoms/composed/Accordion/index.ts +1 -0
  126. package/src/atoms/composed/Alert/Alert.tsx +132 -0
  127. package/src/atoms/composed/Alert/index.ts +1 -0
  128. package/src/atoms/composed/Breadcrumb/Breadcrumb.tsx +83 -0
  129. package/src/atoms/composed/Breadcrumb/index.ts +1 -0
  130. package/src/atoms/composed/Chart/Chart.tsx +425 -0
  131. package/src/atoms/composed/Chart/index.ts +2 -0
  132. package/src/atoms/composed/ColorSwatch/ColorSwatch.tsx +72 -0
  133. package/src/atoms/composed/ColorSwatch/index.ts +1 -0
  134. package/src/atoms/composed/DarkModeToggle.tsx +66 -0
  135. package/src/atoms/composed/DataBadge/DataBadge.tsx +81 -0
  136. package/src/atoms/composed/DataBadge/index.ts +1 -0
  137. package/src/atoms/composed/DataTable/DataTable.tsx +394 -0
  138. package/src/atoms/composed/DataTable/TableCellWithTooltip.tsx +41 -0
  139. package/src/atoms/composed/DataTable/index.ts +2 -0
  140. package/src/atoms/composed/DateTimePicker/DateTimePicker.tsx +611 -0
  141. package/src/atoms/composed/DateTimePicker/index.ts +2 -0
  142. package/src/atoms/composed/DetailedCard/DetailedCard.tsx +181 -0
  143. package/src/atoms/composed/DetailedCard/index.ts +2 -0
  144. package/src/atoms/composed/EmptyState/EmptyState.tsx +90 -0
  145. package/src/atoms/composed/EmptyState/index.ts +1 -0
  146. package/src/atoms/composed/FileUpload/FileUpload.tsx +477 -0
  147. package/src/atoms/composed/FileUpload/index.ts +2 -0
  148. package/src/atoms/composed/FormField/FormField.tsx +92 -0
  149. package/src/atoms/composed/FormField/index.ts +1 -0
  150. package/src/atoms/composed/GlobalSearch/GlobalSearch.tsx +37 -0
  151. package/src/atoms/composed/GlobalSearch/index.ts +1 -0
  152. package/src/atoms/composed/IconBadge/IconBadge.tsx +95 -0
  153. package/src/atoms/composed/IconBadge/index.ts +2 -0
  154. package/src/atoms/composed/Modal/Modal.tsx +223 -0
  155. package/src/atoms/composed/Modal/index.ts +2 -0
  156. package/src/atoms/composed/PaletteSwitcher.tsx +386 -0
  157. package/src/atoms/composed/ProgressBar/ProgressBar.tsx +116 -0
  158. package/src/atoms/composed/ProgressBar/index.ts +1 -0
  159. package/src/atoms/composed/StatCard/StatCard.tsx +219 -0
  160. package/src/atoms/composed/StatCard/index.ts +1 -0
  161. package/src/atoms/composed/StyleGuide.tsx +717 -0
  162. package/src/atoms/composed/Toast/Toast.tsx +219 -0
  163. package/src/atoms/composed/Toast/index.ts +1 -0
  164. package/src/atoms/composed/Tooltip/Tooltip.tsx +213 -0
  165. package/src/atoms/composed/Tooltip/index.ts +1 -0
  166. package/src/atoms/composed/UserAvatar/UserAvatar.tsx +139 -0
  167. package/src/atoms/composed/UserAvatar/index.ts +1 -0
  168. package/src/atoms/composed/UserMenu/UserMenu.tsx +16 -0
  169. package/src/atoms/composed/UserMenu/index.ts +1 -0
  170. package/src/atoms/composed/index.ts +29 -0
  171. package/src/atoms/hooks/useApi.ts +80 -0
  172. package/src/atoms/hooks/useHealth.ts +17 -0
  173. package/src/atoms/index.ts +13 -0
  174. package/src/atoms/services/api/client.ts +134 -0
  175. package/src/atoms/services/auth-service.ts +248 -0
  176. package/src/atoms/services/health.ts +15 -0
  177. package/src/atoms/services/index.ts +3 -0
  178. package/src/atoms/shared/config/constants.ts +17 -0
  179. package/src/atoms/shared/config/dashboard-sizes.ts +111 -0
  180. package/src/atoms/shared/config/environment.ts +10 -0
  181. package/src/atoms/shared/index.ts +4 -0
  182. package/src/atoms/shared/styles/color-palettes.css +566 -0
  183. package/src/atoms/types/auth.ts +62 -0
  184. package/src/atoms/types/generated.ts +1469 -0
  185. package/src/atoms/types/index.ts +4 -0
  186. package/src/atoms/types/loading.ts +28 -0
  187. package/src/atoms/ui/Badge.tsx +30 -0
  188. package/src/atoms/ui/ErrorBoundary.tsx +59 -0
  189. package/src/atoms/ui/Select.tsx +53 -0
  190. package/src/atoms/ui/Switch.tsx +42 -0
  191. package/src/atoms/ui/Tabs.tsx +118 -0
  192. package/src/atoms/ui/avatar.tsx +48 -0
  193. package/src/atoms/ui/button.tsx +70 -0
  194. package/src/atoms/ui/card.tsx +76 -0
  195. package/src/atoms/ui/dropdown-menu.tsx +199 -0
  196. package/src/atoms/ui/index.ts +39 -0
  197. package/src/atoms/ui/input.tsx +23 -0
  198. package/src/atoms/ui/label.tsx +23 -0
  199. package/src/atoms/ui/skeleton.tsx +13 -0
  200. package/src/atoms/ui/spinner.tsx +49 -0
  201. package/src/atoms/ui/table.tsx +116 -0
  202. package/src/atoms/utils/animations.ts +135 -0
  203. package/src/atoms/utils/tooltip-helpers.ts +140 -0
  204. package/src/atoms/utils/utils.ts +9 -0
  205. package/src/features/auth/components/LoginForm.tsx +168 -0
  206. package/src/features/auth/components/LogoutButton.tsx +19 -0
  207. package/src/features/auth/components/ProtectedRoute.tsx +60 -0
  208. package/src/features/auth/components/index.ts +4 -0
  209. package/src/features/auth/hooks/index.ts +2 -0
  210. package/src/features/auth/hooks/useAuth.tsx +205 -0
  211. package/src/features/auth/hooks/usePermissions.ts +35 -0
  212. package/src/features/auth/index.ts +2 -0
  213. package/src/features/index.ts +2 -0
  214. package/src/index.css +704 -0
  215. package/src/index.ts +13 -0
  216. package/src/main.tsx +48 -0
  217. package/src/molecules/.gitkeep +0 -0
  218. package/src/molecules/forms/FormGroup.tsx +75 -0
  219. package/src/molecules/forms/SearchInput.tsx +259 -0
  220. package/src/molecules/forms/index.ts +4 -0
  221. package/src/molecules/index.ts +4 -0
  222. package/src/molecules/layout/AppHeader/AppHeader.tsx +42 -0
  223. package/src/molecules/layout/AppHeader/index.ts +1 -0
  224. package/src/molecules/layout/AppLayout.tsx +29 -0
  225. package/src/molecules/layout/PageTemplate.tsx +87 -0
  226. package/src/molecules/layout/SectionHeader/SectionHeader.tsx +87 -0
  227. package/src/molecules/layout/SectionHeader/index.ts +1 -0
  228. package/src/molecules/layout/ShowcaseSection.tsx +57 -0
  229. package/src/molecules/layout/Sidebar.tsx +144 -0
  230. package/src/molecules/layout/SidebarButton/SidebarButton.tsx +99 -0
  231. package/src/molecules/layout/SidebarButton/index.ts +1 -0
  232. package/src/molecules/layout/SidebarContext.tsx +31 -0
  233. package/src/molecules/layout/index.ts +7 -0
  234. package/src/molecules/navigation/NavMenu.tsx +188 -0
  235. package/src/molecules/navigation/Pagination.tsx +172 -0
  236. package/src/molecules/navigation/index.ts +4 -0
  237. package/src/organisms/index.ts +5 -0
  238. package/src/organisms/showcase/ComponentShowcasePage.tsx +2496 -0
  239. package/src/organisms/showcase/index.ts +1 -0
  240. package/src/pages/AdminShowcase/AdminCRUDShowcase.tsx +242 -0
  241. package/src/pages/AdminShowcase/AdminDashboardShowcase.tsx +171 -0
  242. package/src/pages/AdminShowcase/AdminDetailShowcase.tsx +385 -0
  243. package/src/pages/AdminShowcase/index.tsx +3 -0
  244. package/src/pages/ComponentShowcase/BadgesShowcase.tsx +188 -0
  245. package/src/pages/ComponentShowcase/CardsShowcase.tsx +392 -0
  246. package/src/pages/ComponentShowcase/PalettesShowcase.tsx +207 -0
  247. package/src/pages/ComponentShowcase/StatesShowcase.tsx +485 -0
  248. package/src/pages/ComponentShowcase/TablesShowcase.tsx +134 -0
  249. package/src/pages/ComponentShowcase/TypographyShowcase.tsx +255 -0
  250. package/src/pages/ComponentShowcase/index.tsx +188 -0
  251. package/src/pages/index.ts +2 -0
  252. package/src/templates/AuthTemplate.tsx +216 -0
  253. package/src/templates/ComponentShowcaseTemplate.tsx +173 -0
  254. package/src/templates/DashboardTemplate.tsx +232 -0
  255. package/src/templates/DataTemplate.tsx +319 -0
  256. package/src/templates/admin/AdminCRUDTemplate.tsx +630 -0
  257. package/src/templates/admin/AdminDashboardTemplate.tsx +351 -0
  258. package/src/templates/admin/AdminDetailTemplate.tsx +563 -0
  259. package/src/templates/admin/index.ts +29 -0
  260. package/src/templates/factory.tsx +169 -0
  261. package/src/templates/index.ts +37 -0
  262. package/src/vite-env.d.ts +1 -0
  263. package/CHANGELOG.md +0 -63
  264. package/LICENSE +0 -19
  265. package/cli/cli/commands/generate-hooks.js +0 -291
  266. package/cli/cli/commands/init.js +0 -25
  267. package/cli/cli/commands/scaffold.js +0 -201
  268. package/cli/cli/index.js +0 -113
  269. package/cli/commands/generate-hooks.js +0 -288
  270. package/cli/commands/generate-hooks.ts +0 -316
  271. package/cli/commands/init.js +0 -22
  272. package/cli/commands/init.ts +0 -33
  273. package/cli/commands/scaffold.js +0 -198
  274. package/cli/commands/scaffold.ts +0 -224
  275. package/cli/index.js +0 -3210
  276. package/cli/index.ts +0 -122
  277. package/cli/src/codegen/openapi/bulk-hook-generator.js +0 -252
  278. package/cli/src/codegen/openapi/bulk-types.js +0 -89
  279. package/cli/src/codegen/openapi/client-generator.js +0 -672
  280. package/cli/src/codegen/openapi/confidence-scorer.js +0 -204
  281. package/cli/src/codegen/openapi/hook-config.js +0 -66
  282. package/cli/src/codegen/openapi/hook-generator.js +0 -1057
  283. package/cli/src/codegen/openapi/parser.js +0 -279
  284. package/cli/src/codegen/openapi/type-generator.js +0 -339
  285. package/dist/atoms/components/core/Avatar/Avatar.d.ts +0 -41
  286. package/dist/atoms/components/core/Avatar/Avatar.d.ts.map +0 -1
  287. package/dist/atoms/components/core/Avatar/index.d.ts +0 -2
  288. package/dist/atoms/components/core/Avatar/index.d.ts.map +0 -1
  289. package/dist/atoms/components/core/Badge/Badge.d.ts +0 -38
  290. package/dist/atoms/components/core/Badge/Badge.d.ts.map +0 -1
  291. package/dist/atoms/components/core/Badge/index.d.ts +0 -2
  292. package/dist/atoms/components/core/Badge/index.d.ts.map +0 -1
  293. package/dist/atoms/components/core/Button/Button.d.ts +0 -28
  294. package/dist/atoms/components/core/Button/Button.d.ts.map +0 -1
  295. package/dist/atoms/components/core/Button/index.d.ts +0 -3
  296. package/dist/atoms/components/core/Button/index.d.ts.map +0 -1
  297. package/dist/atoms/components/core/Card/Card.d.ts +0 -41
  298. package/dist/atoms/components/core/Card/Card.d.ts.map +0 -1
  299. package/dist/atoms/components/core/Card/index.d.ts +0 -3
  300. package/dist/atoms/components/core/Card/index.d.ts.map +0 -1
  301. package/dist/atoms/components/core/Checkbox/Checkbox.d.ts +0 -28
  302. package/dist/atoms/components/core/Checkbox/Checkbox.d.ts.map +0 -1
  303. package/dist/atoms/components/core/Checkbox/index.d.ts +0 -3
  304. package/dist/atoms/components/core/Checkbox/index.d.ts.map +0 -1
  305. package/dist/atoms/components/core/Input/Input.d.ts +0 -37
  306. package/dist/atoms/components/core/Input/Input.d.ts.map +0 -1
  307. package/dist/atoms/components/core/Input/index.d.ts +0 -3
  308. package/dist/atoms/components/core/Input/index.d.ts.map +0 -1
  309. package/dist/atoms/components/core/Label/Label.d.ts +0 -23
  310. package/dist/atoms/components/core/Label/Label.d.ts.map +0 -1
  311. package/dist/atoms/components/core/Label/index.d.ts +0 -3
  312. package/dist/atoms/components/core/Label/index.d.ts.map +0 -1
  313. package/dist/atoms/components/core/Select/Select.d.ts +0 -42
  314. package/dist/atoms/components/core/Select/Select.d.ts.map +0 -1
  315. package/dist/atoms/components/core/Select/index.d.ts +0 -3
  316. package/dist/atoms/components/core/Select/index.d.ts.map +0 -1
  317. package/dist/atoms/components/core/Spinner/Spinner.d.ts +0 -25
  318. package/dist/atoms/components/core/Spinner/Spinner.d.ts.map +0 -1
  319. package/dist/atoms/components/core/Spinner/index.d.ts +0 -3
  320. package/dist/atoms/components/core/Spinner/index.d.ts.map +0 -1
  321. package/dist/atoms/components/core/Switch/Switch.d.ts +0 -35
  322. package/dist/atoms/components/core/Switch/Switch.d.ts.map +0 -1
  323. package/dist/atoms/components/core/Switch/index.d.ts +0 -2
  324. package/dist/atoms/components/core/Switch/index.d.ts.map +0 -1
  325. package/dist/atoms/components/core/index.d.ts +0 -11
  326. package/dist/atoms/components/core/index.d.ts.map +0 -1
  327. package/dist/atoms/components/data/ActivityFeed/ActivityFeed.d.ts +0 -4
  328. package/dist/atoms/components/data/ActivityFeed/ActivityFeed.d.ts.map +0 -1
  329. package/dist/atoms/components/data/ActivityFeed/ActivityFeed.stories.d.ts +0 -38
  330. package/dist/atoms/components/data/ActivityFeed/ActivityFeed.stories.d.ts.map +0 -1
  331. package/dist/atoms/components/data/ActivityFeed/ActivityFeedItem.d.ts +0 -9
  332. package/dist/atoms/components/data/ActivityFeed/ActivityFeedItem.d.ts.map +0 -1
  333. package/dist/atoms/components/data/ActivityFeed/index.d.ts +0 -4
  334. package/dist/atoms/components/data/ActivityFeed/index.d.ts.map +0 -1
  335. package/dist/atoms/components/data/ActivityFeed/types.d.ts +0 -26
  336. package/dist/atoms/components/data/ActivityFeed/types.d.ts.map +0 -1
  337. package/dist/atoms/components/data/ActivityFeed/utils.d.ts +0 -5
  338. package/dist/atoms/components/data/ActivityFeed/utils.d.ts.map +0 -1
  339. package/dist/atoms/components/data/Chart/Chart.d.ts.map +0 -1
  340. package/dist/atoms/components/data/Chart/index.d.ts.map +0 -1
  341. package/dist/atoms/components/data/DataBadge/DataBadge.d.ts +0 -18
  342. package/dist/atoms/components/data/DataBadge/DataBadge.d.ts.map +0 -1
  343. package/dist/atoms/components/data/DataBadge/index.d.ts.map +0 -1
  344. package/dist/atoms/components/data/DataTable/DataTable.d.ts +0 -5
  345. package/dist/atoms/components/data/DataTable/DataTable.d.ts.map +0 -1
  346. package/dist/atoms/components/data/DataTable/DataTable.types.d.ts +0 -51
  347. package/dist/atoms/components/data/DataTable/DataTable.types.d.ts.map +0 -1
  348. package/dist/atoms/components/data/DataTable/TableCellWithTooltip.d.ts.map +0 -1
  349. package/dist/atoms/components/data/DataTable/index.d.ts.map +0 -1
  350. package/dist/atoms/components/data/DetailedCard/DetailedCard.d.ts.map +0 -1
  351. package/dist/atoms/components/data/DetailedCard/index.d.ts.map +0 -1
  352. package/dist/atoms/components/data/EntityIcon/EntityIcon.d.ts +0 -24
  353. package/dist/atoms/components/data/EntityIcon/EntityIcon.d.ts.map +0 -1
  354. package/dist/atoms/components/data/EntityIcon/index.d.ts +0 -2
  355. package/dist/atoms/components/data/EntityIcon/index.d.ts.map +0 -1
  356. package/dist/atoms/components/data/IconBadge/IconBadge.d.ts.map +0 -1
  357. package/dist/atoms/components/data/IconBadge/index.d.ts.map +0 -1
  358. package/dist/atoms/components/data/ListCard/ListCard.d.ts +0 -32
  359. package/dist/atoms/components/data/ListCard/ListCard.d.ts.map +0 -1
  360. package/dist/atoms/components/data/ListCard/index.d.ts +0 -2
  361. package/dist/atoms/components/data/ListCard/index.d.ts.map +0 -1
  362. package/dist/atoms/components/data/ProgressBar/ProgressBar.d.ts.map +0 -1
  363. package/dist/atoms/components/data/ProgressBar/index.d.ts.map +0 -1
  364. package/dist/atoms/components/data/StatCard/StatCard.d.ts.map +0 -1
  365. package/dist/atoms/components/data/StatCard/index.d.ts.map +0 -1
  366. package/dist/atoms/components/data/Table/Table.d.ts +0 -41
  367. package/dist/atoms/components/data/Table/Table.d.ts.map +0 -1
  368. package/dist/atoms/components/data/Table/index.d.ts +0 -2
  369. package/dist/atoms/components/data/Table/index.d.ts.map +0 -1
  370. package/dist/atoms/components/data/TruncatedText/TruncatedText.d.ts +0 -26
  371. package/dist/atoms/components/data/TruncatedText/TruncatedText.d.ts.map +0 -1
  372. package/dist/atoms/components/data/TruncatedText/index.d.ts +0 -2
  373. package/dist/atoms/components/data/TruncatedText/index.d.ts.map +0 -1
  374. package/dist/atoms/components/data/index.d.ts +0 -13
  375. package/dist/atoms/components/data/index.d.ts.map +0 -1
  376. package/dist/atoms/components/domain/SalesPanel/SalesPanel.d.ts +0 -19
  377. package/dist/atoms/components/domain/SalesPanel/SalesPanel.d.ts.map +0 -1
  378. package/dist/atoms/components/domain/SalesPanel/index.d.ts +0 -2
  379. package/dist/atoms/components/domain/SalesPanel/index.d.ts.map +0 -1
  380. package/dist/atoms/components/domain/SalesPanel/mockSalesData.d.ts +0 -63
  381. package/dist/atoms/components/domain/SalesPanel/mockSalesData.d.ts.map +0 -1
  382. package/dist/atoms/components/domain/index.d.ts +0 -2
  383. package/dist/atoms/components/domain/index.d.ts.map +0 -1
  384. package/dist/atoms/components/feedback/Alert/Alert.d.ts.map +0 -1
  385. package/dist/atoms/components/feedback/Alert/index.d.ts.map +0 -1
  386. package/dist/atoms/components/feedback/EmptyState/EmptyState.d.ts.map +0 -1
  387. package/dist/atoms/components/feedback/EmptyState/index.d.ts.map +0 -1
  388. package/dist/atoms/components/feedback/ErrorBoundary/ErrorBoundary.d.ts +0 -61
  389. package/dist/atoms/components/feedback/ErrorBoundary/ErrorBoundary.d.ts.map +0 -1
  390. package/dist/atoms/components/feedback/ErrorBoundary/index.d.ts +0 -2
  391. package/dist/atoms/components/feedback/ErrorBoundary/index.d.ts.map +0 -1
  392. package/dist/atoms/components/feedback/Skeleton/Skeleton.d.ts +0 -41
  393. package/dist/atoms/components/feedback/Skeleton/Skeleton.d.ts.map +0 -1
  394. package/dist/atoms/components/feedback/Skeleton/index.d.ts +0 -2
  395. package/dist/atoms/components/feedback/Skeleton/index.d.ts.map +0 -1
  396. package/dist/atoms/components/feedback/Toast/Toast.d.ts.map +0 -1
  397. package/dist/atoms/components/feedback/Toast/index.d.ts.map +0 -1
  398. package/dist/atoms/components/feedback/index.d.ts +0 -6
  399. package/dist/atoms/components/feedback/index.d.ts.map +0 -1
  400. package/dist/atoms/components/forms/DateTimePicker/DateTimePicker.d.ts.map +0 -1
  401. package/dist/atoms/components/forms/DateTimePicker/index.d.ts.map +0 -1
  402. package/dist/atoms/components/forms/FileUpload/FileUpload.d.ts.map +0 -1
  403. package/dist/atoms/components/forms/FileUpload/index.d.ts.map +0 -1
  404. package/dist/atoms/components/forms/FormField/FormField.d.ts.map +0 -1
  405. package/dist/atoms/components/forms/FormField/index.d.ts.map +0 -1
  406. package/dist/atoms/components/forms/index.d.ts +0 -4
  407. package/dist/atoms/components/forms/index.d.ts.map +0 -1
  408. package/dist/atoms/components/index.d.ts +0 -10
  409. package/dist/atoms/components/index.d.ts.map +0 -1
  410. package/dist/atoms/components/layout/Accordion/Accordion.d.ts.map +0 -1
  411. package/dist/atoms/components/layout/Accordion/index.d.ts.map +0 -1
  412. package/dist/atoms/components/layout/Breadcrumb/Breadcrumb.d.ts.map +0 -1
  413. package/dist/atoms/components/layout/Breadcrumb/index.d.ts.map +0 -1
  414. package/dist/atoms/components/layout/Dialog/index.d.ts +0 -3
  415. package/dist/atoms/components/layout/Dialog/index.d.ts.map +0 -1
  416. package/dist/atoms/components/layout/Dropdown/Dropdown.d.ts +0 -40
  417. package/dist/atoms/components/layout/Dropdown/Dropdown.d.ts.map +0 -1
  418. package/dist/atoms/components/layout/Dropdown/index.d.ts +0 -3
  419. package/dist/atoms/components/layout/Dropdown/index.d.ts.map +0 -1
  420. package/dist/atoms/components/layout/Modal/Modal.d.ts.map +0 -1
  421. package/dist/atoms/components/layout/Modal/index.d.ts.map +0 -1
  422. package/dist/atoms/components/layout/Tabs/index.d.ts +0 -2
  423. package/dist/atoms/components/layout/Tabs/index.d.ts.map +0 -1
  424. package/dist/atoms/components/layout/Tooltip/Tooltip.d.ts.map +0 -1
  425. package/dist/atoms/components/layout/Tooltip/index.d.ts +0 -2
  426. package/dist/atoms/components/layout/Tooltip/index.d.ts.map +0 -1
  427. package/dist/atoms/components/layout/index.d.ts +0 -8
  428. package/dist/atoms/components/layout/index.d.ts.map +0 -1
  429. package/dist/atoms/components/navigation/GlobalSearch/GlobalSearch.d.ts.map +0 -1
  430. package/dist/atoms/components/navigation/GlobalSearch/index.d.ts.map +0 -1
  431. package/dist/atoms/components/navigation/index.d.ts +0 -2
  432. package/dist/atoms/components/navigation/index.d.ts.map +0 -1
  433. package/dist/atoms/components/theme/ColorSwatch/ColorSwatch.d.ts.map +0 -1
  434. package/dist/atoms/components/theme/ColorSwatch/index.d.ts.map +0 -1
  435. package/dist/atoms/components/theme/DarkModeToggle.d.ts.map +0 -1
  436. package/dist/atoms/components/theme/PaletteSwitcher.d.ts.map +0 -1
  437. package/dist/atoms/components/theme/StyleGuide.d.ts.map +0 -1
  438. package/dist/atoms/components/theme/index.d.ts +0 -5
  439. package/dist/atoms/components/theme/index.d.ts.map +0 -1
  440. package/dist/atoms/components/user/UserAvatar/UserAvatar.d.ts.map +0 -1
  441. package/dist/atoms/components/user/UserAvatar/index.d.ts.map +0 -1
  442. package/dist/atoms/components/user/UserMenu/UserMenu.d.ts.map +0 -1
  443. package/dist/atoms/components/user/UserMenu/index.d.ts.map +0 -1
  444. package/dist/atoms/components/user/index.d.ts +0 -3
  445. package/dist/atoms/components/user/index.d.ts.map +0 -1
  446. package/dist/atoms/config/responsive.d.ts +0 -147
  447. package/dist/atoms/config/responsive.d.ts.map +0 -1
  448. package/dist/atoms/hooks/index.d.ts +0 -5
  449. package/dist/atoms/hooks/index.d.ts.map +0 -1
  450. package/dist/atoms/hooks/use-toast.d.ts +0 -16
  451. package/dist/atoms/hooks/use-toast.d.ts.map +0 -1
  452. package/dist/atoms/hooks/useResponsive.d.ts +0 -42
  453. package/dist/atoms/hooks/useResponsive.d.ts.map +0 -1
  454. package/dist/atoms/primitives/Badge.d.ts.map +0 -1
  455. package/dist/atoms/primitives/ErrorBoundary.d.ts.map +0 -1
  456. package/dist/atoms/primitives/Select.d.ts.map +0 -1
  457. package/dist/atoms/primitives/Switch.d.ts.map +0 -1
  458. package/dist/atoms/primitives/Tabs.d.ts.map +0 -1
  459. package/dist/atoms/primitives/avatar.d.ts.map +0 -1
  460. package/dist/atoms/primitives/button.d.ts.map +0 -1
  461. package/dist/atoms/primitives/card.d.ts.map +0 -1
  462. package/dist/atoms/primitives/checkbox.d.ts +0 -12
  463. package/dist/atoms/primitives/checkbox.d.ts.map +0 -1
  464. package/dist/atoms/primitives/dialog.d.ts +0 -34
  465. package/dist/atoms/primitives/dialog.d.ts.map +0 -1
  466. package/dist/atoms/primitives/dropdown-menu.d.ts.map +0 -1
  467. package/dist/atoms/primitives/index.d.ts.map +0 -1
  468. package/dist/atoms/primitives/input.d.ts.map +0 -1
  469. package/dist/atoms/primitives/label.d.ts.map +0 -1
  470. package/dist/atoms/primitives/skeleton.d.ts.map +0 -1
  471. package/dist/atoms/primitives/spinner.d.ts.map +0 -1
  472. package/dist/atoms/primitives/table.d.ts.map +0 -1
  473. package/dist/atoms/types/entity-config.d.ts +0 -117
  474. package/dist/atoms/types/entity-config.d.ts.map +0 -1
  475. package/dist/atoms/types/navigation.d.ts +0 -30
  476. package/dist/atoms/types/navigation.d.ts.map +0 -1
  477. package/dist/atoms/types/ui-config.d.ts +0 -50
  478. package/dist/atoms/types/ui-config.d.ts.map +0 -1
  479. package/dist/atoms/utils/color-manager.d.ts +0 -68
  480. package/dist/atoms/utils/color-manager.d.ts.map +0 -1
  481. package/dist/atoms/utils/debounce.d.ts +0 -6
  482. package/dist/atoms/utils/debounce.d.ts.map +0 -1
  483. package/dist/atoms/utils/field-detection.d.ts +0 -15
  484. package/dist/atoms/utils/field-detection.d.ts.map +0 -1
  485. package/dist/atoms/utils/icon-resolver.d.ts +0 -76
  486. package/dist/atoms/utils/icon-resolver.d.ts.map +0 -1
  487. package/dist/atoms/utils/index.d.ts +0 -5
  488. package/dist/atoms/utils/index.d.ts.map +0 -1
  489. package/dist/atoms/utils/metric-engine.d.ts +0 -30
  490. package/dist/atoms/utils/metric-engine.d.ts.map +0 -1
  491. package/dist/atoms/utils/ui-mapping.d.ts +0 -17
  492. package/dist/atoms/utils/ui-mapping.d.ts.map +0 -1
  493. package/dist/codegen/index.d.ts +0 -7
  494. package/dist/codegen/index.d.ts.map +0 -1
  495. package/dist/codegen/openapi/bulk-hook-generator.d.ts +0 -40
  496. package/dist/codegen/openapi/bulk-hook-generator.d.ts.map +0 -1
  497. package/dist/codegen/openapi/bulk-types.d.ts +0 -142
  498. package/dist/codegen/openapi/bulk-types.d.ts.map +0 -1
  499. package/dist/codegen/openapi/client-generator.d.ts +0 -52
  500. package/dist/codegen/openapi/client-generator.d.ts.map +0 -1
  501. package/dist/codegen/openapi/confidence-scorer.d.ts +0 -30
  502. package/dist/codegen/openapi/confidence-scorer.d.ts.map +0 -1
  503. package/dist/codegen/openapi/hook-config.d.ts +0 -50
  504. package/dist/codegen/openapi/hook-config.d.ts.map +0 -1
  505. package/dist/codegen/openapi/hook-generator.d.ts +0 -108
  506. package/dist/codegen/openapi/hook-generator.d.ts.map +0 -1
  507. package/dist/codegen/openapi/index.d.ts +0 -27
  508. package/dist/codegen/openapi/index.d.ts.map +0 -1
  509. package/dist/codegen/openapi/parser.d.ts +0 -107
  510. package/dist/codegen/openapi/parser.d.ts.map +0 -1
  511. package/dist/codegen/openapi/type-generator.d.ts +0 -53
  512. package/dist/codegen/openapi/type-generator.d.ts.map +0 -1
  513. package/dist/features/auth/hooks/useAuthContext.d.ts +0 -7
  514. package/dist/features/auth/hooks/useAuthContext.d.ts.map +0 -1
  515. package/dist/features/auth/providers/MockAuthProvider.d.ts +0 -9
  516. package/dist/features/auth/providers/MockAuthProvider.d.ts.map +0 -1
  517. package/dist/features/auth/providers/index.d.ts +0 -2
  518. package/dist/features/auth/providers/index.d.ts.map +0 -1
  519. package/dist/features/auth/services/mock-auth-service.d.ts +0 -17
  520. package/dist/features/auth/services/mock-auth-service.d.ts.map +0 -1
  521. package/dist/generated/client/client.d.ts +0 -23
  522. package/dist/generated/client/client.d.ts.map +0 -1
  523. package/dist/generated/client/config.d.ts +0 -10
  524. package/dist/generated/client/config.d.ts.map +0 -1
  525. package/dist/generated/client/index.d.ts +0 -12
  526. package/dist/generated/client/index.d.ts.map +0 -1
  527. package/dist/generated/client/methods.d.ts +0 -591
  528. package/dist/generated/client/methods.d.ts.map +0 -1
  529. package/dist/generated/client/types.d.ts +0 -37
  530. package/dist/generated/client/types.d.ts.map +0 -1
  531. package/dist/generated/example.d.ts +0 -8
  532. package/dist/generated/example.d.ts.map +0 -1
  533. package/dist/generated/hooks/index.d.ts +0 -11
  534. package/dist/generated/hooks/index.d.ts.map +0 -1
  535. package/dist/generated/hooks/keys.d.ts +0 -59
  536. package/dist/generated/hooks/keys.d.ts.map +0 -1
  537. package/dist/generated/hooks/mutations.d.ts +0 -551
  538. package/dist/generated/hooks/mutations.d.ts.map +0 -1
  539. package/dist/generated/hooks/queries.d.ts +0 -426
  540. package/dist/generated/hooks/queries.d.ts.map +0 -1
  541. package/dist/generated/hooks/types.d.ts +0 -318
  542. package/dist/generated/hooks/types.d.ts.map +0 -1
  543. package/dist/generated/index.d.ts +0 -13
  544. package/dist/generated/index.d.ts.map +0 -1
  545. package/dist/generated/types/endpoints.d.ts +0 -1364
  546. package/dist/generated/types/endpoints.d.ts.map +0 -1
  547. package/dist/generated/types/index.d.ts +0 -11
  548. package/dist/generated/types/index.d.ts.map +0 -1
  549. package/dist/generated/types/parameters.d.ts +0 -8
  550. package/dist/generated/types/parameters.d.ts.map +0 -1
  551. package/dist/generated/types/responses.d.ts +0 -8
  552. package/dist/generated/types/responses.d.ts.map +0 -1
  553. package/dist/generated/types/schemas.d.ts +0 -652
  554. package/dist/generated/types/schemas.d.ts.map +0 -1
  555. package/dist/molecules/feedback/index.d.ts +0 -2
  556. package/dist/molecules/feedback/index.d.ts.map +0 -1
  557. package/dist/molecules/layout/BulkSelectionBar.d.ts +0 -15
  558. package/dist/molecules/layout/BulkSelectionBar.d.ts.map +0 -1
  559. package/dist/molecules/layout/DashboardWithSidePanel/DashboardWithSidePanel.d.ts +0 -16
  560. package/dist/molecules/layout/DashboardWithSidePanel/DashboardWithSidePanel.d.ts.map +0 -1
  561. package/dist/molecules/layout/DashboardWithSidePanel/index.d.ts +0 -2
  562. package/dist/molecules/layout/DashboardWithSidePanel/index.d.ts.map +0 -1
  563. package/dist/molecules/layout/NavigationContext.d.ts +0 -15
  564. package/dist/molecules/layout/NavigationContext.d.ts.map +0 -1
  565. package/dist/templates/EnhancedDataTemplate.d.ts +0 -188
  566. package/dist/templates/EnhancedDataTemplate.d.ts.map +0 -1
  567. package/dist/templates/EnhancedDataTemplate.hooks.bulk.d.ts +0 -18
  568. package/dist/templates/EnhancedDataTemplate.hooks.bulk.d.ts.map +0 -1
  569. package/dist/templates/EnhancedDataTemplate.hooks.d.ts +0 -22
  570. package/dist/templates/EnhancedDataTemplate.hooks.d.ts.map +0 -1
  571. package/dist/templates/api/APIDataTemplate.d.ts +0 -66
  572. package/dist/templates/api/APIDataTemplate.d.ts.map +0 -1
  573. package/dist/templates/api/index.d.ts +0 -8
  574. package/dist/templates/api/index.d.ts.map +0 -1
  575. /package/dist/atoms/{components/layout → composed}/Accordion/Accordion.d.ts +0 -0
  576. /package/dist/atoms/{components/layout → composed}/Accordion/index.d.ts +0 -0
  577. /package/dist/atoms/{components/feedback → composed}/Alert/Alert.d.ts +0 -0
  578. /package/dist/atoms/{components/feedback → composed}/Alert/index.d.ts +0 -0
  579. /package/dist/atoms/{components/layout → composed}/Breadcrumb/Breadcrumb.d.ts +0 -0
  580. /package/dist/atoms/{components/layout → composed}/Breadcrumb/index.d.ts +0 -0
  581. /package/dist/atoms/{components/data → composed}/Chart/index.d.ts +0 -0
  582. /package/dist/atoms/{components/theme → composed}/ColorSwatch/ColorSwatch.d.ts +0 -0
  583. /package/dist/atoms/{components/theme → composed}/ColorSwatch/index.d.ts +0 -0
  584. /package/dist/atoms/{components/theme → composed}/DarkModeToggle.d.ts +0 -0
  585. /package/dist/atoms/{components/data → composed}/DataBadge/index.d.ts +0 -0
  586. /package/dist/atoms/{components/data → composed}/DataTable/TableCellWithTooltip.d.ts +0 -0
  587. /package/dist/atoms/{components/data → composed}/DataTable/index.d.ts +0 -0
  588. /package/dist/atoms/{components/forms → composed}/DateTimePicker/DateTimePicker.d.ts +0 -0
  589. /package/dist/atoms/{components/forms → composed}/DateTimePicker/index.d.ts +0 -0
  590. /package/dist/atoms/{components/data → composed}/DetailedCard/DetailedCard.d.ts +0 -0
  591. /package/dist/atoms/{components/data → composed}/DetailedCard/index.d.ts +0 -0
  592. /package/dist/atoms/{components/feedback → composed}/EmptyState/EmptyState.d.ts +0 -0
  593. /package/dist/atoms/{components/feedback → composed}/EmptyState/index.d.ts +0 -0
  594. /package/dist/atoms/{components/forms → composed}/FileUpload/FileUpload.d.ts +0 -0
  595. /package/dist/atoms/{components/forms → composed}/FileUpload/index.d.ts +0 -0
  596. /package/dist/atoms/{components/forms → composed}/FormField/FormField.d.ts +0 -0
  597. /package/dist/atoms/{components/forms → composed}/FormField/index.d.ts +0 -0
  598. /package/dist/atoms/{components/navigation → composed}/GlobalSearch/GlobalSearch.d.ts +0 -0
  599. /package/dist/atoms/{components/navigation → composed}/GlobalSearch/index.d.ts +0 -0
  600. /package/dist/atoms/{components/data → composed}/IconBadge/index.d.ts +0 -0
  601. /package/dist/atoms/{components/layout → composed}/Modal/Modal.d.ts +0 -0
  602. /package/dist/atoms/{components/layout → composed}/Modal/index.d.ts +0 -0
  603. /package/dist/atoms/{components/theme → composed}/PaletteSwitcher.d.ts +0 -0
  604. /package/dist/atoms/{components/data → composed}/ProgressBar/ProgressBar.d.ts +0 -0
  605. /package/dist/atoms/{components/data → composed}/ProgressBar/index.d.ts +0 -0
  606. /package/dist/atoms/{components/data → composed}/StatCard/index.d.ts +0 -0
  607. /package/dist/atoms/{components/theme → composed}/StyleGuide.d.ts +0 -0
  608. /package/dist/atoms/{components/feedback → composed}/Toast/Toast.d.ts +0 -0
  609. /package/dist/atoms/{components/feedback → composed}/Toast/index.d.ts +0 -0
  610. /package/dist/atoms/{components/layout → composed}/Tooltip/Tooltip.d.ts +0 -0
  611. /package/dist/atoms/{components/user → composed}/UserAvatar/UserAvatar.d.ts +0 -0
  612. /package/dist/atoms/{components/user → composed}/UserAvatar/index.d.ts +0 -0
  613. /package/dist/atoms/{components/user → composed}/UserMenu/UserMenu.d.ts +0 -0
  614. /package/dist/atoms/{components/user → composed}/UserMenu/index.d.ts +0 -0
  615. /package/dist/atoms/{primitives → ui}/Badge.d.ts +0 -0
  616. /package/dist/atoms/{primitives → ui}/ErrorBoundary.d.ts +0 -0
  617. /package/dist/atoms/{primitives → ui}/Select.d.ts +0 -0
  618. /package/dist/atoms/{primitives → ui}/Switch.d.ts +0 -0
  619. /package/dist/atoms/{primitives → ui}/Tabs.d.ts +0 -0
  620. /package/dist/atoms/{primitives → ui}/avatar.d.ts +0 -0
  621. /package/dist/atoms/{primitives → ui}/card.d.ts +0 -0
  622. /package/dist/atoms/{primitives → ui}/dropdown-menu.d.ts +0 -0
  623. /package/dist/atoms/{primitives → ui}/input.d.ts +0 -0
  624. /package/dist/atoms/{primitives → ui}/label.d.ts +0 -0
  625. /package/dist/atoms/{primitives → ui}/skeleton.d.ts +0 -0
  626. /package/dist/atoms/{primitives → ui}/spinner.d.ts +0 -0
  627. /package/dist/atoms/{primitives → ui}/table.d.ts +0 -0
@@ -0,0 +1,611 @@
1
+ import React, { useState, useRef, useEffect } from 'react';
2
+ import { Calendar, Clock, ChevronLeft, ChevronRight, X } from 'lucide-react';
3
+ import { cn } from '../../utils/utils';
4
+ import { Input } from '../../ui/input';
5
+ import { Button } from '../../ui/button';
6
+
7
+ export interface DateTimePickerProps {
8
+ /** Current selected date/time value */
9
+ value?: Date;
10
+ /** Callback when date/time changes */
11
+ onChange?: (date: Date | null) => void;
12
+ /** Picker mode */
13
+ mode?: 'date' | 'time' | 'datetime';
14
+ /** Visual variant */
15
+ variant?: 'default' | 'compact' | 'inline';
16
+ /** Date format for display */
17
+ dateFormat?: 'MM/dd/yyyy' | 'dd/MM/yyyy' | 'yyyy-MM-dd';
18
+ /** Time format */
19
+ timeFormat?: '12h' | '24h';
20
+ /** Minimum selectable date */
21
+ minDate?: Date;
22
+ /** Maximum selectable date */
23
+ maxDate?: Date;
24
+ /** Enable date range selection */
25
+ isRange?: boolean;
26
+ /** Range values for range mode */
27
+ rangeValue?: { start: Date | null; end: Date | null };
28
+ /** Callback for range changes */
29
+ onRangeChange?: (range: { start: Date | null; end: Date | null }) => void;
30
+ /** Placeholder text */
31
+ placeholder?: string;
32
+ /** Disabled state */
33
+ disabled?: boolean;
34
+ /** Error state */
35
+ error?: boolean;
36
+ /** Clear button */
37
+ clearable?: boolean;
38
+ /** Additional CSS classes */
39
+ className?: string;
40
+ /** ARIA label */
41
+ 'aria-label'?: string;
42
+ }
43
+
44
+ const MONTHS = [
45
+ 'January', 'February', 'March', 'April', 'May', 'June',
46
+ 'July', 'August', 'September', 'October', 'November', 'December'
47
+ ];
48
+
49
+ const WEEKDAYS = ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'];
50
+
51
+ export const DateTimePicker: React.FC<DateTimePickerProps> = ({
52
+ value,
53
+ onChange,
54
+ mode = 'datetime',
55
+ variant = 'default',
56
+ dateFormat = 'MM/dd/yyyy',
57
+ timeFormat = '12h',
58
+ minDate,
59
+ maxDate,
60
+ isRange = false,
61
+ rangeValue,
62
+ onRangeChange,
63
+ placeholder,
64
+ disabled = false,
65
+ error = false,
66
+ clearable = true,
67
+ className,
68
+ 'aria-label': ariaLabel,
69
+ ...props
70
+ }) => {
71
+ const [isOpen, setIsOpen] = useState(false);
72
+ const [viewDate, setViewDate] = useState(value || new Date());
73
+ const [, setActiveInput] = useState<'start' | 'end' | null>(null);
74
+ const [tempTime, setTempTime] = useState({
75
+ hours: value?.getHours() || 0,
76
+ minutes: value?.getMinutes() || 0
77
+ });
78
+
79
+ const containerRef = useRef<HTMLDivElement>(null);
80
+ const inputRef = useRef<HTMLInputElement>(null);
81
+
82
+ // Close picker when clicking outside
83
+ useEffect(() => {
84
+ const handleClickOutside = (event: MouseEvent) => {
85
+ if (containerRef.current && !containerRef.current.contains(event.target as Node)) {
86
+ setIsOpen(false);
87
+ setActiveInput(null);
88
+ }
89
+ };
90
+
91
+ document.addEventListener('mousedown', handleClickOutside);
92
+ return () => document.removeEventListener('mousedown', handleClickOutside);
93
+ }, []);
94
+
95
+ // Format date for display
96
+ const formatDate = (date: Date | null): string => {
97
+ if (!date) return '';
98
+
99
+ const day = date.getDate().toString().padStart(2, '0');
100
+ const month = (date.getMonth() + 1).toString().padStart(2, '0');
101
+ const year = date.getFullYear();
102
+
103
+ switch (dateFormat) {
104
+ case 'dd/MM/yyyy':
105
+ return `${day}/${month}/${year}`;
106
+ case 'yyyy-MM-dd':
107
+ return `${year}-${month}-${day}`;
108
+ default:
109
+ return `${month}/${day}/${year}`;
110
+ }
111
+ };
112
+
113
+ // Format time for display
114
+ const formatTime = (date: Date | null): string => {
115
+ if (!date) return '';
116
+
117
+ const hours = date.getHours();
118
+ const minutes = date.getMinutes().toString().padStart(2, '0');
119
+
120
+ if (timeFormat === '12h') {
121
+ const displayHours = hours === 0 ? 12 : hours > 12 ? hours - 12 : hours;
122
+ const ampm = hours >= 12 ? 'PM' : 'AM';
123
+ return `${displayHours}:${minutes} ${ampm}`;
124
+ }
125
+
126
+ return `${hours.toString().padStart(2, '0')}:${minutes}`;
127
+ };
128
+
129
+ // Format complete datetime
130
+ const formatDateTime = (date: Date | null): string => {
131
+ if (!date) return '';
132
+
133
+ const datePart = mode === 'time' ? '' : formatDate(date);
134
+ const timePart = mode === 'date' ? '' : formatTime(date);
135
+
136
+ if (mode === 'datetime') {
137
+ return `${datePart} ${timePart}`;
138
+ }
139
+
140
+ return datePart || timePart;
141
+ };
142
+
143
+ // Get display value for input
144
+ const getDisplayValue = (): string => {
145
+ if (isRange && rangeValue) {
146
+ const start = rangeValue.start ? formatDateTime(rangeValue.start) : '';
147
+ const end = rangeValue.end ? formatDateTime(rangeValue.end) : '';
148
+ return start && end ? `${start} - ${end}` : start || end || '';
149
+ }
150
+
151
+ return formatDateTime(value || null);
152
+ };
153
+
154
+ // Generate calendar days
155
+ const getCalendarDays = () => {
156
+ const year = viewDate.getFullYear();
157
+ const month = viewDate.getMonth();
158
+
159
+ const firstDay = new Date(year, month, 1);
160
+ const startDate = new Date(firstDay);
161
+ startDate.setDate(startDate.getDate() - firstDay.getDay());
162
+
163
+ const days: Date[] = [];
164
+
165
+ for (let i = 0; i < 42; i++) {
166
+ const currentDate = new Date(startDate);
167
+ currentDate.setDate(startDate.getDate() + i);
168
+ days.push(currentDate);
169
+ }
170
+
171
+ return days;
172
+ };
173
+
174
+ // Handle date selection
175
+ const handleDateSelect = (date: Date) => {
176
+ if (disabled) return;
177
+
178
+ // Check date constraints
179
+ if (minDate && date < minDate) return;
180
+ if (maxDate && date > maxDate) return;
181
+
182
+ if (isRange && onRangeChange) {
183
+ if (!rangeValue?.start || (rangeValue.start && rangeValue.end)) {
184
+ // Start new range
185
+ onRangeChange({ start: date, end: null });
186
+ setActiveInput('end');
187
+ } else if (rangeValue.start && !rangeValue.end) {
188
+ // Complete range
189
+ if (date >= rangeValue.start) {
190
+ onRangeChange({ start: rangeValue.start, end: date });
191
+ } else {
192
+ onRangeChange({ start: date, end: rangeValue.start });
193
+ }
194
+ setActiveInput(null);
195
+ if (mode === 'date') setIsOpen(false);
196
+ }
197
+ } else {
198
+ // Single date selection
199
+ const newDate = new Date(date);
200
+ if (value && (mode === 'datetime' || mode === 'time')) {
201
+ // Preserve time when selecting date
202
+ newDate.setHours(value.getHours());
203
+ newDate.setMinutes(value.getMinutes());
204
+ }
205
+
206
+ onChange?.(newDate);
207
+ if (mode === 'date') setIsOpen(false);
208
+ }
209
+ };
210
+
211
+ // Handle time change
212
+ const handleTimeChange = (hours: number, minutes: number) => {
213
+ if (disabled) return;
214
+
215
+ const newDate = value ? new Date(value) : new Date();
216
+ newDate.setHours(hours);
217
+ newDate.setMinutes(minutes);
218
+
219
+ setTempTime({ hours, minutes });
220
+ onChange?.(newDate);
221
+ };
222
+
223
+ // Handle input click
224
+ const handleInputClick = () => {
225
+ if (!disabled) {
226
+ setIsOpen(true);
227
+ if (isRange) setActiveInput('start');
228
+ }
229
+ };
230
+
231
+ // Handle clear
232
+ const handleClear = () => {
233
+ if (isRange && onRangeChange) {
234
+ onRangeChange({ start: null, end: null });
235
+ } else {
236
+ onChange?.(null);
237
+ }
238
+ setIsOpen(false);
239
+ };
240
+
241
+ // Navigate calendar
242
+ const navigateMonth = (direction: 'prev' | 'next') => {
243
+ const newDate = new Date(viewDate);
244
+ newDate.setMonth(viewDate.getMonth() + (direction === 'prev' ? -1 : 1));
245
+ setViewDate(newDate);
246
+ };
247
+
248
+ // Check if date is selected
249
+ const isDateSelected = (date: Date): boolean => {
250
+ if (isRange && rangeValue) {
251
+ return (rangeValue.start ? isSameDay(date, rangeValue.start) : false) ||
252
+ (rangeValue.end ? isSameDay(date, rangeValue.end) : false);
253
+ }
254
+ return value ? isSameDay(date, value) : false;
255
+ };
256
+
257
+ // Check if date is in range
258
+ const isDateInRange = (date: Date): boolean => {
259
+ if (isRange && rangeValue?.start && rangeValue?.end) {
260
+ return date >= rangeValue.start && date <= rangeValue.end;
261
+ }
262
+ return false;
263
+ };
264
+
265
+ // Utility function to check if dates are same day
266
+ const isSameDay = (date1: Date, date2: Date): boolean => {
267
+ return date1.getDate() === date2.getDate() &&
268
+ date1.getMonth() === date2.getMonth() &&
269
+ date1.getFullYear() === date2.getFullYear();
270
+ };
271
+
272
+ // Check if date is today
273
+ const isToday = (date: Date): boolean => {
274
+ return isSameDay(date, new Date());
275
+ };
276
+
277
+ // Check if date is disabled
278
+ const isDateDisabled = (date: Date): boolean => {
279
+ if (minDate && date < minDate) return true;
280
+ if (maxDate && date > maxDate) return true;
281
+ return false;
282
+ };
283
+
284
+ const variantClasses = {
285
+ default: 'h-10',
286
+ compact: 'h-8 text-sm',
287
+ inline: 'border-0 bg-transparent p-0'
288
+ };
289
+
290
+ const calendarDays = getCalendarDays();
291
+
292
+ if (variant === 'inline') {
293
+ return (
294
+ <div
295
+ className={cn('inline-block', className)}
296
+ data-component-name="DateTimePicker"
297
+ ref={containerRef}
298
+ >
299
+ {/* Inline Calendar */}
300
+ <div className="bg-card border border-border rounded p-4 shadow-category-1">
301
+ {(mode === 'date' || mode === 'datetime') && (
302
+ <div className="space-y-4">
303
+ {/* Calendar Header */}
304
+ <div className="flex items-center justify-between">
305
+ <Button
306
+ variant="ghost"
307
+ size="sm"
308
+ onClick={() => navigateMonth('prev')}
309
+ disabled={disabled}
310
+ className="h-8 w-8 p-0"
311
+ >
312
+ <ChevronLeft className="w-4 h-4" />
313
+ </Button>
314
+ <h3 className="text-sm font-semibold text-foreground">
315
+ {MONTHS[viewDate.getMonth()]} {viewDate.getFullYear()}
316
+ </h3>
317
+ <Button
318
+ variant="ghost"
319
+ size="sm"
320
+ onClick={() => navigateMonth('next')}
321
+ disabled={disabled}
322
+ className="h-8 w-8 p-0"
323
+ >
324
+ <ChevronRight className="w-4 h-4" />
325
+ </Button>
326
+ </div>
327
+
328
+ {/* Calendar Grid */}
329
+ <div className="grid grid-cols-7 gap-1">
330
+ {/* Weekday headers */}
331
+ {WEEKDAYS.map(day => (
332
+ <div key={day} className="text-xs font-medium text-muted-foreground text-center p-2">
333
+ {day}
334
+ </div>
335
+ ))}
336
+
337
+ {/* Calendar days */}
338
+ {calendarDays.map((date, index) => {
339
+ const isCurrentMonth = date.getMonth() === viewDate.getMonth();
340
+ const isSelected = isDateSelected(date);
341
+ const isInRange = isDateInRange(date);
342
+ const isTodayDate = isToday(date);
343
+ const isDisabled = isDateDisabled(date);
344
+
345
+ return (
346
+ <button
347
+ key={index}
348
+ onClick={() => handleDateSelect(date)}
349
+ disabled={disabled || isDisabled}
350
+ className={cn(
351
+ 'h-8 w-8 text-xs rounded transition-colors',
352
+ 'hover:bg-accent hover:text-accent-foreground',
353
+ 'focus:outline-none focus:ring-2 focus:ring-primary/20',
354
+ 'disabled:opacity-50 disabled:cursor-not-allowed',
355
+ !isCurrentMonth && 'text-muted-foreground/50',
356
+ isSelected && 'bg-primary text-primary-foreground hover:bg-primary-hover',
357
+ isInRange && !isSelected && 'bg-primary/20',
358
+ isTodayDate && !isSelected && 'bg-accent text-accent-foreground font-semibold'
359
+ )}
360
+ >
361
+ {date.getDate()}
362
+ </button>
363
+ );
364
+ })}
365
+ </div>
366
+ </div>
367
+ )}
368
+
369
+ {/* Time Picker for inline datetime/time mode */}
370
+ {(mode === 'time' || mode === 'datetime') && (
371
+ <div className={cn('space-y-3', mode === 'datetime' && 'border-t border-border pt-4 mt-4')}>
372
+ <div className="flex items-center gap-2">
373
+ <Clock className="w-4 h-4 text-muted-foreground" />
374
+ <span className="text-sm font-medium text-foreground">Time</span>
375
+ </div>
376
+
377
+ <div className="flex items-center gap-2">
378
+ <select
379
+ value={tempTime.hours}
380
+ onChange={(e) => handleTimeChange(parseInt(e.target.value), tempTime.minutes)}
381
+ disabled={disabled}
382
+ className="px-2 py-1 text-sm border border-border rounded bg-background text-foreground"
383
+ >
384
+ {Array.from({ length: 24 }, (_, i) => (
385
+ <option key={i} value={i}>
386
+ {timeFormat === '12h'
387
+ ? (i === 0 ? '12' : i > 12 ? i - 12 : i)
388
+ : i.toString().padStart(2, '0')
389
+ }
390
+ </option>
391
+ ))}
392
+ </select>
393
+ <span className="text-foreground">:</span>
394
+ <select
395
+ value={tempTime.minutes}
396
+ onChange={(e) => handleTimeChange(tempTime.hours, parseInt(e.target.value))}
397
+ disabled={disabled}
398
+ className="px-2 py-1 text-sm border border-border rounded bg-background text-foreground"
399
+ >
400
+ {Array.from({ length: 60 }, (_, i) => (
401
+ <option key={i} value={i}>
402
+ {i.toString().padStart(2, '0')}
403
+ </option>
404
+ ))}
405
+ </select>
406
+ {timeFormat === '12h' && (
407
+ <select
408
+ value={tempTime.hours >= 12 ? 'PM' : 'AM'}
409
+ onChange={(e) => {
410
+ const isPM = e.target.value === 'PM';
411
+ const newHours = isPM
412
+ ? (tempTime.hours % 12) + 12
413
+ : tempTime.hours % 12;
414
+ handleTimeChange(newHours, tempTime.minutes);
415
+ }}
416
+ disabled={disabled}
417
+ className="px-2 py-1 text-sm border border-border rounded bg-background text-foreground"
418
+ >
419
+ <option value="AM">AM</option>
420
+ <option value="PM">PM</option>
421
+ </select>
422
+ )}
423
+ </div>
424
+ </div>
425
+ )}
426
+ </div>
427
+ </div>
428
+ );
429
+ }
430
+
431
+ return (
432
+ <div
433
+ className={cn('relative', className)}
434
+ data-component-name="DateTimePicker"
435
+ ref={containerRef}
436
+ >
437
+ {/* Input Field */}
438
+ <div className="relative">
439
+ <Input
440
+ ref={inputRef}
441
+ value={getDisplayValue()}
442
+ onClick={handleInputClick}
443
+ placeholder={placeholder || `Select ${mode}...`}
444
+ readOnly
445
+ disabled={disabled}
446
+ aria-label={ariaLabel}
447
+ className={cn(
448
+ variantClasses[variant],
449
+ 'pr-20 cursor-pointer',
450
+ error && 'border-status-error focus:border-status-error focus:ring-status-error/20',
451
+ disabled && 'cursor-not-allowed'
452
+ )}
453
+ {...props}
454
+ />
455
+
456
+ {/* Input Icons */}
457
+ <div className="absolute inset-y-0 right-0 flex items-center pr-3 gap-1">
458
+ {clearable && getDisplayValue() && !disabled && (
459
+ <Button
460
+ variant="ghost"
461
+ size="sm"
462
+ onClick={handleClear}
463
+ className="h-6 w-6 p-0 hover:bg-muted"
464
+ >
465
+ <X className="w-4 h-4" />
466
+ </Button>
467
+ )}
468
+
469
+ <div className="text-muted-foreground">
470
+ {mode === 'time' ? (
471
+ <Clock className="w-4 h-4" />
472
+ ) : (
473
+ <Calendar className="w-4 h-4" />
474
+ )}
475
+ </div>
476
+ </div>
477
+ </div>
478
+
479
+ {/* Dropdown Picker */}
480
+ {isOpen && (
481
+ <div className="absolute top-full left-0 z-50 mt-1 bg-card border border-border rounded shadow-category-1 p-4 min-w-[300px]">
482
+ {(mode === 'date' || mode === 'datetime') && (
483
+ <div className="space-y-4">
484
+ {/* Calendar Header */}
485
+ <div className="flex items-center justify-between">
486
+ <Button
487
+ variant="ghost"
488
+ size="sm"
489
+ onClick={() => navigateMonth('prev')}
490
+ disabled={disabled}
491
+ className="h-8 w-8 p-0"
492
+ >
493
+ <ChevronLeft className="w-4 h-4" />
494
+ </Button>
495
+ <h3 className="text-sm font-semibold text-foreground">
496
+ {MONTHS[viewDate.getMonth()]} {viewDate.getFullYear()}
497
+ </h3>
498
+ <Button
499
+ variant="ghost"
500
+ size="sm"
501
+ onClick={() => navigateMonth('next')}
502
+ disabled={disabled}
503
+ className="h-8 w-8 p-0"
504
+ >
505
+ <ChevronRight className="w-4 h-4" />
506
+ </Button>
507
+ </div>
508
+
509
+ {/* Calendar Grid */}
510
+ <div className="grid grid-cols-7 gap-1">
511
+ {/* Weekday headers */}
512
+ {WEEKDAYS.map(day => (
513
+ <div key={day} className="text-xs font-medium text-muted-foreground text-center p-2">
514
+ {day}
515
+ </div>
516
+ ))}
517
+
518
+ {/* Calendar days */}
519
+ {calendarDays.map((date, index) => {
520
+ const isCurrentMonth = date.getMonth() === viewDate.getMonth();
521
+ const isSelected = isDateSelected(date);
522
+ const isInRange = isDateInRange(date);
523
+ const isTodayDate = isToday(date);
524
+ const isDisabled = isDateDisabled(date);
525
+
526
+ return (
527
+ <button
528
+ key={index}
529
+ onClick={() => handleDateSelect(date)}
530
+ disabled={disabled || isDisabled}
531
+ className={cn(
532
+ 'h-8 w-8 text-xs rounded transition-colors',
533
+ 'hover:bg-accent hover:text-accent-foreground',
534
+ 'focus:outline-none focus:ring-2 focus:ring-primary/20',
535
+ 'disabled:opacity-50 disabled:cursor-not-allowed',
536
+ !isCurrentMonth && 'text-muted-foreground/50',
537
+ isSelected && 'bg-primary text-primary-foreground hover:bg-primary-hover',
538
+ isInRange && !isSelected && 'bg-primary/20',
539
+ isTodayDate && !isSelected && 'bg-accent text-accent-foreground font-semibold'
540
+ )}
541
+ >
542
+ {date.getDate()}
543
+ </button>
544
+ );
545
+ })}
546
+ </div>
547
+ </div>
548
+ )}
549
+
550
+ {/* Time Picker */}
551
+ {(mode === 'time' || mode === 'datetime') && (
552
+ <div className={cn('space-y-3', mode === 'datetime' && 'border-t border-border pt-4 mt-4')}>
553
+ <div className="flex items-center gap-2">
554
+ <Clock className="w-4 h-4 text-muted-foreground" />
555
+ <span className="text-sm font-medium text-foreground">Time</span>
556
+ </div>
557
+
558
+ <div className="flex items-center gap-2">
559
+ <select
560
+ value={tempTime.hours}
561
+ onChange={(e) => handleTimeChange(parseInt(e.target.value), tempTime.minutes)}
562
+ disabled={disabled}
563
+ className="px-2 py-1 text-sm border border-border rounded bg-background text-foreground"
564
+ >
565
+ {Array.from({ length: 24 }, (_, i) => (
566
+ <option key={i} value={i}>
567
+ {timeFormat === '12h'
568
+ ? (i === 0 ? '12' : i > 12 ? i - 12 : i)
569
+ : i.toString().padStart(2, '0')
570
+ }
571
+ </option>
572
+ ))}
573
+ </select>
574
+ <span className="text-foreground">:</span>
575
+ <select
576
+ value={tempTime.minutes}
577
+ onChange={(e) => handleTimeChange(tempTime.hours, parseInt(e.target.value))}
578
+ disabled={disabled}
579
+ className="px-2 py-1 text-sm border border-border rounded bg-background text-foreground"
580
+ >
581
+ {Array.from({ length: 60 }, (_, i) => (
582
+ <option key={i} value={i}>
583
+ {i.toString().padStart(2, '0')}
584
+ </option>
585
+ ))}
586
+ </select>
587
+ {timeFormat === '12h' && (
588
+ <select
589
+ value={tempTime.hours >= 12 ? 'PM' : 'AM'}
590
+ onChange={(e) => {
591
+ const isPM = e.target.value === 'PM';
592
+ const newHours = isPM
593
+ ? (tempTime.hours % 12) + 12
594
+ : tempTime.hours % 12;
595
+ handleTimeChange(newHours, tempTime.minutes);
596
+ }}
597
+ disabled={disabled}
598
+ className="px-2 py-1 text-sm border border-border rounded bg-background text-foreground"
599
+ >
600
+ <option value="AM">AM</option>
601
+ <option value="PM">PM</option>
602
+ </select>
603
+ )}
604
+ </div>
605
+ </div>
606
+ )}
607
+ </div>
608
+ )}
609
+ </div>
610
+ );
611
+ };
@@ -0,0 +1,2 @@
1
+ export { DateTimePicker } from './DateTimePicker';
2
+ export type { DateTimePickerProps } from './DateTimePicker';