@ironflow/browser 0.19.0 → 0.19.2

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 CHANGED
@@ -90,7 +90,9 @@ const configured = ironflow.isConfigured; // boolean
90
90
  ## Connection Management
91
91
 
92
92
  ```typescript
93
- // Explicitly connect (subscriptions auto-connect, but you can call this eagerly)
93
+ // Subscriptions auto-connect on first use (10s connect timeout). You only
94
+ // need to call connect() eagerly if you want to surface connection failures
95
+ // before subscribing, or wait for the first handshake before rendering.
94
96
  await ironflow.connect();
95
97
 
96
98
  // Disconnect and clean up all subscriptions
@@ -727,11 +729,16 @@ const all = await config.list();
727
729
  // Delete a config (idempotent)
728
730
  await config.delete('app-settings');
729
731
 
730
- // Watch for real-time config changes
731
- // Subscribes to system.config.{name}.updated topic
732
+ // Watch for real-time config changes.
733
+ // Subscribes to system.config.{name}.updated. Auto-connects on first call —
734
+ // no explicit ironflow.connect() needed. The server emits on set() and
735
+ // patch() after the KV write, so cross-tab / CLI / REST-triggered updates
736
+ // all reach the subscriber. Payload includes `revision`; drop events whose
737
+ // revision is lower than the last one you applied to guard against rare
738
+ // out-of-order deliveries under retry.
732
739
  const sub = await config.watch('app-settings', {
733
740
  onEvent: (configResponse) => {
734
- console.log('Config updated:', configResponse.data);
741
+ console.log('Config updated:', configResponse.data, configResponse.revision);
735
742
  },
736
743
  onError: (error) => {
737
744
  console.error('Watch error:', error);
@@ -741,6 +748,10 @@ const sub = await config.watch('app-settings', {
741
748
  sub.unsubscribe();
742
749
  ```
743
750
 
751
+ When the tab is backgrounded long enough that the browser silently kills the
752
+ websocket (common on mobile Safari), the SDK reconnects automatically as
753
+ soon as the tab becomes visible again — no subscriber action required.
754
+
744
755
  ## Auth Management
745
756
 
746
757
  ### API Keys
