@umituz/react-native-ai-generation-content 1.17.46 → 1.17.47
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 +1 -1
- package/src/features/text-to-image/presentation/components/index.ts +2 -2
- package/src/features/text-to-voice/presentation/components/index.ts +1 -1
- package/src/features/text-to-image/presentation/components/ExamplePrompts.tsx +0 -88
- package/src/features/text-to-voice/presentation/components/TextToVoiceExamplePrompts.tsx +0 -77
package/package.json
CHANGED
|
@@ -7,8 +7,8 @@
|
|
|
7
7
|
export { TextToImagePromptInput } from "./TextToImagePromptInput";
|
|
8
8
|
export type { TextToImagePromptInputProps } from "./TextToImagePromptInput";
|
|
9
9
|
|
|
10
|
-
export { ExamplePrompts as TextToImageExamplePrompts } from "
|
|
11
|
-
export type { ExamplePromptsProps as TextToImageExamplePromptsProps } from "
|
|
10
|
+
export { ExamplePrompts as TextToImageExamplePrompts } from "../../../presentation/components/prompts/ExamplePrompts";
|
|
11
|
+
export type { ExamplePromptsProps as TextToImageExamplePromptsProps } from "../../../presentation/components/prompts/ExamplePrompts";
|
|
12
12
|
|
|
13
13
|
// Selector Components
|
|
14
14
|
export { NumImagesSelector as TextToImageNumImagesSelector } from "./NumImagesSelector";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { TextToVoiceTextInput } from "./TextToVoiceTextInput";
|
|
2
2
|
export { TextToVoiceOptionalInput } from "./TextToVoiceOptionalInput";
|
|
3
|
-
export { TextToVoiceExamplePrompts } from "
|
|
3
|
+
export { ExamplePrompts as TextToVoiceExamplePrompts } from "../../../presentation/components/prompts/ExamplePrompts";
|
|
4
4
|
export { TextToVoiceGenerateButton } from "./TextToVoiceGenerateButton";
|
|
5
5
|
export { TextToVoiceAudioPlayer } from "./TextToVoiceAudioPlayer";
|
|
6
6
|
export { TextToVoiceErrorMessage } from "./TextToVoiceErrorMessage";
|
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Example Prompts Component
|
|
3
|
-
* Horizontal scrollable list of example prompts
|
|
4
|
-
*/
|
|
5
|
-
|
|
6
|
-
import React from "react";
|
|
7
|
-
import { View, ScrollView, TouchableOpacity, StyleSheet } from "react-native";
|
|
8
|
-
import {
|
|
9
|
-
AtomicText,
|
|
10
|
-
useAppDesignTokens,
|
|
11
|
-
} from "@umituz/react-native-design-system";
|
|
12
|
-
|
|
13
|
-
export interface ExamplePromptsProps {
|
|
14
|
-
prompts: string[];
|
|
15
|
-
onSelectPrompt: (prompt: string) => void;
|
|
16
|
-
label: string;
|
|
17
|
-
cardWidth?: number;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
export const ExamplePrompts: React.FC<ExamplePromptsProps> = ({
|
|
21
|
-
prompts,
|
|
22
|
-
onSelectPrompt,
|
|
23
|
-
label,
|
|
24
|
-
cardWidth = 180,
|
|
25
|
-
}) => {
|
|
26
|
-
const tokens = useAppDesignTokens();
|
|
27
|
-
|
|
28
|
-
if (prompts.length === 0) {
|
|
29
|
-
return null;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
return (
|
|
33
|
-
<View style={styles.container}>
|
|
34
|
-
<AtomicText
|
|
35
|
-
type="bodyMedium"
|
|
36
|
-
style={[styles.label, { color: tokens.colors.textPrimary }]}
|
|
37
|
-
>
|
|
38
|
-
{label}
|
|
39
|
-
</AtomicText>
|
|
40
|
-
<ScrollView
|
|
41
|
-
horizontal
|
|
42
|
-
showsHorizontalScrollIndicator={false}
|
|
43
|
-
contentContainerStyle={styles.scrollContent}
|
|
44
|
-
>
|
|
45
|
-
{prompts.map((prompt, index) => (
|
|
46
|
-
<TouchableOpacity
|
|
47
|
-
key={`prompt-${index}`}
|
|
48
|
-
style={[
|
|
49
|
-
styles.card,
|
|
50
|
-
{
|
|
51
|
-
backgroundColor: tokens.colors.surface,
|
|
52
|
-
width: cardWidth,
|
|
53
|
-
},
|
|
54
|
-
]}
|
|
55
|
-
onPress={() => onSelectPrompt(prompt)}
|
|
56
|
-
activeOpacity={0.7}
|
|
57
|
-
>
|
|
58
|
-
<AtomicText
|
|
59
|
-
type="bodySmall"
|
|
60
|
-
style={{ color: tokens.colors.textPrimary }}
|
|
61
|
-
numberOfLines={2}
|
|
62
|
-
>
|
|
63
|
-
{prompt}
|
|
64
|
-
</AtomicText>
|
|
65
|
-
</TouchableOpacity>
|
|
66
|
-
))}
|
|
67
|
-
</ScrollView>
|
|
68
|
-
</View>
|
|
69
|
-
);
|
|
70
|
-
};
|
|
71
|
-
|
|
72
|
-
const styles = StyleSheet.create({
|
|
73
|
-
container: {
|
|
74
|
-
marginBottom: 24,
|
|
75
|
-
},
|
|
76
|
-
label: {
|
|
77
|
-
fontWeight: "600",
|
|
78
|
-
marginBottom: 12,
|
|
79
|
-
},
|
|
80
|
-
scrollContent: {
|
|
81
|
-
paddingRight: 16,
|
|
82
|
-
},
|
|
83
|
-
card: {
|
|
84
|
-
padding: 12,
|
|
85
|
-
borderRadius: 8,
|
|
86
|
-
marginRight: 12,
|
|
87
|
-
},
|
|
88
|
-
});
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* TextToVoiceExamplePrompts Component
|
|
3
|
-
* Horizontal scrolling example prompts
|
|
4
|
-
*/
|
|
5
|
-
|
|
6
|
-
import React from "react";
|
|
7
|
-
import { View, ScrollView, TouchableOpacity, StyleSheet } from "react-native";
|
|
8
|
-
import { useLocalization } from "@umituz/react-native-localization";
|
|
9
|
-
import {
|
|
10
|
-
AtomicText,
|
|
11
|
-
useAppDesignTokens,
|
|
12
|
-
} from "@umituz/react-native-design-system";
|
|
13
|
-
import type { TextToVoiceExamplePromptsProps } from "../../domain/types";
|
|
14
|
-
|
|
15
|
-
export const TextToVoiceExamplePrompts: React.FC<
|
|
16
|
-
TextToVoiceExamplePromptsProps
|
|
17
|
-
> = ({ prompts, onSelectPrompt, labelKey, style }) => {
|
|
18
|
-
const { t } = useLocalization();
|
|
19
|
-
const tokens = useAppDesignTokens();
|
|
20
|
-
|
|
21
|
-
if (prompts.length === 0) {
|
|
22
|
-
return null;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
return (
|
|
26
|
-
<View style={[styles.section, style]}>
|
|
27
|
-
<AtomicText
|
|
28
|
-
type="bodyMedium"
|
|
29
|
-
style={[styles.label, { color: tokens.colors.textPrimary }]}
|
|
30
|
-
>
|
|
31
|
-
{t(labelKey)}
|
|
32
|
-
</AtomicText>
|
|
33
|
-
<ScrollView
|
|
34
|
-
horizontal
|
|
35
|
-
showsHorizontalScrollIndicator={false}
|
|
36
|
-
style={styles.scrollView}
|
|
37
|
-
>
|
|
38
|
-
{prompts.map((prompt, index) => (
|
|
39
|
-
<TouchableOpacity
|
|
40
|
-
key={index}
|
|
41
|
-
style={[styles.promptCard, { backgroundColor: tokens.colors.surface }]}
|
|
42
|
-
onPress={() => onSelectPrompt(prompt)}
|
|
43
|
-
>
|
|
44
|
-
<AtomicText
|
|
45
|
-
type="bodySmall"
|
|
46
|
-
style={{ color: tokens.colors.textPrimary }}
|
|
47
|
-
numberOfLines={2}
|
|
48
|
-
>
|
|
49
|
-
{prompt}
|
|
50
|
-
</AtomicText>
|
|
51
|
-
</TouchableOpacity>
|
|
52
|
-
))}
|
|
53
|
-
</ScrollView>
|
|
54
|
-
</View>
|
|
55
|
-
);
|
|
56
|
-
};
|
|
57
|
-
|
|
58
|
-
const styles = StyleSheet.create({
|
|
59
|
-
section: {
|
|
60
|
-
marginBottom: 24,
|
|
61
|
-
},
|
|
62
|
-
label: {
|
|
63
|
-
fontWeight: "600",
|
|
64
|
-
marginBottom: 12,
|
|
65
|
-
},
|
|
66
|
-
scrollView: {
|
|
67
|
-
marginHorizontal: -16,
|
|
68
|
-
paddingHorizontal: 16,
|
|
69
|
-
},
|
|
70
|
-
promptCard: {
|
|
71
|
-
padding: 12,
|
|
72
|
-
borderRadius: 8,
|
|
73
|
-
marginRight: 12,
|
|
74
|
-
minWidth: 150,
|
|
75
|
-
maxWidth: 200,
|
|
76
|
-
},
|
|
77
|
-
});
|