@fluxbase/sdk 2026.1.10 → 2026.1.11

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.cjs CHANGED
@@ -1728,7 +1728,9 @@ var RealtimeChannel = class {
1728
1728
  try {
1729
1729
  const parts = this.token.split(".");
1730
1730
  if (parts.length !== 3 || !parts[1]) return false;
1731
- const payload = JSON.parse(atob(parts[1].replace(/-/g, "+").replace(/_/g, "/")));
1731
+ const payload = JSON.parse(
1732
+ atob(parts[1].replace(/-/g, "+").replace(/_/g, "/"))
1733
+ );
1732
1734
  if (!payload.exp) return false;
1733
1735
  const now = Math.floor(Date.now() / 1e3);
1734
1736
  return payload.exp <= now + 10;
@@ -1745,12 +1747,16 @@ var RealtimeChannel = class {
1745
1747
  }
1746
1748
  if (this.isTokenExpired() && this.onTokenRefreshNeeded && !this.isRefreshingToken) {
1747
1749
  this.isRefreshingToken = true;
1748
- console.log("[Fluxbase Realtime] Token expired, requesting refresh before connecting");
1750
+ console.log(
1751
+ "[Fluxbase Realtime] Token expired, requesting refresh before connecting"
1752
+ );
1749
1753
  this.onTokenRefreshNeeded().then((newToken) => {
1750
1754
  this.isRefreshingToken = false;
1751
1755
  if (newToken) {
1752
1756
  this.token = newToken;
1753
- console.log("[Fluxbase Realtime] Token refreshed, connecting with new token");
1757
+ console.log(
1758
+ "[Fluxbase Realtime] Token refreshed, connecting with new token"
1759
+ );
1754
1760
  }
1755
1761
  this.connectWithToken();
1756
1762
  }).catch((err) => {
@@ -1815,7 +1821,11 @@ var RealtimeChannel = class {
1815
1821
  try {
1816
1822
  this.handleMessage(message);
1817
1823
  } catch (err) {
1818
- console.error("[Fluxbase Realtime] Error handling message:", err, message);
1824
+ console.error(
1825
+ "[Fluxbase Realtime] Error handling message:",
1826
+ err,
1827
+ message
1828
+ );
1819
1829
  }
1820
1830
  };
1821
1831
  this.ws.onerror = (error) => {
@@ -1853,15 +1863,17 @@ var RealtimeChannel = class {
1853
1863
  case "heartbeat":
1854
1864
  break;
1855
1865
  case "broadcast":
1856
- if (message.broadcast) {
1857
- this.handleBroadcastMessage(message.broadcast);
1866
+ const broadcastData = message.broadcast || (message.payload && typeof message.payload === "object" && "broadcast" in message.payload ? message.payload.broadcast : null);
1867
+ if (broadcastData) {
1868
+ this.handleBroadcastMessage(broadcastData);
1858
1869
  } else if (message.payload) {
1859
1870
  this.handlePostgresChanges(message.payload);
1860
1871
  }
1861
1872
  break;
1862
1873
  case "presence":
1863
- if (message.presence) {
1864
- this.handlePresenceMessage(message.presence);
1874
+ const presenceData = message.presence || (message.payload && typeof message.payload === "object" && "presence" in message.payload ? message.payload.presence : null);
1875
+ if (presenceData) {
1876
+ this.handlePresenceMessage(presenceData);
1865
1877
  }
1866
1878
  break;
1867
1879
  case "ack":
@@ -1883,13 +1895,21 @@ var RealtimeChannel = class {
1883
1895
  const schema = payload.schema || "public";
1884
1896
  const table = payload.table || "";
1885
1897
  if (table) {
1886
- this.subscriptionIds.set(`${schema}.${table}`, payload.subscription_id);
1887
- console.log("[Fluxbase Realtime] Subscription ID received for", `${schema}.${table}:`, payload.subscription_id);
1898
+ this.subscriptionIds.set(
1899
+ `${schema}.${table}`,
1900
+ payload.subscription_id
1901
+ );
1902
+ console.log(
1903
+ "[Fluxbase Realtime] Subscription ID received for",
1904
+ `${schema}.${table}:`,
1905
+ payload.subscription_id
1906
+ );
1888
1907
  } else {
1889
- console.log("[Fluxbase Realtime] Subscription ID received:", payload.subscription_id);
1908
+ console.log(
1909
+ "[Fluxbase Realtime] Subscription ID received:",
1910
+ payload.subscription_id
1911
+ );
1890
1912
  }
1891
- } else {
1892
- console.log("[Fluxbase Realtime] Acknowledged:", message);
1893
1913
  }
1894
1914
  } else {
1895
1915
  if (message.payload && typeof message.payload === "object" && "subscription_id" in message.payload) {
@@ -1897,13 +1917,21 @@ var RealtimeChannel = class {
1897
1917
  const schema = payload.schema || "public";
1898
1918
  const table = payload.table || "";
1899
1919
  if (table) {
1900
- this.subscriptionIds.set(`${schema}.${table}`, payload.subscription_id);
1901
- console.log("[Fluxbase Realtime] Subscription ID received for", `${schema}.${table}:`, payload.subscription_id);
1920
+ this.subscriptionIds.set(
1921
+ `${schema}.${table}`,
1922
+ payload.subscription_id
1923
+ );
1924
+ console.log(
1925
+ "[Fluxbase Realtime] Subscription ID received for",
1926
+ `${schema}.${table}:`,
1927
+ payload.subscription_id
1928
+ );
1902
1929
  } else {
1903
- console.log("[Fluxbase Realtime] Subscription ID received:", payload.subscription_id);
1930
+ console.log(
1931
+ "[Fluxbase Realtime] Subscription ID received:",
1932
+ payload.subscription_id
1933
+ );
1904
1934
  }
1905
- } else {
1906
- console.log("[Fluxbase Realtime] Acknowledged:", message);
1907
1935
  }
1908
1936
  }
1909
1937
  break;
@@ -1912,7 +1940,9 @@ var RealtimeChannel = class {
1912
1940
  if (this.pendingAcks.has("access_token")) {
1913
1941
  const ackHandler = this.pendingAcks.get("access_token");
1914
1942
  if (ackHandler) {
1915
- ackHandler.reject(new Error(message.error || "Token update failed"));
1943
+ ackHandler.reject(
1944
+ new Error(message.error || "Token update failed")
1945
+ );
1916
1946
  this.pendingAcks.delete("access_token");
1917
1947
  }
1918
1948
  }
@@ -1937,7 +1967,10 @@ var RealtimeChannel = class {
1937
1967
  try {
1938
1968
  callback(log);
1939
1969
  } catch (err) {
1940
- console.error("[Fluxbase Realtime] Error in execution log callback:", err);
1970
+ console.error(
1971
+ "[Fluxbase Realtime] Error in execution log callback:",
1972
+ err
1973
+ );
1941
1974
  }
1942
1975
  });
1943
1976
  }
@@ -2005,7 +2038,10 @@ var RealtimeChannel = class {
2005
2038
  try {
2006
2039
  cb(supabasePayload);
2007
2040
  } catch (err) {
2008
- console.error("[Fluxbase Realtime] Error in postgres_changes callback:", err);
2041
+ console.error(
2042
+ "[Fluxbase Realtime] Error in postgres_changes callback:",
2043
+ err
2044
+ );
2009
2045
  }
2010
2046
  });
2011
2047
  }
@@ -2046,6 +2082,9 @@ var RealtimeChannel = class {
2046
2082
  * @internal
2047
2083
  */
2048
2084
  updateToken(token) {
2085
+ if (this.token === token) {
2086
+ return;
2087
+ }
2049
2088
  this.token = token;
2050
2089
  if (!this.ws || this.ws.readyState !== WebSocket.OPEN) {
2051
2090
  return;
@@ -2194,6 +2233,9 @@ var FluxbaseRealtime = class {
2194
2233
  * @param token - The new auth token
2195
2234
  */
2196
2235
  setAuth(token) {
2236
+ if (this.token === token) {
2237
+ return;
2238
+ }
2197
2239
  this.token = token;
2198
2240
  this.channels.forEach((channel) => {
2199
2241
  channel.updateToken(token);
@@ -2219,7 +2261,13 @@ var FluxbaseRealtime = class {
2219
2261
  * ```
2220
2262
  */
2221
2263
  executionLogs(executionId, type = "function") {
2222
- return new ExecutionLogsChannel(this.url, executionId, type, this.token, this.tokenRefreshCallback);
2264
+ return new ExecutionLogsChannel(
2265
+ this.url,
2266
+ executionId,
2267
+ type,
2268
+ this.token,
2269
+ this.tokenRefreshCallback
2270
+ );
2223
2271
  }
2224
2272
  };
2225
2273
  var ExecutionLogsChannel = class {
@@ -2270,7 +2318,10 @@ var ExecutionLogsChannel = class {
2270
2318
  try {
2271
2319
  cb(log);
2272
2320
  } catch (err) {
2273
- console.error("[Fluxbase ExecutionLogs] Error in log callback:", err);
2321
+ console.error(
2322
+ "[Fluxbase ExecutionLogs] Error in log callback:",
2323
+ err
2324
+ );
2274
2325
  }
2275
2326
  });
2276
2327
  }