@laserdata/laser-sdk 0.0.1-rc.3 → 0.0.2

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 (92) hide show
  1. package/README.md +5 -5
  2. package/dist/agent/agdx.d.ts +2 -2
  3. package/dist/agent/agdx.d.ts.map +1 -1
  4. package/dist/agent/agdx.js +33 -22
  5. package/dist/agent/agdx.js.map +1 -1
  6. package/dist/agent/builder.d.ts +13 -2
  7. package/dist/agent/builder.d.ts.map +1 -1
  8. package/dist/agent/builder.js +38 -2
  9. package/dist/agent/builder.js.map +1 -1
  10. package/dist/agent/context.d.ts.map +1 -1
  11. package/dist/agent/context.js +5 -3
  12. package/dist/agent/context.js.map +1 -1
  13. package/dist/agent/contract.d.ts +1 -1
  14. package/dist/agent/contract.d.ts.map +1 -1
  15. package/dist/agent/contract.js +17 -19
  16. package/dist/agent/contract.js.map +1 -1
  17. package/dist/agent/registry.d.ts +1 -1
  18. package/dist/agent/registry.d.ts.map +1 -1
  19. package/dist/agent/registry.js +31 -16
  20. package/dist/agent/registry.js.map +1 -1
  21. package/dist/agent/reliable-consumer.d.ts +10 -3
  22. package/dist/agent/reliable-consumer.d.ts.map +1 -1
  23. package/dist/agent/reliable-consumer.js +80 -12
  24. package/dist/agent/reliable-consumer.js.map +1 -1
  25. package/dist/agent/replies.d.ts +5 -3
  26. package/dist/agent/replies.d.ts.map +1 -1
  27. package/dist/agent/replies.js +36 -10
  28. package/dist/agent/replies.js.map +1 -1
  29. package/dist/bridges/a2a.d.ts +1 -1
  30. package/dist/bridges/a2a.d.ts.map +1 -1
  31. package/dist/bridges/a2a.js +1 -1
  32. package/dist/bridges/a2a.js.map +1 -1
  33. package/dist/client/capabilities.d.ts +1 -0
  34. package/dist/client/capabilities.d.ts.map +1 -1
  35. package/dist/client/capabilities.js +56 -17
  36. package/dist/client/capabilities.js.map +1 -1
  37. package/dist/client/laser.d.ts +22 -8
  38. package/dist/client/laser.d.ts.map +1 -1
  39. package/dist/client/laser.js +101 -39
  40. package/dist/client/laser.js.map +1 -1
  41. package/dist/govern.d.ts +11 -3
  42. package/dist/govern.d.ts.map +1 -1
  43. package/dist/govern.js +76 -10
  44. package/dist/govern.js.map +1 -1
  45. package/dist/iggy/apache-iggy.d.ts +6 -1
  46. package/dist/iggy/apache-iggy.d.ts.map +1 -1
  47. package/dist/iggy/apache-iggy.js +189 -38
  48. package/dist/iggy/apache-iggy.js.map +1 -1
  49. package/dist/managed/rbac.d.ts.map +1 -1
  50. package/dist/managed/rbac.js +11 -3
  51. package/dist/managed/rbac.js.map +1 -1
  52. package/dist/runtime/async-once.d.ts +1 -0
  53. package/dist/runtime/async-once.d.ts.map +1 -1
  54. package/dist/runtime/async-once.js +3 -0
  55. package/dist/runtime/async-once.js.map +1 -1
  56. package/dist/signing.d.ts +5 -5
  57. package/dist/signing.d.ts.map +1 -1
  58. package/dist/signing.js +68 -23
  59. package/dist/signing.js.map +1 -1
  60. package/dist/wire/authz.d.ts +3 -0
  61. package/dist/wire/authz.d.ts.map +1 -1
  62. package/dist/wire/authz.js +23 -5
  63. package/dist/wire/authz.js.map +1 -1
  64. package/dist/wire/cbor.d.ts +1 -0
  65. package/dist/wire/cbor.d.ts.map +1 -1
  66. package/dist/wire/cbor.js +16 -2
  67. package/dist/wire/cbor.js.map +1 -1
  68. package/dist/wire/codes.d.ts +1 -0
  69. package/dist/wire/codes.d.ts.map +1 -1
  70. package/dist/wire/codes.js +24 -0
  71. package/dist/wire/codes.js.map +1 -1
  72. package/dist/wire/forward.d.ts +1 -0
  73. package/dist/wire/forward.d.ts.map +1 -1
  74. package/dist/wire/forward.js +5 -0
  75. package/dist/wire/forward.js.map +1 -1
  76. package/dist/wire/hello.d.ts +1 -0
  77. package/dist/wire/hello.d.ts.map +1 -1
  78. package/dist/wire/hello.js +4 -1
  79. package/dist/wire/hello.js.map +1 -1
  80. package/dist/wire/index.d.ts +1 -0
  81. package/dist/wire/index.d.ts.map +1 -1
  82. package/dist/wire/index.js +1 -0
  83. package/dist/wire/index.js.map +1 -1
  84. package/dist/wire/keys.d.ts +22 -0
  85. package/dist/wire/keys.d.ts.map +1 -0
  86. package/dist/wire/keys.js +56 -0
  87. package/dist/wire/keys.js.map +1 -0
  88. package/dist/wire/mutation.d.ts +9 -0
  89. package/dist/wire/mutation.d.ts.map +1 -1
  90. package/dist/wire/mutation.js +35 -1
  91. package/dist/wire/mutation.js.map +1 -1
  92. package/package.json +9 -7
@@ -1,9 +1,15 @@
1
1
  import { Consumer, HeaderKeyFactory, HeaderValue as IggyHeaderValueFactory, Partitioning, PollingStrategy as IggyPollingStrategy, SimpleClient, getRawClient } from "apache-iggy";
2
2
  import { readFileSync } from "node:fs";
3
+ import { isIP } from "node:net";
3
4
  import { ConfigError, TransportError } from "../client/errors.js";
4
5
  import { LASERDATA_ROOT_CA } from "../client/laserdata-ca.js";
5
6
  import { Mutex } from "../runtime/mutex.js";
7
+ import { mintUlidValue } from "../runtime/ulid.js";
8
+ import { encodeNamed } from "../wire/cbor.js";
9
+ import { isIdempotentManagedRequest } from "../wire/codes.js";
10
+ import { MANAGED_REQUEST_VERSION, encodeManagedRequestEnvelope } from "../wire/mutation.js";
6
11
  const DEFAULT_RECONNECT_INTERVAL_MS = 1_000;
12
+ const VSR_HEARTBEAT_INTERVAL_MS = 5_000;
7
13
  export function toNodeBuffer(bytes) {
8
14
  return Buffer.from(bytes.buffer, bytes.byteOffset, bytes.byteLength);
9
15
  }
@@ -19,15 +25,57 @@ function toIggyOffsetConsumer(target) {
19
25
  ? Consumer.Group(target.name)
20
26
  : { kind: 1, id: target.name };
21
27
  }
