react-native-frame-capture 1.0.1
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/FrameCapture.podspec +21 -0
- package/LICENSE +20 -0
- package/README.md +158 -0
- package/android/build.gradle +77 -0
- package/android/gradle.properties +5 -0
- package/android/src/main/AndroidManifest.xml +20 -0
- package/android/src/main/java/com/framecapture/CaptureManager.kt +831 -0
- package/android/src/main/java/com/framecapture/Constants.kt +196 -0
- package/android/src/main/java/com/framecapture/ErrorHandler.kt +165 -0
- package/android/src/main/java/com/framecapture/FrameCaptureModule.kt +653 -0
- package/android/src/main/java/com/framecapture/FrameCapturePackage.kt +32 -0
- package/android/src/main/java/com/framecapture/OverlayRenderer.kt +423 -0
- package/android/src/main/java/com/framecapture/PermissionHandler.kt +150 -0
- package/android/src/main/java/com/framecapture/ScreenCaptureService.kt +366 -0
- package/android/src/main/java/com/framecapture/StorageManager.kt +221 -0
- package/android/src/main/java/com/framecapture/capture/BitmapProcessor.kt +157 -0
- package/android/src/main/java/com/framecapture/capture/CaptureEventEmitter.kt +120 -0
- package/android/src/main/java/com/framecapture/models/CaptureModels.kt +302 -0
- package/android/src/main/java/com/framecapture/models/EnumsAndExtensions.kt +60 -0
- package/android/src/main/java/com/framecapture/models/OverlayModels.kt +154 -0
- package/android/src/main/java/com/framecapture/service/CaptureNotificationManager.kt +286 -0
- package/android/src/main/java/com/framecapture/storage/StorageStrategies.kt +317 -0
- package/android/src/main/java/com/framecapture/utils/ValidationUtils.kt +379 -0
- package/app.plugin.js +1 -0
- package/ios/FrameCapture.h +5 -0
- package/ios/FrameCapture.mm +21 -0
- package/lib/module/NativeFrameCapture.js +24 -0
- package/lib/module/NativeFrameCapture.js.map +1 -0
- package/lib/module/api.js +146 -0
- package/lib/module/api.js.map +1 -0
- package/lib/module/constants.js +67 -0
- package/lib/module/constants.js.map +1 -0
- package/lib/module/errors.js +19 -0
- package/lib/module/errors.js.map +1 -0
- package/lib/module/events.js +58 -0
- package/lib/module/events.js.map +1 -0
- package/lib/module/index.js +24 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/normalize.js +51 -0
- package/lib/module/normalize.js.map +1 -0
- package/lib/module/package.json +1 -0
- package/lib/module/types.js +165 -0
- package/lib/module/types.js.map +1 -0
- package/lib/module/validation.js +190 -0
- package/lib/module/validation.js.map +1 -0
- package/lib/typescript/package.json +1 -0
- package/lib/typescript/plugin/src/index.d.ts +4 -0
- package/lib/typescript/plugin/src/index.d.ts.map +1 -0
- package/lib/typescript/src/NativeFrameCapture.d.ts +75 -0
- package/lib/typescript/src/NativeFrameCapture.d.ts.map +1 -0
- package/lib/typescript/src/api.d.ts +66 -0
- package/lib/typescript/src/api.d.ts.map +1 -0
- package/lib/typescript/src/constants.d.ts +41 -0
- package/lib/typescript/src/constants.d.ts.map +1 -0
- package/lib/typescript/src/errors.d.ts +14 -0
- package/lib/typescript/src/errors.d.ts.map +1 -0
- package/lib/typescript/src/events.d.ts +30 -0
- package/lib/typescript/src/events.d.ts.map +1 -0
- package/lib/typescript/src/index.d.ts +12 -0
- package/lib/typescript/src/index.d.ts.map +1 -0
- package/lib/typescript/src/normalize.d.ts +43 -0
- package/lib/typescript/src/normalize.d.ts.map +1 -0
- package/lib/typescript/src/types.d.ts +247 -0
- package/lib/typescript/src/types.d.ts.map +1 -0
- package/lib/typescript/src/validation.d.ts +15 -0
- package/lib/typescript/src/validation.d.ts.map +1 -0
- package/package.json +196 -0
- package/plugin/build/index.js +48 -0
- package/src/NativeFrameCapture.ts +86 -0
- package/src/api.ts +189 -0
- package/src/constants.ts +69 -0
- package/src/errors.ts +21 -0
- package/src/events.ts +61 -0
- package/src/index.tsx +31 -0
- package/src/normalize.ts +81 -0
- package/src/types.ts +327 -0
- package/src/validation.ts +321 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
#import "FrameCapture.h"
|
|
2
|
+
|
|
3
|
+
@implementation FrameCapture
|
|
4
|
+
- (NSNumber *)multiply:(double)a b:(double)b {
|
|
5
|
+
NSNumber *result = @(a * b);
|
|
6
|
+
|
|
7
|
+
return result;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
- (std::shared_ptr<facebook::react::TurboModule>)getTurboModule:
|
|
11
|
+
(const facebook::react::ObjCTurboModule::InitParams &)params
|
|
12
|
+
{
|
|
13
|
+
return std::make_shared<facebook::react::NativeFrameCaptureSpecJSI>(params);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
+ (NSString *)moduleName
|
|
17
|
+
{
|
|
18
|
+
return @"FrameCapture";
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
@end
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Native TurboModule bridge for React Native Frame Capture
|
|
5
|
+
* @module NativeFrameCapture
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
import { TurboModuleRegistry } from 'react-native';
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* EventEmitter type for TurboModule events
|
|
12
|
+
*/
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Event payload types (defined inline for codegen compatibility)
|
|
16
|
+
*/
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* TurboModule specification for FrameCapture
|
|
20
|
+
* Defines the native methods implemented in Kotlin
|
|
21
|
+
*/
|
|
22
|
+
|
|
23
|
+
export default TurboModuleRegistry.getEnforcing('FrameCapture');
|
|
24
|
+
//# sourceMappingURL=NativeFrameCapture.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"..\\..\\src","sources":["NativeFrameCapture.ts"],"mappings":";;AAAA;AACA;AACA;AACA;;AAEA,SAASA,mBAAmB,QAA0B,cAAc;;AAEpE;AACA;AACA;;AAGA;AACA;AACA;;AA4CA;AACA;AACA;AACA;;AAwBA,eAAeA,mBAAmB,CAACC,YAAY,CAAO,cAAc,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Core API functions for React Native Frame Capture
|
|
5
|
+
* @module api
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
import NativeFrameCapture from "./NativeFrameCapture.js";
|
|
9
|
+
import { CaptureError } from "./errors.js";
|
|
10
|
+
import { validateOptions, mergeOptions } from "./validation.js";
|
|
11
|
+
import { normalizeOptions } from "./normalize.js";
|
|
12
|
+
import { CaptureErrorCode } from "./types.js";
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Requests MediaProjection permission from the user
|
|
16
|
+
*
|
|
17
|
+
* @returns Promise resolving to permission status
|
|
18
|
+
* @throws {CaptureError} if permission request fails
|
|
19
|
+
*/
|
|
20
|
+
export async function requestPermission() {
|
|
21
|
+
try {
|
|
22
|
+
const result = await NativeFrameCapture.requestPermission();
|
|
23
|
+
return result;
|
|
24
|
+
} catch (error) {
|
|
25
|
+
throw new CaptureError(error.code || CaptureErrorCode.SYSTEM_ERROR, error.message || 'Failed to request permission', error.details);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Checks current permission status without requesting
|
|
31
|
+
*
|
|
32
|
+
* @returns Promise resolving to current permission status
|
|
33
|
+
*/
|
|
34
|
+
export async function checkPermission() {
|
|
35
|
+
try {
|
|
36
|
+
const result = await NativeFrameCapture.checkPermission();
|
|
37
|
+
return result;
|
|
38
|
+
} catch (error) {
|
|
39
|
+
throw new CaptureError(error.code || CaptureErrorCode.SYSTEM_ERROR, error.message || 'Failed to check permission', error.details);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Starts screen capture with the given options
|
|
45
|
+
*
|
|
46
|
+
* @param options - Capture configuration options (optional, uses defaults if not provided)
|
|
47
|
+
* @returns Promise resolving to capture session information
|
|
48
|
+
* @throws {CaptureError} if capture cannot be started
|
|
49
|
+
*/
|
|
50
|
+
export async function startCapture(options) {
|
|
51
|
+
if (options) {
|
|
52
|
+
validateOptions(options);
|
|
53
|
+
}
|
|
54
|
+
const finalOptions = mergeOptions(options);
|
|
55
|
+
const nativeOptions = normalizeOptions(finalOptions);
|
|
56
|
+
try {
|
|
57
|
+
const result = await NativeFrameCapture.startCapture(nativeOptions);
|
|
58
|
+
return result;
|
|
59
|
+
} catch (error) {
|
|
60
|
+
throw new CaptureError(error.code || CaptureErrorCode.SYSTEM_ERROR, error.message || 'Failed to start capture', error.details);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* Stops the active capture session
|
|
66
|
+
*
|
|
67
|
+
* @returns Promise that resolves when capture is stopped
|
|
68
|
+
* @throws {CaptureError} if stop operation fails
|
|
69
|
+
*/
|
|
70
|
+
export async function stopCapture() {
|
|
71
|
+
try {
|
|
72
|
+
await NativeFrameCapture.stopCapture();
|
|
73
|
+
} catch (error) {
|
|
74
|
+
throw new CaptureError(error.code || CaptureErrorCode.SYSTEM_ERROR, error.message || 'Failed to stop capture', error.details);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* Pauses the active capture session
|
|
80
|
+
*
|
|
81
|
+
* @returns Promise that resolves when capture is paused
|
|
82
|
+
* @throws {CaptureError} if pause operation fails
|
|
83
|
+
*/
|
|
84
|
+
export async function pauseCapture() {
|
|
85
|
+
try {
|
|
86
|
+
await NativeFrameCapture.pauseCapture();
|
|
87
|
+
} catch (error) {
|
|
88
|
+
throw new CaptureError(error.code || CaptureErrorCode.SYSTEM_ERROR, error.message || 'Failed to pause capture', error.details);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
/**
|
|
93
|
+
* Resumes a paused capture session
|
|
94
|
+
*
|
|
95
|
+
* @returns Promise that resolves when capture is resumed
|
|
96
|
+
* @throws {CaptureError} if resume operation fails
|
|
97
|
+
*/
|
|
98
|
+
export async function resumeCapture() {
|
|
99
|
+
try {
|
|
100
|
+
await NativeFrameCapture.resumeCapture();
|
|
101
|
+
} catch (error) {
|
|
102
|
+
throw new CaptureError(error.code || CaptureErrorCode.SYSTEM_ERROR, error.message || 'Failed to resume capture', error.details);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
/**
|
|
107
|
+
* Gets the current capture status
|
|
108
|
+
*
|
|
109
|
+
* @returns Promise resolving to current capture status
|
|
110
|
+
*/
|
|
111
|
+
export async function getCaptureStatus() {
|
|
112
|
+
try {
|
|
113
|
+
const result = await NativeFrameCapture.getCaptureStatus();
|
|
114
|
+
return result;
|
|
115
|
+
} catch (error) {
|
|
116
|
+
throw new CaptureError(error.code || CaptureErrorCode.SYSTEM_ERROR, error.message || 'Failed to get capture status', error.details);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
/**
|
|
121
|
+
* Checks if notification permission is granted (Android 13+)
|
|
122
|
+
*
|
|
123
|
+
* @returns Promise resolving to permission status
|
|
124
|
+
*/
|
|
125
|
+
export async function checkNotificationPermission() {
|
|
126
|
+
try {
|
|
127
|
+
const result = await NativeFrameCapture.checkNotificationPermission();
|
|
128
|
+
return result;
|
|
129
|
+
} catch (error) {
|
|
130
|
+
throw new CaptureError(error.code || CaptureErrorCode.SYSTEM_ERROR, error.message || 'Failed to check notification permission', error.details);
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
/**
|
|
135
|
+
* Manually cleans up all temporary frame files
|
|
136
|
+
*
|
|
137
|
+
* @returns Promise that resolves when cleanup is complete
|
|
138
|
+
*/
|
|
139
|
+
export async function cleanupTempFrames() {
|
|
140
|
+
try {
|
|
141
|
+
await NativeFrameCapture.cleanupTempFrames();
|
|
142
|
+
} catch (error) {
|
|
143
|
+
throw new CaptureError(error.code || CaptureErrorCode.SYSTEM_ERROR, error.message || 'Failed to cleanup temp frames', error.details);
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
//# sourceMappingURL=api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["NativeFrameCapture","CaptureError","validateOptions","mergeOptions","normalizeOptions","CaptureErrorCode","requestPermission","result","error","code","SYSTEM_ERROR","message","details","checkPermission","startCapture","options","finalOptions","nativeOptions","stopCapture","pauseCapture","resumeCapture","getCaptureStatus","checkNotificationPermission","cleanupTempFrames"],"sourceRoot":"..\\..\\src","sources":["api.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Constants for React Native Frame Capture
|
|
5
|
+
* @module constants
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Default configuration options
|
|
10
|
+
*/
|
|
11
|
+
export const DEFAULT_OPTIONS = {
|
|
12
|
+
capture: {
|
|
13
|
+
interval: 1000
|
|
14
|
+
},
|
|
15
|
+
image: {
|
|
16
|
+
quality: 80,
|
|
17
|
+
format: 'jpeg'
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* Default advanced configuration (for validation fallbacks)
|
|
23
|
+
*/
|
|
24
|
+
export const DEFAULT_ADVANCED_CONFIG = {
|
|
25
|
+
storage: {
|
|
26
|
+
warningThreshold: 100 * 1024 * 1024 // 100MB
|
|
27
|
+
},
|
|
28
|
+
fileNaming: {
|
|
29
|
+
prefix: 'capture_',
|
|
30
|
+
dateFormat: 'yyyyMMdd_HHmmss_SSS',
|
|
31
|
+
framePadding: 5
|
|
32
|
+
},
|
|
33
|
+
performance: {
|
|
34
|
+
overlayCacheSize: 10 * 1024 * 1024,
|
|
35
|
+
// 10MB
|
|
36
|
+
imageReaderBuffers: 2,
|
|
37
|
+
executorShutdownTimeout: 5000,
|
|
38
|
+
executorForcedShutdownTimeout: 1000
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* Minimum interval between captures (milliseconds)
|
|
44
|
+
*/
|
|
45
|
+
export const MIN_INTERVAL = 100;
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Maximum interval between captures (milliseconds)
|
|
49
|
+
*/
|
|
50
|
+
export const MAX_INTERVAL = 60000;
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* Minimum image quality value
|
|
54
|
+
*/
|
|
55
|
+
export const MIN_QUALITY = 0;
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* Maximum image quality value
|
|
59
|
+
*/
|
|
60
|
+
export const MAX_QUALITY = 100;
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* Storage warning threshold (bytes)
|
|
64
|
+
* @deprecated Use advanced.storage.warningThreshold in CaptureOptions instead
|
|
65
|
+
*/
|
|
66
|
+
export const STORAGE_WARNING_THRESHOLD = 100 * 1024 * 1024; // 100MB
|
|
67
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["DEFAULT_OPTIONS","capture","interval","image","quality","format","DEFAULT_ADVANCED_CONFIG","storage","warningThreshold","fileNaming","prefix","dateFormat","framePadding","performance","overlayCacheSize","imageReaderBuffers","executorShutdownTimeout","executorForcedShutdownTimeout","MIN_INTERVAL","MAX_INTERVAL","MIN_QUALITY","MAX_QUALITY","STORAGE_WARNING_THRESHOLD"],"sourceRoot":"..\\..\\src","sources":["constants.ts"],"mappings":";;AAAA;AACA;AACA;AACA;;AAQA;AACA;AACA;AACA,OAAO,MAAMA,eAA+B,GAAG;EAC7CC,OAAO,EAAE;IACPC,QAAQ,EAAE;EACZ,CAAC;EACDC,KAAK,EAAE;IACLC,OAAO,EAAE,EAAE;IACXC,MAAM,EAAE;EACV;AACF,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMC,uBAAuB,GAAG;EACrCC,OAAO,EAAE;IACPC,gBAAgB,EAAE,GAAG,GAAG,IAAI,GAAG,IAAI,CAAE;EACvC,CAAC;EACDC,UAAU,EAAE;IACVC,MAAM,EAAE,UAAU;IAClBC,UAAU,EAAE,qBAAqB;IACjCC,YAAY,EAAE;EAChB,CAA+B;EAC/BC,WAAW,EAAE;IACXC,gBAAgB,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI;IAAE;IACpCC,kBAAkB,EAAE,CAAC;IACrBC,uBAAuB,EAAE,IAAI;IAC7BC,6BAA6B,EAAE;EACjC;AACF,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMC,YAAY,GAAG,GAAG;;AAE/B;AACA;AACA;AACA,OAAO,MAAMC,YAAY,GAAG,KAAK;;AAEjC;AACA;AACA;AACA,OAAO,MAAMC,WAAW,GAAG,CAAC;;AAE5B;AACA;AACA;AACA,OAAO,MAAMC,WAAW,GAAG,GAAG;;AAE9B;AACA;AACA;AACA;AACA,OAAO,MAAMC,yBAAyB,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Error handling for React Native Frame Capture
|
|
5
|
+
* @module errors
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Custom error class for capture operations
|
|
10
|
+
*/
|
|
11
|
+
export class CaptureError extends Error {
|
|
12
|
+
constructor(code, message, details) {
|
|
13
|
+
super(message);
|
|
14
|
+
this.name = 'CaptureError';
|
|
15
|
+
this.code = code;
|
|
16
|
+
this.details = details;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["CaptureError","Error","constructor","code","message","details","name"],"sourceRoot":"..\\..\\src","sources":["errors.ts"],"mappings":";;AAAA;AACA;AACA;AACA;;AAIA;AACA;AACA;AACA,OAAO,MAAMA,YAAY,SAASC,KAAK,CAAC;EAItCC,WAAWA,CAACC,IAAsB,EAAEC,OAAe,EAAEC,OAAa,EAAE;IAClE,KAAK,CAACD,OAAO,CAAC;IACd,IAAI,CAACE,IAAI,GAAG,cAAc;IAC1B,IAAI,CAACH,IAAI,GAAGA,IAAI;IAChB,IAAI,CAACE,OAAO,GAAGA,OAAO;EACxB;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Event handling for React Native Frame Capture
|
|
5
|
+
* @module events
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
import NativeFrameCapture from "./NativeFrameCapture.js";
|
|
9
|
+
import { CaptureEventType } from "./types.js";
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Adds an event listener for capture events
|
|
13
|
+
*
|
|
14
|
+
* @param event - Event type to listen for
|
|
15
|
+
* @param callback - Function to call when event is emitted
|
|
16
|
+
* @returns Subscription object that can be used to remove the listener
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* ```typescript
|
|
20
|
+
* const subscription = addListener(
|
|
21
|
+
* CaptureEventType.FRAME_CAPTURED,
|
|
22
|
+
* (event) => console.log('Frame captured:', event.filePath)
|
|
23
|
+
* );
|
|
24
|
+
*
|
|
25
|
+
* // Later, remove the listener
|
|
26
|
+
* subscription.remove();
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
export function addListener(event, callback) {
|
|
30
|
+
switch (event) {
|
|
31
|
+
case CaptureEventType.FRAME_CAPTURED:
|
|
32
|
+
return NativeFrameCapture.onFrameCaptured(callback);
|
|
33
|
+
case CaptureEventType.CAPTURE_ERROR:
|
|
34
|
+
return NativeFrameCapture.onCaptureError(callback);
|
|
35
|
+
case CaptureEventType.CAPTURE_STOP:
|
|
36
|
+
return NativeFrameCapture.onCaptureStop(callback);
|
|
37
|
+
case CaptureEventType.CAPTURE_START:
|
|
38
|
+
return NativeFrameCapture.onCaptureStart(callback);
|
|
39
|
+
case CaptureEventType.STORAGE_WARNING:
|
|
40
|
+
return NativeFrameCapture.onStorageWarning(callback);
|
|
41
|
+
case CaptureEventType.CAPTURE_PAUSE:
|
|
42
|
+
return NativeFrameCapture.onCapturePause(callback);
|
|
43
|
+
case CaptureEventType.CAPTURE_RESUME:
|
|
44
|
+
return NativeFrameCapture.onCaptureResume(callback);
|
|
45
|
+
case CaptureEventType.OVERLAY_ERROR:
|
|
46
|
+
return NativeFrameCapture.onOverlayError(callback);
|
|
47
|
+
default:
|
|
48
|
+
throw new Error(`Unknown event type: ${event}`);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* @deprecated Use subscription.remove() instead
|
|
54
|
+
*/
|
|
55
|
+
export function removeAllListeners(_event) {
|
|
56
|
+
console.warn('removeAllListeners is deprecated in New Architecture. Use subscription.remove() instead.');
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=events.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["NativeFrameCapture","CaptureEventType","addListener","event","callback","FRAME_CAPTURED","onFrameCaptured","CAPTURE_ERROR","onCaptureError","CAPTURE_STOP","onCaptureStop","CAPTURE_START","onCaptureStart","STORAGE_WARNING","onStorageWarning","CAPTURE_PAUSE","onCapturePause","CAPTURE_RESUME","onCaptureResume","OVERLAY_ERROR","onOverlayError","Error","removeAllListeners","_event","console","warn"],"sourceRoot":"..\\..\\src","sources":["events.ts"],"mappings":";;AAAA;AACA;AACA;AACA;;AAGA,OAAOA,kBAAkB,MAAM,yBAAsB;AACrD,SAASC,gBAAgB,QAAmC,YAAS;;AAErE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,WAAWA,CACzBC,KAAuB,EACvBC,QAA8B,EACX;EACnB,QAAQD,KAAK;IACX,KAAKF,gBAAgB,CAACI,cAAc;MAClC,OAAOL,kBAAkB,CAACM,eAAe,CAACF,QAAe,CAAC;IAC5D,KAAKH,gBAAgB,CAACM,aAAa;MACjC,OAAOP,kBAAkB,CAACQ,cAAc,CAACJ,QAAe,CAAC;IAC3D,KAAKH,gBAAgB,CAACQ,YAAY;MAChC,OAAOT,kBAAkB,CAACU,aAAa,CAACN,QAAe,CAAC;IAC1D,KAAKH,gBAAgB,CAACU,aAAa;MACjC,OAAOX,kBAAkB,CAACY,cAAc,CAACR,QAAe,CAAC;IAC3D,KAAKH,gBAAgB,CAACY,eAAe;MACnC,OAAOb,kBAAkB,CAACc,gBAAgB,CAACV,QAAe,CAAC;IAC7D,KAAKH,gBAAgB,CAACc,aAAa;MACjC,OAAOf,kBAAkB,CAACgB,cAAc,CAACZ,QAAe,CAAC;IAC3D,KAAKH,gBAAgB,CAACgB,cAAc;MAClC,OAAOjB,kBAAkB,CAACkB,eAAe,CAACd,QAAe,CAAC;IAC5D,KAAKH,gBAAgB,CAACkB,aAAa;MACjC,OAAOnB,kBAAkB,CAACoB,cAAc,CAAChB,QAAe,CAAC;IAC3D;MACE,MAAM,IAAIiB,KAAK,CAAC,uBAAuBlB,KAAK,EAAE,CAAC;EACnD;AACF;;AAEA;AACA;AACA;AACA,OAAO,SAASmB,kBAAkBA,CAACC,MAAwB,EAAQ;EACjEC,OAAO,CAACC,IAAI,CACV,0FACF,CAAC;AACH","ignoreList":[]}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* React Native Frame Capture
|
|
5
|
+
* Production-grade screen capture library for React Native Android
|
|
6
|
+
*
|
|
7
|
+
* @packageDocumentation
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
// Export types
|
|
11
|
+
export * from "./types.js";
|
|
12
|
+
|
|
13
|
+
// Export constants
|
|
14
|
+
export * from "./constants.js";
|
|
15
|
+
|
|
16
|
+
// Export errors
|
|
17
|
+
export { CaptureError } from "./errors.js";
|
|
18
|
+
|
|
19
|
+
// Export API functions
|
|
20
|
+
export { requestPermission, checkPermission, startCapture, stopCapture, pauseCapture, resumeCapture, getCaptureStatus, checkNotificationPermission, cleanupTempFrames } from "./api.js";
|
|
21
|
+
|
|
22
|
+
// Export event functions
|
|
23
|
+
export { addListener, removeAllListeners } from "./events.js";
|
|
24
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["CaptureError","requestPermission","checkPermission","startCapture","stopCapture","pauseCapture","resumeCapture","getCaptureStatus","checkNotificationPermission","cleanupTempFrames","addListener","removeAllListeners"],"sourceRoot":"..\\..\\src","sources":["index.tsx"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,cAAc,YAAS;;AAEvB;AACA,cAAc,gBAAa;;AAE3B;AACA,SAASA,YAAY,QAAQ,aAAU;;AAEvC;AACA,SACEC,iBAAiB,EACjBC,eAAe,EACfC,YAAY,EACZC,WAAW,EACXC,YAAY,EACZC,aAAa,EACbC,gBAAgB,EAChBC,2BAA2B,EAC3BC,iBAAiB,QACZ,UAAO;;AAEd;AACA,SAASC,WAAW,EAAEC,kBAAkB,QAAQ,aAAU","ignoreList":[]}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Normalization utilities for converting organized CaptureOptions
|
|
5
|
+
* to the flat structure expected by native code
|
|
6
|
+
* @module normalize
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Flat options structure expected by native code
|
|
11
|
+
*/
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Normalizes organized CaptureOptions to flat structure for native code
|
|
15
|
+
*/
|
|
16
|
+
export function normalizeOptions(options) {
|
|
17
|
+
const {
|
|
18
|
+
capture,
|
|
19
|
+
image,
|
|
20
|
+
storage,
|
|
21
|
+
performance,
|
|
22
|
+
notification,
|
|
23
|
+
overlays
|
|
24
|
+
} = options;
|
|
25
|
+
return {
|
|
26
|
+
// Capture config
|
|
27
|
+
interval: capture.interval,
|
|
28
|
+
// Image config
|
|
29
|
+
quality: image.quality,
|
|
30
|
+
format: image.format,
|
|
31
|
+
scaleResolution: image.scaleResolution,
|
|
32
|
+
captureRegion: image.region,
|
|
33
|
+
excludeStatusBar: image.excludeStatusBar,
|
|
34
|
+
// Storage config
|
|
35
|
+
saveFrames: storage?.saveFrames,
|
|
36
|
+
storageLocation: storage?.location,
|
|
37
|
+
outputDirectory: storage?.outputDirectory,
|
|
38
|
+
// Pass through as-is
|
|
39
|
+
notification,
|
|
40
|
+
overlays,
|
|
41
|
+
// Advanced config (nested structure for native)
|
|
42
|
+
advanced: {
|
|
43
|
+
storage: storage?.warningThreshold !== undefined ? {
|
|
44
|
+
warningThreshold: storage.warningThreshold
|
|
45
|
+
} : undefined,
|
|
46
|
+
fileNaming: storage?.fileNaming,
|
|
47
|
+
performance
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=normalize.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["normalizeOptions","options","capture","image","storage","performance","notification","overlays","interval","quality","format","scaleResolution","captureRegion","region","excludeStatusBar","saveFrames","storageLocation","location","outputDirectory","advanced","warningThreshold","undefined","fileNaming"],"sourceRoot":"..\\..\\src","sources":["normalize.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;;AAIA;AACA;AACA;;AA+BA;AACA;AACA;AACA,OAAO,SAASA,gBAAgBA,CAC9BC,OAAuB,EACD;EACtB,MAAM;IAAEC,OAAO;IAAEC,KAAK;IAAEC,OAAO;IAAEC,WAAW;IAAEC,YAAY;IAAEC;EAAS,CAAC,GACpEN,OAAO;EAET,OAAO;IACL;IACAO,QAAQ,EAAEN,OAAO,CAACM,QAAQ;IAE1B;IACAC,OAAO,EAAEN,KAAK,CAACM,OAAO;IACtBC,MAAM,EAAEP,KAAK,CAACO,MAAM;IACpBC,eAAe,EAAER,KAAK,CAACQ,eAAe;IACtCC,aAAa,EAAET,KAAK,CAACU,MAAM;IAC3BC,gBAAgB,EAAEX,KAAK,CAACW,gBAAgB;IAExC;IACAC,UAAU,EAAEX,OAAO,EAAEW,UAAU;IAC/BC,eAAe,EAAEZ,OAAO,EAAEa,QAAQ;IAClCC,eAAe,EAAEd,OAAO,EAAEc,eAAe;IAEzC;IACAZ,YAAY;IACZC,QAAQ;IAER;IACAY,QAAQ,EAAE;MACRf,OAAO,EACLA,OAAO,EAAEgB,gBAAgB,KAAKC,SAAS,GACnC;QAAED,gBAAgB,EAAEhB,OAAO,CAACgB;MAAiB,CAAC,GAC9CC,SAAS;MACfC,UAAU,EAAElB,OAAO,EAAEkB,UAAU;MAC/BjB;IACF;EACF,CAAC;AACH","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"type":"module"}
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Type definitions for React Native Frame Capture
|
|
5
|
+
* @module types
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
// ============================================================================
|
|
9
|
+
// Enums
|
|
10
|
+
// ============================================================================
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Capture state values
|
|
14
|
+
*/
|
|
15
|
+
export let CaptureState = /*#__PURE__*/function (CaptureState) {
|
|
16
|
+
CaptureState["IDLE"] = "idle";
|
|
17
|
+
CaptureState["CAPTURING"] = "capturing";
|
|
18
|
+
CaptureState["PAUSED"] = "paused";
|
|
19
|
+
CaptureState["STOPPING"] = "stopping";
|
|
20
|
+
return CaptureState;
|
|
21
|
+
}({});
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Permission status values
|
|
25
|
+
*/
|
|
26
|
+
export let PermissionStatus = /*#__PURE__*/function (PermissionStatus) {
|
|
27
|
+
PermissionStatus["GRANTED"] = "granted";
|
|
28
|
+
PermissionStatus["DENIED"] = "denied";
|
|
29
|
+
PermissionStatus["NOT_DETERMINED"] = "not_determined";
|
|
30
|
+
return PermissionStatus;
|
|
31
|
+
}({});
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Error codes for capture operations
|
|
35
|
+
*/
|
|
36
|
+
export let CaptureErrorCode = /*#__PURE__*/function (CaptureErrorCode) {
|
|
37
|
+
CaptureErrorCode["PERMISSION_DENIED"] = "PERMISSION_DENIED";
|
|
38
|
+
CaptureErrorCode["ALREADY_CAPTURING"] = "ALREADY_CAPTURING";
|
|
39
|
+
CaptureErrorCode["INVALID_OPTIONS"] = "INVALID_OPTIONS";
|
|
40
|
+
CaptureErrorCode["STORAGE_ERROR"] = "STORAGE_ERROR";
|
|
41
|
+
CaptureErrorCode["SYSTEM_ERROR"] = "SYSTEM_ERROR";
|
|
42
|
+
CaptureErrorCode["NOT_SUPPORTED"] = "NOT_SUPPORTED";
|
|
43
|
+
return CaptureErrorCode;
|
|
44
|
+
}({});
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* Event types emitted by the capture system
|
|
48
|
+
*/
|
|
49
|
+
export let CaptureEventType = /*#__PURE__*/function (CaptureEventType) {
|
|
50
|
+
CaptureEventType["FRAME_CAPTURED"] = "onFrameCaptured";
|
|
51
|
+
CaptureEventType["CAPTURE_ERROR"] = "onCaptureError";
|
|
52
|
+
CaptureEventType["CAPTURE_STOP"] = "onCaptureStop";
|
|
53
|
+
CaptureEventType["CAPTURE_START"] = "onCaptureStart";
|
|
54
|
+
CaptureEventType["STORAGE_WARNING"] = "onStorageWarning";
|
|
55
|
+
CaptureEventType["CAPTURE_PAUSE"] = "onCapturePause";
|
|
56
|
+
CaptureEventType["CAPTURE_RESUME"] = "onCaptureResume";
|
|
57
|
+
CaptureEventType["OVERLAY_ERROR"] = "onOverlayError";
|
|
58
|
+
return CaptureEventType;
|
|
59
|
+
}({});
|
|
60
|
+
|
|
61
|
+
// ============================================================================
|
|
62
|
+
// Basic Types
|
|
63
|
+
// ============================================================================
|
|
64
|
+
|
|
65
|
+
/**
|
|
66
|
+
* Unit type for capture region coordinates
|
|
67
|
+
*/
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* Position preset for overlay placement
|
|
71
|
+
*/
|
|
72
|
+
|
|
73
|
+
// ============================================================================
|
|
74
|
+
// Capture Configuration
|
|
75
|
+
// ============================================================================
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Custom capture region specification
|
|
79
|
+
*/
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* File naming configuration
|
|
83
|
+
*/
|
|
84
|
+
|
|
85
|
+
/**
|
|
86
|
+
* Notification customization options for the foreground service
|
|
87
|
+
*/
|
|
88
|
+
|
|
89
|
+
/**
|
|
90
|
+
* Capture behavior configuration
|
|
91
|
+
*/
|
|
92
|
+
|
|
93
|
+
/**
|
|
94
|
+
* Image processing configuration
|
|
95
|
+
*/
|
|
96
|
+
|
|
97
|
+
/**
|
|
98
|
+
* Storage configuration
|
|
99
|
+
*/
|
|
100
|
+
|
|
101
|
+
/**
|
|
102
|
+
* Performance tuning configuration
|
|
103
|
+
*/
|
|
104
|
+
|
|
105
|
+
/**
|
|
106
|
+
* Configuration options for screen capture
|
|
107
|
+
*/
|
|
108
|
+
|
|
109
|
+
// ============================================================================
|
|
110
|
+
// Overlay Configuration
|
|
111
|
+
// ============================================================================
|
|
112
|
+
|
|
113
|
+
/**
|
|
114
|
+
* Custom position coordinates for overlay placement
|
|
115
|
+
*/
|
|
116
|
+
|
|
117
|
+
/**
|
|
118
|
+
* Overlay position - either a preset string or custom coordinates
|
|
119
|
+
*/
|
|
120
|
+
|
|
121
|
+
/**
|
|
122
|
+
* Text overlay style configuration
|
|
123
|
+
*/
|
|
124
|
+
|
|
125
|
+
/**
|
|
126
|
+
* Text overlay configuration
|
|
127
|
+
*/
|
|
128
|
+
|
|
129
|
+
/**
|
|
130
|
+
* Image size configuration
|
|
131
|
+
*/
|
|
132
|
+
|
|
133
|
+
/**
|
|
134
|
+
* Image overlay configuration
|
|
135
|
+
*/
|
|
136
|
+
|
|
137
|
+
/**
|
|
138
|
+
* Union type for all overlay configurations
|
|
139
|
+
*/
|
|
140
|
+
|
|
141
|
+
// ============================================================================
|
|
142
|
+
// Session and Status
|
|
143
|
+
// ============================================================================
|
|
144
|
+
|
|
145
|
+
/**
|
|
146
|
+
* Information about an active capture session
|
|
147
|
+
*/
|
|
148
|
+
|
|
149
|
+
/**
|
|
150
|
+
* Current capture status
|
|
151
|
+
*/
|
|
152
|
+
|
|
153
|
+
// ============================================================================
|
|
154
|
+
// Event Interfaces
|
|
155
|
+
// ============================================================================
|
|
156
|
+
|
|
157
|
+
/**
|
|
158
|
+
* Re-export event types from NativeFrameCapture for consistency
|
|
159
|
+
* These are defined in NativeFrameCapture.ts for codegen compatibility
|
|
160
|
+
*/
|
|
161
|
+
|
|
162
|
+
/**
|
|
163
|
+
* Union type for all event callbacks
|
|
164
|
+
*/
|
|
165
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["CaptureState","PermissionStatus","CaptureErrorCode","CaptureEventType"],"sourceRoot":"..\\..\\src","sources":["types.ts"],"mappings":";;AAAA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAYA,YAAY,0BAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAZA,YAAY;EAAA,OAAZA,YAAY;AAAA;;AAOxB;AACA;AACA;AACA,WAAYC,gBAAgB,0BAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAA,OAAhBA,gBAAgB;AAAA;;AAM5B;AACA;AACA;AACA,WAAYC,gBAAgB,0BAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAA,OAAhBA,gBAAgB;AAAA;;AAS5B;AACA;AACA;AACA,WAAYC,gBAAgB,0BAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAA,OAAhBA,gBAAgB;AAAA;;AAW5B;AACA;AACA;;AAEA;AACA;AACA;;AAGA;AACA;AACA;;AAQA;AACA;AACA;;AAEA;AACA;AACA;;AAcA;AACA;AACA;;AAUA;AACA;AACA;;AAmBA;AACA;AACA;;AAMA;AACA;AACA;;AAcA;AACA;AACA;;AAcA;AACA;AACA;;AAYA;AACA;AACA;;AAgBA;AACA;AACA;;AAEA;AACA;AACA;;AAOA;AACA;AACA;;AAGA;AACA;AACA;;AAUA;AACA;AACA;;AAQA;AACA;AACA;;AAMA;AACA;AACA;;AASA;AACA;AACA;;AAGA;AACA;AACA;;AAEA;AACA;AACA;;AAQA;AACA;AACA;;AAOA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAuBA;AACA;AACA","ignoreList":[]}
|