react-native-nitro-net 0.1.5

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.
Files changed (83) hide show
  1. package/README.md +133 -0
  2. package/android/CMakeLists.txt +29 -0
  3. package/android/OnLoad.cpp +6 -0
  4. package/android/build.gradle +72 -0
  5. package/android/gradle.properties +6 -0
  6. package/android/libs/arm64-v8a/librust_c_net.so +0 -0
  7. package/android/libs/armeabi-v7a/librust_c_net.so +0 -0
  8. package/android/libs/x86/librust_c_net.so +0 -0
  9. package/android/libs/x86_64/librust_c_net.so +0 -0
  10. package/android/src/main/AndroidManifest.xml +3 -0
  11. package/android/src/main/java/com/margelo/nitro/net/NitroNetPackage.java +32 -0
  12. package/cpp/HybridNetDriver.cpp +5 -0
  13. package/cpp/HybridNetDriver.hpp +42 -0
  14. package/cpp/HybridNetServerDriver.cpp +5 -0
  15. package/cpp/HybridNetServerDriver.hpp +114 -0
  16. package/cpp/HybridNetSocketDriver.cpp +6 -0
  17. package/cpp/HybridNetSocketDriver.hpp +132 -0
  18. package/cpp/NetBindings.hpp +68 -0
  19. package/cpp/NetManager.hpp +160 -0
  20. package/ios/Frameworks/RustCNet.xcframework/Info.plist +44 -0
  21. package/ios/Frameworks/RustCNet.xcframework/ios-arm64/RustCNet.framework/Info.plist +20 -0
  22. package/ios/Frameworks/RustCNet.xcframework/ios-arm64/RustCNet.framework/RustCNet +0 -0
  23. package/ios/Frameworks/RustCNet.xcframework/ios-arm64_x86_64-simulator/RustCNet.framework/Info.plist +20 -0
  24. package/ios/Frameworks/RustCNet.xcframework/ios-arm64_x86_64-simulator/RustCNet.framework/RustCNet +0 -0
  25. package/lib/Driver.d.ts +2 -0
  26. package/lib/Driver.js +5 -0
  27. package/lib/Net.nitro.d.ts +85 -0
  28. package/lib/Net.nitro.js +21 -0
  29. package/lib/index.d.ts +162 -0
  30. package/lib/index.js +781 -0
  31. package/nitrogen/generated/.gitattributes +1 -0
  32. package/nitrogen/generated/android/RustCNet+autolinking.cmake +86 -0
  33. package/nitrogen/generated/android/RustCNet+autolinking.gradle +27 -0
  34. package/nitrogen/generated/android/RustCNetOnLoad.cpp +51 -0
  35. package/nitrogen/generated/android/RustCNetOnLoad.hpp +25 -0
  36. package/nitrogen/generated/android/c++/JFunc_void_double_std__shared_ptr_ArrayBuffer_.hpp +77 -0
  37. package/nitrogen/generated/android/c++/JHybridNetDriverSpec.cpp +74 -0
  38. package/nitrogen/generated/android/c++/JHybridNetDriverSpec.hpp +67 -0
  39. package/nitrogen/generated/android/c++/JHybridNetServerDriverSpec.cpp +99 -0
  40. package/nitrogen/generated/android/c++/JHybridNetServerDriverSpec.hpp +72 -0
  41. package/nitrogen/generated/android/c++/JHybridNetSocketDriverSpec.cpp +127 -0
  42. package/nitrogen/generated/android/c++/JHybridNetSocketDriverSpec.hpp +79 -0
  43. package/nitrogen/generated/android/c++/JNetConfig.hpp +57 -0
  44. package/nitrogen/generated/android/kotlin/com/margelo/nitro/net/Func_void_double_std__shared_ptr_ArrayBuffer_.kt +80 -0
  45. package/nitrogen/generated/android/kotlin/com/margelo/nitro/net/HybridNetDriverSpec.kt +65 -0
  46. package/nitrogen/generated/android/kotlin/com/margelo/nitro/net/HybridNetServerDriverSpec.kt +92 -0
  47. package/nitrogen/generated/android/kotlin/com/margelo/nitro/net/HybridNetSocketDriverSpec.kt +122 -0
  48. package/nitrogen/generated/android/kotlin/com/margelo/nitro/net/NetConfig.kt +38 -0
  49. package/nitrogen/generated/android/kotlin/com/margelo/nitro/net/RustCNetOnLoad.kt +35 -0
  50. package/nitrogen/generated/ios/RustCNet+autolinking.rb +60 -0
  51. package/nitrogen/generated/ios/RustCNet-Swift-Cxx-Bridge.cpp +75 -0
  52. package/nitrogen/generated/ios/RustCNet-Swift-Cxx-Bridge.hpp +186 -0
  53. package/nitrogen/generated/ios/RustCNet-Swift-Cxx-Umbrella.hpp +60 -0
  54. package/nitrogen/generated/ios/RustCNetAutolinking.mm +35 -0
  55. package/nitrogen/generated/ios/RustCNetAutolinking.swift +12 -0
  56. package/nitrogen/generated/ios/c++/HybridNetDriverSpecSwift.cpp +11 -0
  57. package/nitrogen/generated/ios/c++/HybridNetDriverSpecSwift.hpp +100 -0
  58. package/nitrogen/generated/ios/c++/HybridNetServerDriverSpecSwift.cpp +11 -0
  59. package/nitrogen/generated/ios/c++/HybridNetServerDriverSpecSwift.hpp +117 -0
  60. package/nitrogen/generated/ios/c++/HybridNetSocketDriverSpecSwift.cpp +11 -0
  61. package/nitrogen/generated/ios/c++/HybridNetSocketDriverSpecSwift.hpp +163 -0
  62. package/nitrogen/generated/ios/swift/Func_void_double_std__shared_ptr_ArrayBuffer_.swift +47 -0
  63. package/nitrogen/generated/ios/swift/HybridNetDriverSpec.swift +58 -0
  64. package/nitrogen/generated/ios/swift/HybridNetDriverSpec_cxx.swift +167 -0
  65. package/nitrogen/generated/ios/swift/HybridNetServerDriverSpec.swift +61 -0
  66. package/nitrogen/generated/ios/swift/HybridNetServerDriverSpec_cxx.swift +217 -0
  67. package/nitrogen/generated/ios/swift/HybridNetSocketDriverSpec.swift +69 -0
  68. package/nitrogen/generated/ios/swift/HybridNetSocketDriverSpec_cxx.swift +288 -0
  69. package/nitrogen/generated/ios/swift/NetConfig.swift +36 -0
  70. package/nitrogen/generated/shared/c++/HybridNetDriverSpec.cpp +23 -0
  71. package/nitrogen/generated/shared/c++/HybridNetDriverSpec.hpp +74 -0
  72. package/nitrogen/generated/shared/c++/HybridNetServerDriverSpec.cpp +29 -0
  73. package/nitrogen/generated/shared/c++/HybridNetServerDriverSpec.hpp +72 -0
  74. package/nitrogen/generated/shared/c++/HybridNetSocketDriverSpec.cpp +36 -0
  75. package/nitrogen/generated/shared/c++/HybridNetSocketDriverSpec.hpp +78 -0
  76. package/nitrogen/generated/shared/c++/HybridNitroBufferSpec.cpp +32 -0
  77. package/nitrogen/generated/shared/c++/HybridNitroBufferSpec.hpp +74 -0
  78. package/nitrogen/generated/shared/c++/NetConfig.hpp +83 -0
  79. package/package.json +59 -0
  80. package/react-native-nitro-net.podspec +47 -0
  81. package/src/Driver.ts +4 -0
  82. package/src/Net.nitro.ts +85 -0
  83. package/src/index.ts +870 -0
