@pattern-stack/frontend-patterns 0.1.3 → 0.2.0-alpha.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 (446) hide show
  1. package/CHANGELOG.md +69 -74
  2. package/README.md +17 -2
  3. package/cli/commands/generate-hooks.ts +15 -6
  4. package/cli/commands/scaffold.ts +1 -1
  5. package/cli/index.ts +1 -3
  6. package/cli/src/codegen/openapi/__tests__/naming-utils.test.js +367 -0
  7. package/cli/src/codegen/openapi/client-generator.js +90 -35
  8. package/cli/src/codegen/openapi/confidence-scorer.js +89 -200
  9. package/cli/src/codegen/openapi/hook-config.js +45 -63
  10. package/cli/src/codegen/openapi/hook-generator.js +253 -547
  11. package/cli/src/codegen/openapi/naming-constants.js +98 -0
  12. package/cli/src/codegen/openapi/naming-utils.js +149 -0
  13. package/cli/src/codegen/openapi/parser.js +9 -14
  14. package/cli/src/codegen/openapi/type-generator.js +6 -16
  15. package/dist/atoms/components/core/Avatar/Avatar.d.ts +6 -6
  16. package/dist/atoms/components/core/Avatar/Avatar.d.ts.map +1 -1
  17. package/dist/atoms/components/core/Avatar/index.d.ts +1 -1
  18. package/dist/atoms/components/core/Badge/Badge.d.ts +6 -6
  19. package/dist/atoms/components/core/Badge/Badge.d.ts.map +1 -1
  20. package/dist/atoms/components/core/Badge/index.d.ts +1 -1
  21. package/dist/atoms/components/core/Button/Button.d.ts +3 -3
  22. package/dist/atoms/components/core/Button/Button.d.ts.map +1 -1
  23. package/dist/atoms/components/core/Button/index.d.ts +2 -2
  24. package/dist/atoms/components/core/Card/Card.d.ts +2 -2
  25. package/dist/atoms/components/core/Card/Card.d.ts.map +1 -1
  26. package/dist/atoms/components/core/Card/index.d.ts +2 -2
  27. package/dist/atoms/components/core/Card/index.d.ts.map +1 -1
  28. package/dist/atoms/components/core/Checkbox/Checkbox.d.ts +4 -4
  29. package/dist/atoms/components/core/Checkbox/Checkbox.d.ts.map +1 -1
  30. package/dist/atoms/components/core/Checkbox/index.d.ts +2 -2
  31. package/dist/atoms/components/core/Input/Input.d.ts +2 -2
  32. package/dist/atoms/components/core/Input/Input.d.ts.map +1 -1
  33. package/dist/atoms/components/core/Input/index.d.ts +2 -2
  34. package/dist/atoms/components/core/Label/Label.d.ts +3 -4
  35. package/dist/atoms/components/core/Label/Label.d.ts.map +1 -1
  36. package/dist/atoms/components/core/Label/index.d.ts +2 -2
  37. package/dist/atoms/components/core/Select/Select.d.ts +5 -5
  38. package/dist/atoms/components/core/Select/Select.d.ts.map +1 -1
  39. package/dist/atoms/components/core/Select/index.d.ts +2 -2
  40. package/dist/atoms/components/core/Select/index.d.ts.map +1 -1
  41. package/dist/atoms/components/core/Spinner/Spinner.d.ts +4 -4
  42. package/dist/atoms/components/core/Spinner/Spinner.d.ts.map +1 -1
  43. package/dist/atoms/components/core/Spinner/index.d.ts +2 -2
  44. package/dist/atoms/components/core/Switch/Switch.d.ts +4 -4
  45. package/dist/atoms/components/core/Switch/Switch.d.ts.map +1 -1
  46. package/dist/atoms/components/core/Switch/index.d.ts +1 -1
  47. package/dist/atoms/components/core/index.d.ts +10 -10
  48. package/dist/atoms/components/core/index.d.ts.map +1 -1
  49. package/dist/atoms/components/data/ActivityFeed/ActivityFeed.d.ts +2 -2
  50. package/dist/atoms/components/data/ActivityFeed/ActivityFeed.d.ts.map +1 -1
  51. package/dist/atoms/components/data/ActivityFeed/ActivityFeedItem.d.ts +3 -3
  52. package/dist/atoms/components/data/ActivityFeed/ActivityFeedItem.d.ts.map +1 -1
  53. package/dist/atoms/components/data/ActivityFeed/index.d.ts +3 -3
  54. package/dist/atoms/components/data/ActivityFeed/index.d.ts.map +1 -1
  55. package/dist/atoms/components/data/ActivityFeed/types.d.ts +3 -3
  56. package/dist/atoms/components/data/ActivityFeed/types.d.ts.map +1 -1
  57. package/dist/atoms/components/data/ActivityFeed/utils.d.ts +2 -2
  58. package/dist/atoms/components/data/ActivityFeed/utils.d.ts.map +1 -1
  59. package/dist/atoms/components/data/Chart/Chart.d.ts +52 -5
  60. package/dist/atoms/components/data/Chart/Chart.d.ts.map +1 -1
  61. package/dist/atoms/components/data/Chart/index.d.ts +2 -2
  62. package/dist/atoms/components/data/Chart/index.d.ts.map +1 -1
  63. package/dist/atoms/components/data/DataBadge/DataBadge.d.ts +6 -6
  64. package/dist/atoms/components/data/DataBadge/DataBadge.d.ts.map +1 -1
  65. package/dist/atoms/components/data/DataBadge/index.d.ts +1 -1
  66. package/dist/atoms/components/data/DataTable/DataTable.d.ts +4 -4
  67. package/dist/atoms/components/data/DataTable/DataTable.d.ts.map +1 -1
  68. package/dist/atoms/components/data/DataTable/DataTable.types.d.ts +4 -4
  69. package/dist/atoms/components/data/DataTable/DataTable.types.d.ts.map +1 -1
  70. package/dist/atoms/components/data/DataTable/TableCellWithTooltip.d.ts +1 -1
  71. package/dist/atoms/components/data/DataTable/index.d.ts +2 -2
  72. package/dist/atoms/components/data/DetailedCard/DetailedCard.d.ts +4 -4
  73. package/dist/atoms/components/data/DetailedCard/DetailedCard.d.ts.map +1 -1
  74. package/dist/atoms/components/data/DetailedCard/index.d.ts +2 -2
  75. package/dist/atoms/components/data/EntityIcon/EntityIcon.d.ts +3 -3
  76. package/dist/atoms/components/data/EntityIcon/EntityIcon.d.ts.map +1 -1
  77. package/dist/atoms/components/data/EntityIcon/index.d.ts +1 -1
  78. package/dist/atoms/components/data/IconBadge/IconBadge.d.ts +6 -6
  79. package/dist/atoms/components/data/IconBadge/IconBadge.d.ts.map +1 -1
  80. package/dist/atoms/components/data/IconBadge/index.d.ts +2 -2
  81. package/dist/atoms/components/data/ListCard/ListCard.d.ts +9 -9
  82. package/dist/atoms/components/data/ListCard/ListCard.d.ts.map +1 -1
  83. package/dist/atoms/components/data/ListCard/index.d.ts +1 -1
  84. package/dist/atoms/components/data/ProgressBar/ProgressBar.d.ts +5 -5
  85. package/dist/atoms/components/data/ProgressBar/ProgressBar.d.ts.map +1 -1
  86. package/dist/atoms/components/data/ProgressBar/index.d.ts +1 -1
  87. package/dist/atoms/components/data/StatCard/StatCard.d.ts +3 -3
  88. package/dist/atoms/components/data/StatCard/StatCard.d.ts.map +1 -1
  89. package/dist/atoms/components/data/StatCard/index.d.ts +1 -1
  90. package/dist/atoms/components/data/Table/Table.d.ts +2 -2
  91. package/dist/atoms/components/data/Table/Table.d.ts.map +1 -1
  92. package/dist/atoms/components/data/Table/index.d.ts +1 -1
  93. package/dist/atoms/components/data/TruncatedText/TruncatedText.d.ts +2 -2
  94. package/dist/atoms/components/data/TruncatedText/TruncatedText.d.ts.map +1 -1
  95. package/dist/atoms/components/data/TruncatedText/index.d.ts +1 -1
  96. package/dist/atoms/components/data/index.d.ts +12 -12
  97. package/dist/atoms/components/data/index.d.ts.map +1 -1
  98. package/dist/atoms/components/domain/SalesPanel/SalesPanel.d.ts +15 -15
  99. package/dist/atoms/components/domain/SalesPanel/SalesPanel.d.ts.map +1 -1
  100. package/dist/atoms/components/domain/SalesPanel/index.d.ts +1 -1
  101. package/dist/atoms/components/domain/SalesPanel/index.d.ts.map +1 -1
  102. package/dist/atoms/components/domain/index.d.ts +1 -1
  103. package/dist/atoms/components/feedback/Alert/Alert.d.ts +4 -4
  104. package/dist/atoms/components/feedback/Alert/Alert.d.ts.map +1 -1
  105. package/dist/atoms/components/feedback/Alert/index.d.ts +1 -1
  106. package/dist/atoms/components/feedback/EmptyState/EmptyState.d.ts +3 -3
  107. package/dist/atoms/components/feedback/EmptyState/EmptyState.d.ts.map +1 -1
  108. package/dist/atoms/components/feedback/EmptyState/index.d.ts +1 -1
  109. package/dist/atoms/components/feedback/ErrorBoundary/ErrorBoundary.d.ts +1 -1
  110. package/dist/atoms/components/feedback/ErrorBoundary/ErrorBoundary.d.ts.map +1 -1
  111. package/dist/atoms/components/feedback/ErrorBoundary/index.d.ts +1 -1
  112. package/dist/atoms/components/feedback/Skeleton/Skeleton.d.ts +30 -4
  113. package/dist/atoms/components/feedback/Skeleton/Skeleton.d.ts.map +1 -1
  114. package/dist/atoms/components/feedback/Skeleton/index.d.ts +1 -1
  115. package/dist/atoms/components/feedback/Toast/Toast.d.ts +4 -4
  116. package/dist/atoms/components/feedback/Toast/Toast.d.ts.map +1 -1
  117. package/dist/atoms/components/feedback/Toast/index.d.ts +1 -1
  118. package/dist/atoms/components/feedback/Toast/index.d.ts.map +1 -1
  119. package/dist/atoms/components/feedback/index.d.ts +5 -5
  120. package/dist/atoms/components/feedback/index.d.ts.map +1 -1
  121. package/dist/atoms/components/forms/DateTimePicker/DateTimePicker.d.ts +6 -6
  122. package/dist/atoms/components/forms/DateTimePicker/DateTimePicker.d.ts.map +1 -1
  123. package/dist/atoms/components/forms/DateTimePicker/index.d.ts +2 -2
  124. package/dist/atoms/components/forms/FileUpload/FileUpload.d.ts +3 -3
  125. package/dist/atoms/components/forms/FileUpload/FileUpload.d.ts.map +1 -1
  126. package/dist/atoms/components/forms/FileUpload/index.d.ts +2 -2
  127. package/dist/atoms/components/forms/FormField/FormField.d.ts +2 -2
  128. package/dist/atoms/components/forms/FormField/FormField.d.ts.map +1 -1
  129. package/dist/atoms/components/forms/FormField/index.d.ts +1 -1
  130. package/dist/atoms/components/forms/index.d.ts +3 -3
  131. package/dist/atoms/components/index.d.ts +9 -9
  132. package/dist/atoms/components/layout/Accordion/Accordion.d.ts +3 -3
  133. package/dist/atoms/components/layout/Accordion/Accordion.d.ts.map +1 -1
  134. package/dist/atoms/components/layout/Accordion/index.d.ts +1 -1
  135. package/dist/atoms/components/layout/Accordion/index.d.ts.map +1 -1
  136. package/dist/atoms/components/layout/Breadcrumb/Breadcrumb.d.ts +2 -3
  137. package/dist/atoms/components/layout/Breadcrumb/Breadcrumb.d.ts.map +1 -1
  138. package/dist/atoms/components/layout/Breadcrumb/index.d.ts +1 -1
  139. package/dist/atoms/components/layout/Breadcrumb/index.d.ts.map +1 -1
  140. package/dist/atoms/components/layout/Dialog/Dialog.d.ts +45 -0
  141. package/dist/atoms/components/layout/Dialog/Dialog.d.ts.map +1 -0
  142. package/dist/atoms/components/layout/Dialog/index.d.ts +2 -2
  143. package/dist/atoms/components/layout/Dialog/index.d.ts.map +1 -1
  144. package/dist/atoms/components/layout/Dropdown/Dropdown.d.ts +9 -9
  145. package/dist/atoms/components/layout/Dropdown/Dropdown.d.ts.map +1 -1
  146. package/dist/atoms/components/layout/Dropdown/index.d.ts +2 -2
  147. package/dist/atoms/components/layout/Dropdown/index.d.ts.map +1 -1
  148. package/dist/atoms/components/layout/Modal/Modal.d.ts +6 -6
  149. package/dist/atoms/components/layout/Modal/Modal.d.ts.map +1 -1
  150. package/dist/atoms/components/layout/Modal/index.d.ts +2 -2
  151. package/dist/atoms/components/layout/Tabs/Tabs.d.ts +46 -0
  152. package/dist/atoms/components/layout/Tabs/Tabs.d.ts.map +1 -0
  153. package/dist/atoms/components/layout/Tabs/index.d.ts +1 -1
  154. package/dist/atoms/components/layout/Tooltip/Tooltip.d.ts +6 -6
  155. package/dist/atoms/components/layout/Tooltip/Tooltip.d.ts.map +1 -1
  156. package/dist/atoms/components/layout/Tooltip/index.d.ts +1 -1
  157. package/dist/atoms/components/layout/index.d.ts +7 -7
  158. package/dist/atoms/components/layout/index.d.ts.map +1 -1
  159. package/dist/atoms/components/navigation/GlobalSearch/GlobalSearch.d.ts +2 -3
  160. package/dist/atoms/components/navigation/GlobalSearch/GlobalSearch.d.ts.map +1 -1
  161. package/dist/atoms/components/navigation/GlobalSearch/index.d.ts +1 -1
  162. package/dist/atoms/components/navigation/GlobalSearch/index.d.ts.map +1 -1
  163. package/dist/atoms/components/navigation/index.d.ts +1 -1
  164. package/dist/atoms/components/theme/ColorSwatch/ColorSwatch.d.ts +2 -2
  165. package/dist/atoms/components/theme/ColorSwatch/ColorSwatch.d.ts.map +1 -1
  166. package/dist/atoms/components/theme/ColorSwatch/index.d.ts +1 -1
  167. package/dist/atoms/components/theme/DarkModeToggle.d.ts.map +1 -1
  168. package/dist/atoms/components/theme/PaletteSwitcher.d.ts +1 -1
  169. package/dist/atoms/components/theme/PaletteSwitcher.d.ts.map +1 -1
  170. package/dist/atoms/components/theme/StyleGuide.d.ts +1 -1
  171. package/dist/atoms/components/theme/StyleGuide.d.ts.map +1 -1
  172. package/dist/atoms/components/theme/index.d.ts +4 -4
  173. package/dist/atoms/components/user/UserAvatar/UserAvatar.d.ts +2 -3
  174. package/dist/atoms/components/user/UserAvatar/UserAvatar.d.ts.map +1 -1
  175. package/dist/atoms/components/user/UserAvatar/index.d.ts +1 -1
  176. package/dist/atoms/components/user/UserAvatar/index.d.ts.map +1 -1
  177. package/dist/atoms/components/user/UserMenu/UserMenu.d.ts +2 -3
  178. package/dist/atoms/components/user/UserMenu/UserMenu.d.ts.map +1 -1
  179. package/dist/atoms/components/user/UserMenu/index.d.ts +1 -1
  180. package/dist/atoms/components/user/UserMenu/index.d.ts.map +1 -1
  181. package/dist/atoms/components/user/index.d.ts +2 -2
  182. package/dist/atoms/config/responsive.d.ts +16 -16
  183. package/dist/atoms/config/responsive.d.ts.map +1 -1
  184. package/dist/atoms/hooks/index.d.ts +4 -4
  185. package/dist/atoms/hooks/use-toast.d.ts +1 -1
  186. package/dist/atoms/hooks/use-toast.d.ts.map +1 -1
  187. package/dist/atoms/hooks/useApi.d.ts +2 -2
  188. package/dist/atoms/hooks/useApi.d.ts.map +1 -1
  189. package/dist/atoms/hooks/useResponsive.d.ts +1 -1
  190. package/dist/atoms/hooks/useResponsive.d.ts.map +1 -1
  191. package/dist/atoms/index.d.ts +6 -7
  192. package/dist/atoms/index.d.ts.map +1 -1
  193. package/dist/atoms/primitives/Badge.d.ts +6 -6
  194. package/dist/atoms/primitives/Badge.d.ts.map +1 -1
  195. package/dist/atoms/primitives/ErrorBoundary.d.ts +3 -3
  196. package/dist/atoms/primitives/ErrorBoundary.d.ts.map +1 -1
  197. package/dist/atoms/primitives/Select.d.ts +9 -7
  198. package/dist/atoms/primitives/Select.d.ts.map +1 -1
  199. package/dist/atoms/primitives/Switch.d.ts +4 -3
  200. package/dist/atoms/primitives/Switch.d.ts.map +1 -1
  201. package/dist/atoms/primitives/Tabs.d.ts +10 -10
  202. package/dist/atoms/primitives/Tabs.d.ts.map +1 -1
  203. package/dist/atoms/primitives/avatar.d.ts.map +1 -1
  204. package/dist/atoms/primitives/button.d.ts +2 -5
  205. package/dist/atoms/primitives/button.d.ts.map +1 -1
  206. package/dist/atoms/primitives/button.variants.d.ts +7 -0
  207. package/dist/atoms/primitives/button.variants.d.ts.map +1 -0
  208. package/dist/atoms/primitives/card.d.ts +3 -2
  209. package/dist/atoms/primitives/card.d.ts.map +1 -1
  210. package/dist/atoms/primitives/checkbox.d.ts +3 -3
  211. package/dist/atoms/primitives/checkbox.d.ts.map +1 -1
  212. package/dist/atoms/primitives/dialog.d.ts +4 -4
  213. package/dist/atoms/primitives/dialog.d.ts.map +1 -1
  214. package/dist/atoms/primitives/dropdown-menu.d.ts.map +1 -1
  215. package/dist/atoms/primitives/index.d.ts +16 -16
  216. package/dist/atoms/primitives/index.d.ts.map +1 -1
  217. package/dist/atoms/primitives/input.d.ts.map +1 -1
  218. package/dist/atoms/primitives/label.d.ts +4 -3
  219. package/dist/atoms/primitives/label.d.ts.map +1 -1
  220. package/dist/atoms/primitives/skeleton.d.ts.map +1 -1
  221. package/dist/atoms/primitives/spinner.d.ts +5 -5
  222. package/dist/atoms/primitives/spinner.d.ts.map +1 -1
  223. package/dist/atoms/primitives/table.d.ts.map +1 -1
  224. package/dist/atoms/services/api/client.d.ts +11 -2
  225. package/dist/atoms/services/api/client.d.ts.map +1 -1
  226. package/dist/atoms/services/auth-service.d.ts +1 -1
  227. package/dist/atoms/services/auth-service.d.ts.map +1 -1
  228. package/dist/atoms/services/health.d.ts +2 -2
  229. package/dist/atoms/services/index.d.ts +3 -3
  230. package/dist/atoms/shared/config/dashboard-sizes.d.ts +17 -17
  231. package/dist/atoms/shared/config/dashboard-sizes.d.ts.map +1 -1
  232. package/dist/atoms/shared/config/environment.d.ts.map +1 -1
  233. package/dist/atoms/shared/index.d.ts +4 -4
  234. package/dist/atoms/shared/index.d.ts.map +1 -1
  235. package/dist/atoms/types/auth.d.ts +11 -1
  236. package/dist/atoms/types/auth.d.ts.map +1 -1
  237. package/dist/atoms/types/entity-config.d.ts +9 -9
  238. package/dist/atoms/types/entity-config.d.ts.map +1 -1
  239. package/dist/atoms/types/generated.d.ts.map +1 -1
  240. package/dist/atoms/types/index.d.ts +6 -6
  241. package/dist/atoms/types/loading.d.ts +1 -1
  242. package/dist/atoms/types/navigation.d.ts +1 -1
  243. package/dist/atoms/types/navigation.d.ts.map +1 -1
  244. package/dist/atoms/types/ui-config.d.ts +8 -8
  245. package/dist/atoms/types/ui-config.d.ts.map +1 -1
  246. package/dist/atoms/utils/animations.d.ts +7 -7
  247. package/dist/atoms/utils/animations.d.ts.map +1 -1
  248. package/dist/atoms/utils/color-manager.d.ts +1 -1
  249. package/dist/atoms/utils/debounce.d.ts +1 -1
  250. package/dist/atoms/utils/debounce.d.ts.map +1 -1
  251. package/dist/atoms/utils/field-detection.d.ts +2 -2
  252. package/dist/atoms/utils/field-detection.d.ts.map +1 -1
  253. package/dist/atoms/utils/icon-map.d.ts +68 -0
  254. package/dist/atoms/utils/icon-map.d.ts.map +1 -0
  255. package/dist/atoms/utils/icon-resolver.d.ts +7 -67
  256. package/dist/atoms/utils/icon-resolver.d.ts.map +1 -1
  257. package/dist/atoms/utils/index.d.ts +4 -4
  258. package/dist/atoms/utils/metric-engine.d.ts +2 -10
  259. package/dist/atoms/utils/metric-engine.d.ts.map +1 -1
  260. package/dist/atoms/utils/tooltip-helpers.d.ts +1 -1
  261. package/dist/atoms/utils/tooltip-helpers.d.ts.map +1 -1
  262. package/dist/atoms/utils/ui-mapping.d.ts +6 -4
  263. package/dist/atoms/utils/ui-mapping.d.ts.map +1 -1
  264. package/dist/atoms/utils/utils.d.ts +7 -6
  265. package/dist/atoms/utils/utils.d.ts.map +1 -1
  266. package/dist/codegen/openapi/bulk-types.d.ts +4 -4
  267. package/dist/codegen/openapi/bulk-types.d.ts.map +1 -1
  268. package/dist/features/auth/components/LoginForm.d.ts.map +1 -1
  269. package/dist/features/auth/components/LogoutButton.d.ts.map +1 -1
  270. package/dist/features/auth/components/ProtectedRoute.d.ts +2 -2
  271. package/dist/features/auth/components/ProtectedRoute.d.ts.map +1 -1
  272. package/dist/features/auth/components/index.d.ts +3 -3
  273. package/dist/features/auth/hooks/auth-context.d.ts +3 -0
  274. package/dist/features/auth/hooks/auth-context.d.ts.map +1 -0
  275. package/dist/features/auth/hooks/index.d.ts +4 -3
  276. package/dist/features/auth/hooks/index.d.ts.map +1 -1
  277. package/dist/features/auth/hooks/use-auth.d.ts +3 -0
  278. package/dist/features/auth/hooks/use-auth.d.ts.map +1 -0
  279. package/dist/features/auth/hooks/useAuth.d.ts +3 -4
  280. package/dist/features/auth/hooks/useAuth.d.ts.map +1 -1
  281. package/dist/features/auth/hooks/useAuthContext.d.ts +1 -1
  282. package/dist/features/auth/hooks/useAuthContext.d.ts.map +1 -1
  283. package/dist/features/auth/hooks/usePermissions.d.ts +3 -3
  284. package/dist/features/auth/index.d.ts +3 -3
  285. package/dist/features/auth/providers/MockAuthProvider.d.ts +3 -4
  286. package/dist/features/auth/providers/MockAuthProvider.d.ts.map +1 -1
  287. package/dist/features/auth/providers/index.d.ts +2 -1
  288. package/dist/features/auth/providers/index.d.ts.map +1 -1
  289. package/dist/features/auth/providers/mock-auth-context.d.ts +3 -0
  290. package/dist/features/auth/providers/mock-auth-context.d.ts.map +1 -0
  291. package/dist/features/auth/providers/use-mock-auth.d.ts +3 -0
  292. package/dist/features/auth/providers/use-mock-auth.d.ts.map +1 -0
  293. package/dist/features/auth/services/mock-auth-service.d.ts +3 -3
  294. package/dist/features/auth/services/mock-auth-service.d.ts.map +1 -1
  295. package/dist/features/index.d.ts +1 -1
  296. package/dist/frontend-patterns.css +713 -576
  297. package/dist/index.d.ts +17 -17
  298. package/dist/index.d.ts.map +1 -1
  299. package/dist/index.es.js +21400 -21788
  300. package/dist/index.es.js.map +1 -1
  301. package/dist/index.js +21404 -21792
  302. package/dist/index.js.map +1 -1
  303. package/dist/molecules/forms/FormGroup.d.ts +2 -2
  304. package/dist/molecules/forms/FormGroup.d.ts.map +1 -1
  305. package/dist/molecules/forms/SearchInput.d.ts +1 -1
  306. package/dist/molecules/forms/SearchInput.d.ts.map +1 -1
  307. package/dist/molecules/forms/index.d.ts +2 -2
  308. package/dist/molecules/forms/index.d.ts.map +1 -1
  309. package/dist/molecules/index.d.ts +3 -3
  310. package/dist/molecules/layout/AppHeader/AppHeader.d.ts +1 -1
  311. package/dist/molecules/layout/AppHeader/AppHeader.d.ts.map +1 -1
  312. package/dist/molecules/layout/AppHeader/index.d.ts +1 -1
  313. package/dist/molecules/layout/BulkSelectionBar.d.ts +2 -2
  314. package/dist/molecules/layout/BulkSelectionBar.d.ts.map +1 -1
  315. package/dist/molecules/layout/DashboardWithSidePanel/DashboardWithSidePanel.d.ts +1 -1
  316. package/dist/molecules/layout/DashboardWithSidePanel/index.d.ts +1 -1
  317. package/dist/molecules/layout/NavigationContext.d.ts +3 -9
  318. package/dist/molecules/layout/NavigationContext.d.ts.map +1 -1
  319. package/dist/molecules/layout/PageTemplate.d.ts +1 -1
  320. package/dist/molecules/layout/PageTemplate.d.ts.map +1 -1
  321. package/dist/molecules/layout/SectionHeader/SectionHeader.d.ts +4 -4
  322. package/dist/molecules/layout/SectionHeader/SectionHeader.d.ts.map +1 -1
  323. package/dist/molecules/layout/SectionHeader/index.d.ts +1 -1
  324. package/dist/molecules/layout/ShowcaseSection.d.ts +4 -4
  325. package/dist/molecules/layout/ShowcaseSection.d.ts.map +1 -1
  326. package/dist/molecules/layout/Sidebar.d.ts.map +1 -1
  327. package/dist/molecules/layout/SidebarButton/SidebarButton.d.ts +1 -1
  328. package/dist/molecules/layout/SidebarButton/SidebarButton.d.ts.map +1 -1
  329. package/dist/molecules/layout/SidebarButton/index.d.ts +1 -1
  330. package/dist/molecules/layout/SidebarContext.d.ts +1 -8
  331. package/dist/molecules/layout/SidebarContext.d.ts.map +1 -1
  332. package/dist/molecules/layout/index.d.ts +14 -11
  333. package/dist/molecules/layout/index.d.ts.map +1 -1
  334. package/dist/molecules/layout/navigation-context.d.ts +9 -0
  335. package/dist/molecules/layout/navigation-context.d.ts.map +1 -0
  336. package/dist/molecules/layout/sidebar-context.d.ts +7 -0
  337. package/dist/molecules/layout/sidebar-context.d.ts.map +1 -0
  338. package/dist/molecules/layout/use-navigation.d.ts +2 -0
  339. package/dist/molecules/layout/use-navigation.d.ts.map +1 -0
  340. package/dist/molecules/layout/use-sidebar.d.ts +2 -0
  341. package/dist/molecules/layout/use-sidebar.d.ts.map +1 -0
  342. package/dist/molecules/navigation/NavMenu.d.ts +2 -2
  343. package/dist/molecules/navigation/NavMenu.d.ts.map +1 -1
  344. package/dist/molecules/navigation/Pagination.d.ts +2 -2
  345. package/dist/molecules/navigation/index.d.ts +2 -2
  346. package/dist/organisms/index.d.ts +1 -1
  347. package/dist/organisms/showcase/ComponentShowcasePage.d.ts +1 -1
  348. package/dist/organisms/showcase/ComponentShowcasePage.d.ts.map +1 -1
  349. package/dist/templates/AuthTemplate.d.ts +4 -4
  350. package/dist/templates/AuthTemplate.d.ts.map +1 -1
  351. package/dist/templates/ComponentShowcaseTemplate.d.ts +7 -7
  352. package/dist/templates/ComponentShowcaseTemplate.d.ts.map +1 -1
  353. package/dist/templates/DashboardTemplate.d.ts +3 -3
  354. package/dist/templates/DashboardTemplate.d.ts.map +1 -1
  355. package/dist/templates/DataTemplate.d.ts +3 -3
  356. package/dist/templates/DataTemplate.d.ts.map +1 -1
  357. package/dist/templates/EnhancedDataTemplate.d.ts +11 -11
  358. package/dist/templates/EnhancedDataTemplate.d.ts.map +1 -1
  359. package/dist/templates/EnhancedDataTemplate.hooks.bulk.d.ts +2 -2
  360. package/dist/templates/EnhancedDataTemplate.hooks.bulk.d.ts.map +1 -1
  361. package/dist/templates/EnhancedDataTemplate.hooks.d.ts +4 -4
  362. package/dist/templates/EnhancedDataTemplate.hooks.d.ts.map +1 -1
  363. package/dist/templates/admin/AdminCRUDTemplate.d.ts +4 -4
  364. package/dist/templates/admin/AdminCRUDTemplate.d.ts.map +1 -1
  365. package/dist/templates/admin/AdminDashboardTemplate.d.ts +7 -7
  366. package/dist/templates/admin/AdminDashboardTemplate.d.ts.map +1 -1
  367. package/dist/templates/admin/AdminDetailTemplate.d.ts +4 -4
  368. package/dist/templates/admin/AdminDetailTemplate.d.ts.map +1 -1
  369. package/dist/templates/admin/index.d.ts +3 -3
  370. package/dist/templates/admin/index.d.ts.map +1 -1
  371. package/dist/templates/api/APIDataTemplate.d.ts +14 -9
  372. package/dist/templates/api/APIDataTemplate.d.ts.map +1 -1
  373. package/dist/templates/api/create-api-data-template.d.ts +4 -0
  374. package/dist/templates/api/create-api-data-template.d.ts.map +1 -0
  375. package/dist/templates/api/index.d.ts +3 -2
  376. package/dist/templates/api/index.d.ts.map +1 -1
  377. package/dist/templates/factory.d.ts +3 -3
  378. package/dist/templates/factory.d.ts.map +1 -1
  379. package/dist/templates/index.d.ts +8 -8
  380. package/dist/templates/index.d.ts.map +1 -1
  381. package/package.json +10 -7
  382. package/LICENSE +0 -19
  383. package/cli/cli/commands/generate-hooks.js +0 -291
  384. package/cli/cli/commands/init.js +0 -25
  385. package/cli/cli/commands/scaffold.js +0 -201
  386. package/cli/cli/index.js +0 -113
  387. package/cli/commands/generate-hooks.js +0 -291
  388. package/cli/commands/init.js +0 -25
  389. package/cli/commands/scaffold.js +0 -201
  390. package/cli/index.js +0 -6665
  391. package/cli/src/codegen/openapi/bulk-hook-generator.js +0 -252
  392. package/cli/src/codegen/openapi/bulk-types.js +0 -89
  393. package/dist/atoms/components/data/ActivityFeed/ActivityFeed.stories.d.ts +0 -38
  394. package/dist/atoms/components/data/ActivityFeed/ActivityFeed.stories.d.ts.map +0 -1
  395. package/dist/codegen/index.d.ts +0 -7
  396. package/dist/codegen/index.d.ts.map +0 -1
  397. package/dist/codegen/openapi/bulk-hook-generator.d.ts +0 -40
  398. package/dist/codegen/openapi/bulk-hook-generator.d.ts.map +0 -1
  399. package/dist/codegen/openapi/client-generator.d.ts +0 -52
  400. package/dist/codegen/openapi/client-generator.d.ts.map +0 -1
  401. package/dist/codegen/openapi/confidence-scorer.d.ts +0 -30
  402. package/dist/codegen/openapi/confidence-scorer.d.ts.map +0 -1
  403. package/dist/codegen/openapi/hook-config.d.ts +0 -50
  404. package/dist/codegen/openapi/hook-config.d.ts.map +0 -1
  405. package/dist/codegen/openapi/hook-generator.d.ts +0 -108
  406. package/dist/codegen/openapi/hook-generator.d.ts.map +0 -1
  407. package/dist/codegen/openapi/index.d.ts +0 -27
  408. package/dist/codegen/openapi/index.d.ts.map +0 -1
  409. package/dist/codegen/openapi/parser.d.ts +0 -107
  410. package/dist/codegen/openapi/parser.d.ts.map +0 -1
  411. package/dist/codegen/openapi/type-generator.d.ts +0 -53
  412. package/dist/codegen/openapi/type-generator.d.ts.map +0 -1
  413. package/dist/generated/client/client.d.ts +0 -23
  414. package/dist/generated/client/client.d.ts.map +0 -1
  415. package/dist/generated/client/config.d.ts +0 -10
  416. package/dist/generated/client/config.d.ts.map +0 -1
  417. package/dist/generated/client/index.d.ts +0 -12
  418. package/dist/generated/client/index.d.ts.map +0 -1
  419. package/dist/generated/client/methods.d.ts +0 -591
  420. package/dist/generated/client/methods.d.ts.map +0 -1
  421. package/dist/generated/client/types.d.ts +0 -37
  422. package/dist/generated/client/types.d.ts.map +0 -1
  423. package/dist/generated/example.d.ts +0 -8
  424. package/dist/generated/example.d.ts.map +0 -1
  425. package/dist/generated/hooks/index.d.ts +0 -11
  426. package/dist/generated/hooks/index.d.ts.map +0 -1
  427. package/dist/generated/hooks/keys.d.ts +0 -59
  428. package/dist/generated/hooks/keys.d.ts.map +0 -1
  429. package/dist/generated/hooks/mutations.d.ts +0 -551
  430. package/dist/generated/hooks/mutations.d.ts.map +0 -1
  431. package/dist/generated/hooks/queries.d.ts +0 -426
  432. package/dist/generated/hooks/queries.d.ts.map +0 -1
  433. package/dist/generated/hooks/types.d.ts +0 -318
  434. package/dist/generated/hooks/types.d.ts.map +0 -1
  435. package/dist/generated/index.d.ts +0 -13
  436. package/dist/generated/index.d.ts.map +0 -1
  437. package/dist/generated/types/endpoints.d.ts +0 -1364
  438. package/dist/generated/types/endpoints.d.ts.map +0 -1
  439. package/dist/generated/types/index.d.ts +0 -11
  440. package/dist/generated/types/index.d.ts.map +0 -1
  441. package/dist/generated/types/parameters.d.ts +0 -8
  442. package/dist/generated/types/parameters.d.ts.map +0 -1
  443. package/dist/generated/types/responses.d.ts +0 -8
  444. package/dist/generated/types/responses.d.ts.map +0 -1
  445. package/dist/generated/types/schemas.d.ts +0 -652
  446. package/dist/generated/types/schemas.d.ts.map +0 -1
