@kurrent/kurrentdb-client 1.2.0-alpha.0 → 1.2.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 (136) hide show
  1. package/dist/Client/http.d.ts +7 -1
  2. package/dist/Client/http.js +50 -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 +77 -11
  6. package/dist/Client/index.js.map +1 -1
  7. package/dist/Client/parseConnectionString.d.ts +2 -2
  8. package/dist/constants.d.ts +3 -0
  9. package/dist/constants.js +6 -1
  10. package/dist/constants.js.map +1 -1
  11. package/dist/events/binaryEvent.js +2 -2
  12. package/dist/events/binaryEvent.js.map +1 -1
  13. package/dist/events/jsonEvent.js +2 -2
  14. package/dist/events/jsonEvent.js.map +1 -1
  15. package/dist/index.d.ts +1 -1
  16. package/dist/index.js +4 -2
  17. package/dist/index.js.map +1 -1
  18. package/dist/projections/createProjection.d.ts +10 -1
  19. package/dist/projections/createProjection.js +13 -2
  20. package/dist/projections/createProjection.js.map +1 -1
  21. package/dist/streams/appendToStream/appendRecords.d.ts +3 -0
  22. package/dist/streams/appendToStream/appendRecords.js +132 -0
  23. package/dist/streams/appendToStream/appendRecords.js.map +1 -0
  24. package/dist/streams/appendToStream/batchAppend.js +2 -2
  25. package/dist/streams/appendToStream/batchAppend.js.map +1 -1
  26. package/dist/streams/appendToStream/index.d.ts +9 -1
  27. package/dist/streams/appendToStream/index.js +8 -0
  28. package/dist/streams/appendToStream/index.js.map +1 -1
  29. package/dist/streams/readAll.js +18 -18
  30. package/dist/streams/readAll.js.map +1 -1
  31. package/dist/streams/readStream.js +26 -34
  32. package/dist/streams/readStream.js.map +1 -1
  33. package/dist/types/index.d.ts +88 -2
  34. package/dist/types/index.js.map +1 -1
  35. package/dist/utils/CommandError.d.ts +9 -3
  36. package/dist/utils/CommandError.js +50 -1
  37. package/dist/utils/CommandError.js.map +1 -1
  38. package/dist/utils/convertBridgeError.d.ts +2 -1
  39. package/dist/utils/convertBridgeError.js +14 -24
  40. package/dist/utils/convertBridgeError.js.map +1 -1
  41. package/dist/utils/credentials.d.ts +19 -0
  42. package/dist/utils/credentials.js +31 -0
  43. package/dist/utils/credentials.js.map +1 -0
  44. package/dist/utils/grpcUUID.d.ts +1 -0
  45. package/dist/utils/grpcUUID.js +12 -12
  46. package/dist/utils/grpcUUID.js.map +1 -1
  47. package/generated/kurrentdb/protocols/v1/projectionmanagement_pb.d.ts +3 -0
  48. package/generated/kurrentdb/protocols/v1/projectionmanagement_pb.js +31 -1
  49. package/generated/kurrentdb/protocols/v2/core_pb.d.ts +188 -188
  50. package/generated/kurrentdb/protocols/v2/core_pb.js +1301 -1301
  51. package/generated/kurrentdb/protocols/v2/features/service_grpc_pb.d.ts +43 -43
  52. package/generated/kurrentdb/protocols/v2/features/service_grpc_pb.js +50 -50
  53. package/generated/kurrentdb/protocols/v2/features/service_pb.d.ts +227 -227
  54. package/generated/kurrentdb/protocols/v2/features/service_pb.js +1753 -1753
  55. package/generated/kurrentdb/protocols/v2/streams/errors_pb.d.ts +85 -0
  56. package/generated/kurrentdb/protocols/v2/streams/errors_pb.js +625 -1
  57. package/generated/kurrentdb/protocols/v2/streams/shared_pb.d.ts +218 -218
  58. package/generated/kurrentdb/protocols/v2/streams/shared_pb.js +1561 -1561
  59. package/generated/kurrentdb/protocols/v2/streams/streams_grpc_pb.d.ts +17 -0
  60. package/generated/kurrentdb/protocols/v2/streams/streams_grpc_pb.js +53 -0
  61. package/generated/kurrentdb/protocols/v2/streams/streams_pb.d.ts +134 -0
  62. package/generated/kurrentdb/protocols/v2/streams/streams_pb.js +1041 -1
  63. package/package.json +64 -66
  64. package/dist/schemaRegistry/checkSchemaCompatibility.d.ts +0 -12
  65. package/dist/schemaRegistry/checkSchemaCompatibility.js +0 -60
  66. package/dist/schemaRegistry/checkSchemaCompatibility.js.map +0 -1
  67. package/dist/schemaRegistry/createSchema.d.ts +0 -13
  68. package/dist/schemaRegistry/createSchema.js +0 -36
  69. package/dist/schemaRegistry/createSchema.js.map +0 -1
  70. package/dist/schemaRegistry/deleteSchema.d.ts +0 -11
  71. package/dist/schemaRegistry/deleteSchema.js +0 -23
  72. package/dist/schemaRegistry/deleteSchema.js.map +0 -1
  73. package/dist/schemaRegistry/deleteSchemaVersions.d.ts +0 -13
  74. package/dist/schemaRegistry/deleteSchemaVersions.js +0 -29
  75. package/dist/schemaRegistry/deleteSchemaVersions.js.map +0 -1
  76. package/dist/schemaRegistry/getSchema.d.ts +0 -12
  77. package/dist/schemaRegistry/getSchema.js +0 -28
  78. package/dist/schemaRegistry/getSchema.js.map +0 -1
  79. package/dist/schemaRegistry/getSchemaVersion.d.ts +0 -12
  80. package/dist/schemaRegistry/getSchemaVersion.js +0 -33
  81. package/dist/schemaRegistry/getSchemaVersion.js.map +0 -1
  82. package/dist/schemaRegistry/getSchemaVersionById.d.ts +0 -12
  83. package/dist/schemaRegistry/getSchemaVersionById.js +0 -28
  84. package/dist/schemaRegistry/getSchemaVersionById.js.map +0 -1
  85. package/dist/schemaRegistry/index.d.ts +0 -14
  86. package/dist/schemaRegistry/index.js +0 -35
  87. package/dist/schemaRegistry/index.js.map +0 -1
  88. package/dist/schemaRegistry/listRegisteredSchemas.d.ts +0 -11
  89. package/dist/schemaRegistry/listRegisteredSchemas.js +0 -41
  90. package/dist/schemaRegistry/listRegisteredSchemas.js.map +0 -1
  91. package/dist/schemaRegistry/listSchemaVersions.d.ts +0 -12
  92. package/dist/schemaRegistry/listSchemaVersions.js +0 -28
  93. package/dist/schemaRegistry/listSchemaVersions.js.map +0 -1
  94. package/dist/schemaRegistry/listSchemas.d.ts +0 -11
  95. package/dist/schemaRegistry/listSchemas.js +0 -35
  96. package/dist/schemaRegistry/listSchemas.js.map +0 -1
  97. package/dist/schemaRegistry/lookupSchemaName.d.ts +0 -12
  98. package/dist/schemaRegistry/lookupSchemaName.js +0 -23
  99. package/dist/schemaRegistry/lookupSchemaName.js.map +0 -1
  100. package/dist/schemaRegistry/registerSchemaVersion.d.ts +0 -13
  101. package/dist/schemaRegistry/registerSchemaVersion.js +0 -31
  102. package/dist/schemaRegistry/registerSchemaVersion.js.map +0 -1
  103. package/dist/schemaRegistry/types.d.ts +0 -347
  104. package/dist/schemaRegistry/types.js +0 -3
  105. package/dist/schemaRegistry/types.js.map +0 -1
  106. package/dist/schemaRegistry/updateSchema.d.ts +0 -11
  107. package/dist/schemaRegistry/updateSchema.js +0 -51
  108. package/dist/schemaRegistry/updateSchema.js.map +0 -1
  109. package/dist/schemaRegistry/utils/index.d.ts +0 -1
  110. package/dist/schemaRegistry/utils/index.js +0 -18
  111. package/dist/schemaRegistry/utils/index.js.map +0 -1
  112. package/dist/schemaRegistry/utils/mappers.d.ts +0 -24
  113. package/dist/schemaRegistry/utils/mappers.js +0 -198
  114. package/dist/schemaRegistry/utils/mappers.js.map +0 -1
  115. package/generated/kurrentdb/protocols/v2/registry/errors_grpc_pb.js +0 -1
  116. package/generated/kurrentdb/protocols/v2/registry/errors_pb.d.ts +0 -75
  117. package/generated/kurrentdb/protocols/v2/registry/errors_pb.js +0 -493
  118. package/generated/kurrentdb/protocols/v2/registry/events_grpc_pb.js +0 -1
  119. package/generated/kurrentdb/protocols/v2/registry/events_pb.d.ts +0 -255
  120. package/generated/kurrentdb/protocols/v2/registry/events_pb.js +0 -2057
  121. package/generated/kurrentdb/protocols/v2/registry/groups_grpc_pb.js +0 -1
  122. package/generated/kurrentdb/protocols/v2/registry/groups_pb.d.ts +0 -474
  123. package/generated/kurrentdb/protocols/v2/registry/groups_pb.js +0 -3593
  124. package/generated/kurrentdb/protocols/v2/registry/schemas_grpc_pb.js +0 -1
  125. package/generated/kurrentdb/protocols/v2/registry/schemas_pb.d.ts +0 -825
  126. package/generated/kurrentdb/protocols/v2/registry/schemas_pb.js +0 -6500
  127. package/generated/kurrentdb/protocols/v2/registry/service_grpc_pb.d.ts +0 -350
  128. package/generated/kurrentdb/protocols/v2/registry/service_grpc_pb.js +0 -654
  129. package/generated/kurrentdb/protocols/v2/registry/service_pb.d.ts +0 -10
  130. package/generated/kurrentdb/protocols/v2/registry/service_pb.js +0 -29
  131. package/generated/kurrentdb/protocols/v2/registry/shared_grpc_pb.js +0 -1
  132. package/generated/kurrentdb/protocols/v2/registry/shared_pb.d.ts +0 -26
  133. package/generated/kurrentdb/protocols/v2/registry/shared_pb.js +0 -51
  134. package/generated/kurrentdb/protocols/v2/registry/validation_grpc_pb.js +0 -1
  135. package/generated/kurrentdb/protocols/v2/registry/validation_pb.d.ts +0 -247
  136. package/generated/kurrentdb/protocols/v2/registry/validation_pb.js +0 -1789
