@pattern-stack/frontend-patterns 0.1.2 → 0.2.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (676) hide show
  1. package/CHANGELOG.md +80 -0
  2. package/README.md +17 -2
  3. package/cli/commands/generate-hooks.ts +316 -0
  4. package/cli/commands/init.ts +33 -0
  5. package/cli/commands/scaffold.ts +224 -0
  6. package/cli/index.ts +122 -0
  7. package/cli/src/codegen/openapi/client-generator.js +659 -0
  8. package/cli/src/codegen/openapi/hook-generator.js +725 -0
  9. package/cli/src/codegen/openapi/parser.js +274 -0
  10. package/cli/src/codegen/openapi/type-generator.js +329 -0
  11. package/dist/atoms/components/core/Avatar/Avatar.d.ts +41 -0
  12. package/dist/atoms/components/core/Avatar/Avatar.d.ts.map +1 -0
  13. package/dist/atoms/components/core/Avatar/index.d.ts +2 -0
  14. package/dist/atoms/components/core/Avatar/index.d.ts.map +1 -0
  15. package/dist/atoms/components/core/Badge/Badge.d.ts +38 -0
  16. package/dist/atoms/components/core/Badge/Badge.d.ts.map +1 -0
  17. package/dist/atoms/components/core/Badge/index.d.ts +2 -0
  18. package/dist/atoms/components/core/Badge/index.d.ts.map +1 -0
  19. package/dist/atoms/components/core/Button/Button.d.ts +28 -0
  20. package/dist/atoms/components/core/Button/Button.d.ts.map +1 -0
  21. package/dist/atoms/components/core/Button/index.d.ts +3 -0
  22. package/dist/atoms/components/core/Button/index.d.ts.map +1 -0
  23. package/dist/atoms/components/core/Card/Card.d.ts +41 -0
  24. package/dist/atoms/components/core/Card/Card.d.ts.map +1 -0
  25. package/dist/atoms/components/core/Card/index.d.ts +3 -0
  26. package/dist/atoms/components/core/Card/index.d.ts.map +1 -0
  27. package/dist/atoms/components/core/Checkbox/Checkbox.d.ts +28 -0
  28. package/dist/atoms/components/core/Checkbox/Checkbox.d.ts.map +1 -0
  29. package/dist/atoms/components/core/Checkbox/index.d.ts +3 -0
  30. package/dist/atoms/components/core/Checkbox/index.d.ts.map +1 -0
  31. package/dist/atoms/components/core/Input/Input.d.ts +37 -0
  32. package/dist/atoms/components/core/Input/Input.d.ts.map +1 -0
  33. package/dist/atoms/components/core/Input/index.d.ts +3 -0
  34. package/dist/atoms/components/core/Input/index.d.ts.map +1 -0
  35. package/dist/atoms/components/core/Label/Label.d.ts +22 -0
  36. package/dist/atoms/components/core/Label/Label.d.ts.map +1 -0
  37. package/dist/atoms/components/core/Label/index.d.ts +3 -0
  38. package/dist/atoms/components/core/Label/index.d.ts.map +1 -0
  39. package/dist/atoms/components/core/Select/Select.d.ts +42 -0
  40. package/dist/atoms/components/core/Select/Select.d.ts.map +1 -0
  41. package/dist/atoms/components/core/Select/index.d.ts +3 -0
  42. package/dist/atoms/components/core/Select/index.d.ts.map +1 -0
  43. package/dist/atoms/components/core/Spinner/Spinner.d.ts +25 -0
  44. package/dist/atoms/components/core/Spinner/Spinner.d.ts.map +1 -0
  45. package/dist/atoms/components/core/Spinner/index.d.ts +3 -0
  46. package/dist/atoms/components/core/Spinner/index.d.ts.map +1 -0
  47. package/dist/atoms/components/core/Switch/Switch.d.ts +35 -0
  48. package/dist/atoms/components/core/Switch/Switch.d.ts.map +1 -0
  49. package/dist/atoms/components/core/Switch/index.d.ts +2 -0
  50. package/dist/atoms/components/core/Switch/index.d.ts.map +1 -0
  51. package/dist/atoms/components/core/index.d.ts +11 -0
  52. package/dist/atoms/components/core/index.d.ts.map +1 -0
  53. package/dist/atoms/components/data/ActivityFeed/ActivityFeed.d.ts +4 -0
  54. package/dist/atoms/components/data/ActivityFeed/ActivityFeed.d.ts.map +1 -0
  55. package/dist/atoms/components/data/ActivityFeed/ActivityFeedItem.d.ts +9 -0
  56. package/dist/atoms/components/data/ActivityFeed/ActivityFeedItem.d.ts.map +1 -0
  57. package/dist/atoms/components/data/ActivityFeed/index.d.ts +4 -0
  58. package/dist/atoms/components/data/ActivityFeed/index.d.ts.map +1 -0
  59. package/dist/atoms/components/data/ActivityFeed/types.d.ts +26 -0
  60. package/dist/atoms/components/data/ActivityFeed/types.d.ts.map +1 -0
  61. package/dist/atoms/components/data/ActivityFeed/utils.d.ts +5 -0
  62. package/dist/atoms/components/data/ActivityFeed/utils.d.ts.map +1 -0
  63. package/dist/atoms/components/data/Chart/Chart.d.ts +84 -0
  64. package/dist/atoms/components/data/Chart/Chart.d.ts.map +1 -0
  65. package/dist/atoms/components/data/Chart/index.d.ts +3 -0
  66. package/dist/atoms/components/data/Chart/index.d.ts.map +1 -0
  67. package/dist/atoms/components/data/DataBadge/DataBadge.d.ts +18 -0
  68. package/dist/atoms/components/data/DataBadge/DataBadge.d.ts.map +1 -0
  69. package/dist/atoms/components/data/DataBadge/index.d.ts +2 -0
  70. package/dist/atoms/components/data/DataBadge/index.d.ts.map +1 -0
  71. package/dist/atoms/components/data/DataTable/DataTable.d.ts +5 -0
  72. package/dist/atoms/components/data/DataTable/DataTable.d.ts.map +1 -0
  73. package/dist/atoms/components/data/DataTable/DataTable.types.d.ts +51 -0
  74. package/dist/atoms/components/data/DataTable/DataTable.types.d.ts.map +1 -0
  75. package/dist/atoms/{composed → components/data}/DataTable/TableCellWithTooltip.d.ts +1 -1
  76. package/dist/atoms/components/data/DataTable/TableCellWithTooltip.d.ts.map +1 -0
  77. package/dist/atoms/components/data/DataTable/index.d.ts +3 -0
  78. package/dist/atoms/components/data/DataTable/index.d.ts.map +1 -0
  79. package/dist/atoms/{composed → components/data}/DetailedCard/DetailedCard.d.ts +4 -4
  80. package/dist/atoms/components/data/DetailedCard/DetailedCard.d.ts.map +1 -0
  81. package/dist/atoms/components/data/DetailedCard/index.d.ts +3 -0
  82. package/dist/atoms/components/data/DetailedCard/index.d.ts.map +1 -0
  83. package/dist/atoms/components/data/EntityIcon/EntityIcon.d.ts +24 -0
  84. package/dist/atoms/components/data/EntityIcon/EntityIcon.d.ts.map +1 -0
  85. package/dist/atoms/components/data/EntityIcon/index.d.ts +2 -0
  86. package/dist/atoms/components/data/EntityIcon/index.d.ts.map +1 -0
  87. package/dist/atoms/components/data/IconBadge/IconBadge.d.ts +17 -0
  88. package/dist/atoms/components/data/IconBadge/IconBadge.d.ts.map +1 -0
  89. package/dist/atoms/components/data/IconBadge/index.d.ts +3 -0
  90. package/dist/atoms/components/data/IconBadge/index.d.ts.map +1 -0
  91. package/dist/atoms/components/data/ListCard/ListCard.d.ts +32 -0
  92. package/dist/atoms/components/data/ListCard/ListCard.d.ts.map +1 -0
  93. package/dist/atoms/components/data/ListCard/index.d.ts +2 -0
  94. package/dist/atoms/components/data/ListCard/index.d.ts.map +1 -0
  95. package/dist/atoms/{composed → components/data}/ProgressBar/ProgressBar.d.ts +5 -5
  96. package/dist/atoms/components/data/ProgressBar/ProgressBar.d.ts.map +1 -0
  97. package/dist/atoms/components/data/ProgressBar/index.d.ts +2 -0
  98. package/dist/atoms/components/data/ProgressBar/index.d.ts.map +1 -0
  99. package/dist/atoms/{composed → components/data}/StatCard/StatCard.d.ts +3 -3
  100. package/dist/atoms/components/data/StatCard/StatCard.d.ts.map +1 -0
  101. package/dist/atoms/components/data/StatCard/index.d.ts +2 -0
  102. package/dist/atoms/components/data/StatCard/index.d.ts.map +1 -0
  103. package/dist/atoms/components/data/Table/Table.d.ts +41 -0
  104. package/dist/atoms/components/data/Table/Table.d.ts.map +1 -0
  105. package/dist/atoms/components/data/Table/index.d.ts +2 -0
  106. package/dist/atoms/components/data/Table/index.d.ts.map +1 -0
  107. package/dist/atoms/components/data/TruncatedText/TruncatedText.d.ts +26 -0
  108. package/dist/atoms/components/data/TruncatedText/TruncatedText.d.ts.map +1 -0
  109. package/dist/atoms/components/data/TruncatedText/index.d.ts +2 -0
  110. package/dist/atoms/components/data/TruncatedText/index.d.ts.map +1 -0
  111. package/dist/atoms/components/data/index.d.ts +13 -0
  112. package/dist/atoms/components/data/index.d.ts.map +1 -0
  113. package/dist/atoms/components/domain/SalesPanel/SalesPanel.d.ts +19 -0
  114. package/dist/atoms/components/domain/SalesPanel/SalesPanel.d.ts.map +1 -0
  115. package/dist/atoms/components/domain/SalesPanel/index.d.ts +2 -0
  116. package/dist/atoms/components/domain/SalesPanel/index.d.ts.map +1 -0
  117. package/dist/atoms/components/domain/SalesPanel/mockSalesData.d.ts +63 -0
  118. package/dist/atoms/components/domain/SalesPanel/mockSalesData.d.ts.map +1 -0
  119. package/dist/atoms/components/domain/index.d.ts +2 -0
  120. package/dist/atoms/components/domain/index.d.ts.map +1 -0
  121. package/dist/atoms/{composed → components/feedback}/Alert/Alert.d.ts +4 -4
  122. package/dist/atoms/components/feedback/Alert/Alert.d.ts.map +1 -0
  123. package/dist/atoms/components/feedback/Alert/index.d.ts +2 -0
  124. package/dist/atoms/components/feedback/Alert/index.d.ts.map +1 -0
  125. package/dist/atoms/{composed → components/feedback}/EmptyState/EmptyState.d.ts +3 -3
  126. package/dist/atoms/components/feedback/EmptyState/EmptyState.d.ts.map +1 -0
  127. package/dist/atoms/components/feedback/EmptyState/index.d.ts +2 -0
  128. package/dist/atoms/components/feedback/EmptyState/index.d.ts.map +1 -0
  129. package/dist/atoms/components/feedback/ErrorBoundary/ErrorBoundary.d.ts +61 -0
  130. package/dist/atoms/components/feedback/ErrorBoundary/ErrorBoundary.d.ts.map +1 -0
  131. package/dist/atoms/components/feedback/ErrorBoundary/index.d.ts +2 -0
  132. package/dist/atoms/components/feedback/ErrorBoundary/index.d.ts.map +1 -0
  133. package/dist/atoms/components/feedback/Skeleton/Skeleton.d.ts +67 -0
  134. package/dist/atoms/components/feedback/Skeleton/Skeleton.d.ts.map +1 -0
  135. package/dist/atoms/components/feedback/Skeleton/index.d.ts +2 -0
  136. package/dist/atoms/components/feedback/Skeleton/index.d.ts.map +1 -0
  137. package/dist/atoms/{composed → components/feedback}/Toast/Toast.d.ts +4 -4
  138. package/dist/atoms/components/feedback/Toast/Toast.d.ts.map +1 -0
  139. package/dist/atoms/{composed → components/feedback}/Toast/index.d.ts +1 -1
  140. package/dist/atoms/components/feedback/Toast/index.d.ts.map +1 -0
  141. package/dist/atoms/components/feedback/index.d.ts +6 -0
  142. package/dist/atoms/components/feedback/index.d.ts.map +1 -0
  143. package/dist/atoms/{composed → components/forms}/DateTimePicker/DateTimePicker.d.ts +6 -6
  144. package/dist/atoms/components/forms/DateTimePicker/DateTimePicker.d.ts.map +1 -0
  145. package/dist/atoms/components/forms/DateTimePicker/index.d.ts +3 -0
  146. package/dist/atoms/components/forms/DateTimePicker/index.d.ts.map +1 -0
  147. package/dist/atoms/{composed → components/forms}/FileUpload/FileUpload.d.ts +3 -3
  148. package/dist/atoms/components/forms/FileUpload/FileUpload.d.ts.map +1 -0
  149. package/dist/atoms/components/forms/FileUpload/index.d.ts +3 -0
  150. package/dist/atoms/components/forms/FileUpload/index.d.ts.map +1 -0
  151. package/dist/atoms/{composed → components/forms}/FormField/FormField.d.ts +2 -2
  152. package/dist/atoms/components/forms/FormField/FormField.d.ts.map +1 -0
  153. package/dist/atoms/components/forms/FormField/index.d.ts +2 -0
  154. package/dist/atoms/components/forms/FormField/index.d.ts.map +1 -0
  155. package/dist/atoms/components/forms/index.d.ts +4 -0
  156. package/dist/atoms/components/forms/index.d.ts.map +1 -0
  157. package/dist/atoms/components/index.d.ts +10 -0
  158. package/dist/atoms/components/index.d.ts.map +1 -0
  159. package/dist/atoms/{composed → components/layout}/Accordion/Accordion.d.ts +3 -3
  160. package/dist/atoms/components/layout/Accordion/Accordion.d.ts.map +1 -0
  161. package/dist/atoms/components/layout/Accordion/index.d.ts +2 -0
  162. package/dist/atoms/components/layout/Accordion/index.d.ts.map +1 -0
  163. package/dist/atoms/{composed → components/layout}/Breadcrumb/Breadcrumb.d.ts +2 -3
  164. package/dist/atoms/components/layout/Breadcrumb/Breadcrumb.d.ts.map +1 -0
  165. package/dist/atoms/components/layout/Breadcrumb/index.d.ts +2 -0
  166. package/dist/atoms/components/layout/Breadcrumb/index.d.ts.map +1 -0
  167. package/dist/atoms/components/layout/Dialog/Dialog.d.ts +45 -0
  168. package/dist/atoms/components/layout/Dialog/Dialog.d.ts.map +1 -0
  169. package/dist/atoms/components/layout/Dialog/index.d.ts +3 -0
  170. package/dist/atoms/components/layout/Dialog/index.d.ts.map +1 -0
  171. package/dist/atoms/components/layout/Dropdown/Dropdown.d.ts +40 -0
  172. package/dist/atoms/components/layout/Dropdown/Dropdown.d.ts.map +1 -0
  173. package/dist/atoms/components/layout/Dropdown/index.d.ts +3 -0
  174. package/dist/atoms/components/layout/Dropdown/index.d.ts.map +1 -0
  175. package/dist/atoms/components/layout/Modal/Modal.d.ts +18 -0
  176. package/dist/atoms/components/layout/Modal/Modal.d.ts.map +1 -0
  177. package/dist/atoms/components/layout/Modal/index.d.ts +3 -0
  178. package/dist/atoms/components/layout/Modal/index.d.ts.map +1 -0
  179. package/dist/atoms/components/layout/Tabs/Tabs.d.ts +46 -0
  180. package/dist/atoms/components/layout/Tabs/Tabs.d.ts.map +1 -0
  181. package/dist/atoms/components/layout/Tabs/index.d.ts +2 -0
  182. package/dist/atoms/components/layout/Tabs/index.d.ts.map +1 -0
  183. package/dist/atoms/{composed → components/layout}/Tooltip/Tooltip.d.ts +6 -6
  184. package/dist/atoms/components/layout/Tooltip/Tooltip.d.ts.map +1 -0
  185. package/dist/atoms/components/layout/Tooltip/index.d.ts +2 -0
  186. package/dist/atoms/components/layout/Tooltip/index.d.ts.map +1 -0
  187. package/dist/atoms/components/layout/index.d.ts +8 -0
  188. package/dist/atoms/components/layout/index.d.ts.map +1 -0
  189. package/dist/atoms/{composed → components/navigation}/GlobalSearch/GlobalSearch.d.ts +2 -3
  190. package/dist/atoms/components/navigation/GlobalSearch/GlobalSearch.d.ts.map +1 -0
  191. package/dist/atoms/components/navigation/GlobalSearch/index.d.ts +2 -0
  192. package/dist/atoms/components/navigation/GlobalSearch/index.d.ts.map +1 -0
  193. package/dist/atoms/components/navigation/index.d.ts +2 -0
  194. package/dist/atoms/components/navigation/index.d.ts.map +1 -0
  195. package/dist/atoms/{composed → components/theme}/ColorSwatch/ColorSwatch.d.ts +2 -2
  196. package/dist/atoms/components/theme/ColorSwatch/ColorSwatch.d.ts.map +1 -0
  197. package/dist/atoms/components/theme/ColorSwatch/index.d.ts +2 -0
  198. package/dist/atoms/components/theme/ColorSwatch/index.d.ts.map +1 -0
  199. package/dist/atoms/components/theme/DarkModeToggle.d.ts.map +1 -0
  200. package/dist/atoms/{composed → components/theme}/PaletteSwitcher.d.ts +1 -1
  201. package/dist/atoms/components/theme/PaletteSwitcher.d.ts.map +1 -0
  202. package/dist/atoms/components/theme/StyleGuide.d.ts +3 -0
  203. package/dist/atoms/components/theme/StyleGuide.d.ts.map +1 -0
  204. package/dist/atoms/components/theme/index.d.ts +5 -0
  205. package/dist/atoms/components/theme/index.d.ts.map +1 -0
  206. package/dist/atoms/{composed → components/user}/UserAvatar/UserAvatar.d.ts +2 -3
  207. package/dist/atoms/components/user/UserAvatar/UserAvatar.d.ts.map +1 -0
  208. package/dist/atoms/components/user/UserAvatar/index.d.ts +2 -0
  209. package/dist/atoms/components/user/UserAvatar/index.d.ts.map +1 -0
  210. package/dist/atoms/{composed → components/user}/UserMenu/UserMenu.d.ts +2 -3
  211. package/dist/atoms/components/user/UserMenu/UserMenu.d.ts.map +1 -0
  212. package/dist/atoms/components/user/UserMenu/index.d.ts +2 -0
  213. package/dist/atoms/components/user/UserMenu/index.d.ts.map +1 -0
  214. package/dist/atoms/components/user/index.d.ts +3 -0
  215. package/dist/atoms/components/user/index.d.ts.map +1 -0
  216. package/dist/atoms/config/responsive.d.ts +147 -0
  217. package/dist/atoms/config/responsive.d.ts.map +1 -0
  218. package/dist/atoms/hooks/index.d.ts +5 -0
  219. package/dist/atoms/hooks/index.d.ts.map +1 -0
  220. package/dist/atoms/hooks/use-toast.d.ts +16 -0
  221. package/dist/atoms/hooks/use-toast.d.ts.map +1 -0
  222. package/dist/atoms/hooks/useApi.d.ts +2 -2
  223. package/dist/atoms/hooks/useApi.d.ts.map +1 -1
  224. package/dist/atoms/hooks/useResponsive.d.ts +42 -0
  225. package/dist/atoms/hooks/useResponsive.d.ts.map +1 -0
  226. package/dist/atoms/index.d.ts +6 -8
  227. package/dist/atoms/index.d.ts.map +1 -1
  228. package/dist/atoms/primitives/Badge.d.ts +10 -0
  229. package/dist/atoms/primitives/Badge.d.ts.map +1 -0
  230. package/dist/atoms/{ui → primitives}/ErrorBoundary.d.ts +3 -3
  231. package/dist/atoms/primitives/ErrorBoundary.d.ts.map +1 -0
  232. package/dist/atoms/primitives/Select.d.ts +30 -0
  233. package/dist/atoms/primitives/Select.d.ts.map +1 -0
  234. package/dist/atoms/primitives/Switch.d.ts +10 -0
  235. package/dist/atoms/primitives/Switch.d.ts.map +1 -0
  236. package/dist/atoms/primitives/Tabs.d.ts +30 -0
  237. package/dist/atoms/primitives/Tabs.d.ts.map +1 -0
  238. package/dist/atoms/primitives/avatar.d.ts.map +1 -0
  239. package/dist/atoms/primitives/button.d.ts +11 -0
  240. package/dist/atoms/primitives/button.d.ts.map +1 -0
  241. package/dist/atoms/primitives/button.variants.d.ts +7 -0
  242. package/dist/atoms/primitives/button.variants.d.ts.map +1 -0
  243. package/dist/atoms/{ui → primitives}/card.d.ts +2 -1
  244. package/dist/atoms/primitives/card.d.ts.map +1 -0
  245. package/dist/atoms/primitives/checkbox.d.ts +12 -0
  246. package/dist/atoms/primitives/checkbox.d.ts.map +1 -0
  247. package/dist/atoms/primitives/dialog.d.ts +34 -0
  248. package/dist/atoms/primitives/dialog.d.ts.map +1 -0
  249. package/dist/atoms/primitives/dropdown-menu.d.ts.map +1 -0
  250. package/dist/atoms/primitives/index.d.ts +17 -0
  251. package/dist/atoms/primitives/index.d.ts.map +1 -0
  252. package/dist/atoms/primitives/input.d.ts.map +1 -0
  253. package/dist/atoms/{ui → primitives}/label.d.ts +4 -1
  254. package/dist/atoms/primitives/label.d.ts.map +1 -0
  255. package/dist/atoms/primitives/skeleton.d.ts.map +1 -0
  256. package/dist/atoms/{ui → primitives}/spinner.d.ts +4 -4
  257. package/dist/atoms/primitives/spinner.d.ts.map +1 -0
  258. package/dist/atoms/primitives/table.d.ts.map +1 -0
  259. package/dist/atoms/services/api/client.d.ts +11 -2
  260. package/dist/atoms/services/api/client.d.ts.map +1 -1
  261. package/dist/atoms/services/auth-service.d.ts +1 -1
  262. package/dist/atoms/services/auth-service.d.ts.map +1 -1
  263. package/dist/atoms/services/health.d.ts +2 -2
  264. package/dist/atoms/services/index.d.ts +3 -3
  265. package/dist/atoms/shared/config/dashboard-sizes.d.ts +17 -17
  266. package/dist/atoms/shared/config/dashboard-sizes.d.ts.map +1 -1
  267. package/dist/atoms/shared/config/environment.d.ts.map +1 -1
  268. package/dist/atoms/shared/index.d.ts +4 -3
  269. package/dist/atoms/shared/index.d.ts.map +1 -1
  270. package/dist/atoms/types/auth.d.ts +11 -1
  271. package/dist/atoms/types/auth.d.ts.map +1 -1
  272. package/dist/atoms/types/entity-config.d.ts +117 -0
  273. package/dist/atoms/types/entity-config.d.ts.map +1 -0
  274. package/dist/atoms/types/generated.d.ts.map +1 -1
  275. package/dist/atoms/types/index.d.ts +6 -3
  276. package/dist/atoms/types/index.d.ts.map +1 -1
  277. package/dist/atoms/types/loading.d.ts +1 -1
  278. package/dist/atoms/types/navigation.d.ts +30 -0
  279. package/dist/atoms/types/navigation.d.ts.map +1 -0
  280. package/dist/atoms/types/ui-config.d.ts +50 -0
  281. package/dist/atoms/types/ui-config.d.ts.map +1 -0
  282. package/dist/atoms/utils/animations.d.ts +7 -7
  283. package/dist/atoms/utils/animations.d.ts.map +1 -1
  284. package/dist/atoms/utils/color-manager.d.ts +68 -0
  285. package/dist/atoms/utils/color-manager.d.ts.map +1 -0
  286. package/dist/atoms/utils/debounce.d.ts +6 -0
  287. package/dist/atoms/utils/debounce.d.ts.map +1 -0
  288. package/dist/atoms/utils/field-detection.d.ts +15 -0
  289. package/dist/atoms/utils/field-detection.d.ts.map +1 -0
  290. package/dist/atoms/utils/icon-map.d.ts +68 -0
  291. package/dist/atoms/utils/icon-map.d.ts.map +1 -0
  292. package/dist/atoms/utils/icon-resolver.d.ts +16 -0
  293. package/dist/atoms/utils/icon-resolver.d.ts.map +1 -0
  294. package/dist/atoms/utils/index.d.ts +5 -0
  295. package/dist/atoms/utils/index.d.ts.map +1 -0
  296. package/dist/atoms/utils/metric-engine.d.ts +22 -0
  297. package/dist/atoms/utils/metric-engine.d.ts.map +1 -0
  298. package/dist/atoms/utils/tooltip-helpers.d.ts +1 -1
  299. package/dist/atoms/utils/tooltip-helpers.d.ts.map +1 -1
  300. package/dist/atoms/utils/ui-mapping.d.ts +19 -0
  301. package/dist/atoms/utils/ui-mapping.d.ts.map +1 -0
  302. package/dist/atoms/utils/utils.d.ts +7 -1
  303. package/dist/atoms/utils/utils.d.ts.map +1 -1
  304. package/dist/codegen/openapi/bulk-types.d.ts +142 -0
  305. package/dist/codegen/openapi/bulk-types.d.ts.map +1 -0
  306. package/dist/features/auth/components/LoginForm.d.ts.map +1 -1
  307. package/dist/features/auth/components/LogoutButton.d.ts.map +1 -1
  308. package/dist/features/auth/components/ProtectedRoute.d.ts +2 -2
  309. package/dist/features/auth/components/ProtectedRoute.d.ts.map +1 -1
  310. package/dist/features/auth/components/index.d.ts +3 -3
  311. package/dist/features/auth/hooks/auth-context.d.ts +3 -0
  312. package/dist/features/auth/hooks/auth-context.d.ts.map +1 -0
  313. package/dist/features/auth/hooks/index.d.ts +4 -2
  314. package/dist/features/auth/hooks/index.d.ts.map +1 -1
  315. package/dist/features/auth/hooks/use-auth.d.ts +3 -0
  316. package/dist/features/auth/hooks/use-auth.d.ts.map +1 -0
  317. package/dist/features/auth/hooks/useAuth.d.ts +3 -4
  318. package/dist/features/auth/hooks/useAuth.d.ts.map +1 -1
  319. package/dist/features/auth/hooks/useAuthContext.d.ts +7 -0
  320. package/dist/features/auth/hooks/useAuthContext.d.ts.map +1 -0
  321. package/dist/features/auth/hooks/usePermissions.d.ts +3 -3
  322. package/dist/features/auth/index.d.ts +3 -2
  323. package/dist/features/auth/index.d.ts.map +1 -1
  324. package/dist/features/auth/providers/MockAuthProvider.d.ts +8 -0
  325. package/dist/features/auth/providers/MockAuthProvider.d.ts.map +1 -0
  326. package/dist/features/auth/providers/index.d.ts +3 -0
  327. package/dist/features/auth/providers/index.d.ts.map +1 -0
  328. package/dist/features/auth/providers/mock-auth-context.d.ts +3 -0
  329. package/dist/features/auth/providers/mock-auth-context.d.ts.map +1 -0
  330. package/dist/features/auth/providers/use-mock-auth.d.ts +3 -0
  331. package/dist/features/auth/providers/use-mock-auth.d.ts.map +1 -0
  332. package/dist/features/auth/services/mock-auth-service.d.ts +17 -0
  333. package/dist/features/auth/services/mock-auth-service.d.ts.map +1 -0
  334. package/dist/features/index.d.ts +1 -1
  335. package/dist/frontend-patterns.css +5069 -516
  336. package/dist/index.d.ts +17 -9
  337. package/dist/index.d.ts.map +1 -1
  338. package/dist/index.es.js +27080 -8451
  339. package/dist/index.es.js.map +1 -1
  340. package/dist/index.js +27103 -8453
  341. package/dist/index.js.map +1 -1
  342. package/dist/molecules/feedback/index.d.ts +2 -0
  343. package/dist/molecules/feedback/index.d.ts.map +1 -0
  344. package/dist/molecules/forms/FormGroup.d.ts +2 -2
  345. package/dist/molecules/forms/FormGroup.d.ts.map +1 -1
  346. package/dist/molecules/forms/SearchInput.d.ts +1 -1
  347. package/dist/molecules/forms/SearchInput.d.ts.map +1 -1
  348. package/dist/molecules/forms/index.d.ts +2 -2
  349. package/dist/molecules/forms/index.d.ts.map +1 -1
  350. package/dist/molecules/index.d.ts +3 -3
  351. package/dist/molecules/layout/AppHeader/AppHeader.d.ts +1 -1
  352. package/dist/molecules/layout/AppHeader/AppHeader.d.ts.map +1 -1
  353. package/dist/molecules/layout/AppHeader/index.d.ts +1 -1
  354. package/dist/molecules/layout/BulkSelectionBar.d.ts +15 -0
  355. package/dist/molecules/layout/BulkSelectionBar.d.ts.map +1 -0
  356. package/dist/molecules/layout/DashboardWithSidePanel/DashboardWithSidePanel.d.ts +16 -0
  357. package/dist/molecules/layout/DashboardWithSidePanel/DashboardWithSidePanel.d.ts.map +1 -0
  358. package/dist/molecules/layout/DashboardWithSidePanel/index.d.ts +2 -0
  359. package/dist/molecules/layout/DashboardWithSidePanel/index.d.ts.map +1 -0
  360. package/dist/molecules/layout/NavigationContext.d.ts +9 -0
  361. package/dist/molecules/layout/NavigationContext.d.ts.map +1 -0
  362. package/dist/molecules/layout/PageTemplate.d.ts +1 -1
  363. package/dist/molecules/layout/PageTemplate.d.ts.map +1 -1
  364. package/dist/molecules/layout/SectionHeader/SectionHeader.d.ts +4 -4
  365. package/dist/molecules/layout/SectionHeader/SectionHeader.d.ts.map +1 -1
  366. package/dist/molecules/layout/SectionHeader/index.d.ts +1 -1
  367. package/dist/molecules/layout/ShowcaseSection.d.ts +4 -4
  368. package/dist/molecules/layout/ShowcaseSection.d.ts.map +1 -1
  369. package/dist/molecules/layout/Sidebar.d.ts.map +1 -1
  370. package/dist/molecules/layout/SidebarButton/SidebarButton.d.ts +3 -1
  371. package/dist/molecules/layout/SidebarButton/SidebarButton.d.ts.map +1 -1
  372. package/dist/molecules/layout/SidebarButton/index.d.ts +1 -1
  373. package/dist/molecules/layout/SidebarContext.d.ts +1 -8
  374. package/dist/molecules/layout/SidebarContext.d.ts.map +1 -1
  375. package/dist/molecules/layout/index.d.ts +14 -7
  376. package/dist/molecules/layout/index.d.ts.map +1 -1
  377. package/dist/molecules/layout/navigation-context.d.ts +9 -0
  378. package/dist/molecules/layout/navigation-context.d.ts.map +1 -0
  379. package/dist/molecules/layout/sidebar-context.d.ts +7 -0
  380. package/dist/molecules/layout/sidebar-context.d.ts.map +1 -0
  381. package/dist/molecules/layout/use-navigation.d.ts +2 -0
  382. package/dist/molecules/layout/use-navigation.d.ts.map +1 -0
  383. package/dist/molecules/layout/use-sidebar.d.ts +2 -0
  384. package/dist/molecules/layout/use-sidebar.d.ts.map +1 -0
  385. package/dist/molecules/navigation/NavMenu.d.ts +2 -2
  386. package/dist/molecules/navigation/NavMenu.d.ts.map +1 -1
  387. package/dist/molecules/navigation/Pagination.d.ts +2 -2
  388. package/dist/molecules/navigation/index.d.ts +2 -2
  389. package/dist/organisms/index.d.ts +1 -1
  390. package/dist/organisms/showcase/ComponentShowcasePage.d.ts +1 -1
  391. package/dist/organisms/showcase/ComponentShowcasePage.d.ts.map +1 -1
  392. package/dist/templates/AuthTemplate.d.ts +4 -4
  393. package/dist/templates/AuthTemplate.d.ts.map +1 -1
  394. package/dist/templates/ComponentShowcaseTemplate.d.ts +7 -7
  395. package/dist/templates/ComponentShowcaseTemplate.d.ts.map +1 -1
  396. package/dist/templates/DashboardTemplate.d.ts +3 -3
  397. package/dist/templates/DashboardTemplate.d.ts.map +1 -1
  398. package/dist/templates/DataTemplate.d.ts +3 -3
  399. package/dist/templates/DataTemplate.d.ts.map +1 -1
  400. package/dist/templates/EnhancedDataTemplate.d.ts +188 -0
  401. package/dist/templates/EnhancedDataTemplate.d.ts.map +1 -0
  402. package/dist/templates/EnhancedDataTemplate.hooks.bulk.d.ts +18 -0
  403. package/dist/templates/EnhancedDataTemplate.hooks.bulk.d.ts.map +1 -0
  404. package/dist/templates/EnhancedDataTemplate.hooks.d.ts +22 -0
  405. package/dist/templates/EnhancedDataTemplate.hooks.d.ts.map +1 -0
  406. package/dist/templates/admin/AdminCRUDTemplate.d.ts +4 -4
  407. package/dist/templates/admin/AdminCRUDTemplate.d.ts.map +1 -1
  408. package/dist/templates/admin/AdminDashboardTemplate.d.ts +10 -13
  409. package/dist/templates/admin/AdminDashboardTemplate.d.ts.map +1 -1
  410. package/dist/templates/admin/AdminDetailTemplate.d.ts +4 -4
  411. package/dist/templates/admin/AdminDetailTemplate.d.ts.map +1 -1
  412. package/dist/templates/admin/index.d.ts +3 -3
  413. package/dist/templates/admin/index.d.ts.map +1 -1
  414. package/dist/templates/api/APIDataTemplate.d.ts +71 -0
  415. package/dist/templates/api/APIDataTemplate.d.ts.map +1 -0
  416. package/dist/templates/api/create-api-data-template.d.ts +4 -0
  417. package/dist/templates/api/create-api-data-template.d.ts.map +1 -0
  418. package/dist/templates/api/index.d.ts +9 -0
  419. package/dist/templates/api/index.d.ts.map +1 -0
  420. package/dist/templates/factory.d.ts +4 -3
  421. package/dist/templates/factory.d.ts.map +1 -1
  422. package/dist/templates/index.d.ts +8 -6
  423. package/dist/templates/index.d.ts.map +1 -1
  424. package/package.json +38 -9
  425. package/dist/atoms/composed/Accordion/Accordion.d.ts.map +0 -1
  426. package/dist/atoms/composed/Accordion/index.d.ts +0 -2
  427. package/dist/atoms/composed/Accordion/index.d.ts.map +0 -1
  428. package/dist/atoms/composed/Alert/Alert.d.ts.map +0 -1
  429. package/dist/atoms/composed/Alert/index.d.ts +0 -2
  430. package/dist/atoms/composed/Alert/index.d.ts.map +0 -1
  431. package/dist/atoms/composed/Breadcrumb/Breadcrumb.d.ts.map +0 -1
  432. package/dist/atoms/composed/Breadcrumb/index.d.ts +0 -2
  433. package/dist/atoms/composed/Breadcrumb/index.d.ts.map +0 -1
  434. package/dist/atoms/composed/Chart/Chart.d.ts +0 -37
  435. package/dist/atoms/composed/Chart/Chart.d.ts.map +0 -1
  436. package/dist/atoms/composed/Chart/index.d.ts +0 -3
  437. package/dist/atoms/composed/Chart/index.d.ts.map +0 -1
  438. package/dist/atoms/composed/ColorSwatch/ColorSwatch.d.ts.map +0 -1
  439. package/dist/atoms/composed/ColorSwatch/index.d.ts +0 -2
  440. package/dist/atoms/composed/ColorSwatch/index.d.ts.map +0 -1
  441. package/dist/atoms/composed/DarkModeToggle.d.ts.map +0 -1
  442. package/dist/atoms/composed/DataBadge/DataBadge.d.ts +0 -13
  443. package/dist/atoms/composed/DataBadge/DataBadge.d.ts.map +0 -1
  444. package/dist/atoms/composed/DataBadge/index.d.ts +0 -2
  445. package/dist/atoms/composed/DataBadge/index.d.ts.map +0 -1
  446. package/dist/atoms/composed/DataTable/DataTable.d.ts +0 -28
  447. package/dist/atoms/composed/DataTable/DataTable.d.ts.map +0 -1
  448. package/dist/atoms/composed/DataTable/TableCellWithTooltip.d.ts.map +0 -1
  449. package/dist/atoms/composed/DataTable/index.d.ts +0 -3
  450. package/dist/atoms/composed/DataTable/index.d.ts.map +0 -1
  451. package/dist/atoms/composed/DateTimePicker/DateTimePicker.d.ts.map +0 -1
  452. package/dist/atoms/composed/DateTimePicker/index.d.ts +0 -3
  453. package/dist/atoms/composed/DateTimePicker/index.d.ts.map +0 -1
  454. package/dist/atoms/composed/DetailedCard/DetailedCard.d.ts.map +0 -1
  455. package/dist/atoms/composed/DetailedCard/index.d.ts +0 -3
  456. package/dist/atoms/composed/DetailedCard/index.d.ts.map +0 -1
  457. package/dist/atoms/composed/EmptyState/EmptyState.d.ts.map +0 -1
  458. package/dist/atoms/composed/EmptyState/index.d.ts +0 -2
  459. package/dist/atoms/composed/EmptyState/index.d.ts.map +0 -1
  460. package/dist/atoms/composed/FileUpload/FileUpload.d.ts.map +0 -1
  461. package/dist/atoms/composed/FileUpload/index.d.ts +0 -3
  462. package/dist/atoms/composed/FileUpload/index.d.ts.map +0 -1
  463. package/dist/atoms/composed/FormField/FormField.d.ts.map +0 -1
  464. package/dist/atoms/composed/FormField/index.d.ts +0 -2
  465. package/dist/atoms/composed/FormField/index.d.ts.map +0 -1
  466. package/dist/atoms/composed/GlobalSearch/GlobalSearch.d.ts.map +0 -1
  467. package/dist/atoms/composed/GlobalSearch/index.d.ts +0 -2
  468. package/dist/atoms/composed/GlobalSearch/index.d.ts.map +0 -1
  469. package/dist/atoms/composed/IconBadge/IconBadge.d.ts +0 -16
  470. package/dist/atoms/composed/IconBadge/IconBadge.d.ts.map +0 -1
  471. package/dist/atoms/composed/IconBadge/index.d.ts +0 -3
  472. package/dist/atoms/composed/IconBadge/index.d.ts.map +0 -1
  473. package/dist/atoms/composed/Modal/Modal.d.ts +0 -18
  474. package/dist/atoms/composed/Modal/Modal.d.ts.map +0 -1
  475. package/dist/atoms/composed/Modal/index.d.ts +0 -3
  476. package/dist/atoms/composed/Modal/index.d.ts.map +0 -1
  477. package/dist/atoms/composed/PaletteSwitcher.d.ts.map +0 -1
  478. package/dist/atoms/composed/ProgressBar/ProgressBar.d.ts.map +0 -1
  479. package/dist/atoms/composed/ProgressBar/index.d.ts +0 -2
  480. package/dist/atoms/composed/ProgressBar/index.d.ts.map +0 -1
  481. package/dist/atoms/composed/StatCard/StatCard.d.ts.map +0 -1
  482. package/dist/atoms/composed/StatCard/index.d.ts +0 -2
  483. package/dist/atoms/composed/StatCard/index.d.ts.map +0 -1
  484. package/dist/atoms/composed/StyleGuide.d.ts +0 -3
  485. package/dist/atoms/composed/StyleGuide.d.ts.map +0 -1
  486. package/dist/atoms/composed/Toast/Toast.d.ts.map +0 -1
  487. package/dist/atoms/composed/Toast/index.d.ts.map +0 -1
  488. package/dist/atoms/composed/Tooltip/Tooltip.d.ts.map +0 -1
  489. package/dist/atoms/composed/Tooltip/index.d.ts +0 -2
  490. package/dist/atoms/composed/Tooltip/index.d.ts.map +0 -1
  491. package/dist/atoms/composed/UserAvatar/UserAvatar.d.ts.map +0 -1
  492. package/dist/atoms/composed/UserAvatar/index.d.ts +0 -2
  493. package/dist/atoms/composed/UserAvatar/index.d.ts.map +0 -1
  494. package/dist/atoms/composed/UserMenu/UserMenu.d.ts.map +0 -1
  495. package/dist/atoms/composed/UserMenu/index.d.ts +0 -2
  496. package/dist/atoms/composed/UserMenu/index.d.ts.map +0 -1
  497. package/dist/atoms/composed/index.d.ts +0 -25
  498. package/dist/atoms/composed/index.d.ts.map +0 -1
  499. package/dist/atoms/ui/Badge.d.ts +0 -10
  500. package/dist/atoms/ui/Badge.d.ts.map +0 -1
  501. package/dist/atoms/ui/ErrorBoundary.d.ts.map +0 -1
  502. package/dist/atoms/ui/Select.d.ts +0 -28
  503. package/dist/atoms/ui/Select.d.ts.map +0 -1
  504. package/dist/atoms/ui/Switch.d.ts +0 -9
  505. package/dist/atoms/ui/Switch.d.ts.map +0 -1
  506. package/dist/atoms/ui/Tabs.d.ts +0 -30
  507. package/dist/atoms/ui/Tabs.d.ts.map +0 -1
  508. package/dist/atoms/ui/avatar.d.ts.map +0 -1
  509. package/dist/atoms/ui/button.d.ts +0 -14
  510. package/dist/atoms/ui/button.d.ts.map +0 -1
  511. package/dist/atoms/ui/card.d.ts.map +0 -1
  512. package/dist/atoms/ui/dropdown-menu.d.ts.map +0 -1
  513. package/dist/atoms/ui/index.d.ts +0 -15
  514. package/dist/atoms/ui/index.d.ts.map +0 -1
  515. package/dist/atoms/ui/input.d.ts.map +0 -1
  516. package/dist/atoms/ui/label.d.ts.map +0 -1
  517. package/dist/atoms/ui/skeleton.d.ts.map +0 -1
  518. package/dist/atoms/ui/spinner.d.ts.map +0 -1
  519. package/dist/atoms/ui/table.d.ts.map +0 -1
  520. package/src/App.css +0 -42
  521. package/src/App.tsx +0 -54
  522. package/src/__tests__/README.md +0 -221
  523. package/src/__tests__/atoms/hooks/simple-hooks.test.ts +0 -44
  524. package/src/__tests__/atoms/ui/button.test.tsx +0 -68
  525. package/src/__tests__/atoms/utils/simple.test.ts +0 -18
  526. package/src/__tests__/atoms/utils/utils.test.ts +0 -77
  527. package/src/__tests__/features/auth/simple-auth.test.tsx +0 -40
  528. package/src/__tests__/molecules/layout/simple-layout.test.tsx +0 -81
  529. package/src/__tests__/organisms/showcase/simple-showcase.test.tsx +0 -167
  530. package/src/__tests__/setup.ts +0 -51
  531. package/src/__tests__/utils.tsx +0 -123
  532. package/src/atoms/composed/Accordion/Accordion.tsx +0 -271
  533. package/src/atoms/composed/Accordion/index.ts +0 -1
  534. package/src/atoms/composed/Alert/Alert.tsx +0 -132
  535. package/src/atoms/composed/Alert/index.ts +0 -1
  536. package/src/atoms/composed/Breadcrumb/Breadcrumb.tsx +0 -83
  537. package/src/atoms/composed/Breadcrumb/index.ts +0 -1
  538. package/src/atoms/composed/Chart/Chart.tsx +0 -425
  539. package/src/atoms/composed/Chart/index.ts +0 -2
  540. package/src/atoms/composed/ColorSwatch/ColorSwatch.tsx +0 -72
  541. package/src/atoms/composed/ColorSwatch/index.ts +0 -1
  542. package/src/atoms/composed/DarkModeToggle.tsx +0 -66
  543. package/src/atoms/composed/DataBadge/DataBadge.tsx +0 -81
  544. package/src/atoms/composed/DataBadge/index.ts +0 -1
  545. package/src/atoms/composed/DataTable/DataTable.tsx +0 -394
  546. package/src/atoms/composed/DataTable/TableCellWithTooltip.tsx +0 -41
  547. package/src/atoms/composed/DataTable/index.ts +0 -2
  548. package/src/atoms/composed/DateTimePicker/DateTimePicker.tsx +0 -611
  549. package/src/atoms/composed/DateTimePicker/index.ts +0 -2
  550. package/src/atoms/composed/DetailedCard/DetailedCard.tsx +0 -181
  551. package/src/atoms/composed/DetailedCard/index.ts +0 -2
  552. package/src/atoms/composed/EmptyState/EmptyState.tsx +0 -90
  553. package/src/atoms/composed/EmptyState/index.ts +0 -1
  554. package/src/atoms/composed/FileUpload/FileUpload.tsx +0 -477
  555. package/src/atoms/composed/FileUpload/index.ts +0 -2
  556. package/src/atoms/composed/FormField/FormField.tsx +0 -92
  557. package/src/atoms/composed/FormField/index.ts +0 -1
  558. package/src/atoms/composed/GlobalSearch/GlobalSearch.tsx +0 -37
  559. package/src/atoms/composed/GlobalSearch/index.ts +0 -1
  560. package/src/atoms/composed/IconBadge/IconBadge.tsx +0 -95
  561. package/src/atoms/composed/IconBadge/index.ts +0 -2
  562. package/src/atoms/composed/Modal/Modal.tsx +0 -223
  563. package/src/atoms/composed/Modal/index.ts +0 -2
  564. package/src/atoms/composed/PaletteSwitcher.tsx +0 -386
  565. package/src/atoms/composed/ProgressBar/ProgressBar.tsx +0 -116
  566. package/src/atoms/composed/ProgressBar/index.ts +0 -1
  567. package/src/atoms/composed/StatCard/StatCard.tsx +0 -219
  568. package/src/atoms/composed/StatCard/index.ts +0 -1
  569. package/src/atoms/composed/StyleGuide.tsx +0 -717
  570. package/src/atoms/composed/Toast/Toast.tsx +0 -219
  571. package/src/atoms/composed/Toast/index.ts +0 -1
  572. package/src/atoms/composed/Tooltip/Tooltip.tsx +0 -213
  573. package/src/atoms/composed/Tooltip/index.ts +0 -1
  574. package/src/atoms/composed/UserAvatar/UserAvatar.tsx +0 -139
  575. package/src/atoms/composed/UserAvatar/index.ts +0 -1
  576. package/src/atoms/composed/UserMenu/UserMenu.tsx +0 -16
  577. package/src/atoms/composed/UserMenu/index.ts +0 -1
  578. package/src/atoms/composed/index.ts +0 -29
  579. package/src/atoms/hooks/useApi.ts +0 -80
  580. package/src/atoms/hooks/useHealth.ts +0 -17
  581. package/src/atoms/index.ts +0 -13
  582. package/src/atoms/services/api/client.ts +0 -134
  583. package/src/atoms/services/auth-service.ts +0 -248
  584. package/src/atoms/services/health.ts +0 -15
  585. package/src/atoms/services/index.ts +0 -3
  586. package/src/atoms/shared/config/constants.ts +0 -17
  587. package/src/atoms/shared/config/dashboard-sizes.ts +0 -111
  588. package/src/atoms/shared/config/environment.ts +0 -10
  589. package/src/atoms/shared/index.ts +0 -4
  590. package/src/atoms/shared/styles/color-palettes.css +0 -566
  591. package/src/atoms/types/auth.ts +0 -62
  592. package/src/atoms/types/generated.ts +0 -1469
  593. package/src/atoms/types/index.ts +0 -4
  594. package/src/atoms/types/loading.ts +0 -28
  595. package/src/atoms/ui/Badge.tsx +0 -30
  596. package/src/atoms/ui/ErrorBoundary.tsx +0 -59
  597. package/src/atoms/ui/Select.tsx +0 -53
  598. package/src/atoms/ui/Switch.tsx +0 -42
  599. package/src/atoms/ui/Tabs.tsx +0 -118
  600. package/src/atoms/ui/avatar.tsx +0 -48
  601. package/src/atoms/ui/button.tsx +0 -70
  602. package/src/atoms/ui/card.tsx +0 -76
  603. package/src/atoms/ui/dropdown-menu.tsx +0 -199
  604. package/src/atoms/ui/index.ts +0 -39
  605. package/src/atoms/ui/input.tsx +0 -23
  606. package/src/atoms/ui/label.tsx +0 -23
  607. package/src/atoms/ui/skeleton.tsx +0 -13
  608. package/src/atoms/ui/spinner.tsx +0 -49
  609. package/src/atoms/ui/table.tsx +0 -116
  610. package/src/atoms/utils/animations.ts +0 -135
  611. package/src/atoms/utils/tooltip-helpers.ts +0 -140
  612. package/src/atoms/utils/utils.ts +0 -9
  613. package/src/features/auth/components/LoginForm.tsx +0 -168
  614. package/src/features/auth/components/LogoutButton.tsx +0 -19
  615. package/src/features/auth/components/ProtectedRoute.tsx +0 -60
  616. package/src/features/auth/components/index.ts +0 -4
  617. package/src/features/auth/hooks/index.ts +0 -2
  618. package/src/features/auth/hooks/useAuth.tsx +0 -205
  619. package/src/features/auth/hooks/usePermissions.ts +0 -35
  620. package/src/features/auth/index.ts +0 -2
  621. package/src/features/index.ts +0 -2
  622. package/src/index.css +0 -704
  623. package/src/index.ts +0 -13
  624. package/src/main.tsx +0 -48
  625. package/src/molecules/.gitkeep +0 -0
  626. package/src/molecules/forms/FormGroup.tsx +0 -75
  627. package/src/molecules/forms/SearchInput.tsx +0 -259
  628. package/src/molecules/forms/index.ts +0 -4
  629. package/src/molecules/index.ts +0 -4
  630. package/src/molecules/layout/AppHeader/AppHeader.tsx +0 -42
  631. package/src/molecules/layout/AppHeader/index.ts +0 -1
  632. package/src/molecules/layout/AppLayout.tsx +0 -29
  633. package/src/molecules/layout/PageTemplate.tsx +0 -87
  634. package/src/molecules/layout/SectionHeader/SectionHeader.tsx +0 -87
  635. package/src/molecules/layout/SectionHeader/index.ts +0 -1
  636. package/src/molecules/layout/ShowcaseSection.tsx +0 -57
  637. package/src/molecules/layout/Sidebar.tsx +0 -144
  638. package/src/molecules/layout/SidebarButton/SidebarButton.tsx +0 -99
  639. package/src/molecules/layout/SidebarButton/index.ts +0 -1
  640. package/src/molecules/layout/SidebarContext.tsx +0 -31
  641. package/src/molecules/layout/index.ts +0 -7
  642. package/src/molecules/navigation/NavMenu.tsx +0 -188
  643. package/src/molecules/navigation/Pagination.tsx +0 -172
  644. package/src/molecules/navigation/index.ts +0 -4
  645. package/src/organisms/index.ts +0 -5
  646. package/src/organisms/showcase/ComponentShowcasePage.tsx +0 -2496
  647. package/src/organisms/showcase/index.ts +0 -1
  648. package/src/pages/AdminShowcase/AdminCRUDShowcase.tsx +0 -242
  649. package/src/pages/AdminShowcase/AdminDashboardShowcase.tsx +0 -171
  650. package/src/pages/AdminShowcase/AdminDetailShowcase.tsx +0 -385
  651. package/src/pages/AdminShowcase/index.tsx +0 -3
  652. package/src/pages/ComponentShowcase/BadgesShowcase.tsx +0 -188
  653. package/src/pages/ComponentShowcase/CardsShowcase.tsx +0 -392
  654. package/src/pages/ComponentShowcase/PalettesShowcase.tsx +0 -207
  655. package/src/pages/ComponentShowcase/StatesShowcase.tsx +0 -485
  656. package/src/pages/ComponentShowcase/TablesShowcase.tsx +0 -134
  657. package/src/pages/ComponentShowcase/TypographyShowcase.tsx +0 -255
  658. package/src/pages/ComponentShowcase/index.tsx +0 -188
  659. package/src/pages/index.ts +0 -2
  660. package/src/templates/AuthTemplate.tsx +0 -216
  661. package/src/templates/ComponentShowcaseTemplate.tsx +0 -173
  662. package/src/templates/DashboardTemplate.tsx +0 -232
  663. package/src/templates/DataTemplate.tsx +0 -319
  664. package/src/templates/admin/AdminCRUDTemplate.tsx +0 -630
  665. package/src/templates/admin/AdminDashboardTemplate.tsx +0 -351
  666. package/src/templates/admin/AdminDetailTemplate.tsx +0 -563
  667. package/src/templates/admin/index.ts +0 -29
  668. package/src/templates/factory.tsx +0 -169
  669. package/src/templates/index.ts +0 -37
  670. package/src/vite-env.d.ts +0 -1
  671. /package/dist/atoms/{composed → components/theme}/DarkModeToggle.d.ts +0 -0
  672. /package/dist/atoms/{ui → primitives}/avatar.d.ts +0 -0
  673. /package/dist/atoms/{ui → primitives}/dropdown-menu.d.ts +0 -0
  674. /package/dist/atoms/{ui → primitives}/input.d.ts +0 -0
  675. /package/dist/atoms/{ui → primitives}/skeleton.d.ts +0 -0
  676. /package/dist/atoms/{ui → primitives}/table.d.ts +0 -0
