spacetimedb 2.3.0 → 2.4.1

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 (61) hide show
  1. package/LICENSE.txt +2 -2
  2. package/dist/index.browser.mjs +64 -4
  3. package/dist/index.browser.mjs.map +1 -1
  4. package/dist/index.cjs +64 -4
  5. package/dist/index.cjs.map +1 -1
  6. package/dist/index.mjs +64 -4
  7. package/dist/index.mjs.map +1 -1
  8. package/dist/lib/autogen/types.d.ts +675 -2
  9. package/dist/lib/autogen/types.d.ts.map +1 -1
  10. package/dist/lib/schema.d.ts.map +1 -1
  11. package/dist/min/index.browser.mjs +1 -1
  12. package/dist/min/index.browser.mjs.map +1 -1
  13. package/dist/min/sdk/index.browser.mjs +1 -1
  14. package/dist/min/sdk/index.browser.mjs.map +1 -1
  15. package/dist/sdk/decompress.d.ts.map +1 -1
  16. package/dist/sdk/index.browser.mjs +64 -4
  17. package/dist/sdk/index.browser.mjs.map +1 -1
  18. package/dist/sdk/index.cjs +64 -4
  19. package/dist/sdk/index.cjs.map +1 -1
  20. package/dist/sdk/index.mjs +64 -4
  21. package/dist/sdk/index.mjs.map +1 -1
  22. package/dist/server/http.d.ts +1 -2
  23. package/dist/server/http.d.ts.map +1 -1
  24. package/dist/server/http.test-d.d.ts +2 -0
  25. package/dist/server/http.test-d.d.ts.map +1 -0
  26. package/dist/server/http_handlers.d.ts +82 -0
  27. package/dist/server/http_handlers.d.ts.map +1 -0
  28. package/dist/server/http_internal.d.ts +1 -32
  29. package/dist/server/http_internal.d.ts.map +1 -1
  30. package/dist/server/http_shared.d.ts +44 -0
  31. package/dist/server/http_shared.d.ts.map +1 -0
  32. package/dist/server/index.d.ts +2 -0
  33. package/dist/server/index.d.ts.map +1 -1
  34. package/dist/server/index.mjs +628 -136
  35. package/dist/server/index.mjs.map +1 -1
  36. package/dist/server/runtime.d.ts +1 -0
  37. package/dist/server/runtime.d.ts.map +1 -1
  38. package/dist/server/schema.d.ts +19 -4
  39. package/dist/server/schema.d.ts.map +1 -1
  40. package/dist/server/views.d.ts +17 -1
  41. package/dist/server/views.d.ts.map +1 -1
  42. package/package.json +1 -1
  43. package/src/lib/autogen/types.ts +38 -0
  44. package/src/lib/schema.ts +21 -0
  45. package/src/sdk/decompress.ts +19 -4
  46. package/src/sdk/logger.ts +1 -1
  47. package/src/server/http.test-d.ts +80 -0
  48. package/src/server/http.ts +14 -2
  49. package/src/server/http_handlers.ts +413 -0
  50. package/src/server/http_internal.ts +15 -142
  51. package/src/server/http_shared.ts +186 -0
  52. package/src/server/index.ts +11 -0
  53. package/src/server/procedures.ts +8 -30
  54. package/src/server/runtime.ts +137 -1
  55. package/src/server/schema.ts +86 -4
  56. package/src/server/sys.d.ts +7 -0
  57. package/src/server/view.test-d.ts +22 -0
  58. package/src/server/views.ts +127 -0
  59. package/dist/lib/http_types.d.ts +0 -2
  60. package/dist/lib/http_types.d.ts.map +0 -1
  61. package/src/lib/http_types.ts +0 -8
package/dist/index.cjs CHANGED
@@ -5006,11 +5006,21 @@ async function decompress(buffer, type, chunkSize = 128 * 1024) {
5006
5006
  });
5007
5007
  const decompressionStream = new DecompressionStream(type);
5008
5008
  const decompressedStream = readableStream.pipeThrough(decompressionStream);
5009
+ const reader = decompressedStream.getReader();
5009
5010
  const chunks = [];
5010
- for await (const chunk of decompressedStream) {
5011
- chunks.push(chunk);
5012
- }
5013
- return new Blob(chunks).bytes();
5011
+ let totalLength = 0;
5012
+ let result;
5013
+ while (!(result = await reader.read()).done) {
5014
+ chunks.push(result.value);
5015
+ totalLength += result.value.length;
5016
+ }
5017
+ const decompressedArray = new Uint8Array(totalLength);
5018
+ let chunkOffset = 0;
5019
+ for (const chunk of chunks) {
5020
+ decompressedArray.set(chunk, chunkOffset);
5021
+ chunkOffset += chunk.length;
5022
+ }
5023
+ return decompressedArray;
5014
5024
  }
