@salve-software/salvetron-react-native 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/LICENSE +21 -0
- package/NitroRnTuiSdk.podspec +31 -0
- package/README.md +90 -0
- package/android/CMakeLists.txt +32 -0
- package/android/build.gradle +148 -0
- package/android/fix-prefab.gradle +51 -0
- package/android/gradle.properties +5 -0
- package/android/src/main/AndroidManifest.xml +2 -0
- package/android/src/main/cpp/cpp-adapter.cpp +9 -0
- package/android/src/main/java/com/margelo/nitro/rntuisdk/HybridRnTuiSdk.kt +235 -0
- package/android/src/main/java/com/margelo/nitro/rntuisdk/PerformanceMonitor.kt +260 -0
- package/android/src/main/java/com/margelo/nitro/rntuisdk/RnTuiSdkPackage.kt +18 -0
- package/ios/Bridge.h +8 -0
- package/ios/HybridRnTuiSdk.swift +245 -0
- package/ios/PerformanceMonitor.swift +223 -0
- package/lib/commonjs/index.js +17 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/library/client/constants.js +33 -0
- package/lib/commonjs/library/client/constants.js.map +1 -0
- package/lib/commonjs/library/client/index.js +28 -0
- package/lib/commonjs/library/client/index.js.map +1 -0
- package/lib/commonjs/library/client/salvetron-client.js +363 -0
- package/lib/commonjs/library/client/salvetron-client.js.map +1 -0
- package/lib/commonjs/library/device/device-handler.js +80 -0
- package/lib/commonjs/library/device/device-handler.js.map +1 -0
- package/lib/commonjs/library/device/index.js +9 -0
- package/lib/commonjs/library/device/index.js.map +1 -0
- package/lib/commonjs/library/device/types.js +2 -0
- package/lib/commonjs/library/device/types.js.map +1 -0
- package/lib/commonjs/library/device/utils/generate-uuid.js +14 -0
- package/lib/commonjs/library/device/utils/generate-uuid.js.map +1 -0
- package/lib/commonjs/library/index.js +136 -0
- package/lib/commonjs/library/index.js.map +1 -0
- package/lib/commonjs/library/interceptors/index.js +11 -0
- package/lib/commonjs/library/interceptors/index.js.map +1 -0
- package/lib/commonjs/library/interceptors/js-console.js +88 -0
- package/lib/commonjs/library/interceptors/js-console.js.map +1 -0
- package/lib/commonjs/library/interceptors/xhr.js +74 -0
- package/lib/commonjs/library/interceptors/xhr.js.map +1 -0
- package/lib/commonjs/library/network-handler/index.js +17 -0
- package/lib/commonjs/library/network-handler/index.js.map +1 -0
- package/lib/commonjs/library/network-handler/network-handler.js +103 -0
- package/lib/commonjs/library/network-handler/network-handler.js.map +1 -0
- package/lib/commonjs/library/network-handler/types.js +6 -0
- package/lib/commonjs/library/network-handler/types.js.map +1 -0
- package/lib/commonjs/library/network-handler/utils/generate-request-id.js +13 -0
- package/lib/commonjs/library/network-handler/utils/generate-request-id.js.map +1 -0
- package/lib/commonjs/library/network-handler/utils/index.js +41 -0
- package/lib/commonjs/library/network-handler/utils/index.js.map +1 -0
- package/lib/commonjs/library/network-handler/utils/parse-response-headers.js +26 -0
- package/lib/commonjs/library/network-handler/utils/parse-response-headers.js.map +1 -0
- package/lib/commonjs/library/network-handler/utils/read-blob-as-text.js +18 -0
- package/lib/commonjs/library/network-handler/utils/read-blob-as-text.js.map +1 -0
- package/lib/commonjs/library/network-handler/utils/response-to-string.js +35 -0
- package/lib/commonjs/library/network-handler/utils/response-to-string.js.map +1 -0
- package/lib/commonjs/library/network-handler/utils/should-ignore-url.js +13 -0
- package/lib/commonjs/library/network-handler/utils/should-ignore-url.js.map +1 -0
- package/lib/commonjs/library/performance-handler/index.js +13 -0
- package/lib/commonjs/library/performance-handler/index.js.map +1 -0
- package/lib/commonjs/library/performance-handler/performance-handler.js +94 -0
- package/lib/commonjs/library/performance-handler/performance-handler.js.map +1 -0
- package/lib/commonjs/library/performance-handler/types.js +6 -0
- package/lib/commonjs/library/performance-handler/types.js.map +1 -0
- package/lib/commonjs/library/project/index.js +15 -0
- package/lib/commonjs/library/project/index.js.map +1 -0
- package/lib/commonjs/library/project/project-handler.js +31 -0
- package/lib/commonjs/library/project/project-handler.js.map +1 -0
- package/lib/commonjs/library/types.js +2 -0
- package/lib/commonjs/library/types.js.map +1 -0
- package/lib/commonjs/package.json +1 -0
- package/lib/commonjs/specs/rn-tui-sdk.nitro.js +6 -0
- package/lib/commonjs/specs/rn-tui-sdk.nitro.js.map +1 -0
- package/lib/module/index.js +6 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/library/client/constants.js +29 -0
- package/lib/module/library/client/constants.js.map +1 -0
- package/lib/module/library/client/index.js +6 -0
- package/lib/module/library/client/index.js.map +1 -0
- package/lib/module/library/client/salvetron-client.js +359 -0
- package/lib/module/library/client/salvetron-client.js.map +1 -0
- package/lib/module/library/device/device-handler.js +75 -0
- package/lib/module/library/device/device-handler.js.map +1 -0
- package/lib/module/library/device/index.js +5 -0
- package/lib/module/library/device/index.js.map +1 -0
- package/lib/module/library/device/types.js +2 -0
- package/lib/module/library/device/types.js.map +1 -0
- package/lib/module/library/device/utils/generate-uuid.js +10 -0
- package/lib/module/library/device/utils/generate-uuid.js.map +1 -0
- package/lib/module/library/index.js +135 -0
- package/lib/module/library/index.js.map +1 -0
- package/lib/module/library/interceptors/index.js +7 -0
- package/lib/module/library/interceptors/index.js.map +1 -0
- package/lib/module/library/interceptors/js-console.js +83 -0
- package/lib/module/library/interceptors/js-console.js.map +1 -0
- package/lib/module/library/interceptors/xhr.js +69 -0
- package/lib/module/library/interceptors/xhr.js.map +1 -0
- package/lib/module/library/network-handler/index.js +4 -0
- package/lib/module/library/network-handler/index.js.map +1 -0
- package/lib/module/library/network-handler/network-handler.js +98 -0
- package/lib/module/library/network-handler/network-handler.js.map +1 -0
- package/lib/module/library/network-handler/types.js +4 -0
- package/lib/module/library/network-handler/types.js.map +1 -0
- package/lib/module/library/network-handler/utils/generate-request-id.js +9 -0
- package/lib/module/library/network-handler/utils/generate-request-id.js.map +1 -0
- package/lib/module/library/network-handler/utils/index.js +8 -0
- package/lib/module/library/network-handler/utils/index.js.map +1 -0
- package/lib/module/library/network-handler/utils/parse-response-headers.js +22 -0
- package/lib/module/library/network-handler/utils/parse-response-headers.js.map +1 -0
- package/lib/module/library/network-handler/utils/read-blob-as-text.js +14 -0
- package/lib/module/library/network-handler/utils/read-blob-as-text.js.map +1 -0
- package/lib/module/library/network-handler/utils/response-to-string.js +31 -0
- package/lib/module/library/network-handler/utils/response-to-string.js.map +1 -0
- package/lib/module/library/network-handler/utils/should-ignore-url.js +9 -0
- package/lib/module/library/network-handler/utils/should-ignore-url.js.map +1 -0
- package/lib/module/library/performance-handler/index.js +4 -0
- package/lib/module/library/performance-handler/index.js.map +1 -0
- package/lib/module/library/performance-handler/performance-handler.js +89 -0
- package/lib/module/library/performance-handler/performance-handler.js.map +1 -0
- package/lib/module/library/performance-handler/types.js +4 -0
- package/lib/module/library/performance-handler/types.js.map +1 -0
- package/lib/module/library/project/index.js +6 -0
- package/lib/module/library/project/index.js.map +1 -0
- package/lib/module/library/project/project-handler.js +26 -0
- package/lib/module/library/project/project-handler.js.map +1 -0
- package/lib/module/library/types.js +2 -0
- package/lib/module/library/types.js.map +1 -0
- package/lib/module/specs/rn-tui-sdk.nitro.js +4 -0
- package/lib/module/specs/rn-tui-sdk.nitro.js.map +1 -0
- package/lib/typescript/src/index.d.ts +4 -0
- package/lib/typescript/src/index.d.ts.map +1 -0
- package/lib/typescript/src/library/client/constants.d.ts +23 -0
- package/lib/typescript/src/library/client/constants.d.ts.map +1 -0
- package/lib/typescript/src/library/client/index.d.ts +4 -0
- package/lib/typescript/src/library/client/index.d.ts.map +1 -0
- package/lib/typescript/src/library/client/salvetron-client.d.ts +73 -0
- package/lib/typescript/src/library/client/salvetron-client.d.ts.map +1 -0
- package/lib/typescript/src/library/device/__tests__/device-handler.test.d.ts +2 -0
- package/lib/typescript/src/library/device/__tests__/device-handler.test.d.ts.map +1 -0
- package/lib/typescript/src/library/device/device-handler.d.ts +11 -0
- package/lib/typescript/src/library/device/device-handler.d.ts.map +1 -0
- package/lib/typescript/src/library/device/index.d.ts +3 -0
- package/lib/typescript/src/library/device/index.d.ts.map +1 -0
- package/lib/typescript/src/library/device/types.d.ts +8 -0
- package/lib/typescript/src/library/device/types.d.ts.map +1 -0
- package/lib/typescript/src/library/device/utils/generate-uuid.d.ts +2 -0
- package/lib/typescript/src/library/device/utils/generate-uuid.d.ts.map +1 -0
- package/lib/typescript/src/library/index.d.ts +106 -0
- package/lib/typescript/src/library/index.d.ts.map +1 -0
- package/lib/typescript/src/library/interceptors/__tests__/js-console.test.d.ts +2 -0
- package/lib/typescript/src/library/interceptors/__tests__/js-console.test.d.ts.map +1 -0
- package/lib/typescript/src/library/interceptors/__tests__/xhr.test.d.ts +2 -0
- package/lib/typescript/src/library/interceptors/__tests__/xhr.test.d.ts.map +1 -0
- package/lib/typescript/src/library/interceptors/index.d.ts +5 -0
- package/lib/typescript/src/library/interceptors/index.d.ts.map +1 -0
- package/lib/typescript/src/library/interceptors/js-console.d.ts +17 -0
- package/lib/typescript/src/library/interceptors/js-console.d.ts.map +1 -0
- package/lib/typescript/src/library/interceptors/xhr.d.ts +14 -0
- package/lib/typescript/src/library/interceptors/xhr.d.ts.map +1 -0
- package/lib/typescript/src/library/network-handler/__tests__/network-handler.test.d.ts +2 -0
- package/lib/typescript/src/library/network-handler/__tests__/network-handler.test.d.ts.map +1 -0
- package/lib/typescript/src/library/network-handler/index.d.ts +2 -0
- package/lib/typescript/src/library/network-handler/index.d.ts.map +1 -0
- package/lib/typescript/src/library/network-handler/network-handler.d.ts +19 -0
- package/lib/typescript/src/library/network-handler/network-handler.d.ts.map +1 -0
- package/lib/typescript/src/library/network-handler/types.d.ts +6 -0
- package/lib/typescript/src/library/network-handler/types.d.ts.map +1 -0
- package/lib/typescript/src/library/network-handler/utils/__tests__/generate-request-id.test.d.ts +2 -0
- package/lib/typescript/src/library/network-handler/utils/__tests__/generate-request-id.test.d.ts.map +1 -0
- package/lib/typescript/src/library/network-handler/utils/__tests__/parse-response-headers.test.d.ts +2 -0
- package/lib/typescript/src/library/network-handler/utils/__tests__/parse-response-headers.test.d.ts.map +1 -0
- package/lib/typescript/src/library/network-handler/utils/__tests__/read-blob-as-text.test.d.ts +2 -0
- package/lib/typescript/src/library/network-handler/utils/__tests__/read-blob-as-text.test.d.ts.map +1 -0
- package/lib/typescript/src/library/network-handler/utils/__tests__/response-to-string.test.d.ts +2 -0
- package/lib/typescript/src/library/network-handler/utils/__tests__/response-to-string.test.d.ts.map +1 -0
- package/lib/typescript/src/library/network-handler/utils/__tests__/should-ignore-url.test.d.ts +2 -0
- package/lib/typescript/src/library/network-handler/utils/__tests__/should-ignore-url.test.d.ts.map +1 -0
- package/lib/typescript/src/library/network-handler/utils/generate-request-id.d.ts +5 -0
- package/lib/typescript/src/library/network-handler/utils/generate-request-id.d.ts.map +1 -0
- package/lib/typescript/src/library/network-handler/utils/index.d.ts +6 -0
- package/lib/typescript/src/library/network-handler/utils/index.d.ts.map +1 -0
- package/lib/typescript/src/library/network-handler/utils/parse-response-headers.d.ts +5 -0
- package/lib/typescript/src/library/network-handler/utils/parse-response-headers.d.ts.map +1 -0
- package/lib/typescript/src/library/network-handler/utils/read-blob-as-text.d.ts +5 -0
- package/lib/typescript/src/library/network-handler/utils/read-blob-as-text.d.ts.map +1 -0
- package/lib/typescript/src/library/network-handler/utils/response-to-string.d.ts +5 -0
- package/lib/typescript/src/library/network-handler/utils/response-to-string.d.ts.map +1 -0
- package/lib/typescript/src/library/network-handler/utils/should-ignore-url.d.ts +5 -0
- package/lib/typescript/src/library/network-handler/utils/should-ignore-url.d.ts.map +1 -0
- package/lib/typescript/src/library/performance-handler/index.d.ts +3 -0
- package/lib/typescript/src/library/performance-handler/index.d.ts.map +1 -0
- package/lib/typescript/src/library/performance-handler/performance-handler.d.ts +27 -0
- package/lib/typescript/src/library/performance-handler/performance-handler.d.ts.map +1 -0
- package/lib/typescript/src/library/performance-handler/types.d.ts +20 -0
- package/lib/typescript/src/library/performance-handler/types.d.ts.map +1 -0
- package/lib/typescript/src/library/project/index.d.ts +4 -0
- package/lib/typescript/src/library/project/index.d.ts.map +1 -0
- package/lib/typescript/src/library/project/project-handler.d.ts +7 -0
- package/lib/typescript/src/library/project/project-handler.d.ts.map +1 -0
- package/lib/typescript/src/library/types.d.ts +39 -0
- package/lib/typescript/src/library/types.d.ts.map +1 -0
- package/lib/typescript/src/specs/rn-tui-sdk.nitro.d.ts +100 -0
- package/lib/typescript/src/specs/rn-tui-sdk.nitro.d.ts.map +1 -0
- package/nitro.json +24 -0
- package/nitrogen/generated/.gitattributes +1 -0
- package/nitrogen/generated/android/NitroRnTuiSdk+autolinking.cmake +81 -0
- package/nitrogen/generated/android/NitroRnTuiSdk+autolinking.gradle +27 -0
- package/nitrogen/generated/android/NitroRnTuiSdkOnLoad.cpp +58 -0
- package/nitrogen/generated/android/NitroRnTuiSdkOnLoad.hpp +34 -0
- package/nitrogen/generated/android/c++/JDeviceInfoResult.hpp +69 -0
- package/nitrogen/generated/android/c++/JFunc_void_NativeLogEntry.hpp +80 -0
- package/nitrogen/generated/android/c++/JFunc_void_PerformanceMetrics.hpp +77 -0
- package/nitrogen/generated/android/c++/JHybridNitroRnTuiSdkSpec.cpp +124 -0
- package/nitrogen/generated/android/c++/JHybridNitroRnTuiSdkSpec.hpp +74 -0
- package/nitrogen/generated/android/c++/JNativeLogEntry.hpp +71 -0
- package/nitrogen/generated/android/c++/JNativeLogLevel.hpp +64 -0
- package/nitrogen/generated/android/c++/JPerformanceMetrics.hpp +69 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rntuisdk/DeviceInfoResult.kt +47 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rntuisdk/Func_void_NativeLogEntry.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rntuisdk/Func_void_PerformanceMetrics.kt +80 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rntuisdk/HybridNitroRnTuiSdkSpec.kt +108 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rntuisdk/NativeLogEntry.kt +47 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rntuisdk/NativeLogLevel.kt +25 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rntuisdk/NitroRnTuiSdkOnLoad.kt +35 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rntuisdk/PerformanceMetrics.kt +47 -0
- package/nitrogen/generated/ios/NitroRnTuiSdk+autolinking.rb +62 -0
- package/nitrogen/generated/ios/NitroRnTuiSdk-Swift-Cxx-Bridge.cpp +49 -0
- package/nitrogen/generated/ios/NitroRnTuiSdk-Swift-Cxx-Bridge.hpp +185 -0
- package/nitrogen/generated/ios/NitroRnTuiSdk-Swift-Cxx-Umbrella.hpp +58 -0
- package/nitrogen/generated/ios/NitroRnTuiSdkAutolinking.mm +33 -0
- package/nitrogen/generated/ios/NitroRnTuiSdkAutolinking.swift +26 -0
- package/nitrogen/generated/ios/c++/HybridNitroRnTuiSdkSpecSwift.cpp +11 -0
- package/nitrogen/generated/ios/c++/HybridNitroRnTuiSdkSpecSwift.hpp +175 -0
- package/nitrogen/generated/ios/swift/DeviceInfoResult.swift +44 -0
- package/nitrogen/generated/ios/swift/Func_void_NativeLogEntry.swift +46 -0
- package/nitrogen/generated/ios/swift/Func_void_PerformanceMetrics.swift +46 -0
- package/nitrogen/generated/ios/swift/HybridNitroRnTuiSdkSpec.swift +66 -0
- package/nitrogen/generated/ios/swift/HybridNitroRnTuiSdkSpec_cxx.swift +289 -0
- package/nitrogen/generated/ios/swift/NativeLogEntry.swift +44 -0
- package/nitrogen/generated/ios/swift/NativeLogLevel.swift +48 -0
- package/nitrogen/generated/ios/swift/PerformanceMetrics.swift +44 -0
- package/nitrogen/generated/shared/c++/DeviceInfoResult.hpp +95 -0
- package/nitrogen/generated/shared/c++/HybridNitroRnTuiSdkSpec.cpp +32 -0
- package/nitrogen/generated/shared/c++/HybridNitroRnTuiSdkSpec.hpp +83 -0
- package/nitrogen/generated/shared/c++/NativeLogEntry.hpp +97 -0
- package/nitrogen/generated/shared/c++/NativeLogLevel.hpp +84 -0
- package/nitrogen/generated/shared/c++/PerformanceMetrics.hpp +95 -0
- package/package.json +128 -0
- package/react-native.config.js +16 -0
- package/src/index.ts +7 -0
- package/src/library/client/constants.ts +35 -0
- package/src/library/client/index.ts +9 -0
- package/src/library/client/salvetron-client.ts +433 -0
- package/src/library/device/__tests__/device-handler.test.ts +86 -0
- package/src/library/device/device-handler.ts +85 -0
- package/src/library/device/index.ts +3 -0
- package/src/library/device/types.ts +7 -0
- package/src/library/device/utils/generate-uuid.ts +7 -0
- package/src/library/index.ts +158 -0
- package/src/library/interceptors/__tests__/js-console.test.ts +186 -0
- package/src/library/interceptors/__tests__/xhr.test.ts +313 -0
- package/src/library/interceptors/index.ts +5 -0
- package/src/library/interceptors/js-console.ts +93 -0
- package/src/library/interceptors/xhr.ts +123 -0
- package/src/library/network-handler/__tests__/network-handler.test.ts +265 -0
- package/src/library/network-handler/index.ts +1 -0
- package/src/library/network-handler/network-handler.ts +141 -0
- package/src/library/network-handler/types.ts +6 -0
- package/src/library/network-handler/utils/__tests__/generate-request-id.test.ts +22 -0
- package/src/library/network-handler/utils/__tests__/parse-response-headers.test.ts +71 -0
- package/src/library/network-handler/utils/__tests__/read-blob-as-text.test.ts +79 -0
- package/src/library/network-handler/utils/__tests__/response-to-string.test.ts +85 -0
- package/src/library/network-handler/utils/__tests__/should-ignore-url.test.ts +45 -0
- package/src/library/network-handler/utils/generate-request-id.ts +6 -0
- package/src/library/network-handler/utils/index.ts +5 -0
- package/src/library/network-handler/utils/parse-response-headers.ts +20 -0
- package/src/library/network-handler/utils/read-blob-as-text.ts +11 -0
- package/src/library/network-handler/utils/response-to-string.ts +32 -0
- package/src/library/network-handler/utils/should-ignore-url.ts +6 -0
- package/src/library/performance-handler/index.ts +2 -0
- package/src/library/performance-handler/performance-handler.ts +104 -0
- package/src/library/performance-handler/types.ts +22 -0
- package/src/library/project/index.ts +4 -0
- package/src/library/project/project-handler.ts +28 -0
- package/src/library/types.ts +78 -0
- package/src/specs/rn-tui-sdk.nitro.ts +114 -0
|
@@ -0,0 +1,359 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* WebSocket client for communicating with Salvetron CLI
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import { Platform } from 'react-native';
|
|
8
|
+
import { NitroModules } from 'react-native-nitro-modules';
|
|
9
|
+
import { DEFAULT_IGNORED_URLS, RECONNECT_CONFIG, DEFAULT_CONFIG } from './constants';
|
|
10
|
+
import { NetworkHandler } from '../network-handler';
|
|
11
|
+
import { PerformanceHandler } from '../performance-handler';
|
|
12
|
+
import { deviceHandler } from '../device';
|
|
13
|
+
import { projectHandler } from '../project';
|
|
14
|
+
import { xhrInterceptor, jsConsoleInterceptor } from '../interceptors';
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* Salvetron WebSocket Client
|
|
18
|
+
*/
|
|
19
|
+
export class SalvetronClient {
|
|
20
|
+
ws = null;
|
|
21
|
+
messageQueue = [];
|
|
22
|
+
reconnectAttempts = 0;
|
|
23
|
+
reconnectTimeout = null;
|
|
24
|
+
isConnecting = false;
|
|
25
|
+
manualDisconnect = false;
|
|
26
|
+
|
|
27
|
+
// Native log capture
|
|
28
|
+
nitroRnTuiSdk = null;
|
|
29
|
+
nativeLogCaptureEnabled = false;
|
|
30
|
+
|
|
31
|
+
// Network handler
|
|
32
|
+
networkHandler = null;
|
|
33
|
+
|
|
34
|
+
// Performance handler
|
|
35
|
+
performanceHandler = null;
|
|
36
|
+
performanceMonitoringEnabled = false;
|
|
37
|
+
constructor() {
|
|
38
|
+
this.config = {
|
|
39
|
+
host: DEFAULT_CONFIG.host,
|
|
40
|
+
port: DEFAULT_CONFIG.port,
|
|
41
|
+
enableNetworkCapture: DEFAULT_CONFIG.enableNetworkCapture,
|
|
42
|
+
enablePerformanceMonitoring: DEFAULT_CONFIG.enablePerformanceMonitoring,
|
|
43
|
+
ignoredUrls: [],
|
|
44
|
+
onConnect: () => {},
|
|
45
|
+
onDisconnect: () => {},
|
|
46
|
+
onError: () => {}
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* Connect to Salvetron CLI
|
|
52
|
+
*/
|
|
53
|
+
connect(userConfig = {}) {
|
|
54
|
+
if (typeof __DEV__ !== 'undefined' && !__DEV__) {
|
|
55
|
+
console.warn('[Salvetron] SDK only works in development mode');
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
this.config = {
|
|
59
|
+
host: userConfig.host ?? DEFAULT_CONFIG.host,
|
|
60
|
+
port: userConfig.port ?? DEFAULT_CONFIG.port,
|
|
61
|
+
enableNetworkCapture: userConfig.enableNetworkCapture ?? DEFAULT_CONFIG.enableNetworkCapture,
|
|
62
|
+
enablePerformanceMonitoring: userConfig.enablePerformanceMonitoring ?? DEFAULT_CONFIG.enablePerformanceMonitoring,
|
|
63
|
+
ignoredUrls: [...DEFAULT_IGNORED_URLS, ...(userConfig.ignoredUrls ?? [])],
|
|
64
|
+
onConnect: userConfig.onConnect ?? (() => {}),
|
|
65
|
+
onDisconnect: userConfig.onDisconnect ?? (() => {}),
|
|
66
|
+
onError: userConfig.onError ?? (() => {})
|
|
67
|
+
};
|
|
68
|
+
this.manualDisconnect = false;
|
|
69
|
+
this.connectWebSocket();
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* Disconnect from Salvetron
|
|
74
|
+
*/
|
|
75
|
+
disconnect() {
|
|
76
|
+
this.manualDisconnect = true;
|
|
77
|
+
this.cleanup();
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
/**
|
|
81
|
+
* Check if connected
|
|
82
|
+
*/
|
|
83
|
+
isConnected() {
|
|
84
|
+
return this.ws?.readyState === WebSocket.OPEN;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
/**
|
|
88
|
+
* Send a log event to Salvetron
|
|
89
|
+
*/
|
|
90
|
+
sendLog(level, message, metadata) {
|
|
91
|
+
const event = {
|
|
92
|
+
type: 'log',
|
|
93
|
+
source: 'js',
|
|
94
|
+
level,
|
|
95
|
+
message,
|
|
96
|
+
timestamp: Date.now(),
|
|
97
|
+
metadata,
|
|
98
|
+
projectId: projectHandler.getProjectId()
|
|
99
|
+
};
|
|
100
|
+
this.send(event);
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
/**
|
|
104
|
+
* Start capturing native platform logs
|
|
105
|
+
*/
|
|
106
|
+
startNativeLogCapture() {
|
|
107
|
+
if (this.nativeLogCaptureEnabled) {
|
|
108
|
+
console.warn('[Salvetron] Native log capture already enabled');
|
|
109
|
+
return false;
|
|
110
|
+
}
|
|
111
|
+
try {
|
|
112
|
+
const nitro = this.getNitroRnTuiSdk();
|
|
113
|
+
const success = nitro.startLogCapture(log => {
|
|
114
|
+
this.handleNativeLog(log);
|
|
115
|
+
});
|
|
116
|
+
if (success) {
|
|
117
|
+
this.nativeLogCaptureEnabled = true;
|
|
118
|
+
console.log('[Salvetron] Native log capture enabled');
|
|
119
|
+
}
|
|
120
|
+
return success;
|
|
121
|
+
} catch (error) {
|
|
122
|
+
console.error('[Salvetron] Failed to start native log capture:', error);
|
|
123
|
+
return false;
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
/**
|
|
128
|
+
* Stop capturing native platform logs
|
|
129
|
+
*/
|
|
130
|
+
stopNativeLogCapture() {
|
|
131
|
+
if (!this.nativeLogCaptureEnabled) return;
|
|
132
|
+
try {
|
|
133
|
+
const nitro = this.getNitroRnTuiSdk();
|
|
134
|
+
nitro.stopLogCapture();
|
|
135
|
+
this.nativeLogCaptureEnabled = false;
|
|
136
|
+
console.log('[Salvetron] Native log capture disabled');
|
|
137
|
+
} catch (error) {
|
|
138
|
+
console.error('[Salvetron] Failed to stop native log capture:', error);
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
/**
|
|
143
|
+
* Check if native log capture is active
|
|
144
|
+
*/
|
|
145
|
+
isNativeLogCaptureEnabled() {
|
|
146
|
+
return this.nativeLogCaptureEnabled;
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
/**
|
|
150
|
+
* Start performance monitoring
|
|
151
|
+
*/
|
|
152
|
+
startPerformanceMonitoring() {
|
|
153
|
+
if (this.performanceMonitoringEnabled) {
|
|
154
|
+
console.warn('[Salvetron] Performance monitoring already enabled');
|
|
155
|
+
return false;
|
|
156
|
+
}
|
|
157
|
+
this.performanceHandler = new PerformanceHandler({
|
|
158
|
+
nitroRnTuiSdk: this.getNitroRnTuiSdk(),
|
|
159
|
+
onEvent: event => this.send(event)
|
|
160
|
+
});
|
|
161
|
+
const success = this.performanceHandler.start();
|
|
162
|
+
if (success) {
|
|
163
|
+
this.performanceMonitoringEnabled = true;
|
|
164
|
+
console.log('[Salvetron] Performance monitoring enabled');
|
|
165
|
+
}
|
|
166
|
+
return success;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
/**
|
|
170
|
+
* Stop performance monitoring
|
|
171
|
+
*/
|
|
172
|
+
stopPerformanceMonitoring() {
|
|
173
|
+
if (!this.performanceMonitoringEnabled) return;
|
|
174
|
+
try {
|
|
175
|
+
if (this.performanceHandler) {
|
|
176
|
+
this.performanceHandler.stop();
|
|
177
|
+
this.performanceHandler = null;
|
|
178
|
+
}
|
|
179
|
+
this.performanceMonitoringEnabled = false;
|
|
180
|
+
console.log('[Salvetron] Performance monitoring disabled');
|
|
181
|
+
} catch (error) {
|
|
182
|
+
console.error('[Salvetron] Failed to stop performance monitoring:', error);
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
/**
|
|
187
|
+
* Check if performance monitoring is active
|
|
188
|
+
*/
|
|
189
|
+
isPerformanceMonitoringEnabled() {
|
|
190
|
+
return this.performanceMonitoringEnabled;
|
|
191
|
+
}
|
|
192
|
+
getNitroRnTuiSdk() {
|
|
193
|
+
if (!this.nitroRnTuiSdk) {
|
|
194
|
+
this.nitroRnTuiSdk = NitroModules.createHybridObject('NitroRnTuiSdk');
|
|
195
|
+
}
|
|
196
|
+
return this.nitroRnTuiSdk;
|
|
197
|
+
}
|
|
198
|
+
handleNativeLog(log) {
|
|
199
|
+
const platform = Platform.OS;
|
|
200
|
+
const level = log.level === 'verbose' ? 'debug' : log.level;
|
|
201
|
+
const event = {
|
|
202
|
+
type: 'native',
|
|
203
|
+
source: platform,
|
|
204
|
+
level: level,
|
|
205
|
+
message: log.message,
|
|
206
|
+
timestamp: log.timestamp,
|
|
207
|
+
metadata: log.tag ? {
|
|
208
|
+
tag: log.tag
|
|
209
|
+
} : undefined,
|
|
210
|
+
projectId: projectHandler.getProjectId()
|
|
211
|
+
};
|
|
212
|
+
this.send(event);
|
|
213
|
+
}
|
|
214
|
+
connectWebSocket() {
|
|
215
|
+
jsConsoleInterceptor.start({
|
|
216
|
+
onLog: (level, message, metadata) => this.sendLog(level, message, metadata)
|
|
217
|
+
});
|
|
218
|
+
if (this.isConnecting || this.isConnected()) return;
|
|
219
|
+
this.isConnecting = true;
|
|
220
|
+
const url = `ws://${this.config.host}:${this.config.port}`;
|
|
221
|
+
try {
|
|
222
|
+
this.ws = new WebSocket(url);
|
|
223
|
+
this.ws.onopen = () => {
|
|
224
|
+
this.isConnecting = false;
|
|
225
|
+
this.reconnectAttempts = 0;
|
|
226
|
+
console.log(`[Salvetron] Connected to ${url}`);
|
|
227
|
+
this.config.onConnect();
|
|
228
|
+
this.sendProjectInfo();
|
|
229
|
+
this.sendDeviceInfo();
|
|
230
|
+
this.flushQueue();
|
|
231
|
+
if (this.config.enableNetworkCapture) {
|
|
232
|
+
this.setupNetworkInterception();
|
|
233
|
+
}
|
|
234
|
+
if (this.config.enablePerformanceMonitoring) {
|
|
235
|
+
this.startPerformanceMonitoring();
|
|
236
|
+
}
|
|
237
|
+
this.startNativeLogCapture();
|
|
238
|
+
};
|
|
239
|
+
this.ws.onclose = () => {
|
|
240
|
+
this.isConnecting = false;
|
|
241
|
+
console.log('[Salvetron] Disconnected');
|
|
242
|
+
this.config.onDisconnect();
|
|
243
|
+
if (!this.manualDisconnect) {
|
|
244
|
+
this.scheduleReconnect();
|
|
245
|
+
}
|
|
246
|
+
};
|
|
247
|
+
this.ws.onerror = event => {
|
|
248
|
+
this.isConnecting = false;
|
|
249
|
+
const error = new Error('WebSocket error');
|
|
250
|
+
console.error('[Salvetron] Connection error:', event);
|
|
251
|
+
this.config.onError(error);
|
|
252
|
+
};
|
|
253
|
+
this.ws.onmessage = event => {
|
|
254
|
+
console.log('[Salvetron] Received:', event.data);
|
|
255
|
+
};
|
|
256
|
+
} catch (error) {
|
|
257
|
+
this.isConnecting = false;
|
|
258
|
+
console.error('[Salvetron] Failed to create WebSocket:', error);
|
|
259
|
+
this.scheduleReconnect();
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
scheduleReconnect() {
|
|
263
|
+
if (this.manualDisconnect) return;
|
|
264
|
+
if (this.reconnectAttempts >= RECONNECT_CONFIG.maxAttempts) {
|
|
265
|
+
console.warn('[Salvetron] Max reconnection attempts reached');
|
|
266
|
+
return;
|
|
267
|
+
}
|
|
268
|
+
const delay = Math.min(RECONNECT_CONFIG.baseDelay * Math.pow(2, this.reconnectAttempts), RECONNECT_CONFIG.maxDelay);
|
|
269
|
+
this.reconnectAttempts++;
|
|
270
|
+
console.log(`[Salvetron] Reconnecting in ${delay}ms (attempt ${this.reconnectAttempts})`);
|
|
271
|
+
this.reconnectTimeout = setTimeout(() => {
|
|
272
|
+
this.connectWebSocket();
|
|
273
|
+
}, delay);
|
|
274
|
+
}
|
|
275
|
+
cleanup() {
|
|
276
|
+
if (this.reconnectTimeout) {
|
|
277
|
+
clearTimeout(this.reconnectTimeout);
|
|
278
|
+
this.reconnectTimeout = null;
|
|
279
|
+
}
|
|
280
|
+
this.stopNativeLogCapture();
|
|
281
|
+
this.stopPerformanceMonitoring();
|
|
282
|
+
xhrInterceptor.disable();
|
|
283
|
+
jsConsoleInterceptor.stop();
|
|
284
|
+
if (this.networkHandler) {
|
|
285
|
+
this.networkHandler.clear();
|
|
286
|
+
this.networkHandler = null;
|
|
287
|
+
}
|
|
288
|
+
if (this.ws) {
|
|
289
|
+
this.ws.onopen = null;
|
|
290
|
+
this.ws.onclose = null;
|
|
291
|
+
this.ws.onerror = null;
|
|
292
|
+
this.ws.onmessage = null;
|
|
293
|
+
this.ws.close();
|
|
294
|
+
this.ws = null;
|
|
295
|
+
}
|
|
296
|
+
this.messageQueue = [];
|
|
297
|
+
this.reconnectAttempts = 0;
|
|
298
|
+
this.isConnecting = false;
|
|
299
|
+
}
|
|
300
|
+
send(event) {
|
|
301
|
+
if (this.isConnected() && this.ws) {
|
|
302
|
+
try {
|
|
303
|
+
this.ws.send(JSON.stringify(event));
|
|
304
|
+
} catch (error) {
|
|
305
|
+
console.error('[Salvetron] Failed to send event:', error);
|
|
306
|
+
this.messageQueue.push(event);
|
|
307
|
+
}
|
|
308
|
+
} else {
|
|
309
|
+
this.messageQueue.push(event);
|
|
310
|
+
}
|
|
311
|
+
}
|
|
312
|
+
sendProjectInfo() {
|
|
313
|
+
try {
|
|
314
|
+
const projectInfo = projectHandler.getProjectInfo();
|
|
315
|
+
const event = {
|
|
316
|
+
type: 'project_info',
|
|
317
|
+
...projectInfo
|
|
318
|
+
};
|
|
319
|
+
this.send(event);
|
|
320
|
+
console.log(`[Salvetron] Project registered: ${projectInfo.appName} (${projectInfo.projectId})`);
|
|
321
|
+
} catch (error) {
|
|
322
|
+
console.warn('[Salvetron] Failed to send project info:', error);
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
async sendDeviceInfo() {
|
|
326
|
+
try {
|
|
327
|
+
const deviceInfo = deviceHandler.getDeviceInfo();
|
|
328
|
+
const projectId = projectHandler.getProjectId();
|
|
329
|
+
const event = {
|
|
330
|
+
type: 'device_info',
|
|
331
|
+
...deviceInfo,
|
|
332
|
+
projectId
|
|
333
|
+
};
|
|
334
|
+
this.send(event);
|
|
335
|
+
console.log(`[Salvetron] Device registered: ${deviceInfo.deviceName} (${deviceInfo.deviceId})`);
|
|
336
|
+
} catch (error) {
|
|
337
|
+
console.warn('[Salvetron] Failed to send device info:', error);
|
|
338
|
+
}
|
|
339
|
+
}
|
|
340
|
+
flushQueue() {
|
|
341
|
+
while (this.messageQueue.length > 0 && this.isConnected()) {
|
|
342
|
+
const event = this.messageQueue.shift();
|
|
343
|
+
if (event) {
|
|
344
|
+
this.send(event);
|
|
345
|
+
}
|
|
346
|
+
}
|
|
347
|
+
}
|
|
348
|
+
setupNetworkInterception() {
|
|
349
|
+
this.networkHandler = new NetworkHandler({
|
|
350
|
+
ignoredUrls: this.config.ignoredUrls,
|
|
351
|
+
onEvent: event => this.send(event)
|
|
352
|
+
});
|
|
353
|
+
const success = xhrInterceptor.enable(this.networkHandler.getCallbacks());
|
|
354
|
+
if (success) {
|
|
355
|
+
console.log('[Salvetron] Network capture enabled');
|
|
356
|
+
}
|
|
357
|
+
}
|
|
358
|
+
}
|
|
359
|
+
//# sourceMappingURL=salvetron-client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Platform","NitroModules","DEFAULT_IGNORED_URLS","RECONNECT_CONFIG","DEFAULT_CONFIG","NetworkHandler","PerformanceHandler","deviceHandler","projectHandler","xhrInterceptor","jsConsoleInterceptor","SalvetronClient","ws","messageQueue","reconnectAttempts","reconnectTimeout","isConnecting","manualDisconnect","nitroRnTuiSdk","nativeLogCaptureEnabled","networkHandler","performanceHandler","performanceMonitoringEnabled","constructor","config","host","port","enableNetworkCapture","enablePerformanceMonitoring","ignoredUrls","onConnect","onDisconnect","onError","connect","userConfig","__DEV__","console","warn","connectWebSocket","disconnect","cleanup","isConnected","readyState","WebSocket","OPEN","sendLog","level","message","metadata","event","type","source","timestamp","Date","now","projectId","getProjectId","send","startNativeLogCapture","nitro","getNitroRnTuiSdk","success","startLogCapture","log","handleNativeLog","error","stopNativeLogCapture","stopLogCapture","isNativeLogCaptureEnabled","startPerformanceMonitoring","onEvent","start","stopPerformanceMonitoring","stop","isPerformanceMonitoringEnabled","createHybridObject","platform","OS","tag","undefined","onLog","url","onopen","sendProjectInfo","sendDeviceInfo","flushQueue","setupNetworkInterception","onclose","scheduleReconnect","onerror","Error","onmessage","data","maxAttempts","delay","Math","min","baseDelay","pow","maxDelay","setTimeout","clearTimeout","disable","clear","close","JSON","stringify","push","projectInfo","getProjectInfo","appName","deviceInfo","getDeviceInfo","deviceName","deviceId","length","shift","enable","getCallbacks"],"sourceRoot":"../../../../src","sources":["library/client/salvetron-client.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { Platform } from 'react-native';
|
|
4
|
+
import { NitroRnTuiSdk } from '../../index';
|
|
5
|
+
import { generateUUID } from './utils/generate-uuid';
|
|
6
|
+
export class DeviceHandler {
|
|
7
|
+
cachedDeviceId = null;
|
|
8
|
+
cachedDeviceName = null;
|
|
9
|
+
getOrCreateDeviceId() {
|
|
10
|
+
if (this.cachedDeviceId) {
|
|
11
|
+
return this.cachedDeviceId;
|
|
12
|
+
}
|
|
13
|
+
try {
|
|
14
|
+
const nativeInfo = NitroRnTuiSdk.getDeviceInfo();
|
|
15
|
+
if (nativeInfo.deviceId) {
|
|
16
|
+
this.cachedDeviceId = nativeInfo.deviceId;
|
|
17
|
+
return nativeInfo.deviceId;
|
|
18
|
+
}
|
|
19
|
+
const storedId = NitroRnTuiSdk.getStoredDeviceId();
|
|
20
|
+
if (storedId) {
|
|
21
|
+
this.cachedDeviceId = storedId;
|
|
22
|
+
return storedId;
|
|
23
|
+
}
|
|
24
|
+
const newId = generateUUID();
|
|
25
|
+
NitroRnTuiSdk.storeDeviceId(newId);
|
|
26
|
+
this.cachedDeviceId = newId;
|
|
27
|
+
return newId;
|
|
28
|
+
} catch (err) {
|
|
29
|
+
this.cachedDeviceId = generateUUID();
|
|
30
|
+
return this.cachedDeviceId;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
getDeviceName() {
|
|
34
|
+
if (this.cachedDeviceName) {
|
|
35
|
+
return this.cachedDeviceName;
|
|
36
|
+
}
|
|
37
|
+
const nativeInfo = NitroRnTuiSdk.getDeviceInfo();
|
|
38
|
+
if (nativeInfo.deviceName) {
|
|
39
|
+
this.cachedDeviceName = nativeInfo.deviceName;
|
|
40
|
+
return nativeInfo.deviceName;
|
|
41
|
+
}
|
|
42
|
+
const model = Platform.OS === 'ios' ? 'iOS Device' : 'Android Device';
|
|
43
|
+
this.cachedDeviceName = model;
|
|
44
|
+
return model;
|
|
45
|
+
}
|
|
46
|
+
getAppName() {
|
|
47
|
+
try {
|
|
48
|
+
const nativeInfo = NitroRnTuiSdk.getDeviceInfo();
|
|
49
|
+
return nativeInfo.appName || 'React Native App';
|
|
50
|
+
} catch {
|
|
51
|
+
return 'React Native App';
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
getBundleId() {
|
|
55
|
+
try {
|
|
56
|
+
const nativeInfo = NitroRnTuiSdk.getDeviceInfo();
|
|
57
|
+
return nativeInfo.bundleId || '';
|
|
58
|
+
} catch {
|
|
59
|
+
return '';
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
getDeviceInfo() {
|
|
63
|
+
const deviceId = this.getOrCreateDeviceId();
|
|
64
|
+
const deviceName = this.getDeviceName();
|
|
65
|
+
const appName = this.getAppName();
|
|
66
|
+
return {
|
|
67
|
+
deviceId,
|
|
68
|
+
deviceName,
|
|
69
|
+
platform: Platform.OS,
|
|
70
|
+
appName,
|
|
71
|
+
bundleId: this.getBundleId()
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=device-handler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Platform","NitroRnTuiSdk","generateUUID","DeviceHandler","cachedDeviceId","cachedDeviceName","getOrCreateDeviceId","nativeInfo","getDeviceInfo","deviceId","storedId","getStoredDeviceId","newId","storeDeviceId","err","getDeviceName","deviceName","model","OS","getAppName","appName","getBundleId","bundleId","platform"],"sourceRoot":"../../../../src","sources":["library/device/device-handler.ts"],"mappings":";;AAAA,SAASA,QAAQ,QAAQ,cAAc;AACvC,SAASC,aAAa,QAAQ,aAAa;AAC3C,SAASC,YAAY,QAAQ,uBAAuB;AAGpD,OAAO,MAAMC,aAAa,CAAC;EACjBC,cAAc,GAAkB,IAAI;EACpCC,gBAAgB,GAAkB,IAAI;EAEtCC,mBAAmBA,CAAA,EAAW;IACpC,IAAI,IAAI,CAACF,cAAc,EAAE;MACvB,OAAO,IAAI,CAACA,cAAc;IAC5B;IAEA,IAAI;MACF,MAAMG,UAAU,GAAGN,aAAa,CAACO,aAAa,CAAC,CAAC;MAChD,IAAID,UAAU,CAACE,QAAQ,EAAE;QACvB,IAAI,CAACL,cAAc,GAAGG,UAAU,CAACE,QAAQ;QACzC,OAAOF,UAAU,CAACE,QAAQ;MAC5B;MAEA,MAAMC,QAAQ,GAAGT,aAAa,CAACU,iBAAiB,CAAC,CAAC;MAClD,IAAID,QAAQ,EAAE;QACZ,IAAI,CAACN,cAAc,GAAGM,QAAQ;QAC9B,OAAOA,QAAQ;MACjB;MAEA,MAAME,KAAK,GAAGV,YAAY,CAAC,CAAC;MAC5BD,aAAa,CAACY,aAAa,CAACD,KAAK,CAAC;MAClC,IAAI,CAACR,cAAc,GAAGQ,KAAK;MAC3B,OAAOA,KAAK;IACd,CAAC,CAAC,OAAOE,GAAG,EAAE;MACZ,IAAI,CAACV,cAAc,GAAGF,YAAY,CAAC,CAAC;MACpC,OAAO,IAAI,CAACE,cAAc;IAC5B;EACF;EAEAW,aAAaA,CAAA,EAAW;IACtB,IAAI,IAAI,CAACV,gBAAgB,EAAE;MACzB,OAAO,IAAI,CAACA,gBAAgB;IAC9B;IAEA,MAAME,UAAU,GAAGN,aAAa,CAACO,aAAa,CAAC,CAAC;IAChD,IAAID,UAAU,CAACS,UAAU,EAAE;MACzB,IAAI,CAACX,gBAAgB,GAAGE,UAAU,CAACS,UAAU;MAC7C,OAAOT,UAAU,CAACS,UAAU;IAC9B;IAEA,MAAMC,KAAK,GAAGjB,QAAQ,CAACkB,EAAE,KAAK,KAAK,GAAG,YAAY,GAAG,gBAAgB;IACrE,IAAI,CAACb,gBAAgB,GAAGY,KAAK;IAC7B,OAAOA,KAAK;EACd;EAEAE,UAAUA,CAAA,EAAW;IACnB,IAAI;MACF,MAAMZ,UAAU,GAAGN,aAAa,CAACO,aAAa,CAAC,CAAC;MAChD,OAAOD,UAAU,CAACa,OAAO,IAAI,kBAAkB;IACjD,CAAC,CAAC,MAAM;MACN,OAAO,kBAAkB;IAC3B;EACF;EAEAC,WAAWA,CAAA,EAAW;IACpB,IAAI;MACF,MAAMd,UAAU,GAAGN,aAAa,CAACO,aAAa,CAAC,CAAC;MAChD,OAAOD,UAAU,CAACe,QAAQ,IAAI,EAAE;IAClC,CAAC,CAAC,MAAM;MACN,OAAO,EAAE;IACX;EACF;EAEAd,aAAaA,CAAA,EAAmB;IAC9B,MAAMC,QAAQ,GAAG,IAAI,CAACH,mBAAmB,CAAC,CAAC;IAC3C,MAAMU,UAAU,GAAG,IAAI,CAACD,aAAa,CAAC,CAAC;IACvC,MAAMK,OAAO,GAAG,IAAI,CAACD,UAAU,CAAC,CAAC;IAEjC,OAAO;MACLV,QAAQ;MACRO,UAAU;MACVO,QAAQ,EAAEvB,QAAQ,CAACkB,EAAuB;MAC1CE,OAAO;MACPE,QAAQ,EAAE,IAAI,CAACD,WAAW,CAAC;IAC7B,CAAC;EACH;AACF","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["DeviceHandler","deviceHandler"],"sourceRoot":"../../../../src","sources":["library/device/index.ts"],"mappings":";;AAAA,SAASA,aAAa,QAAQ,kBAAkB;AAEhD,OAAO,MAAMC,aAAa,GAAG,IAAID,aAAa,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../../src","sources":["library/device/types.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
export function generateUUID() {
|
|
4
|
+
return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, c => {
|
|
5
|
+
const r = Math.random() * 16 | 0;
|
|
6
|
+
const v = c === 'x' ? r : r & 0x3 | 0x8;
|
|
7
|
+
return v.toString(16);
|
|
8
|
+
});
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=generate-uuid.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["generateUUID","replace","c","r","Math","random","v","toString"],"sourceRoot":"../../../../../src","sources":["library/device/utils/generate-uuid.ts"],"mappings":";;AAAA,OAAO,SAASA,YAAYA,CAAA,EAAW;EACrC,OAAO,sCAAsC,CAACC,OAAO,CAAC,OAAO,EAAGC,CAAC,IAAK;IACpE,MAAMC,CAAC,GAAIC,IAAI,CAACC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAI,CAAC;IAClC,MAAMC,CAAC,GAAGJ,CAAC,KAAK,GAAG,GAAGC,CAAC,GAAIA,CAAC,GAAG,GAAG,GAAI,GAAG;IACzC,OAAOG,CAAC,CAACC,QAAQ,CAAC,EAAE,CAAC;EACvB,CAAC,CAAC;AACJ","ignoreList":[]}
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Salvetron SDK for React Native
|
|
5
|
+
*
|
|
6
|
+
* Captures network requests and sends them to the Salvetron CLI
|
|
7
|
+
* for debugging and inspection.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```typescript
|
|
11
|
+
* import Salvetron from '@salve-software/salvetron-react-native';
|
|
12
|
+
*
|
|
13
|
+
* if (__DEV__) {
|
|
14
|
+
* Salvetron.connect({
|
|
15
|
+
* host: 'localhost',
|
|
16
|
+
* port: 8765,
|
|
17
|
+
* });
|
|
18
|
+
* }
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
|
|
22
|
+
import { client } from './client';
|
|
23
|
+
/**
|
|
24
|
+
* Salvetron SDK main interface
|
|
25
|
+
*/
|
|
26
|
+
export default {
|
|
27
|
+
/**
|
|
28
|
+
* Connect to Salvetron CLI
|
|
29
|
+
*
|
|
30
|
+
* @param config - Configuration options
|
|
31
|
+
* @example
|
|
32
|
+
* ```typescript
|
|
33
|
+
* Salvetron.connect({
|
|
34
|
+
* host: '192.168.1.100', // Mac IP address
|
|
35
|
+
* port: 8765,
|
|
36
|
+
* enableNetworkCapture: true,
|
|
37
|
+
* ignoredUrls: [/my-internal-api/],
|
|
38
|
+
* onConnect: () => console.log('Connected to Salvetron'),
|
|
39
|
+
* onDisconnect: () => console.log('Disconnected from Salvetron'),
|
|
40
|
+
* });
|
|
41
|
+
* ```
|
|
42
|
+
*/
|
|
43
|
+
connect(config) {
|
|
44
|
+
client.connect(config);
|
|
45
|
+
},
|
|
46
|
+
/**
|
|
47
|
+
* Disconnect from Salvetron CLI
|
|
48
|
+
*/
|
|
49
|
+
disconnect() {
|
|
50
|
+
client.disconnect();
|
|
51
|
+
},
|
|
52
|
+
/**
|
|
53
|
+
* Check if currently connected to Salvetron
|
|
54
|
+
*/
|
|
55
|
+
isConnected() {
|
|
56
|
+
return client.isConnected();
|
|
57
|
+
},
|
|
58
|
+
/**
|
|
59
|
+
* Send a log message (info level)
|
|
60
|
+
* @param message - The log message
|
|
61
|
+
* @param metadata - Optional metadata object
|
|
62
|
+
*/
|
|
63
|
+
log(message, metadata) {
|
|
64
|
+
client.sendLog('info', message, metadata);
|
|
65
|
+
},
|
|
66
|
+
/**
|
|
67
|
+
* Send a debug log message
|
|
68
|
+
* @param message - The log message
|
|
69
|
+
* @param metadata - Optional metadata object
|
|
70
|
+
*/
|
|
71
|
+
debug(message, metadata) {
|
|
72
|
+
client.sendLog('debug', message, metadata);
|
|
73
|
+
},
|
|
74
|
+
/**
|
|
75
|
+
* Send an info log message
|
|
76
|
+
* @param message - The log message
|
|
77
|
+
* @param metadata - Optional metadata object
|
|
78
|
+
*/
|
|
79
|
+
info(message, metadata) {
|
|
80
|
+
client.sendLog('info', message, metadata);
|
|
81
|
+
},
|
|
82
|
+
/**
|
|
83
|
+
* Send a warning log message
|
|
84
|
+
* @param message - The log message
|
|
85
|
+
* @param metadata - Optional metadata object
|
|
86
|
+
*/
|
|
87
|
+
warn(message, metadata) {
|
|
88
|
+
client.sendLog('warn', message, metadata);
|
|
89
|
+
},
|
|
90
|
+
/**
|
|
91
|
+
* Send an error log message
|
|
92
|
+
* @param message - The log message
|
|
93
|
+
* @param metadata - Optional metadata object
|
|
94
|
+
*/
|
|
95
|
+
error(message, metadata) {
|
|
96
|
+
client.sendLog('error', message, metadata);
|
|
97
|
+
},
|
|
98
|
+
/**
|
|
99
|
+
* Stop capturing native platform logs (NSLog/print on iOS, Logcat on Android)
|
|
100
|
+
* Native log capture starts automatically on connect()
|
|
101
|
+
*/
|
|
102
|
+
stopNativeLogCapture() {
|
|
103
|
+
client.stopNativeLogCapture();
|
|
104
|
+
},
|
|
105
|
+
/**
|
|
106
|
+
* Check if native log capture is currently active
|
|
107
|
+
* @returns true if native log capture is enabled
|
|
108
|
+
*/
|
|
109
|
+
isNativeLogCaptureEnabled() {
|
|
110
|
+
return client.isNativeLogCaptureEnabled();
|
|
111
|
+
},
|
|
112
|
+
/**
|
|
113
|
+
* Start performance monitoring to track FPS, memory, and CPU
|
|
114
|
+
* @returns true if successfully enabled
|
|
115
|
+
*/
|
|
116
|
+
startPerformanceMonitoring() {
|
|
117
|
+
return client.startPerformanceMonitoring();
|
|
118
|
+
},
|
|
119
|
+
/**
|
|
120
|
+
* Stop performance monitoring
|
|
121
|
+
*/
|
|
122
|
+
stopPerformanceMonitoring() {
|
|
123
|
+
client.stopPerformanceMonitoring();
|
|
124
|
+
},
|
|
125
|
+
/**
|
|
126
|
+
* Check if performance monitoring is currently active
|
|
127
|
+
* @returns true if performance monitoring is enabled
|
|
128
|
+
*/
|
|
129
|
+
isPerformanceMonitoringEnabled() {
|
|
130
|
+
return client.isPerformanceMonitoringEnabled();
|
|
131
|
+
}
|
|
132
|
+
};
|
|
133
|
+
|
|
134
|
+
// Export types for consumers
|
|
135
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["client","connect","config","disconnect","isConnected","log","message","metadata","sendLog","debug","info","warn","error","stopNativeLogCapture","isNativeLogCaptureEnabled","startPerformanceMonitoring","stopPerformanceMonitoring","isPerformanceMonitoringEnabled"],"sourceRoot":"../../../src","sources":["library/index.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,MAAM,QAAQ,UAAU;AAGjC;AACA;AACA;AACA,eAAe;EACb;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACEC,OAAOA,CAACC,MAAwB,EAAQ;IACtCF,MAAM,CAACC,OAAO,CAACC,MAAM,CAAC;EACxB,CAAC;EAED;AACF;AACA;EACEC,UAAUA,CAAA,EAAS;IACjBH,MAAM,CAACG,UAAU,CAAC,CAAC;EACrB,CAAC;EAED;AACF;AACA;EACEC,WAAWA,CAAA,EAAY;IACrB,OAAOJ,MAAM,CAACI,WAAW,CAAC,CAAC;EAC7B,CAAC;EAED;AACF;AACA;AACA;AACA;EACEC,GAAGA,CAACC,OAAe,EAAEC,QAAkC,EAAQ;IAC7DP,MAAM,CAACQ,OAAO,CAAC,MAAM,EAAEF,OAAO,EAAEC,QAAQ,CAAC;EAC3C,CAAC;EAED;AACF;AACA;AACA;AACA;EACEE,KAAKA,CAACH,OAAe,EAAEC,QAAkC,EAAQ;IAC/DP,MAAM,CAACQ,OAAO,CAAC,OAAO,EAAEF,OAAO,EAAEC,QAAQ,CAAC;EAC5C,CAAC;EAED;AACF;AACA;AACA;AACA;EACEG,IAAIA,CAACJ,OAAe,EAAEC,QAAkC,EAAQ;IAC9DP,MAAM,CAACQ,OAAO,CAAC,MAAM,EAAEF,OAAO,EAAEC,QAAQ,CAAC;EAC3C,CAAC;EAED;AACF;AACA;AACA;AACA;EACEI,IAAIA,CAACL,OAAe,EAAEC,QAAkC,EAAQ;IAC9DP,MAAM,CAACQ,OAAO,CAAC,MAAM,EAAEF,OAAO,EAAEC,QAAQ,CAAC;EAC3C,CAAC;EAED;AACF;AACA;AACA;AACA;EACEK,KAAKA,CAACN,OAAe,EAAEC,QAAkC,EAAQ;IAC/DP,MAAM,CAACQ,OAAO,CAAC,OAAO,EAAEF,OAAO,EAAEC,QAAQ,CAAC;EAC5C,CAAC;EAED;AACF;AACA;AACA;EACEM,oBAAoBA,CAAA,EAAS;IAC3Bb,MAAM,CAACa,oBAAoB,CAAC,CAAC;EAC/B,CAAC;EAED;AACF;AACA;AACA;EACEC,yBAAyBA,CAAA,EAAY;IACnC,OAAOd,MAAM,CAACc,yBAAyB,CAAC,CAAC;EAC3C,CAAC;EAED;AACF;AACA;AACA;EACEC,0BAA0BA,CAAA,EAAY;IACpC,OAAOf,MAAM,CAACe,0BAA0B,CAAC,CAAC;EAC5C,CAAC;EAED;AACF;AACA;EACEC,yBAAyBA,CAAA,EAAS;IAChChB,MAAM,CAACgB,yBAAyB,CAAC,CAAC;EACpC,CAAC;EAED;AACF;AACA;AACA;EACEC,8BAA8BA,CAAA,EAAY;IACxC,OAAOjB,MAAM,CAACiB,8BAA8B,CAAC,CAAC;EAChD;AACF,CAAC;;AAED","ignoreList":[]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { XHRInterceptor } from './xhr';
|
|
4
|
+
import { JSConsoleInterceptor } from './js-console';
|
|
5
|
+
export const xhrInterceptor = XHRInterceptor.getInstance();
|
|
6
|
+
export const jsConsoleInterceptor = JSConsoleInterceptor.getInstance();
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["XHRInterceptor","JSConsoleInterceptor","xhrInterceptor","getInstance","jsConsoleInterceptor"],"sourceRoot":"../../../../src","sources":["library/interceptors/index.ts"],"mappings":";;AAAA,SAASA,cAAc,QAAQ,OAAO;AACtC,SAASC,oBAAoB,QAAQ,cAAc;AAEnD,OAAO,MAAMC,cAAc,GAAGF,cAAc,CAACG,WAAW,CAAC,CAAC;AAC1D,OAAO,MAAMC,oBAAoB,GAAGH,oBAAoB,CAACE,WAAW,CAAC,CAAC","ignoreList":[]}
|