@@ -1,77 +0,0 @@
1
- import { describe, it, expect } from 'vitest'
2
- import { cn } from '../../../atoms/utils/utils'
3
-
4
- describe('Utils (Atoms)', () => {
5
- describe('cn (className utility)', () => {
6
- it('merges class names correctly', () => {
7
- const result = cn('px-4 py-2', 'bg-blue-500')
8
- expect(result).toBe('px-4 py-2 bg-blue-500')
9
- })
10
-
11
- it('handles conditional classes', () => {
12
- const isActive = true
13
- const isDisabled = false
14
-
15
- const result = cn(
16
- 'base-class',
17
- isActive && 'active-class',
18
- isDisabled && 'disabled-class'
19
- )
20
-
21
- expect(result).toBe('base-class active-class')
22
- })
23
-
24
- it('resolves conflicting Tailwind classes', () => {
25
- // tailwind-merge should resolve conflicts
26
- const result = cn('px-2 px-4') // px-4 should win
27
- expect(result).toBe('px-4')
28
- })
29
-
30
- it('handles arrays of classes', () => {
31
- const result = cn(['px-4', 'py-2'], ['bg-blue-500', 'text-white'])
32
- expect(result).toBe('px-4 py-2 bg-blue-500 text-white')
33
- })
34
-
35
- it('handles object syntax', () => {
36
- const result = cn({
37
- 'px-4': true,
38
- 'py-2': true,
39
- 'bg-red-500': false,
40
- 'bg-blue-500': true,
41
- })
42
- expect(result).toBe('px-4 py-2 bg-blue-500')
43
- })
44
-
45
- it('handles undefined and null values', () => {
46
- const result = cn('px-4', undefined, null, 'py-2')
47
- expect(result).toBe('px-4 py-2')
48
- })
49
-
50
- it('handles empty strings', () => {
51
- const result = cn('', 'px-4', '', 'py-2')
52
- expect(result).toBe('px-4 py-2')
53
- })
54
-
55
- it('maintains design system classes', () => {
56
- // Test that design system classes are preserved
57
- const result = cn('bg-primary text-primary-foreground', 'hover:bg-primary-hover')
58
- expect(result).toBe('bg-primary text-primary-foreground hover:bg-primary-hover')
59
- })
60
-
61
- it('works with status classes', () => {
62
- const status = 'success'
63
- const result = cn(
64
- 'base-class',
65
- status === 'success' && 'status-success',
66
- status === 'error' && 'status-error'
67
- )
68
- expect(result).toBe('base-class status-success')
69
- })
70
-
71
- it('works with category classes', () => {
72
- const category = 2
73
- const result = cn('base-class', `category-${category}`)
74
- expect(result).toBe('base-class category-2')
75
- })
76
- })
77
- })
@@ -1,40 +0,0 @@
1
- import React from 'react'
2
- import { describe, it, expect } from 'vitest'
3
- import { render, screen } from '../../utils'
4
-
5
- // Simple auth component for testing
6
- const AuthStatus = ({ isAuthenticated }: { isAuthenticated: boolean }) => (
7
- <div>
8
- {isAuthenticated ? (
9
- <span data-testid="authenticated">User is logged in</span>
10
- ) : (
11
- <span data-testid="not-authenticated">Please log in</span>
12
- )}
13
- </div>
14
- )
15
-
16
- describe('Auth Components (Feature)', () => {
17
- it('displays authenticated state correctly', () => {
18
- render(<AuthStatus isAuthenticated={true} />)
19
-
20
- expect(screen.getByTestId('authenticated')).toBeInTheDocument()
21
- expect(screen.getByText('User is logged in')).toBeInTheDocument()
22
- })
23
-
24
- it('displays unauthenticated state correctly', () => {
25
- render(<AuthStatus isAuthenticated={false} />)
26
-
27
- expect(screen.getByTestId('not-authenticated')).toBeInTheDocument()
28
- expect(screen.getByText('Please log in')).toBeInTheDocument()
29
- })
30
-
31
- it('toggles between states correctly', () => {
32
- const { rerender } = render(<AuthStatus isAuthenticated={false} />)
33
-
34
- expect(screen.getByText('Please log in')).toBeInTheDocument()
35
-
36
- rerender(<AuthStatus isAuthenticated={true} />)
37
-
38
- expect(screen.getByText('User is logged in')).toBeInTheDocument()
39
- })
40
- })
@@ -1,81 +0,0 @@
1
- import React from 'react'
2
- import { describe, it, expect } from 'vitest'
3
- import { render, screen } from '../../utils'
4
-
5
- // Simple layout component for testing
6
- const SimpleHeader = ({ title, showNav = true }: { title: string; showNav?: boolean }) => (
7
- <header role="banner" className="bg-background border-b border-border">
8
- <div className="flex items-center justify-between p-4">
9
- <h1 className="text-xl font-semibold text-foreground">{title}</h1>
10
- {showNav && (
11
- <nav aria-label="Main navigation">
12
- <ul className="flex space-x-4">
13
- <li>
14
- <a href="/" className="text-primary hover:text-primary-hover">Home</a>
15
- </li>
16
- <li>
17
- <a href="/about" className="text-primary hover:text-primary-hover">About</a>
18
- </li>
19
- </ul>
20
- </nav>
21
- )}
22
- </div>
23
- </header>
24
- )
25
-
26
- describe('Layout Components (Molecule)', () => {
27
- it('renders header with title', () => {
28
- render(<SimpleHeader title="Test App" />)
29
-
30
- const header = screen.getByRole('banner')
31
- expect(header).toBeInTheDocument()
32
-
33
- const title = screen.getByRole('heading', { level: 1 })
34
- expect(title).toHaveTextContent('Test App')
35
- })
36
-
37
- it('renders navigation when showNav is true', () => {
38
- render(<SimpleHeader title="Test App" showNav={true} />)
39
-
40
- const nav = screen.getByRole('navigation', { name: /main navigation/i })
41
- expect(nav).toBeInTheDocument()
42
-
43
- expect(screen.getByRole('link', { name: /home/i })).toBeInTheDocument()
44
- expect(screen.getByRole('link', { name: /about/i })).toBeInTheDocument()
45
- })
46
-
47
- it('hides navigation when showNav is false', () => {
48
- render(<SimpleHeader title="Test App" showNav={false} />)
49
-
50
- const nav = screen.queryByRole('navigation')
51
- expect(nav).not.toBeInTheDocument()
52
- })
53
-
54
- it('uses design system classes', () => {
55
- render(<SimpleHeader title="Test App" />)
56
-
57
- const header = screen.getByRole('banner')
58
-
59
- // Should use design system classes
60
- expect(header).toHaveClass('bg-background')
61
- expect(header).toHaveClass('border-border')
62
-
63
- // Should not use hardcoded color classes
64
- expect(header.className).not.toMatch(/bg-(blue|red|green)-\d+/)
65
- })
66
-
67
- it('has proper accessibility attributes', () => {
68
- render(<SimpleHeader title="Test App" />)
69
-
70
- const header = screen.getByRole('banner')
71
- expect(header).toBeInTheDocument()
72
-
73
- const nav = screen.getByRole('navigation')
74
- expect(nav).toHaveAttribute('aria-label', 'Main navigation')
75
-
76
- const links = screen.getAllByRole('link')
77
- links.forEach(link => {
78
- expect(link).toHaveAttribute('href')
79
- })
80
- })
81
- })
@@ -1,167 +0,0 @@
1
- import React from 'react'
2
- import { describe, it, expect } from 'vitest'
3
- import { render, screen, userEvent } from '../../utils'
4
- import { cn } from '../../../atoms/utils/utils'
5
-
6
- // Simple showcase component for testing
7
- const SimpleShowcase = () => {
8
- const [activeTab, setActiveTab] = React.useState('components')
9
-
10
- return (
11
- <main className="p-6">
12
- <h1 className="text-3xl font-bold text-foreground mb-6">Component Showcase</h1>
13
-
14
- <div className="mb-6">
15
- <nav aria-label="Showcase navigation">
16
- <div role="tablist" className="flex space-x-4 border-b border-border">
17
- <button
18
- role="tab"
19
- aria-selected={activeTab === 'components'}
20
- className={cn(
21
- 'px-4 py-2 font-medium',
22
- activeTab === 'components'
23
- ? 'text-primary border-b-2 border-primary'
24
- : 'text-muted-foreground hover:text-foreground'
25
- )}
26
- onClick={() => setActiveTab('components')}
27
- >
28
- Components
29
- </button>
30
- <button
31
- role="tab"
32
- aria-selected={activeTab === 'colors'}
33
- className={cn(
34
- 'px-4 py-2 font-medium',
35
- activeTab === 'colors'
36
- ? 'text-primary border-b-2 border-primary'
37
- : 'text-muted-foreground hover:text-foreground'
38
- )}
39
- onClick={() => setActiveTab('colors')}
40
- >
41
- Colors
42
- </button>
43
- </div>
44
- </nav>
45
- </div>
46
-
47
- <div role="tabpanel">
48
- {activeTab === 'components' && (
49
- <div data-testid="components-panel">
50
- <h2 className="text-xl font-semibold mb-4">UI Components</h2>
51
- <div className="grid grid-cols-1 md:grid-cols-2 gap-4">
52
- <button className="bg-primary text-primary-foreground px-4 py-2 rounded">
53
- Primary Button
54
- </button>
55
- <button className="bg-secondary text-secondary-foreground px-4 py-2 rounded">
56
- Secondary Button
57
- </button>
58
- </div>
59
- </div>
60
- )}
61
-
62
- {activeTab === 'colors' && (
63
- <div data-testid="colors-panel">
64
- <h2 className="text-xl font-semibold mb-4">Color Palette</h2>
65
- <div className="grid grid-cols-4 gap-2">
66
- <div className="bg-primary h-12 rounded flex items-center justify-center text-primary-foreground text-xs">
67
- Primary
68
- </div>
69
- <div className="bg-secondary h-12 rounded flex items-center justify-center text-secondary-foreground text-xs">
70
- Secondary
71
- </div>
72
- </div>
73
- </div>
74
- )}
75
- </div>
76
- </main>
77
- )
78
- }
79
-
80
- describe('Showcase Page (Organism)', () => {
81
- it('renders main showcase structure', () => {
82
- render(<SimpleShowcase />)
83
-
84
- const main = screen.getByRole('main')
85
- expect(main).toBeInTheDocument()
86
-
87
- const heading = screen.getByRole('heading', { level: 1 })
88
- expect(heading).toHaveTextContent('Component Showcase')
89
- })
90
-
91
- it('has accessible tab navigation', () => {
92
- render(<SimpleShowcase />)
93
-
94
- const tablist = screen.getByRole('tablist')
95
- expect(tablist).toBeInTheDocument()
96
-
97
- const componentsTab = screen.getByRole('tab', { name: /components/i })
98
- const colorsTab = screen.getByRole('tab', { name: /colors/i })
99
-
100
- expect(componentsTab).toHaveAttribute('aria-selected', 'true')
101
- expect(colorsTab).toHaveAttribute('aria-selected', 'false')
102
- })
103
-
104
- it('switches between tabs correctly', async () => {
105
- const user = userEvent.setup()
106
- render(<SimpleShowcase />)
107
-
108
- // Initially shows components panel
109
- expect(screen.getByTestId('components-panel')).toBeInTheDocument()
110
- expect(screen.queryByTestId('colors-panel')).not.toBeInTheDocument()
111
-
112
- // Click colors tab
113
- const colorsTab = screen.getByRole('tab', { name: /colors/i })
114
- await user.click(colorsTab)
115
-
116
- // Should now show colors panel
117
- expect(screen.getByTestId('colors-panel')).toBeInTheDocument()
118
- expect(screen.queryByTestId('components-panel')).not.toBeInTheDocument()
119
-
120
- // Tab should be selected
121
- expect(colorsTab).toHaveAttribute('aria-selected', 'true')
122
- })
123
-
124
- it('displays interactive components', () => {
125
- render(<SimpleShowcase />)
126
-
127
- // Should have interactive buttons in showcase
128
- const buttons = screen.getAllByRole('button')
129
- expect(buttons.length).toBeGreaterThanOrEqual(2) // Tabs + showcase buttons
130
-
131
- const primaryButton = screen.getByText('Primary Button')
132
- expect(primaryButton).toBeInTheDocument()
133
- expect(primaryButton).toHaveClass('bg-primary')
134
- })
135
-
136
- it('uses design system classes consistently', () => {
137
- render(<SimpleShowcase />)
138
-
139
- const main = screen.getByRole('main')
140
-
141
- // Should use design system spacing and colors
142
- expect(main).toHaveClass('p-6')
143
-
144
- const heading = screen.getByRole('heading', { level: 1 })
145
- expect(heading).toHaveClass('text-foreground')
146
-
147
- // Check that components use design system colors
148
- const primaryButton = screen.getByText('Primary Button')
149
- expect(primaryButton).toHaveClass('bg-primary', 'text-primary-foreground')
150
- })
151
-
152
- it('is responsive and accessible', () => {
153
- render(<SimpleShowcase />)
154
-
155
- // Should have proper heading hierarchy
156
- const h1 = screen.getByRole('heading', { level: 1 })
157
- const h2s = screen.getAllByRole('heading', { level: 2 })
158
-
159
- expect(h1).toBeInTheDocument()
160
- expect(h2s.length).toBeGreaterThan(0)
161
-
162
- // Should have responsive grid classes
163
- const gridElements = screen.getByTestId('components-panel').querySelector('.grid')
164
- expect(gridElements?.className).toMatch(/grid-cols-/)
165
- expect(gridElements?.className).toMatch(/md:grid-cols-/)
166
- })
167
- })
@@ -1,51 +0,0 @@
1
- import '@testing-library/jest-dom'
2
- import { beforeAll, afterEach, afterAll } from 'vitest'
3
- import { cleanup } from '@testing-library/react'
4
-
5
- // Global test setup (equivalent to conftest.py)
6
-
7
- // Clean up after each test
8
- afterEach(() => {
9
- cleanup()
10
- })
11
-
12
- // Mock environment variables for testing
13
- beforeAll(() => {
14
- // Mock environment variables
15
- process.env.VITE_API_URL = 'http://localhost:3001/api/v1'
16
- process.env.VITE_APP_NAME = 'Test App'
17
-
18
- // Mock window.matchMedia (required for responsive components)
19
- Object.defineProperty(window, 'matchMedia', {
20
- writable: true,
21
- value: (query: string) => ({
22
- matches: false,
23
- media: query,
24
- onchange: null,
25
- addListener: () => {},
26
- removeListener: () => {},
27
- addEventListener: () => {},
28
- removeEventListener: () => {},
29
- dispatchEvent: () => {},
30
- }),
31
- })
32
-
33
- // Mock ResizeObserver (required for some components)
34
- global.ResizeObserver = class ResizeObserver {
35
- observe() {}
36
- unobserve() {}
37
- disconnect() {}
38
- }
39
-
40
- // Mock IntersectionObserver (required for some components)
41
- global.IntersectionObserver = class IntersectionObserver {
42
- constructor() {}
43
- observe() {}
44
- unobserve() {}
45
- disconnect() {}
46
- }
47
- })
48
-
49
- afterAll(() => {
50
- // Clean up any global mocks if needed
51
- })
@@ -1,123 +0,0 @@
1
- import React from 'react'
2
- import { render, RenderOptions } from '@testing-library/react'
3
- import { BrowserRouter } from 'react-router-dom'
4
- import { QueryClient, QueryClientProvider } from '@tanstack/react-query'
5
-
6
- // Test utilities (equivalent to pytest fixtures)
7
-
8
- /**
9
- * Custom render function that wraps components with necessary providers
10
- * Similar to how conftest.py provides fixtures for database, auth, etc.
11
- */
12
- interface CustomRenderOptions extends Omit<RenderOptions, 'wrapper'> {
13
- // Add custom options here
14
- initialRoute?: string
15
- queryClient?: QueryClient
16
- }
17
-
18
- const AllTheProviders = ({
19
- children,
20
- initialRoute = '/',
21
- queryClient
22
- }: {
23
- children: React.ReactNode
24
- initialRoute?: string
25
- queryClient?: QueryClient
26
- }) => {
27
- // Create a fresh QueryClient for each test to avoid test pollution
28
- const testQueryClient = queryClient || new QueryClient({
29
- defaultOptions: {
30
- queries: {
31
- retry: false, // Don't retry in tests
32
- gcTime: 0, // Disable garbage collection
33
- },
34
- mutations: {
35
- retry: false,
36
- },
37
- },
38
- })
39
-
40
- // Set initial route for testing
41
- if (initialRoute !== '/') {
42
- window.history.pushState({}, 'Test page', initialRoute)
43
- }
44
-
45
- return (
46
- <QueryClientProvider client={testQueryClient}>
47
- <BrowserRouter>
48
- {children}
49
- </BrowserRouter>
50
- </QueryClientProvider>
51
- )
52
- }
53
-
54
- const customRender = (
55
- ui: React.ReactElement,
56
- options?: CustomRenderOptions
57
- ) => {
58
- const { initialRoute, queryClient, ...renderOptions } = options || {}
59
-
60
- return render(ui, {
61
- wrapper: (props) => (
62
- <AllTheProviders
63
- {...props}
64
- initialRoute={initialRoute}
65
- queryClient={queryClient}
66
- />
67
- ),
68
- ...renderOptions,
69
- })
70
- }
71
-
72
- /**
73
- * Create a mock API client for testing
74
- * Similar to how you might mock database connections in backend tests
75
- */
76
- export const createMockApiClient = () => ({
77
- get: vi.fn(),
78
- post: vi.fn(),
79
- put: vi.fn(),
80
- delete: vi.fn(),
81
- patch: vi.fn(),
82
- })
83
-
84
- /**
85
- * Mock user data factory
86
- * Similar to factory patterns in backend testing
87
- */
88
- export const createMockUser = (overrides = {}) => ({
89
- id: '1',
90
- name: 'Test User',
91
- email: 'test@example.com',
92
- role: 'user',
93
- ...overrides,
94
- })
95
-
96
- /**
97
- * Mock auth context for testing
98
- */
99
- export const createMockAuthContext = (overrides = {}) => ({
100
- user: createMockUser(),
101
- isAuthenticated: true,
102
- login: vi.fn(),
103
- logout: vi.fn(),
104
- loading: false,
105
- ...overrides,
106
- })
107
-
108
- /**
109
- * Helper to test error boundaries
110
- */
111
- export const ThrowError = ({ shouldThrow }: { shouldThrow?: boolean }) => {
112
- if (shouldThrow) {
113
- throw new Error('Test error')
114
- }
115
- return <div>No error</div>
116
- }
117
-
118
- // Re-export everything from testing-library
119
- export * from '@testing-library/react'
120
- export { default as userEvent } from '@testing-library/user-event'
121
-
122
- // Export our custom render as the default render
123
- export { customRender as render }