5015
5025
 
5016
5026
  // src/sdk/ws.ts
@@ -6685,7 +6695,10 @@ var ModuleContext = class {
6685
6695
  schedules: [],
6686
6696
  procedures: [],
6687
6697
  views: [],
6698
+ viewPrimaryKeys: [],
6688
6699
  lifeCycleReducers: [],
6700
+ httpHandlers: [],
6701
+ httpRoutes: [],
6689
6702
  caseConversionPolicy: { tag: "SnakeCase" },
6690
6703
  explicitNames: {
6691
6704
  entries: []
@@ -6706,6 +6719,12 @@ var ModuleContext = class {
6706
6719
  push(module.reducers && { tag: "Reducers", value: module.reducers });
6707
6720
  push(module.procedures && { tag: "Procedures", value: module.procedures });
6708
6721
  push(module.views && { tag: "Views", value: module.views });
6722
+ push(
6723
+ module.viewPrimaryKeys && {
6724
+ tag: "ViewPrimaryKeys",
6725
+ value: module.viewPrimaryKeys
6726
+ }
6727
+ );
6709
6728
  push(module.schedules && { tag: "Schedules", value: module.schedules });
6710
6729
  push(
6711
6730
  module.lifeCycleReducers && {
@@ -6713,6 +6732,18 @@ var ModuleContext = class {
6713
6732
  value: module.lifeCycleReducers
6714
6733
  }
6715
6734
  );
6735
+ push(
6736
+ module.httpHandlers && {
6737
+ tag: "HttpHandlers",
6738
+ value: module.httpHandlers
6739
+ }
6740
+ );
6741
+ push(
6742
+ module.httpRoutes && {
6743
+ tag: "HttpRoutes",
6744
+ value: module.httpRoutes
6745
+ }
6746
+ );
6716
6747
  push(
6717
6748
  module.rowLevelSecurity && {
6718
6749
  tag: "RowLevelSecurity",
@@ -6971,6 +7002,12 @@ var Lifecycle = t.enum("Lifecycle", {
6971
7002
  OnConnect: t.unit(),
6972
7003
  OnDisconnect: t.unit()
6973
7004
  });
7005
+ var MethodOrAny = t.enum("MethodOrAny", {
7006
+ Any: t.unit(),
7007
+ get Method() {
7008
+ return HttpMethod;
7009
+ }
7010
+ });
6974
7011
  var MiscModuleExport = t.enum("MiscModuleExport", {
6975
7012
  get TypeAlias() {
6976
7013
  return TypeAlias;
@@ -7028,6 +7065,16 @@ var RawConstraintDefV9 = t.object("RawConstraintDefV9", {
7028
7065
  return RawConstraintDataV9;
7029
7066
  }
7030
7067
  });
7068
+ var RawHttpHandlerDefV10 = t.object("RawHttpHandlerDefV10", {
7069
+ sourceName: t.string()
7070
+ });
7071
+ var RawHttpRouteDefV10 = t.object("RawHttpRouteDefV10", {
7072
+ handlerFunction: t.string(),
7073
+ get method() {
7074
+ return MethodOrAny;
7075
+ },
7076
+ path: t.string()
7077
+ });
7031
7078
  var RawIndexAlgorithm = t.enum("RawIndexAlgorithm", {
7032
7079
  BTree: t.array(t.u16()),
7033
7080
  Hash: t.array(t.u16()),
@@ -7124,6 +7171,15 @@ var RawModuleDefV10Section = t.enum("RawModuleDefV10Section", {
7124
7171
  },
7125
7172
  get ExplicitNames() {
7126
7173
  return ExplicitNames;
7174
+ },
7175
+ get HttpHandlers() {
7176
+ return t.array(RawHttpHandlerDefV10);
7177
+ },
7178
+ get HttpRoutes() {
7179
+ return t.array(RawHttpRouteDefV10);
7180
+ },
7181
+ get ViewPrimaryKeys() {
7182
+ return t.array(RawViewPrimaryKeyDefV10);
7127
7183
  }
7128
7184
  });
7129
7185
  var RawModuleDefV8 = t.object("RawModuleDefV8", {
@@ -7361,6 +7417,10 @@ var RawViewDefV9 = t.object("RawViewDefV9", {
7361
7417
  return AlgebraicType2;
7362
7418
  }
7363
7419
  });
7420
+ var RawViewPrimaryKeyDefV10 = t.object("RawViewPrimaryKeyDefV10", {
7421
+ viewSourceName: t.string(),
7422
+ columns: t.array(t.string())
7423
+ });
7364
7424
  var ReducerDef = t.object("ReducerDef", {
7365
7425
  name: t.string(),
7366
7426
  get args() {