@@ -8,9 +8,15 @@ export interface HTTPRequestOptions extends BaseOptions {
8
8
  transformError?: TransformError;
9
9
  }
10
10
  type HTTPMethod = "GET" | "HEAD" | "POST" | "PUT" | "DELETE" | "CONNECT" | "OPTIONS" | "TRACE" | "PATCH";
11
+ /**
12
+ * Resolve the verbatim `Authorization` header for an HTTP fallback request,
13
+ * given an optional per-call credential. Returning `undefined` skips the
14
+ * header entirely (e.g. insecure mode).
15
+ */
16
+ export type ResolveAuthorizationHeader = (perCallCredentials?: Credentials) => Promise<string | undefined>;
11
17
  export declare class HTTP {
12
18
  #private;
13
- constructor(client: Client, channelCredentials: ChannelCredentialOptions, defaultUserCredentials?: Credentials);
19
+ constructor(client: Client, channelCredentials: ChannelCredentialOptions, resolveAuthorizationHeader: ResolveAuthorizationHeader);
14
20
  request: <T = unknown>(method: HTTPMethod, path: string, { searchParams, ...options }: HTTPRequestOptions, body?: string) => Promise<T>;
15
21
  private makeRequest;
16
22
  private createURL;
@@ -8,66 +8,68 @@ const utils_1 = require("../utils");
8
8
  class HTTP {
9
9
  #client;
10
10
  #channelCredentials;
11
- #defaultUserCredentials;
11
+ #resolveAuthorizationHeader;
12
12
  #insecure;
13
- constructor(client, channelCredentials, defaultUserCredentials) {
13
+ constructor(client, channelCredentials, resolveAuthorizationHeader) {
14
14
  this.#client = client;
15
15
  this.#channelCredentials = channelCredentials;
16
- this.#defaultUserCredentials = defaultUserCredentials;
16
+ this.#resolveAuthorizationHeader = resolveAuthorizationHeader;
17
17
  this.#insecure = !!channelCredentials.insecure;
18
18
  }
19
19
  request = async (method, path, { searchParams, ...options }, body) => {
20
20
  const url = await this.createURL(path, searchParams);
21
21
  return this.makeRequest(method, url, options, body);
22
22
  };
23
- makeRequest = async (method, url, options, body) => new Promise((resolve, reject) => {
24
- const headers = {
25
- "content-type": "application/json",
26
- ...(options.headers ?? {}),
27
- };
28
- const credentials = options.credentials ?? this.#defaultUserCredentials;
29
- if (!this.#insecure && credentials) {
30
- headers["Authorization"] = `Basic ${Buffer.from(`${credentials.username}:${credentials.password}`).toString("base64")}`;
31
- }
32
- const ca = this.#channelCredentials.rootCertificate
33
- ? [this.#channelCredentials.rootCertificate]
34
- : undefined;
35
- const callback = (res) => {
36
- if (res.statusCode === 307) {
37
- return resolve(this.makeRequest(method, new url_1.URL(res.headers.location, url), options, body));
38
- }
39
- if (res.statusCode < 200 || res.statusCode >= 300) {
40
- const error = options.transformError?.(res.statusCode, res.statusMessage, res) ??
41
- defaultTransformError(res.statusCode, res.statusMessage, res);
42
- return reject(error);
23
+ makeRequest = async (method, url, options, body) => {
24
+ const authorization = await this.#resolveAuthorizationHeader(options.credentials);
25
+ return new Promise((resolve, reject) => {
26
+ const headers = {
27
+ "content-type": "application/json",
28
+ ...(options.headers ?? {}),
29
+ };
30
+ if (authorization) {
31
+ headers["Authorization"] = authorization;
43
32
  }
44
- let response = "";
45
- res.on("data", (d) => {
46
- response += d;
47
- });
48
- res.on("end", () => {
49
- return resolve(JSON.parse(response));
33
+ const ca = this.#channelCredentials.rootCertificate
34
+ ? [this.#channelCredentials.rootCertificate]
35
+ : undefined;
36
+ const callback = (res) => {
37
+ if (res.statusCode === 307) {
38
+ return resolve(this.makeRequest(method, new url_1.URL(res.headers.location, url), options, body));
39
+ }
40
+ if (res.statusCode < 200 || res.statusCode >= 300) {
41
+ const error = options.transformError?.(res.statusCode, res.statusMessage, res) ??
42
+ defaultTransformError(res.statusCode, res.statusMessage, res);
43
+ return reject(error);
44
+ }
45
+ let response = "";
46
+ res.on("data", (d) => {
47
+ response += d;
48
+ });
49
+ res.on("end", () => {
50
+ return resolve(JSON.parse(response));
51
+ });
52
+ };
53
+ utils_1.debug.connection(`Making %s call to %s with headers %h`, method, url.toString(), authorization ? { ...headers, Authorization: "[REDACTED]" } : headers);
54
+ const req = this.#insecure
55
+ ? (0, http_1.request)(url, {
56
+ method,
57
+ headers,
58
+ }, callback)
59
+ : (0, https_1.request)(url, {
60
+ method,
61
+ headers,
62
+ ca,
63
+ }, callback);
64
+ req.on("error", (error) => {
65
+ reject(error);
50
66
  });
51
- };
52
- utils_1.debug.connection(`Making %s call to %s with headers %h`, method, url.toString(), headers);
53
- const req = this.#insecure
54
- ? (0, http_1.request)(url, {
55
- method,
56
- headers,
57
- }, callback)
58
- : (0, https_1.request)(url, {
59
- method,
60
- headers,
61
- ca,
62
- }, callback);
63
- req.on("error", (error) => {
64
- reject(error);
67
+ if (body) {
68
+ req.write(body);
69
+ }
70
+ req.end();
65
71
  });
66
- if (body) {
67
- req.write(body);
68
- }
69
- req.end();
70
- });
72
+ };
71
73
  createURL = async (pathname, searchParams = {}) => {
72
74
  const channel = await this.getChannel.call(this.#client);
73
75
  const protocol = this.#insecure ? "http://" : "https://";
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/Client/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/Client/http.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { Readable, Writable, Duplex } from "stream";
2
2
  import * as bridge from "@kurrent/bridge";
3
3
  import { CallOptions, Channel, ChannelCredentials, Client as GRPCClient, Metadata, MethodDefinition } from "@grpc/grpc-js";
4
- import type { NodePreference, GRPCClientConstructor, EndPoint, Credentials, BaseOptions } from "../types";
4
+ import type { NodePreference, GRPCClientConstructor, EndPoint, BasicCredentials, Credentials, BaseOptions, CredentialsProvider } from "../types";
5
5
  import { ServerFeatures } from "./ServerFeatures";
6
6
  interface ClientOptions {
7
7
  /**
@@ -88,14 +88,25 @@ export declare class Client {
88
88
  * @param connectionString - The connection string for your database.
89
89
  */
90
90
  static connectionString(connectionString: TemplateStringsArray | string, ...parts: Array<string | number | boolean>): Client;
91
- protected constructor(rustClient: bridge.RustClient, connectionSettings: DNSClusterOptions, channelCredentials?: ChannelCredentialOptions, defaultUserCredentials?: Credentials);
92
- protected constructor(rustClient: bridge.RustClient, connectionSettings: GossipClusterOptions, channelCredentials?: ChannelCredentialOptions, defaultUserCredentials?: Credentials);
93
- protected constructor(rustClient: bridge.RustClient, connectionSettings: SingleNodeOptions, channelCredentials?: ChannelCredentialOptions, defaultUserCredentials?: Credentials);
91
+ protected constructor(rustClient: bridge.RustClient, connectionSettings: DNSClusterOptions, channelCredentials?: ChannelCredentialOptions, defaultUserCredentials?: BasicCredentials);
92
+ protected constructor(rustClient: bridge.RustClient, connectionSettings: GossipClusterOptions, channelCredentials?: ChannelCredentialOptions, defaultUserCredentials?: BasicCredentials);
93
+ protected constructor(rustClient: bridge.RustClient, connectionSettings: SingleNodeOptions, channelCredentials?: ChannelCredentialOptions, defaultUserCredentials?: BasicCredentials);
94
94
  /**
95
95
  * The name of the connection to use in logs.
96
96
  * Can be set via {@link ClientOptions.connectionName} or `connectionName` in the connection string.
97
97
  */
98
98
  get connectionName(): string;
99
+ /**
100
+ * The {@link CredentialsProvider} currently in effect, if any. Read-only.
101
+ * Use {@link setCredentialsProvider} to change it.
102
+ */
103
+ get credentialsProvider(): CredentialsProvider | undefined;
104
+ /**
105
+ * Set or clear the {@link CredentialsProvider} invoked before every request.
106
+ * Per-call `credentials` override the provider. Otherwise the static
107
+ * `defaultCredentials` are used.
108
+ */
109
+ setCredentialsProvider(provider: CredentialsProvider | undefined): void;
99
110
  private getGRPCClient;
100
111
  private disposableStreams;
101
112
  protected GRPCStreamCreator: <Client extends GRPCClient, T extends Writable | Readable | Duplex>(Client: GRPCClientConstructor<Client>, debugName: string, creator: (client: Client) => T | Promise<T>, cache?: WeakMap<Client, T | Promise<T>>) => () => Promise<T>;
@@ -108,8 +119,21 @@ export declare class Client {
108
119
  protected handleError: (client: GRPCClient, error: Error) => Promise<void>;
109
120
  private createChannel;
110
121
  protected resolveUri: () => Promise<string>;
111
- private createCredentialsMetadataGenerator;
112
- protected callArguments: ({ credentials, requiresLeader, deadline, }: BaseOptions, callOptions?: CallOptions) => [Metadata, CallOptions];
122
+ private createMetadataGenerator;
123
+ /**
124
+ * Resolve the `Authorization` header value for a given request. Captures
125
+ * the provider/default state at call time so in-flight requests are
126
+ * unaffected by concurrent {@link setCredentialsProvider} swaps.
127
+ */
128
+ private resolveAuthorizationHeader;
129
+ /**
130
+ * Resolve the {@link Credentials} value to forward to the Rust bridge for
131
+ * a given request. Per-call credentials win. Otherwise we invoke the
132
+ * configured {@link CredentialsProvider}. Falls back to `undefined` so the
133
+ * bridge uses the credentials baked into its connection string.
134
+ */
135
+ protected resolveBridgeCredentials: (perCallCredentials?: Credentials) => Promise<Credentials | undefined>;
136
+ protected callArguments: ({ credentials, requiresLeader, deadline }: BaseOptions, callOptions?: CallOptions) => [Metadata, CallOptions];
113
137
  protected createDeadline(deadline?: number): Date;
114
138
  protected get capabilities(): Promise<ServerFeatures>;
115
139
  protected supports: (method: MethodDefinition<any, any>, feature?: string) => Promise<boolean>;
@@ -38,9 +38,10 @@ const fs_1 = require("fs");
38
38
  const path_1 = require("path");
39
39
  const stream_1 = require("stream");
40
40
  const bridge = __importStar(require("@kurrent/bridge"));
41
- const uuid_1 = require("uuid");
41
+ const crypto_1 = require("crypto");
42
42
  const grpc_js_1 = require("@grpc/grpc-js");
43
43
  const call_1 = require("@grpc/grpc-js/build/src/call");
44
+ const credentials_1 = require("../utils/credentials");
44
45
  const utils_1 = require("../utils");
45
46
  const discovery_1 = require("./discovery");
46
47
  const parseConnectionString_1 = require("./parseConnectionString");
@@ -56,6 +57,7 @@ class Client {
56
57
  #keepAliveTimeout;
57
58
  #defaultDeadline;
58
59
  #defaultCredentials;
60
+ #credentialsProvider;
59
61
  #nextChannelSettings;
60
62
  #channel;
61
63
  #serverFeatures;
@@ -151,7 +153,7 @@ class Client {
151
153
  connectionName: options.connectionName,
152
154
  }, channelCredentials, options.defaultCredentials);
153
155
  }
154
- constructor(rustClient, { throwOnAppendFailure = true, keepAliveInterval = 10_000, keepAliveTimeout = 10_000, defaultDeadline = 10_000, connectionName = (0, uuid_1.v4)(), ...connectionSettings }, channelCredentials = { insecure: false }, defaultUserCredentials) {
156
+ constructor(rustClient, { throwOnAppendFailure = true, keepAliveInterval = 10_000, keepAliveTimeout = 10_000, defaultDeadline = 10_000, connectionName = (0, crypto_1.randomUUID)(), ...connectionSettings }, channelCredentials = { insecure: false }, defaultUserCredentials) {
155
157
  if (keepAliveInterval < -1) {
156
158
  throw new Error(`Invalid keepAliveInterval "${keepAliveInterval}". Please provide a positive integer, or -1 to disable.`);
157
159
  }
@@ -173,7 +175,7 @@ class Client {
173
175
  this.#insecure = !!channelCredentials.insecure;
174
176
  this.#defaultCredentials = defaultUserCredentials;
175
177
  this.#connectionName = connectionName;
176
- this.#http = new http_1.HTTP(this, channelCredentials, defaultUserCredentials);
178
+ this.#http = new http_1.HTTP(this, channelCredentials, (perCall) => this.resolveAuthorizationHeader(perCall));
177
179
  if (this.#insecure) {
178
180
  utils_1.debug.connection("Using insecure channel");
179
181
  this.#channelCredentials = grpc_js_1.credentials.createInsecure();
@@ -190,6 +192,21 @@ class Client {
190
192
  get connectionName() {
191
193
  return this.#connectionName;
192
194
  }
195
+ /**
196
+ * The {@link CredentialsProvider} currently in effect, if any. Read-only.
197
+ * Use {@link setCredentialsProvider} to change it.
198
+ */
199
+ get credentialsProvider() {
200
+ return this.#credentialsProvider;
201
+ }
202
+ /**
203
+ * Set or clear the {@link CredentialsProvider} invoked before every request.
204
+ * Per-call `credentials` override the provider. Otherwise the static
205
+ * `defaultCredentials` are used.
206
+ */
207
+ setCredentialsProvider(provider) {
208
+ this.#credentialsProvider = provider;
209
+ }
193
210
  // Internal access to grpc client.
194
211
  getGRPCClient = async (Client, debugName) => {
195
212
  if (this.#grpcClients.has(Client)) {
@@ -341,26 +358,75 @@ class Client {
341
358
  throw error;
342
359
  }
343
360
  };
344
- createCredentialsMetadataGenerator = ({ username, password, }) => (_, cb) => {
345
- const metadata = new grpc_js_1.Metadata();
361
+ createMetadataGenerator = (resolveCredentials) => (_, cb) => {
346
362
  if (this.#insecure) {
347
363
  utils_1.debug.connection("Credentials are unsupported in insecure mode, and will be ignored.");
364
+ return cb(null, new grpc_js_1.Metadata());
348
365
  }
349
- else {
350
- const auth = Buffer.from(`${username}:${password}`).toString("base64");
351
- metadata.add("authorization", `Basic ${auth}`);
366
+ Promise.resolve()
367
+ .then(resolveCredentials)
368
+ .then((credentials) => {
369
+ const metadata = new grpc_js_1.Metadata();
370
+ metadata.add("authorization", (0, credentials_1.toAuthorizationHeader)(credentials));
371
+ cb(null, metadata);
372
+ })
373
+ .catch((err) => cb(err));
374
+ };
375
+ /**
376
+ * Resolve the `Authorization` header value for a given request. Captures
377
+ * the provider/default state at call time so in-flight requests are
378
+ * unaffected by concurrent {@link setCredentialsProvider} swaps.
379
+ */
380
+ resolveAuthorizationHeader = async (perCallCredentials) => {
381
+ if (this.#insecure)
382
+ return undefined;
383
+ if (perCallCredentials) {
384
+ return (0, credentials_1.toAuthorizationHeader)(perCallCredentials);
385
+ }
386
+ if (this.#credentialsProvider) {
387
+ const credentials = await this.#credentialsProvider();
388
+ return (0, credentials_1.toAuthorizationHeader)(credentials);
389
+ }
390
+ if (this.#defaultCredentials) {
391
+ return (0, credentials_1.toAuthorizationHeader)(this.#defaultCredentials);
352
392
  }
353
- return cb(null, metadata);
393
+ return undefined;
354
394
  };
355
- callArguments = ({ credentials = this.#defaultCredentials, requiresLeader, deadline, }, callOptions) => {
395
+ /**
396
+ * Resolve the {@link Credentials} value to forward to the Rust bridge for
397
+ * a given request. Per-call credentials win. Otherwise we invoke the
398
+ * configured {@link CredentialsProvider}. Falls back to `undefined` so the
399
+ * bridge uses the credentials baked into its connection string.
400
+ */
401
+ resolveBridgeCredentials = async (perCallCredentials) => {
402
+ if (perCallCredentials)
403
+ return perCallCredentials;
404
+ if (this.#credentialsProvider)
405
+ return await this.#credentialsProvider();
406
+ return undefined;
407
+ };
408
+ callArguments = ({ credentials, requiresLeader, deadline }, callOptions) => {
356
409
  const metadata = new grpc_js_1.Metadata();
357
410
  const options = callOptions ? { ...callOptions } : {};
358
411
  metadata.add("connection-name", this.#connectionName);
359
412
  if (requiresLeader) {
360
413
  metadata.add("requires-leader", "true");
361
414
  }
415
+ // Per-call credentials take precedence. Otherwise prefer a refresh-aware
416
+ // provider over the static default so token refresh actually runs per RPC.
417
+ let resolveCredentials;
362
418
  if (credentials) {
363
- options.credentials = grpc_js_1.CallCredentials.createFromMetadataGenerator(this.createCredentialsMetadataGenerator(credentials));
419
+ resolveCredentials = () => credentials;
420
+ }
421
+ else if (this.#credentialsProvider) {
422
+ resolveCredentials = this.#credentialsProvider;
423
+ }
424
+ else if (this.#defaultCredentials) {
425
+ const defaults = this.#defaultCredentials;
426
+ resolveCredentials = () => defaults;
427
+ }
428
+ if (resolveCredentials) {
429
+ options.credentials = grpc_js_1.CallCredentials.createFromMetadataGenerator(this.createMetadataGenerator(resolveCredentials));
364
430
  }
365
431
  options.deadline = options.deadline ?? this.createDeadline(deadline);
366
432
  return [metadata, options];
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Client/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Client/index.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { Credentials, EndPoint, NodePreference } from "../types";
1
+ import type { BasicCredentials, EndPoint, NodePreference } from "../types";
2
2
  export interface QueryOptions {
3
3
  userCertFile?: string;
4
4
  userKeyFile?: string;
@@ -17,7 +17,7 @@ export interface QueryOptions {
17
17
  }
18
18
  export interface ConnectionOptions extends QueryOptions {
19
19
  dnsDiscover: boolean;
20
- defaultCredentials?: Credentials;
20
+ defaultCredentials?: BasicCredentials;
21
21
  hosts: EndPoint[];
22
22
  }
23
23
  export declare const parseConnectionString: (connectionString: string) => ConnectionOptions;
@@ -17,6 +17,8 @@ export declare const PARK = "park";
17
17
  export declare const RETRY = "retry";
18
18
  export declare const SKIP = "skip";
19
19
  export declare const STOP = "stop";
20
+ export declare const PROJECTION_ENGINE_V1 = "v1";
21
+ export declare const PROJECTION_ENGINE_V2 = "v2";
20
22
  export declare const CREATING = "Creating";
21
23
  export declare const LOADING = "Loading";
22
24
  export declare const LOADED = "Loaded";
@@ -34,6 +36,7 @@ export declare const FAULTED = "Faulted";
34
36
  export declare const DELETING = "Deleting";
35
37
  export declare const PAUSED = "Paused";
36
38
  export declare const WRITING_RESULTS = "Writing results";
39
+ export declare const STREAM_STATE = "stream_state";
37
40
  export declare const STREAM_NAME = "streamName";
38
41
  export declare const EVENT_TYPE = "eventType";
39
42
  export declare const UNBOUNDED = "unbounded";
package/dist/constants.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SYSTEM_STREAM_ACL = exports.USER_STREAM_ACL = exports.STATS_STREAM_PREFIX = exports.SETTINGS_STREAM = exports.STREAMS_STREAM = exports.UNBOUNDED = exports.EVENT_TYPE = exports.STREAM_NAME = exports.WRITING_RESULTS = exports.PAUSED = exports.DELETING = exports.FAULTED = exports.ABORTED = exports.COMPLETED = exports.STOPPED = exports.ABORTING = exports.STOPPING = exports.RUNNING = exports.LOADING_STOPPED = exports.STARTING = exports.PREPARED = exports.PREPARING = exports.LOADED = exports.LOADING = exports.CREATING = exports.STOP = exports.SKIP = exports.RETRY = exports.PARK = exports.PINNED_BY_CORRELATION = exports.PINNED = exports.ROUND_ROBIN = exports.DISPATCH_TO_SINGLE = exports.READ_ONLY_REPLICA = exports.LEADER = exports.FOLLOWER = exports.RANDOM = exports.BACKWARDS = exports.FORWARDS = exports.END = exports.START = exports.NO_STREAM = exports.STREAM_EXISTS = exports.ANY = void 0;
3
+ exports.SYSTEM_STREAM_ACL = exports.USER_STREAM_ACL = exports.STATS_STREAM_PREFIX = exports.SETTINGS_STREAM = exports.STREAMS_STREAM = exports.UNBOUNDED = exports.EVENT_TYPE = exports.STREAM_NAME = exports.STREAM_STATE = exports.WRITING_RESULTS = exports.PAUSED = exports.DELETING = exports.FAULTED = exports.ABORTED = exports.COMPLETED = exports.STOPPED = exports.ABORTING = exports.STOPPING = exports.RUNNING = exports.LOADING_STOPPED = exports.STARTING = exports.PREPARED = exports.PREPARING = exports.LOADED = exports.LOADING = exports.CREATING = exports.PROJECTION_ENGINE_V2 = exports.PROJECTION_ENGINE_V1 = exports.STOP = exports.SKIP = exports.RETRY = exports.PARK = exports.PINNED_BY_CORRELATION = exports.PINNED = exports.ROUND_ROBIN = exports.DISPATCH_TO_SINGLE = exports.READ_ONLY_REPLICA = exports.LEADER = exports.FOLLOWER = exports.RANDOM = exports.BACKWARDS = exports.FORWARDS = exports.END = exports.START = exports.NO_STREAM = exports.STREAM_EXISTS = exports.ANY = void 0;
4
4
  // revision
5
5
  exports.ANY = "any";
6
6
  exports.STREAM_EXISTS = "stream_exists";
@@ -26,6 +26,9 @@ exports.PARK = "park";
26
26
  exports.RETRY = "retry";
27
27
  exports.SKIP = "skip";
28
28
  exports.STOP = "stop";
29
+ // projection engine version
30
+ exports.PROJECTION_ENGINE_V1 = "v1";
31
+ exports.PROJECTION_ENGINE_V2 = "v2";
29
32
  // projection status
30
33
  exports.CREATING = "Creating";
31
34
  exports.LOADING = "Loading";
@@ -46,6 +49,8 @@ exports.DELETING = "Deleting";
46
49
  exports.PAUSED = "Paused";
47
50
  exports.WRITING_RESULTS = "Writing results";
48
51
  // STOPPED
52
+ // consistency check types
53
+ exports.STREAM_STATE = "stream_state";
49
54
  // filter
50
55
  exports.STREAM_NAME = "streamName";
51
56
  exports.EVENT_TYPE = "eventType";
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAAA,WAAW;AACE,QAAA,GAAG,GAAG,KAAK,CAAC;AACZ,QAAA,aAAa,GAAG,eAAe,CAAC;AAChC,QAAA,SAAS,GAAG,WAAW,CAAC;AAErC,8BAA8B;AACjB,QAAA,KAAK,GAAG,OAAO,CAAC;AAChB,QAAA,GAAG,GAAG,KAAK,CAAC;AAEzB,aAAa;AACA,QAAA,QAAQ,GAAG,UAAU,CAAC;AACtB,QAAA,SAAS,GAAG,WAAW,CAAC;AAErC,kBAAkB;AACL,QAAA,MAAM,GAAG,QAAQ,CAAC;AAClB,QAAA,QAAQ,GAAG,UAAU,CAAC;AACtB,QAAA,MAAM,GAAG,QAAQ,CAAC;AAClB,QAAA,iBAAiB,GAAG,mBAAmB,CAAC;AAErD,oBAAoB;AACP,QAAA,kBAAkB,GAAG,kBAAkB,CAAC;AACxC,QAAA,WAAW,GAAG,YAAY,CAAC;AAC3B,QAAA,MAAM,GAAG,QAAQ,CAAC;AAClB,QAAA,qBAAqB,GAAG,qBAAqB,CAAC;AAE3D,oBAAoB;AACP,QAAA,IAAI,GAAG,MAAM,CAAC;AACd,QAAA,KAAK,GAAG,OAAO,CAAC;AAChB,QAAA,IAAI,GAAG,MAAM,CAAC;AACd,QAAA,IAAI,GAAG,MAAM,CAAC;AAE3B,oBAAoB;AACP,QAAA,QAAQ,GAAG,UAAU,CAAC;AACtB,QAAA,OAAO,GAAG,SAAS,CAAC;AACpB,QAAA,MAAM,GAAG,QAAQ,CAAC;AAClB,QAAA,SAAS,GAAG,WAAW,CAAC;AACxB,QAAA,QAAQ,GAAG,UAAU,CAAC;AACtB,QAAA,QAAQ,GAAG,UAAU,CAAC;AACtB,QAAA,eAAe,GAAG,gBAAgB,CAAC;AACnC,QAAA,OAAO,GAAG,SAAS,CAAC;AACpB,QAAA,QAAQ,GAAG,UAAU,CAAC;AACtB,QAAA,QAAQ,GAAG,UAAU,CAAC;AACtB,QAAA,OAAO,GAAG,SAAS,CAAC;AACpB,QAAA,SAAS,GAAG,WAAW,CAAC;AACxB,QAAA,OAAO,GAAG,SAAS,CAAC;AACpB,QAAA,OAAO,GAAG,SAAS,CAAC;AACpB,QAAA,QAAQ,GAAG,UAAU,CAAC;AAEnC,oBAAoB;AACP,QAAA,MAAM,GAAG,QAAQ,CAAC;AAClB,QAAA,eAAe,GAAG,iBAAiB,CAAC;AACjD,UAAU;AAEV,SAAS;AACI,QAAA,WAAW,GAAG,YAAY,CAAC;AAC3B,QAAA,UAAU,GAAG,WAAW,CAAC;AAEtC,uBAAuB;AACV,QAAA,SAAS,GAAG,WAAW,CAAC;AAErC,iBAAiB;AAEjB;;GAEG;AACU,QAAA,cAAc,GAAG,UAAU,CAAC;AAEzC;;GAEG;AACU,QAAA,eAAe,GAAG,WAAW,CAAC;AAE3C;;GAEG;AACU,QAAA,mBAAmB,GAAG,QAAQ,CAAC;AAE5C,eAAe;AAEf;;GAEG;AACU,QAAA,eAAe,GAAG,gBAAgB,CAAC;AAChD;;GAEG;AACU,QAAA,iBAAiB,GAAG,kBAAkB,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAAA,WAAW;AACE,QAAA,GAAG,GAAG,KAAK,CAAC;AACZ,QAAA,aAAa,GAAG,eAAe,CAAC;AAChC,QAAA,SAAS,GAAG,WAAW,CAAC;AAErC,8BAA8B;AACjB,QAAA,KAAK,GAAG,OAAO,CAAC;AAChB,QAAA,GAAG,GAAG,KAAK,CAAC;AAEzB,aAAa;AACA,QAAA,QAAQ,GAAG,UAAU,CAAC;AACtB,QAAA,SAAS,GAAG,WAAW,CAAC;AAErC,kBAAkB;AACL,QAAA,MAAM,GAAG,QAAQ,CAAC;AAClB,QAAA,QAAQ,GAAG,UAAU,CAAC;AACtB,QAAA,MAAM,GAAG,QAAQ,CAAC;AAClB,QAAA,iBAAiB,GAAG,mBAAmB,CAAC;AAErD,oBAAoB;AACP,QAAA,kBAAkB,GAAG,kBAAkB,CAAC;AACxC,QAAA,WAAW,GAAG,YAAY,CAAC;AAC3B,QAAA,MAAM,GAAG,QAAQ,CAAC;AAClB,QAAA,qBAAqB,GAAG,qBAAqB,CAAC;AAE3D,oBAAoB;AACP,QAAA,IAAI,GAAG,MAAM,CAAC;AACd,QAAA,KAAK,GAAG,OAAO,CAAC;AAChB,QAAA,IAAI,GAAG,MAAM,CAAC;AACd,QAAA,IAAI,GAAG,MAAM,CAAC;AAE3B,4BAA4B;AACf,QAAA,oBAAoB,GAAG,IAAI,CAAC;AAC5B,QAAA,oBAAoB,GAAG,IAAI,CAAC;AAEzC,oBAAoB;AACP,QAAA,QAAQ,GAAG,UAAU,CAAC;AACtB,QAAA,OAAO,GAAG,SAAS,CAAC;AACpB,QAAA,MAAM,GAAG,QAAQ,CAAC;AAClB,QAAA,SAAS,GAAG,WAAW,CAAC;AACxB,QAAA,QAAQ,GAAG,UAAU,CAAC;AACtB,QAAA,QAAQ,GAAG,UAAU,CAAC;AACtB,QAAA,eAAe,GAAG,gBAAgB,CAAC;AACnC,QAAA,OAAO,GAAG,SAAS,CAAC;AACpB,QAAA,QAAQ,GAAG,UAAU,CAAC;AACtB,QAAA,QAAQ,GAAG,UAAU,CAAC;AACtB,QAAA,OAAO,GAAG,SAAS,CAAC;AACpB,QAAA,SAAS,GAAG,WAAW,CAAC;AACxB,QAAA,OAAO,GAAG,SAAS,CAAC;AACpB,QAAA,OAAO,GAAG,SAAS,CAAC;AACpB,QAAA,QAAQ,GAAG,UAAU,CAAC;AAEnC,oBAAoB;AACP,QAAA,MAAM,GAAG,QAAQ,CAAC;AAClB,QAAA,eAAe,GAAG,iBAAiB,CAAC;AACjD,UAAU;AAEV,0BAA0B;AACb,QAAA,YAAY,GAAG,cAAc,CAAC;AAE3C,SAAS;AACI,QAAA,WAAW,GAAG,YAAY,CAAC;AAC3B,QAAA,UAAU,GAAG,WAAW,CAAC;AAEtC,uBAAuB;AACV,QAAA,SAAS,GAAG,WAAW,CAAC;AAErC,iBAAiB;AAEjB;;GAEG;AACU,QAAA,cAAc,GAAG,UAAU,CAAC;AAEzC;;GAEG;AACU,QAAA,eAAe,GAAG,WAAW,CAAC;AAE3C;;GAEG;AACU,QAAA,mBAAmB,GAAG,QAAQ,CAAC;AAE5C,eAAe;AAEf;;GAEG;AACU,QAAA,eAAe,GAAG,gBAAgB,CAAC;AAChD;;GAEG;AACU,QAAA,iBAAiB,GAAG,kBAAkB,CAAC"}
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.binaryEvent = void 0;
4
- const uuid_1 = require("uuid");
4
+ const crypto_1 = require("crypto");
5
5
  const convertMetadata_1 = require("./convertMetadata");
6
- const binaryEvent = ({ type, data, metadata, id = (0, uuid_1.v4)(), }) => ({
6
+ const binaryEvent = ({ type, data, metadata, id = (0, crypto_1.randomUUID)(), }) => ({
7
7
  id,
8
8
  contentType: "application/octet-stream",
9
9
  type,
@@ -1 +1 @@
1
- {"version":3,"file":"binaryEvent.js","sourceRoot":"","sources":["../../src/events/binaryEvent.ts"],"names":[],"mappings":";;;AAAA,+BAAkC;AAIlC,uDAAoD;AAa7C,MAAM,WAAW,GAAG,CAA8C,EACvE,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,EAAE,GAAG,IAAA,SAAI,GAAE,GACW,EAAgB,EAAE,CACxC,CAAC;IACC,EAAE;IACF,WAAW,EAAE,0BAA0B;IACvC,IAAI;IACJ,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;IAC3B,QAAQ,EAAE,IAAA,iCAAe,EAAgB,QAAQ,CAAC;CAClC,CAAA,CAAC;AAZR,QAAA,WAAW,eAYH"}
1
+ {"version":3,"file":"binaryEvent.js","sourceRoot":"","sources":["../../src/events/binaryEvent.ts"],"names":[],"mappings":";;;AAAA,mCAAoC;AAIpC,uDAAoD;AAa7C,MAAM,WAAW,GAAG,CAA8C,EACvE,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,EAAE,GAAG,IAAA,mBAAU,GAAE,GACK,EAAgB,EAAE,CACxC,CAAC;IACC,EAAE;IACF,WAAW,EAAE,0BAA0B;IACvC,IAAI;IACJ,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;IAC3B,QAAQ,EAAE,IAAA,iCAAe,EAAgB,QAAQ,CAAC;CAClC,CAAA,CAAC;AAZR,QAAA,WAAW,eAYH"}
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.jsonEvent = void 0;
4
- const uuid_1 = require("uuid");
4
+ const crypto_1 = require("crypto");
5
5
  const convertMetadata_1 = require("./convertMetadata");
6
- const jsonEvent = ({ type, data, metadata, id = (0, uuid_1.v4)(), }) => ({
6
+ const jsonEvent = ({ type, data, metadata, id = (0, crypto_1.randomUUID)(), }) => ({
7
7
  id,
8
8
  contentType: "application/json",
9
9
  type,
@@ -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 {