package/dist/index.d.ts CHANGED
@@ -44,6 +44,7 @@ export type { Transport, TransportCallbacks, TransportFactory, TransportOptions,
44
44
  export { createWebSocketTransport, createConnectRPCTransport } from "./transport/index.js";
45
45
  export { BrowserKVClient, BrowserKVBucketHandle } from "./kv.js";
46
46
  export { BrowserConfigClient } from "./config-client.js";
47
+ export { SubscriptionManager } from "./subscription.js";
47
48
  export type { Run, RunStatus, RunInfo, ListRunsOptions, ListRunsResult, IronflowEvent, EmitOptions, EmitResult, InvokeResult, TriggerResult, // deprecated alias for InvokeResult
48
49
  TriggerSyncOptions, TriggerSyncResult, SubscribeOptions, Subscription, AckableSubscription, SubscriptionEvent, SubscriptionErrorInfo, SubscriptionCallbacks, ConnectionState, AckHandle, ConsumerGroup, ConsumerGroupConfig, ConsumerGroupStatus, AckMode, BackpressureMode, AppendEventInput, AppendOptions, AppendResult, ReadStreamOptions, StreamEvent, StreamInfo, EntitySubscribeOptions, ProjectionStatusInfo, ProjectionStateResult, KVBucketConfig, KVBucketInfo, KVEntry, KVPutResult, KVListKeysResult, KVListBucketsResult, KVWatchEvent, KVWatchCallbacks, KVWatchOptions, KVWatcher, ConfigResponse, ConfigEntry, ConfigSetResult, ConfigWatchCallbacks, ConfigWatchEvent, AuditEvent, AuditTrailResult, GetAuditTrailOptions, WebhookSource, CreateWebhookSourceInput, WebhookDelivery, ListWebhookDeliveriesOptions, User, CreateUserInput, UpdateUserInput, Tenant, Logger, } from "@ironflow/core";
49
50
  export { patterns, DEFAULT_SERVER_URL, DEFAULT_WS_URL, DEFAULT_TIMEOUTS, getServerUrl, getWebSocketUrl, } from "@ironflow/core";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGvC,YAAY,EACV,cAAc,EACd,qBAAqB,EACrB,eAAe,EACf,gBAAgB,EAChB,UAAU,GACX,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG1D,YAAY,EACV,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAG3B,YAAY,EACV,SAAS,EACT,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAG3F,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAGjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAGzD,YAAY,EAEV,GAAG,EACH,SAAS,EACT,OAAO,EACP,eAAe,EACf,cAAc,EAGd,aAAa,EACb,WAAW,EACX,UAAU,EAGV,YAAY,EACZ,aAAa,EAAE,oCAAoC;AACnD,kBAAkB,EAClB,iBAAiB,EAGjB,gBAAgB,EAChB,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,EACjB,qBAAqB,EACrB,qBAAqB,EACrB,eAAe,EACf,SAAS,EAGT,aAAa,EACb,mBAAmB,EACnB,mBAAmB,EACnB,OAAO,EACP,gBAAgB,EAGhB,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,WAAW,EACX,UAAU,EACV,sBAAsB,EAGtB,oBAAoB,EACpB,qBAAqB,EAGrB,cAAc,EACd,YAAY,EACZ,OAAO,EACP,WAAW,EACX,gBAAgB,EAChB,mBAAmB,EACnB,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACd,SAAS,EAGT,cAAc,EACd,WAAW,EACX,eAAe,EACf,oBAAoB,EACpB,gBAAgB,EAGhB,UAAU,EACV,gBAAgB,EAChB,oBAAoB,EAGpB,aAAa,EACb,wBAAwB,EACxB,eAAe,EACf,4BAA4B,EAG5B,IAAI,EACJ,eAAe,EACf,eAAe,EAGf,MAAM,EAGN,MAAM,GACP,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,QAAQ,EACR,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,eAAe,GAChB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,YAAY,EACZ,eAAe,EACf,kBAAkB,EAClB,WAAW,EACX,eAAe,GAChB,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGvC,YAAY,EACV,cAAc,EACd,qBAAqB,EACrB,eAAe,EACf,gBAAgB,EAChB,UAAU,GACX,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG1D,YAAY,EACV,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAG3B,YAAY,EACV,SAAS,EACT,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAG3F,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAGjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAGzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAGxD,YAAY,EAEV,GAAG,EACH,SAAS,EACT,OAAO,EACP,eAAe,EACf,cAAc,EAGd,aAAa,EACb,WAAW,EACX,UAAU,EAGV,YAAY,EACZ,aAAa,EAAE,oCAAoC;AACnD,kBAAkB,EAClB,iBAAiB,EAGjB,gBAAgB,EAChB,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,EACjB,qBAAqB,EACrB,qBAAqB,EACrB,eAAe,EACf,SAAS,EAGT,aAAa,EACb,mBAAmB,EACnB,mBAAmB,EACnB,OAAO,EACP,gBAAgB,EAGhB,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,WAAW,EACX,UAAU,EACV,sBAAsB,EAGtB,oBAAoB,EACpB,qBAAqB,EAGrB,cAAc,EACd,YAAY,EACZ,OAAO,EACP,WAAW,EACX,gBAAgB,EAChB,mBAAmB,EACnB,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACd,SAAS,EAGT,cAAc,EACd,WAAW,EACX,eAAe,EACf,oBAAoB,EACpB,gBAAgB,EAGhB,UAAU,EACV,gBAAgB,EAChB,oBAAoB,EAGpB,aAAa,EACb,wBAAwB,EACxB,eAAe,EACf,4BAA4B,EAG5B,IAAI,EACJ,eAAe,EACf,eAAe,EAGf,MAAM,EAGN,MAAM,GACP,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,QAAQ,EACR,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,eAAe,GAChB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,YAAY,EACZ,eAAe,EACf,kBAAkB,EAClB,WAAW,EACX,eAAe,GAChB,MAAM,gBAAgB,CAAC"}
package/dist/index.js CHANGED
@@ -44,6 +44,8 @@ export { createWebSocketTransport, createConnectRPCTransport } from "./transport
44
44
  export { BrowserKVClient, BrowserKVBucketHandle } from "./kv.js";
45
45
  // Config exports
46
46
  export { BrowserConfigClient } from "./config-client.js";
47
+ // Subscription manager (for typing singleton/cached references)
48
+ export { SubscriptionManager } from "./subscription.js";
47
49
  // Re-export utilities
48
50
  export { patterns, DEFAULT_SERVER_URL, DEFAULT_WS_URL, DEFAULT_TIMEOUTS, getServerUrl, getWebSocketUrl, } from "@ironflow/core";
49
51
  // Re-export error types
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAEH,qBAAqB;AACrB,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAUvC,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAe1D,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAE3F,aAAa;AACb,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAEjE,iBAAiB;AACjB,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AA8FzD,sBAAsB;AACtB,OAAO,EACL,QAAQ,EACR,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,eAAe,GAChB,MAAM,gBAAgB,CAAC;AAExB,wBAAwB;AACxB,OAAO,EACL,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,YAAY,EACZ,eAAe,EACf,kBAAkB,EAClB,WAAW,EACX,eAAe,GAChB,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAEH,qBAAqB;AACrB,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAUvC,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAe1D,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAE3F,aAAa;AACb,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAEjE,iBAAiB;AACjB,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEzD,gEAAgE;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AA8FxD,sBAAsB;AACtB,OAAO,EACL,QAAQ,EACR,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,eAAe,GAChB,MAAM,gBAAgB,CAAC;AAExB,wBAAwB;AACxB,OAAO,EACL,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,YAAY,EACZ,eAAe,EACf,kBAAkB,EAClB,WAAW,EACX,eAAe,GAChB,MAAM,gBAAgB,CAAC"}
@@ -32,12 +32,19 @@ export declare class SubscriptionManager {
32
32
  private patternToPendingKeys;
33
33
  private connectionChangeCallbacks;
34
34
  private errorCallbacks;
35
+ /** Shared in-flight connect promise so concurrent subscribe() calls don't double-connect. */
36
+ private connectPromise;
37
+ /** Wired in constructor; removed in disconnect(). SSR-guarded. */
38
+ private visibilityListener;
39
+ private readonly autoConnectTimeoutMs;
35
40
  constructor(transport: Transport, logger?: Logger | false);
36
41
  /**
37
42
  * Subscribe to events matching a pattern
38
43
  */
39
44
  subscribe<T = unknown>(pattern: string | string[], callbacksAndOptions: SubscriptionCallbacks<T> & BrowserSubscribeOptions): Promise<Subscription | AckableSubscription>;
40
45
  private subscribeSingle;
46
+ /** Remove a pending subscription entry from both tracking maps. */
47
+ private removePending;
41
48
  /**
42
49
  * Unsubscribe by pattern
43
50
  */
@@ -66,6 +73,13 @@ export declare class SubscriptionManager {
66
73
  * Connect to the server
67
74
  */
68
75
  connect(): Promise<void>;
76
+ /**
77
+ * Ensure the transport is connected, sharing a single in-flight connect
78
+ * across concurrent callers. Resolves when `onConnectionChange` reports
79
+ * "connected"; rejects if the transport's connect() throws or the
80
+ * auto-connect timeout elapses.
81
+ */
82
+ private ensureConnected;
69
83
  /**
70
84
  * Disconnect from the server
71
85
  */
@@ -1 +1 @@
1
- {"version":3,"file":"subscription.d.ts","sourceRoot":"","sources":["../src/subscription.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAEV,qBAAqB,EACrB,eAAe,EACf,gBAAgB,EAChB,YAAY,EACZ,mBAAmB,EACnB,qBAAqB,EACrB,MAAM,EACP,MAAM,gBAAgB,CAAC;AAExB,OAAO,KAAK,EAAE,SAAS,EAAsB,MAAM,sBAAsB,CAAC;AAE1E;;GAEG;AACH,MAAM,WAAW,uBAAwB,SAAQ,gBAAgB;IAC/D,wCAAwC;IACxC,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAkBD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,sCAAsC;IACtC,GAAG,CAAC,CAAC,GAAG,OAAO,EACb,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,qBAAqB,CAAC,CAAC,CAAC,GAAG,uBAAuB,GAC5D,OAAO,CAAC,YAAY,GAAG,mBAAmB,CAAC,CAAC;IAC/C,iDAAiD;IACjD,cAAc,IAAI,IAAI,CAAC;CACxB;AAED;;GAEG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,SAAS,CAAY;IAE7B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,aAAa,CAA6C;IAClE,OAAO,CAAC,WAAW,CAAkC;IACrD,OAAO,CAAC,eAAe,CAA6C;IACpE,kEAAkE;IAClE,OAAO,CAAC,oBAAoB,CAAoC;IAChE,OAAO,CAAC,yBAAyB,CAAoD;IACrF,OAAO,CAAC,cAAc,CAA0D;gBAEpE,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK;IAgBzD;;OAEG;IACG,SAAS,CAAC,CAAC,GAAG,OAAO,EACzB,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,EAC1B,mBAAmB,EAAE,qBAAqB,CAAC,CAAC,CAAC,GAAG,uBAAuB,GACtE,OAAO,CAAC,YAAY,GAAG,mBAAmB,CAAC;YAsChC,eAAe;IAiE7B;;OAEG;IACH,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAW3C;;OAEG;IACH,eAAe,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IAW7C;;OAEG;IACH,WAAW,IAAI,iBAAiB;IAqBhC;;OAEG;IACH,kBAAkB,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,GAAG,MAAM,IAAI;IAK1E;;OAEG;IACH,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,GAAG,MAAM,IAAI;IAKrE;;OAEG;IACH,IAAI,eAAe,IAAI,eAAe,CAErC;IAED;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAI9B;;OAEG;IACH,UAAU,IAAI,IAAI;IAQlB;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;OAEG;IACH,MAAM,IAAI,IAAI;IAId,OAAO,CAAC,WAAW;IAcnB,OAAO,CAAC,WAAW;IAanB,OAAO,CAAC,sBAAsB;IAa9B,OAAO,CAAC,gBAAgB;IAqDxB,OAAO,CAAC,qBAAqB;CAqB9B"}
1
+ {"version":3,"file":"subscription.d.ts","sourceRoot":"","sources":["../src/subscription.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAEV,qBAAqB,EACrB,eAAe,EACf,gBAAgB,EAChB,YAAY,EACZ,mBAAmB,EACnB,qBAAqB,EACrB,MAAM,EACP,MAAM,gBAAgB,CAAC;AAExB,OAAO,KAAK,EAAE,SAAS,EAAsB,MAAM,sBAAsB,CAAC;AAE1E;;GAEG;AACH,MAAM,WAAW,uBAAwB,SAAQ,gBAAgB;IAC/D,wCAAwC;IACxC,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAkBD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,sCAAsC;IACtC,GAAG,CAAC,CAAC,GAAG,OAAO,EACb,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,qBAAqB,CAAC,CAAC,CAAC,GAAG,uBAAuB,GAC5D,OAAO,CAAC,YAAY,GAAG,mBAAmB,CAAC,CAAC;IAC/C,iDAAiD;IACjD,cAAc,IAAI,IAAI,CAAC;CACxB;AAQD;;GAEG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,SAAS,CAAY;IAE7B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,aAAa,CAA6C;IAClE,OAAO,CAAC,WAAW,CAAkC;IACrD,OAAO,CAAC,eAAe,CAA6C;IACpE,kEAAkE;IAClE,OAAO,CAAC,oBAAoB,CAAoC;IAChE,OAAO,CAAC,yBAAyB,CAAoD;IACrF,OAAO,CAAC,cAAc,CAA0D;IAChF,6FAA6F;IAC7F,OAAO,CAAC,cAAc,CAA8B;IACpD,kEAAkE;IAClE,OAAO,CAAC,kBAAkB,CAA6B;IACvD,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAS;gBAElC,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK;IAoCzD;;OAEG;IACG,SAAS,CAAC,CAAC,GAAG,OAAO,EACzB,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,EAC1B,mBAAmB,EAAE,qBAAqB,CAAC,CAAC,CAAC,GAAG,uBAAuB,GACtE,OAAO,CAAC,YAAY,GAAG,mBAAmB,CAAC;YAsChC,eAAe;IA2F7B,mEAAmE;IACnE,OAAO,CAAC,aAAa;IASrB;;OAEG;IACH,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAW3C;;OAEG;IACH,eAAe,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IAW7C;;OAEG;IACH,WAAW,IAAI,iBAAiB;IAqBhC;;OAEG;IACH,kBAAkB,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,GAAG,MAAM,IAAI;IAK1E;;OAEG;IACH,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,GAAG,MAAM,IAAI;IAKrE;;OAEG;IACH,IAAI,eAAe,IAAI,eAAe,CAErC;IAED;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAI9B;;;;;OAKG;IACH,OAAO,CAAC,eAAe;IAwEvB;;OAEG;IACH,UAAU,IAAI,IAAI;IAclB;;OAEG;IACH,KAAK,IAAI,IAAI;IAIb;;OAEG;IACH,MAAM,IAAI,IAAI;IAId,OAAO,CAAC,WAAW;IAcnB,OAAO,CAAC,WAAW;IAanB,OAAO,CAAC,sBAAsB;IAa9B,OAAO,CAAC,gBAAgB;IAqDxB,OAAO,CAAC,qBAAqB;CAqB9B"}
@@ -2,6 +2,11 @@
2
2
  * Subscription management for browser client
3
3
  */
4
4
  import { generateId, createNoopLogger } from "@ironflow/core";
5
+ /**
6
+ * Default auto-connect timeout (ms) used by subscribe() when the transport is
7
+ * not yet connected. 10s matches the transport's default connection timeout.
8
+ */
9
+ const DEFAULT_AUTO_CONNECT_TIMEOUT_MS = 10_000;
5
10
  /**
6
11
  * Subscription manager handles all active subscriptions
7
12
  */
@@ -16,10 +21,16 @@ export class SubscriptionManager {
16
21
  patternToPendingKeys = new Map();
17
22
  connectionChangeCallbacks = new Set();
18
23
  errorCallbacks = new Set();
24
+ /** Shared in-flight connect promise so concurrent subscribe() calls don't double-connect. */
25
+ connectPromise = null;
26
+ /** Wired in constructor; removed in disconnect(). SSR-guarded. */
27
+ visibilityListener = null;
28
+ autoConnectTimeoutMs;
19
29
  constructor(transport, logger) {
20
30
  this.transport = transport;
21
31
  this._logger = logger === false ? createNoopLogger() : (logger ?? createNoopLogger());
22
32
  this._logger.debug("SubscriptionManager initialized");
33
+ this.autoConnectTimeoutMs = DEFAULT_AUTO_CONNECT_TIMEOUT_MS;
23
34
  // Set up transport callbacks
24
35
  const callbacks = {
25
36
  onEvent: this.handleEvent.bind(this),
@@ -29,6 +40,24 @@ export class SubscriptionManager {
29
40
  onSubscribeFailed: this.handleSubscribeFailed.bind(this),
30
41
  };
31
42
  this.transport.setCallbacks(callbacks);
43
+ // Wire Page Visibility API: on return to foreground, if the transport has
44
+ // silently died (mobile Safari / long-backgrounded tab), trigger a
45
+ // reconnect health-check instead of waiting for the next user interaction.
46
+ if (typeof document !== "undefined" && typeof document.addEventListener === "function") {
47
+ const listener = () => {
48
+ if (document.hidden) {
49
+ return;
50
+ }
51
+ const state = this.transport.connectionState;
52
+ if (state !== "connected" && state !== "connecting") {
53
+ this.ensureConnected().catch(() => {
54
+ // Best-effort; transport's own reconnect loop continues.
55
+ });
56
+ }
57
+ };
58
+ document.addEventListener("visibilitychange", listener);
59
+ this.visibilityListener = listener;
60
+ }
32
61
  }
33
62
  /**
34
63
  * Subscribe to events matching a pattern
@@ -91,7 +120,7 @@ export class SubscriptionManager {
91
120
  }
92
121
  return new Promise((resolve, reject) => {
93
122
  const tempId = generateId();
94
- const state = {
123
+ const pending = {
95
124
  id: tempId,
96
125
  pattern,
97
126
  lookupKey,
@@ -101,15 +130,49 @@ export class SubscriptionManager {
101
130
  resolve: resolve,
102
131
  reject,
103
132
  };
104
- this.pendingPatterns.set(lookupKey, state);
133
+ this.pendingPatterns.set(lookupKey, pending);
105
134
  // Track lookupKey by pattern for efficient lookup when server responds
106
135
  const pendingKeys = this.patternToPendingKeys.get(pattern) ?? [];
107
136
  pendingKeys.push(lookupKey);
108
137
  this.patternToPendingKeys.set(pattern, pendingKeys);
109
- // Send subscribe request
110
- this.transport.subscribe(pattern, options);
138
+ // Auto-connect: callers shouldn't need to call connect() before
139
+ // subscribe(). When already connected, we call transport.subscribe
140
+ // synchronously (fast path — matches pre-#536 behavior). Otherwise we
141
+ // await connect and then subscribe, rejecting the promise if connect
142
+ // fails or times out. Fixes #536 Defect A, where watch()/subscribe()
143
+ // would hang forever waiting on a connect nobody kicked off.
144
+ if (this.transport.connectionState === "connected") {
145
+ this.transport.subscribe(pattern, options);
146
+ return;
147
+ }
148
+ this.ensureConnected().then(() => {
149
+ // Guard against disconnect() racing with connect: disconnect()
150
+ // clears pendingPatterns, so if ours is gone, settle the outer
151
+ // promise with a clear rejection instead of hanging — hanging
152
+ // forever is the exact class of bug this PR fixes.
153
+ if (!this.pendingPatterns.has(lookupKey)) {
154
+ reject(new Error("ironflow: subscription canceled before connect completed"));
155
+ return;
156
+ }
157
+ this.transport.subscribe(pattern, options);
158
+ }, (err) => {
159
+ this.removePending(pattern, lookupKey);
160
+ reject(err instanceof Error ? err : new Error(String(err)));
161
+ });
111
162
  });
112
163
  }
164
+ /** Remove a pending subscription entry from both tracking maps. */
165
+ removePending(pattern, lookupKey) {
166
+ this.pendingPatterns.delete(lookupKey);
167
+ const keys = this.patternToPendingKeys.get(pattern);
168
+ if (!keys)
169
+ return;
170
+ const idx = keys.indexOf(lookupKey);
171
+ if (idx >= 0)
172
+ keys.splice(idx, 1);
173
+ if (keys.length === 0)
174
+ this.patternToPendingKeys.delete(pattern);
175
+ }
113
176
  /**
114
177
  * Unsubscribe by pattern
115
178
  */
@@ -177,7 +240,79 @@ export class SubscriptionManager {
177
240
  * Connect to the server
178
241
  */
179
242
  async connect() {
180
- await this.transport.connect();
243
+ await this.ensureConnected();
244
+ }
245
+ /**
246
+ * Ensure the transport is connected, sharing a single in-flight connect
247
+ * across concurrent callers. Resolves when `onConnectionChange` reports
248
+ * "connected"; rejects if the transport's connect() throws or the
249
+ * auto-connect timeout elapses.
250
+ */
251
+ ensureConnected() {
252
+ if (this.transport.connectionState === "connected") {
253
+ return Promise.resolve();
254
+ }
255
+ if (this.connectPromise) {
256
+ return this.connectPromise;
257
+ }
258
+ const promise = new Promise((resolve, reject) => {
259
+ let settled = false;
260
+ let timeoutHandle = setTimeout(() => {
261
+ if (settled)
262
+ return;
263
+ settled = true;
264
+ cleanup();
265
+ reject(new Error(`ironflow: connect timeout after ${this.autoConnectTimeoutMs}ms`));
266
+ }, this.autoConnectTimeoutMs);
267
+ const cleanup = () => {
268
+ if (timeoutHandle) {
269
+ clearTimeout(timeoutHandle);
270
+ timeoutHandle = null;
271
+ }
272
+ unsubscribe();
273
+ };
274
+ const unsubscribe = this.onConnectionChange((state) => {
275
+ if (state === "connected" && !settled) {
276
+ settled = true;
277
+ cleanup();
278
+ resolve();
279
+ }
280
+ });
281
+ // Only start a fresh connect if the transport is idle. If it's already
282
+ // "connecting" or "reconnecting", the onConnectionChange listener above
283
+ // will resolve us when the in-flight connect finishes.
284
+ if (this.transport.connectionState === "disconnected") {
285
+ this.transport.connect().then(() => {
286
+ // Real transports flip state to "connected" before the connect()
287
+ // promise resolves, so the listener has already fired. The resolve
288
+ // here covers transports / test doubles that don't synthesize a
289
+ // connection-state callback but do signal success by resolving.
290
+ if (settled)
291
+ return;
292
+ settled = true;
293
+ cleanup();
294
+ resolve();
295
+ }, (err) => {
296
+ if (settled)
297
+ return;
298
+ settled = true;
299
+ cleanup();
300
+ reject(err instanceof Error ? err : new Error(String(err)));
301
+ });
302
+ }
303
+ });
304
+ // .finally returns a NEW promise; store that one so the === check in
305
+ // the cleanup closure can actually match what's held on the instance.
306
+ // Without this, a rejected connect would stay cached forever and the
307
+ // next ensureConnected() caller would get an instant rejection instead
308
+ // of retrying.
309
+ const wrapped = promise.finally(() => {
310
+ if (this.connectPromise === wrapped) {
311
+ this.connectPromise = null;
312
+ }
313
+ });
314
+ this.connectPromise = wrapped;
315
+ return wrapped;
181
316
  }
182
317
  /**
183
318
  * Disconnect from the server
@@ -188,6 +323,11 @@ export class SubscriptionManager {
188
323
  this.patternToId.clear();
189
324
  this.pendingPatterns.clear();
190
325
  this.patternToPendingKeys.clear();
326
+ this.connectPromise = null;
327
+ if (this.visibilityListener && typeof document !== "undefined") {
328
+ document.removeEventListener("visibilitychange", this.visibilityListener);
329
+ this.visibilityListener = null;
330
+ }
191
331
  }
192
332
  /**
193
333
  * Pause subscriptions (for tab visibility)
@@ -1 +1 @@
1
- {"version":3,"file":"subscription.js","sourceRoot":"","sources":["../src/subscription.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"subscription.js","sourceRoot":"","sources":["../src/subscription.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ironflow/browser",
3
- "version": "0.19.0",
3
+ "version": "0.19.2",
4
4
  "description": "Browser client for Ironflow event-driven backend platform - real-time subscriptions, workflow triggers, and event emission",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -17,23 +17,12 @@
17
17
  "dist",
18
18
  "README.md"
19
19
  ],
20
- "scripts": {
21
- "build": "tsc",
22
- "build:bundle": "tsc && node scripts/bundle.mjs",
23
- "dev": "tsc --watch",
24
- "test": "vitest run",
25
- "test:watch": "vitest",
26
- "lint": "eslint src/",
27
- "clean": "rm -rf dist dist-bundle tsconfig.tsbuildinfo",
28
- "typecheck": "tsc --noEmit",
29
- "pack:local": "pnpm build:bundle && cd dist-bundle && pnpm pack --pack-destination /tmp/ironflow-packs"
30
- },
31
20
  "dependencies": {
32
21
  "@bufbuild/protobuf": "^2.5.1",
33
22
  "@connectrpc/connect": "^2.1.1",
34
23
  "@connectrpc/connect-web": "^2.1.1",
35
- "@ironflow/core": "0.19.0",
36
- "zod": "^4.3.5"
24
+ "zod": "^4.3.5",
25
+ "@ironflow/core": "^0.19.2"
37
26
  },
38
27
  "devDependencies": {
39
28
  "@types/node": "^22.14.0",
@@ -70,5 +59,16 @@
70
59
  },
71
60
  "publishConfig": {
72
61
  "access": "restricted"
62
+ },
63
+ "scripts": {
64
+ "build": "tsc",
65
+ "build:bundle": "tsc && node scripts/bundle.mjs",
66
+ "dev": "tsc --watch",
67
+ "test": "vitest run",
68
+ "test:watch": "vitest",
69
+ "lint": "eslint src/",
70
+ "clean": "rm -rf dist dist-bundle tsconfig.tsbuildinfo",
71
+ "typecheck": "tsc --noEmit",
72
+ "pack:local": "pnpm build:bundle && cd dist-bundle && pnpm pack --pack-destination /tmp/ironflow-packs"
73
73
  }
74
- }
74
+ }