@dawidzawada/bonjour-zeroconf 1.0.0 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +274 -10
- package/android/src/main/java/com/margelo/nitro/dawidzawada/bonjourzeroconf/BonjourZeroconf+AddressResolver.kt +14 -0
- package/android/src/main/java/com/margelo/nitro/dawidzawada/bonjourzeroconf/BonjourZeroconf.kt +25 -1
- package/ios/AddressResolverError.swift +13 -10
- package/ios/BonjourZeroconf+AddressResolver.swift +58 -21
- package/ios/BonjourZeroconf.swift +21 -0
- package/ios/LocalNetworkAuthorization.swift +0 -1
- package/lib/typescript/src/specs/BonjourZeroconf.nitro.d.ts +1 -0
- package/lib/typescript/src/specs/BonjourZeroconf.nitro.d.ts.map +1 -1
- package/nitrogen/generated/android/c++/JBonjourFail.hpp +1 -1
- package/nitrogen/generated/android/c++/JBonjourListener.hpp +1 -1
- package/nitrogen/generated/android/c++/JFunc_void.hpp +1 -1
- package/nitrogen/generated/android/c++/JFunc_void_BonjourFail.hpp +1 -1
- package/nitrogen/generated/android/c++/JFunc_void_bool.hpp +1 -1
- package/nitrogen/generated/android/c++/JFunc_void_std__vector_ScanResult_.hpp +1 -1
- package/nitrogen/generated/android/c++/JHybridBonjourZeroconfSpec.cpp +35 -8
- package/nitrogen/generated/android/c++/JHybridBonjourZeroconfSpec.hpp +2 -1
- package/nitrogen/generated/android/c++/JScanOptions.hpp +1 -1
- package/nitrogen/generated/android/c++/JScanResult.hpp +1 -1
- package/nitrogen/generated/android/dawidzawada_bonjourzeroconf+autolinking.cmake +1 -1
- package/nitrogen/generated/android/dawidzawada_bonjourzeroconf+autolinking.gradle +1 -1
- package/nitrogen/generated/android/dawidzawada_bonjourzeroconfOnLoad.cpp +1 -1
- package/nitrogen/generated/android/dawidzawada_bonjourzeroconfOnLoad.hpp +1 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/dawidzawada/bonjourzeroconf/BonjourFail.kt +1 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/dawidzawada/bonjourzeroconf/BonjourListener.kt +1 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/dawidzawada/bonjourzeroconf/Func_void.kt +1 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/dawidzawada/bonjourzeroconf/Func_void_BonjourFail.kt +1 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/dawidzawada/bonjourzeroconf/Func_void_bool.kt +1 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/dawidzawada/bonjourzeroconf/Func_void_std__vector_ScanResult_.kt +1 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/dawidzawada/bonjourzeroconf/HybridBonjourZeroconfSpec.kt +6 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/dawidzawada/bonjourzeroconf/ScanOptions.kt +1 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/dawidzawada/bonjourzeroconf/ScanResult.kt +1 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/dawidzawada/bonjourzeroconf/dawidzawada_bonjourzeroconfOnLoad.kt +1 -1
- package/nitrogen/generated/ios/BonjourZeroconf+autolinking.rb +1 -1
- package/nitrogen/generated/ios/BonjourZeroconf-Swift-Cxx-Bridge.cpp +17 -17
- package/nitrogen/generated/ios/BonjourZeroconf-Swift-Cxx-Bridge.hpp +73 -52
- package/nitrogen/generated/ios/BonjourZeroconf-Swift-Cxx-Umbrella.hpp +1 -1
- package/nitrogen/generated/ios/BonjourZeroconfAutolinking.mm +1 -1
- package/nitrogen/generated/ios/BonjourZeroconfAutolinking.swift +1 -1
- package/nitrogen/generated/ios/c++/HybridBonjourZeroconfSpecSwift.cpp +1 -1
- package/nitrogen/generated/ios/c++/HybridBonjourZeroconfSpecSwift.hpp +14 -5
- package/nitrogen/generated/ios/c++/HybridLocalNetworkPermissionSpecSwift.cpp +1 -1
- package/nitrogen/generated/ios/c++/HybridLocalNetworkPermissionSpecSwift.hpp +1 -1
- package/nitrogen/generated/ios/swift/BonjourFail.swift +1 -1
- package/nitrogen/generated/ios/swift/BonjourListener.swift +1 -1
- package/nitrogen/generated/ios/swift/Func_void.swift +1 -1
- package/nitrogen/generated/ios/swift/Func_void_BonjourFail.swift +1 -1
- package/nitrogen/generated/ios/swift/Func_void_bool.swift +1 -1
- package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +1 -1
- package/nitrogen/generated/ios/swift/Func_void_std__vector_ScanResult_.swift +6 -6
- package/nitrogen/generated/ios/swift/HybridBonjourZeroconfSpec.swift +2 -1
- package/nitrogen/generated/ios/swift/HybridBonjourZeroconfSpec_cxx.swift +26 -1
- package/nitrogen/generated/ios/swift/HybridLocalNetworkPermissionSpec.swift +1 -1
- package/nitrogen/generated/ios/swift/HybridLocalNetworkPermissionSpec_cxx.swift +1 -1
- package/nitrogen/generated/ios/swift/ScanOptions.swift +1 -1
- package/nitrogen/generated/ios/swift/ScanResult.swift +1 -1
- package/nitrogen/generated/shared/c++/BonjourFail.hpp +1 -1
- package/nitrogen/generated/shared/c++/BonjourListener.hpp +1 -1
- package/nitrogen/generated/shared/c++/HybridBonjourZeroconfSpec.cpp +2 -1
- package/nitrogen/generated/shared/c++/HybridBonjourZeroconfSpec.hpp +6 -4
- package/nitrogen/generated/shared/c++/HybridLocalNetworkPermissionSpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridLocalNetworkPermissionSpec.hpp +1 -1
- package/nitrogen/generated/shared/c++/ScanOptions.hpp +1 -1
- package/nitrogen/generated/shared/c++/ScanResult.hpp +1 -1
- package/package.json +18 -2
- package/src/specs/BonjourZeroconf.nitro.ts +7 -0
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// Func_void_std__exception_ptr.swift
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
import Foundation
|
|
@@ -2,28 +2,28 @@
|
|
|
2
2
|
/// Func_void_std__vector_ScanResult_.swift
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
import Foundation
|
|
9
9
|
import NitroModules
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
|
-
* Wraps a Swift `(_
|
|
12
|
+
* Wraps a Swift `(_ value: [ScanResult]) -> Void` as a class.
|
|
13
13
|
* This class can be used from C++, e.g. to wrap the Swift closure as a `std::function`.
|
|
14
14
|
*/
|
|
15
15
|
public final class Func_void_std__vector_ScanResult_ {
|
|
16
16
|
public typealias bridge = margelo.nitro.dawidzawada_bonjourzeroconf.bridge.swift
|
|
17
17
|
|
|
18
|
-
private let closure: (_
|
|
18
|
+
private let closure: (_ value: [ScanResult]) -> Void
|
|
19
19
|
|
|
20
|
-
public init(_ closure: @escaping (_
|
|
20
|
+
public init(_ closure: @escaping (_ value: [ScanResult]) -> Void) {
|
|
21
21
|
self.closure = closure
|
|
22
22
|
}
|
|
23
23
|
|
|
24
24
|
@inline(__always)
|
|
25
|
-
public func call(
|
|
26
|
-
self.closure(
|
|
25
|
+
public func call(value: bridge.std__vector_ScanResult_) -> Void {
|
|
26
|
+
self.closure(value.map({ __item in __item }))
|
|
27
27
|
}
|
|
28
28
|
|
|
29
29
|
/**
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridBonjourZeroconfSpec.swift
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
import Foundation
|
|
@@ -15,6 +15,7 @@ public protocol HybridBonjourZeroconfSpec_protocol: HybridObject {
|
|
|
15
15
|
|
|
16
16
|
// Methods
|
|
17
17
|
func scan(type: String, domain: String, options: ScanOptions?) throws -> Void
|
|
18
|
+
func scanFor(time: Double, type: String, domain: String, options: ScanOptions?) throws -> Promise<[ScanResult]>
|
|
18
19
|
func stop() throws -> Void
|
|
19
20
|
func listenForScanResults(onResult: @escaping (_ results: [ScanResult]) -> Void) throws -> BonjourListener
|
|
20
21
|
func listenForScanState(onChange: @escaping (_ isScanning: Bool) -> Void) throws -> BonjourListener
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridBonjourZeroconfSpec_cxx.swift
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
import Foundation
|
|
@@ -133,6 +133,31 @@ open class HybridBonjourZeroconfSpec_cxx {
|
|
|
133
133
|
}
|
|
134
134
|
}
|
|
135
135
|
|
|
136
|
+
@inline(__always)
|
|
137
|
+
public final func scanFor(time: Double, type: std.string, domain: std.string, options: bridge.std__optional_ScanOptions_) -> bridge.Result_std__shared_ptr_Promise_std__vector_ScanResult____ {
|
|
138
|
+
do {
|
|
139
|
+
let __result = try self.__implementation.scanFor(time: time, type: String(type), domain: String(domain), options: options.value)
|
|
140
|
+
let __resultCpp = { () -> bridge.std__shared_ptr_Promise_std__vector_ScanResult___ in
|
|
141
|
+
let __promise = bridge.create_std__shared_ptr_Promise_std__vector_ScanResult___()
|
|
142
|
+
let __promiseHolder = bridge.wrap_std__shared_ptr_Promise_std__vector_ScanResult___(__promise)
|
|
143
|
+
__result
|
|
144
|
+
.then({ __result in __promiseHolder.resolve({ () -> bridge.std__vector_ScanResult_ in
|
|
145
|
+
var __vector = bridge.create_std__vector_ScanResult_(__result.count)
|
|
146
|
+
for __item in __result {
|
|
147
|
+
__vector.push_back(__item)
|
|
148
|
+
}
|
|
149
|
+
return __vector
|
|
150
|
+
}()) })
|
|
151
|
+
.catch({ __error in __promiseHolder.reject(__error.toCpp()) })
|
|
152
|
+
return __promise
|
|
153
|
+
}()
|
|
154
|
+
return bridge.create_Result_std__shared_ptr_Promise_std__vector_ScanResult____(__resultCpp)
|
|
155
|
+
} catch (let __error) {
|
|
156
|
+
let __exceptionPtr = __error.toCpp()
|
|
157
|
+
return bridge.create_Result_std__shared_ptr_Promise_std__vector_ScanResult____(__exceptionPtr)
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
|
|
136
161
|
@inline(__always)
|
|
137
162
|
public final func stop() -> bridge.Result_void_ {
|
|
138
163
|
do {
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridLocalNetworkPermissionSpec.swift
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
import Foundation
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridLocalNetworkPermissionSpec_cxx.swift
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
import Foundation
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridBonjourZeroconfSpec.cpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#include "HybridBonjourZeroconfSpec.hpp"
|
|
@@ -16,6 +16,7 @@ namespace margelo::nitro::dawidzawada_bonjourzeroconf {
|
|
|
16
16
|
registerHybrids(this, [](Prototype& prototype) {
|
|
17
17
|
prototype.registerHybridGetter("isScanning", &HybridBonjourZeroconfSpec::getIsScanning);
|
|
18
18
|
prototype.registerHybridMethod("scan", &HybridBonjourZeroconfSpec::scan);
|
|
19
|
+
prototype.registerHybridMethod("scanFor", &HybridBonjourZeroconfSpec::scanFor);
|
|
19
20
|
prototype.registerHybridMethod("stop", &HybridBonjourZeroconfSpec::stop);
|
|
20
21
|
prototype.registerHybridMethod("listenForScanResults", &HybridBonjourZeroconfSpec::listenForScanResults);
|
|
21
22
|
prototype.registerHybridMethod("listenForScanState", &HybridBonjourZeroconfSpec::listenForScanState);
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridBonjourZeroconfSpec.hpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#pragma once
|
|
@@ -15,19 +15,20 @@
|
|
|
15
15
|
|
|
16
16
|
// Forward declaration of `ScanOptions` to properly resolve imports.
|
|
17
17
|
namespace margelo::nitro::dawidzawada_bonjourzeroconf { struct ScanOptions; }
|
|
18
|
-
// Forward declaration of `BonjourListener` to properly resolve imports.
|
|
19
|
-
namespace margelo::nitro::dawidzawada_bonjourzeroconf { struct BonjourListener; }
|
|
20
18
|
// Forward declaration of `ScanResult` to properly resolve imports.
|
|
21
19
|
namespace margelo::nitro::dawidzawada_bonjourzeroconf { struct ScanResult; }
|
|
20
|
+
// Forward declaration of `BonjourListener` to properly resolve imports.
|
|
21
|
+
namespace margelo::nitro::dawidzawada_bonjourzeroconf { struct BonjourListener; }
|
|
22
22
|
// Forward declaration of `BonjourFail` to properly resolve imports.
|
|
23
23
|
namespace margelo::nitro::dawidzawada_bonjourzeroconf { enum class BonjourFail; }
|
|
24
24
|
|
|
25
25
|
#include <string>
|
|
26
26
|
#include "ScanOptions.hpp"
|
|
27
27
|
#include <optional>
|
|
28
|
-
#include "BonjourListener.hpp"
|
|
29
28
|
#include "ScanResult.hpp"
|
|
30
29
|
#include <vector>
|
|
30
|
+
#include <NitroModules/Promise.hpp>
|
|
31
|
+
#include "BonjourListener.hpp"
|
|
31
32
|
#include <functional>
|
|
32
33
|
#include "BonjourFail.hpp"
|
|
33
34
|
|
|
@@ -63,6 +64,7 @@ namespace margelo::nitro::dawidzawada_bonjourzeroconf {
|
|
|
63
64
|
public:
|
|
64
65
|
// Methods
|
|
65
66
|
virtual void scan(const std::string& type, const std::string& domain, const std::optional<ScanOptions>& options) = 0;
|
|
67
|
+
virtual std::shared_ptr<Promise<std::vector<ScanResult>>> scanFor(double time, const std::string& type, const std::string& domain, const std::optional<ScanOptions>& options) = 0;
|
|
66
68
|
virtual void stop() = 0;
|
|
67
69
|
virtual BonjourListener listenForScanResults(const std::function<void(const std::vector<ScanResult>& /* results */)>& onResult) = 0;
|
|
68
70
|
virtual BonjourListener listenForScanState(const std::function<void(bool /* isScanning */)>& onChange) = 0;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridLocalNetworkPermissionSpec.cpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#include "HybridLocalNetworkPermissionSpec.hpp"
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dawidzawada/bonjour-zeroconf",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.1.0",
|
|
4
4
|
"description": "React Native Zeroconf scanner using Bonjour (iOS) and NSD (Android). Powered by Nitro Modules.",
|
|
5
5
|
"main": "./lib/module/index.js",
|
|
6
6
|
"types": "./lib/typescript/src/index.d.ts",
|
|
@@ -45,8 +45,24 @@
|
|
|
45
45
|
},
|
|
46
46
|
"keywords": [
|
|
47
47
|
"react-native",
|
|
48
|
+
"bonjour",
|
|
49
|
+
"zeroconf",
|
|
50
|
+
"mdns",
|
|
51
|
+
"nsd",
|
|
52
|
+
"service-discovery",
|
|
53
|
+
"network-discovery",
|
|
54
|
+
"local-network",
|
|
55
|
+
"nitro-modules",
|
|
48
56
|
"ios",
|
|
49
|
-
"android"
|
|
57
|
+
"android",
|
|
58
|
+
"expo",
|
|
59
|
+
"typescript",
|
|
60
|
+
"swift",
|
|
61
|
+
"kotlin",
|
|
62
|
+
"device-discovery",
|
|
63
|
+
"multicast-dns",
|
|
64
|
+
"dns-sd",
|
|
65
|
+
"avahi"
|
|
50
66
|
],
|
|
51
67
|
"repository": {
|
|
52
68
|
"type": "git",
|
|
@@ -10,7 +10,14 @@ export interface ScanOptions {
|
|
|
10
10
|
export interface BonjourZeroconf
|
|
11
11
|
extends HybridObject<{ ios: 'swift'; android: 'kotlin' }> {
|
|
12
12
|
readonly isScanning: boolean;
|
|
13
|
+
|
|
13
14
|
scan(type: string, domain: string, options?: ScanOptions): void;
|
|
15
|
+
scanFor(
|
|
16
|
+
time: number,
|
|
17
|
+
type: string,
|
|
18
|
+
domain: string,
|
|
19
|
+
options?: ScanOptions
|
|
20
|
+
): Promise<ScanResult[]>;
|
|
14
21
|
stop(): void;
|
|
15
22
|
listenForScanResults(
|
|
16
23
|
onResult: (results: ScanResult[]) => void
|