spacetimedb 2.4.1 → 2.6.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 (194) hide show
  1. package/LICENSE.txt +759 -759
  2. package/README.md +211 -120
  3. package/dist/angular/index.cjs.map +1 -1
  4. package/dist/angular/index.mjs.map +1 -1
  5. package/dist/browser/angular/index.mjs.map +1 -1
  6. package/dist/browser/react/index.mjs +129 -57
  7. package/dist/browser/react/index.mjs.map +1 -1
  8. package/dist/browser/solid/index.mjs +1933 -0
  9. package/dist/browser/solid/index.mjs.map +1 -0
  10. package/dist/browser/svelte/index.mjs.map +1 -1
  11. package/dist/browser/vue/index.mjs.map +1 -1
  12. package/dist/index.browser.mjs +10 -2
  13. package/dist/index.browser.mjs.map +1 -1
  14. package/dist/index.cjs +10 -2
  15. package/dist/index.cjs.map +1 -1
  16. package/dist/index.mjs +10 -2
  17. package/dist/index.mjs.map +1 -1
  18. package/dist/min/index.browser.mjs +1 -1
  19. package/dist/min/index.browser.mjs.map +1 -1
  20. package/dist/min/react/index.mjs +1 -1
  21. package/dist/min/react/index.mjs.map +1 -1
  22. package/dist/min/sdk/index.browser.mjs +1 -1
  23. package/dist/min/sdk/index.browser.mjs.map +1 -1
  24. package/dist/react/index.cjs +129 -57
  25. package/dist/react/index.cjs.map +1 -1
  26. package/dist/react/index.mjs +129 -57
  27. package/dist/react/index.mjs.map +1 -1
  28. package/dist/react/useTable.d.ts.map +1 -1
  29. package/dist/sdk/connection_manager.d.ts +8 -0
  30. package/dist/sdk/connection_manager.d.ts.map +1 -1
  31. package/dist/sdk/db_connection_impl.d.ts +7 -0
  32. package/dist/sdk/db_connection_impl.d.ts.map +1 -1
  33. package/dist/sdk/index.browser.mjs +10 -2
  34. package/dist/sdk/index.browser.mjs.map +1 -1
  35. package/dist/sdk/index.cjs +10 -2
  36. package/dist/sdk/index.cjs.map +1 -1
  37. package/dist/sdk/index.mjs +10 -2
  38. package/dist/sdk/index.mjs.map +1 -1
  39. package/dist/sdk/websocket_test_adapter.d.ts +2 -1
  40. package/dist/sdk/websocket_test_adapter.d.ts.map +1 -1
  41. package/dist/server/index.mjs.map +1 -1
  42. package/dist/server/runtime.d.ts.map +1 -1
  43. package/dist/solid/SpacetimeDBProvider.d.ts +7 -0
  44. package/dist/solid/SpacetimeDBProvider.d.ts.map +1 -0
  45. package/dist/solid/connection_state.d.ts +6 -0
  46. package/dist/solid/connection_state.d.ts.map +1 -0
  47. package/dist/solid/index.cjs +1939 -0
  48. package/dist/solid/index.cjs.map +1 -0
  49. package/dist/solid/index.d.ts +6 -0
  50. package/dist/solid/index.d.ts.map +1 -0
  51. package/dist/solid/index.mjs +1933 -0
  52. package/dist/solid/index.mjs.map +1 -0
  53. package/dist/solid/useProcedure.d.ts +4 -0
  54. package/dist/solid/useProcedure.d.ts.map +1 -0
  55. package/dist/solid/useReducer.d.ts +4 -0
  56. package/dist/solid/useReducer.d.ts.map +1 -0
  57. package/dist/solid/useSpacetimeDB.d.ts +4 -0
  58. package/dist/solid/useSpacetimeDB.d.ts.map +1 -0
  59. package/dist/solid/useTable.d.ts +32 -0
  60. package/dist/solid/useTable.d.ts.map +1 -0
  61. package/dist/svelte/index.cjs.map +1 -1
  62. package/dist/svelte/index.mjs.map +1 -1
  63. package/dist/tanstack/index.cjs +120 -50
  64. package/dist/tanstack/index.cjs.map +1 -1
  65. package/dist/tanstack/index.mjs +120 -50
  66. package/dist/tanstack/index.mjs.map +1 -1
  67. package/dist/vue/index.cjs.map +1 -1
  68. package/dist/vue/index.mjs.map +1 -1
  69. package/package.json +13 -3
  70. package/src/angular/connection_state.ts +19 -19
  71. package/src/angular/index.ts +3 -3
  72. package/src/angular/injectors/index.ts +4 -4
  73. package/src/angular/injectors/inject-reducer.ts +62 -62
  74. package/src/angular/injectors/inject-spacetimedb-connected.ts +13 -13
  75. package/src/angular/injectors/inject-spacetimedb.ts +10 -10
  76. package/src/angular/injectors/inject-table.ts +234 -234
  77. package/src/angular/providers/index.ts +1 -1
  78. package/src/angular/providers/provide-spacetimedb.ts +96 -96
  79. package/src/index.ts +16 -16
  80. package/src/lib/algebraic_type.ts +819 -819
  81. package/src/lib/algebraic_type_variants.ts +26 -26
  82. package/src/lib/algebraic_value.ts +10 -10
  83. package/src/lib/autogen/types.ts +746 -746
  84. package/src/lib/binary_reader.ts +188 -188
  85. package/src/lib/binary_writer.ts +213 -213
  86. package/src/lib/connection_id.ts +102 -102
  87. package/src/lib/constraints.ts +48 -48
  88. package/src/lib/errors.ts +26 -26
  89. package/src/lib/filter.ts +195 -195
  90. package/src/lib/identity.ts +83 -83
  91. package/src/lib/indexes.ts +251 -251
  92. package/src/lib/option.ts +34 -34
  93. package/src/lib/query.ts +1019 -1019
  94. package/src/lib/reducer_schema.ts +38 -38
  95. package/src/lib/reducers.ts +116 -116
  96. package/src/lib/result.ts +36 -36
  97. package/src/lib/schedule_at.ts +86 -86
  98. package/src/lib/schema.ts +420 -420
  99. package/src/lib/table.ts +548 -548
  100. package/src/lib/table_schema.ts +64 -64
  101. package/src/lib/time_duration.ts +77 -77
  102. package/src/lib/timestamp.ts +148 -148
  103. package/src/lib/type_builders.test-d.ts +128 -128
  104. package/src/lib/type_builders.ts +4014 -4014
  105. package/src/lib/type_util.ts +124 -124
  106. package/src/lib/util.ts +196 -196
  107. package/src/lib/uuid.ts +337 -337
  108. package/src/react/SpacetimeDBProvider.ts +84 -84
  109. package/src/react/connection_state.ts +6 -6
  110. package/src/react/index.ts +5 -5
  111. package/src/react/useProcedure.ts +60 -60
  112. package/src/react/useReducer.ts +53 -53
  113. package/src/react/useSpacetimeDB.ts +18 -18
  114. package/src/react/useTable.ts +256 -251
  115. package/src/sdk/client_api/index.ts +114 -114
  116. package/src/sdk/client_api/types/procedures.ts +8 -8
  117. package/src/sdk/client_api/types/reducers.ts +8 -8
  118. package/src/sdk/client_api/types.ts +288 -288
  119. package/src/sdk/client_cache.ts +129 -129
  120. package/src/sdk/client_table.ts +179 -179
  121. package/src/sdk/connection_manager.ts +352 -237
  122. package/src/sdk/db_connection_builder.ts +290 -290
  123. package/src/sdk/db_connection_impl.ts +1356 -1347
  124. package/src/sdk/db_context.ts +28 -28
  125. package/src/sdk/db_view.ts +12 -12
  126. package/src/sdk/decompress.ts +51 -51
  127. package/src/sdk/event.ts +18 -18
  128. package/src/sdk/event_context.ts +51 -51
  129. package/src/sdk/event_emitter.ts +32 -32
  130. package/src/sdk/index.ts +14 -14
  131. package/src/sdk/internal.ts +2 -2
  132. package/src/sdk/json_api.ts +46 -46
  133. package/src/sdk/logger.ts +134 -134
  134. package/src/sdk/message_types.ts +46 -46
  135. package/src/sdk/procedures.ts +83 -83
  136. package/src/sdk/reducer_event.ts +20 -20
  137. package/src/sdk/reducer_handle.ts +12 -12
  138. package/src/sdk/reducers.ts +159 -159
  139. package/src/sdk/schema.ts +45 -45
  140. package/src/sdk/spacetime_module.ts +28 -28
  141. package/src/sdk/subscription_builder_impl.ts +275 -275
  142. package/src/sdk/table_cache.ts +581 -581
  143. package/src/sdk/type_utils.ts +19 -19
  144. package/src/sdk/version.ts +133 -133
  145. package/src/sdk/websocket_decompress_adapter.ts +63 -63
  146. package/src/sdk/websocket_protocols.ts +25 -25
  147. package/src/sdk/websocket_test_adapter.ts +107 -100
  148. package/src/sdk/websocket_v3_frames.ts +126 -126
  149. package/src/sdk/ws.ts +105 -105
  150. package/src/server/console.ts +81 -81
  151. package/src/server/db_view.ts +21 -21
  152. package/src/server/errors.ts +138 -138
  153. package/src/server/http.test-d.ts +80 -80
  154. package/src/server/http.ts +14 -14
  155. package/src/server/http_handlers.ts +413 -413
  156. package/src/server/http_internal.ts +79 -79
  157. package/src/server/http_shared.ts +186 -186
  158. package/src/server/index.ts +37 -37
  159. package/src/server/polyfills.ts +4 -4
  160. package/src/server/procedures.ts +239 -239
  161. package/src/server/query.ts +1 -1
  162. package/src/server/range.ts +53 -53
  163. package/src/server/reducers.ts +113 -113
  164. package/src/server/rng.ts +113 -113
  165. package/src/server/runtime.ts +1102 -1102
  166. package/src/server/schema.test-d.ts +99 -99
  167. package/src/server/schema.ts +663 -663
  168. package/src/server/sys.d.ts +125 -125
  169. package/src/server/view.test-d.ts +194 -194
  170. package/src/server/views.ts +340 -340
  171. package/src/solid/SpacetimeDBProvider.ts +97 -0
  172. package/src/solid/connection_state.ts +6 -0
  173. package/src/solid/index.ts +5 -0
  174. package/src/solid/useProcedure.ts +57 -0
  175. package/src/solid/useReducer.ts +50 -0
  176. package/src/solid/useSpacetimeDB.ts +18 -0
  177. package/src/solid/useTable.ts +203 -0
  178. package/src/svelte/SpacetimeDBProvider.ts +101 -101
  179. package/src/svelte/connection_state.ts +16 -16
  180. package/src/svelte/index.ts +4 -4
  181. package/src/svelte/useReducer.ts +61 -61
  182. package/src/svelte/useSpacetimeDB.ts +22 -22
  183. package/src/svelte/useTable.ts +218 -218
  184. package/src/tanstack/SpacetimeDBQueryClient.ts +330 -330
  185. package/src/tanstack/hooks.ts +83 -83
  186. package/src/tanstack/index.ts +16 -16
  187. package/src/util-stub.ts +1 -1
  188. package/src/vue/SpacetimeDBProvider.ts +157 -157
  189. package/src/vue/connection_state.ts +19 -19
  190. package/src/vue/index.ts +5 -5
  191. package/src/vue/useProcedure.ts +62 -62
  192. package/src/vue/useReducer.ts +55 -55
  193. package/src/vue/useSpacetimeDB.ts +18 -18
  194. package/src/vue/useTable.ts +229 -229