@@ -0,0 +1,85 @@
1
+ import { type HybridObject } from 'react-native-nitro-modules'
2
+
3
+ export type NetEventType = 'connect' | 'data' | 'error' | 'close' | 'connection'
4
+
5
+ export interface NetEvent {
6
+ type: NetEventType
7
+ data?: ArrayBuffer
8
+ error?: string
9
+ id?: string // For 'connection' event (clientId)
10
+ }
11
+
12
+ export type NetEventHandler = (event: NetEvent) => void
13
+
14
+ export enum NetSocketEvent {
15
+ CONNECT = 1,
16
+ DATA = 2,
17
+ ERROR = 3,
18
+ CLOSE = 4,
19
+ DRAIN = 5,
20
+ TIMEOUT = 7,
21
+ LOOKUP = 8,
22
+ DEBUG = 9
23
+ }
24
+
25
+ export interface NetSocketDriver extends HybridObject<{ ios: 'swift', android: 'kotlin' }> {
26
+ readonly id: number
27
+ connect(host: string, port: number): void
28
+ connectUnix(path: string): void
29
+ write(data: ArrayBuffer): void
30
+ pause(): void
31
+ resume(): void
32
+ shutdown(): void
33
+ setTimeout(timeout: number): void
34
+ destroy(): void
35
+ resetAndDestroy(): void
36
+ setNoDelay(enable: boolean): void
37
+ setKeepAlive(enable: boolean, delay: number): void
38
+ getLocalAddress(): string
39
+ getRemoteAddress(): string
40
+ onEvent: (event: number, data: ArrayBuffer) => void
41
+ }
42
+
43
+ export enum NetServerEvent {
44
+ CONNECTION = 6,
45
+ ERROR = 3,
46
+ CLOSE = 4,
47
+ DEBUG = 9
48
+ }
49
+
50
+ export interface NetServerDriver extends HybridObject<{ ios: 'swift', android: 'kotlin' }> {
51
+ onEvent: (event: number, data: ArrayBuffer) => void
52
+ listen(port: number, backlog?: number, ipv6Only?: boolean, reusePort?: boolean): void
53
+ listenUnix(path: string, backlog?: number): void
54
+ /**
55
+ * Listen on an existing file descriptor (handle)
56
+ * @param fd File descriptor of an already-bound TCP listener
57
+ * @param backlog Listen backlog (optional, defaults to 128)
58
+ */
59
+ listenHandle(fd: number, backlog?: number): void
60
+ getLocalAddress(): string
61
+ maxConnections: number
62
+ close(): void
63
+ }
64
+
65
+ /**
66
+ * Runtime configuration for the network module
67
+ */
68
+ export interface NetConfig {
69
+ /**
70
+ * Number of worker threads for the async runtime
71
+ * 0 = use CPU core count (default)
72
+ */
73
+ workerThreads?: number
74
+ }
75
+
76
+ export interface NetDriver extends HybridObject<{ ios: 'swift', android: 'kotlin' }> {
77
+ createSocket(id?: string): NetSocketDriver
78
+ createServer(): NetServerDriver
79
+ /**
80
+ * Initialize the network module with custom configuration
81
+ * Must be called before any other network operations
82
+ * @param config Configuration options
83
+ */
84
+ initWithConfig(config: NetConfig): void
85
+ }