@transport-io/react 0.1.0 → 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.
package/README.md CHANGED
@@ -10,10 +10,32 @@ React and react-dom are peer dependencies and the floor is **React 19.2**, becau
10
10
  is built on `useEffectEvent`. There is no other runtime dependency, and core neither depends
11
11
  on this package nor mentions it.
12
12
 
13
+ ## Bind the hooks to your map
14
+
15
+ ```ts
16
+ import { defineContract, type MapOf, reliable } from 'transport-io'
17
+ import { createHooks } from '@transport-io/react'
18
+
19
+ export const contract = defineContract({ chat: reliable<{ body: string }>() })
20
+ export interface AppMap extends MapOf<typeof contract> {}
21
+
22
+ export const api = createHooks<AppMap>()
23
+ ```
24
+
25
+ Then `api.useEvent('chat', …)`, or destructure it. Nothing is registered globally, so two
26
+ contracts in one process are two objects, and the type follows the import.
27
+
28
+ Write the `MapOf` line: passing `MapOf<typeof contract>` straight in takes `api.useEvent`'s
29
+ hover from 129 characters to 411, with your validator's internals in it.
30
+
31
+ The named exports below also exist and read the globally registered map instead. They work,
32
+ and they are the older path.
33
+
13
34
  ## What it gives you
14
35
 
15
36
  | | |
16
37
  |---|---|
38
+ | `createHooks<AppMap>()` | The hooks, typed for one contract. The documented default. |
17
39
  | `<TransportProvider client>` | Holds the client and connects while mounted. Takes a client rather than making one. |
18
40
  | `useClient()` | The client itself, for `emit` and anything else. |
19
41
  | `useConnection()` | Status, session id, rooms, last error, and the connect and disconnect calls. |
package/dist/context.d.ts CHANGED
@@ -9,9 +9,9 @@ import { type ReactNode } from 'react';
9
9
  * than one user, so the documented pattern builds one per browser session inside a client
10
10
  * component and the server never shares it.
11
11
  */
