@umituz/react-native-ai-generation-content 1.26.2 → 1.26.4

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 (327) hide show
  1. package/package.json +3 -2
  2. package/src/domains/generation/application/feature-registry.ts +101 -0
  3. package/src/domains/generation/application/generation-strategy.factory.ts +128 -0
  4. package/src/domains/generation/domain/feature-config.types.ts +61 -0
  5. package/src/domains/generation/domain/generation.types.ts +74 -0
  6. package/src/domains/generation/index.ts +37 -0
  7. package/src/domains/generation/presentation/useAIGeneration.hook.ts +106 -0
  8. package/src/domains/wizard/infrastructure/strategies/wizard-strategy.factory.ts +3 -4
  9. package/src/index.ts +1 -25
  10. package/src/infrastructure/executors/executor-factory.ts +53 -0
  11. package/src/infrastructure/executors/image-executor.ts +133 -0
  12. package/src/infrastructure/executors/video-executor.ts +130 -0
  13. package/src/features/ai-hug/README.md +0 -438
  14. package/src/features/ai-hug/domain/index.ts +0 -5
  15. package/src/features/ai-hug/domain/types/ai-hug.types.ts +0 -25
  16. package/src/features/ai-hug/domain/types/index.ts +0 -7
  17. package/src/features/ai-hug/index.ts +0 -19
  18. package/src/features/ai-hug/presentation/components/AIHugFeature.tsx +0 -77
  19. package/src/features/ai-hug/presentation/components/index.ts +0 -2
  20. package/src/features/ai-hug/presentation/hooks/index.ts +0 -9
  21. package/src/features/ai-hug/presentation/hooks/useAIHugFeature.ts +0 -34
  22. package/src/features/ai-hug/presentation/index.ts +0 -6
  23. package/src/features/ai-kiss/README.md +0 -445
  24. package/src/features/ai-kiss/domain/index.ts +0 -5
  25. package/src/features/ai-kiss/domain/types/ai-kiss.types.ts +0 -25
  26. package/src/features/ai-kiss/domain/types/index.ts +0 -7
  27. package/src/features/ai-kiss/index.ts +0 -19
  28. package/src/features/ai-kiss/presentation/components/AIKissFeature.tsx +0 -77
  29. package/src/features/ai-kiss/presentation/components/index.ts +0 -2
  30. package/src/features/ai-kiss/presentation/hooks/index.ts +0 -9
  31. package/src/features/ai-kiss/presentation/hooks/useAIKissFeature.ts +0 -34
  32. package/src/features/ai-kiss/presentation/index.ts +0 -6
  33. package/src/features/anime-selfie/README.md +0 -396
  34. package/src/features/anime-selfie/domain/index.ts +0 -5
  35. package/src/features/anime-selfie/domain/types/anime-selfie.types.ts +0 -52
  36. package/src/features/anime-selfie/domain/types/index.ts +0 -8
  37. package/src/features/anime-selfie/index.ts +0 -20
  38. package/src/features/anime-selfie/presentation/components/AnimeSelfieFeature.tsx +0 -86
  39. package/src/features/anime-selfie/presentation/components/index.ts +0 -2
  40. package/src/features/anime-selfie/presentation/hooks/index.ts +0 -9
  41. package/src/features/anime-selfie/presentation/hooks/useAnimeSelfieFeature.ts +0 -59
  42. package/src/features/anime-selfie/presentation/index.ts +0 -6
  43. package/src/features/couple-future/README.md +0 -445
  44. package/src/features/couple-future/domain/types.ts +0 -63
  45. package/src/features/couple-future/domain/wizard-config.adapter.ts +0 -76
  46. package/src/features/couple-future/domain/wizard.types.ts +0 -121
  47. package/src/features/couple-future/index.ts +0 -83
  48. package/src/features/couple-future/infrastructure/coupleFeatureRegistry.ts +0 -76
  49. package/src/features/couple-future/infrastructure/couplePromptEnhancer.ts +0 -100
  50. package/src/features/couple-future/infrastructure/executor.ts +0 -188
  51. package/src/features/couple-future/infrastructure/generationUtils.ts +0 -228
  52. package/src/features/couple-future/presentation/components/ArtStyleSelector.tsx +0 -146
  53. package/src/features/couple-future/presentation/components/ArtistStyleSelector.tsx +0 -122
  54. package/src/features/couple-future/presentation/components/CoupleFutureWizard.tsx +0 -239
  55. package/src/features/couple-future/presentation/components/GeneratingStepContent.tsx +0 -86
  56. package/src/features/couple-future/presentation/components/RomanticMoodSelector.tsx +0 -147
  57. package/src/features/couple-future/presentation/components/WardrobeSelector.tsx +0 -141
  58. package/src/features/couple-future/presentation/components/index.ts +0 -12
  59. package/src/features/couple-future/presentation/hooks/useCoupleFutureFlow.ts +0 -166
  60. package/src/features/couple-future/presentation/hooks/useCoupleFutureFlow.types.ts +0 -69
  61. package/src/features/couple-future/presentation/hooks/useCoupleFutureHandlers.ts +0 -117
  62. package/src/features/couple-future/presentation/screens/CoupleFeatureScreen.tsx +0 -113
  63. package/src/features/face-swap/README.md +0 -431
  64. package/src/features/face-swap/domain/index.ts +0 -5
  65. package/src/features/face-swap/domain/types/face-swap.types.ts +0 -26
  66. package/src/features/face-swap/domain/types/index.ts +0 -7
  67. package/src/features/face-swap/index.ts +0 -19
  68. package/src/features/face-swap/presentation/components/FaceSwapFeature.tsx +0 -87
  69. package/src/features/face-swap/presentation/components/index.ts +0 -2
  70. package/src/features/face-swap/presentation/hooks/index.ts +0 -6
  71. package/src/features/face-swap/presentation/hooks/useFaceSwapFeature.ts +0 -35
  72. package/src/features/face-swap/presentation/index.ts +0 -6
  73. package/src/features/hd-touch-up/README.md +0 -396
  74. package/src/features/hd-touch-up/domain/index.ts +0 -1
  75. package/src/features/hd-touch-up/domain/types/hd-touch-up.types.ts +0 -62
  76. package/src/features/hd-touch-up/domain/types/index.ts +0 -9
  77. package/src/features/hd-touch-up/index.ts +0 -21
  78. package/src/features/hd-touch-up/presentation/components/HDTouchUpFeature.tsx +0 -86
  79. package/src/features/hd-touch-up/presentation/components/index.ts +0 -2
  80. package/src/features/hd-touch-up/presentation/hooks/index.ts +0 -1
  81. package/src/features/hd-touch-up/presentation/hooks/useHDTouchUpFeature.ts +0 -23
  82. package/src/features/hd-touch-up/presentation/index.ts +0 -2
  83. package/src/features/image-to-image/README.md +0 -459
  84. package/src/features/image-to-image/domain/index.ts +0 -1
  85. package/src/features/image-to-image/domain/types/base.types.ts +0 -48
  86. package/src/features/image-to-image/domain/types/index.ts +0 -1
  87. package/src/features/image-to-image/domain/types/partials/config.types.ts +0 -37
  88. package/src/features/image-to-image/domain/types/partials/hook.types.ts +0 -53
  89. package/src/features/image-to-image/domain/types/partials/metadata.types.ts +0 -32
  90. package/src/features/image-to-image/domain/types/partials/result.types.ts +0 -44
  91. package/src/features/image-to-image/domain/types/partials/state.types.ts +0 -34
  92. package/src/features/image-to-image/domain/types/partials/translation.types.ts +0 -57
  93. package/src/features/image-to-image/index.ts +0 -2
  94. package/src/features/image-to-image/presentation/hooks/index.ts +0 -3
  95. package/src/features/image-to-image/presentation/hooks/useDualImageFeature.ts +0 -204
  96. package/src/features/image-to-image/presentation/hooks/useImageWithPromptFeature.ts +0 -223
  97. package/src/features/image-to-image/presentation/hooks/useSingleImageFeature.ts +0 -166
  98. package/src/features/image-to-image/presentation/index.ts +0 -1
  99. package/src/features/image-to-video/README.md +0 -414
  100. package/src/features/image-to-video/domain/constants/animation.constants.ts +0 -47
  101. package/src/features/image-to-video/domain/constants/duration.constants.ts +0 -13
  102. package/src/features/image-to-video/domain/constants/form.constants.ts +0 -22
  103. package/src/features/image-to-video/domain/constants/index.ts +0 -23
  104. package/src/features/image-to-video/domain/constants/music.constants.ts +0 -53
  105. package/src/features/image-to-video/domain/index.ts +0 -5
  106. package/src/features/image-to-video/domain/types/animation.types.ts +0 -20
  107. package/src/features/image-to-video/domain/types/config.types.ts +0 -56
  108. package/src/features/image-to-video/domain/types/duration.types.ts +0 -11
  109. package/src/features/image-to-video/domain/types/form.types.ts +0 -35
  110. package/src/features/image-to-video/domain/types/image-to-video.types.ts +0 -122
  111. package/src/features/image-to-video/domain/types/index.ts +0 -39
  112. package/src/features/image-to-video/domain/types/music.types.ts +0 -21
  113. package/src/features/image-to-video/index.ts +0 -116
  114. package/src/features/image-to-video/infrastructure/index.ts +0 -1
  115. package/src/features/image-to-video/infrastructure/services/image-to-video-executor.ts +0 -154
  116. package/src/features/image-to-video/infrastructure/services/index.ts +0 -5
  117. package/src/features/image-to-video/presentation/components/AddMoreCard.tsx +0 -52
  118. package/src/features/image-to-video/presentation/components/AnimationStyleSelector.tsx +0 -135
  119. package/src/features/image-to-video/presentation/components/DurationSelector.tsx +0 -110
  120. package/src/features/image-to-video/presentation/components/EmptyGridState.tsx +0 -69
  121. package/src/features/image-to-video/presentation/components/GridImageItem.tsx +0 -64
  122. package/src/features/image-to-video/presentation/components/ImageSelectionGrid.styles.ts +0 -84
  123. package/src/features/image-to-video/presentation/components/ImageSelectionGrid.tsx +0 -77
  124. package/src/features/image-to-video/presentation/components/ImageSelectionGrid.types.ts +0 -18
  125. package/src/features/image-to-video/presentation/components/MusicMoodSelector.tsx +0 -181
  126. package/src/features/image-to-video/presentation/components/index.ts +0 -30
  127. package/src/features/image-to-video/presentation/hooks/index.ts +0 -27
  128. package/src/features/image-to-video/presentation/hooks/useFormState.ts +0 -116
  129. package/src/features/image-to-video/presentation/hooks/useGeneration.ts +0 -85
  130. package/src/features/image-to-video/presentation/hooks/useGenerationExecution.ts +0 -143
  131. package/src/features/image-to-video/presentation/hooks/useImageToVideoFeature.ts +0 -107
  132. package/src/features/image-to-video/presentation/hooks/useImageToVideoForm.ts +0 -119
  133. package/src/features/image-to-video/presentation/hooks/useImageToVideoValidation.ts +0 -46
  134. package/src/features/image-to-video/presentation/index.ts +0 -5
  135. package/src/features/love-message/domain/constants.ts +0 -162
  136. package/src/features/love-message/domain/types.ts +0 -58
  137. package/src/features/love-message/index.ts +0 -37
  138. package/src/features/love-message/infrastructure/persistence/PartnerProfileRepository.ts +0 -52
  139. package/src/features/love-message/infrastructure/prompts/messagePromptBuilder.ts +0 -109
  140. package/src/features/love-message/infrastructure/services/LoveMessageService.ts +0 -35
  141. package/src/features/love-message/presentation/components/CategoryGrid.tsx +0 -88
  142. package/src/features/love-message/presentation/components/DetailsInput.tsx +0 -74
  143. package/src/features/love-message/presentation/components/ExploreHeader.tsx +0 -67
  144. package/src/features/love-message/presentation/components/FieldInput.tsx +0 -83
  145. package/src/features/love-message/presentation/components/GeneratorHeader.tsx +0 -88
  146. package/src/features/love-message/presentation/components/LoveMessageHeroSection.tsx +0 -114
  147. package/src/features/love-message/presentation/components/MessageListItem.tsx +0 -77
  148. package/src/features/love-message/presentation/components/MessageResult.tsx +0 -105
  149. package/src/features/love-message/presentation/components/PartnerInput.tsx +0 -78
  150. package/src/features/love-message/presentation/components/ProgressDots.tsx +0 -48
  151. package/src/features/love-message/presentation/components/StepDetails.tsx +0 -23
  152. package/src/features/love-message/presentation/components/StepPartner.tsx +0 -116
  153. package/src/features/love-message/presentation/components/StepVibe.tsx +0 -30
  154. package/src/features/love-message/presentation/components/ToneSelector.tsx +0 -100
  155. package/src/features/love-message/presentation/components/TrendingSection.tsx +0 -130
  156. package/src/features/love-message/presentation/components/TypeSelector.tsx +0 -99
  157. package/src/features/love-message/presentation/hooks/useLoveMessageGenerator.ts +0 -114
  158. package/src/features/love-message/presentation/hooks/usePartnerProfile.ts +0 -43
  159. package/src/features/love-message/presentation/navigation/LoveMessageStack.tsx +0 -39
  160. package/src/features/love-message/presentation/screens/LoveMessageExploreScreen.tsx +0 -53
  161. package/src/features/love-message/presentation/screens/LoveMessageGeneratorScreen.tsx +0 -169
  162. package/src/features/love-message/presentation/screens/MessageListScreen.tsx +0 -127
  163. package/src/features/love-message/presentation/screens/PartnerProfileScreen.tsx +0 -119
  164. package/src/features/meme-generator/README.md +0 -408
  165. package/src/features/meme-generator/index.ts +0 -3
  166. package/src/features/meme-generator/infrastructure/services/MemeGenerationService.ts +0 -87
  167. package/src/features/meme-generator/presentation/components/MemeGeneratorFeature.tsx +0 -180
  168. package/src/features/meme-generator/presentation/components/index.ts +0 -2
  169. package/src/features/meme-generator/presentation/screens/MemeGeneratorScreen.tsx +0 -168
  170. package/src/features/meme-generator/presentation/screens/index.ts +0 -1
  171. package/src/features/partner-upload/domain/types.ts +0 -59
  172. package/src/features/partner-upload/index.ts +0 -30
  173. package/src/features/partner-upload/presentation/components/PartnerInfoInput.tsx +0 -112
  174. package/src/features/partner-upload/presentation/components/PhotoTips.tsx +0 -53
  175. package/src/features/partner-upload/presentation/components/index.ts +0 -4
  176. package/src/features/partner-upload/presentation/hooks/index.ts +0 -7
  177. package/src/features/partner-upload/presentation/hooks/usePartnerStep.ts +0 -130
  178. package/src/features/partner-upload/presentation/screens/PartnerStepScreen.tsx +0 -231
  179. package/src/features/partner-upload/presentation/screens/index.ts +0 -6
  180. package/src/features/photo-restoration/README.md +0 -399
  181. package/src/features/photo-restoration/domain/index.ts +0 -1
  182. package/src/features/photo-restoration/domain/types/index.ts +0 -9
  183. package/src/features/photo-restoration/domain/types/photo-restore.types.ts +0 -64
  184. package/src/features/photo-restoration/index.ts +0 -22
  185. package/src/features/photo-restoration/presentation/components/PhotoRestoreFeature.tsx +0 -88
  186. package/src/features/photo-restoration/presentation/components/PhotoRestoreResultView.tsx +0 -86
  187. package/src/features/photo-restoration/presentation/components/index.ts +0 -4
  188. package/src/features/photo-restoration/presentation/hooks/index.ts +0 -1
  189. package/src/features/photo-restoration/presentation/hooks/usePhotoRestoreFeature.ts +0 -23
  190. package/src/features/photo-restoration/presentation/index.ts +0 -2
  191. package/src/features/remove-background/README.md +0 -393
  192. package/src/features/remove-background/domain/index.ts +0 -5
  193. package/src/features/remove-background/domain/types/index.ts +0 -7
  194. package/src/features/remove-background/domain/types/remove-background.types.ts +0 -28
  195. package/src/features/remove-background/index.ts +0 -19
  196. package/src/features/remove-background/presentation/components/RemoveBackgroundFeature.tsx +0 -86
  197. package/src/features/remove-background/presentation/components/index.ts +0 -2
  198. package/src/features/remove-background/presentation/hooks/index.ts +0 -1
  199. package/src/features/remove-background/presentation/hooks/useRemoveBackgroundFeature.ts +0 -28
  200. package/src/features/remove-background/presentation/index.ts +0 -6
  201. package/src/features/remove-object/README.md +0 -405
  202. package/src/features/remove-object/domain/index.ts +0 -5
  203. package/src/features/remove-object/domain/types/index.ts +0 -7
  204. package/src/features/remove-object/domain/types/remove-object.types.ts +0 -54
  205. package/src/features/remove-object/index.ts +0 -23
  206. package/src/features/remove-object/presentation/components/RemoveObjectFeature.tsx +0 -136
  207. package/src/features/remove-object/presentation/components/index.ts +0 -2
  208. package/src/features/remove-object/presentation/hooks/index.ts +0 -9
  209. package/src/features/remove-object/presentation/hooks/useRemoveObjectFeature.ts +0 -221
  210. package/src/features/remove-object/presentation/index.ts +0 -6
  211. package/src/features/replace-background/README.md +0 -405
  212. package/src/features/replace-background/domain/types/index.ts +0 -7
  213. package/src/features/replace-background/domain/types/replace-background.types.ts +0 -33
  214. package/src/features/replace-background/index.ts +0 -23
  215. package/src/features/replace-background/presentation/components/ReplaceBackgroundFeature.tsx +0 -105
  216. package/src/features/replace-background/presentation/components/index.ts +0 -6
  217. package/src/features/replace-background/presentation/hooks/index.ts +0 -9
  218. package/src/features/replace-background/presentation/hooks/useReplaceBackgroundFeature.ts +0 -55
  219. package/src/features/scenarios/domain/types.ts +0 -147
  220. package/src/features/scenarios/index.ts +0 -64
  221. package/src/features/scenarios/presentation/components/InspirationChips.tsx +0 -82
  222. package/src/features/scenarios/presentation/components/MagicPromptHeadline.tsx +0 -79
  223. package/src/features/scenarios/presentation/components/ScenarioGrid.tsx +0 -224
  224. package/src/features/scenarios/presentation/components/ScenarioHeader.tsx +0 -55
  225. package/src/features/scenarios/presentation/components/StyleSelector.tsx +0 -119
  226. package/src/features/scenarios/presentation/components/index.ts +0 -18
  227. package/src/features/scenarios/presentation/containers/CategoryNavigationContainer.tsx +0 -178
  228. package/src/features/scenarios/presentation/screens/HierarchicalScenarioListScreen.tsx +0 -266
  229. package/src/features/scenarios/presentation/screens/MagicPromptScreen.tsx +0 -242
  230. package/src/features/scenarios/presentation/screens/MainCategoryScreen.tsx +0 -198
  231. package/src/features/scenarios/presentation/screens/ScenarioPreviewScreen.tsx +0 -164
  232. package/src/features/scenarios/presentation/screens/ScenarioSelectorScreen.tsx +0 -66
  233. package/src/features/scenarios/presentation/screens/SubCategoryScreen.tsx +0 -216
  234. package/src/features/script-generator/README.md +0 -433
  235. package/src/features/script-generator/domain/constants/index.ts +0 -10
  236. package/src/features/script-generator/domain/types/script.types.ts +0 -30
  237. package/src/features/script-generator/index.ts +0 -5
  238. package/src/features/script-generator/infrastructure/services/ScriptGenerationService.ts +0 -62
  239. package/src/features/script-generator/presentation/components/ScriptDisplay.tsx +0 -158
  240. package/src/features/script-generator/presentation/components/VideoTypeSelector.tsx +0 -102
  241. package/src/features/script-generator/presentation/components/index.ts +0 -2
  242. package/src/features/script-generator/presentation/hooks/index.ts +0 -1
  243. package/src/features/script-generator/presentation/hooks/useScriptGenerator.ts +0 -77
  244. package/src/features/shared/README.md +0 -311
  245. package/src/features/shared/dual-image-video/domain/types/dual-image-video.types.ts +0 -88
  246. package/src/features/shared/dual-image-video/domain/types/index.ts +0 -14
  247. package/src/features/shared/dual-image-video/index.ts +0 -17
  248. package/src/features/shared/dual-image-video/presentation/hooks/index.ts +0 -5
  249. package/src/features/shared/dual-image-video/presentation/hooks/useDualImageVideoFeature.ts +0 -185
  250. package/src/features/shared/index.ts +0 -6
  251. package/src/features/text-to-image/README.md +0 -394
  252. package/src/features/text-to-image/domain/constants/index.ts +0 -8
  253. package/src/features/text-to-image/domain/constants/options.constants.ts +0 -39
  254. package/src/features/text-to-image/domain/constants/styles.constants.ts +0 -34
  255. package/src/features/text-to-image/domain/index.ts +0 -7
  256. package/src/features/text-to-image/domain/types/config.types.ts +0 -75
  257. package/src/features/text-to-image/domain/types/form.types.ts +0 -58
  258. package/src/features/text-to-image/domain/types/index.ts +0 -38
  259. package/src/features/text-to-image/domain/types/text-to-image.types.ts +0 -58
  260. package/src/features/text-to-image/index.ts +0 -116
  261. package/src/features/text-to-image/infrastructure/index.ts +0 -1
  262. package/src/features/text-to-image/infrastructure/services/index.ts +0 -5
  263. package/src/features/text-to-image/infrastructure/services/text-to-image-executor.ts +0 -147
  264. package/src/features/text-to-image/presentation/components/index.ts +0 -30
  265. package/src/features/text-to-image/presentation/hooks/index.ts +0 -30
  266. package/src/features/text-to-image/presentation/hooks/useFormState.ts +0 -103
  267. package/src/features/text-to-image/presentation/hooks/useGeneration.ts +0 -139
  268. package/src/features/text-to-image/presentation/hooks/useTextToImageFeature.ts +0 -111
  269. package/src/features/text-to-image/presentation/hooks/useTextToImageForm.ts +0 -58
  270. package/src/features/text-to-image/presentation/index.ts +0 -7
  271. package/src/features/text-to-video/README.md +0 -412
  272. package/src/features/text-to-video/domain/index.ts +0 -1
  273. package/src/features/text-to-video/domain/types/callback.types.ts +0 -69
  274. package/src/features/text-to-video/domain/types/component.types.ts +0 -106
  275. package/src/features/text-to-video/domain/types/config.types.ts +0 -61
  276. package/src/features/text-to-video/domain/types/index.ts +0 -56
  277. package/src/features/text-to-video/domain/types/request.types.ts +0 -36
  278. package/src/features/text-to-video/domain/types/state.types.ts +0 -53
  279. package/src/features/text-to-video/index.ts +0 -68
  280. package/src/features/text-to-video/infrastructure/index.ts +0 -1
  281. package/src/features/text-to-video/infrastructure/services/index.ts +0 -5
  282. package/src/features/text-to-video/infrastructure/services/text-to-video-executor.ts +0 -141
  283. package/src/features/text-to-video/presentation/components/FrameSelector.tsx +0 -153
  284. package/src/features/text-to-video/presentation/components/GenerationTabs.tsx +0 -73
  285. package/src/features/text-to-video/presentation/components/HeroSection.tsx +0 -61
  286. package/src/features/text-to-video/presentation/components/HintCarousel.tsx +0 -96
  287. package/src/features/text-to-video/presentation/components/OptionsPanel.tsx +0 -121
  288. package/src/features/text-to-video/presentation/components/index.ts +0 -10
  289. package/src/features/text-to-video/presentation/hooks/index.ts +0 -17
  290. package/src/features/text-to-video/presentation/hooks/useTextToVideoFeature.ts +0 -225
  291. package/src/features/text-to-video/presentation/hooks/useTextToVideoForm.ts +0 -134
  292. package/src/features/text-to-video/presentation/index.ts +0 -7
  293. package/src/features/text-to-voice/README.md +0 -445
  294. package/src/features/text-to-voice/domain/index.ts +0 -1
  295. package/src/features/text-to-voice/domain/types/component.types.ts +0 -91
  296. package/src/features/text-to-voice/domain/types/config.types.ts +0 -34
  297. package/src/features/text-to-voice/domain/types/form.types.ts +0 -39
  298. package/src/features/text-to-voice/domain/types/generation.types.ts +0 -43
  299. package/src/features/text-to-voice/domain/types/index.ts +0 -38
  300. package/src/features/text-to-voice/index.ts +0 -53
  301. package/src/features/text-to-voice/infrastructure/index.ts +0 -1
  302. package/src/features/text-to-voice/infrastructure/services/index.ts +0 -4
  303. package/src/features/text-to-voice/infrastructure/services/text-to-voice-executor.ts +0 -103
  304. package/src/features/text-to-voice/presentation/components/TextToVoiceAudioPlayer.tsx +0 -81
  305. package/src/features/text-to-voice/presentation/components/index.ts +0 -7
  306. package/src/features/text-to-voice/presentation/hooks/index.ts +0 -6
  307. package/src/features/text-to-voice/presentation/hooks/useTextToVoiceForm.ts +0 -91
  308. package/src/features/text-to-voice/presentation/hooks/useTextToVoiceGeneration.ts +0 -116
  309. package/src/features/text-to-voice/presentation/index.ts +0 -2
  310. package/src/features/upscaling/README.md +0 -396
  311. package/src/features/upscaling/domain/index.ts +0 -1
  312. package/src/features/upscaling/domain/types/index.ts +0 -1
  313. package/src/features/upscaling/domain/types/upscale.types.ts +0 -23
  314. package/src/features/upscaling/index.ts +0 -20
  315. package/src/features/upscaling/presentation/components/ComparisonSlider.tsx +0 -200
  316. package/src/features/upscaling/presentation/components/UpscaleFeature.tsx +0 -89
  317. package/src/features/upscaling/presentation/components/UpscaleResultView.tsx +0 -98
  318. package/src/features/upscaling/presentation/components/index.ts +0 -6
  319. package/src/features/upscaling/presentation/hooks/index.ts +0 -1
  320. package/src/features/upscaling/presentation/hooks/useUpscaleFeature.ts +0 -28
  321. package/src/features/upscaling/presentation/index.ts +0 -2
  322. package/src/features/wizard/domain/types.ts +0 -154
  323. package/src/features/wizard/index.ts +0 -43
  324. package/src/features/wizard/presentation/components/AIFeatureWizard.tsx +0 -231
  325. package/src/features/wizard/presentation/components/AIGenerationWizard.tsx +0 -132
  326. package/src/features/wizard/presentation/hooks/useWizard.ts +0 -120
  327. package/src/features/wizard/presentation/store/useWizardStore.ts +0 -82
