@modelnex/sdk 0.5.8 → 0.5.9

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/dist/index.js CHANGED
@@ -222,6 +222,18 @@ var ModelNexContext = (0, import_react.createContext)(null);
222
222
  var import_react3 = require("react");
223
223
  var import_socket = require("socket.io-client");
224
224
 
225
+ // src/utils/socket-io-transports.ts
226
+ function resolveSocketIoTransports(serverUrl, order) {
227
+ try {
228
+ const host = new URL(serverUrl).hostname.toLowerCase();
229
+ if (host.endsWith("awsapprunner.com")) {
230
+ return ["polling"];
231
+ }
232
+ } catch {
233
+ }
234
+ return order === "websocket-first" ? ["websocket", "polling"] : ["polling", "websocket"];
235
+ }
236
+
225
237
  // src/auto-extract.ts
226
238
  var import_react2 = require("react");
227
239
  function simpleHash(str) {
@@ -839,7 +851,10 @@ function useModelNexSocket({
839
851
  onSocketId?.(null);
840
852
  return;
841
853
  }
842
- const socket = (0, import_socket.io)(serverUrl);
854
+ const socket = (0, import_socket.io)(serverUrl, {
855
+ path: "/socket.io",
856
+ transports: resolveSocketIoTransports(serverUrl, "polling-first")
857
+ });
843
858
  socketRef.current = socket;
844
859
  const buildSyncPayload = () => ({
845
860
  actions: serializeActions(actionsRef.current),
@@ -3180,7 +3195,7 @@ function useTourPlayback({
3180
3195
  const socket = io2(serverUrl, {
3181
3196
  path: "/socket.io",
3182
3197
  // standard
3183
- transports: ["websocket", "polling"]
3198
+ transports: resolveSocketIoTransports(serverUrl, "websocket-first")
3184
3199
  });
3185
3200
  socketRef.current = socket;
3186
3201
  socket.on("connect", () => {
@@ -5435,7 +5450,7 @@ function useVoice(serverUrl) {
5435
5450
  mediaRecorderRef.current = recorder;
5436
5451
  const socket = io2(serverUrl, {
5437
5452
  path: "/socket.io",
5438
- transports: ["websocket", "polling"]
5453
+ transports: resolveSocketIoTransports(serverUrl, "websocket-first")
5439
5454
  });
5440
5455
  sttSocketRef.current = socket;
5441
5456
  recorder.ondataavailable = (e) => {
package/dist/index.mjs CHANGED
@@ -13,6 +13,18 @@ var ModelNexContext = createContext(null);
13
13
  import { useEffect as useEffect3, useRef as useRef3 } from "react";
14
14
  import { io } from "socket.io-client";
15
15
 
16
+ // src/utils/socket-io-transports.ts
17
+ function resolveSocketIoTransports(serverUrl, order) {
18
+ try {
19
+ const host = new URL(serverUrl).hostname.toLowerCase();
20
+ if (host.endsWith("awsapprunner.com")) {
21
+ return ["polling"];
22
+ }
23
+ } catch {
24
+ }
25
+ return order === "websocket-first" ? ["websocket", "polling"] : ["polling", "websocket"];
26
+ }
27
+
16
28
  // src/auto-extract.ts
17
29
  import { useState, useEffect as useEffect2, useRef as useRef2, useCallback as useCallback2 } from "react";
18
30
  function simpleHash(str) {
@@ -630,7 +642,10 @@ function useModelNexSocket({
630
642
  onSocketId?.(null);
631
643
  return;
632
644
  }
633
- const socket = io(serverUrl);
645
+ const socket = io(serverUrl, {
646
+ path: "/socket.io",
647
+ transports: resolveSocketIoTransports(serverUrl, "polling-first")
648
+ });
634
649
  socketRef.current = socket;
635
650
  const buildSyncPayload = () => ({
636
651
  actions: serializeActions(actionsRef.current),
@@ -2971,7 +2986,7 @@ function useTourPlayback({
2971
2986
  const socket = io2(serverUrl, {
2972
2987
  path: "/socket.io",
2973
2988
  // standard
2974
- transports: ["websocket", "polling"]
2989
+ transports: resolveSocketIoTransports(serverUrl, "websocket-first")
2975
2990
  });
2976
2991
  socketRef.current = socket;
2977
2992
  socket.on("connect", () => {
@@ -5226,7 +5241,7 @@ function useVoice(serverUrl) {
5226
5241
  mediaRecorderRef.current = recorder;
5227
5242
  const socket = io2(serverUrl, {
5228
5243
  path: "/socket.io",
5229
- transports: ["websocket", "polling"]
5244
+ transports: resolveSocketIoTransports(serverUrl, "websocket-first")
5230
5245
  });
5231
5246
  sttSocketRef.current = socket;
5232
5247
  recorder.ondataavailable = (e) => {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@modelnex/sdk",
3
- "version": "0.5.8",
3
+ "version": "0.5.9",
4
4
  "description": "React SDK for natural language control of web apps via AI agents",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",