12
- import type { Client } from 'transport-io';
13
- export interface TransportProviderProps {
14
- readonly client: Client;
12
+ import type { AnyMap, Client, Registered } from 'transport-io';
13
+ export interface TransportProviderProps<M extends AnyMap = Registered> {
14
+ readonly client: Client<M>;
15
15
  /**
16
16
  * Connect while the provider is mounted. On by default: `connect` and `disconnect` are
17
17
  * idempotent and refcounted in core, so mounting twice is safe, and every application
@@ -20,12 +20,12 @@ export interface TransportProviderProps {
20
20
  readonly autoConnect?: boolean;
21
21
  readonly children?: ReactNode;
22
22
  }
23
- export declare function TransportProvider({ client, autoConnect, children, }: TransportProviderProps): ReactNode;
23
+ export declare function TransportProvider<M extends AnyMap = Registered>({ client, autoConnect, children, }: TransportProviderProps<M>): ReactNode;
24
24
  /**
25
25
  * The client from the nearest provider.
26
26
  *
27
27
  * Throws a plain `Error` rather than a `TransportError`: nothing has gone wrong on the
28
28
  * wire, and core must never gain a React-shaped error code.
29
29
  */
30
- export declare function useClient(): Client;
30
+ export declare function useClient(): Client<Registered>;
31
31
  //# sourceMappingURL=context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.tsx"],"names":[],"mappings":"AACA,OAAO,EAAiB,KAAK,SAAS,EAAyB,MAAM,OAAO,CAAA;AAC5E;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AAI1C,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB;;;;OAIG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;IAC9B,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;CAC9B;AAED,wBAAgB,iBAAiB,CAAC,EAChC,MAAM,EACN,WAAkB,EAClB,QAAQ,GACT,EAAE,sBAAsB,GAAG,SAAS,CAapC;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,IAAI,MAAM,CAUlC"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.tsx"],"names":[],"mappings":"AACA,OAAO,EAAiB,KAAK,SAAS,EAAyB,MAAM,OAAO,CAAA;AAC5E;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAO9D,MAAM,WAAW,sBAAsB,CAAC,CAAC,SAAS,MAAM,GAAG,UAAU;IACnE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAA;IAC1B;;;;OAIG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAA;IAC9B,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAA;CAC9B;AAED,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,MAAM,GAAG,UAAU,EAAE,EAC/D,MAAM,EACN,WAAkB,EAClB,QAAQ,GACT,EAAE,sBAAsB,CAAC,CAAC,CAAC,GAAG,SAAS,CAevC;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,IAAI,MAAM,CAAC,UAAU,CAAC,CAU9C"}
package/dist/context.js CHANGED
@@ -1,6 +1,9 @@
1
1
  'use client';
2
2
  import { jsx as _jsx } from "react/jsx-runtime";
3
3
  import { createContext, useContext, useEffect } from 'react';
4
+ // Stored loosely and narrowed on the way out. The provider is generic so it accepts a client
5
+ // for any map, which is what `createHooks` needs: nothing is registered, so `Client` alone
6
+ // would mean `Client<NoContractRegistered>` and reject every real client.
4
7
  const ClientContext = createContext(null);
5
8
  export function TransportProvider({ client, autoConnect = true, children, }) {
6
9
  useEffect(() => {
@@ -14,7 +17,7 @@ export function TransportProvider({ client, autoConnect = true, children, }) {
14
17
  client.disconnect();
15
18
  };
16
19
  }, [client, autoConnect]);
17
- return _jsx(ClientContext.Provider, { value: client, children: children });
20
+ return (_jsx(ClientContext.Provider, { value: client, children: children }));
18
21
  }
19
22
  /**
20
23
  * The client from the nearest provider.
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AACZ,OAAO,EAAE,aAAa,EAAkB,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAa5E,MAAM,aAAa,GAAG,aAAa,CAAgB,IAAI,CAAC,CAAA;AAaxD,MAAM,UAAU,iBAAiB,CAAC,EAChC,MAAM,EACN,WAAW,GAAG,IAAI,EAClB,QAAQ,GACe;IACvB,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,WAAW;YAAE,OAAM;QACxB,kFAAkF;QAClF,sFAAsF;QACtF,+CAA+C;QAC/C,KAAK,MAAM,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;QAC5C,OAAO,GAAG,EAAE;YACV,MAAM,CAAC,UAAU,EAAE,CAAA;QACrB,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAA;IAEzB,OAAO,KAAC,aAAa,CAAC,QAAQ,IAAC,KAAK,EAAE,MAAM,YAAG,QAAQ,GAA0B,CAAA;AACnF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,SAAS;IACvB,MAAM,MAAM,GAAG,UAAU,CAAC,aAAa,CAAC,CAAA;IACxC,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACb,uFAAuF;YACrF,qFAAqF;YACrF,8BAA8B,CACjC,CAAA;IACH,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AACZ,OAAO,EAAE,aAAa,EAAkB,UAAU,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAa5E,6FAA6F;AAC7F,2FAA2F;AAC3F,0EAA0E;AAC1E,MAAM,aAAa,GAAG,aAAa,CAAwB,IAAI,CAAC,CAAA;AAahE,MAAM,UAAU,iBAAiB,CAAgC,EAC/D,MAAM,EACN,WAAW,GAAG,IAAI,EAClB,QAAQ,GACkB;IAC1B,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,WAAW;YAAE,OAAM;QACxB,kFAAkF;QAClF,sFAAsF;QACtF,+CAA+C;QAC/C,KAAK,MAAM,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;QAC5C,OAAO,GAAG,EAAE;YACV,MAAM,CAAC,UAAU,EAAE,CAAA;QACrB,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAA;IAEzB,OAAO,CACL,KAAC,aAAa,CAAC,QAAQ,IAAC,KAAK,EAAE,MAAwB,YAAG,QAAQ,GAA0B,CAC7F,CAAA;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,SAAS;IACvB,MAAM,MAAM,GAAG,UAAU,CAAC,aAAa,CAAC,CAAA;IACxC,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACb,uFAAuF;YACrF,qFAAqF;YACrF,8BAA8B,CACjC,CAAA;IACH,CAAC;IACD,OAAO,MAA4B,CAAA;AACrC,CAAC"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Hooks bound to one contract, without registering it globally.
3
+ *
4
+ * Everywhere else in this library the map is passed explicitly - `new Client<AppMap>(…)` -
5
+ * because the type then follows the import rather than the load order, and two contracts in
6
+ * one process are simply two types. The hooks could not do that: they read the globally
7
+ * registered map, so the React binding was the only path that required
8
+ * `declare module 'transport-io'`.
9
+ *
10
+ * This closes that. `createHooks<AppMap>()` hands back the same hooks typed for one map, and
11
+ * is the same shape tRPC uses for the same reason.
12
+ *
13
+ * Measured, because the interface line is what makes it work: `api.useEvent` hovers at 129
14
+ * characters against 123 for the registered form, and 116 when destructured. Handing
15
+ * `MapOf<typeof contract>` in directly instead of a named interface takes it to 411, which is
16
+ * the alias expansion this project has now measured three times.
17
+ */
18
+ import type { AnyMap, CallableOf, Client, StreamableOf } from 'transport-io';
19
+ import { type UseCallOptions, type UseCallResult } from './use-call.ts';
20
+ import { type Connection } from './use-connection.ts';
21
+ import { type UseStreamOptions, type UseStreamResult } from './use-stream.ts';
22
+ export interface Hooks<M extends AnyMap> {
23
+ useClient(): Client<M>;
24
+ useConnection(): Connection;
25
+ useEvent<K extends keyof M & string>(event: K, handler: (payload: M[K]['payload']) => void): void;
26
+ useCall<K extends CallableOf<M> & string>(event: K, options?: UseCallOptions): UseCallResult<M, K>;
27
+ useStream<K extends StreamableOf<M> & string>(event: K, options?: UseStreamOptions<M[K]['yields']>): UseStreamResult<M, K>;
28
+ }
29
+ /**
30
+ * The hooks, typed for one contract.
31
+ *
32
+ * ```ts
33
+ * export const api = createHooks<AppMap>()
34
+ * ```
35
+ *
36
+ * The cast is the whole implementation and it is honest: `M` exists only in the types. Every
37
+ * hook below is the same function the named exports are, and none of them reads the map at
38
+ * runtime - the client does, from the contract it was constructed with. What the type
39
+ * parameter changes is which event names and payloads the compiler accepts.
40
+ */
41
+ export declare function createHooks<M extends AnyMap>(): Hooks<M>;
42
+ //# sourceMappingURL=create-hooks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-hooks.d.ts","sourceRoot":"","sources":["../src/create-hooks.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAE5E,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,aAAa,EAAW,MAAM,eAAe,CAAA;AAChF,OAAO,EAAE,KAAK,UAAU,EAAiB,MAAM,qBAAqB,CAAA;AAEpE,OAAO,EAAE,KAAK,gBAAgB,EAAE,KAAK,eAAe,EAAa,MAAM,iBAAiB,CAAA;AAExF,MAAM,WAAW,KAAK,CAAC,CAAC,SAAS,MAAM;IACrC,SAAS,IAAI,MAAM,CAAC,CAAC,CAAC,CAAA;IACtB,aAAa,IAAI,UAAU,CAAA;IAC3B,QAAQ,CAAC,CAAC,SAAS,MAAM,CAAC,GAAG,MAAM,EACjC,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,IAAI,GAC1C,IAAI,CAAA;IACP,OAAO,CAAC,CAAC,SAAS,UAAU,CAAC,CAAC,CAAC,GAAG,MAAM,EACtC,KAAK,EAAE,CAAC,EACR,OAAO,CAAC,EAAE,cAAc,GACvB,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IACtB,SAAS,CAAC,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,GAAG,MAAM,EAC1C,KAAK,EAAE,CAAC,EACR,OAAO,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,GACzC,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;CACzB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,CAExD"}
@@ -0,0 +1,22 @@
1
+ 'use client';
2
+ import { useClient } from './context.js';
3
+ import { useCall } from './use-call.js';
4
+ import { useConnection } from './use-connection.js';
5
+ import { useEvent } from './use-event.js';
6
+ import { useStream } from './use-stream.js';
7
+ /**
8
+ * The hooks, typed for one contract.
9
+ *
10
+ * ```ts
11
+ * export const api = createHooks<AppMap>()
12
+ * ```
13
+ *
14
+ * The cast is the whole implementation and it is honest: `M` exists only in the types. Every
15
+ * hook below is the same function the named exports are, and none of them reads the map at
16
+ * runtime - the client does, from the contract it was constructed with. What the type
17
+ * parameter changes is which event names and payloads the compiler accepts.
18
+ */
19
+ export function createHooks() {
20
+ return { useClient, useConnection, useEvent, useCall, useStream };
21
+ }
22
+ //# sourceMappingURL=create-hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-hooks.js","sourceRoot":"","sources":["../src/create-hooks.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAmBZ,OAAO,EAAE,SAAS,EAAE,MAAM,cAAe,CAAA;AACzC,OAAO,EAA2C,OAAO,EAAE,MAAM,eAAe,CAAA;AAChF,OAAO,EAAmB,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAA+C,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAmBxF;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,WAAW;IACzB,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAyB,CAAA;AAC1F,CAAC"}
package/dist/index.d.ts CHANGED
@@ -6,6 +6,7 @@
6
6
  * on a server is safe.
7
7
  */
8
8
  export { TransportProvider, type TransportProviderProps, useClient } from './context.tsx';
9
+ export { createHooks, type Hooks } from './create-hooks.ts';
9
10
  export { type CallState, type UseCallOptions, type UseCallResult, useCall } from './use-call.ts';
10
11
  export { type Connection, useConnection } from './use-connection.ts';
11
12
  export { useEvent } from './use-event.ts';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,iBAAiB,EAAE,KAAK,sBAAsB,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACzF,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,cAAc,EAAE,KAAK,aAAa,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAChG,OAAO,EAAE,KAAK,UAAU,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,SAAS,GACV,MAAM,iBAAiB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,iBAAiB,EAAE,KAAK,sBAAsB,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AACzF,OAAO,EAAE,WAAW,EAAE,KAAK,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAC3D,OAAO,EAAE,KAAK,SAAS,EAAE,KAAK,cAAc,EAAE,KAAK,aAAa,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAChG,OAAO,EAAE,KAAK,UAAU,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,SAAS,GACV,MAAM,iBAAiB,CAAA"}
package/dist/index.js CHANGED
@@ -6,6 +6,7 @@
6
6
  * on a server is safe.
7
7
  */
8
8
  export { TransportProvider, useClient } from './context.js';
9
+ export { createHooks } from './create-hooks.js';
9
10
  export { useCall } from './use-call.js';
10
11
  export { useConnection } from './use-connection.js';
11
12
  export { useEvent } from './use-event.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,iBAAiB,EAA+B,SAAS,EAAE,MAAM,cAAe,CAAA;AACzF,OAAO,EAA2D,OAAO,EAAE,MAAM,eAAe,CAAA;AAChG,OAAO,EAAmB,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAIL,SAAS,GACV,MAAM,iBAAiB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,iBAAiB,EAA+B,SAAS,EAAE,MAAM,cAAe,CAAA;AACzF,OAAO,EAAE,WAAW,EAAc,MAAM,mBAAmB,CAAA;AAC3D,OAAO,EAA2D,OAAO,EAAE,MAAM,eAAe,CAAA;AAChG,OAAO,EAAmB,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAIL,SAAS,GACV,MAAM,iBAAiB,CAAA"}
@@ -1,4 +1,4 @@
1
- import { type CallableOf, type Registered, TransportError } from 'transport-io';
1
+ import { type AnyMap, type CallableOf, type Registered, TransportError } from 'transport-io';
2
2
  /**
3
3
  * A union rather than independent flags.
4
4
  *
@@ -28,10 +28,10 @@ export interface UseCallOptions {
28
28
  */
29
29
  readonly abortOnUnmount?: boolean;
30
30
  }
31
- export type UseCallResult<K extends CallableOf<Registered> & string> = readonly [
32
- (payload: Registered[K]['payload']) => Promise<void>,
33
- CallState<Registered[K]['returns']>
31
+ export type UseCallResult<M extends AnyMap, K extends CallableOf<M> & string> = readonly [
32
+ (payload: M[K]['payload']) => Promise<void>,
33
+ CallState<M[K]['returns']>
34
34
  ];
35
35
  /** Request and response, with the state a component actually renders. */
36
- export declare function useCall<K extends CallableOf<Registered> & string>(event: K, options?: UseCallOptions): UseCallResult<K>;
36
+ export declare function useCall<K extends CallableOf<Registered> & string>(event: K, options?: UseCallOptions): UseCallResult<Registered, K>;
37
37
  //# sourceMappingURL=use-call.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-call.d.ts","sourceRoot":"","sources":["../src/use-call.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,UAAU,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAG/E;;;;;;GAMG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,IACnB;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC3B;IAAE,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAA;CAAE,GAC9B;IAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAA;CAAE,GAC5D;IAAE,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;CAAE,CAAA;AAEpD,MAAM,WAAW,cAAc;IAC7B;;;;;;;OAOG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAA;CAClC;AAED,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,UAAU,CAAC,UAAU,CAAC,GAAG,MAAM,IAAI,SAAS;IAC9E,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC;IACpD,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;CACpC,CAAA;AAWD,yEAAyE;AACzE,wBAAgB,OAAO,CAAC,CAAC,SAAS,UAAU,CAAC,UAAU,CAAC,GAAG,MAAM,EAC/D,KAAK,EAAE,CAAC,EACR,OAAO,CAAC,EAAE,cAAc,GACvB,aAAa,CAAC,CAAC,CAAC,CA0ClB"}
1
+ {"version":3,"file":"use-call.d.ts","sourceRoot":"","sources":["../src/use-call.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,UAAU,EAAE,KAAK,UAAU,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAG5F;;;;;;GAMG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,IACnB;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC3B;IAAE,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAA;CAAE,GAC9B;IAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAA;CAAE,GAC5D;IAAE,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;CAAE,CAAA;AAEpD,MAAM,WAAW,cAAc;IAC7B;;;;;;;OAOG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAA;CAClC;AAED,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,UAAU,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,SAAS;IACvF,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC;IAC3C,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;CAC3B,CAAA;AAWD,yEAAyE;AACzE,wBAAgB,OAAO,CAAC,CAAC,SAAS,UAAU,CAAC,UAAU,CAAC,GAAG,MAAM,EAC/D,KAAK,EAAE,CAAC,EACR,OAAO,CAAC,EAAE,cAAc,GACvB,aAAa,CAAC,UAAU,EAAE,CAAC,CAAC,CA0C9B"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-call.js","sourceRoot":"","sources":["../src/use-call.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AACZ,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACzE,OAAO,EAAoC,cAAc,EAAE,MAAM,cAAc,CAAA;AAC/E,OAAO,EAAE,SAAS,EAAE,MAAM,cAAe,CAAA;AAgCzC,SAAS,gBAAgB,CAAC,CAAU;IAClC,IAAI,CAAC,YAAY,cAAc;QAAE,OAAO,CAAC,CAAA;IACzC,OAAO,IAAI,cAAc,CACvB,kBAAkB,EAClB,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAC1C,iEAAiE,CAClE,CAAA;AACH,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,OAAO,CACrB,KAAQ,EACR,OAAwB;IAExB,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;IAC1B,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAsC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;IAC3F,MAAM,cAAc,GAAG,OAAO,EAAE,cAAc,IAAI,IAAI,CAAA;IAEtD,MAAM,QAAQ,GAAG,MAAM,CAAyB,IAAI,CAAC,CAAA;IACrD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;IAE5B,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,CAAC,OAAO,GAAG,IAAI,CAAA;QACtB,OAAO,GAAG,EAAE;YACV,OAAO,CAAC,OAAO,GAAG,KAAK,CAAA;YACvB,IAAI,cAAc;gBAAE,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,CAAA;QAC/C,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAA;IAEpB,MAAM,MAAM,GAAG,WAAW,CACxB,KAAK,EAAE,OAAiC,EAAiB,EAAE;QACzD,mFAAmF;QACnF,wEAAwE;QACxE,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,CAAA;QACzB,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAA;QACxC,QAAQ,CAAC,OAAO,GAAG,UAAU,CAAA;QAC7B,QAAQ,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAA;QAC/B,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAA;YAC7E,IAAI,OAAO,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;gBACvD,QAAQ,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;YACvC,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,kFAAkF;YAClF,mEAAmE;YACnE,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO;gBAAE,OAAM;YACrC,IAAI,OAAO,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;gBACvD,QAAQ,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;YAC3D,CAAC;QACH,CAAC;IACH,CAAC,EACD,CAAC,MAAM,EAAE,KAAK,CAAC,CAChB,CAAA;IAED,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,KAAK,CAAU,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAA;AACjE,CAAC"}
1
+ {"version":3,"file":"use-call.js","sourceRoot":"","sources":["../src/use-call.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AACZ,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACzE,OAAO,EAAiD,cAAc,EAAE,MAAM,cAAc,CAAA;AAC5F,OAAO,EAAE,SAAS,EAAE,MAAM,cAAe,CAAA;AAgCzC,SAAS,gBAAgB,CAAC,CAAU;IAClC,IAAI,CAAC,YAAY,cAAc;QAAE,OAAO,CAAC,CAAA;IACzC,OAAO,IAAI,cAAc,CACvB,kBAAkB,EAClB,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAC1C,iEAAiE,CAClE,CAAA;AACH,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,OAAO,CACrB,KAAQ,EACR,OAAwB;IAExB,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;IAC1B,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAsC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;IAC3F,MAAM,cAAc,GAAG,OAAO,EAAE,cAAc,IAAI,IAAI,CAAA;IAEtD,MAAM,QAAQ,GAAG,MAAM,CAAyB,IAAI,CAAC,CAAA;IACrD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;IAE5B,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,CAAC,OAAO,GAAG,IAAI,CAAA;QACtB,OAAO,GAAG,EAAE;YACV,OAAO,CAAC,OAAO,GAAG,KAAK,CAAA;YACvB,IAAI,cAAc;gBAAE,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,CAAA;QAC/C,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAA;IAEpB,MAAM,MAAM,GAAG,WAAW,CACxB,KAAK,EAAE,OAAiC,EAAiB,EAAE;QACzD,mFAAmF;QACnF,wEAAwE;QACxE,QAAQ,CAAC,OAAO,EAAE,KAAK,EAAE,CAAA;QACzB,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAA;QACxC,QAAQ,CAAC,OAAO,GAAG,UAAU,CAAA;QAC7B,QAAQ,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAA;QAC/B,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAA;YAC7E,IAAI,OAAO,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;gBACvD,QAAQ,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;YACvC,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,kFAAkF;YAClF,mEAAmE;YACnE,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO;gBAAE,OAAM;YACrC,IAAI,OAAO,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;gBACvD,QAAQ,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;YAC3D,CAAC;QACH,CAAC;IACH,CAAC,EACD,CAAC,MAAM,EAAE,KAAK,CAAC,CAChB,CAAA;IAED,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,KAAK,CAAU,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAA;AACjE,CAAC"}
@@ -1,4 +1,4 @@
1
- import { type Registered, type StreamableOf, TransportError } from 'transport-io';
1
+ import { type AnyMap, type Registered, type StreamableOf, TransportError } from 'transport-io';
2
2
  /** `elements` is present in every state after the first, so a render never loses what arrived. */
3
3
  export type StreamState<T> = {
4
4
  readonly status: 'idle';
@@ -20,9 +20,9 @@ export interface UseStreamOptions<T> {
20
20
  */
21
21
  readonly onElement?: (element: T) => void;
22
22
  }
23
- export type UseStreamResult<K extends StreamableOf<Registered> & string> = readonly [
24
- (payload: Registered[K]['payload']) => void,
25
- StreamState<Registered[K]['yields']>,
23
+ export type UseStreamResult<M extends AnyMap, K extends StreamableOf<M> & string> = readonly [
24
+ (payload: M[K]['payload']) => void,
25
+ StreamState<M[K]['yields']>,
26
26
  () => void
27
27
  ];
28
28
  /**
@@ -32,5 +32,5 @@ export type UseStreamResult<K extends StreamableOf<Registered> & string> = reado
32
32
  * and runs any `finally` in its generator, so a component going away does not leave a
33
33
  * generator producing into nothing.
34
34
  */
35
- export declare function useStream<K extends StreamableOf<Registered> & string>(event: K, options?: UseStreamOptions<Registered[K]['yields']>): UseStreamResult<K>;
35
+ export declare function useStream<K extends StreamableOf<Registered> & string>(event: K, options?: UseStreamOptions<Registered[K]['yields']>): UseStreamResult<Registered, K>;
36
36
  //# sourceMappingURL=use-stream.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-stream.d.ts","sourceRoot":"","sources":["../src/use-stream.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,UAAU,EAAE,KAAK,YAAY,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAGjF,kGAAkG;AAClG,MAAM,MAAM,WAAW,CAAC,CAAC,IACrB;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC3B;IAAE,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,CAAA;CAAE,GACjE;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,CAAA;CAAE,GAC5D;IACE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,CAAA;IAC/B,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAA;CAC/B,CAAA;AAEL,MAAM,WAAW,gBAAgB,CAAC,CAAC;IACjC;;;OAGG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,IAAI,CAAA;CAC1C;AAED,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,YAAY,CAAC,UAAU,CAAC,GAAG,MAAM,IAAI,SAAS;IAClF,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,IAAI;IAC3C,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IACpC,MAAM,IAAI;CACX,CAAA;AAWD;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,CAAC,SAAS,YAAY,CAAC,UAAU,CAAC,GAAG,MAAM,EACnE,KAAK,EAAE,CAAC,EACR,OAAO,CAAC,EAAE,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,GAClD,eAAe,CAAC,CAAC,CAAC,CAiEpB"}
1
+ {"version":3,"file":"use-stream.d.ts","sourceRoot":"","sources":["../src/use-stream.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,UAAU,EAAE,KAAK,YAAY,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAG9F,kGAAkG;AAClG,MAAM,MAAM,WAAW,CAAC,CAAC,IACrB;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC3B;IAAE,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,CAAA;CAAE,GACjE;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,CAAA;CAAE,GAC5D;IACE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,CAAA;IAC/B,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAA;CAC/B,CAAA;AAEL,MAAM,WAAW,gBAAgB,CAAC,CAAC;IACjC;;;OAGG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,IAAI,CAAA;CAC1C;AAED,MAAM,MAAM,eAAe,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,YAAY,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,SAAS;IAC3F,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,IAAI;IAClC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC3B,MAAM,IAAI;CACX,CAAA;AAWD;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,CAAC,SAAS,YAAY,CAAC,UAAU,CAAC,GAAG,MAAM,EACnE,KAAK,EAAE,CAAC,EACR,OAAO,CAAC,EAAE,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,GAClD,eAAe,CAAC,UAAU,EAAE,CAAC,CAAC,CAiEhC"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-stream.js","sourceRoot":"","sources":["../src/use-stream.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use-stream.js","sourceRoot":"","sources":["../src/use-stream.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AACZ,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACzE,OAAO,EAAmD,cAAc,EAAE,MAAM,cAAc,CAAA;AAC9F,OAAO,EAAE,SAAS,EAAE,MAAM,cAAe,CAAA;AA2BzC,SAAS,gBAAgB,CAAC,CAAU;IAClC,IAAI,CAAC,YAAY,cAAc;QAAE,OAAO,CAAC,CAAA;IACzC,OAAO,IAAI,cAAc,CACvB,kBAAkB,EAClB,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAC1C,mEAAmE,CACpE,CAAA;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,SAAS,CACvB,KAAQ,EACR,OAAmD;IAGnD,MAAM,MAAM,GAAG,SAAS,EAAE,CAAA;IAC1B,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAiB,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;IAEtE,MAAM,MAAM,GAAG,MAAM,CAAgC,IAAI,CAAC,CAAA;IAC1D,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;IAC5B,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;IAC5C,SAAS,CAAC,OAAO,GAAG,OAAO,EAAE,SAAS,CAAA;IAEtC,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,CAAC,OAAO,GAAG,IAAI,CAAA;QACtB,OAAO,GAAG,EAAE;YACV,OAAO,CAAC,OAAO,GAAG,KAAK,CAAA;YACvB,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAA;QAC1B,CAAC,CAAA;IACH,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,EAAE;QAC5B,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAA;QACxB,MAAM,CAAC,OAAO,GAAG,IAAI,CAAA;IACvB,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,KAAK,GAAG,WAAW,CACvB,CAAC,OAAiC,EAAQ,EAAE;QAC1C,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAA;QACxB,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;QAC5C,MAAM,CAAC,OAAO,GAAG,MAAM,CAAA;QACvB;;;;;WAKG;QACH,IAAI,QAAQ,GAAiB,EAAE,CAAA;QAC/B,QAAQ,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAA;QAE3C,KAAK,CAAC,KAAK,IAAI,EAAE;YACf,IAAI,CAAC;gBACH,IAAI,KAAK,EAAE,MAAM,OAAO,IAAI,MAAM,EAAE,CAAC;oBACnC,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,KAAK,MAAM;wBAAE,OAAM;oBACzD,SAAS,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,CAAA;oBAC5B,QAAQ,GAAG,CAAC,GAAG,QAAQ,EAAE,OAAO,CAAC,CAAA;oBACjC,QAAQ,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAA;gBAC7C,CAAC;gBACD,IAAI,OAAO,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;oBACjD,QAAQ,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAA;gBACxC,CAAC;YACH,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,KAAK,MAAM;oBAAE,OAAM;gBACzD,MAAM,KAAK,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAA;gBACjC,6EAA6E;gBAC7E,yEAAyE;gBACzE,QAAQ,CACN,KAAK,CAAC,IAAI,KAAK,YAAY;oBACzB,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE;oBAC9B,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CACzC,CAAA;YACH,CAAC;QACH,CAAC,CAAC,EAAE,CAAA;IACN,CAAC,EACD,CAAC,MAAM,EAAE,KAAK,CAAC,CAChB,CAAA;IAED,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAU,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAA;AAC3E,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@transport-io/react",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "description": "React bindings for transport-io. Hooks over useSyncExternalStore, correct under StrictMode, SSR and RSC.",
5
5
  "license": "MIT",
6
6
  "type": "module",