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.
Files changed (125) hide show
  1. package/LICENSE.txt +2 -2
  2. package/dist/angular/index.cjs +7 -2
  3. package/dist/angular/index.cjs.map +1 -1
  4. package/dist/angular/index.mjs +7 -2
  5. package/dist/angular/index.mjs.map +1 -1
  6. package/dist/browser/angular/index.mjs +7 -2
  7. package/dist/browser/angular/index.mjs.map +1 -1
  8. package/dist/browser/react/index.mjs +57 -6
  9. package/dist/browser/react/index.mjs.map +1 -1
  10. package/dist/browser/svelte/index.mjs +7 -2
  11. package/dist/browser/svelte/index.mjs.map +1 -1
  12. package/dist/browser/vue/index.mjs +43 -3
  13. package/dist/browser/vue/index.mjs.map +1 -1
  14. package/dist/index.browser.mjs +459 -138
  15. package/dist/index.browser.mjs.map +1 -1
  16. package/dist/index.cjs +459 -138
  17. package/dist/index.cjs.map +1 -1
  18. package/dist/index.mjs +459 -138
  19. package/dist/index.mjs.map +1 -1
  20. package/dist/lib/binary_reader.d.ts +1 -1
  21. package/dist/lib/binary_reader.d.ts.map +1 -1
  22. package/dist/lib/binary_writer.d.ts +2 -1
  23. package/dist/lib/binary_writer.d.ts.map +1 -1
  24. package/dist/lib/filter.d.ts +2 -1
  25. package/dist/lib/filter.d.ts.map +1 -1
  26. package/dist/lib/reducers.d.ts +2 -0
  27. package/dist/lib/reducers.d.ts.map +1 -1
  28. package/dist/lib/table.d.ts +6 -0
  29. package/dist/lib/table.d.ts.map +1 -1
  30. package/dist/min/index.browser.mjs +1 -1
  31. package/dist/min/index.browser.mjs.map +1 -1
  32. package/dist/min/react/index.mjs +1 -1
  33. package/dist/min/react/index.mjs.map +1 -1
  34. package/dist/min/sdk/index.browser.mjs +1 -1
  35. package/dist/min/sdk/index.browser.mjs.map +1 -1
  36. package/dist/react/index.cjs +57 -5
  37. package/dist/react/index.cjs.map +1 -1
  38. package/dist/react/index.d.ts +1 -0
  39. package/dist/react/index.d.ts.map +1 -1
  40. package/dist/react/index.mjs +57 -6
  41. package/dist/react/index.mjs.map +1 -1
  42. package/dist/react/useProcedure.d.ts +4 -0
  43. package/dist/react/useProcedure.d.ts.map +1 -0
  44. package/dist/react/useTable.d.ts +2 -0
  45. package/dist/react/useTable.d.ts.map +1 -1
  46. package/dist/sdk/db_connection_builder.d.ts +3 -3
  47. package/dist/sdk/db_connection_builder.d.ts.map +1 -1
  48. package/dist/sdk/db_connection_impl.d.ts +3 -3
  49. package/dist/sdk/db_connection_impl.d.ts.map +1 -1
  50. package/dist/sdk/decompress.d.ts +1 -1
  51. package/dist/sdk/decompress.d.ts.map +1 -1
  52. package/dist/sdk/index.browser.mjs +459 -138
  53. package/dist/sdk/index.browser.mjs.map +1 -1
  54. package/dist/sdk/index.cjs +459 -138
  55. package/dist/sdk/index.cjs.map +1 -1
  56. package/dist/sdk/index.mjs +459 -138
  57. package/dist/sdk/index.mjs.map +1 -1
  58. package/dist/sdk/table_cache.d.ts +1 -0
  59. package/dist/sdk/table_cache.d.ts.map +1 -1
  60. package/dist/sdk/type_utils.d.ts +4 -1
  61. package/dist/sdk/type_utils.d.ts.map +1 -1
  62. package/dist/sdk/websocket_decompress_adapter.d.ts +5 -21
  63. package/dist/sdk/websocket_decompress_adapter.d.ts.map +1 -1
  64. package/dist/sdk/websocket_protocols.d.ts +6 -0
  65. package/dist/sdk/websocket_protocols.d.ts.map +1 -0
  66. package/dist/sdk/websocket_test_adapter.d.ts +14 -18
  67. package/dist/sdk/websocket_test_adapter.d.ts.map +1 -1
  68. package/dist/sdk/websocket_v3_frames.d.ts +9 -0
  69. package/dist/sdk/websocket_v3_frames.d.ts.map +1 -0
  70. package/dist/sdk/ws.d.ts +26 -1
  71. package/dist/sdk/ws.d.ts.map +1 -1
  72. package/dist/server/http_internal.d.ts.map +1 -1
  73. package/dist/server/index.d.ts +1 -1
  74. package/dist/server/index.d.ts.map +1 -1
  75. package/dist/server/index.mjs +61 -8
  76. package/dist/server/index.mjs.map +1 -1
  77. package/dist/server/procedures.d.ts +2 -0
  78. package/dist/server/procedures.d.ts.map +1 -1
  79. package/dist/server/runtime.d.ts +30 -2
  80. package/dist/server/runtime.d.ts.map +1 -1
  81. package/dist/svelte/index.cjs +7 -2
  82. package/dist/svelte/index.cjs.map +1 -1
  83. package/dist/svelte/index.mjs +7 -2
  84. package/dist/svelte/index.mjs.map +1 -1
  85. package/dist/tanstack/index.cjs +41 -2
  86. package/dist/tanstack/index.cjs.map +1 -1
  87. package/dist/tanstack/index.d.ts +1 -0
  88. package/dist/tanstack/index.d.ts.map +1 -1
  89. package/dist/tanstack/index.mjs +41 -3
  90. package/dist/tanstack/index.mjs.map +1 -1
  91. package/dist/vue/index.cjs +43 -2
  92. package/dist/vue/index.cjs.map +1 -1
  93. package/dist/vue/index.d.ts +1 -0
  94. package/dist/vue/index.d.ts.map +1 -1
  95. package/dist/vue/index.mjs +43 -3
  96. package/dist/vue/index.mjs.map +1 -1
  97. package/dist/vue/useProcedure.d.ts +4 -0
  98. package/dist/vue/useProcedure.d.ts.map +1 -0
  99. package/package.json +2 -2
  100. package/src/lib/binary_reader.ts +5 -2
  101. package/src/lib/binary_writer.ts +7 -1
  102. package/src/lib/filter.ts +12 -1
  103. package/src/lib/reducers.ts +2 -0
  104. package/src/lib/table.ts +9 -1
  105. package/src/react/index.ts +1 -0
  106. package/src/react/useProcedure.ts +60 -0
  107. package/src/react/useTable.ts +17 -2
  108. package/src/sdk/db_connection_builder.ts +16 -7
  109. package/src/sdk/db_connection_impl.ts +404 -89
  110. package/src/sdk/decompress.ts +7 -23
  111. package/src/sdk/table_cache.ts +5 -5
  112. package/src/sdk/type_utils.ts +10 -1
  113. package/src/sdk/websocket_decompress_adapter.ts +15 -77
  114. package/src/sdk/websocket_protocols.ts +25 -0
  115. package/src/sdk/websocket_test_adapter.ts +65 -29
  116. package/src/sdk/websocket_v3_frames.ts +126 -0
  117. package/src/sdk/ws.ts +81 -3
  118. package/src/server/http_internal.ts +10 -1
  119. package/src/server/index.ts +1 -1
  120. package/src/server/procedures.ts +7 -1
  121. package/src/server/runtime.ts +44 -2
  122. package/src/server/sys.d.ts +4 -0
  123. package/src/tanstack/index.ts +1 -0
  124. package/src/vue/index.ts +1 -0
  125. package/src/vue/useProcedure.ts +62 -0