@@ -1,252 +0,0 @@
1
- "use strict";
2
- /**
3
- * Bulk Operations Hook Generator
4
- *
5
- * Generates specialized React hooks for bulk operations with proper typing,
6
- * error handling, and progress tracking.
7
- *
8
- * Part of FRO-35: Bulk Operations Hook Generation
9
- */
10
- Object.defineProperty(exports, "__esModule", { value: true });
11
- exports.BulkHookGenerator = void 0;
12
- const bulk_types_1 = require("./bulk-types");
13
- class BulkHookGenerator {
14
- /**
15
- * Generate a bulk mutation hook with progress tracking and retry logic
16
- */
17
- generateBulkMutationHook(endpoint, hookName, operationName) {
18
- const bulkType = (0, bulk_types_1.detectBulkOperationType)(endpoint.path, endpoint.method);
19
- const lines = [];
20
- // Generate JSDoc
21
- lines.push('/**');
22
- if (endpoint.summary) {
23
- lines.push(` * ${endpoint.summary}`);
24
- }
25
- if (endpoint.description) {
26
- lines.push(` * ${endpoint.description}`);
27
- }
28
- lines.push(' * @param options Mutation options with bulk operation support');
29
- lines.push(' */');
30
- // Generate hook signature
31
- const resource = endpoint.tags?.[0] || 'default';
32
- lines.push(`export function ${hookName}(`);
33
- lines.push(` options?: UseMutationOptions<BulkOperationResponse, any, BulkOperationRequest> & BulkMutationOptions`);
34
- lines.push(') {');
35
- lines.push(' const queryClient = useQueryClient()');
36
- lines.push(' ');
37
- lines.push(' return useMutation({');
38
- // Generate mutation function with progress tracking
39
- lines.push(' mutationFn: async (request: BulkOperationRequest) => {');
40
- lines.push(' // Transform request if needed');
41
- lines.push(' const transformedRequest = options?.transformRequest ');
42
- lines.push(' ? options.transformRequest(request) ');
43
- lines.push(' : request');
44
- lines.push(' ');
45
- lines.push(' // Simulate progress updates for demo');
46
- lines.push(' if (options?.onProgress) {');
47
- lines.push(' options.onProgress({');
48
- lines.push(' total: request.ids.length,');
49
- lines.push(' processed: 0,');
50
- lines.push(' succeeded: 0,');
51
- lines.push(' failed: 0,');
52
- lines.push(' percentage: 0,');
53
- lines.push(" status: 'processing'");
54
- lines.push(' })');
55
- lines.push(' }');
56
- lines.push(' ');
57
- lines.push(` const response = await apiClient.${this.camelCase(operationName)}(transformedRequest)`);
58
- lines.push(' ');
59
- lines.push(' // Transform response if needed');
60
- lines.push(' const transformedResponse = options?.transformResponse');
61
- lines.push(' ? options.transformResponse(response)');
62
- lines.push(' : response');
63
- lines.push(' ');
64
- lines.push(' // Final progress update');
65
- lines.push(' if (options?.onProgress && transformedResponse) {');
66
- lines.push(' options.onProgress({');
67
- lines.push(' total: transformedResponse.summary?.total || request.ids.length,');
68
- lines.push(' processed: transformedResponse.summary?.total || request.ids.length,');
69
- lines.push(' succeeded: transformedResponse.summary?.succeeded || 0,');
70
- lines.push(' failed: transformedResponse.summary?.failed || 0,');
71
- lines.push(' percentage: 100,');
72
- lines.push(" status: 'completed'");
73
- lines.push(' })');
74
- lines.push(' }');
75
- lines.push(' ');
76
- lines.push(' return transformedResponse');
77
- lines.push(' },');
78
- // Generate optimistic updates for bulk operations
79
- lines.push(this.generateBulkOptimisticUpdate(resource, bulkType));
80
- // Generate cache invalidation
81
- lines.push(this.generateBulkCacheInvalidation(resource));
82
- // Handle partial success
83
- lines.push(' onSuccess: (data, variables, context) => {');
84
- lines.push(' // Handle partial success');
85
- lines.push(' if (data.failed.length > 0 && options?.onPartialSuccess) {');
86
- lines.push(' options.onPartialSuccess(data)');
87
- lines.push(' }');
88
- lines.push(' ');
89
- lines.push(' // Call original onSuccess if provided');
90
- lines.push(' options?.onSuccess?.(data, variables, context)');
91
- lines.push(' },');
92
- // Retry configuration for bulk operations
93
- lines.push(' retry: (failureCount, error) => {');
94
- lines.push(' // Use custom retry config if provided');
95
- lines.push(' if (options?.retry?.maxAttempts !== undefined) {');
96
- lines.push(' return failureCount < options.retry.maxAttempts');
97
- lines.push(' }');
98
- lines.push(' // Default: retry up to 3 times for bulk operations');
99
- lines.push(' return failureCount < 3');
100
- lines.push(' },');
101
- lines.push(' retryDelay: (attemptIndex) => {');
102
- lines.push(' // Use custom retry delay if provided');
103
- lines.push(' if (options?.retry?.initialDelay) {');
104
- lines.push(' const delay = Math.min(');
105
- lines.push(' options.retry.initialDelay * Math.pow(options.retry.backoffMultiplier || 2, attemptIndex),');
106
- lines.push(' options.retry.maxDelay || 30000');
107
- lines.push(' )');
108
- lines.push(' return delay');
109
- lines.push(' }');
110
- lines.push(' // Default exponential backoff: 1s, 2s, 4s...');
111
- lines.push(' return Math.min(1000 * Math.pow(2, attemptIndex), 30000)');
112
- lines.push(' },');
113
- lines.push(' ...options');
114
- lines.push(' })');
115
- lines.push('}');
116
- return lines.join('\n');
117
- }
118
- /**
119
- * Generate optimistic updates for bulk operations
120
- */
121
- generateBulkOptimisticUpdate(resource, bulkType) {
122
- switch (bulkType) {
123
- case 'delete':
124
- return ` onMutate: async (request: BulkOperationRequest) => {
125
- // Cancel outgoing refetches
126
- await queryClient.cancelQueries({ queryKey: queryKeys.${resource}() })
127
-
128
- // Snapshot previous value
129
- const previousData = queryClient.getQueryData(queryKeys.${resource}())
130
-
131
- // Optimistically remove items
132
- queryClient.setQueryData(queryKeys.${resource}(), (old: any) => {
133
- if (Array.isArray(old)) {
134
- return old.filter((item: any) => !request.ids.includes(item.id))
135
- }
136
- return old
137
- })
138
-
139
- return { previousData }
140
- },
141
- onError: (err: any, request: any, context: any) => {
142
- // Rollback on error
143
- if (context?.previousData !== undefined) {
144
- queryClient.setQueryData(queryKeys.${resource}(), context.previousData)
145
- }
146
- },`;
147
- case 'update':
148
- return ` onMutate: async (request: BulkOperationRequest) => {
149
- await queryClient.cancelQueries({ queryKey: queryKeys.${resource}() })
150
-
151
- const previousData = queryClient.getQueryData(queryKeys.${resource}())
152
-
153
- // Optimistically update items
154
- queryClient.setQueryData(queryKeys.${resource}(), (old: any) => {
155
- if (Array.isArray(old)) {
156
- return old.map((item: any) =>
157
- request.ids.includes(item.id)
158
- ? { ...item, ...request.data }
159
- : item
160
- )
161
- }
162
- return old
163
- })
164
-
165
- return { previousData }
166
- },
167
- onError: (err: any, request: any, context: any) => {
168
- if (context?.previousData !== undefined) {
169
- queryClient.setQueryData(queryKeys.${resource}(), context.previousData)
170
- }
171
- },`;
172
- case 'create':
173
- return ` onMutate: async (request: BulkOperationRequest) => {
174
- await queryClient.cancelQueries({ queryKey: queryKeys.${resource}() })
175
-
176
- const previousData = queryClient.getQueryData(queryKeys.${resource}())
177
-
178
- // Optimistically add items (if data provided)
179
- if (request.data && Array.isArray(request.data)) {
180
- queryClient.setQueryData(queryKeys.${resource}(), (old: any) => {
181
- if (Array.isArray(old)) {
182
- return [...old, ...request.data]
183
- }
184
- return old
185
- })
186
- }
187
-
188
- return { previousData }
189
- },
190
- onError: (err: any, request: any, context: any) => {
191
- if (context?.previousData !== undefined) {
192
- queryClient.setQueryData(queryKeys.${resource}(), context.previousData)
193
- }
194
- },`;
195
- default:
196
- return '';
197
- }
198
- }
199
- /**
200
- * Generate cache invalidation for bulk operations
201
- */
202
- generateBulkCacheInvalidation(resource) {
203
- return ` onSettled: () => {
204
- // Invalidate related queries after bulk operation
205
- queryClient.invalidateQueries({ queryKey: queryKeys.${resource}() })
206
- queryClient.invalidateQueries({ queryKey: queryKeys.all })
207
- },`;
208
- }
209
- /**
210
- * Generate bulk mutation hook name
211
- */
212
- generateBulkMutationHookName(endpoint, resourceName) {
213
- const requestBody = endpoint.requestBody;
214
- if (!(0, bulk_types_1.isBulkOperation)(endpoint.path, endpoint.method, requestBody)) {
215
- return null;
216
- }
217
- const bulkType = (0, bulk_types_1.detectBulkOperationType)(endpoint.path, endpoint.method);
218
- if (bulkType && resourceName) {
219
- const bulkName = (0, bulk_types_1.generateBulkOperationName)(resourceName, bulkType);
220
- return `use${this.capitalize(bulkName)}`;
221
- }
222
- return null;
223
- }
224
- /**
225
- * Check if endpoint is a bulk operation
226
- */
227
- isBulkEndpoint(endpoint) {
228
- const requestBody = endpoint.requestBody;
229
- return (0, bulk_types_1.isBulkOperation)(endpoint.path, endpoint.method, requestBody);
230
- }
231
- /**
232
- * Helper to convert to camelCase
233
- */
234
- camelCase(str) {
235
- return str.replace(/[-_](.)/g, (_, char) => char.toUpperCase())
236
- .replace(/^./, char => char.toLowerCase());
237
- }
238
- /**
239
- * Helper to capitalize string
240
- */
241
- capitalize(str) {
242
- // Convert snake_case to PascalCase
243
- if (str.includes('_')) {
244
- return str.split('_')
245
- .map(part => part.charAt(0).toUpperCase() + part.slice(1).toLowerCase())
246
- .join('');
247
- }
248
- // Simple capitalization
249
- return str.charAt(0).toUpperCase() + str.slice(1);
250
- }
251
- }
252
- exports.BulkHookGenerator = BulkHookGenerator;
@@ -1,89 +0,0 @@
1
- "use strict";
2
- /**
3
- * Bulk Operations Types
4
- *
5
- * Standard types for bulk operations in generated hooks
6
- * Part of FRO-35: Bulk Operations Hook Generation
7
- */
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.isBulkOperation = isBulkOperation;
10
- exports.detectBulkOperationType = detectBulkOperationType;
11
- exports.generateBulkOperationName = generateBulkOperationName;
12
- /**
13
- * Type guard to check if an endpoint handles bulk operations
14
- */
15
- function isBulkOperation(path, method, requestBody) {
16
- const bulkPatterns = [
17
- /\/bulk[-_]?delete$/i,
18
- /\/bulk[-_]?update$/i,
19
- /\/bulk[-_]?create$/i,
20
- /\/batch$/i,
21
- /\/bulk$/i,
22
- /\/multiple$/i
23
- ];
24
- // Check path patterns
25
- if (bulkPatterns.some(pattern => pattern.test(path))) {
26
- return true;
27
- }
28
- // Check if request body expects an array of items
29
- if (requestBody && typeof requestBody === 'object') {
30
- // Check for ParsedRequestBody structure
31
- const body = requestBody;
32
- if (body.content?.['application/json']?.schema) {
33
- const schema = body.content['application/json'].schema;
34
- return schema.type === 'array' && !!schema.items;
35
- }
36
- // Check direct schema
37
- if ('type' in requestBody) {
38
- const bodyType = requestBody;
39
- return bodyType.type === 'array' && !!bodyType.items;
40
- }
41
- }
42
- return false;
43
- }
44
- /**
45
- * Detect bulk operation type from endpoint
46
- */
47
- function detectBulkOperationType(path, method) {
48
- const lowercasePath = path.toLowerCase();
49
- const lowercaseMethod = method.toLowerCase();
50
- if (lowercasePath.includes('delete') || lowercaseMethod === 'delete') {
51
- return 'delete';
52
- }
53
- if (lowercasePath.includes('update') || lowercaseMethod === 'put' || lowercaseMethod === 'patch') {
54
- return 'update';
55
- }
56
- if (lowercasePath.includes('create') || lowercaseMethod === 'post') {
57
- return 'create';
58
- }
59
- if (lowercasePath.includes('batch') || lowercasePath.includes('bulk')) {
60
- return 'mixed';
61
- }
62
- return null;
63
- }
64
- /**
65
- * Generate a descriptive bulk operation name
66
- */
67
- function generateBulkOperationName(resource, operationType) {
68
- const cleanResource = resource.replace(/[^a-zA-Z0-9]/g, '');
69
- const singular = cleanResource.endsWith('s') ? cleanResource.slice(0, -1) : cleanResource;
70
- // Capitalize first letter of singular resource
71
- const capitalizedSingular = capitalize(singular);
72
- switch (operationType) {
73
- case 'delete':
74
- return `bulkDelete${capitalizedSingular}s`;
75
- case 'update':
76
- return `bulkUpdate${capitalizedSingular}s`;
77
- case 'create':
78
- return `bulkCreate${capitalizedSingular}s`;
79
- case 'mixed':
80
- return `bulk${capitalizedSingular}Operations`;
81
- default:
82
- return `bulk${capitalizedSingular}s`;
83
- }
84
- }
85
- function capitalize(str) {
86
- if (!str)
87
- return '';
88
- return str.charAt(0).toUpperCase() + str.slice(1).toLowerCase();
89
- }
@@ -1,38 +0,0 @@
1
- import React from 'react';
2
- type StoryObj<T> = {
3
- args?: any;
4
- render?: (args: any) => React.ReactElement;
5
- };
6
- declare const meta: {
7
- title: string;
8
- component: React.FC<import("./types").ActivityFeedProps>;
9
- parameters: {
10
- layout: string;
11
- };
12
- tags: string[];
13
- argTypes: {
14
- variant: {
15
- control: string;
16
- options: string[];
17
- };
18
- maxItems: {
19
- control: string;
20
- };
21
- showFooter: {
22
- control: string;
23
- };
24
- };
25
- };
26
- export default meta;
27
- type Story = StoryObj<typeof meta>;
28
- export declare const Default: Story;
29
- export declare const Compact: Story;
30
- export declare const Borderless: Story;
31
- export declare const WithFooter: Story;
32
- export declare const Empty: Story;
33
- export declare const NoTitle: Story;
34
- export declare const LongMessages: Story;
35
- export declare const MixedTypes: Story;
36
- export declare const RealTimeUpdates: Story;
37
- export declare const CustomRenderer: Story;
38
- //# sourceMappingURL=ActivityFeed.stories.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ActivityFeed.stories.d.ts","sourceRoot":"","sources":["../../../../../src/atoms/components/data/ActivityFeed/ActivityFeed.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAa1B,KAAK,QAAQ,CAAC,CAAC,IAAI;IACjB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,KAAK,CAAC,YAAY,CAAC;CAC5C,CAAC;AAEF,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;CAmB2B,CAAC;AAEtC,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAgCnC,eAAO,MAAM,OAAO,EAAE,KAKrB,CAAC;AAGF,eAAO,MAAM,OAAO,EAAE,KAMrB,CAAC;AAGF,eAAO,MAAM,UAAU,EAAE,KAMxB,CAAC;AAGF,eAAO,MAAM,UAAU,EAAE,KAOxB,CAAC;AAGF,eAAO,MAAM,KAAK,EAAE,KAKnB,CAAC;AAGF,eAAO,MAAM,OAAO,EAAE,KAIrB,CAAC;AAGF,eAAO,MAAM,YAAY,EAAE,KA0B1B,CAAC;AAGF,eAAO,MAAM,UAAU,EAAE,KAuCxB,CAAC;AAGF,eAAO,MAAM,eAAe,EAAE,KA4B7B,CAAC;AAGF,eAAO,MAAM,cAAc,EAAE,KAkB5B,CAAC"}
@@ -1,7 +0,0 @@
1
- /**
2
- * Code Generation Utilities
3
- *
4
- * Build-time tools for generating code from specifications
5
- */
6
- export * from './openapi';
7
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/codegen/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,WAAW,CAAC"}
@@ -1,40 +0,0 @@
1
- /**
2
- * Bulk Operations Hook Generator
3
- *
4
- * Generates specialized React hooks for bulk operations with proper typing,
5
- * error handling, and progress tracking.
6
- *
7
- * Part of FRO-35: Bulk Operations Hook Generation
8
- */
9
- import type { ParsedEndpoint } from './parser';
10
- export declare class BulkHookGenerator {
11
- /**
12
- * Generate a bulk mutation hook with progress tracking and retry logic
13
- */
14
- generateBulkMutationHook(endpoint: ParsedEndpoint, hookName: string, operationName: string): string;
15
- /**
16
- * Generate optimistic updates for bulk operations
17
- */
18
- private generateBulkOptimisticUpdate;
19
- /**
20
- * Generate cache invalidation for bulk operations
21
- */
22
- private generateBulkCacheInvalidation;
23
- /**
24
- * Generate bulk mutation hook name
25
- */
26
- generateBulkMutationHookName(endpoint: ParsedEndpoint, resourceName: string): string | null;
27
- /**
28
- * Check if endpoint is a bulk operation
29
- */
30
- isBulkEndpoint(endpoint: ParsedEndpoint): boolean;
31
- /**
32
- * Helper to convert to camelCase
33
- */
34
- private camelCase;
35
- /**
36
- * Helper to capitalize string
37
- */
38
- private capitalize;
39
- }
40
- //# sourceMappingURL=bulk-hook-generator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bulk-hook-generator.d.ts","sourceRoot":"","sources":["../../../src/codegen/openapi/bulk-hook-generator.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAO9C,qBAAa,iBAAiB;IAC5B;;OAEG;IACH,wBAAwB,CAAC,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM;IAgHnG;;OAEG;IACH,OAAO,CAAC,4BAA4B;IAkFpC;;OAEG;IACH,OAAO,CAAC,6BAA6B;IAQrC;;OAEG;IACH,4BAA4B,CAAC,QAAQ,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAgB3F;;OAEG;IACH,cAAc,CAAC,QAAQ,EAAE,cAAc,GAAG,OAAO;IAKjD;;OAEG;IACH,OAAO,CAAC,SAAS;IAKjB;;OAEG;IACH,OAAO,CAAC,UAAU;CAWnB"}
@@ -1,52 +0,0 @@
1
- /**
2
- * API Client Generator
3
- *
4
- * Creates a type-safe API client with interceptors and error handling
5
- * based on parsed OpenAPI specifications.
6
- *
7
- * Part of FRO-12: API Client Generator
8
- */
9
- import type { ParsedOpenAPI } from './parser';
10
- export interface ClientGeneratorOptions {
11
- clientType: 'axios' | 'fetch';
12
- baseUrl?: string;
13
- includeAuth?: boolean;
14
- authType?: 'bearer' | 'apiKey' | 'basic';
15
- timeout?: number;
16
- retries?: number;
17
- includeInterceptors?: boolean;
18
- }
19
- export interface GeneratedClient {
20
- client: string;
21
- methods: string;
22
- types: string;
23
- config: string;
24
- index: string;
25
- }
26
- export declare class APIClientGenerator {
27
- private options;
28
- constructor(options?: Partial<ClientGeneratorOptions>);
29
- generate(parsedAPI: ParsedOpenAPI): GeneratedClient;
30
- private generateClientSetup;
31
- private generateAxiosClient;
32
- private generateFetchClient;
33
- private generateAxiosInterceptors;
34
- private generateAuthInjection;
35
- private generateFetchAuthInjection;
36
- private generateApiMethods;
37
- private generateEndpointMethod;
38
- private generateClientTypes;
39
- private generateAuthTypes;
40
- private generateConfiguration;
41
- private generateIndexFile;
42
- private generateFileHeader;
43
- private getMethodName;
44
- private generatePathWithParams;
45
- private getParameterType;
46
- private getResponseType;
47
- private groupEndpoints;
48
- private camelCase;
49
- private capitalize;
50
- }
51
- export declare function generateAPIClient(parsedAPI: ParsedOpenAPI, options?: ClientGeneratorOptions): GeneratedClient;
52
- //# sourceMappingURL=client-generator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client-generator.d.ts","sourceRoot":"","sources":["../../../src/codegen/openapi/client-generator.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAmC,MAAM,UAAU,CAAA;AAE9E,MAAM,WAAW,sBAAsB;IACrC,UAAU,EAAE,OAAO,GAAG,OAAO,CAAA;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,QAAQ,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAA;IACxC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,mBAAmB,CAAC,EAAE,OAAO,CAAA;CAC9B;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;CACd;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,OAAO,CAAkC;gBAErC,OAAO,GAAE,OAAO,CAAC,sBAAsB,CAAM;IAYzD,QAAQ,CAAC,SAAS,EAAE,aAAa,GAAG,eAAe;IAUnD,OAAO,CAAC,mBAAmB;IAQ3B,OAAO,CAAC,mBAAmB;IA4G3B,OAAO,CAAC,mBAAmB;IAuI3B,OAAO,CAAC,yBAAyB;IAmEjC,OAAO,CAAC,qBAAqB;IAgD7B,OAAO,CAAC,0BAA0B;IA+BlC,OAAO,CAAC,kBAAkB;IA+B1B,OAAO,CAAC,sBAAsB;IAiE9B,OAAO,CAAC,mBAAmB;IA8C3B,OAAO,CAAC,iBAAiB;IAczB,OAAO,CAAC,qBAAqB;IAyB7B,OAAO,CAAC,iBAAiB;IAuBzB,OAAO,CAAC,kBAAkB;IAS1B,OAAO,CAAC,aAAa;IAarB,OAAO,CAAC,sBAAsB;IAI9B,OAAO,CAAC,gBAAgB;IAUxB,OAAO,CAAC,eAAe;IAmBvB,OAAO,CAAC,cAAc;IActB,OAAO,CAAC,SAAS;IAKjB,OAAO,CAAC,UAAU;CAGnB;AAGD,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,sBAAsB,GAAG,eAAe,CAG7G"}
@@ -1,30 +0,0 @@
1
- /**
2
- * Confidence scoring for generated hook names
3
- * Helps identify names that may need human review
4
- */
5
- export type ConfidenceLevel = 'high' | 'medium' | 'low';
6
- export interface ScoredHookName {
7
- name: string;
8
- confidence: ConfidenceLevel;
9
- score: number;
10
- issues: string[];
11
- suggestions: string[];
12
- }
13
- export declare class ConfidenceScorer {
14
- /**
15
- * Score a generated hook name based on various quality indicators
16
- */
17
- scoreHookName(generatedName: string, originalOperationId: string, path: string, method: string): ScoredHookName;
18
- private isProperCamelCase;
19
- private hasConsecutiveUppercase;
20
- private hasRepeatedWords;
21
- private matchesCommonPattern;
22
- private hasWordBoundaryIssues;
23
- private suggestFixForConsecutiveUppercase;
24
- private camelCaseToWords;
25
- /**
26
- * Generate a confidence report for review
27
- */
28
- generateReport(scoredNames: ScoredHookName[]): string;
29
- }
30
- //# sourceMappingURL=confidence-scorer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"confidence-scorer.d.ts","sourceRoot":"","sources":["../../../src/codegen/openapi/confidence-scorer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAA;AAEvD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE,eAAe,CAAA;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,WAAW,EAAE,MAAM,EAAE,CAAA;CACtB;AAED,qBAAa,gBAAgB;IAC3B;;OAEG;IACH,aAAa,CACX,aAAa,EAAE,MAAM,EACrB,mBAAmB,EAAE,MAAM,EAC3B,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,GACb,cAAc;IA8DjB,OAAO,CAAC,iBAAiB;IASzB,OAAO,CAAC,uBAAuB;IAK/B,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,oBAAoB;IAa5B,OAAO,CAAC,qBAAqB;IA6B7B,OAAO,CAAC,iCAAiC;IA2CzC,OAAO,CAAC,gBAAgB;IASxB;;OAEG;IACH,cAAc,CAAC,WAAW,EAAE,cAAc,EAAE,GAAG,MAAM;CAuCtD"}
@@ -1,50 +0,0 @@
1
- /**
2
- * Hook generation configuration system
3
- * Stores learned patterns and manual overrides for hook name generation
4
- */
5
- export interface HookNameOverride {
6
- original: string;
7
- override: string;
8
- confidence: 'high' | 'medium' | 'low';
9
- reason?: string;
10
- path?: string;
11
- method?: string;
12
- approvedAt?: string;
13
- approvedBy?: 'human' | 'auto';
14
- }
15
- export interface HookGenerationConfig {
16
- version: string;
17
- nameOverrides: Record<string, string>;
18
- reviewedNames: HookNameOverride[];
19
- patterns: {
20
- removeDoubleWords: boolean;
21
- smartCasing: boolean;
22
- deduplicateSegments: boolean;
23
- };
24
- statistics?: {
25
- totalGenerated: number;
26
- highConfidence: number;
27
- mediumConfidence: number;
28
- lowConfidence: number;
29
- humanReviewed: number;
30
- lastUpdated: string;
31
- };
32
- }
33
- export declare class HookConfigManager {
34
- private configPath;
35
- private config;
36
- constructor(configPath?: string);
37
- load(): Promise<void>;
38
- save(): Promise<void>;
39
- getOverride(operationId: string): string | undefined;
40
- addOverride(override: HookNameOverride): void;
41
- getPatterns(): {
42
- removeDoubleWords: boolean;
43
- smartCasing: boolean;
44
- deduplicateSegments: boolean;
45
- };
46
- updateStatistics(stats: Partial<HookGenerationConfig['statistics']>): void;
47
- getReviewedNames(): HookNameOverride[];
48
- hasBeenReviewed(operationId: string): boolean;
49
- }
50
- //# sourceMappingURL=hook-config.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hook-config.d.ts","sourceRoot":"","sources":["../../../src/codegen/openapi/hook-config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAA;IACrC,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,UAAU,CAAC,EAAE,OAAO,GAAG,MAAM,CAAA;CAC9B;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAA;IACf,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACrC,aAAa,EAAE,gBAAgB,EAAE,CAAA;IACjC,QAAQ,EAAE;QACR,iBAAiB,EAAE,OAAO,CAAA;QAC1B,WAAW,EAAE,OAAO,CAAA;QACpB,mBAAmB,EAAE,OAAO,CAAA;KAC7B,CAAA;IACD,UAAU,CAAC,EAAE;QACX,cAAc,EAAE,MAAM,CAAA;QACtB,cAAc,EAAE,MAAM,CAAA;QACtB,gBAAgB,EAAE,MAAM,CAAA;QACxB,aAAa,EAAE,MAAM,CAAA;QACrB,aAAa,EAAE,MAAM,CAAA;QACrB,WAAW,EAAE,MAAM,CAAA;KACpB,CAAA;CACF;AAaD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,MAAM,CAAuC;gBAEzC,UAAU,GAAE,MAA8B;IAIhD,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAUrB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAK3B,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAIpD,WAAW,CAAC,QAAQ,EAAE,gBAAgB,GAAG,IAAI;IAQ7C,WAAW;2BA5DU,OAAO;qBACb,OAAO;6BACC,OAAO;;IA8D9B,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAC;IAQnE,gBAAgB,IAAI,gBAAgB,EAAE;IAItC,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;CAG9C"}