@annadata/capacitor-mqtt-quic 0.1.8 → 0.2.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.
Files changed (81) hide show
  1. package/README.md +90 -9
  2. package/android/build-wolfssl.sh +8 -2
  3. package/android/install/nghttp3-android/arm64-v8a/lib/libnghttp3.a +0 -0
  4. package/android/install/nghttp3-android/arm64-v8a/lib/libnghttp3.so +0 -0
  5. package/android/install/nghttp3-android/arm64-v8a/lib/pkgconfig/libnghttp3.pc +4 -4
  6. package/android/install/nghttp3-android/armeabi-v7a/lib/libnghttp3.a +0 -0
  7. package/android/install/nghttp3-android/armeabi-v7a/lib/libnghttp3.so +0 -0
  8. package/android/install/nghttp3-android/armeabi-v7a/lib/pkgconfig/libnghttp3.pc +4 -4
  9. package/android/install/nghttp3-android/x86_64/lib/libnghttp3.a +0 -0
  10. package/android/install/nghttp3-android/x86_64/lib/libnghttp3.so +0 -0
  11. package/android/install/nghttp3-android/x86_64/lib/pkgconfig/libnghttp3.pc +4 -4
  12. package/android/install/ngtcp2-android/arm64-v8a/lib/libngtcp2.a +0 -0
  13. package/android/install/ngtcp2-android/arm64-v8a/lib/libngtcp2.so +0 -0
  14. package/android/install/ngtcp2-android/arm64-v8a/lib/libngtcp2_crypto_wolfssl.a +0 -0
  15. package/android/install/ngtcp2-android/arm64-v8a/lib/libngtcp2_crypto_wolfssl.so +0 -0
  16. package/android/install/ngtcp2-android/arm64-v8a/lib/pkgconfig/libngtcp2.pc +4 -4
  17. package/android/install/ngtcp2-android/arm64-v8a/lib/pkgconfig/libngtcp2_crypto_wolfssl.pc +4 -4
  18. package/android/install/ngtcp2-android/armeabi-v7a/lib/libngtcp2.a +0 -0
  19. package/android/install/ngtcp2-android/armeabi-v7a/lib/libngtcp2.so +0 -0
  20. package/android/install/ngtcp2-android/armeabi-v7a/lib/libngtcp2_crypto_wolfssl.a +0 -0
  21. package/android/install/ngtcp2-android/armeabi-v7a/lib/libngtcp2_crypto_wolfssl.so +0 -0
  22. package/android/install/ngtcp2-android/armeabi-v7a/lib/pkgconfig/libngtcp2.pc +4 -4
  23. package/android/install/ngtcp2-android/armeabi-v7a/lib/pkgconfig/libngtcp2_crypto_wolfssl.pc +4 -4
  24. package/android/install/ngtcp2-android/x86_64/lib/libngtcp2.a +0 -0
  25. package/android/install/ngtcp2-android/x86_64/lib/libngtcp2.so +0 -0
  26. package/android/install/ngtcp2-android/x86_64/lib/libngtcp2_crypto_wolfssl.a +0 -0
  27. package/android/install/ngtcp2-android/x86_64/lib/libngtcp2_crypto_wolfssl.so +0 -0
  28. package/android/install/ngtcp2-android/x86_64/lib/pkgconfig/libngtcp2.pc +4 -4
  29. package/android/install/ngtcp2-android/x86_64/lib/pkgconfig/libngtcp2_crypto_wolfssl.pc +4 -4
  30. package/android/install/wolfssl-android/arm64-v8a/bin/wolfssl-config +1 -1
  31. package/android/install/wolfssl-android/arm64-v8a/lib/libwolfssl.a +0 -0
  32. package/android/install/wolfssl-android/arm64-v8a/lib/libwolfssl.la +1 -1
  33. package/android/install/wolfssl-android/arm64-v8a/lib/pkgconfig/wolfssl.pc +1 -1
  34. package/android/install/wolfssl-android/armeabi-v7a/bin/wolfssl-config +1 -1
  35. package/android/install/wolfssl-android/armeabi-v7a/lib/libwolfssl.a +0 -0
  36. package/android/install/wolfssl-android/armeabi-v7a/lib/libwolfssl.la +1 -1
  37. package/android/install/wolfssl-android/armeabi-v7a/lib/pkgconfig/wolfssl.pc +1 -1
  38. package/android/install/wolfssl-android/x86_64/bin/wolfssl-config +1 -1
  39. package/android/install/wolfssl-android/x86_64/lib/libwolfssl.a +0 -0
  40. package/android/install/wolfssl-android/x86_64/lib/libwolfssl.la +1 -1
  41. package/android/install/wolfssl-android/x86_64/lib/pkgconfig/wolfssl.pc +1 -1
  42. package/android/src/main/cpp/ngtcp2_jni.cpp +94 -19
  43. package/android/src/main/kotlin/ai/annadata/mqttquic/MqttQuicPlugin.kt +75 -3
  44. package/android/src/main/kotlin/ai/annadata/mqttquic/client/MQTTClient.kt +270 -80
  45. package/android/src/main/kotlin/ai/annadata/mqttquic/mqtt/MQTTProtocol.kt +33 -2
  46. package/android/src/main/kotlin/ai/annadata/mqttquic/quic/NGTCP2Client.kt +25 -15
  47. package/android/src/main/kotlin/ai/annadata/mqttquic/quic/QuicClientStub.kt +1 -1
  48. package/android/src/main/kotlin/ai/annadata/mqttquic/quic/QuicTypes.kt +1 -1
  49. package/android/src/main/kotlin/ai/annadata/mqttquic/transport/QUICStreamAdapter.kt +80 -5
  50. package/android/src/main/kotlin/ai/annadata/mqttquic/transport/StreamTransport.kt +4 -0
  51. package/dist/esm/definitions.d.ts +8 -0
  52. package/dist/esm/definitions.d.ts.map +1 -1
  53. package/dist/esm/web.d.ts +5 -1
  54. package/dist/esm/web.d.ts.map +1 -1
  55. package/dist/esm/web.js +6 -0
  56. package/dist/esm/web.js.map +1 -1
  57. package/dist/plugin.cjs.js +6 -0
  58. package/dist/plugin.cjs.js.map +1 -1
  59. package/dist/plugin.js +6 -0
  60. package/dist/plugin.js.map +1 -1
  61. package/docs/diff-node_modules-vs-standalone-android-src.patch +1031 -0
  62. package/ios/Sources/MqttQuicPlugin/Client/MQTTClient.swift +4 -0
  63. package/ios/Sources/MqttQuicPlugin/MqttQuicPlugin.swift +14 -8
  64. package/ios/Sources/MqttQuicPlugin/Transport/QUICStreamAdapter.swift +2 -7
  65. package/ios/build-wolfssl.sh +8 -3
  66. package/ios/libs/libnghttp3.a +0 -0
  67. package/ios/libs/libngtcp2.a +0 -0
  68. package/ios/libs/libngtcp2_crypto_wolfssl.a +0 -0
  69. package/ios/libs/libwolfssl.a +0 -0
  70. package/ios/libs-simulator/libnghttp3.a +0 -0
  71. package/ios/libs-simulator/libngtcp2.a +0 -0
  72. package/ios/libs-simulator/libngtcp2_crypto_wolfssl.a +0 -0
  73. package/ios/libs-simulator/libwolfssl.a +0 -0
  74. package/ios/libs-simulator-x86_64/libnghttp3.a +0 -0
  75. package/ios/libs-simulator-x86_64/libngtcp2.a +0 -0
  76. package/ios/libs-simulator-x86_64/libngtcp2_crypto_wolfssl.a +0 -0
  77. package/ios/libs-simulator-x86_64/libwolfssl.a +0 -0
  78. package/package.json +1 -1
  79. package/ios/libs/MqttQuicLibs.xcframework/Info.plist +0 -44
  80. package/ios/libs/MqttQuicLibs.xcframework/ios-arm64/libmqttquic_native_device.a +0 -0
  81. package/ios/libs/MqttQuicLibs.xcframework/ios-arm64_x86_64-simulator/libmqttquic_native_simulator.a +0 -0