@@ -27,6 +27,7 @@ export type TableCache<RemoteModule extends UntypedRemoteModule, TableName exten
27
27
  */
28
28
  export declare class TableCacheImpl<RemoteModule extends UntypedRemoteModule, TableName extends TableNamesOf<RemoteModule>> implements ClientTableCoreImplementable<RemoteModule, TableName> {
29
29
  #private;
30
+ private readonly hasPrimaryKey;
30
31
  private rows;
31
32
  private tableDef;
32
33
  private emitter;
@@ -1 +1 @@
1
- {"version":3,"file":"table_cache.d.ts","sourceRoot":"","sources":["../../src/sdk/table_cache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"table_cache.d.ts","sourceRoot":"","sources":["../../src/sdk/table_cache.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,10 @@
1
- import type { InferTypeOfRow } from '.';
1
+ import type { Infer, InferTypeOfRow } from '.';
2
2
  import type { Prettify } from '../lib/type_util';
3
+ import type { UntypedProcedureDef } from './procedures';
3
4
  import type { UntypedReducerDef } from './reducers';
4
5
  export type IsEmptyObject<T> = [keyof T] extends [never] ? true : false;
5
6
  export type MaybeParams<T> = IsEmptyObject<T> extends true ? [] : [params: T];
6
7
  export type ParamsType<R extends UntypedReducerDef> = MaybeParams<Prettify<InferTypeOfRow<R['params']>>>;
8
+ export type ProcedureParamsType<P extends UntypedProcedureDef> = MaybeParams<Prettify<InferTypeOfRow<P['params']>>>;
9
+ export type ProcedureReturnType<P extends UntypedProcedureDef> = Infer<P['returnType']>;
7
10
  //# sourceMappingURL=type_utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"type_utils.d.ts","sourceRoot":"","sources":["../../src/sdk/type_utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,GAAG,CAAC;AACxC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC;AACxE,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;AAE9E,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,iBAAiB,IAAI,WAAW,CAC/D,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CACtC,CAAC"}
1
+ {"version":3,"file":"type_utils.d.ts","sourceRoot":"","sources":["../../src/sdk/type_utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,GAAG,CAAC;AAC/C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC;AACxE,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;AAE9E,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,iBAAiB,IAAI,WAAW,CAC/D,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CACtC,CAAC;AAEF,MAAM,MAAM,mBAAmB,CAAC,CAAC,SAAS,mBAAmB,IAAI,WAAW,CAC1E,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CACtC,CAAC;AAEF,MAAM,MAAM,mBAAmB,CAAC,CAAC,SAAS,mBAAmB,IAAI,KAAK,CACpE,CAAC,CAAC,YAAY,CAAC,CAChB,CAAC"}
@@ -1,32 +1,16 @@
1
- export interface WebsocketAdapter {
2
- send(msg: Uint8Array): void;
3
- close(): void;
4
- set onclose(handler: (ev: CloseEvent) => void);
5
- set onopen(handler: () => void);
6
- set onmessage(handler: (msg: {
7
- data: Uint8Array;
8
- }) => void);
9
- set onerror(handler: (msg: ErrorEvent) => void);
10
- }
11
- export declare class WebsocketDecompressAdapter implements WebsocketAdapter {
1
+ import { type WebSocketAdapter, type WebSocketArgs } from './ws';
2
+ export declare class WebsocketDecompressAdapter implements WebSocketAdapter {
12
3
  #private;
4
+ get protocol(): string;
13
5
  set onclose(handler: (ev: CloseEvent) => void);
14
6
  set onopen(handler: () => void);
15
7
  set onmessage(handler: (msg: {
16
8
  data: Uint8Array;
17
9
  }) => void);
18
10
  set onerror(handler: (msg: ErrorEvent) => void);
19
- send(msg: Uint8Array): void;
11
+ send(msg: Uint8Array<ArrayBuffer>): void;
20
12
  close(): void;
21
13
  constructor(ws: WebSocket);
22
- static createWebSocketFn({ url, nameOrAddress, wsProtocol, authToken, compression, lightMode, confirmedReads, }: {
23
- url: URL;
24
- wsProtocol: string;
25
- nameOrAddress: string;
26
- authToken?: string;
27
- compression: 'gzip' | 'none';
28
- lightMode: boolean;
29
- confirmedReads?: boolean;
30
- }): Promise<WebsocketDecompressAdapter>;
14
+ static openWebSocket(args: WebSocketArgs): Promise<WebsocketDecompressAdapter>;
31
15
  }
32
16
  //# sourceMappingURL=websocket_decompress_adapter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"websocket_decompress_adapter.d.ts","sourceRoot":"","sources":["../../src/sdk/websocket_decompress_adapter.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,GAAG,EAAE,UAAU,GAAG,IAAI,CAAC;IAC5B,KAAK,IAAI,IAAI,CAAC;IAEd,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,UAAU,KAAK,IAAI,EAAE;IAC/C,IAAI,MAAM,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE;IAChC,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE;QAAE,IAAI,EAAE,UAAU,CAAA;KAAE,KAAK,IAAI,EAAE;IAC5D,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,UAAU,KAAK,IAAI,EAAE;CACjD;AAED,qBAAa,0BAA2B,YAAW,gBAAgB;;IACjE,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,UAAU,KAAK,IAAI,EAE5C;IACD,IAAI,MAAM,CAAC,OAAO,EAAE,MAAM,IAAI,EAE7B;IACD,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE;QAAE,IAAI,EAAE,UAAU,CAAA;KAAE,KAAK,IAAI,EAKzD;IACD,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,UAAU,KAAK,IAAI,EAE7C;IAuBD,IAAI,CAAC,GAAG,EAAE,UAAU,GAAG,IAAI;IAI3B,KAAK,IAAI,IAAI;gBAID,EAAE,EAAE,SAAS;WAMZ,iBAAiB,CAAC,EAC7B,GAAG,EACH,aAAa,EACb,UAAU,EACV,SAAS,EACT,WAAW,EACX,SAAS,EACT,cAAc,GACf,EAAE;QACD,GAAG,EAAE,GAAG,CAAC;QACT,UAAU,EAAE,MAAM,CAAC;QACnB,aAAa,EAAE,MAAM,CAAC;QACtB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;QAC7B,SAAS,EAAE,OAAO,CAAC;QACnB,cAAc,CAAC,EAAE,OAAO,CAAC;KAC1B,GAAG,OAAO,CAAC,0BAA0B,CAAC;CA2CxC"}
1
+ {"version":3,"file":"websocket_decompress_adapter.d.ts","sourceRoot":"","sources":["../../src/sdk/websocket_decompress_adapter.ts"],"names":[],"mappings":"AACA,OAAO,EAAiB,KAAK,gBAAgB,EAAE,KAAK,aAAa,EAAE,MAAM,MAAM,CAAC;AAEhF,qBAAa,0BAA2B,YAAW,gBAAgB;;IACjE,IAAI,QAAQ,IAAI,MAAM,CAErB;IACD,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,UAAU,KAAK,IAAI,EAE5C;IACD,IAAI,MAAM,CAAC,OAAO,EAAE,MAAM,IAAI,EAE7B;IACD,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE;QAAE,IAAI,EAAE,UAAU,CAAA;KAAE,KAAK,IAAI,EAKzD;IACD,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,UAAU,KAAK,IAAI,EAE7C;IAwBD,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,GAAG,IAAI;IAIxC,KAAK,IAAI,IAAI;gBAID,EAAE,EAAE,SAAS;WAIZ,aAAa,CACxB,IAAI,EAAE,aAAa,GAClB,OAAO,CAAC,0BAA0B,CAAC;CAGvC"}
@@ -0,0 +1,6 @@
1
+ export declare const V2_WS_PROTOCOL = "v2.bsatn.spacetimedb";
2
+ export declare const V3_WS_PROTOCOL = "v3.bsatn.spacetimedb";
3
+ export declare const PREFERRED_WS_PROTOCOLS: readonly ["v3.bsatn.spacetimedb", "v2.bsatn.spacetimedb"];
4
+ export type NegotiatedWsProtocol = typeof V2_WS_PROTOCOL | typeof V3_WS_PROTOCOL;
5
+ export declare function normalizeWsProtocol(protocol: string): NegotiatedWsProtocol;
6
+ //# sourceMappingURL=websocket_protocols.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"websocket_protocols.d.ts","sourceRoot":"","sources":["../../src/sdk/websocket_protocols.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,cAAc,yBAAyB,CAAC;AACrD,eAAO,MAAM,cAAc,yBAAyB,CAAC;AACrD,eAAO,MAAM,sBAAsB,2DAA4C,CAAC;AAEhF,MAAM,MAAM,oBAAoB,GAC5B,OAAO,cAAc,GACrB,OAAO,cAAc,CAAC;AAE1B,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,oBAAoB,CAc1E"}
@@ -1,28 +1,24 @@
1
1
  import { ClientMessage, ServerMessage } from './client_api/types';
2
- import type { WebsocketAdapter } from './websocket_decompress_adapter';
3
- declare class WebsocketTestAdapter implements WebsocketAdapter {
4
- onclose: any;
5
- onopen: () => void;
6
- onmessage: any;
7
- onerror: any;
8
- messageQueue: any[];
2
+ import type { WebSocketAdapter, WebSocketFactory } from './ws';
3
+ declare class WebsocketTestAdapter implements WebSocketAdapter {
4
+ #private;
5
+ protocol: string;
6
+ messageQueue: Uint8Array<ArrayBuffer>[];
9
7
  outgoingMessages: ClientMessage[];
10
8
  closed: boolean;
9
+ supportedProtocols: string[];
11
10
  constructor();
12
- send(message: any): void;
11
+ set onclose(handler: (ev: CloseEvent) => void);
12
+ set onopen(handler: () => void);
13
+ set onmessage(handler: (msg: {
14
+ data: Uint8Array;
15
+ }) => void);
16
+ set onerror(_handler: (msg: ErrorEvent) => void);
17
+ send(message: Uint8Array<ArrayBuffer>): void;
13
18
  close(): void;
14
19
  acceptConnection(): void;
15
20
  sendToClient(message: ServerMessage): void;
16
- createWebSocketFn(_args: {
17
- url: URL;
18
- wsProtocol: string;
19
- nameOrAddress: string;
20
- authToken?: string;
21
- compression: 'gzip' | 'none';
22
- lightMode: boolean;
23
- confirmedReads?: boolean;
24
- }): Promise<WebsocketTestAdapter>;
21
+ openWebSocket: WebSocketFactory;
25
22
  }
26
- export type { WebsocketTestAdapter };
27
23
  export default WebsocketTestAdapter;
28
24
  //# sourceMappingURL=websocket_test_adapter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"websocket_test_adapter.d.ts","sourceRoot":"","sources":["../../src/sdk/websocket_test_adapter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAEvE,cAAM,oBAAqB,YAAW,gBAAgB;IACpD,OAAO,EAAE,GAAG,CAAC;IAEb,MAAM,EAAG,MAAM,IAAI,CAAC;IACpB,SAAS,EAAE,GAAG,CAAC;IACf,OAAO,EAAE,GAAG,CAAC;IAEb,YAAY,EAAE,GAAG,EAAE,CAAC;IACpB,gBAAgB,EAAE,aAAa,EAAE,CAAC;IAClC,MAAM,EAAE,OAAO,CAAC;;IAQhB,IAAI,CAAC,OAAO,EAAE,GAAG,GAAG,IAAI;IAOxB,KAAK,IAAI,IAAI;IAKb,gBAAgB,IAAI,IAAI;IAIxB,YAAY,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAYpC,iBAAiB,CAAC,KAAK,EAAE;QAC7B,GAAG,EAAE,GAAG,CAAC;QACT,UAAU,EAAE,MAAM,CAAC;QACnB,aAAa,EAAE,MAAM,CAAC;QACtB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;QAC7B,SAAS,EAAE,OAAO,CAAC;QACnB,cAAc,CAAC,EAAE,OAAO,CAAC;KAC1B,GAAG,OAAO,CAAC,oBAAoB,CAAC;CAGlC;AAED,YAAY,EAAE,oBAAoB,EAAE,CAAC;AACrC,eAAe,oBAAoB,CAAC"}
1
+ {"version":3,"file":"websocket_test_adapter.d.ts","sourceRoot":"","sources":["../../src/sdk/websocket_test_adapter.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,MAAM,CAAC;AAO/D,cAAM,oBAAqB,YAAW,gBAAgB;;IACpD,QAAQ,EAAE,MAAM,CAAM;IAEtB,YAAY,EAAE,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;IACxC,gBAAgB,EAAE,aAAa,EAAE,CAAC;IAClC,MAAM,EAAE,OAAO,CAAC;IAChB,kBAAkB,EAAE,MAAM,EAAE,CAAC;;IAa7B,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,UAAU,KAAK,IAAI,EAE5C;IAED,IAAI,MAAM,CAAC,OAAO,EAAE,MAAM,IAAI,EAE7B;IAED,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE;QAAE,IAAI,EAAE,UAAU,CAAA;KAAE,KAAK,IAAI,EAEzD;IAED,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,UAAU,KAAK,IAAI,EAAI;IAEnD,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,WAAW,CAAC,GAAG,IAAI;IAe5C,KAAK,IAAI,IAAI;IASb,gBAAgB,IAAI,IAAI;IAIxB,YAAY,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAgB1C,aAAa,EAAE,gBAAgB,CAS7B;CACH;AAED,eAAe,oBAAoB,CAAC"}
@@ -0,0 +1,9 @@
1
+ import BinaryReader from '../lib/binary_reader.ts';
2
+ import BinaryWriter from '../lib/binary_writer.ts';
3
+ import { ServerMessage } from './client_api/types';
4
+ export declare function countClientMessagesForV3Frame(messages: readonly Uint8Array<ArrayBuffer>[], maxFrameBytes: number): number;
5
+ export declare function encodeClientMessagesV3(writer: BinaryWriter, messages: readonly Uint8Array<ArrayBuffer>[], messageCount?: number): Uint8Array<ArrayBuffer>;
6
+ export declare function decodeClientMessagesV3(data: Uint8Array<ArrayBuffer>): Uint8Array<ArrayBuffer>[];
7
+ export declare function encodeServerMessagesV3(writer: BinaryWriter, messages: readonly Uint8Array<ArrayBuffer>[]): Uint8Array<ArrayBuffer>;
8
+ export declare function forEachServerMessageV3(reader: BinaryReader, data: Uint8Array, visit: (message: ServerMessage) => void): number;
9
+ //# sourceMappingURL=websocket_v3_frames.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"websocket_v3_frames.d.ts","sourceRoot":"","sources":["../../src/sdk/websocket_v3_frames.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,yBAAyB,CAAC;AACnD,OAAO,YAAY,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAiB,aAAa,EAAE,MAAM,oBAAoB,CAAC;AA2DlE,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,SAAS,UAAU,CAAC,WAAW,CAAC,EAAE,EAC5C,aAAa,EAAE,MAAM,GACpB,MAAM,CAoBR;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,YAAY,EACpB,QAAQ,EAAE,SAAS,UAAU,CAAC,WAAW,CAAC,EAAE,EAC5C,YAAY,GAAE,MAAwB,GACrC,UAAU,CAAC,WAAW,CAAC,CAEzB;AAED,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,UAAU,CAAC,WAAW,CAAC,GAC5B,UAAU,CAAC,WAAW,CAAC,EAAE,CAI3B;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,YAAY,EACpB,QAAQ,EAAE,SAAS,UAAU,CAAC,WAAW,CAAC,EAAE,GAC3C,UAAU,CAAC,WAAW,CAAC,CAEzB;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,YAAY,EACpB,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,GACtC,MAAM,CAYR"}
package/dist/sdk/ws.d.ts CHANGED
@@ -1,2 +1,27 @@
1
- export declare function resolveWS(): Promise<typeof WebSocket>;
1
+ export interface WebSocketAdapter {
2
+ readonly protocol: string;
3
+ send(msg: Uint8Array<ArrayBuffer>): void;
4
+ close(): void;
5
+ set onclose(handler: (ev: CloseEvent) => void);
6
+ set onopen(handler: () => void);
7
+ set onmessage(handler: (msg: {
8
+ data: Uint8Array;
9
+ }) => void);
10
+ set onerror(handler: (msg: ErrorEvent) => void);
11
+ }
12
+ export interface WebSocketArgs {
13
+ url: URL;
14
+ wsProtocol: string[];
15
+ nameOrAddress: string;
16
+ authToken?: string;
17
+ compression: 'gzip' | 'brotli' | 'none';
18
+ lightMode: boolean;
19
+ confirmedReads?: boolean;
20
+ }
21
+ export type WebSocketFactory = (args: WebSocketArgs) => Promise<WebSocketAdapter>;
22
+ /**
23
+ * Open a WebSocket to the database specified by the given `WebSocketArgs`.
24
+ * @returns a WebSocket with `binaryType` set to `arraybuffer`.
25
+ */
26
+ export declare function openWebSocket({ url, nameOrAddress, wsProtocol, authToken, compression, lightMode, confirmedReads, }: WebSocketArgs): Promise<WebSocket>;
2
27
  //# sourceMappingURL=ws.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ws.d.ts","sourceRoot":"","sources":["../../src/sdk/ws.ts"],"names":[],"mappings":"AAEA,wBAAsB,SAAS,IAAI,OAAO,CAAC,OAAO,SAAS,CAAC,CAwB3D"}
1
+ {"version":3,"file":"ws.d.ts","sourceRoot":"","sources":["../../src/sdk/ws.ts"],"names":[],"mappings":"AA4BA,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC;IACzC,KAAK,IAAI,IAAI,CAAC;IAEd,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,UAAU,KAAK,IAAI,EAAE;IAC/C,IAAI,MAAM,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE;IAChC,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE;QAAE,IAAI,EAAE,UAAU,CAAA;KAAE,KAAK,IAAI,EAAE;IAC5D,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,UAAU,KAAK,IAAI,EAAE;CACjD;AAED,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,GAAG,CAAC;IACT,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC;IACxC,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AACD,MAAM,MAAM,gBAAgB,GAAG,CAC7B,IAAI,EAAE,aAAa,KAChB,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAE/B;;;GAGG;AACH,wBAAsB,aAAa,CAAC,EAClC,GAAG,EACH,aAAa,EACb,UAAU,EACV,SAAS,EACT,WAAW,EACX,SAAS,EACT,cAAc,GACf,EAAE,aAAa,GAAG,OAAO,CAAC,SAAS,CAAC,CAwCpC"}
@@ -1 +1 @@
1
- {"version":3,"file":"http_internal.d.ts","sourceRoot":"","sources":["../../src/server/http_internal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAiB,MAAM,kBAAkB,CAAC;AAU1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAIzD,OAAO,EAAE,OAAO,EAAE,CAAC;AAInB,MAAM,MAAM,QAAQ,GAAG,WAAW,GAAG,eAAe,GAAG,MAAM,CAAC;AAC9D,MAAM,MAAM,WAAW,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC;AAChF,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAKD,QAAA,MAAM,YAAY,eAAyB,CAAC;AAG5C,UAAU,aAAa;IACrB,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,gBAAgB,CAAC;IAC3E,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,qBAAa,YAAY;;gBAIX,IAAI,CAAC,EAAE,QAAQ,GAAG,IAAI,EAAE,IAAI,CAAC,EAAE,YAAY;IAsBvD,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,EAAE,KAAK,EAAE,aAAa;IAMjE,IAAI,OAAO,IAAI,OAAO,CAErB;IACD,IAAI,MAAM,IAAI,MAAM,CAEnB;IACD,IAAI,UAAU,WAEb;IACD,IAAI,EAAE,IAAI,OAAO,CAEhB;IACD,IAAI,GAAG,IAAI,MAAM,CAEhB;IACD,IAAI,IAAI,yEAEP;IAED,WAAW,IAAI,WAAW;IAI1B,KAAK,IAAI,UAAU,CAAC,WAAW,CAAC;IAUhC,IAAI,IAAI,GAAG;IAIX,IAAI,IAAI,MAAM;CASf;AAED,MAAM,WAAW,cAAc;IAC7B,uDAAuD;IACvD,IAAI,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IACvB,oGAAoG;IACpG,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,wCAAwC;IACxC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uDAAuD;IACvD,OAAO,CAAC,EAAE,YAAY,CAAC;CAGxB;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,EAAE,IAAI,CAAC,EAAE,cAAc,GAAG,YAAY,CAAC;CAC/D;AA4DD,eAAO,MAAM,UAAU,EAAE,UAA8B,CAAC"}
1
+ {"version":3,"file":"http_internal.d.ts","sourceRoot":"","sources":["../../src/server/http_internal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAiB,MAAM,kBAAkB,CAAC;AAU1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAIzD,OAAO,EAAE,OAAO,EAAE,CAAC;AAInB,MAAM,MAAM,QAAQ,GAAG,WAAW,GAAG,eAAe,GAAG,MAAM,CAAC;AAC9D,MAAM,MAAM,WAAW,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC;AAChF,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAcD,QAAA,MAAM,YAAY,eAAyB,CAAC;AAG5C,UAAU,aAAa;IACrB,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,gBAAgB,CAAC;IAC3E,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,qBAAa,YAAY;;gBAIX,IAAI,CAAC,EAAE,QAAQ,GAAG,IAAI,EAAE,IAAI,CAAC,EAAE,YAAY;IAsBvD,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,EAAE,KAAK,EAAE,aAAa;IAMjE,IAAI,OAAO,IAAI,OAAO,CAErB;IACD,IAAI,MAAM,IAAI,MAAM,CAEnB;IACD,IAAI,UAAU,WAEb;IACD,IAAI,EAAE,IAAI,OAAO,CAEhB;IACD,IAAI,GAAG,IAAI,MAAM,CAEhB;IACD,IAAI,IAAI,yEAEP;IAED,WAAW,IAAI,WAAW;IAI1B,KAAK,IAAI,UAAU,CAAC,WAAW,CAAC;IAUhC,IAAI,IAAI,GAAG;IAIX,IAAI,IAAI,MAAM;CASf;AAED,MAAM,WAAW,cAAc;IAC7B,uDAAuD;IACvD,IAAI,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IACvB,oGAAoG;IACpG,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,wCAAwC;IACxC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uDAAuD;IACvD,OAAO,CAAC,EAAE,YAAY,CAAC;CAGxB;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,EAAE,IAAI,CAAC,EAAE,cAAc,GAAG,YAAY,CAAC;CAC/D;AA4DD,eAAO,MAAM,UAAU,EAAE,UAA8B,CAAC"}
@@ -3,7 +3,7 @@ export { schema, type InferSchema, type ModuleExport, type ModuleSettings, } fro
3
3
  export { CaseConversionPolicy } from '../lib/autogen/types';
4
4
  export { table } from '../lib/table';
5
5
  export { SenderError, SpacetimeHostError, errors } from './errors';
6
- export type { Reducer, ReducerCtx } from '../lib/reducers';
6
+ export type { Reducer, ReducerCtx, JwtClaims, AuthCtx } from '../lib/reducers';
7
7
  export type { ReducerExport } from './reducers';
8
8
  export { type DbView } from './db_view';
9
9
  export * from './query';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,OAAO,EACL,MAAM,EACN,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,cAAc,GACpB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACnE,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC3D,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,WAAW,CAAC;AACxC,cAAc,SAAS,CAAC;AACxB,YAAY,EACV,YAAY,EACZ,cAAc,EACd,eAAe,GAChB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,YAAY,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACpC,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AACrE,OAAO,EAAE,KAAK,EAAE,KAAK,KAAK,EAAE,MAAM,SAAS,CAAC;AAE5C,OAAO,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,OAAO,EACL,MAAM,EACN,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,cAAc,GACpB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACnE,YAAY,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC/E,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,WAAW,CAAC;AACxC,cAAc,SAAS,CAAC;AACxB,YAAY,EACV,YAAY,EACZ,cAAc,EACd,eAAe,GAChB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,YAAY,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACpC,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AACrE,OAAO,EAAE,KAAK,EAAE,KAAK,KAAK,EAAE,MAAM,SAAS,CAAC;AAE5C,OAAO,aAAa,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import * as _syscalls2_0 from 'spacetime:sys@2.0';
2
2
  import { moduleHooks } from 'spacetime:sys@2.0';
3
3
  import { headersToList, Headers } from 'headers-polyfill';
4
+ import * as _syscalls2_1 from 'spacetime:sys@2.1';
4
5
 
5
6
  typeof globalThis!=="undefined"&&((globalThis.global=globalThis.global||globalThis),(globalThis.window=globalThis.window||globalThis));
6
7
  var __create = Object.create;
@@ -1255,8 +1256,8 @@ var BinaryReader = class {
1255
1256
  this.view = input instanceof DataView ? input : new DataView(input.buffer, input.byteOffset, input.byteLength);
1256
1257
  this.offset = 0;
1257
1258
  }
1258
- reset(view) {
1259
- this.view = view;
1259
+ reset(input) {
1260
+ this.view = input instanceof DataView ? input : new DataView(input.buffer, input.byteOffset, input.byteLength);
1260
1261
  this.offset = 0;
1261
1262
  }
1262
1263
  get remaining() {
@@ -1451,6 +1452,11 @@ var BinaryWriter = class {
1451
1452
  this.view.setUint8(this.offset, value);
1452
1453
  this.offset += 1;
1453
1454
  }
1455
+ writeBytes(value) {
1456
+ this.expandBuffer(value.length);
1457
+ new Uint8Array(this.buffer.buffer, this.offset, value.length).set(value);
1458
+ this.offset += value.length;
1459
+ }
1454
1460
  writeI8(value) {
1455
1461
  this.expandBuffer(1);
1456
1462
  this.view.setInt8(this.offset, value);
@@ -5345,7 +5351,7 @@ function table(opts, row, ..._) {
5345
5351
  increment: 1n
5346
5352
  });
5347
5353
  }
5348
- if (meta.defaultValue) {
5354
+ if (Object.prototype.hasOwnProperty.call(meta, "defaultValue")) {
5349
5355
  const writer = new BinaryWriter(16);
5350
5356
  builder.serialize(writer, meta.defaultValue);
5351
5357
  defaultValues.push({
@@ -6296,7 +6302,7 @@ function makeRandom(seed) {
6296
6302
 
6297
6303
  // src/server/runtime.ts
6298
6304
  var { freeze } = Object;
6299
- var sys = _syscalls2_0;
6305
+ var sys = { ..._syscalls2_0, ..._syscalls2_1 };
6300
6306
  function parseJsonObject(json) {
6301
6307
  let value;
6302
6308
  try {
@@ -6426,9 +6432,12 @@ var ReducerCtxImpl = class ReducerCtx {
6426
6432
  me.#uuidCounter = void 0;
6427
6433
  me.#senderAuth = void 0;
6428
6434
  }
6429
- get identity() {
6435
+ get databaseIdentity() {
6430
6436
  return this.#identity ??= new Identity(sys.identity());
6431
6437
  }
6438
+ get identity() {
6439
+ return this.databaseIdentity;
6440
+ }
6432
6441
  get senderAuth() {
6433
6442
  return this.#senderAuth ??= AuthCtxImpl.fromSystemTables(
6434
6443
  this.connectionId,
@@ -6649,7 +6658,8 @@ function makeTableView(typespace, table2) {
6649
6658
  BINARY_WRITER.offset
6650
6659
  );
6651
6660
  return count > 0;
6652
- }
6661
+ },
6662
+ clear: () => sys.datastore_clear(table_id)
6653
6663
  };
6654
6664
  const tableView = Object.assign(
6655
6665
  /* @__PURE__ */ Object.create(null),
@@ -6780,9 +6790,33 @@ function makeTableView(typespace, table2) {
6780
6790
  }
6781
6791
  index = base;
6782
6792
  } else if (serializeSinglePoint) {
6793
+ const serializeSingleRange = !isHashIndex ? (buffer, range) => {
6794
+ BINARY_WRITER.reset(buffer);
6795
+ const writer = BINARY_WRITER;
6796
+ const writeBound = (bound) => {
6797
+ const tags = { included: 0, excluded: 1, unbounded: 2 };
6798
+ writer.writeU8(tags[bound.tag]);
6799
+ if (bound.tag !== "unbounded")
6800
+ serializeSingleElement(writer, bound.value);
6801
+ };
6802
+ writeBound(range.from);
6803
+ const rstartLen = writer.offset;
6804
+ writeBound(range.to);
6805
+ const rendLen = writer.offset - rstartLen;
6806
+ return [0, 0, rstartLen, rendLen];
6807
+ } : null;
6783
6808
  const rawIndex = {
6784
6809
  filter: (range) => {
6785
6810
  const buf = LEAF_BUF;
6811
+ if (serializeSingleRange && range instanceof Range) {
6812
+ const args = serializeSingleRange(buf, range);
6813
+ const iter_id2 = sys.datastore_index_scan_range_bsatn(
6814
+ index_id,
6815
+ buf.buffer,
6816
+ ...args
6817
+ );
6818
+ return tableIterator(iter_id2, deserializeRow);
6819
+ }
6786
6820
  const point_len = serializeSinglePoint(buf, range);
6787
6821
  const iter_id = sys.datastore_index_scan_point_bsatn(
6788
6822
  index_id,
@@ -6793,6 +6827,14 @@ function makeTableView(typespace, table2) {
6793
6827
  },
6794
6828
  delete: (range) => {
6795
6829
  const buf = LEAF_BUF;
6830
+ if (serializeSingleRange && range instanceof Range) {
6831
+ const args = serializeSingleRange(buf, range);
6832
+ return sys.datastore_delete_by_index_scan_range_bsatn(
6833
+ index_id,
6834
+ buf.buffer,
6835
+ ...args
6836
+ );
6837
+ }
6796
6838
  const point_len = serializeSinglePoint(buf, range);
6797
6839
  return sys.datastore_delete_by_index_scan_point_bsatn(
6798
6840
  index_id,
@@ -6997,6 +7039,14 @@ var textDecoder = new TextDecoder(
6997
7039
  "utf-8"
6998
7040
  /* { fatal: true } */
6999
7041
  );
7042
+ function deserializeHeaders(headers) {
7043
+ return new Headers(
7044
+ headers.entries.map(({ name, value }) => [
7045
+ name,
7046
+ textDecoder.decode(value)
7047
+ ])
7048
+ );
7049
+ }
7000
7050
  var makeResponse = Symbol("makeResponse");
7001
7051
  var SyncResponse = class _SyncResponse {
7002
7052
  #body;
@@ -7108,7 +7158,7 @@ function fetch(url, init = {}) {
7108
7158
  url: uri,
7109
7159
  status: response.code,
7110
7160
  statusText: (0, import_statuses.default)(response.code),
7111
- headers: new Headers(),
7161
+ headers: deserializeHeaders(response.headers),
7112
7162
  aborted: false
7113
7163
  });
7114
7164
  }
@@ -7181,9 +7231,12 @@ var ProcedureCtxImpl = class ProcedureCtx {
7181
7231
  #uuidCounter;
7182
7232
  #random;
7183
7233
  #dbView;
7184
- get identity() {
7234
+ get databaseIdentity() {
7185
7235
  return this.#identity ??= new Identity(sys.identity());
7186
7236
  }
7237
+ get identity() {
7238
+ return this.databaseIdentity;
7239
+ }
7187
7240
  get random() {
7188
7241
  return this.#random ??= makeRandom(this.timestamp);
7189
7242
  }