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