package/README.md CHANGED
@@ -8,9 +8,12 @@ MQTT-over-QUIC Capacitor plugin for **iOS**, **Android**, and **Web (browser/PWA
8
8
  - ✅ **MQTT 5.0** support with full properties and reason codes
9
9
  - ✅ **MQTT 3.1.1** support (backward compatible)
10
10
  - ✅ Automatic protocol negotiation (tries 5.0, falls back to 3.1.1)
11
- - ✅ QUIC transport (ngtcp2) - currently using stubs (see ngtcp2 build section)
11
+ - ✅ QUIC transport (ngtcp2 + WolfSSL) on native; WSS or WebTransport on web
12
12
  - ✅ Transport abstraction (StreamReader/StreamWriter)
13
- - ✅ Full MQTT client API (connect, publish, subscribe, unsubscribe, disconnect)
13
+ - ✅ Full MQTT client API: `connect`, `publish`, `subscribe`, `unsubscribe`, `disconnect`
14
+ - ✅ **sendKeepalive** – Send MQTT PINGREQ, wait for PINGRESP; resets server idle timer
15
+ - ✅ **ping** – Host reachability check (native: UDP; web: returns ok if host looks valid)
16
+ - ✅ **testHarness** – Connect → subscribe → publish → disconnect smoke test
14
17
 
15
18
  ## Structure
16
19
 
@@ -63,6 +66,31 @@ await MqttQuic.unsubscribe({ topic: 'sensors/+' });
63
66
  await MqttQuic.disconnect();
64
67
  ```
65
68
 
69
+ ### sendKeepalive – Manual MQTT Ping
70
+
71
+ Send MQTT PINGREQ and wait for PINGRESP. Resets the server's idle timer and confirms the connection is alive. Use when you need to keep the session active or verify connectivity without publishing.
72
+
73
+ **Native (iOS/Android):** Sends PINGREQ, waits for PINGRESP within `timeoutMs`.
74
+ **Web:** Returns `{ ok: !!connected }` (mqtt.js and WebTransport handle keepalive internally).
75
+
76
+ ```ts
77
+ const { ok } = await MqttQuic.sendKeepalive({
78
+ timeoutMs: 5000 // optional; default 5000, min 1000, max 15000
79
+ });
80
+ // ok: true if PINGRESP received (native) or connected (web); false on timeout or error
81
+ ```
82
+
83
+ ### ping – Host Reachability
84
+
85
+ Check if a host is reachable. **Native (iOS/Android):** performs a UDP reachability check. **Web:** returns `{ ok: true }` if the host looks valid (no raw UDP in browsers).
86
+
87
+ ```ts
88
+ const { ok } = await MqttQuic.ping({
89
+ host: 'mqtt.example.com',
90
+ port: 1884 // optional
91
+ });
92
+ ```
93
+
66
94
  ### Connection state and UI
67
95
 
68
96
  `connect()` returns a Promise that resolves with `{ connected: true }` only after the QUIC handshake and MQTT CONNACK. To avoid the UI staying on "connecting":
@@ -159,7 +187,7 @@ Bundle the CA cert (never ship `ca.key`):
159
187
 
160
188
  ### Test Harness (QUIC Smoke Test)
161
189
 
162
- This runs: connect → subscribe → publish → disconnect.
190
+ Runs: connect → subscribe → publish → disconnect.
163
191
 
164
192
  ```ts
165
193
  await MqttQuic.testHarness({
@@ -168,8 +196,8 @@ await MqttQuic.testHarness({
168
196
  clientId: 'mqttquic_test_client',
169
197
  topic: 'test/topic',
170
198
  payload: 'Hello QUIC!',
171
- // optional CA override
172
- caFile: '/path/to/ca-bundle.pem'
199
+ caFile: '/path/to/ca-bundle.pem', // optional
200
+ webTransportUrl: 'https://...', // optional; web only
173
201
  });
174
202
  ```
175
203
 
@@ -278,6 +306,8 @@ See [MQTT5_IMPLEMENTATION_COMPLETE.md](./docs/MQTT5_IMPLEMENTATION_COMPLETE.md)
278
306
 
279
307
  ## TypeScript Interface
280
308
 
309
+ Full API definitions (see `dist/esm/definitions.d.ts`):
310
+
281
311
  ```ts
282
312
  interface MqttQuicConnectOptions {
283
313
  host: string;
@@ -289,12 +319,16 @@ interface MqttQuicConnectOptions {
289
319
  keepalive?: number;
290
320
  caFile?: string;
291
321
  caPath?: string;
292
- // MQTT 5.0 options
293
322
  protocolVersion?: '3.1.1' | '5.0' | 'auto';
294
323
  sessionExpiryInterval?: number;
295
324
  receiveMaximum?: number;
296
325
  maximumPacketSize?: number;
297
326
  topicAliasMaximum?: number;
327
+ // Web only: QUIC via WebTransport
328
+ webTransportUrl?: string;
329
+ webTransportDeviceId?: string;
330
+ webTransportAction?: string;
331
+ webTransportPath?: string;
298
332
  }
299
333
 
300
334
  interface MqttQuicPublishOptions {
@@ -302,7 +336,6 @@ interface MqttQuicPublishOptions {
302
336
  payload: string | Uint8Array;
303
337
  qos?: 0 | 1 | 2;
304
338
  retain?: boolean;
305
- // MQTT 5.0 properties
306
339
  messageExpiryInterval?: number;
307
340
  contentType?: string;
308
341
  responseTopic?: string;
@@ -313,7 +346,6 @@ interface MqttQuicPublishOptions {
313
346
  interface MqttQuicSubscribeOptions {
314
347
  topic: string;
315
348
  qos?: 0 | 1 | 2;
316
- // MQTT 5.0
317
349
  subscriptionIdentifier?: number;
318
350
  }
319
351
 
@@ -325,6 +357,29 @@ interface MqttQuicTestHarnessOptions {
325
357
  payload?: string;
326
358
  caFile?: string;
327
359
  caPath?: string;
360
+ webTransportUrl?: string;
361
+ }
362
+
363
+ interface MqttQuicPingOptions {
364
+ host: string;
365
+ port?: number;
366
+ }
367
+
368
+ interface MqttQuicSendKeepaliveOptions {
369
+ timeoutMs?: number; // default 5000, min 1000, max 15000
370
+ }
371
+
372
+ type MqttQuicConnectionState = 'disconnected' | 'connecting' | 'connected' | 'reconnecting' | 'error';
373
+
374
+ interface MqttQuicPlugin {
375
+ sendKeepalive(options?: MqttQuicSendKeepaliveOptions): Promise<{ ok: boolean }>;
376
+ ping(options: MqttQuicPingOptions): Promise<{ ok: boolean }>;
377
+ connect(options: MqttQuicConnectOptions): Promise<{ connected: boolean }>;
378
+ disconnect(): Promise<void>;
379
+ publish(options: MqttQuicPublishOptions): Promise<{ success: boolean }>;
380
+ subscribe(options: MqttQuicSubscribeOptions): Promise<{ success: boolean }>;
381
+ unsubscribe(options: { topic: string }): Promise<{ success: boolean }>;
382
+ testHarness(options: MqttQuicTestHarnessOptions): Promise<{ success: boolean }>;
328
383
  }
329
384
  ```
330
385
 
@@ -431,6 +486,32 @@ npm publish --access public
431
486
 
432
487
  See **docs/PRODUCTION_PUBLISH_STEPS.md** for the full checklist.
433
488
 
489
+ ### iOS: `MqttQuicLibs.xcframework does not contain a binary artifact`
490
+
491
+ This happens when Capacitor's SPM resolves `Package.swift` but `ios/libs/MqttQuicLibs.xcframework` is missing. Common causes:
492
+
493
+ 1. **Fresh install / plugin update** – The package was packed/published without the xcframework.
494
+ 2. **Local development** – You use `file:../capacitor-mqtt-quic` or a local `.tgz` that was packed before building.
495
+
496
+ **Fix (one-time per machine or per plugin change):**
497
+
498
+ ```bash
499
+ cd node_modules/@annadata/capacitor-mqtt-quic
500
+ ./build-native.sh --ios-only
501
+ cd ios && ./create-xcframework.sh
502
+ cd ../..
503
+ npx cap sync ios
504
+ ```
505
+
506
+ Or from your app root, if you have this script:
507
+
508
+ ```bash
509
+ npm run build:ios-mqtt-quic
510
+ npx cap sync ios
511
+ ```
512
+
513
+ **If you maintain the plugin:** Build the xcframework in the plugin repo before `npm pack` or `npm publish`. The `.npmignore` is configured so the xcframework is included when present, and consumers then get it with `npm install`.
514
+
434
515
  ### Connection error: `{"code":"UNIMPLEMENTED"}`
435
516
 
436
517
  Capacitor returns this when the **native plugin method is not found** on the current platform. Common causes and fixes:
@@ -499,7 +580,7 @@ The plugin runs in **browsers** (including PWA and `cap run web`) with the **sam
499
580
  **Why web can’t use ngtcp2 + WolfSSL:** Browsers do not expose raw UDP or the TLS APIs ngtcp2/WolfSSL need. So the native stack cannot run in the browser. On web: (1) **Default:** MQTT over **WebSocket (WSS)** via `mqtt.js`. (2) **Optional:** MQTT over **WebTransport** (QUIC)—pass `webTransportUrl` in `connect()` when your server supports WebTransport; the browser uses its built-in HTTP/3/QUIC stack.
500
581
 
501
582
  - **Connect:** `ws://host:port` or `wss://host:port` (the plugin uses WSS when port is 8884 or 443, otherwise `ws`)
502
- - **Same methods:** `MqttQuic.connect`, `publish`, `subscribe`, `unsubscribe`, `disconnect`, `testHarness`
583
+ - **Same methods:** `MqttQuic.connect`, `publish`, `subscribe`, `unsubscribe`, `disconnect`, `sendKeepalive`, `ping`, `testHarness`
503
584
 
504
585
  **My MQTT+QUIC server is on port 1884 – can WSS connect?**
505
586
  Port **1884** is usually **MQTT over QUIC** (UDP). A **WSS client cannot connect directly to 1884**, because WSS is TCP/WebSocket and 1884 is QUIC. You need one of:
@@ -47,9 +47,15 @@ fi
47
47
  if [ ! -d "$WOLFSSL_SOURCE_DIR" ] && [ -d "$PROJECT_DIR/../wolfssl-5.8.4-stable" ]; then
48
48
  WOLFSSL_SOURCE_DIR="$PROJECT_DIR/../wolfssl-5.8.4-stable"
49
49
  fi
50
+ # Clone WolfSSL if missing
50
51
  if [ ! -d "$WOLFSSL_SOURCE_DIR" ]; then
51
- echo "Error: WolfSSL source not found at $WOLFSSL_SOURCE_DIR"
52
- exit 1
52
+ echo "WolfSSL source not found. Cloning into $DEPS_DIR/wolfssl ..."
53
+ mkdir -p "$DEPS_DIR"
54
+ git clone --depth 1 -b "${WOLFSSL_TAG:-v5.8.4-stable}" "${WOLFSSL_REPO_URL:-https://github.com/wolfSSL/wolfssl.git}" "$DEPS_DIR/wolfssl" || {
55
+ echo "Error: Failed to clone WolfSSL"
56
+ exit 1
57
+ }
58
+ WOLFSSL_SOURCE_DIR="$DEPS_DIR/wolfssl"
53
59
  fi
54
60
 
55
61
  # Map ABI to toolchain
@@ -21,10 +21,10 @@
21
21
  # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
22
22
  # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
23
23
  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
24
- prefix=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/nghttp3-android/arm64-v8a
25
- exec_prefix=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/nghttp3-android/arm64-v8a
26
- libdir=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/nghttp3-android/arm64-v8a/lib
27
- includedir=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/nghttp3-android/arm64-v8a/include
24
+ prefix=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/nghttp3-android/arm64-v8a
25
+ exec_prefix=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/nghttp3-android/arm64-v8a
26
+ libdir=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/nghttp3-android/arm64-v8a/lib
27
+ includedir=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/nghttp3-android/arm64-v8a/include
28
28
 
29
29
  Name: libnghttp3
30
30
  Description: nghttp3 library
@@ -21,10 +21,10 @@
21
21
  # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
22
22
  # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
23
23
  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
24
- prefix=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/nghttp3-android/armeabi-v7a
25
- exec_prefix=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/nghttp3-android/armeabi-v7a
26
- libdir=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/nghttp3-android/armeabi-v7a/lib
27
- includedir=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/nghttp3-android/armeabi-v7a/include
24
+ prefix=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/nghttp3-android/armeabi-v7a
25
+ exec_prefix=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/nghttp3-android/armeabi-v7a
26
+ libdir=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/nghttp3-android/armeabi-v7a/lib
27
+ includedir=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/nghttp3-android/armeabi-v7a/include
28
28
 
29
29
  Name: libnghttp3
30
30
  Description: nghttp3 library
@@ -21,10 +21,10 @@
21
21
  # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
22
22
  # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
23
23
  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
24
- prefix=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/nghttp3-android/x86_64
25
- exec_prefix=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/nghttp3-android/x86_64
26
- libdir=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/nghttp3-android/x86_64/lib
27
- includedir=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/nghttp3-android/x86_64/include
24
+ prefix=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/nghttp3-android/x86_64
25
+ exec_prefix=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/nghttp3-android/x86_64
26
+ libdir=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/nghttp3-android/x86_64/lib
27
+ includedir=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/nghttp3-android/x86_64/include
28
28
 
29
29
  Name: libnghttp3
30
30
  Description: nghttp3 library
@@ -20,10 +20,10 @@
20
20
  # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
21
  # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
22
  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
23
- prefix=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/ngtcp2-android/arm64-v8a
24
- exec_prefix=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/ngtcp2-android/arm64-v8a
25
- libdir=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/ngtcp2-android/arm64-v8a/lib
26
- includedir=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/ngtcp2-android/arm64-v8a/include
23
+ prefix=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/ngtcp2-android/arm64-v8a
24
+ exec_prefix=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/ngtcp2-android/arm64-v8a
25
+ libdir=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/ngtcp2-android/arm64-v8a/lib
26
+ includedir=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/ngtcp2-android/arm64-v8a/include
27
27
 
28
28
  Name: libngtcp2
29
29
  Description: ngtcp2 library
@@ -20,10 +20,10 @@
20
20
  # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
21
  # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
22
  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
23
- prefix=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/ngtcp2-android/arm64-v8a
24
- exec_prefix=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/ngtcp2-android/arm64-v8a
25
- libdir=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/ngtcp2-android/arm64-v8a/lib
26
- includedir=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/ngtcp2-android/arm64-v8a/include
23
+ prefix=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/ngtcp2-android/arm64-v8a
24
+ exec_prefix=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/ngtcp2-android/arm64-v8a
25
+ libdir=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/ngtcp2-android/arm64-v8a/lib
26
+ includedir=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/ngtcp2-android/arm64-v8a/include
27
27
 
28
28
  Name: libngtcp2_crypto_wolfssl
29
29
  Description: ngtcp2 wolfSSL crypto library
@@ -20,10 +20,10 @@
20
20
  # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
21
  # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
22
  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
23
- prefix=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/ngtcp2-android/armeabi-v7a
24
- exec_prefix=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/ngtcp2-android/armeabi-v7a
25
- libdir=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/ngtcp2-android/armeabi-v7a/lib
26
- includedir=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/ngtcp2-android/armeabi-v7a/include
23
+ prefix=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/ngtcp2-android/armeabi-v7a
24
+ exec_prefix=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/ngtcp2-android/armeabi-v7a
25
+ libdir=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/ngtcp2-android/armeabi-v7a/lib
26
+ includedir=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/ngtcp2-android/armeabi-v7a/include
27
27
 
28
28
  Name: libngtcp2
29
29
  Description: ngtcp2 library
@@ -20,10 +20,10 @@
20
20
  # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
21
  # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
22
  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
23
- prefix=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/ngtcp2-android/armeabi-v7a
24
- exec_prefix=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/ngtcp2-android/armeabi-v7a
25
- libdir=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/ngtcp2-android/armeabi-v7a/lib
26
- includedir=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/ngtcp2-android/armeabi-v7a/include
23
+ prefix=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/ngtcp2-android/armeabi-v7a
24
+ exec_prefix=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/ngtcp2-android/armeabi-v7a
25
+ libdir=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/ngtcp2-android/armeabi-v7a/lib
26
+ includedir=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/ngtcp2-android/armeabi-v7a/include
27
27
 
28
28
  Name: libngtcp2_crypto_wolfssl
29
29
  Description: ngtcp2 wolfSSL crypto library
@@ -20,10 +20,10 @@
20
20
  # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
21
  # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
22
  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
23
- prefix=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/ngtcp2-android/x86_64
24
- exec_prefix=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/ngtcp2-android/x86_64
25
- libdir=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/ngtcp2-android/x86_64/lib
26
- includedir=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/ngtcp2-android/x86_64/include
23
+ prefix=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/ngtcp2-android/x86_64
24
+ exec_prefix=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/ngtcp2-android/x86_64
25
+ libdir=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/ngtcp2-android/x86_64/lib
26
+ includedir=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/ngtcp2-android/x86_64/include
27
27
 
28
28
  Name: libngtcp2
29
29
  Description: ngtcp2 library
@@ -20,10 +20,10 @@
20
20
  # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
21
  # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
22
  # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
23
- prefix=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/ngtcp2-android/x86_64
24
- exec_prefix=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/ngtcp2-android/x86_64
25
- libdir=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/ngtcp2-android/x86_64/lib
26
- includedir=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/ngtcp2-android/x86_64/include
23
+ prefix=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/ngtcp2-android/x86_64
24
+ exec_prefix=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/ngtcp2-android/x86_64
25
+ libdir=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/ngtcp2-android/x86_64/lib
26
+ includedir=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/ngtcp2-android/x86_64/include
27
27
 
28
28
  Name: libngtcp2_crypto_wolfssl
29
29
  Description: ngtcp2 wolfSSL crypto library
@@ -4,7 +4,7 @@ package="wolfssl"
4
4
  version="5.8.4"
5
5
  libs="-lwolfssl"
6
6
 
7
- prefix="/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/wolfssl-android/arm64-v8a"
7
+ prefix="/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/wolfssl-android/arm64-v8a"
8
8
  exec_prefix="${prefix}"
9
9
  bindir="${exec_prefix}/bin"
10
10
  sbindir="${exec_prefix}/sbin"
@@ -38,4 +38,4 @@ dlopen=''
38
38
  dlpreopen=''
39
39
 
40
40
  # Directory that this library needs to be installed in:
41
- libdir='/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/wolfssl-android/arm64-v8a/lib'
41
+ libdir='/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/wolfssl-android/arm64-v8a/lib'
@@ -1,4 +1,4 @@
1
- prefix=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/wolfssl-android/arm64-v8a
1
+ prefix=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/wolfssl-android/arm64-v8a
2
2
  exec_prefix=${prefix}
3
3
  libdir=${exec_prefix}/lib
4
4
  includedir=${prefix}/include
@@ -4,7 +4,7 @@ package="wolfssl"
4
4
  version="5.8.4"
5
5
  libs="-lwolfssl"
6
6
 
7
- prefix="/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/wolfssl-android/armeabi-v7a"
7
+ prefix="/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/wolfssl-android/armeabi-v7a"
8
8
  exec_prefix="${prefix}"
9
9
  bindir="${exec_prefix}/bin"
10
10
  sbindir="${exec_prefix}/sbin"
@@ -38,4 +38,4 @@ dlopen=''
38
38
  dlpreopen=''
39
39
 
40
40
  # Directory that this library needs to be installed in:
41
- libdir='/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/wolfssl-android/armeabi-v7a/lib'
41
+ libdir='/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/wolfssl-android/armeabi-v7a/lib'
@@ -1,4 +1,4 @@
1
- prefix=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/wolfssl-android/armeabi-v7a
1
+ prefix=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/wolfssl-android/armeabi-v7a
2
2
  exec_prefix=${prefix}
3
3
  libdir=${exec_prefix}/lib
4
4
  includedir=${prefix}/include
@@ -4,7 +4,7 @@ package="wolfssl"
4
4
  version="5.8.4"
5
5
  libs="-lwolfssl"
6
6
 
7
- prefix="/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/wolfssl-android/x86_64"
7
+ prefix="/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/wolfssl-android/x86_64"
8
8
  exec_prefix="${prefix}"
9
9
  bindir="${exec_prefix}/bin"
10
10
  sbindir="${exec_prefix}/sbin"
@@ -38,4 +38,4 @@ dlopen=''
38
38
  dlpreopen=''
39
39
 
40
40
  # Directory that this library needs to be installed in:
41
- libdir='/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/wolfssl-android/x86_64/lib'
41
+ libdir='/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/wolfssl-android/x86_64/lib'
@@ -1,4 +1,4 @@
1
- prefix=/Users/annadata/Project_A/capacitor-mqtt-quic/android/install/wolfssl-android/x86_64
1
+ prefix=/Users/annadata/Ionic/capacitor-mqtt-quic/android/install/wolfssl-android/x86_64
2
2
  exec_prefix=${prefix}
3
3
  libdir=${exec_prefix}/lib
4
4
  includedir=${prefix}/include