@pattern-stack/frontend-patterns 0.0.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 (400) hide show
  1. package/README.md +310 -0
  2. package/dist/atoms/composed/Accordion/Accordion.d.ts +20 -0
  3. package/dist/atoms/composed/Accordion/Accordion.d.ts.map +1 -0
  4. package/dist/atoms/composed/Accordion/index.d.ts +2 -0
  5. package/dist/atoms/composed/Accordion/index.d.ts.map +1 -0
  6. package/dist/atoms/composed/Alert/Alert.d.ts +25 -0
  7. package/dist/atoms/composed/Alert/Alert.d.ts.map +1 -0
  8. package/dist/atoms/composed/Alert/index.d.ts +2 -0
  9. package/dist/atoms/composed/Alert/index.d.ts.map +1 -0
  10. package/dist/atoms/composed/Breadcrumb/Breadcrumb.d.ts +17 -0
  11. package/dist/atoms/composed/Breadcrumb/Breadcrumb.d.ts.map +1 -0
  12. package/dist/atoms/composed/Breadcrumb/index.d.ts +2 -0
  13. package/dist/atoms/composed/Breadcrumb/index.d.ts.map +1 -0
  14. package/dist/atoms/composed/Chart/Chart.d.ts +37 -0
  15. package/dist/atoms/composed/Chart/Chart.d.ts.map +1 -0
  16. package/dist/atoms/composed/Chart/index.d.ts +3 -0
  17. package/dist/atoms/composed/Chart/index.d.ts.map +1 -0
  18. package/dist/atoms/composed/ColorSwatch/ColorSwatch.d.ts +19 -0
  19. package/dist/atoms/composed/ColorSwatch/ColorSwatch.d.ts.map +1 -0
  20. package/dist/atoms/composed/ColorSwatch/index.d.ts +2 -0
  21. package/dist/atoms/composed/ColorSwatch/index.d.ts.map +1 -0
  22. package/dist/atoms/composed/DarkModeToggle.d.ts +4 -0
  23. package/dist/atoms/composed/DarkModeToggle.d.ts.map +1 -0
  24. package/dist/atoms/composed/DataBadge/DataBadge.d.ts +13 -0
  25. package/dist/atoms/composed/DataBadge/DataBadge.d.ts.map +1 -0
  26. package/dist/atoms/composed/DataBadge/index.d.ts +2 -0
  27. package/dist/atoms/composed/DataBadge/index.d.ts.map +1 -0
  28. package/dist/atoms/composed/DataTable/DataTable.d.ts +28 -0
  29. package/dist/atoms/composed/DataTable/DataTable.d.ts.map +1 -0
  30. package/dist/atoms/composed/DataTable/TableCellWithTooltip.d.ts +10 -0
  31. package/dist/atoms/composed/DataTable/TableCellWithTooltip.d.ts.map +1 -0
  32. package/dist/atoms/composed/DataTable/index.d.ts +3 -0
  33. package/dist/atoms/composed/DataTable/index.d.ts.map +1 -0
  34. package/dist/atoms/composed/DateTimePicker/DateTimePicker.d.ts +45 -0
  35. package/dist/atoms/composed/DateTimePicker/DateTimePicker.d.ts.map +1 -0
  36. package/dist/atoms/composed/DateTimePicker/index.d.ts +3 -0
  37. package/dist/atoms/composed/DateTimePicker/index.d.ts.map +1 -0
  38. package/dist/atoms/composed/DetailedCard/DetailedCard.d.ts +30 -0
  39. package/dist/atoms/composed/DetailedCard/DetailedCard.d.ts.map +1 -0
  40. package/dist/atoms/composed/DetailedCard/index.d.ts +3 -0
  41. package/dist/atoms/composed/DetailedCard/index.d.ts.map +1 -0
  42. package/dist/atoms/composed/EmptyState/EmptyState.d.ts +18 -0
  43. package/dist/atoms/composed/EmptyState/EmptyState.d.ts.map +1 -0
  44. package/dist/atoms/composed/EmptyState/index.d.ts +2 -0
  45. package/dist/atoms/composed/EmptyState/index.d.ts.map +1 -0
  46. package/dist/atoms/composed/FileUpload/FileUpload.d.ts +46 -0
  47. package/dist/atoms/composed/FileUpload/FileUpload.d.ts.map +1 -0
  48. package/dist/atoms/composed/FileUpload/index.d.ts +3 -0
  49. package/dist/atoms/composed/FileUpload/index.d.ts.map +1 -0
  50. package/dist/atoms/composed/FormField/FormField.d.ts +23 -0
  51. package/dist/atoms/composed/FormField/FormField.d.ts.map +1 -0
  52. package/dist/atoms/composed/FormField/index.d.ts +2 -0
  53. package/dist/atoms/composed/FormField/index.d.ts.map +1 -0
  54. package/dist/atoms/composed/GlobalSearch/GlobalSearch.d.ts +8 -0
  55. package/dist/atoms/composed/GlobalSearch/GlobalSearch.d.ts.map +1 -0
  56. package/dist/atoms/composed/GlobalSearch/index.d.ts +2 -0
  57. package/dist/atoms/composed/GlobalSearch/index.d.ts.map +1 -0
  58. package/dist/atoms/composed/IconBadge/IconBadge.d.ts +16 -0
  59. package/dist/atoms/composed/IconBadge/IconBadge.d.ts.map +1 -0
  60. package/dist/atoms/composed/IconBadge/index.d.ts +3 -0
  61. package/dist/atoms/composed/IconBadge/index.d.ts.map +1 -0
  62. package/dist/atoms/composed/Modal/Modal.d.ts +18 -0
  63. package/dist/atoms/composed/Modal/Modal.d.ts.map +1 -0
  64. package/dist/atoms/composed/Modal/index.d.ts +3 -0
  65. package/dist/atoms/composed/Modal/index.d.ts.map +1 -0
  66. package/dist/atoms/composed/PaletteSwitcher.d.ts +7 -0
  67. package/dist/atoms/composed/PaletteSwitcher.d.ts.map +1 -0
  68. package/dist/atoms/composed/ProgressBar/ProgressBar.d.ts +25 -0
  69. package/dist/atoms/composed/ProgressBar/ProgressBar.d.ts.map +1 -0
  70. package/dist/atoms/composed/ProgressBar/index.d.ts +2 -0
  71. package/dist/atoms/composed/ProgressBar/index.d.ts.map +1 -0
  72. package/dist/atoms/composed/StatCard/StatCard.d.ts +21 -0
  73. package/dist/atoms/composed/StatCard/StatCard.d.ts.map +1 -0
  74. package/dist/atoms/composed/StatCard/index.d.ts +2 -0
  75. package/dist/atoms/composed/StatCard/index.d.ts.map +1 -0
  76. package/dist/atoms/composed/StyleGuide.d.ts +3 -0
  77. package/dist/atoms/composed/StyleGuide.d.ts.map +1 -0
  78. package/dist/atoms/composed/Toast/Toast.d.ts +40 -0
  79. package/dist/atoms/composed/Toast/Toast.d.ts.map +1 -0
  80. package/dist/atoms/composed/Toast/index.d.ts +2 -0
  81. package/dist/atoms/composed/Toast/index.d.ts.map +1 -0
  82. package/dist/atoms/composed/Tooltip/Tooltip.d.ts +16 -0
  83. package/dist/atoms/composed/Tooltip/Tooltip.d.ts.map +1 -0
  84. package/dist/atoms/composed/Tooltip/index.d.ts +2 -0
  85. package/dist/atoms/composed/Tooltip/index.d.ts.map +1 -0
  86. package/dist/atoms/composed/UserAvatar/UserAvatar.d.ts +8 -0
  87. package/dist/atoms/composed/UserAvatar/UserAvatar.d.ts.map +1 -0
  88. package/dist/atoms/composed/UserAvatar/index.d.ts +2 -0
  89. package/dist/atoms/composed/UserAvatar/index.d.ts.map +1 -0
  90. package/dist/atoms/composed/UserMenu/UserMenu.d.ts +8 -0
  91. package/dist/atoms/composed/UserMenu/UserMenu.d.ts.map +1 -0
  92. package/dist/atoms/composed/UserMenu/index.d.ts +2 -0
  93. package/dist/atoms/composed/UserMenu/index.d.ts.map +1 -0
  94. package/dist/atoms/composed/index.d.ts +25 -0
  95. package/dist/atoms/composed/index.d.ts.map +1 -0
  96. package/dist/atoms/hooks/useApi.d.ts +25 -0
  97. package/dist/atoms/hooks/useApi.d.ts.map +1 -0
  98. package/dist/atoms/hooks/useHealth.d.ts +19 -0
  99. package/dist/atoms/hooks/useHealth.d.ts.map +1 -0
  100. package/dist/atoms/index.d.ts +9 -0
  101. package/dist/atoms/index.d.ts.map +1 -0
  102. package/dist/atoms/services/api/client.d.ts +20 -0
  103. package/dist/atoms/services/api/client.d.ts.map +1 -0
  104. package/dist/atoms/services/auth-service.d.ts +24 -0
  105. package/dist/atoms/services/auth-service.d.ts.map +1 -0
  106. package/dist/atoms/services/health.d.ts +7 -0
  107. package/dist/atoms/services/health.d.ts.map +1 -0
  108. package/dist/atoms/services/index.d.ts +4 -0
  109. package/dist/atoms/services/index.d.ts.map +1 -0
  110. package/dist/atoms/shared/config/constants.d.ts +15 -0
  111. package/dist/atoms/shared/config/constants.d.ts.map +1 -0
  112. package/dist/atoms/shared/config/dashboard-sizes.d.ts +83 -0
  113. package/dist/atoms/shared/config/dashboard-sizes.d.ts.map +1 -0
  114. package/dist/atoms/shared/config/environment.d.ts +10 -0
  115. package/dist/atoms/shared/config/environment.d.ts.map +1 -0
  116. package/dist/atoms/shared/index.d.ts +4 -0
  117. package/dist/atoms/shared/index.d.ts.map +1 -0
  118. package/dist/atoms/types/auth.d.ts +56 -0
  119. package/dist/atoms/types/auth.d.ts.map +1 -0
  120. package/dist/atoms/types/generated.d.ts +1469 -0
  121. package/dist/atoms/types/generated.d.ts.map +1 -0
  122. package/dist/atoms/types/index.d.ts +4 -0
  123. package/dist/atoms/types/index.d.ts.map +1 -0
  124. package/dist/atoms/types/loading.d.ts +26 -0
  125. package/dist/atoms/types/loading.d.ts.map +1 -0
  126. package/dist/atoms/ui/Badge.d.ts +10 -0
  127. package/dist/atoms/ui/Badge.d.ts.map +1 -0
  128. package/dist/atoms/ui/ErrorBoundary.d.ts +18 -0
  129. package/dist/atoms/ui/ErrorBoundary.d.ts.map +1 -0
  130. package/dist/atoms/ui/Select.d.ts +28 -0
  131. package/dist/atoms/ui/Select.d.ts.map +1 -0
  132. package/dist/atoms/ui/Switch.d.ts +9 -0
  133. package/dist/atoms/ui/Switch.d.ts.map +1 -0
  134. package/dist/atoms/ui/Tabs.d.ts +30 -0
  135. package/dist/atoms/ui/Tabs.d.ts.map +1 -0
  136. package/dist/atoms/ui/avatar.d.ts +7 -0
  137. package/dist/atoms/ui/avatar.d.ts.map +1 -0
  138. package/dist/atoms/ui/button.d.ts +14 -0
  139. package/dist/atoms/ui/button.d.ts.map +1 -0
  140. package/dist/atoms/ui/card.d.ts +12 -0
  141. package/dist/atoms/ui/card.d.ts.map +1 -0
  142. package/dist/atoms/ui/dropdown-menu.d.ts +28 -0
  143. package/dist/atoms/ui/dropdown-menu.d.ts.map +1 -0
  144. package/dist/atoms/ui/index.d.ts +15 -0
  145. package/dist/atoms/ui/index.d.ts.map +1 -0
  146. package/dist/atoms/ui/input.d.ts +5 -0
  147. package/dist/atoms/ui/input.d.ts.map +1 -0
  148. package/dist/atoms/ui/label.d.ts +6 -0
  149. package/dist/atoms/ui/label.d.ts.map +1 -0
  150. package/dist/atoms/ui/skeleton.d.ts +3 -0
  151. package/dist/atoms/ui/skeleton.d.ts.map +1 -0
  152. package/dist/atoms/ui/spinner.d.ts +14 -0
  153. package/dist/atoms/ui/spinner.d.ts.map +1 -0
  154. package/dist/atoms/ui/table.d.ts +11 -0
  155. package/dist/atoms/ui/table.d.ts.map +1 -0
  156. package/dist/atoms/utils/animations.d.ts +65 -0
  157. package/dist/atoms/utils/animations.d.ts.map +1 -0
  158. package/dist/atoms/utils/tooltip-helpers.d.ts +71 -0
  159. package/dist/atoms/utils/tooltip-helpers.d.ts.map +1 -0
  160. package/dist/atoms/utils/utils.d.ts +4 -0
  161. package/dist/atoms/utils/utils.d.ts.map +1 -0
  162. package/dist/features/auth/components/LoginForm.d.ts +2 -0
  163. package/dist/features/auth/components/LoginForm.d.ts.map +1 -0
  164. package/dist/features/auth/components/LogoutButton.d.ts +2 -0
  165. package/dist/features/auth/components/LogoutButton.d.ts.map +1 -0
  166. package/dist/features/auth/components/ProtectedRoute.d.ts +10 -0
  167. package/dist/features/auth/components/ProtectedRoute.d.ts.map +1 -0
  168. package/dist/features/auth/components/index.d.ts +4 -0
  169. package/dist/features/auth/components/index.d.ts.map +1 -0
  170. package/dist/features/auth/hooks/index.d.ts +3 -0
  171. package/dist/features/auth/hooks/index.d.ts.map +1 -0
  172. package/dist/features/auth/hooks/useAuth.d.ts +10 -0
  173. package/dist/features/auth/hooks/useAuth.d.ts.map +1 -0
  174. package/dist/features/auth/hooks/usePermissions.d.ts +13 -0
  175. package/dist/features/auth/hooks/usePermissions.d.ts.map +1 -0
  176. package/dist/features/auth/index.d.ts +3 -0
  177. package/dist/features/auth/index.d.ts.map +1 -0
  178. package/dist/features/index.d.ts +2 -0
  179. package/dist/features/index.d.ts.map +1 -0
  180. package/dist/frontend-patterns.css +567 -0
  181. package/dist/index.d.ts +10 -0
  182. package/dist/index.d.ts.map +1 -0
  183. package/dist/index.es.js +10152 -0
  184. package/dist/index.es.js.map +1 -0
  185. package/dist/index.js +10170 -0
  186. package/dist/index.js.map +1 -0
  187. package/dist/molecules/forms/FormGroup.d.ts +17 -0
  188. package/dist/molecules/forms/FormGroup.d.ts.map +1 -0
  189. package/dist/molecules/forms/SearchInput.d.ts +36 -0
  190. package/dist/molecules/forms/SearchInput.d.ts.map +1 -0
  191. package/dist/molecules/forms/index.d.ts +3 -0
  192. package/dist/molecules/forms/index.d.ts.map +1 -0
  193. package/dist/molecules/index.d.ts +4 -0
  194. package/dist/molecules/index.d.ts.map +1 -0
  195. package/dist/molecules/layout/AppHeader/AppHeader.d.ts +7 -0
  196. package/dist/molecules/layout/AppHeader/AppHeader.d.ts.map +1 -0
  197. package/dist/molecules/layout/AppHeader/index.d.ts +2 -0
  198. package/dist/molecules/layout/AppHeader/index.d.ts.map +1 -0
  199. package/dist/molecules/layout/AppLayout.d.ts +2 -0
  200. package/dist/molecules/layout/AppLayout.d.ts.map +1 -0
  201. package/dist/molecules/layout/PageTemplate.d.ts +19 -0
  202. package/dist/molecules/layout/PageTemplate.d.ts.map +1 -0
  203. package/dist/molecules/layout/SectionHeader/SectionHeader.d.ts +24 -0
  204. package/dist/molecules/layout/SectionHeader/SectionHeader.d.ts.map +1 -0
  205. package/dist/molecules/layout/SectionHeader/index.d.ts +2 -0
  206. package/dist/molecules/layout/SectionHeader/index.d.ts.map +1 -0
  207. package/dist/molecules/layout/ShowcaseSection.d.ts +22 -0
  208. package/dist/molecules/layout/ShowcaseSection.d.ts.map +1 -0
  209. package/dist/molecules/layout/Sidebar.d.ts +6 -0
  210. package/dist/molecules/layout/Sidebar.d.ts.map +1 -0
  211. package/dist/molecules/layout/SidebarButton/SidebarButton.d.ts +13 -0
  212. package/dist/molecules/layout/SidebarButton/SidebarButton.d.ts.map +1 -0
  213. package/dist/molecules/layout/SidebarButton/index.d.ts +2 -0
  214. package/dist/molecules/layout/SidebarButton/index.d.ts.map +1 -0
  215. package/dist/molecules/layout/SidebarContext.d.ts +12 -0
  216. package/dist/molecules/layout/SidebarContext.d.ts.map +1 -0
  217. package/dist/molecules/layout/index.d.ts +8 -0
  218. package/dist/molecules/layout/index.d.ts.map +1 -0
  219. package/dist/molecules/navigation/NavMenu.d.ts +20 -0
  220. package/dist/molecules/navigation/NavMenu.d.ts.map +1 -0
  221. package/dist/molecules/navigation/Pagination.d.ts +14 -0
  222. package/dist/molecules/navigation/Pagination.d.ts.map +1 -0
  223. package/dist/molecules/navigation/index.d.ts +3 -0
  224. package/dist/molecules/navigation/index.d.ts.map +1 -0
  225. package/dist/organisms/index.d.ts +2 -0
  226. package/dist/organisms/index.d.ts.map +1 -0
  227. package/dist/organisms/showcase/ComponentShowcasePage.d.ts +3 -0
  228. package/dist/organisms/showcase/ComponentShowcasePage.d.ts.map +1 -0
  229. package/dist/templates/AuthTemplate.d.ts +68 -0
  230. package/dist/templates/AuthTemplate.d.ts.map +1 -0
  231. package/dist/templates/ComponentShowcaseTemplate.d.ts +53 -0
  232. package/dist/templates/ComponentShowcaseTemplate.d.ts.map +1 -0
  233. package/dist/templates/DashboardTemplate.d.ts +62 -0
  234. package/dist/templates/DashboardTemplate.d.ts.map +1 -0
  235. package/dist/templates/DataTemplate.d.ts +78 -0
  236. package/dist/templates/DataTemplate.d.ts.map +1 -0
  237. package/dist/templates/admin/AdminCRUDTemplate.d.ts +105 -0
  238. package/dist/templates/admin/AdminCRUDTemplate.d.ts.map +1 -0
  239. package/dist/templates/admin/AdminDashboardTemplate.d.ts +89 -0
  240. package/dist/templates/admin/AdminDashboardTemplate.d.ts.map +1 -0
  241. package/dist/templates/admin/AdminDetailTemplate.d.ts +132 -0
  242. package/dist/templates/admin/AdminDetailTemplate.d.ts.map +1 -0
  243. package/dist/templates/admin/index.d.ts +4 -0
  244. package/dist/templates/admin/index.d.ts.map +1 -0
  245. package/dist/templates/factory.d.ts +28 -0
  246. package/dist/templates/factory.d.ts.map +1 -0
  247. package/dist/templates/index.d.ts +7 -0
  248. package/dist/templates/index.d.ts.map +1 -0
  249. package/package.json +118 -0
  250. package/src/App.css +42 -0
  251. package/src/App.tsx +54 -0
  252. package/src/__tests__/README.md +221 -0
  253. package/src/__tests__/atoms/hooks/simple-hooks.test.ts +44 -0
  254. package/src/__tests__/atoms/ui/button.test.tsx +68 -0
  255. package/src/__tests__/atoms/utils/simple.test.ts +18 -0
  256. package/src/__tests__/atoms/utils/utils.test.ts +77 -0
  257. package/src/__tests__/features/auth/simple-auth.test.tsx +40 -0
  258. package/src/__tests__/molecules/layout/simple-layout.test.tsx +81 -0
  259. package/src/__tests__/organisms/showcase/simple-showcase.test.tsx +167 -0
  260. package/src/__tests__/setup.ts +51 -0
  261. package/src/__tests__/utils.tsx +123 -0
  262. package/src/atoms/composed/Accordion/Accordion.tsx +271 -0
  263. package/src/atoms/composed/Accordion/index.ts +1 -0
  264. package/src/atoms/composed/Alert/Alert.tsx +132 -0
  265. package/src/atoms/composed/Alert/index.ts +1 -0
  266. package/src/atoms/composed/Breadcrumb/Breadcrumb.tsx +83 -0
  267. package/src/atoms/composed/Breadcrumb/index.ts +1 -0
  268. package/src/atoms/composed/Chart/Chart.tsx +425 -0
  269. package/src/atoms/composed/Chart/index.ts +2 -0
  270. package/src/atoms/composed/ColorSwatch/ColorSwatch.tsx +72 -0
  271. package/src/atoms/composed/ColorSwatch/index.ts +1 -0
  272. package/src/atoms/composed/DarkModeToggle.tsx +66 -0
  273. package/src/atoms/composed/DataBadge/DataBadge.tsx +81 -0
  274. package/src/atoms/composed/DataBadge/index.ts +1 -0
  275. package/src/atoms/composed/DataTable/DataTable.tsx +394 -0
  276. package/src/atoms/composed/DataTable/TableCellWithTooltip.tsx +41 -0
  277. package/src/atoms/composed/DataTable/index.ts +2 -0
  278. package/src/atoms/composed/DateTimePicker/DateTimePicker.tsx +611 -0
  279. package/src/atoms/composed/DateTimePicker/index.ts +2 -0
  280. package/src/atoms/composed/DetailedCard/DetailedCard.tsx +181 -0
  281. package/src/atoms/composed/DetailedCard/index.ts +2 -0
  282. package/src/atoms/composed/EmptyState/EmptyState.tsx +90 -0
  283. package/src/atoms/composed/EmptyState/index.ts +1 -0
  284. package/src/atoms/composed/FileUpload/FileUpload.tsx +477 -0
  285. package/src/atoms/composed/FileUpload/index.ts +2 -0
  286. package/src/atoms/composed/FormField/FormField.tsx +92 -0
  287. package/src/atoms/composed/FormField/index.ts +1 -0
  288. package/src/atoms/composed/GlobalSearch/GlobalSearch.tsx +37 -0
  289. package/src/atoms/composed/GlobalSearch/index.ts +1 -0
  290. package/src/atoms/composed/IconBadge/IconBadge.tsx +95 -0
  291. package/src/atoms/composed/IconBadge/index.ts +2 -0
  292. package/src/atoms/composed/Modal/Modal.tsx +223 -0
  293. package/src/atoms/composed/Modal/index.ts +2 -0
  294. package/src/atoms/composed/PaletteSwitcher.tsx +386 -0
  295. package/src/atoms/composed/ProgressBar/ProgressBar.tsx +116 -0
  296. package/src/atoms/composed/ProgressBar/index.ts +1 -0
  297. package/src/atoms/composed/StatCard/StatCard.tsx +219 -0
  298. package/src/atoms/composed/StatCard/index.ts +1 -0
  299. package/src/atoms/composed/StyleGuide.tsx +717 -0
  300. package/src/atoms/composed/Toast/Toast.tsx +219 -0
  301. package/src/atoms/composed/Toast/index.ts +1 -0
  302. package/src/atoms/composed/Tooltip/Tooltip.tsx +213 -0
  303. package/src/atoms/composed/Tooltip/index.ts +1 -0
  304. package/src/atoms/composed/UserAvatar/UserAvatar.tsx +139 -0
  305. package/src/atoms/composed/UserAvatar/index.ts +1 -0
  306. package/src/atoms/composed/UserMenu/UserMenu.tsx +16 -0
  307. package/src/atoms/composed/UserMenu/index.ts +1 -0
  308. package/src/atoms/composed/index.ts +29 -0
  309. package/src/atoms/hooks/useApi.ts +80 -0
  310. package/src/atoms/hooks/useHealth.ts +17 -0
  311. package/src/atoms/index.ts +13 -0
  312. package/src/atoms/services/api/client.ts +134 -0
  313. package/src/atoms/services/auth-service.ts +248 -0
  314. package/src/atoms/services/health.ts +15 -0
  315. package/src/atoms/services/index.ts +3 -0
  316. package/src/atoms/shared/config/constants.ts +17 -0
  317. package/src/atoms/shared/config/dashboard-sizes.ts +111 -0
  318. package/src/atoms/shared/config/environment.ts +10 -0
  319. package/src/atoms/shared/index.ts +4 -0
  320. package/src/atoms/shared/styles/color-palettes.css +566 -0
  321. package/src/atoms/types/auth.ts +62 -0
  322. package/src/atoms/types/generated.ts +1469 -0
  323. package/src/atoms/types/index.ts +4 -0
  324. package/src/atoms/types/loading.ts +28 -0
  325. package/src/atoms/ui/Badge.tsx +30 -0
  326. package/src/atoms/ui/ErrorBoundary.tsx +59 -0
  327. package/src/atoms/ui/Select.tsx +53 -0
  328. package/src/atoms/ui/Switch.tsx +42 -0
  329. package/src/atoms/ui/Tabs.tsx +118 -0
  330. package/src/atoms/ui/avatar.tsx +48 -0
  331. package/src/atoms/ui/button.tsx +70 -0
  332. package/src/atoms/ui/card.tsx +76 -0
  333. package/src/atoms/ui/dropdown-menu.tsx +199 -0
  334. package/src/atoms/ui/index.ts +39 -0
  335. package/src/atoms/ui/input.tsx +23 -0
  336. package/src/atoms/ui/label.tsx +23 -0
  337. package/src/atoms/ui/skeleton.tsx +13 -0
  338. package/src/atoms/ui/spinner.tsx +49 -0
  339. package/src/atoms/ui/table.tsx +116 -0
  340. package/src/atoms/utils/animations.ts +135 -0
  341. package/src/atoms/utils/tooltip-helpers.ts +140 -0
  342. package/src/atoms/utils/utils.ts +9 -0
  343. package/src/features/auth/components/LoginForm.tsx +168 -0
  344. package/src/features/auth/components/LogoutButton.tsx +19 -0
  345. package/src/features/auth/components/ProtectedRoute.tsx +60 -0
  346. package/src/features/auth/components/index.ts +4 -0
  347. package/src/features/auth/hooks/index.ts +2 -0
  348. package/src/features/auth/hooks/useAuth.tsx +205 -0
  349. package/src/features/auth/hooks/usePermissions.ts +35 -0
  350. package/src/features/auth/index.ts +2 -0
  351. package/src/features/index.ts +2 -0
  352. package/src/index.css +704 -0
  353. package/src/index.ts +13 -0
  354. package/src/main.tsx +48 -0
  355. package/src/molecules/.gitkeep +0 -0
  356. package/src/molecules/forms/FormGroup.tsx +75 -0
  357. package/src/molecules/forms/SearchInput.tsx +259 -0
  358. package/src/molecules/forms/index.ts +4 -0
  359. package/src/molecules/index.ts +4 -0
  360. package/src/molecules/layout/AppHeader/AppHeader.tsx +42 -0
  361. package/src/molecules/layout/AppHeader/index.ts +1 -0
  362. package/src/molecules/layout/AppLayout.tsx +29 -0
  363. package/src/molecules/layout/PageTemplate.tsx +87 -0
  364. package/src/molecules/layout/SectionHeader/SectionHeader.tsx +87 -0
  365. package/src/molecules/layout/SectionHeader/index.ts +1 -0
  366. package/src/molecules/layout/ShowcaseSection.tsx +57 -0
  367. package/src/molecules/layout/Sidebar.tsx +144 -0
  368. package/src/molecules/layout/SidebarButton/SidebarButton.tsx +99 -0
  369. package/src/molecules/layout/SidebarButton/index.ts +1 -0
  370. package/src/molecules/layout/SidebarContext.tsx +31 -0
  371. package/src/molecules/layout/index.ts +7 -0
  372. package/src/molecules/navigation/NavMenu.tsx +188 -0
  373. package/src/molecules/navigation/Pagination.tsx +172 -0
  374. package/src/molecules/navigation/index.ts +4 -0
  375. package/src/organisms/index.ts +5 -0
  376. package/src/organisms/showcase/ComponentShowcasePage.tsx +2496 -0
  377. package/src/organisms/showcase/index.ts +1 -0
  378. package/src/pages/AdminShowcase/AdminCRUDShowcase.tsx +242 -0
  379. package/src/pages/AdminShowcase/AdminDashboardShowcase.tsx +171 -0
  380. package/src/pages/AdminShowcase/AdminDetailShowcase.tsx +385 -0
  381. package/src/pages/AdminShowcase/index.tsx +3 -0
  382. package/src/pages/ComponentShowcase/BadgesShowcase.tsx +188 -0
  383. package/src/pages/ComponentShowcase/CardsShowcase.tsx +392 -0
  384. package/src/pages/ComponentShowcase/PalettesShowcase.tsx +207 -0
  385. package/src/pages/ComponentShowcase/StatesShowcase.tsx +485 -0
  386. package/src/pages/ComponentShowcase/TablesShowcase.tsx +134 -0
  387. package/src/pages/ComponentShowcase/TypographyShowcase.tsx +255 -0
  388. package/src/pages/ComponentShowcase/index.tsx +188 -0
  389. package/src/pages/index.ts +2 -0
  390. package/src/templates/AuthTemplate.tsx +216 -0
  391. package/src/templates/ComponentShowcaseTemplate.tsx +173 -0
  392. package/src/templates/DashboardTemplate.tsx +232 -0
  393. package/src/templates/DataTemplate.tsx +319 -0
  394. package/src/templates/admin/AdminCRUDTemplate.tsx +630 -0
  395. package/src/templates/admin/AdminDashboardTemplate.tsx +351 -0
  396. package/src/templates/admin/AdminDetailTemplate.tsx +563 -0
  397. package/src/templates/admin/index.ts +29 -0
  398. package/src/templates/factory.tsx +169 -0
  399. package/src/templates/index.ts +37 -0
  400. package/src/vite-env.d.ts +1 -0
