@kurrent/kurrentdb-client 1.2.0-alpha.0 → 1.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 (139) hide show
  1. package/dist/Client/http.d.ts +7 -1
  2. package/dist/Client/http.js +51 -48
  3. package/dist/Client/http.js.map +1 -1
  4. package/dist/Client/index.d.ts +30 -6
  5. package/dist/Client/index.js +89 -11
  6. package/dist/Client/index.js.map +1 -1
  7. package/dist/Client/parseConnectionString.d.ts +2 -2
  8. package/dist/Client/parseConnectionString.js +0 -9
  9. package/dist/Client/parseConnectionString.js.map +1 -1
  10. package/dist/constants.d.ts +3 -0
  11. package/dist/constants.js +6 -1
  12. package/dist/constants.js.map +1 -1
  13. package/dist/events/binaryEvent.d.ts +1 -5
  14. package/dist/events/binaryEvent.js +2 -2
  15. package/dist/events/binaryEvent.js.map +1 -1
  16. package/dist/events/jsonEvent.js +2 -2
  17. package/dist/events/jsonEvent.js.map +1 -1
  18. package/dist/index.d.ts +1 -1
  19. package/dist/index.js +4 -2
  20. package/dist/index.js.map +1 -1
  21. package/dist/projections/createProjection.d.ts +10 -1
  22. package/dist/projections/createProjection.js +13 -2
  23. package/dist/projections/createProjection.js.map +1 -1
  24. package/dist/streams/appendToStream/appendRecords.d.ts +3 -0
  25. package/dist/streams/appendToStream/appendRecords.js +132 -0
  26. package/dist/streams/appendToStream/appendRecords.js.map +1 -0
  27. package/dist/streams/appendToStream/batchAppend.js +2 -2
  28. package/dist/streams/appendToStream/batchAppend.js.map +1 -1
  29. package/dist/streams/appendToStream/index.d.ts +9 -1
  30. package/dist/streams/appendToStream/index.js +8 -0
  31. package/dist/streams/appendToStream/index.js.map +1 -1
  32. package/dist/streams/readAll.js +18 -18
  33. package/dist/streams/readAll.js.map +1 -1
  34. package/dist/streams/readStream.js +26 -34
  35. package/dist/streams/readStream.js.map +1 -1
  36. package/dist/types/index.d.ts +88 -2
  37. package/dist/types/index.js.map +1 -1
  38. package/dist/utils/CommandError.d.ts +9 -3
  39. package/dist/utils/CommandError.js +50 -1
  40. package/dist/utils/CommandError.js.map +1 -1
  41. package/dist/utils/convertBridgeError.d.ts +2 -1
  42. package/dist/utils/convertBridgeError.js +14 -24
  43. package/dist/utils/convertBridgeError.js.map +1 -1
  44. package/dist/utils/credentials.d.ts +19 -0
  45. package/dist/utils/credentials.js +31 -0
  46. package/dist/utils/credentials.js.map +1 -0
  47. package/dist/utils/grpcUUID.d.ts +1 -0
  48. package/dist/utils/grpcUUID.js +12 -12
  49. package/dist/utils/grpcUUID.js.map +1 -1
  50. package/generated/kurrentdb/protocols/v1/projectionmanagement_pb.d.ts +3 -0
  51. package/generated/kurrentdb/protocols/v1/projectionmanagement_pb.js +31 -1
  52. package/generated/kurrentdb/protocols/v2/core_pb.d.ts +188 -188
  53. package/generated/kurrentdb/protocols/v2/core_pb.js +1301 -1301
  54. package/generated/kurrentdb/protocols/v2/features/service_grpc_pb.d.ts +43 -43
  55. package/generated/kurrentdb/protocols/v2/features/service_grpc_pb.js +50 -50
  56. package/generated/kurrentdb/protocols/v2/features/service_pb.d.ts +227 -227
  57. package/generated/kurrentdb/protocols/v2/features/service_pb.js +1753 -1753
  58. package/generated/kurrentdb/protocols/v2/streams/errors_pb.d.ts +85 -0
  59. package/generated/kurrentdb/protocols/v2/streams/errors_pb.js +625 -1
  60. package/generated/kurrentdb/protocols/v2/streams/shared_pb.d.ts +218 -218
  61. package/generated/kurrentdb/protocols/v2/streams/shared_pb.js +1561 -1561
  62. package/generated/kurrentdb/protocols/v2/streams/streams_grpc_pb.d.ts +17 -0
  63. package/generated/kurrentdb/protocols/v2/streams/streams_grpc_pb.js +53 -0
  64. package/generated/kurrentdb/protocols/v2/streams/streams_pb.d.ts +134 -0
  65. package/generated/kurrentdb/protocols/v2/streams/streams_pb.js +1041 -1
  66. package/package.json +64 -66
  67. package/dist/schemaRegistry/checkSchemaCompatibility.d.ts +0 -12
  68. package/dist/schemaRegistry/checkSchemaCompatibility.js +0 -60
  69. package/dist/schemaRegistry/checkSchemaCompatibility.js.map +0 -1
  70. package/dist/schemaRegistry/createSchema.d.ts +0 -13
  71. package/dist/schemaRegistry/createSchema.js +0 -36
  72. package/dist/schemaRegistry/createSchema.js.map +0 -1
  73. package/dist/schemaRegistry/deleteSchema.d.ts +0 -11
  74. package/dist/schemaRegistry/deleteSchema.js +0 -23
  75. package/dist/schemaRegistry/deleteSchema.js.map +0 -1
  76. package/dist/schemaRegistry/deleteSchemaVersions.d.ts +0 -13
  77. package/dist/schemaRegistry/deleteSchemaVersions.js +0 -29
  78. package/dist/schemaRegistry/deleteSchemaVersions.js.map +0 -1
  79. package/dist/schemaRegistry/getSchema.d.ts +0 -12
  80. package/dist/schemaRegistry/getSchema.js +0 -28
  81. package/dist/schemaRegistry/getSchema.js.map +0 -1
  82. package/dist/schemaRegistry/getSchemaVersion.d.ts +0 -12
  83. package/dist/schemaRegistry/getSchemaVersion.js +0 -33
  84. package/dist/schemaRegistry/getSchemaVersion.js.map +0 -1
  85. package/dist/schemaRegistry/getSchemaVersionById.d.ts +0 -12
  86. package/dist/schemaRegistry/getSchemaVersionById.js +0 -28
  87. package/dist/schemaRegistry/getSchemaVersionById.js.map +0 -1
  88. package/dist/schemaRegistry/index.d.ts +0 -14
  89. package/dist/schemaRegistry/index.js +0 -35
  90. package/dist/schemaRegistry/index.js.map +0 -1
  91. package/dist/schemaRegistry/listRegisteredSchemas.d.ts +0 -11
  92. package/dist/schemaRegistry/listRegisteredSchemas.js +0 -41
  93. package/dist/schemaRegistry/listRegisteredSchemas.js.map +0 -1
  94. package/dist/schemaRegistry/listSchemaVersions.d.ts +0 -12
  95. package/dist/schemaRegistry/listSchemaVersions.js +0 -28
  96. package/dist/schemaRegistry/listSchemaVersions.js.map +0 -1
  97. package/dist/schemaRegistry/listSchemas.d.ts +0 -11
  98. package/dist/schemaRegistry/listSchemas.js +0 -35
  99. package/dist/schemaRegistry/listSchemas.js.map +0 -1
  100. package/dist/schemaRegistry/lookupSchemaName.d.ts +0 -12
  101. package/dist/schemaRegistry/lookupSchemaName.js +0 -23
  102. package/dist/schemaRegistry/lookupSchemaName.js.map +0 -1
  103. package/dist/schemaRegistry/registerSchemaVersion.d.ts +0 -13
  104. package/dist/schemaRegistry/registerSchemaVersion.js +0 -31
  105. package/dist/schemaRegistry/registerSchemaVersion.js.map +0 -1
  106. package/dist/schemaRegistry/types.d.ts +0 -347
  107. package/dist/schemaRegistry/types.js +0 -3
  108. package/dist/schemaRegistry/types.js.map +0 -1
  109. package/dist/schemaRegistry/updateSchema.d.ts +0 -11
  110. package/dist/schemaRegistry/updateSchema.js +0 -51
  111. package/dist/schemaRegistry/updateSchema.js.map +0 -1
  112. package/dist/schemaRegistry/utils/index.d.ts +0 -1
  113. package/dist/schemaRegistry/utils/index.js +0 -18
  114. package/dist/schemaRegistry/utils/index.js.map +0 -1
  115. package/dist/schemaRegistry/utils/mappers.d.ts +0 -24
  116. package/dist/schemaRegistry/utils/mappers.js +0 -198
  117. package/dist/schemaRegistry/utils/mappers.js.map +0 -1
  118. package/generated/kurrentdb/protocols/v2/registry/errors_grpc_pb.js +0 -1
  119. package/generated/kurrentdb/protocols/v2/registry/errors_pb.d.ts +0 -75
  120. package/generated/kurrentdb/protocols/v2/registry/errors_pb.js +0 -493
  121. package/generated/kurrentdb/protocols/v2/registry/events_grpc_pb.js +0 -1
  122. package/generated/kurrentdb/protocols/v2/registry/events_pb.d.ts +0 -255
  123. package/generated/kurrentdb/protocols/v2/registry/events_pb.js +0 -2057
  124. package/generated/kurrentdb/protocols/v2/registry/groups_grpc_pb.js +0 -1
  125. package/generated/kurrentdb/protocols/v2/registry/groups_pb.d.ts +0 -474
  126. package/generated/kurrentdb/protocols/v2/registry/groups_pb.js +0 -3593
  127. package/generated/kurrentdb/protocols/v2/registry/schemas_grpc_pb.js +0 -1
  128. package/generated/kurrentdb/protocols/v2/registry/schemas_pb.d.ts +0 -825
  129. package/generated/kurrentdb/protocols/v2/registry/schemas_pb.js +0 -6500
  130. package/generated/kurrentdb/protocols/v2/registry/service_grpc_pb.d.ts +0 -350
  131. package/generated/kurrentdb/protocols/v2/registry/service_grpc_pb.js +0 -654
  132. package/generated/kurrentdb/protocols/v2/registry/service_pb.d.ts +0 -10
  133. package/generated/kurrentdb/protocols/v2/registry/service_pb.js +0 -29
  134. package/generated/kurrentdb/protocols/v2/registry/shared_grpc_pb.js +0 -1
  135. package/generated/kurrentdb/protocols/v2/registry/shared_pb.d.ts +0 -26
  136. package/generated/kurrentdb/protocols/v2/registry/shared_pb.js +0 -51
  137. package/generated/kurrentdb/protocols/v2/registry/validation_grpc_pb.js +0 -1
  138. package/generated/kurrentdb/protocols/v2/registry/validation_pb.d.ts +0 -247
  139. package/generated/kurrentdb/protocols/v2/registry/validation_pb.js +0 -1789
