@technotoil/image-video-editor 0.1.0
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/ImageVideoEditor.podspec +21 -0
- package/README.md +136 -0
- package/android/build.gradle +76 -0
- package/android/gradle.properties +5 -0
- package/android/src/main/AndroidManifest.xml +13 -0
- package/android/src/main/java/com/technotoil/image_videoeditor/FrameGrabberModule.kt +67 -0
- package/android/src/main/java/com/technotoil/image_videoeditor/MediaEditorModule.kt +548 -0
- package/android/src/main/java/com/technotoil/image_videoeditor/MediaFileUtils.kt +29 -0
- package/android/src/main/java/com/technotoil/image_videoeditor/MediaLibraryModule.kt +305 -0
- package/android/src/main/java/com/technotoil/image_videoeditor/MediaPackage.kt +26 -0
- package/android/src/main/java/com/technotoil/image_videoeditor/MediaPickerModule.kt +111 -0
- package/android/src/main/java/com/technotoil/image_videoeditor/MediaPlayerModule.kt +34 -0
- package/android/src/main/java/com/technotoil/image_videoeditor/RNCameraViewManager.kt +761 -0
- package/android/src/main/java/com/technotoil/image_videoeditor/RNVideoPreviewManager.kt +317 -0
- package/ios/PrivacyInfo.xcprivacy +38 -0
- package/ios/RNCameraViewManager.m +420 -0
- package/ios/RNFrameGrabber.m +61 -0
- package/ios/RNMediaEditor.m +905 -0
- package/ios/RNMediaLibrary.m +389 -0
- package/ios/RNMediaPicker.m +144 -0
- package/ios/RNMediaPlayer.m +73 -0
- package/ios/RNVideoPreviewManager.m +263 -0
- package/ios/frames/film_vintage.png +0 -0
- package/ios/frames/floral_gold.png +0 -0
- package/ios/frames/minimal_double.png +0 -0
- package/ios/frames/polaroid_white.png +0 -0
- package/ios/frames/watercolor_floral.png +0 -0
- package/lib/module/assets/frames/film_vintage.png +0 -0
- package/lib/module/assets/frames/floral_gold.png +0 -0
- package/lib/module/assets/frames/minimal_double.png +0 -0
- package/lib/module/assets/frames/polaroid_white.png +0 -0
- package/lib/module/assets/frames/watercolor_floral.png +0 -0
- package/lib/module/components/VideoEditor.js +156 -0
- package/lib/module/components/VideoEditor.js.map +1 -0
- package/lib/module/index.js +4 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/native/CameraView.js +104 -0
- package/lib/module/native/CameraView.js.map +1 -0
- package/lib/module/native/FrameGrabber.js +13 -0
- package/lib/module/native/FrameGrabber.js.map +1 -0
- package/lib/module/native/MediaEditor.js +19 -0
- package/lib/module/native/MediaEditor.js.map +1 -0
- package/lib/module/native/MediaLibrary.js +37 -0
- package/lib/module/native/MediaLibrary.js.map +1 -0
- package/lib/module/native/MediaPicker.js +13 -0
- package/lib/module/native/MediaPicker.js.map +1 -0
- package/lib/module/native/MediaPlayer.js +13 -0
- package/lib/module/native/MediaPlayer.js.map +1 -0
- package/lib/module/native/VideoPreview.js +12 -0
- package/lib/module/native/VideoPreview.js.map +1 -0
- package/lib/module/package.json +1 -0
- package/lib/module/screens/CropScreen.js +1211 -0
- package/lib/module/screens/CropScreen.js.map +1 -0
- package/lib/module/screens/EditorScreen.js +5752 -0
- package/lib/module/screens/EditorScreen.js.map +1 -0
- package/lib/module/screens/ExportScreen.js +289 -0
- package/lib/module/screens/ExportScreen.js.map +1 -0
- package/lib/module/screens/GalleryScreen.js +505 -0
- package/lib/module/screens/GalleryScreen.js.map +1 -0
- package/lib/module/screens/PickScreen.js +1195 -0
- package/lib/module/screens/PickScreen.js.map +1 -0
- package/lib/module/types.js +2 -0
- package/lib/module/types.js.map +1 -0
- package/lib/typescript/src/components/VideoEditor.d.ts +13 -0
- package/lib/typescript/src/index.d.ts +2 -0
- package/lib/typescript/src/native/CameraView.d.ts +23 -0
- package/lib/typescript/src/native/FrameGrabber.d.ts +2 -0
- package/lib/typescript/src/native/MediaEditor.d.ts +3 -0
- package/lib/typescript/src/native/MediaLibrary.d.ts +16 -0
- package/lib/typescript/src/native/MediaPicker.d.ts +2 -0
- package/lib/typescript/src/native/MediaPlayer.d.ts +1 -0
- package/lib/typescript/src/native/VideoPreview.d.ts +19 -0
- package/lib/typescript/src/screens/CropScreen.d.ts +9 -0
- package/lib/typescript/src/screens/EditorScreen.d.ts +10 -0
- package/lib/typescript/src/screens/ExportScreen.d.ts +9 -0
- package/lib/typescript/src/screens/GalleryScreen.d.ts +8 -0
- package/lib/typescript/src/screens/PickScreen.d.ts +13 -0
- package/lib/typescript/src/types.d.ts +58 -0
- package/package.json +101 -0
- package/src/assets/frames/film_vintage.png +0 -0
- package/src/assets/frames/floral_gold.png +0 -0
- package/src/assets/frames/minimal_double.png +0 -0
- package/src/assets/frames/polaroid_white.png +0 -0
- package/src/assets/frames/watercolor_floral.png +0 -0
- package/src/components/VideoEditor.tsx +182 -0
- package/src/index.tsx +2 -0
- package/src/native/CameraView.tsx +95 -0
- package/src/native/FrameGrabber.ts +21 -0
- package/src/native/MediaEditor.ts +33 -0
- package/src/native/MediaLibrary.ts +69 -0
- package/src/native/MediaPicker.ts +17 -0
- package/src/native/MediaPlayer.ts +16 -0
- package/src/native/VideoPreview.tsx +20 -0
- package/src/screens/CropScreen.tsx +968 -0
- package/src/screens/EditorScreen.tsx +4517 -0
- package/src/screens/ExportScreen.tsx +282 -0
- package/src/screens/GalleryScreen.tsx +412 -0
- package/src/screens/PickScreen.tsx +1094 -0
- package/src/types.ts +58 -0
|
@@ -0,0 +1,505 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import React, { useEffect, useMemo, useRef, useState } from 'react';
|
|
4
|
+
import { Animated, FlatList, Image, Pressable, StyleSheet, Text, View } from 'react-native';
|
|
5
|
+
import { exportAsset } from "../native/MediaLibrary.js";
|
|
6
|
+
import { VideoPreview } from "../native/VideoPreview.js";
|
|
7
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
8
|
+
export function GalleryScreen({
|
|
9
|
+
items,
|
|
10
|
+
onBack,
|
|
11
|
+
onSelect,
|
|
12
|
+
onNext
|
|
13
|
+
}) {
|
|
14
|
+
const [selectedMedia, setSelectedMedia] = useState(items[0] || null);
|
|
15
|
+
const [previewUri, setPreviewUri] = useState(null);
|
|
16
|
+
const [cropMode, setCropMode] = useState('1:1');
|
|
17
|
+
const [videoPaused, setVideoPaused] = useState(false);
|
|
18
|
+
const scaleAnim = useRef(new Animated.Value(1)).current;
|
|
19
|
+
|
|
20
|
+
// Sync selected media if items list changes
|
|
21
|
+
useEffect(() => {
|
|
22
|
+
if (items.length > 0) {
|
|
23
|
+
const found = selectedMedia ? items.find(i => i.id === selectedMedia.id) : null;
|
|
24
|
+
if (found) {
|
|
25
|
+
setSelectedMedia(found);
|
|
26
|
+
} else {
|
|
27
|
+
setSelectedMedia(items[0]);
|
|
28
|
+
}
|
|
29
|
+
} else {
|
|
30
|
+
setSelectedMedia(null);
|
|
31
|
+
}
|
|
32
|
+
}, [items]);
|
|
33
|
+
|
|
34
|
+
// Resolve ph:// asset URIs to cache paths
|
|
35
|
+
useEffect(() => {
|
|
36
|
+
let cancelled = false;
|
|
37
|
+
(async () => {
|
|
38
|
+
if (!selectedMedia) {
|
|
39
|
+
setPreviewUri(null);
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
if (!selectedMedia.uri.startsWith('ph://') && !selectedMedia.uri.startsWith('content://')) {
|
|
43
|
+
setPreviewUri(selectedMedia.uri);
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
try {
|
|
47
|
+
const fileUri = await exportAsset(selectedMedia.id);
|
|
48
|
+
if (!cancelled) setPreviewUri(fileUri);
|
|
49
|
+
} catch {
|
|
50
|
+
if (!cancelled) setPreviewUri(null);
|
|
51
|
+
}
|
|
52
|
+
})();
|
|
53
|
+
return () => {
|
|
54
|
+
cancelled = true;
|
|
55
|
+
};
|
|
56
|
+
}, [selectedMedia]);
|
|
57
|
+
const playableUri = useMemo(() => {
|
|
58
|
+
if (!selectedMedia) return null;
|
|
59
|
+
if (previewUri && !previewUri.startsWith('ph://') && !previewUri.startsWith('content://')) return previewUri;
|
|
60
|
+
if (selectedMedia.uri && !selectedMedia.uri.startsWith('ph://') && !selectedMedia.uri.startsWith('content://')) return selectedMedia.uri;
|
|
61
|
+
return null;
|
|
62
|
+
}, [previewUri, selectedMedia]);
|
|
63
|
+
const handleSelectItem = item => {
|
|
64
|
+
if (selectedMedia?.id === item.id) {
|
|
65
|
+
// Tap again on active item to edit it directly
|
|
66
|
+
onSelect(item);
|
|
67
|
+
} else {
|
|
68
|
+
setSelectedMedia(item);
|
|
69
|
+
setVideoPaused(false);
|
|
70
|
+
Animated.sequence([Animated.timing(scaleAnim, {
|
|
71
|
+
toValue: 0.97,
|
|
72
|
+
duration: 80,
|
|
73
|
+
useNativeDriver: true
|
|
74
|
+
}), Animated.timing(scaleAnim, {
|
|
75
|
+
toValue: 1,
|
|
76
|
+
duration: 80,
|
|
77
|
+
useNativeDriver: true
|
|
78
|
+
})]).start();
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
const getSelectionIndex = id => {
|
|
82
|
+
const idx = items.findIndex(i => i.id === id);
|
|
83
|
+
return idx === -1 ? null : idx + 1;
|
|
84
|
+
};
|
|
85
|
+
const renderThumb = ({
|
|
86
|
+
item
|
|
87
|
+
}) => {
|
|
88
|
+
const thumbUri = item.thumbnailUri ?? item.uri;
|
|
89
|
+
const isActive = selectedMedia?.id === item.id;
|
|
90
|
+
const itemIndex = getSelectionIndex(item.id);
|
|
91
|
+
return /*#__PURE__*/_jsxs(Pressable, {
|
|
92
|
+
style: styles.thumbContainer,
|
|
93
|
+
onPress: () => handleSelectItem(item),
|
|
94
|
+
children: [thumbUri && !thumbUri.startsWith('ph://') ? /*#__PURE__*/_jsx(Image, {
|
|
95
|
+
source: {
|
|
96
|
+
uri: thumbUri
|
|
97
|
+
},
|
|
98
|
+
style: styles.thumb
|
|
99
|
+
}) : /*#__PURE__*/_jsx(View, {
|
|
100
|
+
style: [styles.thumb, styles.thumbFallback]
|
|
101
|
+
}), isActive && /*#__PURE__*/_jsx(View, {
|
|
102
|
+
style: styles.activeOverlay
|
|
103
|
+
}), itemIndex !== null && /*#__PURE__*/_jsx(View, {
|
|
104
|
+
style: styles.multiOverlay,
|
|
105
|
+
children: /*#__PURE__*/_jsx(View, {
|
|
106
|
+
style: [styles.selectionBadge, isActive && styles.selectionBadgeActive],
|
|
107
|
+
children: /*#__PURE__*/_jsx(Text, {
|
|
108
|
+
style: styles.selectionNumber,
|
|
109
|
+
children: itemIndex
|
|
110
|
+
})
|
|
111
|
+
})
|
|
112
|
+
}), item.type === 'video' && /*#__PURE__*/_jsxs(_Fragment, {
|
|
113
|
+
children: [/*#__PURE__*/_jsx(View, {
|
|
114
|
+
style: styles.videoPlayBadge,
|
|
115
|
+
children: /*#__PURE__*/_jsx(Text, {
|
|
116
|
+
style: styles.videoPlayIcon,
|
|
117
|
+
children: "\u25B6"
|
|
118
|
+
})
|
|
119
|
+
}), /*#__PURE__*/_jsx(View, {
|
|
120
|
+
style: styles.videoBadge,
|
|
121
|
+
children: /*#__PURE__*/_jsx(Text, {
|
|
122
|
+
style: styles.videoDuration,
|
|
123
|
+
children: item.durationMs ? `${(item.durationMs / 1000).toFixed(0)}s` : 'video'
|
|
124
|
+
})
|
|
125
|
+
})]
|
|
126
|
+
}), /*#__PURE__*/_jsx(View, {
|
|
127
|
+
style: styles.editLabelContainer,
|
|
128
|
+
children: /*#__PURE__*/_jsx(Text, {
|
|
129
|
+
style: styles.editLabelText,
|
|
130
|
+
children: "EDIT"
|
|
131
|
+
})
|
|
132
|
+
})]
|
|
133
|
+
});
|
|
134
|
+
};
|
|
135
|
+
return /*#__PURE__*/_jsxs(View, {
|
|
136
|
+
style: styles.container,
|
|
137
|
+
children: [/*#__PURE__*/_jsxs(View, {
|
|
138
|
+
style: styles.header,
|
|
139
|
+
children: [/*#__PURE__*/_jsx(Pressable, {
|
|
140
|
+
onPress: onBack,
|
|
141
|
+
style: styles.backButton,
|
|
142
|
+
children: /*#__PURE__*/_jsx(Text, {
|
|
143
|
+
style: styles.headerCancel,
|
|
144
|
+
children: "\u2715"
|
|
145
|
+
})
|
|
146
|
+
}), /*#__PURE__*/_jsx(Text, {
|
|
147
|
+
style: styles.headerTitle,
|
|
148
|
+
children: "All Selected"
|
|
149
|
+
}), /*#__PURE__*/_jsx(Pressable, {
|
|
150
|
+
style: styles.nextBtn,
|
|
151
|
+
onPress: onNext,
|
|
152
|
+
children: /*#__PURE__*/_jsx(Text, {
|
|
153
|
+
style: styles.nextText,
|
|
154
|
+
children: "Next"
|
|
155
|
+
})
|
|
156
|
+
})]
|
|
157
|
+
}), /*#__PURE__*/_jsxs(Animated.View, {
|
|
158
|
+
style: [styles.preview, {
|
|
159
|
+
transform: [{
|
|
160
|
+
scale: scaleAnim
|
|
161
|
+
}]
|
|
162
|
+
}],
|
|
163
|
+
children: [selectedMedia ? selectedMedia.type === 'video' ? /*#__PURE__*/_jsxs(Pressable, {
|
|
164
|
+
style: styles.previewImage,
|
|
165
|
+
onPress: () => setVideoPaused(v => !v),
|
|
166
|
+
children: [playableUri ? /*#__PURE__*/_jsx(VideoPreview, {
|
|
167
|
+
uri: playableUri,
|
|
168
|
+
paused: videoPaused,
|
|
169
|
+
muted: false,
|
|
170
|
+
style: styles.previewImage
|
|
171
|
+
}) : /*#__PURE__*/_jsx(Image, {
|
|
172
|
+
source: {
|
|
173
|
+
uri: selectedMedia.thumbnailUri || selectedMedia.uri
|
|
174
|
+
},
|
|
175
|
+
style: styles.previewImage,
|
|
176
|
+
resizeMode: "cover"
|
|
177
|
+
}), /*#__PURE__*/_jsx(View, {
|
|
178
|
+
style: styles.previewOverlay,
|
|
179
|
+
children: /*#__PURE__*/_jsx(View, {
|
|
180
|
+
style: styles.playPauseCircle,
|
|
181
|
+
children: /*#__PURE__*/_jsx(Text, {
|
|
182
|
+
style: styles.playPauseText,
|
|
183
|
+
children: videoPaused ? '▶' : '❚❚'
|
|
184
|
+
})
|
|
185
|
+
})
|
|
186
|
+
})]
|
|
187
|
+
}) : /*#__PURE__*/_jsx(Pressable, {
|
|
188
|
+
style: styles.previewImage,
|
|
189
|
+
onPress: () => onSelect(selectedMedia),
|
|
190
|
+
children: /*#__PURE__*/_jsx(Image, {
|
|
191
|
+
source: {
|
|
192
|
+
uri: previewUri ?? selectedMedia.uri
|
|
193
|
+
},
|
|
194
|
+
style: [styles.previewImage, cropMode === '1:1' ? styles.squareCrop : styles.originalCrop],
|
|
195
|
+
resizeMode: cropMode === '1:1' ? 'cover' : 'contain'
|
|
196
|
+
})
|
|
197
|
+
}) : /*#__PURE__*/_jsx(View, {
|
|
198
|
+
style: styles.emptyPreview,
|
|
199
|
+
children: /*#__PURE__*/_jsx(Text, {
|
|
200
|
+
style: styles.emptyText,
|
|
201
|
+
children: "No Media Selected"
|
|
202
|
+
})
|
|
203
|
+
}), selectedMedia && /*#__PURE__*/_jsxs(_Fragment, {
|
|
204
|
+
children: [selectedMedia.type === 'image' && /*#__PURE__*/_jsx(View, {
|
|
205
|
+
style: styles.previewControls,
|
|
206
|
+
children: /*#__PURE__*/_jsx(Pressable, {
|
|
207
|
+
style: styles.cropToggle,
|
|
208
|
+
onPress: () => setCropMode(v => v === '1:1' ? 'original' : '1:1'),
|
|
209
|
+
children: /*#__PURE__*/_jsx(Text, {
|
|
210
|
+
style: styles.cropIcon,
|
|
211
|
+
children: cropMode === '1:1' ? '⊡' : '⊞'
|
|
212
|
+
})
|
|
213
|
+
})
|
|
214
|
+
}), /*#__PURE__*/_jsx(Pressable, {
|
|
215
|
+
style: styles.editBadge,
|
|
216
|
+
onPress: () => onSelect(selectedMedia),
|
|
217
|
+
children: /*#__PURE__*/_jsx(Text, {
|
|
218
|
+
style: styles.editBadgeText,
|
|
219
|
+
children: "\uD83C\uDFA8 Edit Media"
|
|
220
|
+
})
|
|
221
|
+
})]
|
|
222
|
+
})]
|
|
223
|
+
}), /*#__PURE__*/_jsxs(View, {
|
|
224
|
+
style: styles.albumRow,
|
|
225
|
+
children: [/*#__PURE__*/_jsx(View, {
|
|
226
|
+
style: styles.albumSelector,
|
|
227
|
+
children: /*#__PURE__*/_jsx(Text, {
|
|
228
|
+
style: styles.albumTitle,
|
|
229
|
+
children: "Selected Items"
|
|
230
|
+
})
|
|
231
|
+
}), selectedMedia && /*#__PURE__*/_jsx(View, {
|
|
232
|
+
style: styles.itemCountBadge,
|
|
233
|
+
children: /*#__PURE__*/_jsxs(Text, {
|
|
234
|
+
style: styles.itemCountText,
|
|
235
|
+
children: [items.indexOf(selectedMedia) + 1, " of ", items.length]
|
|
236
|
+
})
|
|
237
|
+
})]
|
|
238
|
+
}), /*#__PURE__*/_jsx(FlatList, {
|
|
239
|
+
data: items,
|
|
240
|
+
keyExtractor: item => `${item.id}-${item.uri}`,
|
|
241
|
+
numColumns: 4,
|
|
242
|
+
style: styles.libraryList,
|
|
243
|
+
renderItem: renderThumb,
|
|
244
|
+
contentContainerStyle: styles.grid,
|
|
245
|
+
ListEmptyComponent: /*#__PURE__*/_jsx(View, {
|
|
246
|
+
style: styles.empty,
|
|
247
|
+
children: /*#__PURE__*/_jsx(Text, {
|
|
248
|
+
style: styles.emptyText,
|
|
249
|
+
children: "No items picked yet."
|
|
250
|
+
})
|
|
251
|
+
})
|
|
252
|
+
})]
|
|
253
|
+
});
|
|
254
|
+
}
|
|
255
|
+
const styles = StyleSheet.create({
|
|
256
|
+
container: {
|
|
257
|
+
flex: 1,
|
|
258
|
+
backgroundColor: '#0b0f1a'
|
|
259
|
+
},
|
|
260
|
+
header: {
|
|
261
|
+
flexDirection: 'row',
|
|
262
|
+
justifyContent: 'space-between',
|
|
263
|
+
alignItems: 'center',
|
|
264
|
+
paddingHorizontal: 16,
|
|
265
|
+
paddingVertical: 12,
|
|
266
|
+
borderBottomWidth: 0,
|
|
267
|
+
backgroundColor: '#0b0f1a',
|
|
268
|
+
zIndex: 10,
|
|
269
|
+
elevation: 10
|
|
270
|
+
},
|
|
271
|
+
headerTitle: {
|
|
272
|
+
color: '#fff',
|
|
273
|
+
fontWeight: '700',
|
|
274
|
+
fontSize: 18
|
|
275
|
+
},
|
|
276
|
+
headerCancel: {
|
|
277
|
+
fontSize: 20,
|
|
278
|
+
color: '#fff'
|
|
279
|
+
},
|
|
280
|
+
backButton: {
|
|
281
|
+
paddingVertical: 4,
|
|
282
|
+
paddingHorizontal: 8
|
|
283
|
+
},
|
|
284
|
+
nextBtn: {
|
|
285
|
+
backgroundColor: '#2563eb',
|
|
286
|
+
paddingHorizontal: 14,
|
|
287
|
+
paddingVertical: 8,
|
|
288
|
+
borderRadius: 20
|
|
289
|
+
},
|
|
290
|
+
nextText: {
|
|
291
|
+
color: '#fff',
|
|
292
|
+
fontWeight: '700'
|
|
293
|
+
},
|
|
294
|
+
preview: {
|
|
295
|
+
width: '100%',
|
|
296
|
+
height: 420,
|
|
297
|
+
backgroundColor: '#0f172a'
|
|
298
|
+
},
|
|
299
|
+
previewImage: {
|
|
300
|
+
width: '100%',
|
|
301
|
+
height: '100%'
|
|
302
|
+
},
|
|
303
|
+
squareCrop: {
|
|
304
|
+
height: '100%'
|
|
305
|
+
},
|
|
306
|
+
originalCrop: {
|
|
307
|
+
height: '100%'
|
|
308
|
+
},
|
|
309
|
+
previewControls: {
|
|
310
|
+
position: 'absolute',
|
|
311
|
+
left: 16,
|
|
312
|
+
bottom: 16,
|
|
313
|
+
flexDirection: 'row',
|
|
314
|
+
alignItems: 'center'
|
|
315
|
+
},
|
|
316
|
+
cropToggle: {
|
|
317
|
+
backgroundColor: 'rgba(0,0,0,0.65)',
|
|
318
|
+
width: 34,
|
|
319
|
+
height: 34,
|
|
320
|
+
borderRadius: 17,
|
|
321
|
+
alignItems: 'center',
|
|
322
|
+
justifyContent: 'center'
|
|
323
|
+
},
|
|
324
|
+
cropIcon: {
|
|
325
|
+
color: '#fff',
|
|
326
|
+
fontSize: 16
|
|
327
|
+
},
|
|
328
|
+
editBadge: {
|
|
329
|
+
position: 'absolute',
|
|
330
|
+
right: 16,
|
|
331
|
+
bottom: 16,
|
|
332
|
+
backgroundColor: '#2563eb',
|
|
333
|
+
paddingHorizontal: 14,
|
|
334
|
+
paddingVertical: 8,
|
|
335
|
+
borderRadius: 20,
|
|
336
|
+
flexDirection: 'row',
|
|
337
|
+
alignItems: 'center',
|
|
338
|
+
shadowColor: '#000',
|
|
339
|
+
shadowOffset: {
|
|
340
|
+
width: 0,
|
|
341
|
+
height: 2
|
|
342
|
+
},
|
|
343
|
+
shadowOpacity: 0.35,
|
|
344
|
+
shadowRadius: 4,
|
|
345
|
+
elevation: 6
|
|
346
|
+
},
|
|
347
|
+
editBadgeText: {
|
|
348
|
+
color: '#fff',
|
|
349
|
+
fontWeight: '700',
|
|
350
|
+
fontSize: 13
|
|
351
|
+
},
|
|
352
|
+
albumRow: {
|
|
353
|
+
flexDirection: 'row',
|
|
354
|
+
justifyContent: 'space-between',
|
|
355
|
+
alignItems: 'center',
|
|
356
|
+
paddingHorizontal: 16,
|
|
357
|
+
paddingVertical: 12
|
|
358
|
+
},
|
|
359
|
+
albumSelector: {
|
|
360
|
+
flexDirection: 'row',
|
|
361
|
+
alignItems: 'center'
|
|
362
|
+
},
|
|
363
|
+
albumTitle: {
|
|
364
|
+
fontSize: 16,
|
|
365
|
+
fontWeight: '700',
|
|
366
|
+
color: '#fff'
|
|
367
|
+
},
|
|
368
|
+
itemCountBadge: {
|
|
369
|
+
backgroundColor: '#111827',
|
|
370
|
+
paddingHorizontal: 12,
|
|
371
|
+
paddingVertical: 6,
|
|
372
|
+
borderRadius: 12
|
|
373
|
+
},
|
|
374
|
+
itemCountText: {
|
|
375
|
+
color: '#e5e7eb',
|
|
376
|
+
fontSize: 12,
|
|
377
|
+
fontWeight: '700'
|
|
378
|
+
},
|
|
379
|
+
grid: {
|
|
380
|
+
paddingBottom: 40
|
|
381
|
+
},
|
|
382
|
+
libraryList: {
|
|
383
|
+
flex: 1
|
|
384
|
+
},
|
|
385
|
+
thumbContainer: {
|
|
386
|
+
width: '25%',
|
|
387
|
+
aspectRatio: 1,
|
|
388
|
+
padding: 1
|
|
389
|
+
},
|
|
390
|
+
thumb: {
|
|
391
|
+
width: '100%',
|
|
392
|
+
height: '100%',
|
|
393
|
+
borderRadius: 8
|
|
394
|
+
},
|
|
395
|
+
thumbFallback: {
|
|
396
|
+
backgroundColor: '#111'
|
|
397
|
+
},
|
|
398
|
+
activeOverlay: {
|
|
399
|
+
...StyleSheet.absoluteFillObject,
|
|
400
|
+
borderRadius: 8,
|
|
401
|
+
borderWidth: 2,
|
|
402
|
+
borderColor: '#2563eb',
|
|
403
|
+
backgroundColor: 'rgba(37,99,235,0.12)'
|
|
404
|
+
},
|
|
405
|
+
multiOverlay: {
|
|
406
|
+
position: 'absolute',
|
|
407
|
+
right: 6,
|
|
408
|
+
top: 6
|
|
409
|
+
},
|
|
410
|
+
selectionBadge: {
|
|
411
|
+
width: 20,
|
|
412
|
+
height: 20,
|
|
413
|
+
borderRadius: 10,
|
|
414
|
+
backgroundColor: 'rgba(0,0,0,0.5)',
|
|
415
|
+
alignItems: 'center',
|
|
416
|
+
justifyContent: 'center',
|
|
417
|
+
borderWidth: 1.5,
|
|
418
|
+
borderColor: '#fff'
|
|
419
|
+
},
|
|
420
|
+
selectionBadgeActive: {
|
|
421
|
+
backgroundColor: '#2563eb'
|
|
422
|
+
},
|
|
423
|
+
selectionNumber: {
|
|
424
|
+
color: '#fff',
|
|
425
|
+
fontSize: 10,
|
|
426
|
+
fontWeight: '700'
|
|
427
|
+
},
|
|
428
|
+
videoBadge: {
|
|
429
|
+
position: 'absolute',
|
|
430
|
+
right: 6,
|
|
431
|
+
bottom: 6,
|
|
432
|
+
backgroundColor: 'rgba(0,0,0,0.6)',
|
|
433
|
+
paddingHorizontal: 6,
|
|
434
|
+
paddingVertical: 2,
|
|
435
|
+
borderRadius: 6
|
|
436
|
+
},
|
|
437
|
+
videoDuration: {
|
|
438
|
+
color: '#fff',
|
|
439
|
+
fontSize: 9,
|
|
440
|
+
fontWeight: '600'
|
|
441
|
+
},
|
|
442
|
+
videoPlayBadge: {
|
|
443
|
+
position: 'absolute',
|
|
444
|
+
left: 6,
|
|
445
|
+
top: 6,
|
|
446
|
+
width: 18,
|
|
447
|
+
height: 18,
|
|
448
|
+
borderRadius: 9,
|
|
449
|
+
backgroundColor: 'rgba(0,0,0,0.6)',
|
|
450
|
+
alignItems: 'center',
|
|
451
|
+
justifyContent: 'center'
|
|
452
|
+
},
|
|
453
|
+
videoPlayIcon: {
|
|
454
|
+
color: '#fff',
|
|
455
|
+
fontSize: 9,
|
|
456
|
+
fontWeight: '700'
|
|
457
|
+
},
|
|
458
|
+
previewOverlay: {
|
|
459
|
+
position: 'absolute',
|
|
460
|
+
left: 0,
|
|
461
|
+
right: 0,
|
|
462
|
+
bottom: 14,
|
|
463
|
+
alignItems: 'center'
|
|
464
|
+
},
|
|
465
|
+
playPauseCircle: {
|
|
466
|
+
width: 44,
|
|
467
|
+
height: 44,
|
|
468
|
+
borderRadius: 22,
|
|
469
|
+
backgroundColor: 'rgba(0,0,0,0.55)',
|
|
470
|
+
alignItems: 'center',
|
|
471
|
+
justifyContent: 'center'
|
|
472
|
+
},
|
|
473
|
+
playPauseText: {
|
|
474
|
+
color: '#fff',
|
|
475
|
+
fontSize: 18,
|
|
476
|
+
fontWeight: '700'
|
|
477
|
+
},
|
|
478
|
+
editLabelContainer: {
|
|
479
|
+
position: 'absolute',
|
|
480
|
+
bottom: 6,
|
|
481
|
+
left: 6,
|
|
482
|
+
backgroundColor: 'rgba(0,0,0,0.5)',
|
|
483
|
+
paddingHorizontal: 6,
|
|
484
|
+
paddingVertical: 2,
|
|
485
|
+
borderRadius: 4
|
|
486
|
+
},
|
|
487
|
+
editLabelText: {
|
|
488
|
+
color: '#fff',
|
|
489
|
+
fontSize: 9,
|
|
490
|
+
fontWeight: '700'
|
|
491
|
+
},
|
|
492
|
+
empty: {
|
|
493
|
+
padding: 24,
|
|
494
|
+
alignItems: 'center'
|
|
495
|
+
},
|
|
496
|
+
emptyText: {
|
|
497
|
+
color: '#6b7280'
|
|
498
|
+
},
|
|
499
|
+
emptyPreview: {
|
|
500
|
+
flex: 1,
|
|
501
|
+
alignItems: 'center',
|
|
502
|
+
justifyContent: 'center'
|
|
503
|
+
}
|
|
504
|
+
});
|
|
505
|
+
//# sourceMappingURL=GalleryScreen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","useEffect","useMemo","useRef","useState","Animated","FlatList","Image","Pressable","StyleSheet","Text","View","exportAsset","VideoPreview","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","GalleryScreen","items","onBack","onSelect","onNext","selectedMedia","setSelectedMedia","previewUri","setPreviewUri","cropMode","setCropMode","videoPaused","setVideoPaused","scaleAnim","Value","current","length","found","find","i","id","cancelled","uri","startsWith","fileUri","playableUri","handleSelectItem","item","sequence","timing","toValue","duration","useNativeDriver","start","getSelectionIndex","idx","findIndex","renderThumb","thumbUri","thumbnailUri","isActive","itemIndex","style","styles","thumbContainer","onPress","children","source","thumb","thumbFallback","activeOverlay","multiOverlay","selectionBadge","selectionBadgeActive","selectionNumber","type","videoPlayBadge","videoPlayIcon","videoBadge","videoDuration","durationMs","toFixed","editLabelContainer","editLabelText","container","header","backButton","headerCancel","headerTitle","nextBtn","nextText","preview","transform","scale","previewImage","v","paused","muted","resizeMode","previewOverlay","playPauseCircle","playPauseText","squareCrop","originalCrop","emptyPreview","emptyText","previewControls","cropToggle","cropIcon","editBadge","editBadgeText","albumRow","albumSelector","albumTitle","itemCountBadge","itemCountText","indexOf","data","keyExtractor","numColumns","libraryList","renderItem","contentContainerStyle","grid","ListEmptyComponent","empty","create","flex","backgroundColor","flexDirection","justifyContent","alignItems","paddingHorizontal","paddingVertical","borderBottomWidth","zIndex","elevation","color","fontWeight","fontSize","borderRadius","width","height","position","left","bottom","right","shadowColor","shadowOffset","shadowOpacity","shadowRadius","paddingBottom","aspectRatio","padding","absoluteFillObject","borderWidth","borderColor","top"],"sourceRoot":"../../../src","sources":["screens/GalleryScreen.tsx"],"mappings":"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","ignoreList":[]}
|