@@ -1,396 +0,0 @@
1
- # HD Touch Up Feature
2
-
3
- Apply high-detail enhancements to images using AI.
4
-
5
- ## 📍 Import Path
6
-
7
- ```typescript
8
- import { useHDTouchUpFeature } from '@umituz/react-native-ai-generation-content';
9
- ```
10
-
11
- **Location**: `src/features/hd-touch-up/`
12
-
13
- ## 🎯 Feature Purpose
14
-
15
- Enhance image quality with AI-powered improvements including sharpening, noise reduction, facial enhancement, color adjustment, and contrast optimization. Professional-quality touch-ups for portraits, product photos, landscapes, and more.
16
-
17
- ---
18
-
19
- ## 📋 Usage Strategy
20
-
21
- ### When to Use This Feature
22
-
23
- ✅ **Use Cases:**
24
- - Enhancing portrait photographs
25
- - Improving product photo quality
26
- - Sharpening landscape details
27
- - Reducing noise in low-light photos
28
- - Professional photo polishing
29
-
30
- ❌ **When NOT to Use:**
31
- - Restoring damaged photos (use Photo Restoration)
32
- - Adding color to B&W photos (use Colorization)
33
- - Upscaling resolution (use Upscaling)
34
- - Applying artistic filters (use Style Transfer)
35
-
36
- ### Implementation Strategy
37
-
38
- 1. **Select image** to enhance
39
- 2. **Choose enhancement level** (low, medium, high)
40
- 3. **Configure options** (enhance faces, denoise, sharpen, etc.)
41
- 4. **Process enhancement** with progress tracking
42
- 5. **Preview and compare** with original
43
- 6. **Save or share** enhanced image
44
-
45
- ---
46
-
47
- ## ⚠️ Critical Rules (MUST FOLLOW)
48
-
49
- ### 1. Image Requirements
50
- - **MUST** provide ONE image to enhance
51
- - **MUST** use reasonably high-quality images (min 512x512)
52
- - **MUST** have clear, visible content
53
- - **MUST NOT** exceed file size limits (10MB max)
54
- - **MUST NOT** use extremely blurry or unusable photos
55
-
56
- ### 2. Configuration
57
- - **MUST** provide valid `userId` for tracking
58
- - **MUST** specify `enhancementLevel` (low, medium, high)
59
- - **MUST** configure enhancement options
60
- - **MUST** implement `onError` callback
61
- - **MUST** implement `onSelectImage` callback
62
-
63
- ### 3. State Management
64
- - **MUST** check `isReady` before enabling enhance button
65
- - **MUST** display progress during enhancement
66
- - **MUST** handle long processing times
67
- - **MUST** display `error` state with clear messages
68
- - **MUST** implement proper cleanup on unmount
69
-
70
- ### 4. Performance
71
- - **MUST** implement image compression before upload
72
- - **MUST** show progress indicator for processing
73
- - **MUST** cache results locally
74
- - **MUST** allow users to cancel processing
75
- - **MUST NOT** enhance multiple images simultaneously
76
-
77
- ### 5. Enhancement Options
78
- - **MUST** provide enhancement level control
79
- - **MUST** support facial enhancement toggle
80
- - **MUST** support denoise option
81
- - **MUST** support sharpen option
82
- - **MUST** support color and contrast adjustments
83
-
84
- ---
85
-
86
- ## 🚫 Prohibitions (MUST AVOID)
87
-
88
- ### Strictly Forbidden
89
-
90
- ❌ **NEVER** do the following:
91
-
92
- 1. **No Missing Images**
93
- - Always validate image is selected
94
- - Never call process() without image
95
-
96
- 2. **No Auto-Processing**
97
- - Never start enhancement without user action
98
- - Always require explicit "Enhance" button press
99
- - Show preview before processing
100
-
101
- 3. **No Hardcoded Credentials**
102
- - Never store API keys in component files
103
- - Use environment variables or secure storage
104
-
105
- 4. **No Unhandled Errors**
106
- - Never ignore enhancement failures
107
- - Always explain what went wrong
108
- - Provide retry or alternative options
109
-
110
- 5. **No Memory Leaks**
111
- - Never store both original and enhanced simultaneously
112
- - Clean up temporary images
113
- - Implement proper image disposal
114
-
115
- 6. **No Blocked UI**
116
- - Never block main thread with image processing
117
- - Always show progress indicator
118
- - Allow cancellation
119
-
120
- 7. **No Over-Enhancement**
121
- - Never apply maximum enhancement by default
122
- - Always start with moderate levels
123
- - Allow user to adjust intensity
124
-
125
- ---
126
-
127
- ## 🤖 AI Agent Directions
128
-
129
- ### For AI Code Generation Tools
130
-
131
- When using this feature with AI code generation tools, follow these guidelines:
132
-
133
- #### Prompt Template for AI Agents
134
-
135
- ```
136
- You are implementing an HD touch up feature using @umituz/react-native-ai-generation-content.
137
-
138
- REQUIREMENTS:
139
- 1. Import from: @umituz/react-native-ai-generation-content
140
- 2. Use the useHDTouchUpFeature hook
141
- 3. Select enhancement level (low, medium, high)
142
- 4. Implement image selection UI
143
- 5. Configure enhancement options (faces, denoise, sharpen, colors, contrast)
144
- 6. Validate image before enhancement
145
- 7. Show before/after comparison
146
- 8. Handle long processing times with progress
147
- 9. Implement proper error handling
148
- 10. Implement cleanup on unmount
149
-
150
- CRITICAL RULES:
151
- - MUST validate image before calling enhance()
152
- - MUST show before/after comparison
153
- - MUST handle enhancement level selection
154
- - MUST handle individual enhancement toggles
155
- - MUST implement debouncing (300ms)
156
- - MUST allow regeneration with different settings
157
-
158
- CONFIGURATION:
159
- - Provide valid userId (string)
160
- - Set enhancementLevel: 'low' | 'medium' | 'high'
161
- - Set enhanceFaces: boolean (portrait enhancement)
162
- - Set denoise: boolean (reduce noise)
163
- - Set sharpen: boolean (sharpen details)
164
- - Set adjustColors: boolean (improve vibrancy)
165
- - Set adjustContrast: boolean (enhance tones)
166
- - Implement onSelectImage callback
167
- - Implement onSaveResult callback
168
- - Configure callbacks: onProcessingStart, onProcessingComplete, onError
169
-
170
- ENHANCEMENT LEVELS:
171
- - low: Subtle improvements, natural look
172
- - medium: Balanced enhancements (recommended)
173
- - high: Strong enhancements, professional quality
174
-
175
- OPTIONS:
176
- - enhanceFaces: Apply face-specific enhancements
177
- - denoise: Remove noise and grain
178
- - sharpen: Enhance edges and details
179
- - adjustColors: Improve color vibrancy
180
- - adjustContrast: Enhance contrast and tones
181
-
182
- STRICTLY FORBIDDEN:
183
- - No missing image validation
184
- - No auto-processing without user action
185
- - No hardcoded API keys
186
- - No unhandled errors
187
- - No memory leaks
188
- - No blocking UI
189
- - No over-enhancement
190
-
191
- QUALITY CHECKLIST:
192
- - [ ] Image selection implemented
193
- - [ ] Enhancement level selector added
194
- - [ ] Enhancement toggles included
195
- - [ ] Validation before enhance()
196
- - [ ] Before/after comparison view
197
- - [ ] Progress indicator during processing
198
- - [ ] Error display with retry option
199
- - [ ] Download/share functionality
200
- - [ ] Regeneration with different settings
201
- ```
202
-
203
- #### AI Implementation Checklist
204
-
205
- Use this checklist when generating code:
206
-
207
- - [ ] Feature imported from correct path
208
- - [ ] Image selection implemented
209
- - [ ] Enhancement level selector added
210
- - [ ] Enhancement toggles implemented
211
- - [ ] Validation before enhance()
212
- - [ ] Before/after comparison view
213
- - [ ] Progress indicator during processing
214
- - [ ] Error display with user-friendly message
215
- - [ ] Download/share buttons
216
- - [ ] Regeneration option
217
- - [ ] Cleanup on unmount
218
- - [ ] Original image preserved
219
-
220
- ---
221
-
222
- ## 🛠️ Configuration Strategy
223
-
224
- ### Essential Configuration
225
-
226
- ```typescript
227
- // Required fields
228
- {
229
- userId: string
230
- enhancementLevel: 'low' | 'medium' | 'high'
231
- onSelectImage: () => Promise<string | null>
232
- }
233
-
234
- // Optional callbacks
235
- {
236
- onProcessingStart?: () => void
237
- onProcessingComplete?: (result) => void
238
- onError?: (error: string) => void
239
- }
240
- ```
241
-
242
- ### Recommended Settings
243
-
244
- 1. **Enhancement Levels**
245
- - Low: Subtle improvements for natural look
246
- - Medium: Balanced enhancements (recommended for most photos)
247
- - High: Maximum enhancements for professional quality
248
-
249
- 2. **Enhancement Options**
250
- - enhanceFaces: Apply face-specific enhancements (portraits)
251
- - denoise: Remove noise and grain (low-light, high-ISO photos)
252
- - sharpen: Enhance edges and details
253
- - adjustColors: Improve color vibrancy (faded/dull photos)
254
- - adjustContrast: Enhance contrast and tones
255
-
256
- 3. **Image Quality**
257
- - Minimum: 512x512 resolution
258
- - Recommended: 1024x1024 or higher
259
- - Format: JPEG or PNG
260
- - Max size: 10MB
261
-
262
- ---
263
-
264
- ## 📊 State Management
265
-
266
- ### Feature States
267
-
268
- **isReady**: boolean
269
- - Image selected and validated
270
- - Check before enabling enhance button
271
-
272
- **isProcessing**: boolean
273
- - Enhancement in progress
274
- - Show loading/progress indicator
275
- - Disable enhance button
276
-
277
- **progress**: number (0-100)
278
- - Enhancement progress percentage
279
- - Update progress bar
280
-
281
- **error**: string | null
282
- - Error message if enhancement failed
283
- - Display to user with clear message
284
-
285
- **result**: {
286
- imageUrl: string
287
- originalImageUrl?: string
288
- enhancementLevel?: string
289
- metadata?: any
290
- }
291
-
292
- ---
293
-
294
- ## 🎨 Best Practices
295
-
296
- ### Enhancement Selection
297
-
298
- 1. **Enhancement Level**
299
- - Start with Medium for most photos
300
- - Use Low for subtle improvements
301
- - Use High for professional quality
302
-
303
- 2. **Subject-Specific Options**
304
- - Portraits: Enable enhanceFaces
305
- - Landscapes: Enable sharpen and adjustContrast
306
- - Product photos: Enable sharpen and adjustColors
307
- - Low-light: Enable denoise
308
-
309
- 3. **Quality**
310
- - Good: Clear, well-composed photos
311
- - Bad: Extremely blurry or unusable photos
312
-
313
- ### User Experience
314
-
315
- 1. **Preview**
316
- - Show preview of enhancement settings
317
- - Compare different enhancement levels
318
- - Allow option toggles
319
-
320
- 2. **Before/After Comparison**
321
- - Side-by-side comparison
322
- - Slider for easy comparison
323
- - Zoom for detail inspection
324
-
325
- ---
326
-
327
- ## 🐛 Common Pitfalls
328
-
329
- ### Quality Issues
330
-
331
- ❌ **Problem**: Over-enhanced appearance
332
- ✅ **Solution**: Reduce enhancement level, disable unnecessary options
333
-
334
- ### Subject Issues
335
-
336
- ❌ **Problem**: Wrong options for subject type
337
- ✅ **Solution**: Match options to photo subject (portraits, landscapes, etc.)
338
-
339
- ### Performance Issues
340
-
341
- ❌ **Problem**: Slow enhancement
342
- ✅ **Solution**: Compress images, show progress, allow cancellation
343
-
344
- ---
345
-
346
- ## 📦 Related Components
347
-
348
- Use these components from the library:
349
-
350
- - **PhotoUploadCard**: Upload image interface
351
- - **EnhancementLevelSelector**: Choose enhancement intensity
352
- - **EnhancementToggles**: Toggle specific enhancements
353
- - **ResultDisplay**: Before/after comparison
354
- - **ProgressBar**: Progress display
355
-
356
- Located at: `src/presentation/components/`
357
-
358
- ---
359
-
360
- ## 🔄 Migration Strategy
361
-
362
- If migrating from previous implementation:
363
-
364
- 1. **Update imports** to new path
365
- 2. **Add enhancement level selector**
366
- 3. **Implement enhancement toggles**
367
- 4. **Update state handling** for new structure
368
- 5. **Add before/after comparison**
369
- 6. **Test all enhancement levels**
370
-
371
- ---
372
-
373
- ## 📚 Additional Resources
374
-
375
- - Main documentation: `/docs/`
376
- - API reference: `/docs/api/`
377
- - Examples: `/docs/examples/basic/hd-touch-up/`
378
- - Architecture: `/ARCHITECTURE.md`
379
-
380
- ---
381
-
382
- **Last Updated**: 2025-01-08
383
- **Version**: 2.0.0 (Strategy-based Documentation)
384
-
385
- ---
386
-
387
- ## 📝 Changelog
388
-
389
- ### v2.0.0 - 2025-01-08
390
- - **BREAKING**: Documentation format changed to strategy-based
391
- - Removed extensive code examples
392
- - Added rules, prohibitions, and AI agent directions
393
- - Focus on best practices and implementation guidance
394
-
395
- ### v1.0.0 - Initial Release
396
- - Initial feature documentation
@@ -1 +0,0 @@
1
- export * from "./types";
@@ -1,62 +0,0 @@
1
- /**
2
- * HD Touch Up Feature Types
3
- * Request, Result, Config types for HD enhancement
4
- */
5
-
6
- export interface HDTouchUpOptions {
7
- enhanceQuality?: boolean;
8
- upscaleFactor?: 2 | 4;
9
- sharpen?: boolean;
10
- }
11
-
12
- export interface HDTouchUpRequest {
13
- imageUri: string;
14
- imageBase64?: string;
15
- userId: string;
16
- options?: HDTouchUpOptions;
17
- }
18
-
19
- export interface HDTouchUpResult {
20
- success: boolean;
21
- imageUrl?: string;
22
- imageBase64?: string;
23
- error?: string;
24
- requestId?: string;
25
- }
26
-
27
- export interface HDTouchUpFeatureState {
28
- imageUri: string | null;
29
- processedUrl: string | null;
30
- isProcessing: boolean;
31
- progress: number;
32
- error: string | null;
33
- }
34
-
35
- export interface HDTouchUpTranslations {
36
- uploadTitle: string;
37
- uploadSubtitle: string;
38
- uploadChange: string;
39
- uploadAnalyzing: string;
40
- description: string;
41
- processingText: string;
42
- processButtonText: string;
43
- successText: string;
44
- saveButtonText: string;
45
- tryAnotherText: string;
46
- beforeLabel?: string;
47
- afterLabel?: string;
48
- compareHint?: string;
49
- }
50
-
51
- export type HDTouchUpResultExtractor = (result: unknown) => string | undefined;
52
-
53
- export interface HDTouchUpFeatureConfig {
54
- featureType: "hd-touch-up";
55
- creditCost?: number;
56
- extractResult?: HDTouchUpResultExtractor;
57
- prepareImage: (imageUri: string) => Promise<string>;
58
- onImageSelect?: (uri: string) => void;
59
- onProcessingStart?: () => void;
60
- onProcessingComplete?: (result: HDTouchUpResult) => void;
61
- onError?: (error: string) => void;
62
- }
@@ -1,9 +0,0 @@
1
- export type {
2
- HDTouchUpOptions,
3
- HDTouchUpRequest,
4
- HDTouchUpResult,
5
- HDTouchUpFeatureState,
6
- HDTouchUpTranslations,
7
- HDTouchUpResultExtractor,
8
- HDTouchUpFeatureConfig,
9
- } from "./hd-touch-up.types";
@@ -1,21 +0,0 @@
1
- /**
2
- * HD Touch Up Feature
3
- * Provider-agnostic HD enhancement feature
4
- */
5
-
6
- // Domain Types
7
- export type {
8
- HDTouchUpOptions,
9
- HDTouchUpRequest,
10
- HDTouchUpResult,
11
- HDTouchUpFeatureState,
12
- HDTouchUpTranslations,
13
- HDTouchUpFeatureConfig,
14
- HDTouchUpResultExtractor,
15
- } from "./domain";
16
-
17
- // Presentation Hooks
18
- export { useHDTouchUpFeature, type UseHDTouchUpFeatureProps } from "./presentation";
19
-
20
- // Presentation Components
21
- export { HDTouchUpFeature, type HDTouchUpFeatureProps } from "./presentation";
@@ -1,86 +0,0 @@
1
- import React, { useMemo } from "react";
2
- import { Image, StyleSheet } from "react-native";
3
- import { PhotoUploadCard } from "../../../../presentation/components/PhotoUploadCard";
4
- import { SingleImageFeatureLayout } from "../../../../presentation/layouts";
5
- import type { SingleImageInputRenderProps, ResultRenderProps } from "../../../../presentation/layouts";
6
- import { useHDTouchUpFeature } from "../hooks";
7
- import type { HDTouchUpTranslations, HDTouchUpFeatureConfig } from "../../domain/types";
8
-
9
- export interface HDTouchUpFeatureProps {
10
- config: HDTouchUpFeatureConfig;
11
- translations: HDTouchUpTranslations & {
12
- modalTitle?: string;
13
- modalMessage?: string;
14
- modalHint?: string;
15
- modalBackgroundHint?: string;
16
- };
17
- onSelectImage: () => Promise<string | null>;
18
- onSaveImage: (imageUrl: string) => Promise<void>;
19
- onBeforeProcess?: () => Promise<boolean>;
20
- }
21
-
22
- export const HDTouchUpFeature: React.FC<HDTouchUpFeatureProps> = ({
23
- config,
24
- translations,
25
- onSelectImage,
26
- onSaveImage,
27
- onBeforeProcess,
28
- }) => {
29
- const feature = useHDTouchUpFeature({
30
- config,
31
- onSelectImage,
32
- onSaveImage,
33
- onBeforeProcess,
34
- });
35
-
36
- const modalTranslations = useMemo(
37
- () => ({
38
- title: translations.modalTitle || "Processing",
39
- message: translations.modalMessage || "AI is enhancing your photo...",
40
- hint: translations.modalHint || "This may take a moment",
41
- backgroundHint: translations.modalBackgroundHint || "Continue in background",
42
- }),
43
- [translations],
44
- );
45
-
46
- return (
47
- <SingleImageFeatureLayout
48
- feature={feature}
49
- translations={translations}
50
- modalTranslations={modalTranslations}
51
- renderInput={({ imageUri, onSelect, isDisabled, isProcessing }: SingleImageInputRenderProps) => (
52
- <PhotoUploadCard
53
- imageUri={imageUri}
54
- onPress={onSelect}
55
- isValidating={isProcessing}
56
- disabled={isDisabled}
57
- translations={{
58
- tapToUpload: translations.uploadTitle,
59
- selectPhoto: translations.uploadSubtitle,
60
- change: translations.uploadChange,
61
- analyzing: translations.uploadAnalyzing,
62
- }}
63
- config={{
64
- aspectRatio: 1,
65
- borderRadius: 24,
66
- showValidationStatus: false,
67
- allowChange: true,
68
- }}
69
- />
70
- )}
71
- renderResult={({ imageUrl, imageSize }: ResultRenderProps) => (
72
- <Image
73
- source={{ uri: imageUrl }}
74
- style={[styles.resultImage, { width: imageSize, height: imageSize }]}
75
- resizeMode="contain"
76
- />
77
- )}
78
- />
79
- );
80
- };
81
-
82
- const styles = StyleSheet.create({
83
- resultImage: {
84
- borderRadius: 16,
85
- },
86
- });
@@ -1,2 +0,0 @@
1
- export { HDTouchUpFeature } from "./HDTouchUpFeature";
2
- export type { HDTouchUpFeatureProps } from "./HDTouchUpFeature";
@@ -1 +0,0 @@
1
- export { useHDTouchUpFeature, type UseHDTouchUpFeatureProps } from "./useHDTouchUpFeature";
@@ -1,23 +0,0 @@
1
- /**
2
- * useHDTouchUpFeature Hook
3
- * Uses base single image hook for HD touch up
4
- */
5
-
6
- import { useSingleImageFeature, type BaseSingleImageHookReturn } from "../../../image-to-image";
7
- import type { HDTouchUpFeatureConfig } from "../../domain/types";
8
-
9
- export interface UseHDTouchUpFeatureProps {
10
- config: HDTouchUpFeatureConfig;
11
- onSelectImage: () => Promise<string | null>;
12
- onSaveImage: (imageUrl: string) => Promise<void>;
13
- onBeforeProcess?: () => Promise<boolean>;
14
- }
15
-
16
- export function useHDTouchUpFeature(props: UseHDTouchUpFeatureProps): BaseSingleImageHookReturn {
17
- const { config, onSelectImage, onSaveImage, onBeforeProcess } = props;
18
-
19
- return useSingleImageFeature<HDTouchUpFeatureConfig>(
20
- { config: config as never, onSelectImage, onSaveImage, onBeforeProcess },
21
- { buildInput: (imageBase64) => ({ imageBase64 }) },
22
- );
23
- }
@@ -1,2 +0,0 @@
1
- export * from "./hooks";
2
- export * from "./components";