@replicast/react 1.0.0-rc.1 → 1.0.0-rc.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/dist/connect-react.d.ts +17 -0
- package/dist/connect-react.d.ts.map +1 -0
- package/dist/connect-react.js +14 -0
- package/dist/connect-react.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/init-rpc.js +1 -1
- package/dist/init-rpc.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { App, StoreConstructors, StoreInstances, ConnectOptions } from '@replicast/core';
|
|
2
|
+
import type { WsClient } from '@replicast/core';
|
|
3
|
+
import type { ConnectionState } from './connection-store.js';
|
|
4
|
+
type ConnectReactRPC<TStores extends StoreConstructors> = {
|
|
5
|
+
useConnection: () => ConnectionState;
|
|
6
|
+
} & {
|
|
7
|
+
[K in keyof TStores as `use${Capitalize<string & K>}`]: () => InstanceType<TStores[K]>;
|
|
8
|
+
};
|
|
9
|
+
type ConnectReactResult<TStores extends StoreConstructors, TSystems extends Record<string, object>> = {
|
|
10
|
+
client: WsClient;
|
|
11
|
+
rpc: ConnectReactRPC<TStores>;
|
|
12
|
+
stores: StoreInstances<TStores>;
|
|
13
|
+
systems: TSystems;
|
|
14
|
+
};
|
|
15
|
+
export declare function connectReact<TStores extends StoreConstructors, TSystems extends Record<string, object>>(app: App<TStores, TSystems>, options: ConnectOptions): ConnectReactResult<TStores, TSystems>;
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=connect-react.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"connect-react.d.ts","sourceRoot":"","sources":["../src/connect-react.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,iBAAiB,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAC7F,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAE/C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAE5D,KAAK,eAAe,CAAC,OAAO,SAAS,iBAAiB,IAAI;IACxD,aAAa,EAAE,MAAM,eAAe,CAAA;CACrC,GAAG;KACD,CAAC,IAAI,MAAM,OAAO,IAAI,MAAM,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;CACvF,CAAA;AAED,KAAK,kBAAkB,CAAC,OAAO,SAAS,iBAAiB,EAAE,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI;IACpG,MAAM,EAAE,QAAQ,CAAA;IAChB,GAAG,EAAE,eAAe,CAAC,OAAO,CAAC,CAAA;IAC7B,MAAM,EAAE,cAAc,CAAC,OAAO,CAAC,CAAA;IAC/B,OAAO,EAAE,QAAQ,CAAA;CAClB,CAAA;AAED,wBAAgB,YAAY,CAC1B,OAAO,SAAS,iBAAiB,EACjC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAEvC,GAAG,EAAE,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,EAC3B,OAAO,EAAE,cAAc,GACtB,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAWvC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { initRPC } from './init-rpc.js';
|
|
2
|
+
export function connectReact(app, options) {
|
|
3
|
+
const { client, stores, systems } = app.connect(options);
|
|
4
|
+
const storeEntries = Object.entries(stores).map(([name, instance]) => ({
|
|
5
|
+
name,
|
|
6
|
+
instance: instance,
|
|
7
|
+
}));
|
|
8
|
+
// initRPC operates on erased StoreEntry[] (name: string, instance: object), so TypeScript
|
|
9
|
+
// cannot prove the returned hook map matches ConnectReactRPC<TStores>. The assertion is
|
|
10
|
+
// correct at runtime because store names are preserved through storeEntries.
|
|
11
|
+
const rpc = initRPC({ client, stores: storeEntries });
|
|
12
|
+
return { client, rpc, stores, systems };
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=connect-react.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"connect-react.js","sourceRoot":"","sources":["../src/connect-react.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAgBvC,MAAM,UAAU,YAAY,CAI1B,GAA2B,EAC3B,OAAuB;IAEvB,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IACxD,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;QACrE,IAAI;QACJ,QAAQ,EAAE,QAAkB;KAC7B,CAAC,CAAC,CAAA;IACH,0FAA0F;IAC1F,wFAAwF;IACxF,6EAA6E;IAC7E,MAAM,GAAG,GAAG,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,CAAwC,CAAA;IAC5F,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,CAAA;AACzC,CAAC"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACjG,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA"}
|
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAEvC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA"}
|
package/dist/init-rpc.js
CHANGED
|
@@ -39,7 +39,7 @@ export function initRPC(options) {
|
|
|
39
39
|
zustandStore.setState(update);
|
|
40
40
|
}
|
|
41
41
|
};
|
|
42
|
-
storeHooks[`use${name}`] = () => zustandStore();
|
|
42
|
+
storeHooks[`use${name[0].toUpperCase() + name.slice(1)}`] = () => zustandStore();
|
|
43
43
|
}
|
|
44
44
|
return {
|
|
45
45
|
useConnection: createUseConnection(connectionStore),
|
package/dist/init-rpc.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init-rpc.js","sourceRoot":"","sources":["../src/init-rpc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAChC,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAA;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AA0BzD,MAAM,UAAU,OAAO,CACrB,OAA6D;IAE7D,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAA;IAElC,kCAAkC;IAClC,MAAM,eAAe,GAAG,qBAAqB,EAAE,CAAA;IAE/C,MAAM,CAAC,cAAc,GAAG,CAAC,MAAM,EAAE,EAAE;QACjC,eAAe,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAA;IAC/D,CAAC,CAAA;IAED,MAAM,CAAC,eAAe,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;QAC5C,eAAe,CAAC,QAAQ,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IACzD,CAAC,CAAA;IAED,iCAAiC;IACjC,MAAM,UAAU,GAAiC,EAAE,CAAA;IAEnD,KAAK,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,MAAM,EAAE,CAAC;QACxC,qEAAqE;QACrE,wFAAwF;QACxF,MAAM,UAAU,GAAG,QAAe,CAAA;QAClC,MAAM,YAAY,GAAG,OAAO,UAAU,CAAC,WAAW,KAAK,UAAU;YAC/D,CAAC,CAAC,UAAU,CAAC,WAAW,EAAE;YAC1B,CAAC,CAAC,MAAM,CAAC,WAAW,CAChB,MAAM,CAAC,OAAO,CAAC,QAAmC,CAAC;iBAChD,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC,CAC7D,CAAA;QAEL,MAAM,YAAY,GAAG,MAAM,CAA0B,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,YAAY,EAAE,CAAC,CAAC,CAAA;QAEjF,iFAAiF;QACjF,+EAA+E;QAC/E,UAAU,CAAC,cAAc,GAAG,CAAC,KAAU,EAAE,EAAE;YACzC,MAAM,MAAM,GAA4B,EAAE,CAAA;YAC1C,IAAI,KAAK,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACzD,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA;YACrC,CAAC;YACD,IAAI,KAAK,CAAC,aAAa,YAAY,GAAG,EAAE,CAAC;gBACvC,MAAM,QAAQ,GAAG,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;gBACzD,IAAI,QAAQ,EAAE,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC9D,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAA;gBACvC,CAAC;YACH,CAAC;YACD,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACnC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;YAC/B,CAAC;QACH,CAAC,CAAA;QAED,UAAU,CAAC,MAAM,IAAI,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,YAAY,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"init-rpc.js","sourceRoot":"","sources":["../src/init-rpc.ts"],"names":[],"mappings":"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"}
|