@@ -1 +1 @@
1
- {"version":3,"file":"jsonEvent.js","sourceRoot":"","sources":["../../src/events/jsonEvent.ts"],"names":[],"mappings":";;;AAAA,+BAAkC;AAIlC,uDAAoD;AAS7C,MAAM,SAAS,GAAG,CAA0B,EACjD,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,EAAE,GAAG,IAAA,SAAI,GAAE,GACS,EAAgB,EAAE,CACtC,CAAC;IACC,EAAE;IACF,WAAW,EAAE,kBAAkB;IAC/B,IAAI;IACJ,IAAI,EAAE,IAAI;IACV,QAAQ,EAAE,IAAA,iCAAe,EAAgB,QAAQ,CAAC;CAClC,CAAA,CAAC;AAZR,QAAA,SAAS,aAYD"}
1
+ {"version":3,"file":"jsonEvent.js","sourceRoot":"","sources":["../../src/events/jsonEvent.ts"],"names":[],"mappings":";;;AAAA,mCAAoC;AAIpC,uDAAoD;AAS7C,MAAM,SAAS,GAAG,CAA0B,EACjD,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,EAAE,GAAG,IAAA,mBAAU,GAAE,GACG,EAAgB,EAAE,CACtC,CAAC;IACC,EAAE;IACF,WAAW,EAAE,kBAAkB;IAC/B,IAAI;IACJ,IAAI,EAAE,IAAI;IACV,QAAQ,EAAE,IAAA,iCAAe,EAAgB,QAAQ,CAAC;CAClC,CAAA,CAAC;AAZR,QAAA,SAAS,aAYD"}
package/dist/index.d.ts CHANGED
@@ -1,8 +1,8 @@
1
1
  export * from "./persistentSubscription";
