@umituz/react-native-ai-generation-content 1.89.0 → 1.89.2

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.89.0",
3
+ "version": "1.89.2",
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",
@@ -34,7 +34,7 @@ export abstract class BaseModerator {
34
34
 
35
35
  protected getSuggestion(type: ViolationType): string {
36
36
  if (this.customSuggestions?.[type]) {
37
- return this.customSuggestions[type];
37
+ return this.customSuggestions[type]!;
38
38
  }
39
39
  return DEFAULT_SUGGESTIONS[type] || DEFAULT_SUGGESTIONS.default;
40
40
  }
@@ -18,17 +18,17 @@ export async function createCreation(
18
18
  type: creation.type,
19
19
  uri: creation.uri,
20
20
  createdAt: creation.createdAt,
21
- deletedAt: null,
21
+ deletedAt: undefined,
22
22
  metadata: creation.metadata ?? {},
23
23
  isShared: creation.isShared ?? false,
24
24
  isFavorite: creation.isFavorite ?? false,
25
- status: creation.status ?? null,
26
- output: creation.output ?? null,
27
- prompt: creation.prompt ?? null,
28
- provider: creation.provider ?? null,
29
- requestId: creation.requestId ?? null,
30
- model: creation.model ?? null,
31
- startedAt: creation.startedAt ?? null,
25
+ status: creation.status ?? undefined,
26
+ output: creation.output ?? undefined,
27
+ prompt: creation.prompt ?? undefined,
28
+ provider: creation.provider ?? undefined,
29
+ requestId: creation.requestId ?? undefined,
30
+ model: creation.model ?? undefined,
31
+ startedAt: creation.startedAt ?? undefined,
32
32
  };
33
33
 
34
34
  try {
@@ -37,7 +37,7 @@ export async function updateCreation(
37
37
  }
38
38
 
39
39
  try {
40
- await updateDoc(docRef, updateData);
40
+ await updateDoc(docRef, updateData as Record<string, unknown>);
41
41
  if (__DEV__) {
42
42
  console.log("[updateCreation] Updated", {
43
43
  id,
@@ -69,7 +69,7 @@ export async function rateCreation(
69
69
  updates.ratingText = description;
70
70
  }
71
71
 
72
- await updateDoc(docRef, updates);
72
+ await updateDoc(docRef, updates as Record<string, unknown>);
73
73
  return true;
74
74
  } catch {
75
75
  return false;
@@ -1,10 +1,10 @@
1
1
  /**
2
2
  * Solo Video Wizard Config
3
- * Flow: Photo → Prompt (with info about two-step generation) → Audio (optional) → Generation
3
+ * Flow: Photo → Video Settings (resolution, aspect_ratio, quality_mode, duration) → Generation
4
4
  *
5
5
  * Two-step generation:
6
- * 1. Generate image from photo + prompt (nano-banana-2/edit)
7
- * 2. Generate video from that image (I2V model)
6
+ * 1. Generate image from photo + prompt (p-image-edit)
7
+ * 2. Generate video from that image (p-video)
8
8
  */
9
9
 
10
10
  import type { WizardFeatureConfig } from "../domain/entities/wizard-feature.types";
@@ -22,25 +22,6 @@ export const SOLO_VIDEO_WIZARD_CONFIG: WizardFeatureConfig = {
22
22
  showPhotoTips: true,
23
23
  required: true,
24
24
  },
25
- {
26
- id: "video_prompt",
27
- type: "text_input",
28
- titleKey: "soloVideo.prompt",
29
- subtitleKey: "soloVideo.promptInfo",
30
- placeholderKey: "soloVideo.promptPlaceholder",
31
- required: true,
32
- minLength: 3,
33
- maxLength: 500,
34
- multiline: true,
35
- },
36
- {
37
- id: "background_audio",
38
- type: "audio_picker",
39
- titleKey: "soloVideo.audioTitle",
40
- subtitleKey: "soloVideo.audioSubtitle",
41
- required: false,
42
- maxFileSizeMB: 20,
43
- },
44
25
  {
45
26
  id: "quality_mode",
46
27
  type: "selection",
@@ -96,7 +96,8 @@ export const pollQueueStatus = async (params: PollParams): Promise<void> => {
96
96
  } else {
97
97
  // Try to extract error from FAL job logs (error-level log takes priority)
98
98
  const logs = status.logs ?? [];
99
- const errorLog = logs.findLast?.((l) => l.level === "error") ?? logs[logs.length - 1];
99
+ const errorLogs = logs.filter((l: any) => l.level === "error");
100
+ const errorLog = errorLogs.length > 0 ? errorLogs[errorLogs.length - 1] : logs[logs.length - 1];
100
101
  const failMessage =
101
102
  errorLog?.message && errorLog.message !== "[object Object]"
102
103
  ? errorLog.message