@umituz/react-native-ai-generation-content 1.25.17 → 1.25.19

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@umituz/react-native-ai-generation-content",
3
- "version": "1.25.17",
3
+ "version": "1.25.19",
4
4
  "description": "Provider-agnostic AI generation orchestration for React Native with result preview components",
5
5
  "main": "src/index.ts",
6
6
  "types": "src/index.ts",
@@ -14,6 +14,8 @@ import { executeVideoFeature } from "../../../../infrastructure/services/video-f
14
14
  import { createCreationsRepository } from "../../../../domains/creations/infrastructure/adapters";
15
15
  import type { VideoFeatureType } from "../../../../domain/interfaces";
16
16
  import type { AlertMessages } from "../../../../presentation/hooks/generation/orchestrator.types";
17
+ import { enhanceCouplePrompt } from "../../../../features/couple-future/infrastructure/couplePromptEnhancer";
18
+ import type { CoupleFeatureSelection } from "../../../../features/couple-future/domain/types";
17
19
 
18
20
  declare const __DEV__: boolean;
19
21
 
@@ -192,11 +194,37 @@ async function buildGenerationInput(
192
194
  return null;
193
195
  }
194
196
 
195
- const prompt = scenario.aiPrompt || `Generate ${scenario.id} scene`;
197
+ let prompt = scenario.aiPrompt || `Generate ${scenario.id} scene`;
196
198
  const outputType = scenario.outputType || "video"; // Default to video for backward compatibility
197
199
 
198
- // Build input based on output type
200
+ // For image generation, enhance prompt with style selections
199
201
  if (outputType === "image") {
202
+ // Extract style selections from wizard data
203
+ const selections: CoupleFeatureSelection = {};
204
+
205
+ // Romantic mood (multi-select array)
206
+ const romanticMoods = wizardData.selection_romantic_mood as string[] | undefined;
207
+ if (romanticMoods && romanticMoods.length > 0) {
208
+ selections.romanticMoods = romanticMoods;
209
+ }
210
+
211
+ // Art style (single select)
212
+ const artStyle = wizardData.selection_art_style as string | undefined;
213
+ if (artStyle && artStyle !== "original") {
214
+ selections.artStyle = artStyle;
215
+ }
216
+
217
+ // Artist style (single select)
218
+ const artist = wizardData.selection_artist_style as string | undefined;
219
+ if (artist && artist !== "original") {
220
+ selections.artist = artist;
221
+ }
222
+
223
+ // Enhance prompt with selected styles (only if not "original")
224
+ if (Object.keys(selections).length > 0) {
225
+ prompt = enhanceCouplePrompt(prompt, selections);
226
+ }
227
+
200
228
  return {
201
229
  partnerABase64: photo1Base64,
202
230
  partnerBBase64: photo2Base64,
@@ -283,12 +311,15 @@ export const useWizardGeneration = (
283
311
  const videoResult = result as { videoUrl?: string };
284
312
  const imageResult = result as { imageUrl?: string };
285
313
 
314
+ // Both input types have prompt field
315
+ const prompt = 'prompt' in input ? input.prompt : '';
316
+
286
317
  const creation = {
287
318
  videoUrl: videoResult.videoUrl,
288
319
  imageUrl: imageResult.imageUrl,
289
320
  scenarioId: scenario.id,
290
321
  scenarioTitle: scenario.title || scenario.id,
291
- prompt: (input as VideoGenerationInput).prompt,
322
+ prompt,
292
323
  createdAt: Date.now(),
293
324
  };
294
325