2
2
  export * from "./projections";
3
- export * from "./schemaRegistry";
4
3
  export * from "./streams";
5
4
  export { Client as KurrentDBClient, DNSClusterOptions, GossipClusterOptions, SingleNodeOptions, ChannelCredentialOptions, } from "./Client";
5
+ export { isBasicCredentials, isBearerCredentials } from "./utils/credentials";
6
6
  export * from "./events";
7
7
  export * from "./constants";
8
8
  export * from "./types";
package/dist/index.js CHANGED
@@ -14,13 +14,15 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.persistentSubscriptionToAllSettingsFromDefaults = exports.persistentSubscriptionToStreamSettingsFromDefaults = exports.KurrentDBClient = void 0;
17
+ exports.persistentSubscriptionToAllSettingsFromDefaults = exports.persistentSubscriptionToStreamSettingsFromDefaults = exports.isBearerCredentials = exports.isBasicCredentials = exports.KurrentDBClient = void 0;
18
18
  __exportStar(require("./persistentSubscription"), exports);
19
19
  __exportStar(require("./projections"), exports);
20
- __exportStar(require("./schemaRegistry"), exports);
21
20
  __exportStar(require("./streams"), exports);
22
21
  var Client_1 = require("./Client");
23
22
  Object.defineProperty(exports, "KurrentDBClient", { enumerable: true, get: function () { return Client_1.Client; } });
23
+ var credentials_1 = require("./utils/credentials");
24
+ Object.defineProperty(exports, "isBasicCredentials", { enumerable: true, get: function () { return credentials_1.isBasicCredentials; } });
25
+ Object.defineProperty(exports, "isBearerCredentials", { enumerable: true, get: function () { return credentials_1.isBearerCredentials; } });
24
26
  __exportStar(require("./events"), exports);
25
27
  __exportStar(require("./constants"), exports);
26
28
  __exportStar(require("./types"), exports);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,2DAAyC;AACzC,gDAA8B;AAC9B,mDAAiC;AACjC,4CAA0B;AAE1B,mCAMkB;AALhB,yGAAA,MAAM,OAAmB;AAM3B,2CAAyB;AACzB,8CAA4B;AAC5B,0CAAwB;AAExB,iDAA+B;AAC/B,uDAAqC;AAGrC,gEAA8C;AAC9C,gHAKuE;AAFrE,oKAAA,kDAAkD,OAAA;AAClD,iKAAA,+CAA+C,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,2DAAyC;AACzC,gDAA8B;AAC9B,4CAA0B;AAE1B,mCAMkB;AALhB,yGAAA,MAAM,OAAmB;AAM3B,mDAA8E;AAArE,iHAAA,kBAAkB,OAAA;AAAE,kHAAA,mBAAmB,OAAA;AAChD,2CAAyB;AACzB,8CAA4B;AAC5B,0CAAwB;AAExB,iDAA+B;AAC/B,uDAAqC;AAGrC,gEAA8C;AAC9C,gHAKuE;AAFrE,oKAAA,kDAAkD,OAAA;AAClD,iKAAA,+CAA+C,OAAA"}
@@ -1,4 +1,4 @@
1
- import type { BaseOptions } from "../types";
1
+ import type { BaseOptions, ProjectionEngineVersion } from "../types";
2
2
  export interface CreateProjectionOptions extends BaseOptions {
3
3
  /**
4
4
  * Enables emitting from the projection.
@@ -10,6 +10,15 @@ export interface CreateProjectionOptions extends BaseOptions {
10
10
  * @defaultValue false
11
11
  */
12
12
  trackEmittedStreams?: boolean;
13
+ /**
14
+ * Selects the projection engine version. Pinned at create time and
15
+ * cannot be changed later. V2 is opt-in and does not support
16
+ * `trackEmittedStreams`, bi-state projections, or live `outputState`
17
+ * result streams. See the KurrentDB documentation for the full list of
18
+ * limitations before choosing V2.
19
+ * @defaultValue {@link PROJECTION_ENGINE_V1}
20
+ */
21
+ engineVersion?: ProjectionEngineVersion;
13
22
  }
