@umituz/react-native-ai-generation-content 1.26.61 → 1.26.62

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.26.61",
3
+ "version": "1.26.62",
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",
@@ -200,16 +200,14 @@ export function CreationsGalleryScreen({
200
200
  onRate={handleOpenRatingPicker}
201
201
  hideLabel
202
202
  iconOnly
203
- showTryAgain={false}
203
+ showTryAgain
204
204
  showRating={!hasRating}
205
205
  translations={{
206
206
  title: t(config.translations.title),
207
- yourResult: "",
208
207
  saveButton: t("result.saveButton"),
209
208
  saving: t("result.saving"),
210
209
  shareButton: t("result.shareButton"),
211
210
  sharing: t("result.sharing"),
212
- tryAnother: "",
213
211
  }}
214
212
  />
215
213
  <StarRatingPicker
@@ -79,14 +79,15 @@ export const WizardStepRenderer: React.FC<WizardStepRendererProps> = ({
79
79
  onShare={onShare}
80
80
  onTryAgain={handleTryAgain}
81
81
  onNavigateBack={handleTryAgain}
82
+ hideLabel
83
+ iconOnly
84
+ showTryAgain
82
85
  translations={{
83
86
  title: t("generation.result.title"),
84
- yourResult: t("generation.result.yourResult"),
85
87
  saveButton: t("generation.result.save"),
86
88
  saving: t("generation.result.saving"),
87
89
  shareButton: t("generation.result.share"),
88
90
  sharing: t("generation.result.sharing"),
89
- tryAnother: t("generation.result.tryAnother"),
90
91
  }}
91
92
  />
92
93
  );
@@ -9,6 +9,7 @@ import {
9
9
  AtomicIcon,
10
10
  AtomicText,
11
11
  useAppDesignTokens,
12
+ useResponsive,
12
13
  } from "@umituz/react-native-design-system";
13
14
  import type { ResultActionBarProps } from "../types/result-preview.types";
14
15
 
@@ -27,6 +28,7 @@ export const ResultActionBar: React.FC<ResultActionBarProps> = ({
27
28
  showRating = false,
28
29
  }) => {
29
30
  const tokens = useAppDesignTokens();
31
+ const { minTouchTarget } = useResponsive();
30
32
 
31
33
  const styles = useMemo(
32
34
  () =>
@@ -43,17 +45,17 @@ export const ResultActionBar: React.FC<ResultActionBarProps> = ({
43
45
  flexDirection: "row",
44
46
  alignItems: "center",
45
47
  justifyContent: "center",
46
- paddingVertical: 12,
47
- paddingHorizontal: 20,
48
- borderRadius: 16,
49
- gap: 8,
48
+ paddingVertical: tokens.spacing.sm,
49
+ paddingHorizontal: tokens.spacing.lg,
50
+ borderRadius: tokens.radius.md,
51
+ gap: tokens.spacing.xs,
50
52
  minWidth: 110,
51
53
  backgroundColor: tokens.colors.primary,
52
54
  },
53
55
  iconButton: {
54
- width: 56,
55
- height: 56,
56
- borderRadius: 28,
56
+ width: minTouchTarget,
57
+ height: minTouchTarget,
58
+ borderRadius: minTouchTarget / 2,
57
59
  backgroundColor: tokens.colors.primary,
58
60
  justifyContent: "center",
59
61
  alignItems: "center",
@@ -67,7 +69,7 @@ export const ResultActionBar: React.FC<ResultActionBarProps> = ({
67
69
  opacity: 0.6,
68
70
  },
69
71
  }),
70
- [tokens],
72
+ [tokens, minTouchTarget],
71
73
  );
72
74
 
73
75
  if (iconOnly) {
@@ -82,7 +84,7 @@ export const ResultActionBar: React.FC<ResultActionBarProps> = ({
82
84
  {isSaving ? (
83
85
  <ActivityIndicator color={tokens.colors.textInverse} size="small" />
84
86
  ) : (
85
- <AtomicIcon name="download-outline" customSize={24} color="onPrimary" />
87
+ <AtomicIcon name="download-outline" customSize={20} color="onPrimary" />
86
88
  )}
87
89
  </TouchableOpacity>
88
90
  <TouchableOpacity
@@ -94,7 +96,7 @@ export const ResultActionBar: React.FC<ResultActionBarProps> = ({
94
96
  {isSharing ? (
95
97
  <ActivityIndicator color={tokens.colors.textInverse} size="small" />
96
98
  ) : (
97
- <AtomicIcon name="share-social-outline" customSize={24} color="onPrimary" />
99
+ <AtomicIcon name="share-social-outline" customSize={20} color="onPrimary" />
98
100
  )}
99
101
  </TouchableOpacity>
100
102
  {showTryAgain && onTryAgain && (
@@ -103,7 +105,7 @@ export const ResultActionBar: React.FC<ResultActionBarProps> = ({
103
105
  onPress={onTryAgain}
104
106
  activeOpacity={0.7}
105
107
  >
106
- <AtomicIcon name="refresh-outline" customSize={24} color="onPrimary" />
108
+ <AtomicIcon name="refresh-outline" customSize={20} color="onPrimary" />
107
109
  </TouchableOpacity>
108
110
  )}
109
111
  {showRating && onRate && (
@@ -112,7 +114,7 @@ export const ResultActionBar: React.FC<ResultActionBarProps> = ({
112
114
  onPress={onRate}
113
115
  activeOpacity={0.7}
114
116
  >
115
- <AtomicIcon name="star-outline" customSize={24} color="onPrimary" />
117
+ <AtomicIcon name="star-outline" customSize={20} color="onPrimary" />
116
118
  </TouchableOpacity>
117
119
  )}
118
120
  </View>
@@ -133,8 +133,8 @@ export interface ResultPreviewScreenProps {
133
133
  export interface ResultPreviewTranslations {
134
134
  /** Screen title */
135
135
  title: string;
136
- /** Result label */
137
- yourResult: string;
136
+ /** Result label (optional when hideLabel is true) */
137
+ yourResult?: string;
138
138
  /** Save button */
139
139
  saveButton: string;
140
140
  /** Saving button */
@@ -143,8 +143,8 @@ export interface ResultPreviewTranslations {
143
143
  shareButton: string;
144
144
  /** Sharing button */
145
145
  sharing: string;
146
- /** Try again button */
147
- tryAnother: string;
146
+ /** Try again button text (optional when iconOnly is true) */
147
+ tryAnother?: string;
148
148
  /** Rate button */
149
149
  rateButton?: string;
150
150
  /** Recent creations section title */