@@ -1 +1 @@
1
- {"version":3,"file":"useTable.d.ts","sourceRoot":"","sources":["../../src/react/useTable.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC7D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EACL,KAAK,KAAK,EAMX,MAAM,cAAc,CAAC;AAEtB,MAAM,WAAW,iBAAiB,CAAC,OAAO;IACxC,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAC;IAClC,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAC;IAClC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IACtD,8DAA8D;IAC9D,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAkBD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,QAAQ,CAAC,QAAQ,SAAS,eAAe,EACvD,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,EACtB,SAAS,CAAC,EAAE,iBAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,GACzD,CAAC,SAAS,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,OAAO,CAAC,CAqLnD"}
1
+ {"version":3,"file":"useTable.d.ts","sourceRoot":"","sources":["../../src/react/useTable.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC7D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EACL,KAAK,KAAK,EAMX,MAAM,cAAc,CAAC;AAEtB,MAAM,WAAW,iBAAiB,CAAC,OAAO;IACxC,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAC;IAClC,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,CAAC;IAClC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IACtD,8DAA8D;IAC9D,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAkBD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,QAAQ,CAAC,QAAQ,SAAS,eAAe,EACvD,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,EACtB,SAAS,CAAC,EAAE,iBAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,GACzD,CAAC,SAAS,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,OAAO,CAAC,CA0LnD"}
@@ -39,6 +39,14 @@ export type ConnectionState = {
39
39
  connectionError?: Error;
40
40
  };
41
41
  type Listener = () => void;
42
+ export declare const CONNECTION_MANAGER_RECONNECT_BASE_DELAY_MS = 1000;
43
+ export declare const CONNECTION_MANAGER_RECONNECT_MAX_DELAY_MS = 30000;
44
+ /**
45
+ * Computes the reconnect delay for the given attempt (0-based) using
46
+ * exponential backoff: the base delay doubles with each consecutive failed
47
+ * attempt, capped at the maximum delay.
48
+ */
49
+ export declare function connectionManagerReconnectDelayMs(attempt: number): number;
42
50
  /**
43
51
  * Singleton manager for SpacetimeDB connections.
44
52
  * Use the exported `ConnectionManager` instance rather than instantiating directly.
@@ -1 +1 @@
1
- {"version":3,"file":"connection_manager.d.ts","sourceRoot":"","sources":["../../src/sdk/connection_manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,OAAO,KAAK,EACV,mBAAmB,EACnB,gBAAgB,EAEjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,4DAA4D;AAC5D,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,YAAY,CAAC;IAC3B,eAAe,CAAC,EAAE,KAAK,CAAC;CACzB,CAAC;AAEF,KAAK,QAAQ,GAAG,MAAM,IAAI,CAAC;AAuB3B;;;GAGG;AACH,cAAM,qBAAqB;;IAGzB,4EAA4E;IAC5E,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM;IAItD,0CAA0C;IAC1C,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM;IA0B/C;;;;;;;;OAQG;IACH,MAAM,CAAC,CAAC,SAAS,gBAAgB,CAAC,GAAG,CAAC,EACpC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAC9B,CAAC;IA0DJ,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAkC1B,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,MAAM,IAAI;IAetD,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAIrD,aAAa,CAAC,CAAC,SAAS,gBAAgB,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI;CAGtE;AAED,eAAO,MAAM,iBAAiB,uBAA8B,CAAC"}
1
+ {"version":3,"file":"connection_manager.d.ts","sourceRoot":"","sources":["../../src/sdk/connection_manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,OAAO,KAAK,EACV,mBAAmB,EACnB,gBAAgB,EAEjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,4DAA4D;AAC5D,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,YAAY,CAAC;IAC3B,eAAe,CAAC,EAAE,KAAK,CAAC;CACzB,CAAC;AAEF,KAAK,QAAQ,GAAG,MAAM,IAAI,CAAC;AAE3B,eAAO,MAAM,0CAA0C,OAAO,CAAC;AAC/D,eAAO,MAAM,yCAAyC,QAAS,CAAC;AAEhE;;;;GAIG;AACH,wBAAgB,iCAAiC,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAKzE;AA0BD;;;GAGG;AACH,cAAM,qBAAqB;;IAGzB,4EAA4E;IAC5E,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM;IAItD,0CAA0C;IAC1C,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM;IAmK/C;;;;;;;;OAQG;IACH,MAAM,CAAC,CAAC,SAAS,gBAAgB,CAAC,GAAG,CAAC,EACpC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAC,GAC9B,CAAC;IAqBJ,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IA+B1B,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,MAAM,IAAI;IAetD,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS;IAIrD,aAAa,CAAC,CAAC,SAAS,gBAAgB,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI;CAGtE;AAED,eAAO,MAAM,iBAAiB,uBAA8B,CAAC"}
@@ -37,6 +37,13 @@ export declare class DbConnectionImpl<RemoteModule extends UntypedRemoteModule>
37
37
  * Whether or not the connection is active.
38
38
  */
39
39
  isActive: boolean;
40
+ /**
41
+ * Whether `disconnect()` has been called on this connection.
42
+ * Once requested, the connection will not be reused: managed environments
43
+ * (such as the React `SpacetimeDBProvider`) use this to avoid reconnecting
44
+ * after an intentional disconnect.
45
+ */
46
+ isDisconnectRequested: boolean;
40
47
  /**
41
48
  * This connection's public identity.
42
49
  */
@@ -1 +1 @@
1
- {"version":3,"file":"db_connection_impl.d.ts","sourceRoot":"","sources":["../../src/sdk/db_connection_impl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"db_connection_impl.d.ts","sourceRoot":"","sources":["../../src/sdk/db_connection_impl.ts"],"names":[],"mappings":"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"}
@@ -5537,6 +5537,13 @@ var DbConnectionImpl = class {
5537
5537
  * Whether or not the connection is active.
5538
5538
  */
5539
5539
  isActive = false;
5540
+ /**
5541
+ * Whether `disconnect()` has been called on this connection.
5542
+ * Once requested, the connection will not be reused: managed environments
5543
+ * (such as the React `SpacetimeDBProvider`) use this to avoid reconnecting
5544
+ * after an intentional disconnect.
5545
+ */
5546
+ isDisconnectRequested = false;
5540
5547
  /**
5541
5548
  * This connection's public identity.
5542
5549
  */
@@ -5681,12 +5688,12 @@ var DbConnectionImpl = class {
5681
5688
  }).then((v) => {
5682
5689
  this.ws = v;
5683
5690
  this.ws.onclose = () => {
5684
- this.#emitter.emit("disconnect", this);
5685
5691
  this.isActive = false;
5692
+ this.#emitter.emit("disconnect", this);
5686
5693
  };
5687
5694
  this.ws.onerror = (e) => {
5688
- this.#emitter.emit("connectError", this, e);
5689
5695
  this.isActive = false;
5696
+ this.#emitter.emit("connectError", this, e);
5690
5697
  };
5691
5698
  this.ws.onopen = this.#handleOnOpen.bind(this);
5692
5699
  this.ws.onmessage = this.#handleOnMessage.bind(this);
@@ -6452,6 +6459,7 @@ var DbConnectionImpl = class {
6452
6459
  * ```
6453
6460
  */
6454
6461
  disconnect() {
6462
+ this.isDisconnectRequested = true;
6455
6463
  this.wsPromise.then((ws) => ws?.close());
6456
6464
  }
6457
6465
  on(eventName, callback) {