14
23
  declare module "../Client" {
15
24
  interface Client {
@@ -3,7 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const projectionmanagement_grpc_pb_1 = require("../../generated/kurrentdb/protocols/v1/projectionmanagement_grpc_pb");
4
4
  const projectionmanagement_pb_1 = require("../../generated/kurrentdb/protocols/v1/projectionmanagement_pb");
5
5
  const Client_1 = require("../Client");
6
+ const constants_1 = require("../constants");
6
7
  const utils_1 = require("../utils");
8
+ const ENGINE_VERSION_WIRE = {
9
+ [constants_1.PROJECTION_ENGINE_V1]: 1,
10
+ [constants_1.PROJECTION_ENGINE_V2]: 2,
11
+ };
7
12
  Client_1.Client.prototype.createProjection = async function (projectionName, query, options = {}) {
8
13
  utils_1.debug.command("createProjection: %O", {
9
14
  projectionName,
@@ -16,7 +21,7 @@ Client_1.Client.prototype.createProjection = async function (projectionName, que
16
21
  }
17
22
  return createProjectionGRPC.call(this, projectionName, query, options);
18
23
  };
19
- const createProjectionGRPC = async function (projectionName, query, { emitEnabled = false, trackEmittedStreams = false, ...baseOptions } = {}) {
24
+ const createProjectionGRPC = async function (projectionName, query, { emitEnabled = false, trackEmittedStreams = false, engineVersion = constants_1.PROJECTION_ENGINE_V1, ...baseOptions } = {}) {
20
25
  const req = new projectionmanagement_pb_1.CreateReq();
21
26
  const options = new projectionmanagement_pb_1.CreateReq.Options();
22
27
  const continuous = new projectionmanagement_pb_1.CreateReq.Options.Continuous();
@@ -25,6 +30,9 @@ const createProjectionGRPC = async function (projectionName, query, { emitEnable
25
30
  continuous.setTrackEmittedStreams(trackEmittedStreams);
26
31
  options.setContinuous(continuous);
27
32
  options.setQuery(query);
33
+ if (engineVersion === constants_1.PROJECTION_ENGINE_V2) {
34
+ options.setEngineVersion(ENGINE_VERSION_WIRE[engineVersion]);
35
+ }
28
36
  req.setOptions(options);
29
37
  utils_1.debug.command_grpc("createProjection: %g", req);
30
38
  return this.execute(projectionmanagement_grpc_pb_1.ProjectionsClient, "createProjection", (client) => new Promise((resolve, reject) => {
@@ -35,13 +43,16 @@ const createProjectionGRPC = async function (projectionName, query, { emitEnable
35
43
  });
36
44
  }));
37
45
  };
38
- const createProjectionHTTP = async function (projectionName, query, { emitEnabled = false, trackEmittedStreams = false, ...baseOptions } = {}) {
46
+ const createProjectionHTTP = async function (projectionName, query, { emitEnabled = false, trackEmittedStreams = false, engineVersion = constants_1.PROJECTION_ENGINE_V1, ...baseOptions } = {}) {
39
47
  await this.HTTPRequest("POST", `/projections/continuous`, {
40
48
  ...baseOptions,
41
49
  searchParams: {
42
50
  name: projectionName,
43
51
  emit: emitEnabled.toString(),
44
52
  trackemittedstreams: trackEmittedStreams.toString(),
53
+ ...(engineVersion === constants_1.PROJECTION_ENGINE_V2 && {
54
+ engineversion: ENGINE_VERSION_WIRE[engineVersion].toString(),
55
+ }),
45
56
  },
46
57
  }, query);
47
58
  };
@@ -1 +1 @@
1
- {"version":3,"file":"createProjection.js","sourceRoot":"","sources":["../../src/projections/createProjection.ts"],"names":[],"mappings":";;AAAA,sHAG6E;AAC7E,4GAA2F;AAE3F,sCAAmC;AAEnC,oCAAwD;AA+BxD,eAAM,CAAC,SAAS,CAAC,gBAAgB,GAAG,KAAK,WAEvC,cAAsB,EACtB,KAAa,EACb,UAAmC,EAAE;IAErC,aAAK,CAAC,OAAO,CAAC,sBAAsB,EAAE;QACpC,cAAc;QACd,KAAK;QACL,OAAO;KACR,CAAC,CAAC;IAEH,IACE,OAAO,CAAC,mBAAmB;QAC3B,CAAC,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,iDAAkB,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC,EAC1E,CAAC;QACD,OAAO,oBAAoB,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IACzE,CAAC;IAED,OAAO,oBAAoB,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;AACzE,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,KAAK,WAEhC,cAAsB,EACtB,KAAa,EACb,EACE,WAAW,GAAG,KAAK,EACnB,mBAAmB,GAAG,KAAK,EAC3B,GAAG,WAAW,KACa,EAAE;IAE/B,MAAM,GAAG,GAAG,IAAI,mCAAS,EAAE,CAAC;IAC5B,MAAM,OAAO,GAAG,IAAI,mCAAS,CAAC,OAAO,EAAE,CAAC;IACxC,MAAM,UAAU,GAAG,IAAI,mCAAS,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;IAEtD,UAAU,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IACnC,UAAU,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;IACvC,UAAU,CAAC,sBAAsB,CAAC,mBAAmB,CAAC,CAAC;IAEvD,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IAClC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAExB,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAExB,aAAK,CAAC,YAAY,CAAC,sBAAsB,EAAE,GAAG,CAAC,CAAC;IAEhD,OAAO,IAAI,CAAC,OAAO,CACjB,gDAAiB,EACjB,kBAAkB,EAClB,CAAC,MAAM,EAAE,EAAE,CACT,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACpC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE;YAC/D,IAAI,KAAK;gBAAE,OAAO,MAAM,CAAC,IAAA,6BAAqB,EAAC,KAAK,CAAC,CAAC,CAAC;YACvD,OAAO,OAAO,EAAE,CAAC;QACnB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CACL,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,oBAAoB,GAAG,KAAK,WAEhC,cAAsB,EACtB,KAAa,EACb,EACE,WAAW,GAAG,KAAK,EACnB,mBAAmB,GAAG,KAAK,EAC3B,GAAG,WAAW,KACa,EAAE;IAE/B,MAAM,IAAI,CAAC,WAAW,CACpB,MAAM,EACN,yBAAyB,EACzB;QACE,GAAG,WAAW;QACd,YAAY,EAAE;YACZ,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,WAAW,CAAC,QAAQ,EAAE;YAC5B,mBAAmB,EAAE,mBAAmB,CAAC,QAAQ,EAAE;SACpD;KACF,EACD,KAAK,CACN,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"createProjection.js","sourceRoot":"","sources":["../../src/projections/createProjection.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { AppendRecordInput, AppendRecordsResult, ConsistencyCheck } from "../../types";
2
+ import type { Client } from "../../Client";
3
+ export declare const appendRecords: (this: Client, records: AppendRecordInput[], checks?: ConsistencyCheck[]) => Promise<AppendRecordsResult>;
@@ -0,0 +1,132 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.appendRecords = void 0;
40
+ const streams_grpc_pb_1 = __importDefault(require("../../../generated/kurrentdb/protocols/v2/streams/streams_grpc_pb"));
41
+ const streams_pb_1 = __importStar(require("../../../generated/kurrentdb/protocols/v2/streams/streams_pb"));
42
+ const utils_1 = require("../../utils");
43
+ const appendRecords = async function (records, checks) {
44
+ for (const record of records) {
45
+ const { metadata } = record.record;
46
+ if (metadata == null)
47
+ continue;
48
+ if (metadata.constructor === Uint8Array ||
49
+ typeof metadata !== "object" ||
50
+ Array.isArray(metadata) ||
51
+ Object.values(metadata).some((value) => typeof value !== "string")) {
52
+ throw new Error("appendRecords requires metadata to be a plain object with string keys and string values.");
53
+ }
54
+ }
55
+ return this.execute(streams_grpc_pb_1.default.StreamsServiceClient, "appendRecords", (client) => new Promise((resolve, reject) => {
56
+ const request = new streams_pb_1.default.AppendRecordsRequest();
57
+ for (const record of records) {
58
+ const appendRecord = new streams_pb_1.default.AppendRecord();
59
+ appendRecord.setStream(record.streamName);
60
+ appendRecord.setRecordId(record.record.id);
61
+ const schemaInfo = new streams_pb_1.SchemaInfo();
62
+ schemaInfo.setFormat((0, utils_1.convertToSchemaDataFormat)(record.record.contentType));
63
+ schemaInfo.setName(record.record.type);
64
+ appendRecord.setSchema(schemaInfo);
65
+ if (record.record.metadata) {
66
+ const metadataMap = (0, utils_1.mapToValueMap)(record.record.metadata);
67
+ for (const [key, value] of metadataMap) {
68
+ appendRecord.getPropertiesMap().set(key, value);
69
+ }
70
+ }
71
+ switch (record.record.contentType) {
72
+ case "application/json": {
73
+ const data = JSON.stringify(record.record.data);
74
+ appendRecord.setData(Buffer.from(data, "utf8").toString("base64"));
75
+ break;
76
+ }
77
+ case "application/octet-stream": {
78
+ appendRecord.setData(record.record.data);
79
+ break;
80
+ }
81
+ }
82
+ request.addRecords(appendRecord);
83
+ }
84
+ if (checks) {
85
+ for (const check of checks) {
86
+ const consistencyCheck = new streams_pb_1.default.ConsistencyCheck();
87
+ const streamStateCheck = new streams_pb_1.default.ConsistencyCheck.StreamStateCheck();
88
+ streamStateCheck.setStream(check.streamName);
89
+ switch (check.expectedState) {
90
+ case "any": {
91
+ streamStateCheck.setExpectedState((-2).toString(10));
92
+ break;
93
+ }
94
+ case "no_stream": {
95
+ streamStateCheck.setExpectedState((-1).toString(10));
96
+ break;
97
+ }
98
+ case "stream_exists": {
99
+ streamStateCheck.setExpectedState((-4).toString(10));
100
+ break;
101
+ }
102
+ default: {
103
+ streamStateCheck.setExpectedState(check.expectedState.toString(10));
104
+ break;
105
+ }
106
+ }
107
+ consistencyCheck.setStreamState(streamStateCheck);
108
+ request.addChecks(consistencyCheck);
109
+ }
110
+ }
111
+ client.appendRecords(request, ...this.callArguments({
112
+ requiresLeader: false,
113
+ }), (error, response) => {
114
+ if (error != null) {
115
+ return reject((0, utils_1.convertToCommandError)(error));
116
+ }
117
+ const successes = [];
118
+ for (const revision of response.getRevisionsList()) {
119
+ successes.push({
120
+ streamName: revision.getStream(),
121
+ revision: BigInt(revision.getRevision()),
122
+ });
123
+ }
124
+ return resolve({
125
+ position: BigInt(response.getPosition()),
126
+ responses: successes,
127
+ });
128
+ });
129
+ }));
130
+ };
131
+ exports.appendRecords = appendRecords;
132
+ //# sourceMappingURL=appendRecords.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"appendRecords.js","sourceRoot":"","sources":["../../../src/streams/appendToStream/appendRecords.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.batchAppend = void 0;
4
- const uuid_1 = require("uuid");
4
+ const crypto_1 = require("crypto");
5
5
  const timestamp_pb_1 = require("google-protobuf/google/protobuf/timestamp_pb");
6
6
  const streams_grpc_pb_1 = require("../../../generated/kurrentdb/protocols/v1/streams_grpc_pb");
7
7
  const streams_pb_1 = require("../../../generated/kurrentdb/protocols/v1/streams_pb");
@@ -11,7 +11,7 @@ const unpackError_1 = require("./unpackError");
11
11
  const streamCache = new WeakMap();
12
12
  const promiseBank = new Map();
13
13
  const batchAppend = async function (streamName, events, { streamState, batchAppendSize, ...baseOptions }) {
14
- const correlationId = (0, uuid_1.v4)();
14
+ const correlationId = (0, crypto_1.randomUUID)();
15
15
  const stream = await this.GRPCStreamCreator(streams_grpc_pb_1.StreamsClient, "appendToStream", (client) => client
16
16
  .batchAppend(...this.callArguments(baseOptions, {
17
17
  deadline: Infinity,
@@ -1 +1 @@
1
- {"version":3,"file":"batchAppend.js","sourceRoot":"","sources":["../../../src/streams/appendToStream/batchAppend.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"batchAppend.js","sourceRoot":"","sources":["../../../src/streams/appendToStream/batchAppend.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { BaseOptions, AppendResult, AppendStreamState, EventData, EventType, MultiAppendResult, AppendStreamRequest } from "../../types";
1
+ import type { BaseOptions, AppendResult, AppendStreamState, EventData, EventType, MultiAppendResult, AppendStreamRequest, AppendRecordInput, AppendRecordsResult, ConsistencyCheck } from "../../types";
2
2
  export interface AppendToStreamOptions extends BaseOptions {
3
3
  /**
4
4
  * Asks the server to check the stream is at specific revision before writing events.
@@ -21,5 +21,13 @@ declare module "../../Client" {
21
21
  */
22
22
  appendToStream<KnownEventType extends EventType = EventType>(streamName: string, events: EventData<KnownEventType> | EventData<KnownEventType>[], options?: AppendToStreamOptions): Promise<AppendResult>;
23
23
  multiStreamAppend<KnownEventType extends EventType = EventType>(requests: AppendStreamRequest<KnownEventType>[]): Promise<MultiAppendResult>;
24
+ /**
25
+ * Appends records to one or more streams atomically with cross-stream consistency checks.
26
+ * Records can be interleaved across streams in any order and the global log preserves
27
+ * the exact sequence from the request.
28
+ * @param records - The records to append. Each record specifies its target stream.
29
+ * @param checks - Optional consistency checks evaluated before commit.
30
+ */
31
+ appendRecords<KnownEventType extends EventType = EventType>(records: AppendRecordInput<KnownEventType>[], checks?: ConsistencyCheck[]): Promise<AppendRecordsResult>;
24
32
  }
25
33
  }
@@ -8,9 +8,11 @@ const utils_1 = require("../../utils");
8
8
  const append_1 = require("./append");
9
9
  const batchAppend_1 = require("./batchAppend");
10
10
  const multiStreamAppend_1 = require("./multiStreamAppend");
11
+ const appendRecords_1 = require("./appendRecords");
11
12
  Client_1.Client.prototype.appendToStream = async function (streamName, event, { streamState = constants_1.ANY, batchAppendSize = 3 * 1024 * 1024, ...baseOptions } = {}) {
12
13
  const events = Array.isArray(event) ? event : [event];
13
14
  if (!baseOptions.credentials &&
15
+ !this.credentialsProvider &&
14
16
  (await this.supports(streams_grpc_pb_1.StreamsService.batchAppend))) {
15
17
  return batchAppend_1.batchAppend.call(this, streamName, events, {
16
18
  streamState: streamState,
@@ -30,4 +32,10 @@ Client_1.Client.prototype.multiStreamAppend = async function (requests) {
30
32
  }
31
33
  return multiStreamAppend_1.multiStreamAppend.call(this, requests);
32
34
  };
35
+ Client_1.Client.prototype.appendRecords = async function (records, checks) {
36
+ if (!(await this.supports(streams_grpc_pb_2.StreamsServiceService.appendRecords))) {
37
+ throw new utils_1.UnsupportedError("appendRecords", "26.1");
38
+ }
39
+ return appendRecords_1.appendRecords.call(this, records, checks);
40
+ };
33
41
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/streams/appendToStream/index.ts"],"names":[],"mappings":";;AAAA,+FAA2F;AAC3F,uGAA0G;AAC1G,yCAAsC;AACtC,+CAAsC;AAUtC,uCAA+C;AAE/C,qCAAkC;AAClC,+CAA4C;AAC5C,2DAAwD;AAmCxD,eAAM,CAAC,SAAS,CAAC,cAAc,GAAG,KAAK,WAIrC,UAAkB,EAClB,KAA8D,EAC9D,EACE,WAAW,GAAG,eAAG,EACjB,eAAe,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,EACjC,GAAG,WAAW,KACW,EAAE;IAE7B,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAEtD,IACE,CAAC,WAAW,CAAC,WAAW;QACxB,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,gCAAc,CAAC,WAAW,CAAC,CAAC,EACjD,CAAC;QACD,OAAO,yBAAW,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE;YAChD,WAAW,EAAE,WAAW;YACxB,eAAe;YACf,GAAG,WAAW;SACf,CAAC,CAAC;IACL,CAAC;IAED,OAAO,eAAM,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE;QAC3C,WAAW,EAAE,WAAW;QACxB,eAAe;QACf,GAAG,WAAW;KACf,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,eAAM,CAAC,SAAS,CAAC,iBAAiB,GAAG,KAAK,WAExC,QAA+B;IAE/B,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,uCAAqB,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC;QAChE,MAAM,IAAI,wBAAgB,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO,qCAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAChD,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/streams/appendToStream/index.ts"],"names":[],"mappings":";;AAAA,+FAA2F;AAC3F,uGAA0G;AAC1G,yCAAsC;AACtC,+CAAsC;AAatC,uCAA+C;AAE/C,qCAAkC;AAClC,+CAA4C;AAC5C,2DAAwD;AACxD,mDAAgD;AA+ChD,eAAM,CAAC,SAAS,CAAC,cAAc,GAAG,KAAK,WAIrC,UAAkB,EAClB,KAA8D,EAC9D,EACE,WAAW,GAAG,eAAG,EACjB,eAAe,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,EACjC,GAAG,WAAW,KACW,EAAE;IAE7B,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAEtD,IACE,CAAC,WAAW,CAAC,WAAW;QACxB,CAAC,IAAI,CAAC,mBAAmB;QACzB,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,gCAAc,CAAC,WAAW,CAAC,CAAC,EACjD,CAAC;QACD,OAAO,yBAAW,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE;YAChD,WAAW,EAAE,WAAW;YACxB,eAAe;YACf,GAAG,WAAW;SACf,CAAC,CAAC;IACL,CAAC;IAED,OAAO,eAAM,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE;QAC3C,WAAW,EAAE,WAAW;QACxB,eAAe;QACf,GAAG,WAAW;KACf,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,eAAM,CAAC,SAAS,CAAC,iBAAiB,GAAG,KAAK,WAExC,QAA+B;IAE/B,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,uCAAqB,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC;QAChE,MAAM,IAAI,wBAAgB,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO,qCAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAChD,CAAC,CAAC;AAEF,eAAM,CAAC,SAAS,CAAC,aAAa,GAAG,KAAK,WAEpC,OAA4B,EAC5B,MAA2B;IAE3B,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,uCAAqB,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC;QAChE,MAAM,IAAI,wBAAgB,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;IACtD,CAAC;IACD,OAAO,6BAAa,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AACnD,CAAC,CAAC"}
@@ -5,23 +5,23 @@ const Client_1 = require("../Client");
5
5
  const convertRustEvent_1 = require("../utils/convertRustEvent");
6
6
  const convertBridgeError_1 = require("../utils/convertBridgeError");
7
7
  Client_1.Client.prototype.readAll = function ({ maxCount = Number.MAX_SAFE_INTEGER, fromPosition = constants_1.START, resolveLinkTos = false, direction = constants_1.FORWARDS, ...baseOptions } = {}) {
8
- const options = {
9
- maxCount: BigInt(maxCount),
10
- fromPosition,
11
- resolvesLink: resolveLinkTos,
12
- direction,
13
- requiresLeader: baseOptions.requiresLeader ?? false,
14
- credentials: baseOptions.credentials,
15
- filter: baseOptions.filter,
16
- };
17
- let stream;
18
- try {
19
- stream = this.rustClient.readAll(options);
20
- }
21
- catch (error) {
22
- throw (0, convertBridgeError_1.convertBridgeError)(error);
23
- }
24
- const convert = async function* (stream) {
8
+ const convert = async function* () {
9
+ const credentials = await this.resolveBridgeCredentials(baseOptions.credentials);
10
+ let stream;
11
+ try {
12
+ stream = this.rustClient.readAll({
13
+ credentials,
14
+ direction,
15
+ fromPosition,
16
+ filter: baseOptions.filter,
17
+ maxCount: BigInt(maxCount),
18
+ requiresLeader: baseOptions.requiresLeader ?? false,
19
+ resolvesLink: resolveLinkTos,
20
+ });
21
+ }
22
+ catch (error) {
23
+ throw (0, convertBridgeError_1.convertBridgeError)(error);
24
+ }
25
25
  try {
26
26
  for await (const events of stream) {
27
27
  for (const event of events) {
@@ -33,6 +33,6 @@ Client_1.Client.prototype.readAll = function ({ maxCount = Number.MAX_SAFE_INTEG
33
33
  throw (0, convertBridgeError_1.convertBridgeError)(error);
34
34
  }
35
35
  };
36
- return convert(stream);
36
+ return convert.call(this);
37
37
  };
38
38
  //# sourceMappingURL=readAll.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"readAll.js","sourceRoot":"","sources":["../../src/streams/readAll.ts"],"names":[],"mappings":";;AAOA,4CAA+C;AAC/C,sCAAmC;AAGnC,gEAA6D;AAC7D,oEAAiE;AA4CjE,eAAM,CAAC,SAAS,CAAC,OAAO,GAAG,UAEzB,EACE,QAAQ,GAAG,MAAM,CAAC,gBAAgB,EAClC,YAAY,GAAG,iBAAK,EACpB,cAAc,GAAG,KAAK,EACtB,SAAS,GAAG,oBAAQ,EACpB,GAAG,WAAW,KACI,EAAE;IAEtB,MAAM,OAAO,GAA8B;QACzC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;QAC1B,YAAY;QACZ,YAAY,EAAE,cAAc;QAC5B,SAAS;QACT,cAAc,EAAE,WAAW,CAAC,cAAc,IAAI,KAAK;QACnD,WAAW,EAAE,WAAW,CAAC,WAAW;QACpC,MAAM,EAAE,WAAW,CAAC,MAAM;KAC3B,CAAC;IAEF,IAAI,MAAM,CAAC;IACX,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAA,uCAAkB,EAAC,KAAK,CAAC,CAAC;IAClC,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,SAAS,CAAC,EAC7B,MAA6C;QAE7C,IAAI,CAAC;YACH,IAAI,KAAK,EAAE,MAAM,MAAM,IAAI,MAAM,EAAE,CAAC;gBAClC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;oBAC3B,MAAM,IAAA,mCAAgB,EAAyB,KAAK,CAAC,CAAC;gBACxD,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAA,uCAAkB,EAAC,KAAK,CAAC,CAAC;QAClC,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC;AACzB,CAAC,CAAC"}
1
+ {"version":3,"file":"readAll.js","sourceRoot":"","sources":["../../src/streams/readAll.ts"],"names":[],"mappings":";;AAOA,4CAA+C;AAC/C,sCAAmC;AAEnC,gEAA6D;AAC7D,oEAAiE;AA4CjE,eAAM,CAAC,SAAS,CAAC,OAAO,GAAG,UAEzB,EACE,QAAQ,GAAG,MAAM,CAAC,gBAAgB,EAClC,YAAY,GAAG,iBAAK,EACpB,cAAc,GAAG,KAAK,EACtB,SAAS,GAAG,oBAAQ,EACpB,GAAG,WAAW,KACI,EAAE;IAEtB,MAAM,OAAO,GAAG,KAAK,SAAS,CAAC;QAG7B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,wBAAwB,CACrD,WAAW,CAAC,WAAW,CACxB,CAAC;QAEF,IAAI,MAAM,CAAC;QACX,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;gBAC/B,WAAW;gBACX,SAAS;gBACT,YAAY;gBACZ,MAAM,EAAE,WAAW,CAAC,MAAM;gBAC1B,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;gBAC1B,cAAc,EAAE,WAAW,CAAC,cAAc,IAAI,KAAK;gBACnD,YAAY,EAAE,cAAc;aAC7B,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAA,uCAAkB,EAAC,KAAK,CAAC,CAAC;QAClC,CAAC;QAED,IAAI,CAAC;YACH,IAAI,KAAK,EAAE,MAAM,MAAM,IAAI,MAAM,EAAE,CAAC;gBAClC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;oBAC3B,MAAM,IAAA,mCAAgB,EAAyB,KAAK,CAAC,CAAC;gBACxD,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAA,uCAAkB,EAAC,KAAK,CAAC,CAAC;QAClC,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC,CAAC"}
@@ -6,42 +6,34 @@ const utils_1 = require("../utils");
6
6
  const convertRustEvent_1 = require("../utils/convertRustEvent");
7
7
  const convertBridgeError_1 = require("../utils/convertBridgeError");
8
8
  Client_1.Client.prototype.readStream = function (streamName, { maxCount = Number.MAX_SAFE_INTEGER, fromRevision = constants_1.START, resolveLinkTos = false, direction = constants_1.FORWARDS, ...baseOptions } = {}) {
9
- const options = {
10
- maxCount: BigInt(maxCount),
11
- fromRevision,
12
- resolvesLink: resolveLinkTos,
13
- direction,
14
- requiresLeader: baseOptions.requiresLeader ?? false,
15
- credentials: baseOptions.credentials,
16
- };
17
- switch (fromRevision) {
18
- case constants_1.START: {
19
- break;
20
- }
21
- case constants_1.END: {
22
- break;
9
+ if (fromRevision !== constants_1.START &&
10
+ fromRevision !== constants_1.END &&
11
+ typeof fromRevision === "bigint") {
12
+ const lowerBound = BigInt("0");
13
+ const upperBound = BigInt("0xffffffffffffffff");
14
+ if (fromRevision < lowerBound) {
15
+ throw new utils_1.InvalidArgumentError(`fromRevision value must be a non-negative integer. Value Received: ${fromRevision}`);
23
16
  }
24
- default: {
25
- const lowerBound = BigInt("0");
26
- const upperBound = BigInt("0xffffffffffffffff");
27
- if (fromRevision < lowerBound) {
28
- throw new utils_1.InvalidArgumentError(`fromRevision value must be a non-negative integer. Value Received: ${fromRevision}`);
29
- }
30
- if (fromRevision > upperBound) {
31
- throw new utils_1.InvalidArgumentError(`fromRevision value must be a non-negative integer, range from 0 to 18446744073709551615. Value Received: ${fromRevision}`);
32
- }
33
- options.fromRevision = fromRevision;
34
- break;
17
+ if (fromRevision > upperBound) {
18
+ throw new utils_1.InvalidArgumentError(`fromRevision value must be a non-negative integer, range from 0 to 18446744073709551615. Value Received: ${fromRevision}`);
35
19
  }
36
20
  }
37
- let stream;
38
- try {
39
- stream = this.rustClient.readStream(streamName, options);
40
- }
41
- catch (error) {
42
- throw (0, convertBridgeError_1.convertBridgeError)(error, streamName);
43
- }
44
- const convert = async function* (stream) {
21
+ const convert = async function* () {
22
+ const credentials = await this.resolveBridgeCredentials(baseOptions.credentials);
23
+ let stream;
24
+ try {
25
+ stream = this.rustClient.readStream(streamName, {
26
+ credentials,
27
+ direction,
28
+ fromRevision,
29
+ maxCount: BigInt(maxCount),
30
+ requiresLeader: baseOptions.requiresLeader ?? false,
31
+ resolvesLink: resolveLinkTos,
32
+ });
33
+ }
34
+ catch (error) {
35
+ throw (0, convertBridgeError_1.convertBridgeError)(error, streamName);
36
+ }
45
37
  try {
46
38
  for await (const events of stream) {
47
39
  for (const event of events) {
@@ -53,6 +45,6 @@ Client_1.Client.prototype.readStream = function (streamName, { maxCount = Number
53
45
  throw (0, convertBridgeError_1.convertBridgeError)(error, streamName);
54
46
  }
55
47
  };
56
- return convert(stream);
48
+ return convert.call(this);
57
49
  };
58
50
  //# sourceMappingURL=readStream.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"readStream.js","sourceRoot":"","sources":["../../src/streams/readStream.ts"],"names":[],"mappings":";;AAEA,sCAAmC;AACnC,4CAAoD;AAQpD,oCAAgD;AAChD,gEAA6D;AAC7D,oEAAiE;AAyCjE,eAAM,CAAC,SAAS,CAAC,UAAU,GAAG,UAI5B,UAAkB,EAClB,EACE,QAAQ,GAAG,MAAM,CAAC,gBAAgB,EAClC,YAAY,GAAG,iBAAK,EACpB,cAAc,GAAG,KAAK,EACtB,SAAS,GAAG,oBAAQ,EACpB,GAAG,WAAW,KACO,EAAE;IAEzB,MAAM,OAAO,GAAiC;QAC5C,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;QAC1B,YAAY;QACZ,YAAY,EAAE,cAAc;QAC5B,SAAS;QACT,cAAc,EAAE,WAAW,CAAC,cAAc,IAAI,KAAK;QACnD,WAAW,EAAE,WAAW,CAAC,WAAW;KACrC,CAAC;IACF,QAAQ,YAAY,EAAE,CAAC;QACrB,KAAK,iBAAK,CAAC,CAAC,CAAC;YACX,MAAM;QACR,CAAC;QAED,KAAK,eAAG,CAAC,CAAC,CAAC;YACT,MAAM;QACR,CAAC;QAED,OAAO,CAAC,CAAC,CAAC;YACR,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;YAC/B,MAAM,UAAU,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC;YAEhD,IAAI,YAAY,GAAG,UAAU,EAAE,CAAC;gBAC9B,MAAM,IAAI,4BAAoB,CAC5B,sEAAsE,YAAY,EAAE,CACrF,CAAC;YACJ,CAAC;YAED,IAAI,YAAY,GAAG,UAAU,EAAE,CAAC;gBAC9B,MAAM,IAAI,4BAAoB,CAC5B,4GAA4G,YAAY,EAAE,CAC3H,CAAC;YACJ,CAAC;YAED,OAAO,CAAC,YAAY,GAAG,YAAY,CAAC;YAEpC,MAAM;QACR,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC;IACX,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAC3D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAA,uCAAkB,EAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,SAAS,CAAC,EAC7B,MAA6C;QAE7C,IAAI,CAAC;YACH,IAAI,KAAK,EAAE,MAAM,MAAM,IAAI,MAAM,EAAE,CAAC;gBAClC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;oBAC3B,MAAM,IAAA,mCAAgB,EAAC,KAAK,CAAC,CAAC;gBAChC,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAA,uCAAkB,EAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC;AACzB,CAAC,CAAC"}
1
+ {"version":3,"file":"readStream.js","sourceRoot":"","sources":["../../src/streams/readStream.ts"],"names":[],"mappings":";;AAAA,sCAAmC;AACnC,4CAAoD;AAQpD,oCAAgD;AAChD,gEAA6D;AAC7D,oEAAiE;AAyCjE,eAAM,CAAC,SAAS,CAAC,UAAU,GAAG,UAI5B,UAAkB,EAClB,EACE,QAAQ,GAAG,MAAM,CAAC,gBAAgB,EAClC,YAAY,GAAG,iBAAK,EACpB,cAAc,GAAG,KAAK,EACtB,SAAS,GAAG,oBAAQ,EACpB,GAAG,WAAW,KACO,EAAE;IAEzB,IACE,YAAY,KAAK,iBAAK;QACtB,YAAY,KAAK,eAAG;QACpB,OAAO,YAAY,KAAK,QAAQ,EAChC,CAAC;QACD,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC/B,MAAM,UAAU,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC;QAEhD,IAAI,YAAY,GAAG,UAAU,EAAE,CAAC;YAC9B,MAAM,IAAI,4BAAoB,CAC5B,sEAAsE,YAAY,EAAE,CACrF,CAAC;QACJ,CAAC;QAED,IAAI,YAAY,GAAG,UAAU,EAAE,CAAC;YAC9B,MAAM,IAAI,4BAAoB,CAC5B,4GAA4G,YAAY,EAAE,CAC3H,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,SAAS,CAAC;QAG7B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,wBAAwB,CACrD,WAAW,CAAC,WAAW,CACxB,CAAC;QAEF,IAAI,MAAM,CAAC;QACX,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,UAAU,EAAE;gBAC9C,WAAW;gBACX,SAAS;gBACT,YAAY;gBACZ,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;gBAC1B,cAAc,EAAE,WAAW,CAAC,cAAc,IAAI,KAAK;gBACnD,YAAY,EAAE,cAAc;aAC7B,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAA,uCAAkB,EAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QAC9C,CAAC;QAED,IAAI,CAAC;YACH,IAAI,KAAK,EAAE,MAAM,MAAM,IAAI,MAAM,EAAE,CAAC;gBAClC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;oBAC3B,MAAM,IAAA,mCAAgB,EAAC,KAAK,CAAC,CAAC;gBAChC,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAA,uCAAkB,EAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC,CAAC"}