@@ -0,0 +1,1469 @@
1
+ /**
2
+ * This file was auto-generated by openapi-typescript.
3
+ * Do not make direct changes to the file.
4
+ */
5
+
6
+ export interface paths {
7
+ "/api/v1/health": {
8
+ parameters: {
9
+ query?: never;
10
+ header?: never;
11
+ path?: never;
12
+ cookie?: never;
13
+ };
14
+ /**
15
+ * Get overall system health status
16
+ * @description Get comprehensive health assessment including model execution status and test results
17
+ */
18
+ get: operations["get_health_status_api_v1_health_get"];
19
+ put?: never;
20
+ post?: never;
21
+ delete?: never;
22
+ options?: never;
23
+ head?: never;
24
+ patch?: never;
25
+ trace?: never;
26
+ };
27
+ "/api/v1/health/summary": {
28
+ parameters: {
29
+ query?: never;
30
+ header?: never;
31
+ path?: never;
32
+ cookie?: never;
33
+ };
34
+ /**
35
+ * Get dashboard-ready health summary
36
+ * @description Get health summary optimized for dashboard consumption with key metrics
37
+ */
38
+ get: operations["get_health_summary_api_v1_health_summary_get"];
39
+ put?: never;
40
+ post?: never;
41
+ delete?: never;
42
+ options?: never;
43
+ head?: never;
44
+ patch?: never;
45
+ trace?: never;
46
+ };
47
+ "/api/v1/models": {
48
+ parameters: {
49
+ query?: never;
50
+ header?: never;
51
+ path?: never;
52
+ cookie?: never;
53
+ };
54
+ /**
55
+ * List models with filtering and pagination
56
+ * @description Get paginated list of models with optional filtering by domain, status, owner, or search terms
57
+ */
58
+ get: operations["get_models_api_v1_models_get"];
59
+ put?: never;
60
+ post?: never;
61
+ delete?: never;
62
+ options?: never;
63
+ head?: never;
64
+ patch?: never;
65
+ trace?: never;
66
+ };
67
+ "/api/v1/models/{model_id}": {
68
+ parameters: {
69
+ query?: never;
70
+ header?: never;
71
+ path?: never;
72
+ cookie?: never;
73
+ };
74
+ /**
75
+ * Get detailed model information
76
+ * @description Get comprehensive details for a specific model including execution status and test information
77
+ */
78
+ get: operations["get_model_details_api_v1_models__model_id__get"];
79
+ put?: never;
80
+ post?: never;
81
+ delete?: never;
82
+ options?: never;
83
+ head?: never;
84
+ patch?: never;
85
+ trace?: never;
86
+ };
87
+ "/api/v1/models/{model_id}/quality-checks": {
88
+ parameters: {
89
+ query?: never;
90
+ header?: never;
91
+ path?: never;
92
+ cookie?: never;
93
+ };
94
+ /**
95
+ * Get model quality assessment
96
+ * @description Get comprehensive quality metrics for a specific model including execution success and test results
97
+ */
98
+ get: operations["get_model_quality_api_v1_models__model_id__quality_checks_get"];
99
+ put?: never;
100
+ post?: never;
101
+ delete?: never;
102
+ options?: never;
103
+ head?: never;
104
+ patch?: never;
105
+ trace?: never;
106
+ };
107
+ "/api/v1/models/{model_id}/lineage": {
108
+ parameters: {
109
+ query?: never;
110
+ header?: never;
111
+ path?: never;
112
+ cookie?: never;
113
+ };
114
+ /**
115
+ * Get model lineage information
116
+ * @description Get upstream and downstream dependencies for a specific model (basic implementation)
117
+ */
118
+ get: operations["get_model_lineage_api_v1_models__model_id__lineage_get"];
119
+ put?: never;
120
+ post?: never;
121
+ delete?: never;
122
+ options?: never;
123
+ head?: never;
124
+ patch?: never;
125
+ trace?: never;
126
+ };
127
+ "/api/v1/test-runs": {
128
+ parameters: {
129
+ query?: never;
130
+ header?: never;
131
+ path?: never;
132
+ cookie?: never;
133
+ };
134
+ /**
135
+ * List test runs with filtering and pagination
136
+ * @description Get paginated list of test executions with optional filtering by model, status, or date range
137
+ */
138
+ get: operations["get_test_runs_api_v1_test_runs_get"];
139
+ put?: never;
140
+ post?: never;
141
+ delete?: never;
142
+ options?: never;
143
+ head?: never;
144
+ patch?: never;
145
+ trace?: never;
146
+ };
147
+ "/api/v1/test-runs/{run_id}": {
148
+ parameters: {
149
+ query?: never;
150
+ header?: never;
151
+ path?: never;
152
+ cookie?: never;
153
+ };
154
+ /**
155
+ * Get detailed test run information
156
+ * @description Get comprehensive details for a specific test run execution
157
+ */
158
+ get: operations["get_test_run_details_api_v1_test_runs__run_id__get"];
159
+ put?: never;
160
+ post?: never;
161
+ delete?: never;
162
+ options?: never;
163
+ head?: never;
164
+ patch?: never;
165
+ trace?: never;
166
+ };
167
+ "/api/v1/models/{model_id}/tests": {
168
+ parameters: {
169
+ query?: never;
170
+ header?: never;
171
+ path?: never;
172
+ cookie?: never;
173
+ };
174
+ /**
175
+ * Get all tests for a specific model
176
+ * @description Get all test executions and results for a specific model
177
+ */
178
+ get: operations["get_model_tests_api_v1_models__model_id__tests_get"];
179
+ put?: never;
180
+ post?: never;
181
+ delete?: never;
182
+ options?: never;
183
+ head?: never;
184
+ patch?: never;
185
+ trace?: never;
186
+ };
187
+ "/api/v1/job-runs": {
188
+ parameters: {
189
+ query?: never;
190
+ header?: never;
191
+ path?: never;
192
+ cookie?: never;
193
+ };
194
+ /**
195
+ * List job runs with filtering and pagination
196
+ * @description Get paginated list of job executions with optional filtering by model, status, or trigger type. Use include_models=true to get model execution details.
197
+ */
198
+ get: operations["get_job_runs_api_v1_job_runs_get"];
199
+ put?: never;
200
+ post?: never;
201
+ delete?: never;
202
+ options?: never;
203
+ head?: never;
204
+ patch?: never;
205
+ trace?: never;
206
+ };
207
+ "/api/v1/job-runs/{run_id}": {
208
+ parameters: {
209
+ query?: never;
210
+ header?: never;
211
+ path?: never;
212
+ cookie?: never;
213
+ };
214
+ /**
215
+ * Get detailed job run information
216
+ * @description Get comprehensive details for a specific job run execution
217
+ */
218
+ get: operations["get_job_run_details_api_v1_job_runs__run_id__get"];
219
+ put?: never;
220
+ post?: never;
221
+ delete?: never;
222
+ options?: never;
223
+ head?: never;
224
+ patch?: never;
225
+ trace?: never;
226
+ };
227
+ }
228
+ export type webhooks = Record<string, never>;
229
+ export interface components {
230
+ schemas: {
231
+ /**
232
+ * ErrorResponse
233
+ * @description Standard error response format.
234
+ */
235
+ ErrorResponse: {
236
+ /**
237
+ * Error
238
+ * @description Error type/category
239
+ */
240
+ error: string;
241
+ /**
242
+ * Message
243
+ * @description Human-readable error message
244
+ */
245
+ message: string;
246
+ /**
247
+ * Details
248
+ * @description Additional error details
249
+ */
250
+ details?: string | null;
251
+ /**
252
+ * Path
253
+ * @description API path that caused the error
254
+ */
255
+ path?: string | null;
256
+ };
257
+ /** HTTPValidationError */
258
+ HTTPValidationError: {
259
+ /** Detail */
260
+ detail?: components["schemas"]["ValidationError"][];
261
+ };
262
+ /**
263
+ * HealthResponse
264
+ * @description Health check response for system status.
265
+ */
266
+ HealthResponse: {
267
+ /**
268
+ * Status
269
+ * @description Overall system status
270
+ */
271
+ status: string;
272
+ /**
273
+ * Environment Id
274
+ * @description Environment ID checked
275
+ */
276
+ environment_id: number;
277
+ /**
278
+ * Total Models
279
+ * @description Total number of models
280
+ */
281
+ total_models: number;
282
+ /**
283
+ * Healthy Models
284
+ * @description Number of healthy models
285
+ */
286
+ healthy_models: number;
287
+ /**
288
+ * Failing Models
289
+ * @description Number of failing models
290
+ */
291
+ failing_models: number;
292
+ /**
293
+ * Total Tests
294
+ * @description Total number of tests
295
+ */
296
+ total_tests: number;
297
+ /**
298
+ * Passing Tests
299
+ * @description Number of passing tests
300
+ */
301
+ passing_tests: number;
302
+ /**
303
+ * Failing Tests
304
+ * @description Number of failing tests
305
+ */
306
+ failing_tests: number;
307
+ /**
308
+ * Health Score
309
+ * @description Overall health score (0.0 to 1.0)
310
+ */
311
+ health_score: number;
312
+ /**
313
+ * Model Health Rate
314
+ * @description Percentage of healthy models
315
+ */
316
+ model_health_rate: number;
317
+ /**
318
+ * Test Pass Rate
319
+ * @description Percentage of passing tests
320
+ */
321
+ test_pass_rate: number;
322
+ /**
323
+ * Last Updated
324
+ * Format: date-time
325
+ * @description When this health status was calculated
326
+ */
327
+ last_updated: string;
328
+ };
329
+ /**
330
+ * JobRunSummaryResponse
331
+ * @description Summary job run information.
332
+ */
333
+ JobRunSummaryResponse: {
334
+ /**
335
+ * Id
336
+ * @description Job run unique ID
337
+ */
338
+ id: string;
339
+ /**
340
+ * Job Id
341
+ * @description Job unique ID
342
+ */
343
+ job_id: string;
344
+ /**
345
+ * Status
346
+ * @description Job execution status
347
+ */
348
+ status: string;
349
+ /**
350
+ * Trigger Type
351
+ * @description How the job was triggered
352
+ */
353
+ trigger_type: string;
354
+ /**
355
+ * Started At
356
+ * @description Job start time
357
+ */
358
+ started_at?: string | null;
359
+ /**
360
+ * Completed At
361
+ * @description Job completion time
362
+ */
363
+ completed_at?: string | null;
364
+ /**
365
+ * Duration
366
+ * @description Job duration in seconds
367
+ */
368
+ duration?: number | null;
369
+ /**
370
+ * Models Affected
371
+ * @description Number of models in this job
372
+ */
373
+ models_affected: number;
374
+ /**
375
+ * Models Successful
376
+ * @description Number of successful models
377
+ */
378
+ models_successful: number;
379
+ /**
380
+ * Models Failed
381
+ * @description Number of failed models
382
+ */
383
+ models_failed: number;
384
+ /**
385
+ * Models
386
+ * @description Model execution details (when expanded)
387
+ */
388
+ models?: components["schemas"]["ModelRunDetail"][] | null;
389
+ /**
390
+ * Tests
391
+ * @description Test execution details (when expanded)
392
+ */
393
+ tests?: components["schemas"]["TestRunDetail"][] | null;
394
+ };
395
+ /**
396
+ * JobRunsListResponse
397
+ * @description Paginated list of job runs.
398
+ */
399
+ JobRunsListResponse: {
400
+ /**
401
+ * Job Runs
402
+ * @description List of job run summaries
403
+ */
404
+ job_runs: components["schemas"]["JobRunSummaryResponse"][];
405
+ /**
406
+ * Total
407
+ * @description Total number of job runs available
408
+ */
409
+ total: number;
410
+ /**
411
+ * Limit
412
+ * @description Items per page limit
413
+ */
414
+ limit: number;
415
+ /**
416
+ * Offset
417
+ * @description Number of items skipped
418
+ */
419
+ offset: number;
420
+ /**
421
+ * Has More
422
+ * @description Whether more items are available
423
+ */
424
+ has_more: boolean;
425
+ };
426
+ /**
427
+ * LineageResponse
428
+ * @description Model lineage information.
429
+ */
430
+ LineageResponse: {
431
+ /**
432
+ * Model Id
433
+ * @description Model unique ID
434
+ */
435
+ model_id: string;
436
+ /**
437
+ * Upstream
438
+ * @description List of upstream model unique IDs
439
+ */
440
+ upstream: string[];
441
+ /**
442
+ * Downstream
443
+ * @description List of downstream model unique IDs
444
+ */
445
+ downstream: string[];
446
+ /**
447
+ * Depth
448
+ * @description Lineage traversal depth
449
+ */
450
+ depth: number;
451
+ /**
452
+ * Lineage Type
453
+ * @description Type of lineage analysis performed
454
+ */
455
+ lineage_type: string;
456
+ /**
457
+ * Note
458
+ * @description Implementation notes
459
+ */
460
+ note?: string | null;
461
+ };
462
+ /**
463
+ * ModelDetailResponse
464
+ * @description Detailed model information.
465
+ */
466
+ ModelDetailResponse: {
467
+ /**
468
+ * Unique Id
469
+ * @description Model unique ID
470
+ */
471
+ unique_id: string;
472
+ /**
473
+ * Name
474
+ * @description Model name
475
+ */
476
+ name: string;
477
+ /**
478
+ * Description
479
+ * @description Model description
480
+ */
481
+ description?: string | null;
482
+ /**
483
+ * Database
484
+ * @description Database name
485
+ */
486
+ database: string;
487
+ /**
488
+ * Schema
489
+ * @description Schema name
490
+ */
491
+ schema: string;
492
+ /**
493
+ * Alias
494
+ * @description Model alias/table name
495
+ */
496
+ alias: string;
497
+ /**
498
+ * Materialized Type
499
+ * @description Materialization type
500
+ */
501
+ materialized_type: string;
502
+ /**
503
+ * Status
504
+ * @description Current execution status
505
+ */
506
+ status: string;
507
+ /**
508
+ * Owner
509
+ * @description Model owner
510
+ */
511
+ owner?: string | null;
512
+ /**
513
+ * Domain
514
+ * @description Business domain
515
+ */
516
+ domain?: string | null;
517
+ /**
518
+ * Quality Score
519
+ * @description Quality score (0.0 to 1.0)
520
+ */
521
+ quality_score: number;
522
+ /**
523
+ * Last Run
524
+ * @description Last execution time
525
+ */
526
+ last_run?: string | null;
527
+ /**
528
+ * Execution Time
529
+ * @description Last execution duration
530
+ */
531
+ execution_time?: number | null;
532
+ /**
533
+ * Has Error
534
+ * @description Whether model has execution errors
535
+ */
536
+ has_error: boolean;
537
+ /**
538
+ * Error Message
539
+ * @description Error message if any
540
+ */
541
+ error_message?: string | null;
542
+ /**
543
+ * Test Count
544
+ * @description Total number of tests
545
+ */
546
+ test_count: number;
547
+ /**
548
+ * Passing Tests
549
+ * @description Number of passing tests
550
+ */
551
+ passing_tests: number;
552
+ /**
553
+ * Failing Tests
554
+ * @description Number of failing tests
555
+ */
556
+ failing_tests: number;
557
+ /**
558
+ * Metadata
559
+ * @description Additional model metadata
560
+ */
561
+ metadata: {
562
+ [key: string]: unknown;
563
+ };
564
+ };
565
+ /**
566
+ * ModelRunDetail
567
+ * @description Model execution detail within a job run.
568
+ */
569
+ ModelRunDetail: {
570
+ /**
571
+ * Unique Id
572
+ * @description Model unique ID
573
+ */
574
+ unique_id: string;
575
+ /**
576
+ * Name
577
+ * @description Model name
578
+ */
579
+ name: string;
580
+ /**
581
+ * Status
582
+ * @description Execution status
583
+ */
584
+ status: string;
585
+ /**
586
+ * Execution Time
587
+ * @description Execution duration in seconds
588
+ */
589
+ execution_time?: number | null;
590
+ /**
591
+ * Error
592
+ * @description Error message if failed
593
+ */
594
+ error?: string | null;
595
+ };
596
+ /**
597
+ * ModelSummaryResponse
598
+ * @description Summary model information for lists.
599
+ */
600
+ ModelSummaryResponse: {
601
+ /**
602
+ * Unique Id
603
+ * @description Model unique ID
604
+ */
605
+ unique_id: string;
606
+ /**
607
+ * Name
608
+ * @description Model name
609
+ */
610
+ name: string;
611
+ /**
612
+ * Description
613
+ * @description Model description
614
+ */
615
+ description?: string | null;
616
+ /**
617
+ * Database
618
+ * @description Database name
619
+ */
620
+ database: string;
621
+ /**
622
+ * Schema
623
+ * @description Schema name
624
+ */
625
+ schema: string;
626
+ /**
627
+ * Alias
628
+ * @description Model alias/table name
629
+ */
630
+ alias: string;
631
+ /**
632
+ * Materialized Type
633
+ * @description Materialization type (table, view, etc.)
634
+ */
635
+ materialized_type: string;
636
+ /**
637
+ * Status
638
+ * @description Current execution status
639
+ */
640
+ status: string;
641
+ /**
642
+ * Owner
643
+ * @description Model owner
644
+ */
645
+ owner?: string | null;
646
+ /**
647
+ * Domain
648
+ * @description Business domain
649
+ */
650
+ domain?: string | null;
651
+ /**
652
+ * Quality Score
653
+ * @description Quality score (0.0 to 1.0)
654
+ */
655
+ quality_score?: number | null;
656
+ /**
657
+ * Test Count
658
+ * @description Number of tests for this model
659
+ */
660
+ test_count: number;
661
+ /**
662
+ * Last Run
663
+ * @description Last execution time
664
+ */
665
+ last_run?: string | null;
666
+ /**
667
+ * Execution Time
668
+ * @description Last execution duration in seconds
669
+ */
670
+ execution_time?: number | null;
671
+ /**
672
+ * Has Error
673
+ * @description Whether model has execution errors
674
+ */
675
+ has_error: boolean;
676
+ };
677
+ /**
678
+ * ModelsListResponse
679
+ * @description Paginated list of models.
680
+ */
681
+ ModelsListResponse: {
682
+ /**
683
+ * Models
684
+ * @description List of model summaries
685
+ */
686
+ models: components["schemas"]["ModelSummaryResponse"][];
687
+ /**
688
+ * Total
689
+ * @description Total number of models available
690
+ */
691
+ total: number;
692
+ /**
693
+ * Limit
694
+ * @description Items per page limit
695
+ */
696
+ limit: number;
697
+ /**
698
+ * Offset
699
+ * @description Number of items skipped
700
+ */
701
+ offset: number;
702
+ /**
703
+ * Has More
704
+ * @description Whether more items are available
705
+ */
706
+ has_more: boolean;
707
+ };
708
+ /**
709
+ * QualityCheckResponse
710
+ * @description Model quality assessment response.
711
+ */
712
+ QualityCheckResponse: {
713
+ /**
714
+ * Model Id
715
+ * @description Model unique ID
716
+ */
717
+ model_id: string;
718
+ /**
719
+ * Overall Score
720
+ * @description Overall quality score (0.0 to 1.0)
721
+ */
722
+ overall_score: number;
723
+ /**
724
+ * Execution Success Rate
725
+ * @description Model execution success rate
726
+ */
727
+ execution_success_rate: number;
728
+ /**
729
+ * Test Pass Rate
730
+ * @description Test pass rate for this model
731
+ */
732
+ test_pass_rate: number;
733
+ /**
734
+ * Quality Grade
735
+ * @description Quality grade (A, B, C, D, F)
736
+ */
737
+ quality_grade: string;
738
+ /**
739
+ * Risk Level
740
+ * @description Risk level (low, medium, high)
741
+ */
742
+ risk_level: string;
743
+ /**
744
+ * Trend
745
+ * @description Quality trend (improving, stable, declining)
746
+ */
747
+ trend: string;
748
+ /**
749
+ * Passing Tests
750
+ * @description Number of passing tests
751
+ */
752
+ passing_tests: number;
753
+ /**
754
+ * Failing Tests
755
+ * @description Number of failing tests
756
+ */
757
+ failing_tests: number;
758
+ /**
759
+ * Critical Tests Failing
760
+ * @description Number of critical tests failing
761
+ */
762
+ critical_tests_failing: number;
763
+ /**
764
+ * Total Tests
765
+ * @description Total number of tests
766
+ */
767
+ total_tests: number;
768
+ /**
769
+ * Last Execution Time
770
+ * @description Last execution time
771
+ */
772
+ last_execution_time?: string | null;
773
+ /**
774
+ * Has Recent Failures
775
+ * @description Whether there are recent failures
776
+ */
777
+ has_recent_failures: boolean;
778
+ };
779
+ /**
780
+ * TestRunDetail
781
+ * @description Test execution detail within a job run.
782
+ */
783
+ TestRunDetail: {
784
+ /**
785
+ * Unique Id
786
+ * @description Test unique ID
787
+ */
788
+ unique_id: string;
789
+ /**
790
+ * Name
791
+ * @description Test name
792
+ */
793
+ name: string;
794
+ /**
795
+ * Model Id
796
+ * @description Associated model unique ID
797
+ */
798
+ model_id: string;
799
+ /**
800
+ * Status
801
+ * @description Test status
802
+ */
803
+ status: string;
804
+ /**
805
+ * Execution Time
806
+ * @description Execution duration in seconds
807
+ */
808
+ execution_time?: number | null;
809
+ /**
810
+ * Error
811
+ * @description Error message if failed
812
+ */
813
+ error?: string | null;
814
+ };
815
+ /**
816
+ * TestRunsListResponse
817
+ * @description Paginated list of test runs.
818
+ */
819
+ TestRunsListResponse: {
820
+ /**
821
+ * Test Runs
822
+ * @description List of test run summaries
823
+ */
824
+ test_runs: components["schemas"]["TestSummaryResponse"][];
825
+ /**
826
+ * Total
827
+ * @description Total number of test runs available
828
+ */
829
+ total: number;
830
+ /**
831
+ * Limit
832
+ * @description Items per page limit
833
+ */
834
+ limit: number;
835
+ /**
836
+ * Offset
837
+ * @description Number of items skipped
838
+ */
839
+ offset: number;
840
+ /**
841
+ * Has More
842
+ * @description Whether more items are available
843
+ */
844
+ has_more: boolean;
845
+ };
846
+ /**
847
+ * TestSummaryResponse
848
+ * @description Summary test information for lists.
849
+ */
850
+ TestSummaryResponse: {
851
+ /**
852
+ * Unique Id
853
+ * @description Test unique ID
854
+ */
855
+ unique_id: string;
856
+ /**
857
+ * Name
858
+ * @description Test name
859
+ */
860
+ name: string;
861
+ /**
862
+ * Test Type
863
+ * @description Type of test
864
+ */
865
+ test_type?: string | null;
866
+ /**
867
+ * Column Name
868
+ * @description Column being tested
869
+ */
870
+ column_name?: string | null;
871
+ /**
872
+ * Model Id
873
+ * @description Model unique ID being tested
874
+ */
875
+ model_id: string;
876
+ /**
877
+ * Status
878
+ * @description Test execution status
879
+ */
880
+ status: string;
881
+ /**
882
+ * Last Run
883
+ * @description Last execution time
884
+ */
885
+ last_run?: string | null;
886
+ /**
887
+ * Execution Time
888
+ * @description Execution duration in seconds
889
+ */
890
+ execution_time?: number | null;
891
+ /**
892
+ * Error Message
893
+ * @description Error message if failed
894
+ */
895
+ error_message?: string | null;
896
+ /**
897
+ * Severity
898
+ * @description Test severity level
899
+ */
900
+ severity: string;
901
+ };
902
+ /** ValidationError */
903
+ ValidationError: {
904
+ /** Location */
905
+ loc: (string | number)[];
906
+ /** Message */
907
+ msg: string;
908
+ /** Error Type */
909
+ type: string;
910
+ };
911
+ };
912
+ responses: never;
913
+ parameters: never;
914
+ requestBodies: never;
915
+ headers: never;
916
+ pathItems: never;
917
+ }
918
+ export type $defs = Record<string, never>;
919
+ export interface operations {
920
+ get_health_status_api_v1_health_get: {
921
+ parameters: {
922
+ query?: {
923
+ /** @description Environment ID override */
924
+ environment_id?: number | null;
925
+ };
926
+ header?: never;
927
+ path?: never;
928
+ cookie?: never;
929
+ };
930
+ requestBody?: never;
931
+ responses: {
932
+ /** @description Successfully retrieved health status */
933
+ 200: {
934
+ headers: {
935
+ [name: string]: unknown;
936
+ };
937
+ content: {
938
+ "application/json": components["schemas"]["HealthResponse"];
939
+ };
940
+ };
941
+ /** @description Validation Error */
942
+ 422: {
943
+ headers: {
944
+ [name: string]: unknown;
945
+ };
946
+ content: {
947
+ "application/json": components["schemas"]["HTTPValidationError"];
948
+ };
949
+ };
950
+ /** @description Internal server error */
951
+ 500: {
952
+ headers: {
953
+ [name: string]: unknown;
954
+ };
955
+ content: {
956
+ "application/json": components["schemas"]["ErrorResponse"];
957
+ };
958
+ };
959
+ };
960
+ };
961
+ get_health_summary_api_v1_health_summary_get: {
962
+ parameters: {
963
+ query?: {
964
+ /** @description Environment ID override */
965
+ environment_id?: number | null;
966
+ };
967
+ header?: never;
968
+ path?: never;
969
+ cookie?: never;
970
+ };
971
+ requestBody?: never;
972
+ responses: {
973
+ /** @description Successfully retrieved health summary */
974
+ 200: {
975
+ headers: {
976
+ [name: string]: unknown;
977
+ };
978
+ content: {
979
+ "application/json": components["schemas"]["HealthResponse"];
980
+ };
981
+ };
982
+ /** @description Validation Error */
983
+ 422: {
984
+ headers: {
985
+ [name: string]: unknown;
986
+ };
987
+ content: {
988
+ "application/json": components["schemas"]["HTTPValidationError"];
989
+ };
990
+ };
991
+ /** @description Internal server error */
992
+ 500: {
993
+ headers: {
994
+ [name: string]: unknown;
995
+ };
996
+ content: {
997
+ "application/json": components["schemas"]["ErrorResponse"];
998
+ };
999
+ };
1000
+ };
1001
+ };
1002
+ get_models_api_v1_models_get: {
1003
+ parameters: {
1004
+ query?: {
1005
+ /** @description Filter by domain/business area */
1006
+ domain?: string | null;
1007
+ /** @description Filter by execution status */
1008
+ status?: string | null;
1009
+ /** @description Filter by model owner */
1010
+ owner?: string | null;
1011
+ /** @description Search in model names and descriptions */
1012
+ search?: string | null;
1013
+ /** @description Maximum number of items */
1014
+ limit?: number;
1015
+ /** @description Number of items to skip */
1016
+ offset?: number;
1017
+ /** @description Environment ID override */
1018
+ environment_id?: number | null;
1019
+ };
1020
+ header?: never;
1021
+ path?: never;
1022
+ cookie?: never;
1023
+ };
1024
+ requestBody?: never;
1025
+ responses: {
1026
+ /** @description Successfully retrieved models list */
1027
+ 200: {
1028
+ headers: {
1029
+ [name: string]: unknown;
1030
+ };
1031
+ content: {
1032
+ "application/json": components["schemas"]["ModelsListResponse"];
1033
+ };
1034
+ };
1035
+ /** @description Invalid query parameters */
1036
+ 422: {
1037
+ headers: {
1038
+ [name: string]: unknown;
1039
+ };
1040
+ content: {
1041
+ "application/json": components["schemas"]["ErrorResponse"];
1042
+ };
1043
+ };
1044
+ /** @description Internal server error */
1045
+ 500: {
1046
+ headers: {
1047
+ [name: string]: unknown;
1048
+ };
1049
+ content: {
1050
+ "application/json": components["schemas"]["ErrorResponse"];
1051
+ };
1052
+ };
1053
+ };
1054
+ };
1055
+ get_model_details_api_v1_models__model_id__get: {
1056
+ parameters: {
1057
+ query?: {
1058
+ /** @description Environment ID override */
1059
+ environment_id?: number | null;
1060
+ };
1061
+ header?: never;
1062
+ path: {
1063
+ model_id: string;
1064
+ };
1065
+ cookie?: never;
1066
+ };
1067
+ requestBody?: never;
1068
+ responses: {
1069
+ /** @description Successfully retrieved model details */
1070
+ 200: {
1071
+ headers: {
1072
+ [name: string]: unknown;
1073
+ };
1074
+ content: {
1075
+ "application/json": components["schemas"]["ModelDetailResponse"];
1076
+ };
1077
+ };
1078
+ /** @description Model not found */
1079
+ 404: {
1080
+ headers: {
1081
+ [name: string]: unknown;
1082
+ };
1083
+ content: {
1084
+ "application/json": components["schemas"]["ErrorResponse"];
1085
+ };
1086
+ };
1087
+ /** @description Validation Error */
1088
+ 422: {
1089
+ headers: {
1090
+ [name: string]: unknown;
1091
+ };
1092
+ content: {
1093
+ "application/json": components["schemas"]["HTTPValidationError"];
1094
+ };
1095
+ };
1096
+ /** @description Internal server error */
1097
+ 500: {
1098
+ headers: {
1099
+ [name: string]: unknown;
1100
+ };
1101
+ content: {
1102
+ "application/json": components["schemas"]["ErrorResponse"];
1103
+ };
1104
+ };
1105
+ };
1106
+ };
1107
+ get_model_quality_api_v1_models__model_id__quality_checks_get: {
1108
+ parameters: {
1109
+ query?: {
1110
+ /** @description Environment ID override */
1111
+ environment_id?: number | null;
1112
+ };
1113
+ header?: never;
1114
+ path: {
1115
+ model_id: string;
1116
+ };
1117
+ cookie?: never;
1118
+ };
1119
+ requestBody?: never;
1120
+ responses: {
1121
+ /** @description Successfully retrieved quality assessment */
1122
+ 200: {
1123
+ headers: {
1124
+ [name: string]: unknown;
1125
+ };
1126
+ content: {
1127
+ "application/json": components["schemas"]["QualityCheckResponse"];
1128
+ };
1129
+ };
1130
+ /** @description Model not found */
1131
+ 404: {
1132
+ headers: {
1133
+ [name: string]: unknown;
1134
+ };
1135
+ content: {
1136
+ "application/json": components["schemas"]["ErrorResponse"];
1137
+ };
1138
+ };
1139
+ /** @description Validation Error */
1140
+ 422: {
1141
+ headers: {
1142
+ [name: string]: unknown;
1143
+ };
1144
+ content: {
1145
+ "application/json": components["schemas"]["HTTPValidationError"];
1146
+ };
1147
+ };
1148
+ /** @description Internal server error */
1149
+ 500: {
1150
+ headers: {
1151
+ [name: string]: unknown;
1152
+ };
1153
+ content: {
1154
+ "application/json": components["schemas"]["ErrorResponse"];
1155
+ };
1156
+ };
1157
+ };
1158
+ };
1159
+ get_model_lineage_api_v1_models__model_id__lineage_get: {
1160
+ parameters: {
1161
+ query?: {
1162
+ /** @description Environment ID override */
1163
+ environment_id?: number | null;
1164
+ };
1165
+ header?: never;
1166
+ path: {
1167
+ model_id: string;
1168
+ };
1169
+ cookie?: never;
1170
+ };
1171
+ requestBody?: never;
1172
+ responses: {
1173
+ /** @description Successfully retrieved lineage information */
1174
+ 200: {
1175
+ headers: {
1176
+ [name: string]: unknown;
1177
+ };
1178
+ content: {
1179
+ "application/json": components["schemas"]["LineageResponse"];
1180
+ };
1181
+ };
1182
+ /** @description Model not found */
1183
+ 404: {
1184
+ headers: {
1185
+ [name: string]: unknown;
1186
+ };
1187
+ content: {
1188
+ "application/json": components["schemas"]["ErrorResponse"];
1189
+ };
1190
+ };
1191
+ /** @description Validation Error */
1192
+ 422: {
1193
+ headers: {
1194
+ [name: string]: unknown;
1195
+ };
1196
+ content: {
1197
+ "application/json": components["schemas"]["HTTPValidationError"];
1198
+ };
1199
+ };
1200
+ /** @description Internal server error */
1201
+ 500: {
1202
+ headers: {
1203
+ [name: string]: unknown;
1204
+ };
1205
+ content: {
1206
+ "application/json": components["schemas"]["ErrorResponse"];
1207
+ };
1208
+ };
1209
+ };
1210
+ };
1211
+ get_test_runs_api_v1_test_runs_get: {
1212
+ parameters: {
1213
+ query?: {
1214
+ /** @description Filter by specific model unique ID */
1215
+ model_id?: string | null;
1216
+ /** @description Filter by test execution status */
1217
+ status?: string | null;
1218
+ /** @description Maximum number of items */
1219
+ limit?: number;
1220
+ /** @description Number of items to skip */
1221
+ offset?: number;
1222
+ /** @description Environment ID override */
1223
+ environment_id?: number | null;
1224
+ };
1225
+ header?: never;
1226
+ path?: never;
1227
+ cookie?: never;
1228
+ };
1229
+ requestBody?: never;
1230
+ responses: {
1231
+ /** @description Successfully retrieved test runs list */
1232
+ 200: {
1233
+ headers: {
1234
+ [name: string]: unknown;
1235
+ };
1236
+ content: {
1237
+ "application/json": components["schemas"]["TestRunsListResponse"];
1238
+ };
1239
+ };
1240
+ /** @description Invalid query parameters */
1241
+ 422: {
1242
+ headers: {
1243
+ [name: string]: unknown;
1244
+ };
1245
+ content: {
1246
+ "application/json": components["schemas"]["ErrorResponse"];
1247
+ };
1248
+ };
1249
+ /** @description Internal server error */
1250
+ 500: {
1251
+ headers: {
1252
+ [name: string]: unknown;
1253
+ };
1254
+ content: {
1255
+ "application/json": components["schemas"]["ErrorResponse"];
1256
+ };
1257
+ };
1258
+ };
1259
+ };
1260
+ get_test_run_details_api_v1_test_runs__run_id__get: {
1261
+ parameters: {
1262
+ query?: {
1263
+ /** @description Environment ID override */
1264
+ environment_id?: number | null;
1265
+ };
1266
+ header?: never;
1267
+ path: {
1268
+ run_id: string;
1269
+ };
1270
+ cookie?: never;
1271
+ };
1272
+ requestBody?: never;
1273
+ responses: {
1274
+ /** @description Successfully retrieved test run details */
1275
+ 200: {
1276
+ headers: {
1277
+ [name: string]: unknown;
1278
+ };
1279
+ content: {
1280
+ "application/json": components["schemas"]["TestSummaryResponse"];
1281
+ };
1282
+ };
1283
+ /** @description Test run not found */
1284
+ 404: {
1285
+ headers: {
1286
+ [name: string]: unknown;
1287
+ };
1288
+ content: {
1289
+ "application/json": components["schemas"]["ErrorResponse"];
1290
+ };
1291
+ };
1292
+ /** @description Validation Error */
1293
+ 422: {
1294
+ headers: {
1295
+ [name: string]: unknown;
1296
+ };
1297
+ content: {
1298
+ "application/json": components["schemas"]["HTTPValidationError"];
1299
+ };
1300
+ };
1301
+ /** @description Internal server error */
1302
+ 500: {
1303
+ headers: {
1304
+ [name: string]: unknown;
1305
+ };
1306
+ content: {
1307
+ "application/json": components["schemas"]["ErrorResponse"];
1308
+ };
1309
+ };
1310
+ };
1311
+ };
1312
+ get_model_tests_api_v1_models__model_id__tests_get: {
1313
+ parameters: {
1314
+ query?: {
1315
+ /** @description Environment ID override */
1316
+ environment_id?: number | null;
1317
+ };
1318
+ header?: never;
1319
+ path: {
1320
+ model_id: string;
1321
+ };
1322
+ cookie?: never;
1323
+ };
1324
+ requestBody?: never;
1325
+ responses: {
1326
+ /** @description Successfully retrieved model tests */
1327
+ 200: {
1328
+ headers: {
1329
+ [name: string]: unknown;
1330
+ };
1331
+ content: {
1332
+ "application/json": components["schemas"]["TestRunsListResponse"];
1333
+ };
1334
+ };
1335
+ /** @description Model not found */
1336
+ 404: {
1337
+ headers: {
1338
+ [name: string]: unknown;
1339
+ };
1340
+ content: {
1341
+ "application/json": components["schemas"]["ErrorResponse"];
1342
+ };
1343
+ };
1344
+ /** @description Validation Error */
1345
+ 422: {
1346
+ headers: {
1347
+ [name: string]: unknown;
1348
+ };
1349
+ content: {
1350
+ "application/json": components["schemas"]["HTTPValidationError"];
1351
+ };
1352
+ };
1353
+ /** @description Internal server error */
1354
+ 500: {
1355
+ headers: {
1356
+ [name: string]: unknown;
1357
+ };
1358
+ content: {
1359
+ "application/json": components["schemas"]["ErrorResponse"];
1360
+ };
1361
+ };
1362
+ };
1363
+ };
1364
+ get_job_runs_api_v1_job_runs_get: {
1365
+ parameters: {
1366
+ query?: {
1367
+ /** @description Filter by specific model unique ID */
1368
+ model_id?: string | null;
1369
+ /** @description Filter by job execution status */
1370
+ status?: string | null;
1371
+ /** @description Filter by trigger type */
1372
+ trigger_type?: string | null;
1373
+ /** @description Maximum number of items */
1374
+ limit?: number;
1375
+ /** @description Number of items to skip */
1376
+ offset?: number;
1377
+ /** @description Include model execution details */
1378
+ include_models?: boolean;
1379
+ /** @description Environment ID override */
1380
+ environment_id?: number | null;
1381
+ };
1382
+ header?: never;
1383
+ path?: never;
1384
+ cookie?: never;
1385
+ };
1386
+ requestBody?: never;
1387
+ responses: {
1388
+ /** @description Successfully retrieved job runs list */
1389
+ 200: {
1390
+ headers: {
1391
+ [name: string]: unknown;
1392
+ };
1393
+ content: {
1394
+ "application/json": components["schemas"]["JobRunsListResponse"];
1395
+ };
1396
+ };
1397
+ /** @description Invalid query parameters */
1398
+ 422: {
1399
+ headers: {
1400
+ [name: string]: unknown;
1401
+ };
1402
+ content: {
1403
+ "application/json": components["schemas"]["ErrorResponse"];
1404
+ };
1405
+ };
1406
+ /** @description Feature not yet implemented */
1407
+ 501: {
1408
+ headers: {
1409
+ [name: string]: unknown;
1410
+ };
1411
+ content: {
1412
+ "application/json": components["schemas"]["ErrorResponse"];
1413
+ };
1414
+ };
1415
+ };
1416
+ };
1417
+ get_job_run_details_api_v1_job_runs__run_id__get: {
1418
+ parameters: {
1419
+ query?: {
1420
+ /** @description Environment ID override */
1421
+ environment_id?: number | null;
1422
+ };
1423
+ header?: never;
1424
+ path: {
1425
+ run_id: string;
1426
+ };
1427
+ cookie?: never;
1428
+ };
1429
+ requestBody?: never;
1430
+ responses: {
1431
+ /** @description Successfully retrieved job run details */
1432
+ 200: {
1433
+ headers: {
1434
+ [name: string]: unknown;
1435
+ };
1436
+ content: {
1437
+ "application/json": components["schemas"]["JobRunSummaryResponse"];
1438
+ };
1439
+ };
1440
+ /** @description Job run not found */
1441
+ 404: {
1442
+ headers: {
1443
+ [name: string]: unknown;
1444
+ };
1445
+ content: {
1446
+ "application/json": components["schemas"]["ErrorResponse"];
1447
+ };
1448
+ };
1449
+ /** @description Validation Error */
1450
+ 422: {
1451
+ headers: {
1452
+ [name: string]: unknown;
1453
+ };
1454
+ content: {
1455
+ "application/json": components["schemas"]["HTTPValidationError"];
1456
+ };
1457
+ };
1458
+ /** @description Feature not yet implemented */
1459
+ 501: {
1460
+ headers: {
1461
+ [name: string]: unknown;
1462
+ };
1463
+ content: {
1464
+ "application/json": components["schemas"]["ErrorResponse"];
1465
+ };
1466
+ };
1467
+ };
1468
+ };
1469
+ }