spacetimedb 2.1.0 → 2.3.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/LICENSE.txt +2 -2
- package/dist/angular/index.cjs +7 -2
- package/dist/angular/index.cjs.map +1 -1
- package/dist/angular/index.mjs +7 -2
- package/dist/angular/index.mjs.map +1 -1
- package/dist/browser/angular/index.mjs +7 -2
- package/dist/browser/angular/index.mjs.map +1 -1
- package/dist/browser/react/index.mjs +57 -6
- package/dist/browser/react/index.mjs.map +1 -1
- package/dist/browser/svelte/index.mjs +7 -2
- package/dist/browser/svelte/index.mjs.map +1 -1
- package/dist/browser/vue/index.mjs +43 -3
- package/dist/browser/vue/index.mjs.map +1 -1
- package/dist/index.browser.mjs +459 -138
- package/dist/index.browser.mjs.map +1 -1
- package/dist/index.cjs +459 -138
- package/dist/index.cjs.map +1 -1
- package/dist/index.mjs +459 -138
- package/dist/index.mjs.map +1 -1
- package/dist/lib/binary_reader.d.ts +1 -1
- package/dist/lib/binary_reader.d.ts.map +1 -1
- package/dist/lib/binary_writer.d.ts +2 -1
- package/dist/lib/binary_writer.d.ts.map +1 -1
- package/dist/lib/filter.d.ts +2 -1
- package/dist/lib/filter.d.ts.map +1 -1
- package/dist/lib/reducers.d.ts +2 -0
- package/dist/lib/reducers.d.ts.map +1 -1
- package/dist/lib/table.d.ts +6 -0
- package/dist/lib/table.d.ts.map +1 -1
- package/dist/min/index.browser.mjs +1 -1
- package/dist/min/index.browser.mjs.map +1 -1
- package/dist/min/react/index.mjs +1 -1
- package/dist/min/react/index.mjs.map +1 -1
- package/dist/min/sdk/index.browser.mjs +1 -1
- package/dist/min/sdk/index.browser.mjs.map +1 -1
- package/dist/react/index.cjs +57 -5
- package/dist/react/index.cjs.map +1 -1
- package/dist/react/index.d.ts +1 -0
- package/dist/react/index.d.ts.map +1 -1
- package/dist/react/index.mjs +57 -6
- package/dist/react/index.mjs.map +1 -1
- package/dist/react/useProcedure.d.ts +4 -0
- package/dist/react/useProcedure.d.ts.map +1 -0
- package/dist/react/useTable.d.ts +2 -0
- package/dist/react/useTable.d.ts.map +1 -1
- package/dist/sdk/db_connection_builder.d.ts +3 -3
- package/dist/sdk/db_connection_builder.d.ts.map +1 -1
- package/dist/sdk/db_connection_impl.d.ts +3 -3
- package/dist/sdk/db_connection_impl.d.ts.map +1 -1
- package/dist/sdk/decompress.d.ts +1 -1
- package/dist/sdk/decompress.d.ts.map +1 -1
- package/dist/sdk/index.browser.mjs +459 -138
- package/dist/sdk/index.browser.mjs.map +1 -1
- package/dist/sdk/index.cjs +459 -138
- package/dist/sdk/index.cjs.map +1 -1
- package/dist/sdk/index.mjs +459 -138
- package/dist/sdk/index.mjs.map +1 -1
- package/dist/sdk/table_cache.d.ts +1 -0
- package/dist/sdk/table_cache.d.ts.map +1 -1
- package/dist/sdk/type_utils.d.ts +4 -1
- package/dist/sdk/type_utils.d.ts.map +1 -1
- package/dist/sdk/websocket_decompress_adapter.d.ts +5 -21
- package/dist/sdk/websocket_decompress_adapter.d.ts.map +1 -1
- package/dist/sdk/websocket_protocols.d.ts +6 -0
- package/dist/sdk/websocket_protocols.d.ts.map +1 -0
- package/dist/sdk/websocket_test_adapter.d.ts +14 -18
- package/dist/sdk/websocket_test_adapter.d.ts.map +1 -1
- package/dist/sdk/websocket_v3_frames.d.ts +9 -0
- package/dist/sdk/websocket_v3_frames.d.ts.map +1 -0
- package/dist/sdk/ws.d.ts +26 -1
- package/dist/sdk/ws.d.ts.map +1 -1
- package/dist/server/http_internal.d.ts.map +1 -1
- package/dist/server/index.d.ts +1 -1
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.mjs +61 -8
- package/dist/server/index.mjs.map +1 -1
- package/dist/server/procedures.d.ts +2 -0
- package/dist/server/procedures.d.ts.map +1 -1
- package/dist/server/runtime.d.ts +30 -2
- package/dist/server/runtime.d.ts.map +1 -1
- package/dist/svelte/index.cjs +7 -2
- package/dist/svelte/index.cjs.map +1 -1
- package/dist/svelte/index.mjs +7 -2
- package/dist/svelte/index.mjs.map +1 -1
- package/dist/tanstack/index.cjs +41 -2
- package/dist/tanstack/index.cjs.map +1 -1
- package/dist/tanstack/index.d.ts +1 -0
- package/dist/tanstack/index.d.ts.map +1 -1
- package/dist/tanstack/index.mjs +41 -3
- package/dist/tanstack/index.mjs.map +1 -1
- package/dist/vue/index.cjs +43 -2
- package/dist/vue/index.cjs.map +1 -1
- package/dist/vue/index.d.ts +1 -0
- package/dist/vue/index.d.ts.map +1 -1
- package/dist/vue/index.mjs +43 -3
- package/dist/vue/index.mjs.map +1 -1
- package/dist/vue/useProcedure.d.ts +4 -0
- package/dist/vue/useProcedure.d.ts.map +1 -0
- package/package.json +2 -2
- package/src/lib/binary_reader.ts +5 -2
- package/src/lib/binary_writer.ts +7 -1
- package/src/lib/filter.ts +12 -1
- package/src/lib/reducers.ts +2 -0
- package/src/lib/table.ts +9 -1
- package/src/react/index.ts +1 -0
- package/src/react/useProcedure.ts +60 -0
- package/src/react/useTable.ts +17 -2
- package/src/sdk/db_connection_builder.ts +16 -7
- package/src/sdk/db_connection_impl.ts +404 -89
- package/src/sdk/decompress.ts +7 -23
- package/src/sdk/table_cache.ts +5 -5
- package/src/sdk/type_utils.ts +10 -1
- package/src/sdk/websocket_decompress_adapter.ts +15 -77
- package/src/sdk/websocket_protocols.ts +25 -0
- package/src/sdk/websocket_test_adapter.ts +65 -29
- package/src/sdk/websocket_v3_frames.ts +126 -0
- package/src/sdk/ws.ts +81 -3
- package/src/server/http_internal.ts +10 -1
- package/src/server/index.ts +1 -1
- package/src/server/procedures.ts +7 -1
- package/src/server/runtime.ts +44 -2
- package/src/server/sys.d.ts +4 -0
- package/src/tanstack/index.ts +1 -0
- package/src/vue/index.ts +1 -0
- package/src/vue/useProcedure.ts +62 -0
package/dist/tanstack/index.d.ts
CHANGED
|
@@ -3,4 +3,5 @@ export { useSpacetimeDBQuery, useSpacetimeDBSuspenseQuery, type UseSpacetimeDBQu
|
|
|
3
3
|
export * from '../react/SpacetimeDBProvider';
|
|
4
4
|
export { useSpacetimeDB } from '../react/useSpacetimeDB';
|
|
5
5
|
export { useReducer } from '../react/useReducer';
|
|
6
|
+
export { useProcedure } from '../react/useProcedure';
|
|
6
7
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tanstack/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,gBAAgB,EAChB,KAAK,uBAAuB,EAC5B,KAAK,8BAA8B,GACpC,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,mBAAmB,EACnB,2BAA2B,EAC3B,KAAK,yBAAyB,EAC9B,KAAK,iCAAiC,GACvC,MAAM,SAAS,CAAC;AACjB,cAAc,8BAA8B,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tanstack/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,gBAAgB,EAChB,KAAK,uBAAuB,EAC5B,KAAK,8BAA8B,GACpC,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,mBAAmB,EACnB,2BAA2B,EAC3B,KAAK,yBAAyB,EAC9B,KAAK,iCAAiC,GACvC,MAAM,SAAS,CAAC;AACjB,cAAc,8BAA8B,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC"}
|
package/dist/tanstack/index.mjs
CHANGED
|
@@ -430,8 +430,8 @@ var BinaryReader = class {
|
|
|
430
430
|
this.view = input instanceof DataView ? input : new DataView(input.buffer, input.byteOffset, input.byteLength);
|
|
431
431
|
this.offset = 0;
|
|
432
432
|
}
|
|
433
|
-
reset(
|
|
434
|
-
this.view =
|
|
433
|
+
reset(input) {
|
|
434
|
+
this.view = input instanceof DataView ? input : new DataView(input.buffer, input.byteOffset, input.byteLength);
|
|
435
435
|
this.offset = 0;
|
|
436
436
|
}
|
|
437
437
|
get remaining() {
|
|
@@ -623,6 +623,11 @@ var BinaryWriter = class {
|
|
|
623
623
|
this.view.setUint8(this.offset, value);
|
|
624
624
|
this.offset += 1;
|
|
625
625
|
}
|
|
626
|
+
writeBytes(value) {
|
|
627
|
+
this.expandBuffer(value.length);
|
|
628
|
+
new Uint8Array(this.buffer.buffer, this.offset, value.length).set(value);
|
|
629
|
+
this.offset += value.length;
|
|
630
|
+
}
|
|
626
631
|
writeI8(value) {
|
|
627
632
|
this.expandBuffer(1);
|
|
628
633
|
this.view.setInt8(this.offset, value);
|
|
@@ -1939,7 +1944,40 @@ function useReducer(reducerDef) {
|
|
|
1939
1944
|
[getConnection, reducerName]
|
|
1940
1945
|
);
|
|
1941
1946
|
}
|
|
1947
|
+
function useProcedure(procedureDef) {
|
|
1948
|
+
const { getConnection, isActive } = useSpacetimeDB();
|
|
1949
|
+
const procedureName = procedureDef.accessorName;
|
|
1950
|
+
const queueRef = useRef([]);
|
|
1951
|
+
useEffect(() => {
|
|
1952
|
+
const conn = getConnection();
|
|
1953
|
+
if (!conn) {
|
|
1954
|
+
return;
|
|
1955
|
+
}
|
|
1956
|
+
const fn = conn.procedures[procedureName];
|
|
1957
|
+
if (queueRef.current.length) {
|
|
1958
|
+
const pending = queueRef.current.splice(0);
|
|
1959
|
+
for (const item of pending) {
|
|
1960
|
+
fn(...item.params).then(item.resolve, item.reject);
|
|
1961
|
+
}
|
|
1962
|
+
}
|
|
1963
|
+
}, [getConnection, procedureName, isActive]);
|
|
1964
|
+
return useCallback(
|
|
1965
|
+
(...params) => {
|
|
1966
|
+
const conn = getConnection();
|
|
1967
|
+
if (!conn) {
|
|
1968
|
+
return new Promise(
|
|
1969
|
+
(resolve, reject) => {
|
|
1970
|
+
queueRef.current.push({ params, resolve, reject });
|
|
1971
|
+
}
|
|
1972
|
+
);
|
|
1973
|
+
}
|
|
1974
|
+
const fn = conn.procedures[procedureName];
|
|
1975
|
+
return fn(...params);
|
|
1976
|
+
},
|
|
1977
|
+
[getConnection, procedureName]
|
|
1978
|
+
);
|
|
1979
|
+
}
|
|
1942
1980
|
|
|
1943
|
-
export { SpacetimeDBProvider, SpacetimeDBQueryClient, spacetimeDBQuery, useReducer, useSpacetimeDB, useSpacetimeDBQuery, useSpacetimeDBSuspenseQuery };
|
|
1981
|
+
export { SpacetimeDBProvider, SpacetimeDBQueryClient, spacetimeDBQuery, useProcedure, useReducer, useSpacetimeDB, useSpacetimeDBQuery, useSpacetimeDBSuspenseQuery };
|
|
1944
1982
|
//# sourceMappingURL=index.mjs.map
|
|
1945
1983
|
//# sourceMappingURL=index.mjs.map
|