22
- function toPartitioning(routing) {
23
- switch (routing.kind) {
24
- case "balanced":
25
- return Partitioning.Balanced;
26
- case "key":
27
- return Partitioning.MessageKey(Buffer.from(routing.key));
28
- case "partition":
29
- return Partitioning.PartitionId(routing.partition);
30
- }
28
+ function rotateLeft(value, bits) {
29
+ return ((value << bits) | (value >>> (32 - bits))) >>> 0;
30
+ }
31
+ function xxHashRound(accumulator, lane) {
32
+ const added = (accumulator + Math.imul(lane, 0x85ebca77)) >>> 0;
33
+ return Math.imul(rotateLeft(added, 13), 0x9e3779b1) >>> 0;
34
+ }
35
+ export function xxHash32(bytes) {
36
+ const view = new DataView(bytes.buffer, bytes.byteOffset, bytes.byteLength);
37
+ let offset = 0;
38
+ let hash;
39
+ if (bytes.byteLength >= 16) {
40
+ let lane1 = 0x24234428;
41
+ let lane2 = 0x85ebca77;
42
+ let lane3 = 0;
43
+ let lane4 = 0x61c8864f;
44
+ const limit = bytes.byteLength - 16;
45
+ do {
46
+ lane1 = xxHashRound(lane1, view.getUint32(offset, true));
47
+ lane2 = xxHashRound(lane2, view.getUint32(offset + 4, true));
48
+ lane3 = xxHashRound(lane3, view.getUint32(offset + 8, true));
49
+ lane4 = xxHashRound(lane4, view.getUint32(offset + 12, true));
50
+ offset += 16;
51
+ } while (offset <= limit);
52
+ hash =
53
+ (rotateLeft(lane1, 1) +
54
+ rotateLeft(lane2, 7) +
55
+ rotateLeft(lane3, 12) +
56
+ rotateLeft(lane4, 18)) >>>
57
+ 0;
58
+ }
59
+ else {
60
+ hash = 0x165667b1;
61
+ }
62
+ hash = (hash + bytes.byteLength) >>> 0;
63
+ while (offset + 4 <= bytes.byteLength) {
64
+ hash = (hash + Math.imul(view.getUint32(offset, true), 0xc2b2ae3d)) >>> 0;
65
+ hash = Math.imul(rotateLeft(hash, 17), 0x27d4eb2f) >>> 0;
66
+ offset += 4;
67
+ }
68
+ while (offset < bytes.byteLength) {
69
+ hash = (hash + Math.imul(bytes[offset] ?? 0, 0x165667b1)) >>> 0;
70
+ hash = Math.imul(rotateLeft(hash, 11), 0x9e3779b1) >>> 0;
71
+ offset += 1;
72
+ }
73
+ hash ^= hash >>> 15;
74
+ hash = Math.imul(hash, 0x85ebca77) >>> 0;
75
+ hash ^= hash >>> 13;
76
+ hash = Math.imul(hash, 0xc2b2ae3d) >>> 0;
77
+ hash ^= hash >>> 16;
78
+ return hash >>> 0;
31
79
  }
32
80
  function toIggyPollingStrategy(strategy) {
33
81
  switch (strategy.kind) {
@@ -46,7 +94,7 @@ function toIggyPollingStrategy(strategy) {
46
94
  function toIggyHeaderValue(value) {
47
95
  switch (value.kind) {
48
96
  case "raw":
49
- return IggyHeaderValueFactory.Raw(Buffer.from(value.value));
97
+ return IggyHeaderValueFactory.Raw(toNodeBuffer(value.value));
50
98
  case "string":
51
99
  return IggyHeaderValueFactory.String(value.value);
52
100
  case "bool":
@@ -60,7 +108,7 @@ function toIggyHeaderValue(value) {
60
108
  case "int64":
61
109
  return IggyHeaderValueFactory.Int64(value.value);
62
110
  case "int128":
63
- return IggyHeaderValueFactory.Int128(Buffer.from(value.value));
111
+ return IggyHeaderValueFactory.Int128(toNodeBuffer(value.value));
64
112
  case "uint8":
65
113
  return IggyHeaderValueFactory.Uint8(value.value);
66
114
  case "uint16":
@@ -70,7 +118,7 @@ function toIggyHeaderValue(value) {
70
118
  case "uint64":
71
119
  return IggyHeaderValueFactory.Uint64(value.value);
72
120
  case "uint128":
73
- return IggyHeaderValueFactory.Uint128(Buffer.from(value.value));
121
+ return IggyHeaderValueFactory.Uint128(toNodeBuffer(value.value));
74
122
  case "float":
75
123
  return IggyHeaderValueFactory.Float(value.value);
76
124
  case "double":
@@ -227,16 +275,21 @@ export function parseConnectionString(connectionString, env = process.env) {
227
275
  async function connectSimpleClient(parsed) {
228
276
  const config = parsed.tls
229
277
  ? {
278
+ protocol: "vsr",
279
+ heartbeatInterval: VSR_HEARTBEAT_INTERVAL_MS,
230
280
  transport: "TLS",
231
281
  options: {
232
282
  port: parsed.port,
233
283
  host: parsed.host,
284
+ ...(isIP(parsed.host) === 0 ? { servername: parsed.host } : {}),
234
285
  ...(parsed.ca !== undefined ? { ca: parsed.ca } : {})
235
286
  },
236
287
  credentials: parsed.credentials,
237
288
  reconnect: { enabled: false, interval: 0, maxRetries: 0 }
238
289
  }
239
290
  : {
291
+ protocol: "vsr",
292
+ heartbeatInterval: VSR_HEARTBEAT_INTERVAL_MS,
240
293
  transport: "TCP",
241
294
  options: { port: parsed.port, host: parsed.host },
242
295
  credentials: parsed.credentials,
@@ -244,7 +297,12 @@ async function connectSimpleClient(parsed) {
244
297
  };
245
298
  let raw;
246
299
  try {
247
- raw = getRawClient(config);
300
+ raw = getVsrRawClient(config);
301
+ }
302
+ catch (cause) {
303
+ throw new ConfigError("invalid Apache Iggy client configuration", { cause });
304
+ }
305
+ try {
248
306
  const connection = raw.connection;
249
307
  const client = new SimpleClient(raw);
250
308
  await new Promise((resolve, reject) => {
@@ -261,12 +319,45 @@ async function connectSimpleClient(parsed) {
261
319
  return { client, raw };
262
320
  }
263
321
  catch (cause) {
264
- raw?.destroy();
265
- throw new TransportError(`failed to connect to ${parsed.host}:${String(parsed.port)}`, false, {
322
+ raw.destroy();
323
+ throw new TransportError(`failed to connect to ${parsed.host}:${String(parsed.port)}`, true, {
266
324
  cause
267
325
  });
268
326
  }
269
327
  }
328
+ function getVsrRawClient(config) {
329
+ if (config.transport !== "TLS")
330
+ return getRawClient(config);
331
+ // apache-iggy@0.8.1-edge.3 has a stale normalization guard for VSR over TLS.
332
+ // Its TLS socket and VSR framing are transport-independent once normalized.
333
+ let firstTransportRead = true;
334
+ const compatibleConfig = { ...config };
335
+ Object.defineProperty(compatibleConfig, "transport", {
336
+ configurable: true,
337
+ enumerable: true,
338
+ get: () => {
339
+ if (firstTransportRead) {
340
+ firstTransportRead = false;
341
+ return "TCP";
342
+ }
343
+ return "TLS";
344
+ }
345
+ });
346
+ return getRawClient(compatibleConfig);
347
+ }
348
+ function serverResponseError(error) {
349
+ let current = error;
350
+ for (let depth = 0; depth < 8; depth += 1) {
351
+ if (typeof current !== "object" || current === null)
352
+ return undefined;
353
+ if ("errorCode" in current &&
354
+ typeof current.errorCode === "number") {
355
+ return current instanceof Error ? current : new Error("server rejected connection");
356
+ }
357
+ current = "cause" in current ? current.cause : undefined;
358
+ }
359
+ return undefined;
360
+ }
270
361
  async function connectWithRetry(parsed) {
271
362
  let retries = 0;
272
363
  let lastError;
@@ -276,7 +367,12 @@ async function connectWithRetry(parsed) {
276
367
  return await connectSimpleClient(parsed);
277
368
  }
278
369
  catch (error) {
370
+ if (error instanceof ConfigError)
371
+ throw error;
279
372
  lastError = error;
373
+ if (serverResponseError(error) !== undefined) {
374
+ break;
375
+ }
280
376
  if (parsed.reconnection.maxRetries !== undefined &&
281
377
  retries >= parsed.reconnection.maxRetries) {
282
378
  break;
@@ -285,9 +381,11 @@ async function connectWithRetry(parsed) {
285
381
  await new Promise((resolve) => setTimeout(resolve, parsed.reconnection.intervalMs));
286
382
  }
287
383
  }
288
- throw new TransportError(`failed to connect to ${parsed.host}:${String(parsed.port)}`, true, {
289
- cause: lastError
290
- });
384
+ const responseError = serverResponseError(lastError);
385
+ const message = responseError === undefined
386
+ ? `failed to connect to ${parsed.host}:${String(parsed.port)}`
387
+ : `server rejected connection: ${responseError.message}`;
388
+ throw new TransportError(message, responseError === undefined, { cause: lastError });
291
389
  }
292
390
  export class ApacheIggyTransport {
293
391
  client;
@@ -297,6 +395,8 @@ export class ApacheIggyTransport {
297
395
  reconnectLock = new Mutex();
298
396
  disconnected = new WeakSet();
299
397
  consumerGroups = new Map();
398
+ partitionCounts = new Map();
399
+ balancedCursors = new Map();
300
400
  closed = false;
301
401
  constructor(client, connection, ownership) {
302
402
  this.client = client;
@@ -313,7 +413,11 @@ export class ApacheIggyTransport {
313
413
  transport.watch(connected);
314
414
  return transport;
315
415
  }
316
- static fromClient(client, ownership = "borrowed") {
416
+ static async fromClient(client, ownership = "borrowed") {
417
+ const raw = await client.clientProvider();
418
+ if (raw.protocol !== "vsr") {
419
+ throw new ConfigError("Laser requires an Apache Iggy VSR client");
420
+ }
317
421
  return new ApacheIggyTransport(client, undefined, ownership);
318
422
  }
319
423
  async execute(operation, message) {
@@ -327,14 +431,19 @@ export class ApacheIggyTransport {
327
431
  }
328
432
  catch (firstCause) {
329
433
  if (!this.disconnected.has(stale)) {
330
- throw new TransportError(message, true, { cause: firstCause });
434
+ throw new TransportError(message, serverResponseError(firstCause) === undefined, {
435
+ cause: firstCause
436
+ });
331
437
  }
332
438
  try {
333
439
  await this.reconnect(stale);
334
440
  return await operation(this.client);
335
441
  }
336
442
  catch (cause) {
337
- throw new TransportError(message, true, { cause: cause ?? firstCause });
443
+ const actual = cause ?? firstCause;
444
+ throw new TransportError(message, serverResponseError(actual) === undefined, {
445
+ cause: actual
446
+ });
338
447
  }
339
448
  }
340
449
  }
@@ -345,7 +454,7 @@ export class ApacheIggyTransport {
345
454
  if (this.client !== stale)
346
455
  return;
347
456
  if (this.connection === undefined) {
348
- throw new TransportError("an injected client cannot be reconnected by Laser", true);
457
+ throw new TransportError("an injected client cannot be reconnected by Laser", false);
349
458
  }
350
459
  await stale.destroy().catch(() => undefined);
351
460
  let retries = 0;
@@ -369,6 +478,9 @@ export class ApacheIggyTransport {
369
478
  }
370
479
  catch (error) {
371
480
  lastError = error;
481
+ if (serverResponseError(error) !== undefined) {
482
+ break;
483
+ }
372
484
  if (this.connection.reconnection.maxRetries !== undefined &&
373
485
  retries >= this.connection.reconnection.maxRetries) {
374
486
  break;
@@ -377,7 +489,11 @@ export class ApacheIggyTransport {
377
489
  await new Promise((resolve) => setTimeout(resolve, this.connection?.reconnection.intervalMs ?? 0));
378
490
  }
379
491
  }
380
- throw new TransportError("reconnect attempts exhausted", true, { cause: lastError });
492
+ const responseError = serverResponseError(lastError);
493
+ const message = responseError === undefined
494
+ ? "reconnect attempts exhausted"
495
+ : `server rejected connection: ${responseError.message}`;
496
+ throw new TransportError(message, responseError === undefined, { cause: lastError });
381
497
  });
382
498
  }
383
499
  watch(connected) {
@@ -390,7 +506,14 @@ export class ApacheIggyTransport {
390
506
  stream.once("close", markDisconnected);
391
507
  }
392
508
  async sendManaged(code, payload) {
393
- const buffer = Buffer.from(payload);
509
+ const request = isIdempotentManagedRequest(code)
510
+ ? encodeNamed(encodeManagedRequestEnvelope({
511
+ v: MANAGED_REQUEST_VERSION,
512
+ operationId: mintUlidValue(),
513
+ payload
514
+ }))
515
+ : payload;
516
+ const buffer = toNodeBuffer(request);
394
517
  const reply = await this.execute((client) => client.sendBinaryRequest(code, buffer), `managed command ${String(code)} failed`);
395
518
  return new Uint8Array(reply.buffer, reply.byteOffset, reply.byteLength);
396
519
  }
@@ -398,24 +521,30 @@ export class ApacheIggyTransport {
398
521
  await this.execute((client) => client.stream.ensure(name), `failed to ensure stream \`${name}\``);
399
522
  }
400
523
  async ensureTopic(streamId, topicId, partitions) {
401
- await this.execute((client) => client.topic.ensure(streamId, topicId, partitions), `failed to ensure topic \`${topicId}\` on stream \`${streamId}\``);
524
+ const topic = await this.execute((client) => client.topic.ensure(streamId, topicId, partitions), `failed to ensure topic \`${topicId}\` on stream \`${streamId}\``);
525
+ this.partitionCounts.set(this.topicKey(streamId, topicId), topic.partitionsCount);
402
526
  }
403
527
  async ensureTopicWithExpiry(streamId, topicId, partitions, messageExpiryMicros) {
404
- await this.execute(async (client) => {
528
+ const partitionCount = await this.execute(async (client) => {
405
529
  const topic = await client.topic.ensure(streamId, topicId, partitions);
406
530
  if (topic.messageExpiry === messageExpiryMicros)
407
- return;
531
+ return topic.partitionsCount;
408
532
  await client.topic.update({
409
533
  streamId,
410
534
  topicId,
411
535
  name: topic.name,
412
536
  messageExpiry: messageExpiryMicros
413
537
  });
538
+ return topic.partitionsCount;
414
539
  }, `failed to ensure topic \`${topicId}\` on stream \`${streamId}\` with message expiry`);
540
+ this.partitionCounts.set(this.topicKey(streamId, topicId), partitionCount);
415
541
  }
416
542
  async findTopicPartitionCount(streamId, topicId) {
417
543
  const topic = await this.execute((client) => client.topic.get({ streamId, topicId }), `failed to read topic \`${topicId}\``);
418
- return topic?.partitionsCount;
544
+ if (topic === null)
545
+ return undefined;
546
+ this.partitionCounts.set(this.topicKey(streamId, topicId), topic.partitionsCount);
547
+ return topic.partitionsCount;
419
548
  }
420
549
  async getTopicPartitionCount(streamId, topicId) {
421
550
  const partitions = await this.findTopicPartitionCount(streamId, topicId);
@@ -442,34 +571,39 @@ export class ApacheIggyTransport {
442
571
  return topic === null ? undefined : { stream: stream.name, topic: topic.name };
443
572
  }
444
573
  async sendMessages(streamId, topicId, payloads, routing) {
574
+ const partitionId = await this.resolvePartition(streamId, topicId, routing);
445
575
  await this.execute((client) => client.message.send({
446
576
  streamId,
447
577
  topicId,
448
- messages: payloads.map((payload) => ({ payload: Buffer.from(payload) })),
449
- partition: toPartitioning(routing)
578
+ messages: payloads.map((payload) => ({ payload: toNodeBuffer(payload) })),
579
+ partition: Partitioning.PartitionId(partitionId)
450
580
  }), `failed to send to topic \`${topicId}\``);
451
581
  }
452
582
  async sendMessageWithHeaders(streamId, topicId, payload, headers, partitionKey, partitionId) {
453
583
  await this.sendMessagesWithHeaders(streamId, topicId, [{ payload, headers }], partitionKey, partitionId);
454
584
  }
455
585
  async sendMessagesWithHeaders(streamId, topicId, messages, partitionKey, partitionId) {
586
+ const resolvedPartition = await this.resolvePartition(streamId, topicId, partitionId !== undefined
587
+ ? { kind: "partition", partition: partitionId }
588
+ : partitionKey !== undefined
589
+ ? {
590
+ kind: "key",
591
+ key: typeof partitionKey === "string"
592
+ ? new TextEncoder().encode(partitionKey)
593
+ : partitionKey
594
+ }
595
+ : { kind: "balanced" });
456
596
  await this.execute((client) => client.message.send({
457
597
  streamId,
458
598
  topicId,
459
599
  messages: messages.map(({ payload, headers }) => ({
460
- payload: Buffer.from(payload),
600
+ payload: toNodeBuffer(payload),
461
601
  headers: [...headers].map(([key, value]) => ({
462
602
  key: HeaderKeyFactory.String(key),
463
603
  value: toIggyHeaderValue(value)
464
604
  }))
465
605
  })),
466
- partition: partitionId !== undefined
467
- ? Partitioning.PartitionId(partitionId)
468
- : partitionKey !== undefined
469
- ? Partitioning.MessageKey(typeof partitionKey === "string"
470
- ? Buffer.from(partitionKey, "utf8")
471
- : Buffer.from(partitionKey))
472
- : Partitioning.Balanced
606
+ partition: Partitioning.PartitionId(resolvedPartition)
473
607
  }), `failed to send to topic \`${topicId}\``);
474
608
  }
475
609
  async pollMessages(streamId, topicId, target, strategy, count, autoCommit) {
@@ -524,5 +658,22 @@ export class ApacheIggyTransport {
524
658
  if (this.ownership === "owned")
525
659
  await this.client.destroy();
526
660
  }
661
+ topicKey(streamId, topicId) {
662
+ return `${streamId}\0${topicId}`;
663
+ }
664
+ async resolvePartition(streamId, topicId, routing) {
665
+ if (routing.kind === "partition")
666
+ return routing.partition;
667
+ const key = this.topicKey(streamId, topicId);
668
+ const partitionCount = this.partitionCounts.get(key) ?? (await this.getTopicPartitionCount(streamId, topicId));
669
+ if (partitionCount <= 0) {
670
+ throw new TransportError(`topic \`${topicId}\` on stream \`${streamId}\` has no partitions`, false);
671
+ }
672
+ if (routing.kind === "key")
673
+ return xxHash32(routing.key) % partitionCount;
674
+ const cursor = this.balancedCursors.get(key) ?? 0;
675
+ this.balancedCursors.set(key, (cursor + 1) >>> 0);
676
+ return cursor % partitionCount;
677
+ }
527
678
  }
528
679
  //# sourceMappingURL=apache-iggy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"apache-iggy.js","sourceRoot":"","sources":["../../src/iggy/apache-iggy.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,gBAAgB,EAChB,WAAW,IAAI,sBAAsB,EACrC,YAAY,EACZ,eAAe,IAAI,mBAAmB,EACtC,YAAY,EACZ,YAAY,EACb,MAAM,aAAa,CAAA;AAEpB,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAG7D,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAa3C,MAAM,6BAA6B,GAAG,KAAK,CAAA;AAE3C,MAAM,UAAU,YAAY,CAAC,KAAiB;IAC5C,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,CAAA;AACtE,CAAC;AAuGD,SAAS,cAAc,CAAC,MAAsB;IAC5C,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ;QAC7B,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS;YACzB,CAAC,CAAC,QAAQ,CAAC,MAAM;YACjB,CAAC,CAAC,EAAE,IAAI,EAAE,CAAU,EAAE,EAAE,EAAE,MAAM,CAAC,IAAI,EAAE;QACzC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;AACjC,CAAC;AAED,SAAS,oBAAoB,CAAC,MAA4B;IACxD,OAAO,MAAM,CAAC,IAAI,KAAK,OAAO;QAC5B,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;QAC7B,CAAC,CAAC,EAAE,IAAI,EAAE,CAAU,EAAE,EAAE,EAAE,MAAM,CAAC,IAAI,EAAE,CAAA;AAC3C,CAAC;AAED,SAAS,cAAc,CAAC,OAAgB;IACtC,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,KAAK,UAAU;YACb,OAAO,YAAY,CAAC,QAAQ,CAAA;QAC9B,KAAK,KAAK;YACR,OAAO,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAA;QAC1D,KAAK,WAAW;YACd,OAAO,YAAY,CAAC,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;IACtD,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,QAAyB;IACtD,QAAQ,QAAQ,CAAC,IAAI,EAAE,CAAC;QACtB,KAAK,OAAO;YACV,OAAO,mBAAmB,CAAC,KAAK,CAAA;QAClC,KAAK,MAAM;YACT,OAAO,mBAAmB,CAAC,IAAI,CAAA;QACjC,KAAK,MAAM;YACT,OAAO,mBAAmB,CAAC,IAAI,CAAA;QACjC,KAAK,QAAQ;YACX,OAAO,mBAAmB,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QACnD,KAAK,WAAW;YACd,OAAO,mBAAmB,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IACxD,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAsB;IAC/C,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,KAAK;YACR,OAAO,sBAAsB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAA;QAC7D,KAAK,QAAQ;YACX,OAAO,sBAAsB,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QACnD,KAAK,MAAM;YACT,OAAO,sBAAsB,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QACjD,KAAK,MAAM;YACT,OAAO,sBAAsB,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QACjD,KAAK,OAAO;YACV,OAAO,sBAAsB,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAClD,KAAK,OAAO;YACV,OAAO,sBAAsB,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAClD,KAAK,OAAO;YACV,OAAO,sBAAsB,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAClD,KAAK,QAAQ;YACX,OAAO,sBAAsB,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAA;QAChE,KAAK,OAAO;YACV,OAAO,sBAAsB,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAClD,KAAK,QAAQ;YACX,OAAO,sBAAsB,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QACnD,KAAK,QAAQ;YACX,OAAO,sBAAsB,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QACnD,KAAK,QAAQ;YACX,OAAO,sBAAsB,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QACnD,KAAK,SAAS;YACZ,OAAO,sBAAsB,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAA;QACjE,KAAK,OAAO;YACV,OAAO,sBAAsB,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAClD,KAAK,QAAQ;YACX,OAAO,sBAAsB,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IACrD,CAAC;AACH,CAAC;AAED,MAAM,qBAAqB,GAAsD;IAC/E,CAAC,EAAE,KAAK;IACR,CAAC,EAAE,QAAQ;IACX,CAAC,EAAE,MAAM;IACT,CAAC,EAAE,MAAM;IACT,CAAC,EAAE,OAAO;IACV,CAAC,EAAE,OAAO;IACV,CAAC,EAAE,OAAO;IACV,CAAC,EAAE,QAAQ;IACX,CAAC,EAAE,OAAO;IACV,EAAE,EAAE,QAAQ;IACZ,EAAE,EAAE,QAAQ;IACZ,EAAE,EAAE,QAAQ;IACZ,EAAE,EAAE,SAAS;IACb,EAAE,EAAE,OAAO;IACX,EAAE,EAAE,QAAQ;CACb,CAAA;AAED,SAAS,qBAAqB,CAAC,IAAY,EAAE,KAAc;IACzD,MAAM,GAAG,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAA;IACvC,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,SAAS,CAAA;IACvC,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,KAAK,CAAC;QACX,KAAK,QAAQ,CAAC;QACd,KAAK,SAAS,EAAE,CAAC;YACf,IAAI,CAAC,CAAC,KAAK,YAAY,MAAM,CAAC;gBAAE,OAAO,SAAS,CAAA;YAChD,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE,CAAA;QACpD,CAAC;QACD,KAAK,QAAQ;YACX,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;QACrE,KAAK,MAAM;YACT,OAAO,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;QACtE,KAAK,OAAO,CAAC;QACb,KAAK,QAAQ;YACX,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;QACrE,KAAK,MAAM,CAAC;QACZ,KAAK,OAAO,CAAC;QACb,KAAK,OAAO,CAAC;QACb,KAAK,OAAO,CAAC;QACb,KAAK,QAAQ,CAAC;QACd,KAAK,QAAQ,CAAC;QACd,KAAK,OAAO,CAAC;QACb,KAAK,QAAQ;YACX,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;IACvE,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CACzB,OAGG;IAEH,MAAM,GAAG,GAAG,IAAI,GAAG,EAA2B,CAAA;IAC9C,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,OAAO,KAAK,CAAC,GAAG,CAAC,KAAK,KAAK,QAAQ;YAAE,SAAQ;QACjD,MAAM,KAAK,GAAG,qBAAqB,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QACxE,IAAI,KAAK,KAAK,SAAS;YAAE,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;IAC1D,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAcD,SAAS,aAAa,CAAC,IAAY;IACjC,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;IACrC,OAAO,CACL,UAAU,KAAK,iBAAiB;QAChC,UAAU,CAAC,QAAQ,CAAC,kBAAkB,CAAC;QACvC,UAAU,KAAK,eAAe;QAC9B,UAAU,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CACtC,CAAA;AACH,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAoB;IAClD,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,6BAA6B,CAAA;IACxD,MAAM,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC3C,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACnB,MAAM,IAAI,WAAW,CAAC,4CAA4C,CAAC,CAAA;IACrE,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IAC/B,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;IACrB,MAAM,UAAU,GAAG,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAA;IACpE,MAAM,UAAU,GAAG,MAAM,GAAG,UAAU,CAAA;IACtC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;QACxD,MAAM,IAAI,WAAW,CAAC,sDAAsD,CAAC,CAAA;IAC/E,CAAC;IACD,OAAO,UAAU,CAAA;AACnB,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAoB;IACjD,IAAI,KAAK,KAAK,WAAW;QAAE,OAAO,SAAS,CAAA;IAC3C,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,SAAS,CAAA;IACpC,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;IAC7B,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;QAClD,MAAM,IAAI,WAAW,CAAC,kEAAkE,CAAC,CAAA;IAC3F,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,gBAAwB,EACxB,GAAG,GAAiD,OAAO,CAAC,GAAG;IAE/D,MAAM,OAAO,GAAG,gBAAgB,CAAC,IAAI,EAAE,CAAA;IACvC,MAAM,UAAU,GACd,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,OAAO,EAAE,CAAA;IAC9F,IAAI,GAAQ,CAAA;IACZ,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAA;IAC3B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,WAAW,CAAC,8BAA8B,gBAAgB,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;IACpF,CAAC;IAED,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO,IAAI,GAAG,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;QAC7D,MAAM,IAAI,WAAW,CAAC,kCAAkC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAA;IACzE,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;QAClB,MAAM,IAAI,WAAW,CAAC,mCAAmC,gBAAgB,EAAE,CAAC,CAAA;IAC9E,CAAC;IAED,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IAC/C,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,GAAG,KAAK,EAAE,CAAC;QACzD,MAAM,IAAI,WAAW,CAAC,uCAAuC,gBAAgB,EAAE,CAAC,CAAA;IAClF,CAAC;IAED,MAAM,QAAQ,GAAG,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IACjD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IACjD,MAAM,WAAW,GACf,QAAQ,CAAC,MAAM,KAAK,CAAC;QACnB,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE;QACxC,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;YACrB,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE;YACrB,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAA;IAE9B,MAAM,OAAO,GAAG,GAAG,CAAC,cAAc,CAAC,KAAK,SAAS,IAAI,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IAChF,MAAM,GAAG,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,MAAM,IAAI,OAAO,CAAA;IAC7D,MAAM,MAAM,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,GAAG,CAAC,gBAAgB,CAAC,CAAA;IAC3E,IAAI,EAAsB,CAAA;IAC1B,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9C,IAAI,CAAC;YACH,EAAE,GAAG,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QACnC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,WAAW,CAAC,+BAA+B,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CAAA;QAC3E,CAAC;IACH,CAAC;SAAM,IAAI,OAAO,EAAE,CAAC;QACnB,EAAE,GAAG,iBAAiB,CAAA;IACxB,CAAC;IAED,MAAM,YAAY,GAAG;QACnB,UAAU,EAAE,sBAAsB,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QACjF,UAAU,EAAE,qBAAqB,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;KAChF,CAAA;IAED,OAAO;QACL,IAAI,EAAE,GAAG,CAAC,QAAQ;QAClB,IAAI;QACJ,WAAW;QACX,GAAG;QACH,GAAG,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnC,YAAY;KACb,CAAA;AACH,CAAC;AAeD,KAAK,UAAU,mBAAmB,CAAC,MAA8B;IAC/D,MAAM,MAAM,GAAiB,MAAM,CAAC,GAAG;QACrC,CAAC,CAAC;YACE,SAAS,EAAE,KAAK;YAChB,OAAO,EAAE;gBACP,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,GAAG,CAAC,MAAM,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACtD;YACD,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,SAAS,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE;SAC1D;QACH,CAAC,CAAC;YACE,SAAS,EAAE,KAAK;YAChB,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE;YACjD,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,SAAS,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE;SAC1D,CAAA;IAEL,IAAI,GAA0B,CAAA;IAC9B,IAAI,CAAC;QACH,GAAG,GAAG,YAAY,CAAC,MAAM,CAAC,CAAA;QAC1B,MAAM,UAAU,GAAI,GAAuC,CAAC,UAAU,CAAA;QACtE,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,GAAG,CAAC,CAAA;QACpC,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC1C,MAAM,MAAM,GAAG,CAAC,KAAe,EAAQ,EAAE;gBACvC,MAAM,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YACnE,CAAC,CAAA;YACD,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;YAChC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC9B,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;gBAC/B,OAAO,EAAE,CAAA;YACX,CAAC,EAAE,MAAM,CAAC,CAAA;QACZ,CAAC,CAAC,CAAA;QACF,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;QACvC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAA;IACxB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,GAAG,EAAE,OAAO,EAAE,CAAA;QACd,MAAM,IAAI,cAAc,CAAC,wBAAwB,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE;YAC5F,KAAK;SACN,CAAC,CAAA;IACJ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,MAA8B;IAC5D,IAAI,OAAO,GAAG,CAAC,CAAA;IACf,IAAI,SAAkB,CAAA;IACtB,OACE,MAAM,CAAC,YAAY,CAAC,UAAU,KAAK,SAAS;QAC5C,OAAO,IAAI,MAAM,CAAC,YAAY,CAAC,UAAU,EACzC,CAAC;QACD,IAAI,CAAC;YACH,OAAO,MAAM,mBAAmB,CAAC,MAAM,CAAC,CAAA;QAC1C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,SAAS,GAAG,KAAK,CAAA;YACjB,IACE,MAAM,CAAC,YAAY,CAAC,UAAU,KAAK,SAAS;gBAC5C,OAAO,IAAI,MAAM,CAAC,YAAY,CAAC,UAAU,EACzC,CAAC;gBACD,MAAK;YACP,CAAC;YACD,OAAO,IAAI,CAAC,CAAA;YACZ,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAA;QACrF,CAAC;IACH,CAAC;IACD,MAAM,IAAI,cAAc,CAAC,wBAAwB,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE;QAC3F,KAAK,EAAE,SAAS;KACjB,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,OAAO,mBAAmB;IAWpB,MAAM;IACG,UAAU;IACV,SAAS;IAZnB,IAAI,GAAG,aAAsB,CAAA;IACrB,aAAa,GAAG,IAAI,KAAK,EAAE,CAAA;IAC3B,YAAY,GAAG,IAAI,OAAO,EAAgB,CAAA;IAC1C,cAAc,GAAG,IAAI,GAAG,EAGtC,CAAA;IACK,MAAM,GAAG,KAAK,CAAA;IAEtB,YACU,MAAoB,EACX,UAA8C,EAC9C,SAA0B;sBAFnC,MAAM;0BACG,UAAU;yBACV,SAAS;IACzB,CAAC;IAEJ,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,MAAM,CAAA;IACpB,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,gBAAwB;QAC3C,MAAM,MAAM,GAAG,qBAAqB,CAAC,gBAAgB,CAAC,CAAA;QACtD,MAAM,SAAS,GAAG,MAAM,gBAAgB,CAAC,MAAM,CAAC,CAAA;QAChD,MAAM,SAAS,GAAG,IAAI,mBAAmB,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;QAC5E,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;QAC1B,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,MAAM,CAAC,UAAU,CACf,MAAoB,EACpB,SAAS,GAAoB,UAAU;QAEvC,OAAO,IAAI,mBAAmB,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;IAC9D,CAAC;IAEO,KAAK,CAAC,OAAO,CACnB,SAAmD,EACnD,OAAe;QAEf,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAA;QACzB,IAAI,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YACjC,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;YAC3B,OAAO,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC/B,CAAC;QACD,IAAI,CAAC;YACH,OAAO,MAAM,SAAS,CAAC,KAAK,CAAC,CAAA;QAC/B,CAAC;QAAC,OAAO,UAAU,EAAE,CAAC;YACpB,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBAClC,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAA;YAChE,CAAC;YACD,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;gBAC3B,OAAO,MAAM,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACrC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,cAAc,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,IAAI,UAAU,EAAE,CAAC,CAAA;YACzE,CAAC;QACH,CAAC;IACH,CAAC;IAEO,SAAS,CAAC,KAAmB;QACnC,OAAO,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,KAAK,IAAI,EAAE;YAChD,IAAI,IAAI,CAAC,MAAM;gBAAE,MAAM,IAAI,cAAc,CAAC,qBAAqB,EAAE,KAAK,CAAC,CAAA;YACvE,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK;gBAAE,OAAM;YACjC,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;gBAClC,MAAM,IAAI,cAAc,CAAC,mDAAmD,EAAE,IAAI,CAAC,CAAA;YACrF,CAAC;YACD,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;YAC5C,IAAI,OAAO,GAAG,CAAC,CAAA;YACf,IAAI,SAAkB,CAAA;YACtB,OACE,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,UAAU,KAAK,SAAS;gBACrD,OAAO,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,UAAU,EAClD,CAAC;gBACD,IAAI,CAAC;oBACH,MAAM,SAAS,GAAG,MAAM,mBAAmB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;oBAC5D,IAAI,CAAC;wBACH,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC;4BACjD,MAAM,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;wBACvF,CAAC;oBACH,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,MAAM,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;wBACvD,MAAM,KAAK,CAAA;oBACb,CAAC;oBACD,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAA;oBAC9B,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;oBACrB,OAAM;gBACR,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,SAAS,GAAG,KAAK,CAAA;oBACjB,IACE,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,UAAU,KAAK,SAAS;wBACrD,OAAO,IAAI,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,UAAU,EAClD,CAAC;wBACD,MAAK;oBACP,CAAC;oBACD,OAAO,IAAI,CAAC,CAAA;oBACZ,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAC5B,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,UAAU,IAAI,CAAC,CAAC,CACnE,CAAA;gBACH,CAAC;YACH,CAAC;YACD,MAAM,IAAI,cAAc,CAAC,8BAA8B,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAA;QACtF,CAAC,CAAC,CAAA;IACJ,CAAC;IAEO,KAAK,CAAC,SAA0B;QACtC,MAAM,gBAAgB,GAAG,GAAS,EAAE;YAClC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;QACzC,CAAC,CAAA;QACD,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,aAAa,EAAE,CAAA;QAC5C,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAA;QACtC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAA;QACpC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAA;IACxC,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,IAAY,EAAE,OAAmB;QACjD,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QACnC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAC9B,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,EAClD,mBAAmB,MAAM,CAAC,IAAI,CAAC,SAAS,CACzC,CAAA;QACD,OAAO,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,CAAA;IACzE,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,IAAY;QAC7B,MAAM,IAAI,CAAC,OAAO,CAChB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EACtC,6BAA6B,IAAI,IAAI,CACtC,CAAA;IACH,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,QAAgB,EAAE,OAAe,EAAE,UAAkB;QACrE,MAAM,IAAI,CAAC,OAAO,CAChB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,EAAE,UAAU,CAAC,EAC9D,4BAA4B,OAAO,kBAAkB,QAAQ,IAAI,CAClE,CAAA;IACH,CAAC;IAED,KAAK,CAAC,qBAAqB,CACzB,QAAgB,EAChB,OAAe,EACf,UAAkB,EAClB,mBAA2B;QAE3B,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAClC,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,EAAE,UAAU,CAAC,CAAA;YACtE,IAAI,KAAK,CAAC,aAAa,KAAK,mBAAmB;gBAAE,OAAM;YACvD,MAAM,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;gBACxB,QAAQ;gBACR,OAAO;gBACP,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,aAAa,EAAE,mBAAmB;aACnC,CAAC,CAAA;QACJ,CAAC,EAAE,4BAA4B,OAAO,kBAAkB,QAAQ,wBAAwB,CAAC,CAAA;IAC3F,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,QAAgB,EAAE,OAAe;QAC7D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAC9B,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EACnD,0BAA0B,OAAO,IAAI,CACtC,CAAA;QACD,OAAO,KAAK,EAAE,eAAe,CAAA;IAC/B,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,QAAgB,EAAE,OAAe;QAC5D,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QACxE,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,MAAM,IAAI,cAAc,CACtB,WAAW,OAAO,kBAAkB,QAAQ,mBAAmB,EAC/D,KAAK,CACN,CAAA;QACH,CAAC;QACD,OAAO,UAAU,CAAA;IACnB,CAAC;IAED,KAAK,CAAC,qBAAqB,CACzB,QAAgB,EAChB,OAAe;QAEf,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,MAAM,IAAI,CAAC,OAAO,CACxC,CAAC,MAAM,EAAE,EAAE,CACT,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EACzF,6BAA6B,OAAO,IAAI,CACzC,CAAA;QACD,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACpB,MAAM,IAAI,cAAc,CAAC,YAAY,QAAQ,mBAAmB,EAAE,KAAK,CAAC,CAAA;QAC1E,CAAC;QACD,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACnB,MAAM,IAAI,cAAc,CACtB,WAAW,OAAO,kBAAkB,QAAQ,mBAAmB,EAC/D,KAAK,CACN,CAAA;QACH,CAAC;QACD,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,EAAE,CAAA;IACnD,CAAC;IAED,KAAK,CAAC,uBAAuB,CAC3B,QAAgB,EAChB,OAAe;QAEf,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAC/B,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,CAAC,EAC3C,4BAA4B,MAAM,CAAC,QAAQ,CAAC,EAAE,CAC/C,CAAA;QACD,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,SAAS,CAAA;QACrC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAC9B,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EACnD,2BAA2B,MAAM,CAAC,OAAO,CAAC,EAAE,CAC7C,CAAA;QACD,OAAO,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,CAAA;IAChF,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,QAAgB,EAChB,OAAe,EACf,QAA+B,EAC/B,OAAgB;QAEhB,MAAM,IAAI,CAAC,OAAO,CAChB,CAAC,MAAM,EAAE,EAAE,CACT,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;YAClB,QAAQ;YACR,OAAO;YACP,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACxE,SAAS,EAAE,cAAc,CAAC,OAAO,CAAC;SACnC,CAAC,EACJ,6BAA6B,OAAO,IAAI,CACzC,CAAA;IACH,CAAC;IAED,KAAK,CAAC,sBAAsB,CAC1B,QAAgB,EAChB,OAAe,EACf,OAAmB,EACnB,OAA6C,EAC7C,YAAkC,EAClC,WAAoB;QAEpB,MAAM,IAAI,CAAC,uBAAuB,CAChC,QAAQ,EACR,OAAO,EACP,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,EACtB,YAAY,EACZ,WAAW,CACZ,CAAA;IACH,CAAC;IAED,KAAK,CAAC,uBAAuB,CAC3B,QAAgB,EAChB,OAAe,EACf,QAAuC,EACvC,YAAkC,EAClC,WAAoB;QAEpB,MAAM,IAAI,CAAC,OAAO,CAChB,CAAC,MAAM,EAAE,EAAE,CACT,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;YAClB,QAAQ;YACR,OAAO;YACP,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;gBAChD,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;gBAC7B,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;oBAC3C,GAAG,EAAE,gBAAgB,CAAC,MAAM,CAAC,GAAG,CAAC;oBACjC,KAAK,EAAE,iBAAiB,CAAC,KAAK,CAAC;iBAChC,CAAC,CAAC;aACJ,CAAC,CAAC;YACH,SAAS,EACP,WAAW,KAAK,SAAS;gBACvB,CAAC,CAAC,YAAY,CAAC,WAAW,CAAC,WAAW,CAAC;gBACvC,CAAC,CAAC,YAAY,KAAK,SAAS;oBAC1B,CAAC,CAAC,YAAY,CAAC,UAAU,CACrB,OAAO,YAAY,KAAK,QAAQ;wBAC9B,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC;wBACnC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAC9B;oBACH,CAAC,CAAC,YAAY,CAAC,QAAQ;SAC9B,CAAC,EACJ,6BAA6B,OAAO,IAAI,CACzC,CAAA;IACH,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,QAAgB,EAChB,OAAe,EACf,MAAsB,EACtB,QAAyB,EACzB,KAAa,EACb,UAAmB;QAEnB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAC9B,CAAC,MAAM,EAAE,EAAE,CACT,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;YAClB,QAAQ;YACR,OAAO;YACP,WAAW,EAAE,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI;YACjE,QAAQ,EAAE,cAAc,CAAC,MAAM,CAAC;YAChC,eAAe,EAAE,qBAAqB,CAAC,QAAQ,CAAC;YAChD,KAAK;YACL,UAAU,EAAE,UAAU;SACvB,CAAC,EACJ,0BAA0B,OAAO,IAAI,CACtC,CAAA;QACD,OAAO,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YACtC,OAAO,EAAE,IAAI,UAAU,CACrB,OAAO,CAAC,OAAO,CAAC,MAAM,EACtB,OAAO,CAAC,OAAO,CAAC,UAAU,EAC1B,OAAO,CAAC,OAAO,CAAC,UAAU,CAC3B;YACD,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM;YAC9B,eAAe,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,KAAM;YACrE,OAAO,EAAE,kBAAkB,CAAC,OAAO,CAAC,WAAW,CAAC;SACjD,CAAC,CAAC,CAAA;IACL,CAAC;IAED,KAAK,CAAC,WAAW,CACf,QAAgB,EAChB,OAAe,EACf,MAAsB,EACtB,WAAmB,EACnB,MAAc;QAEd,MAAM,IAAI,CAAC,OAAO,CAChB,CAAC,MAAM,EAAE,EAAE,CACT,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC;YAClB,QAAQ;YACR,OAAO;YACP,QAAQ,EAAE,cAAc,CAAC,MAAM,CAAC;YAChC,WAAW;YACX,MAAM;SACP,CAAC,EACJ,sCAAsC,OAAO,IAAI,CAClD,CAAA;IACH,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,QAAgB,EAChB,OAAe,EACf,MAA4B,EAC5B,WAAmB;QAEnB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAC/B,CAAC,MAAM,EAAE,EAAE,CACT,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC;YAChB,QAAQ;YACR,OAAO;YACP,QAAQ,EAAE,oBAAoB,CAAC,MAAM,CAAC;YACtC,WAAW;SACZ,CAAC,EACJ,qCAAqC,OAAO,IAAI,CACjD,CAAA;QACD,OAAO,MAAM,KAAK,IAAI;YACpB,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,CAAA;IAChF,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,QAAgB,EAAE,OAAe,EAAE,IAAY;QACrE,MAAM,IAAI,CAAC,OAAO,CAChB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,EAC/D,mCAAmC,IAAI,IAAI,CAC5C,CAAA;QACD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,QAAQ,KAAK,OAAO,KAAK,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAA;IAC1F,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,QAAgB,EAAE,OAAe,EAAE,IAAY;QACtE,MAAM,IAAI,CAAC,OAAO,CAChB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EACpE,oCAAoC,IAAI,IAAI,CAC7C,CAAA;QACD,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,QAAQ,KAAK,OAAO,KAAK,IAAI,EAAE,CAAC,CAAA;IAChE,CAAC;IAED,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,MAAM,GAAG,IAAI,CAAA;QAClB,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAA;QAC3B,IAAI,IAAI,CAAC,SAAS,KAAK,OAAO;YAAE,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAA;IAC7D,CAAC;CACF"}
1
+ {"version":3,"file":"apache-iggy.js","sourceRoot":"","sources":["../../src/iggy/apache-iggy.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"rbac.d.ts","sourceRoot":"","sources":["../../src/managed/rbac.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAE7D,OAAO,EAAkB,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAY5E,OAAO,EACL,KAAK,iBAAiB,EAEtB,KAAK,YAAY,EACjB,KAAK,IAAI,EACT,KAAK,WAAW,EAEjB,MAAM,kBAAkB,CAAA;AAEzB,MAAM,MAAM,WAAW,GAAG,gBAAgB,CAAA;AAwB1C,wBAAsB,MAAM,CAC1B,OAAO,EAAE,WAAW,EACpB,YAAY,EAAE,YAAY,GACzB,OAAO,CAAC,WAAW,CAAC,CAItB;AAED,wBAAsB,SAAS,CAC7B,OAAO,EAAE,WAAW,EACpB,YAAY,EAAE,YAAY,EAC1B,OAAO,GAAE;IAAE,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,GACvE,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC,CAI1B;AAED,wBAAsB,OAAO,CAC3B,OAAO,EAAE,WAAW,EACpB,YAAY,EAAE,YAAY,EAC1B,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC,CAK3B;AAED,wBAAsB,WAAW,CAC/B,OAAO,EAAE,WAAW,EACpB,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAI5B;AAED,wBAAsB,UAAU,CAC9B,OAAO,EAAE,WAAW,EACpB,YAAY,EAAE,YAAY,EAC1B,IAAI,EAAE,IAAI,GACT,OAAO,CAAC,IAAI,CAAC,CAGf;AAED,wBAAsB,UAAU,CAC9B,OAAO,EAAE,WAAW,EACpB,YAAY,EAAE,YAAY,EAC1B,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,CAAC,CAGf;AAED,wBAAsB,SAAS,CAC7B,OAAO,EAAE,WAAW,EACpB,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,SAAS,MAAM,EAAE,EACxB,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,IAAI,CAAC,CAOf;AAED,wBAAsB,YAAY,CAChC,OAAO,EAAE,WAAW,EACpB,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,YAAY,EACrB,KAAK,EAAE,MAAM,EACb,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,iBAAiB,CAAC,CAQ5B"}
1
+ {"version":3,"file":"rbac.d.ts","sourceRoot":"","sources":["../../src/managed/rbac.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAE7D,OAAO,EAAkB,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAY5E,OAAO,EACL,KAAK,iBAAiB,EAEtB,KAAK,YAAY,EACjB,KAAK,IAAI,EACT,KAAK,WAAW,EAEjB,MAAM,kBAAkB,CAAA;AAEzB,MAAM,MAAM,WAAW,GAAG,gBAAgB,CAAA;AAwB1C,wBAAsB,MAAM,CAC1B,OAAO,EAAE,WAAW,EACpB,YAAY,EAAE,YAAY,GACzB,OAAO,CAAC,WAAW,CAAC,CAItB;AAED,wBAAsB,SAAS,CAC7B,OAAO,EAAE,WAAW,EACpB,YAAY,EAAE,YAAY,EAC1B,OAAO,GAAE;IAAE,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,GACvE,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC,CAI1B;AAED,wBAAsB,OAAO,CAC3B,OAAO,EAAE,WAAW,EACpB,YAAY,EAAE,YAAY,EAC1B,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC,CAK3B;AAED,wBAAsB,WAAW,CAC/B,OAAO,EAAE,WAAW,EACpB,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAI5B;AAED,wBAAsB,UAAU,CAC9B,OAAO,EAAE,WAAW,EACpB,YAAY,EAAE,YAAY,EAC1B,IAAI,EAAE,IAAI,GACT,OAAO,CAAC,IAAI,CAAC,CAMf;AAED,wBAAsB,UAAU,CAC9B,OAAO,EAAE,WAAW,EACpB,YAAY,EAAE,YAAY,EAC1B,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,CAAC,CAMf;AAED,wBAAsB,SAAS,CAC7B,OAAO,EAAE,WAAW,EACpB,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,SAAS,MAAM,EAAE,EACxB,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,IAAI,CAAC,CAQf;AAED,wBAAsB,YAAY,CAChC,OAAO,EAAE,WAAW,EACpB,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,YAAY,EACrB,KAAK,EAAE,MAAM,EACb,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,iBAAiB,CAAC,CAQ5B"}
@@ -1,3 +1,4 @@
1
+ import { randomUUID } from "node:crypto";
1
2
  import { AuthzExecutionError, ProtocolError, UnsupportedError } from "../client/errors.js";
2
3
  import { executeManaged } from "../client/managed.js";
3
4
  import { AuthzHistoryCommand, BindRolesCommand, DefineRoleCommand, DeleteRoleCommand, GetBindingsCommand, GetRoleCommand, ListRolesCommand, WhoamiCommand } from "../wire/commands.js";
@@ -46,11 +47,17 @@ export async function getBindings(backend, capabilities, userId) {
46
47
  }
47
48
  export async function defineRole(backend, capabilities, role) {
48
49
  validateRoleName(role.name);
49
- await executeAuthzOk(backend, capabilities, DefineRoleCommand, { role });
50
+ await executeAuthzOk(backend, capabilities, DefineRoleCommand, {
51
+ role,
52
+ mutationId: randomUUID()
53
+ });
50
54
  }
51
55
  export async function deleteRole(backend, capabilities, name) {
52
56
  validateRoleName(name);
53
- await executeAuthzOk(backend, capabilities, DeleteRoleCommand, { name });
57
+ await executeAuthzOk(backend, capabilities, DeleteRoleCommand, {
58
+ name,
59
+ mutationId: randomUUID()
60
+ });
54
61
  }
55
62
  export async function bindRoles(backend, capabilities, userId, roles, expectRevision) {
56
63
  for (const role of roles)
@@ -58,7 +65,8 @@ export async function bindRoles(backend, capabilities, userId, roles, expectRevi
58
65
  await executeAuthzOk(backend, capabilities, BindRolesCommand, {
59
66
  userId,
60
67
  roles,
61
- ...(expectRevision !== undefined ? { expectRevision } : {})
68
+ ...(expectRevision !== undefined ? { expectRevision } : {}),
69
+ mutationId: randomUUID()
62
70
  });
63
71
  }
64
72
  export async function authzHistory(backend, capabilities, subject, limit, afterRevision) {
@@ -1 +1 @@
1
- {"version":3,"file":"rbac.js","sourceRoot":"","sources":["../../src/managed/rbac.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rbac.js","sourceRoot":"","sources":["../../src/managed/rbac.ts"],"names":[],"mappings":"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"}
@@ -2,5 +2,6 @@ export declare class AsyncOnce<T> {
2
2
  private promise;
3
3
  static resolved<T>(value: T): AsyncOnce<T>;
4
4
  get(compute: () => Promise<T>): Promise<T>;
5
+ clear(): void;
5
6
  }
6
7
  //# sourceMappingURL=async-once.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"async-once.d.ts","sourceRoot":"","sources":["../../src/runtime/async-once.ts"],"names":[],"mappings":"AAAA,qBAAa,SAAS,CAAC,CAAC;IACtB,OAAO,CAAC,OAAO,CAAwB;IAEvC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAIzC;IAEK,GAAG,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAQ/C;CACF"}
1
+ {"version":3,"file":"async-once.d.ts","sourceRoot":"","sources":["../../src/runtime/async-once.ts"],"names":[],"mappings":"AAAA,qBAAa,SAAS,CAAC,CAAC;IACtB,OAAO,CAAC,OAAO,CAAwB;IAEvC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAIzC;IAEK,GAAG,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAQ/C;IAED,KAAK,IAAI,IAAI,CAEZ;CACF"}
@@ -15,5 +15,8 @@ export class AsyncOnce {
15
15
  throw error;
16
16
  }
17
17
  }
18
+ clear() {
19
+ this.promise = undefined;
20
+ }
18
21
  }
19
22
  //# sourceMappingURL=async-once.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"async-once.js","sourceRoot":"","sources":["../../src/runtime/async-once.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,SAAS;IACZ,OAAO,CAAwB;IAEvC,MAAM,CAAC,QAAQ,CAAI,KAAQ;QACzB,MAAM,IAAI,GAAG,IAAI,SAAS,EAAK,CAAA;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QACrC,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,OAAyB;QACjC,IAAI,CAAC,OAAO,KAAK,OAAO,EAAE,CAAA;QAC1B,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,OAAO,CAAA;QAC3B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,OAAO,GAAG,SAAS,CAAA;YACxB,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"async-once.js","sourceRoot":"","sources":["../../src/runtime/async-once.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,SAAS;IACZ,OAAO,CAAwB;IAEvC,MAAM,CAAC,QAAQ,CAAI,KAAQ;QACzB,MAAM,IAAI,GAAG,IAAI,SAAS,EAAK,CAAA;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QACrC,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,OAAyB;QACjC,IAAI,CAAC,OAAO,KAAK,OAAO,EAAE,CAAA;QAC1B,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,OAAO,CAAA;QAC3B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,OAAO,GAAG,SAAS,CAAA;YACxB,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;IAED,KAAK;QACH,IAAI,CAAC,OAAO,GAAG,SAAS,CAAA;IAC1B,CAAC;CACF"}