@fairmint/canton-node-sdk 0.0.258 → 0.0.260

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 (53) hide show
  1. package/build/src/core/auth/AuthenticationManager.d.ts +11 -2
  2. package/build/src/core/auth/AuthenticationManager.d.ts.map +1 -1
  3. package/build/src/core/auth/AuthenticationManager.js +109 -7
  4. package/build/src/core/auth/AuthenticationManager.js.map +1 -1
  5. package/build/src/core/http/HttpClient.d.ts +4 -3
  6. package/build/src/core/http/HttpClient.d.ts.map +1 -1
  7. package/build/src/core/http/HttpClient.js +11 -21
  8. package/build/src/core/http/HttpClient.js.map +1 -1
  9. package/build/src/core/http/abort.d.ts +4 -0
  10. package/build/src/core/http/abort.d.ts.map +1 -1
  11. package/build/src/core/http/abort.js +19 -0
  12. package/build/src/core/http/abort.js.map +1 -1
  13. package/build/src/core/http/request-retry.d.ts +14 -0
  14. package/build/src/core/http/request-retry.d.ts.map +1 -1
  15. package/build/src/core/http/request-retry.js +16 -0
  16. package/build/src/core/http/request-retry.js.map +1 -1
  17. package/build/src/utils/parsers/event-parser.d.ts +46 -0
  18. package/build/src/utils/parsers/event-parser.d.ts.map +1 -1
  19. package/build/src/utils/parsers/event-parser.js +137 -4
  20. package/build/src/utils/parsers/event-parser.js.map +1 -1
  21. package/build/src/utils/token-standard/index.d.ts +1 -0
  22. package/build/src/utils/token-standard/index.d.ts.map +1 -1
  23. package/build/src/utils/token-standard/index.js +1 -0
  24. package/build/src/utils/token-standard/index.js.map +1 -1
  25. package/build/src/utils/token-standard/v1/allocation.d.ts +34 -0
  26. package/build/src/utils/token-standard/v1/allocation.d.ts.map +1 -0
  27. package/build/src/utils/token-standard/v1/allocation.js +67 -0
  28. package/build/src/utils/token-standard/v1/allocation.js.map +1 -0
  29. package/build/src/utils/token-standard/v1/burn-mint.d.ts +43 -0
  30. package/build/src/utils/token-standard/v1/burn-mint.d.ts.map +1 -0
  31. package/build/src/utils/token-standard/v1/burn-mint.js +54 -0
  32. package/build/src/utils/token-standard/v1/burn-mint.js.map +1 -0
  33. package/build/src/utils/token-standard/v1/constants.d.ts +54 -0
  34. package/build/src/utils/token-standard/v1/constants.d.ts.map +1 -0
  35. package/build/src/utils/token-standard/v1/constants.js +66 -0
  36. package/build/src/utils/token-standard/v1/constants.js.map +1 -0
  37. package/build/src/utils/token-standard/v1/errors.d.ts +12 -0
  38. package/build/src/utils/token-standard/v1/errors.d.ts.map +1 -0
  39. package/build/src/utils/token-standard/v1/errors.js +17 -0
  40. package/build/src/utils/token-standard/v1/errors.js.map +1 -0
  41. package/build/src/utils/token-standard/v1/index.d.ts +7 -0
  42. package/build/src/utils/token-standard/v1/index.d.ts.map +1 -0
  43. package/build/src/utils/token-standard/v1/index.js +23 -0
  44. package/build/src/utils/token-standard/v1/index.js.map +1 -0
  45. package/build/src/utils/token-standard/v1/result.d.ts +27 -0
  46. package/build/src/utils/token-standard/v1/result.d.ts.map +1 -0
  47. package/build/src/utils/token-standard/v1/result.js +79 -0
  48. package/build/src/utils/token-standard/v1/result.js.map +1 -0
  49. package/build/src/utils/token-standard/v1/transfer.d.ts +27 -0
  50. package/build/src/utils/token-standard/v1/transfer.d.ts.map +1 -0
  51. package/build/src/utils/token-standard/v1/transfer.js +51 -0
  52. package/build/src/utils/token-standard/v1/transfer.js.map +1 -0
  53. package/package.json +1 -1
@@ -1,6 +1,22 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DEFAULT_READ_RETRY_MAX_ATTEMPTS = exports.DEFAULT_READ_RETRY_DELAYS_MS = void 0;
4
+ exports.defaultReadRetryBackoffMs = defaultReadRetryBackoffMs;
3
5
  exports.snapshotHttpRequestOptions = snapshotHttpRequestOptions;
6
+ /**
7
+ * Sleeps after successive semantic-read failures so the final retry starts at 60s:
8
+ * 2s + 5s + 10s + 20s + 23s.
9
+ */
10
+ exports.DEFAULT_READ_RETRY_DELAYS_MS = [2000, 5000, 10000, 20000, 23000];
11
+ /** Six total attempts: one initial request plus one retry per delay. */
12
+ exports.DEFAULT_READ_RETRY_MAX_ATTEMPTS = exports.DEFAULT_READ_RETRY_DELAYS_MS.length + 1;
13
+ /**
14
+ * Maps `HttpClient.waitForRetry`'s failed-attempt number onto {@link DEFAULT_READ_RETRY_DELAYS_MS}.
15
+ * After attempt 1 fails, sleep delays[0] (2s); after attempt 5 fails, sleep delays[4] (23s).
16
+ */
17
+ function defaultReadRetryBackoffMs(context) {
18
+ return exports.DEFAULT_READ_RETRY_DELAYS_MS[context.attempt - 1] ?? 0;
19
+ }
4
20
  function snapshotHttpRequestOptions(options) {
5
21
  const { signal, retry, requestSemantics, resolveReadAttemptUrl } = options;
6
22
  const retrySnapshot = retry === undefined ? undefined : Object.freeze({ ...retry });
@@ -1 +1 @@
1
- {"version":3,"file":"request-retry.js","sourceRoot":"","sources":["../../../../src/core/http/request-retry.ts"],"names":[],"mappings":";;;AAmKA,oCACE,OAAgE;IAEhE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,GAAG,OAAO,CAAC;IAC3E,MAAM,aAAa,GACjB,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;IAEhE,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3C,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChE,GAAG,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/D,GAAG,CAAC,qBAAqB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC1E,CAAsE,CAAC;AAC1E,CAAC"}
1
+ {"version":3,"file":"request-retry.js","sourceRoot":"","sources":["../../../../src/core/http/request-retry.ts"],"names":[],"mappings":";;;;;AAgHA;;;GAGG;AACU,QAAA,4BAA4B,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAU,CAAC;AAEvF,wEAAwE;AAC3D,QAAA,+BAA+B,GAAG,QAAA,4BAA4B,CAAC,MAAM,GAAG,CAAC,CAAC;AAEvF;;;GAGG;AACH,mCAA0C,OAAqC;IAC7E,OAAO,QAAA,4BAA4B,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;AAChE,CAAC;AAqDD,oCACE,OAAgE;IAEhE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,GAAG,OAAO,CAAC;IAC3E,MAAM,aAAa,GACjB,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC;IAEhE,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3C,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChE,GAAG,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/D,GAAG,CAAC,qBAAqB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC1E,CAAsE,CAAC;AAC1E,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { CantonError, type ErrorContext } from '../../core/errors';
1
2
  export interface ParsedTemplateId {
2
3
  readonly packageId: string;
3
4
  readonly module: string;
@@ -54,8 +55,53 @@ export interface ParsedTransactionEvents {
54
55
  }
55
56
  export declare function parseTemplateId(templateId: string): ParsedTemplateId;
56
57
  export declare function hasTemplateName(templateId: string, expectedTemplateName: string): boolean;
58
+ /** The `Module:Template` part of a template id, dropping the leading package id or `#package-name`. */
59
+ export declare function qualifiedTemplateName(templateId: string): string;
60
+ /**
61
+ * Match a template id from a ledger event against a filter, ignoring the package component.
62
+ *
63
+ * A create event always names the package _id_ that produced it, which a caller cannot know in advance; a filter is
64
+ * usually written with a package _name_ (`#MyPackage:Module:Template`) or without a package at all (`Module:Template`,
65
+ * or just `Template`). All three forms match here.
66
+ */
67
+ export declare function matchesTemplateId(templateId: string, filter: string): boolean;
57
68
  export declare function parseCreatedEvent(event: unknown): ParsedCreatedEvent | null;
58
69
  export declare function parseArchivedEvent(event: unknown): ParsedArchivedEvent | null;
59
70
  export declare function parseExercisedEvent(event: unknown): ParsedExercisedEvent | null;
71
+ /**
72
+ * The raw events of a transaction in node-id order, from whichever shape the response used: a tree keyed by node id, or
73
+ * a flat event array, wrapped in `transactionTree`, in `transaction`, or on its own.
74
+ */
75
+ export declare function getTransactionEvents(transaction: unknown): readonly unknown[];
60
76
  export declare function extractEventsFromTransaction(transaction: unknown): ParsedTransactionEvents;
77
+ export declare const TransactionParseErrorCode: {
78
+ readonly EXERCISE_RESULT_NOT_FOUND: 'TRANSACTION_EXERCISE_RESULT_NOT_FOUND';
79
+ readonly UPDATE_ID_NOT_FOUND: 'TRANSACTION_UPDATE_ID_NOT_FOUND';
80
+ };
81
+ export type TransactionParseErrorCode = (typeof TransactionParseErrorCode)[keyof typeof TransactionParseErrorCode];
82
+ /** Thrown when a transaction response does not contain something the caller asserted it would. */
83
+ export declare class TransactionParseError extends CantonError {
84
+ readonly name: string;
85
+ constructor(code: TransactionParseErrorCode, message: string, context?: ErrorContext);
86
+ }
87
+ /** The update id of a transaction response, or `undefined` when it names none. */
88
+ export declare function getTransactionUpdateId(transaction: unknown): string | undefined;
89
+ /** The update id, for a caller that needs to correlate a submission with what the ledger did. */
90
+ export declare function requireTransactionUpdateId(transaction: unknown): string;
91
+ /** Every exercise of `choice` in the transaction, in node-id order. */
92
+ export declare function findExercisedEvents(transaction: unknown, choice: string): ParsedExercisedEvent[];
93
+ /** The first exercise of any of `choices`, in node-id order — the order the transaction produced them. */
94
+ export declare function findExercisedEvent(transaction: unknown, choices: string | readonly string[]): ParsedExercisedEvent | undefined;
95
+ /** The return value of the first exercise of `choice`, or `undefined` when the transaction contains none. */
96
+ export declare function findExerciseResult(transaction: unknown, choice: string | readonly string[]): unknown;
97
+ /**
98
+ * The return value of the named choice. A caller asking for it is asserting the transaction contains it, so a
99
+ * transaction without that exercise is reported rather than returned as `undefined`.
100
+ */
101
+ export declare function requireExerciseResult(transaction: unknown, choice: string | readonly string[]): unknown;
102
+ /**
103
+ * Contract ids created by the transaction, in node-id order, optionally narrowed to one template. The filter is matched
104
+ * package-agnostically by {@link matchesTemplateId}.
105
+ */
106
+ export declare function findCreatedContractIds(transaction: unknown, templateFilter?: string): string[];
61
107
  //# sourceMappingURL=event-parser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"event-parser.d.ts","sourceRoot":"","sources":["../../../../src/utils/parsers/event-parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event-parser.d.ts","sourceRoot":"","sources":["../../../../src/utils/parsers/event-parser.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,23 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TransactionParseError = exports.TransactionParseErrorCode = void 0;
3
4
  exports.parseTemplateId = parseTemplateId;
4
5
  exports.hasTemplateName = hasTemplateName;
6
+ exports.qualifiedTemplateName = qualifiedTemplateName;
7
+ exports.matchesTemplateId = matchesTemplateId;
5
8
  exports.parseCreatedEvent = parseCreatedEvent;
6
9
  exports.parseArchivedEvent = parseArchivedEvent;
7
10
  exports.parseExercisedEvent = parseExercisedEvent;
11
+ exports.getTransactionEvents = getTransactionEvents;
8
12
  exports.extractEventsFromTransaction = extractEventsFromTransaction;
13
+ exports.getTransactionUpdateId = getTransactionUpdateId;
14
+ exports.requireTransactionUpdateId = requireTransactionUpdateId;
15
+ exports.findExercisedEvents = findExercisedEvents;
16
+ exports.findExercisedEvent = findExercisedEvent;
17
+ exports.findExerciseResult = findExerciseResult;
18
+ exports.requireExerciseResult = requireExerciseResult;
19
+ exports.findCreatedContractIds = findCreatedContractIds;
20
+ const errors_1 = require("../../core/errors");
9
21
  const utils_1 = require("../../core/utils");
10
22
  const VARIANT_KEYS = {
11
23
  created: ['CreatedTreeEvent', 'CreatedEvent', 'createdEvent'],
@@ -66,6 +78,31 @@ function hasTemplateName(templateId, expectedTemplateName) {
66
78
  return false;
67
79
  }
68
80
  }
81
+ /** The `Module:Template` part of a template id, dropping the leading package id or `#package-name`. */
82
+ function qualifiedTemplateName(templateId) {
83
+ const firstColon = templateId.indexOf(':');
84
+ return firstColon === -1 ? templateId : templateId.slice(firstColon + 1);
85
+ }
86
+ /**
87
+ * Match a template id from a ledger event against a filter, ignoring the package component.
88
+ *
89
+ * A create event always names the package _id_ that produced it, which a caller cannot know in advance; a filter is
90
+ * usually written with a package _name_ (`#MyPackage:Module:Template`) or without a package at all (`Module:Template`,
91
+ * or just `Template`). All three forms match here.
92
+ */
93
+ function matchesTemplateId(templateId, filter) {
94
+ if (templateId === filter)
95
+ return true;
96
+ const idSuffix = templateId.split(':').slice(1);
97
+ if (idSuffix.length === 0)
98
+ return false;
99
+ const filterParts = filter.split(':');
100
+ const filterSuffix = filterParts.length > idSuffix.length ? filterParts.slice(1) : filterParts;
101
+ if (filterSuffix.length === 0 || filterSuffix.length > idSuffix.length)
102
+ return false;
103
+ const offset = idSuffix.length - filterSuffix.length;
104
+ return filterSuffix.every((part, index) => part === idSuffix[offset + index]);
105
+ }
69
106
  function parseCreatedEvent(event) {
70
107
  const value = unwrapVariant(event, 'created');
71
108
  if (!value)
@@ -229,12 +266,14 @@ function getEventsById(transaction) {
229
266
  ];
230
267
  for (const path of paths) {
231
268
  const eventsById = getNestedRecord(transaction, path);
232
- if (eventsById)
269
+ if (eventsById && Object.keys(eventsById).length > 0)
233
270
  return eventsById;
234
271
  }
235
272
  return null;
236
273
  }
237
274
  function getEventArray(transaction) {
275
+ if (Array.isArray(transaction))
276
+ return transaction;
238
277
  const paths = [
239
278
  ['events'],
240
279
  ['transactionTree', 'events'],
@@ -247,10 +286,29 @@ function getEventArray(transaction) {
247
286
  }
248
287
  return null;
249
288
  }
250
- function extractEventsFromTransaction(transaction) {
289
+ /** Node ids are numeric strings, but a map preserves whatever order it was built with. */
290
+ function compareNodeIds(left, right) {
291
+ const leftNumber = Number(left);
292
+ const rightNumber = Number(right);
293
+ if (Number.isFinite(leftNumber) && Number.isFinite(rightNumber))
294
+ return leftNumber - rightNumber;
295
+ return left < right ? -1 : left > right ? 1 : 0;
296
+ }
297
+ /**
298
+ * The raw events of a transaction in node-id order, from whichever shape the response used: a tree keyed by node id, or
299
+ * a flat event array, wrapped in `transactionTree`, in `transaction`, or on its own.
300
+ */
301
+ function getTransactionEvents(transaction) {
251
302
  const eventsById = getEventsById(transaction);
252
- const events = eventsById ? Object.values(eventsById) : (getEventArray(transaction) ?? []);
253
- return events.reduce((acc, event) => {
303
+ if (eventsById) {
304
+ return Object.keys(eventsById)
305
+ .sort(compareNodeIds)
306
+ .map((key) => eventsById[key]);
307
+ }
308
+ return getEventArray(transaction) ?? [];
309
+ }
310
+ function extractEventsFromTransaction(transaction) {
311
+ return getTransactionEvents(transaction).reduce((acc, event) => {
254
312
  const created = parseCreatedEvent(event);
255
313
  if (created)
256
314
  acc.created.push(created);
@@ -263,4 +321,79 @@ function extractEventsFromTransaction(transaction) {
263
321
  return acc;
264
322
  }, { created: [], archived: [], exercised: [] });
265
323
  }
324
+ exports.TransactionParseErrorCode = {
325
+ EXERCISE_RESULT_NOT_FOUND: 'TRANSACTION_EXERCISE_RESULT_NOT_FOUND',
326
+ UPDATE_ID_NOT_FOUND: 'TRANSACTION_UPDATE_ID_NOT_FOUND',
327
+ };
328
+ /** Thrown when a transaction response does not contain something the caller asserted it would. */
329
+ class TransactionParseError extends errors_1.CantonError {
330
+ constructor(code, message, context) {
331
+ super(message, code, context);
332
+ this.name = 'TransactionParseError';
333
+ }
334
+ }
335
+ exports.TransactionParseError = TransactionParseError;
336
+ /** The update id of a transaction response, or `undefined` when it names none. */
337
+ function getTransactionUpdateId(transaction) {
338
+ const paths = [
339
+ ['updateId'],
340
+ ['transactionTree', 'updateId'],
341
+ ['transaction', 'updateId'],
342
+ ];
343
+ for (const path of paths) {
344
+ let current = transaction;
345
+ for (const segment of path) {
346
+ if (!(0, utils_1.isRecord)(current)) {
347
+ current = undefined;
348
+ break;
349
+ }
350
+ current = current[segment];
351
+ }
352
+ if ((0, utils_1.isString)(current) && current.length > 0)
353
+ return current;
354
+ }
355
+ return undefined;
356
+ }
357
+ /** The update id, for a caller that needs to correlate a submission with what the ledger did. */
358
+ function requireTransactionUpdateId(transaction) {
359
+ const updateId = getTransactionUpdateId(transaction);
360
+ if (updateId === undefined) {
361
+ throw new TransactionParseError(exports.TransactionParseErrorCode.UPDATE_ID_NOT_FOUND, 'The transaction names no update id.');
362
+ }
363
+ return updateId;
364
+ }
365
+ /** Every exercise of `choice` in the transaction, in node-id order. */
366
+ function findExercisedEvents(transaction, choice) {
367
+ return extractEventsFromTransaction(transaction).exercised.filter((event) => event.choice === choice);
368
+ }
369
+ /** The first exercise of any of `choices`, in node-id order — the order the transaction produced them. */
370
+ function findExercisedEvent(transaction, choices) {
371
+ const wanted = typeof choices === 'string' ? [choices] : choices;
372
+ return extractEventsFromTransaction(transaction).exercised.find((event) => wanted.includes(event.choice));
373
+ }
374
+ /** The return value of the first exercise of `choice`, or `undefined` when the transaction contains none. */
375
+ function findExerciseResult(transaction, choice) {
376
+ return findExercisedEvent(transaction, choice)?.exerciseResult;
377
+ }
378
+ /**
379
+ * The return value of the named choice. A caller asking for it is asserting the transaction contains it, so a
380
+ * transaction without that exercise is reported rather than returned as `undefined`.
381
+ */
382
+ function requireExerciseResult(transaction, choice) {
383
+ const exercised = findExercisedEvent(transaction, choice);
384
+ if (!exercised) {
385
+ const wanted = typeof choice === 'string' ? choice : choice.join(', ');
386
+ throw new TransactionParseError(exports.TransactionParseErrorCode.EXERCISE_RESULT_NOT_FOUND, `The transaction contains no ${wanted} exercise.`, { choice: wanted, updateId: getTransactionUpdateId(transaction) });
387
+ }
388
+ return exercised.exerciseResult;
389
+ }
390
+ /**
391
+ * Contract ids created by the transaction, in node-id order, optionally narrowed to one template. The filter is matched
392
+ * package-agnostically by {@link matchesTemplateId}.
393
+ */
394
+ function findCreatedContractIds(transaction, templateFilter) {
395
+ return extractEventsFromTransaction(transaction)
396
+ .created.filter((created) => templateFilter === undefined || matchesTemplateId(created.templateId, templateFilter))
397
+ .map((created) => created.contractId);
398
+ }
266
399
  //# sourceMappingURL=event-parser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"event-parser.js","sourceRoot":"","sources":["../../../../src/utils/parsers/event-parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event-parser.js","sourceRoot":"","sources":["../../../../src/utils/parsers/event-parser.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,3 @@
1
+ export * from './v1';
1
2
  export * from './v2';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/token-standard/index.ts"],"names":[],"mappings":"AAAA,cAAc,MAAM,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/token-standard/index.ts"],"names":[],"mappings":"AAAA,cAAc,MAAM,CAAC;AACrB,cAAc,MAAM,CAAC"}
@@ -14,5 +14,6 @@ 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
+ __exportStar(require("./v1"), exports);
17
18
  __exportStar(require("./v2"), exports);
18
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/utils/token-standard/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uCAAqB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/utils/token-standard/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uCAAqB;AACrB,uCAAqB"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Reserving units under an allocation, and the three ways an allocation ends.
3
+ *
4
+ * `AllocationFactory_Allocate` returns an `AllocationInstructionResult`, which names the allocation when the registry
5
+ * allocates in one step. `Allocation_ExecuteTransfer`, `_Cancel` and `_Withdraw` all return holdings; the difference
6
+ * between them is who gets them.
7
+ */
8
+ import type { TokenStandardV1TransferStatus } from './transfer';
9
+ export interface TokenStandardV1AllocationResult {
10
+ readonly updateId: string;
11
+ /** A registry that allocates in one step always reports `completed`. */
12
+ readonly status: TokenStandardV1TransferStatus;
13
+ readonly senderChangeCids: string[];
14
+ /** The allocation the units are now reserved under. */
15
+ readonly allocationCid: string | undefined;
16
+ /** The pending instruction, when the allocation did not complete in this transaction. */
17
+ readonly allocationInstructionCid: string | undefined;
18
+ }
19
+ /**
20
+ * The `AllocationInstructionResult` of `AllocationFactory_Allocate`.
21
+ *
22
+ * As with a transfer, `failed` is reported only for the standard's `_Failed` output; an undefined output tag, or a
23
+ * result naming no output, is reported rather than read as a rejected allocation.
24
+ */
25
+ export declare function parseAllocationResult(transaction: unknown): TokenStandardV1AllocationResult;
26
+ export interface TokenStandardV1AllocationTransferResult {
27
+ readonly updateId: string;
28
+ /** Units returned to the sender: everything on a cancel or a withdraw, nothing on a delivery. */
29
+ readonly senderHoldingCids: string[];
30
+ readonly receiverHoldingCids: string[];
31
+ }
32
+ /** The result of the allocation exit in this transaction — `Allocation_ExecuteTransfer`, `_Cancel` or `_Withdraw`. */
33
+ export declare function parseAllocationTransferResult(transaction: unknown): TokenStandardV1AllocationTransferResult;
34
+ //# sourceMappingURL=allocation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"allocation.d.ts","sourceRoot":"","sources":["../../../../../src/utils/token-standard/v1/allocation.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAiBH,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,YAAY,CAAC;AAEhE,MAAM,WAAW,+BAA+B;IAC9C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,wEAAwE;IACxE,QAAQ,CAAC,MAAM,EAAE,6BAA6B,CAAC;IAC/C,QAAQ,CAAC,gBAAgB,EAAE,MAAM,EAAE,CAAC;IACpC,uDAAuD;IACvD,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3C,yFAAyF;IACzF,QAAQ,CAAC,wBAAwB,EAAE,MAAM,GAAG,SAAS,CAAC;CACvD;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,OAAO,GAAG,+BAA+B,CAoC3F;AAED,MAAM,WAAW,uCAAuC;IACtD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,iGAAiG;IACjG,QAAQ,CAAC,iBAAiB,EAAE,MAAM,EAAE,CAAC;IACrC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,EAAE,CAAC;CACxC;AAED,sHAAsH;AACtH,wBAAgB,6BAA6B,CAAC,WAAW,EAAE,OAAO,GAAG,uCAAuC,CAa3G"}
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ /**
3
+ * Reserving units under an allocation, and the three ways an allocation ends.
4
+ *
5
+ * `AllocationFactory_Allocate` returns an `AllocationInstructionResult`, which names the allocation when the registry
6
+ * allocates in one step. `Allocation_ExecuteTransfer`, `_Cancel` and `_Withdraw` all return holdings; the difference
7
+ * between them is who gets them.
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.parseAllocationResult = parseAllocationResult;
11
+ exports.parseAllocationTransferResult = parseAllocationTransferResult;
12
+ const event_parser_1 = require("../../parsers/event-parser");
13
+ const constants_1 = require("./constants");
14
+ const result_1 = require("./result");
15
+ /**
16
+ * The `AllocationInstructionResult` of `AllocationFactory_Allocate`.
17
+ *
18
+ * As with a transfer, `failed` is reported only for the standard's `_Failed` output; an undefined output tag, or a
19
+ * result naming no output, is reported rather than read as a rejected allocation.
20
+ */
21
+ function parseAllocationResult(transaction) {
22
+ const result = (0, result_1.requireResultRecord)(transaction, constants_1.TokenStandardV1Choice.allocate);
23
+ const updateId = (0, event_parser_1.requireTransactionUpdateId)(transaction);
24
+ const senderChangeCids = (0, result_1.requireContractIds)(result['senderChangeCids'], 'senderChangeCids');
25
+ const output = (0, result_1.requireKnownVariant)(result, 'output', constants_1.TOKEN_STANDARD_V1_ALLOCATION_RESULT_TAGS, 'allocation result');
26
+ if (output.tag === constants_1.TokenStandardV1AllocationResultTag.completed) {
27
+ return {
28
+ updateId,
29
+ status: 'completed',
30
+ senderChangeCids,
31
+ allocationCid: (0, result_1.requireNonEmptyString)(output.value['allocationCid'], 'allocationCid'),
32
+ allocationInstructionCid: undefined,
33
+ };
34
+ }
35
+ if (output.tag === constants_1.TokenStandardV1AllocationResultTag.pending) {
36
+ return {
37
+ updateId,
38
+ status: 'pending',
39
+ senderChangeCids,
40
+ allocationCid: undefined,
41
+ allocationInstructionCid: (0, result_1.requireNonEmptyString)(output.value['allocationInstructionCid'], 'allocationInstructionCid'),
42
+ };
43
+ }
44
+ return {
45
+ updateId,
46
+ status: 'failed',
47
+ senderChangeCids,
48
+ allocationCid: undefined,
49
+ allocationInstructionCid: undefined,
50
+ };
51
+ }
52
+ /** The result of the allocation exit in this transaction — `Allocation_ExecuteTransfer`, `_Cancel` or `_Withdraw`. */
53
+ function parseAllocationTransferResult(transaction) {
54
+ const result = (0, result_1.requireResultRecordOfAny)(transaction, constants_1.TOKEN_STANDARD_V1_ALLOCATION_EXIT_CHOICES);
55
+ const exercised = (0, event_parser_1.findExercisedEvent)(transaction, constants_1.TOKEN_STANDARD_V1_ALLOCATION_EXIT_CHOICES);
56
+ const executedTransfer = exercised?.choice === constants_1.TokenStandardV1Choice.allocationExecuteTransfer;
57
+ return {
58
+ updateId: (0, event_parser_1.requireTransactionUpdateId)(transaction),
59
+ senderHoldingCids: executedTransfer
60
+ ? (0, result_1.readContractIds)(result['senderHoldingCids'], 'senderHoldingCids')
61
+ : (0, result_1.requireContractIds)(result['senderHoldingCids'], 'senderHoldingCids'),
62
+ receiverHoldingCids: executedTransfer
63
+ ? (0, result_1.requireContractIds)(result['receiverHoldingCids'], 'receiverHoldingCids')
64
+ : (0, result_1.readContractIds)(result['receiverHoldingCids'], 'receiverHoldingCids'),
65
+ };
66
+ }
67
+ //# sourceMappingURL=allocation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"allocation.js","sourceRoot":"","sources":["../../../../../src/utils/token-standard/v1/allocation.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;AAEH,6DAA4F;AAC5F,2CAKqB;AACrB,qCAOkB;AAclB;;;;;GAKG;AACH,+BAAsC,WAAoB;IACxD,MAAM,MAAM,GAAG,IAAA,4BAAmB,EAAC,WAAW,EAAE,iCAAqB,CAAC,QAAQ,CAAC,CAAC;IAChF,MAAM,QAAQ,GAAG,IAAA,yCAA0B,EAAC,WAAW,CAAC,CAAC;IACzD,MAAM,gBAAgB,GAAG,IAAA,2BAAkB,EAAC,MAAM,CAAC,kBAAkB,CAAC,EAAE,kBAAkB,CAAC,CAAC;IAC5F,MAAM,MAAM,GAAG,IAAA,4BAAmB,EAAC,MAAM,EAAE,QAAQ,EAAE,oDAAwC,EAAE,mBAAmB,CAAC,CAAC;IAEpH,IAAI,MAAM,CAAC,GAAG,KAAK,8CAAkC,CAAC,SAAS,EAAE,CAAC;QAChE,OAAO;YACL,QAAQ;YACR,MAAM,EAAE,WAAW;YACnB,gBAAgB;YAChB,aAAa,EAAE,IAAA,8BAAqB,EAAC,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,eAAe,CAAC;YACpF,wBAAwB,EAAE,SAAS;SACpC,CAAC;IACJ,CAAC;IAED,IAAI,MAAM,CAAC,GAAG,KAAK,8CAAkC,CAAC,OAAO,EAAE,CAAC;QAC9D,OAAO;YACL,QAAQ;YACR,MAAM,EAAE,SAAS;YACjB,gBAAgB;YAChB,aAAa,EAAE,SAAS;YACxB,wBAAwB,EAAE,IAAA,8BAAqB,EAC7C,MAAM,CAAC,KAAK,CAAC,0BAA0B,CAAC,EACxC,0BAA0B,CAC3B;SACF,CAAC;IACJ,CAAC;IAED,OAAO;QACL,QAAQ;QACR,MAAM,EAAE,QAAQ;QAChB,gBAAgB;QAChB,aAAa,EAAE,SAAS;QACxB,wBAAwB,EAAE,SAAS;KACpC,CAAC;AACJ,CAAC;AASD,sHAAsH;AACtH,uCAA8C,WAAoB;IAChE,MAAM,MAAM,GAAG,IAAA,iCAAwB,EAAC,WAAW,EAAE,qDAAyC,CAAC,CAAC;IAChG,MAAM,SAAS,GAAG,IAAA,iCAAkB,EAAC,WAAW,EAAE,qDAAyC,CAAC,CAAC;IAC7F,MAAM,gBAAgB,GAAG,SAAS,EAAE,MAAM,KAAK,iCAAqB,CAAC,yBAAyB,CAAC;IAC/F,OAAO;QACL,QAAQ,EAAE,IAAA,yCAA0B,EAAC,WAAW,CAAC;QACjD,iBAAiB,EAAE,gBAAgB;YACjC,CAAC,CAAC,IAAA,wBAAe,EAAC,MAAM,CAAC,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;YACnE,CAAC,CAAC,IAAA,2BAAkB,EAAC,MAAM,CAAC,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;QACxE,mBAAmB,EAAE,gBAAgB;YACnC,CAAC,CAAC,IAAA,2BAAkB,EAAC,MAAM,CAAC,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;YAC1E,CAAC,CAAC,IAAA,wBAAe,EAAC,MAAM,CAAC,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;KAC1E,CAAC;AACJ,CAAC"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Reading a mint or a burn back out of the transaction that performed it.
3
+ *
4
+ * `BurnMintFactory_BurnMint` returns a record rather than contract ids, and the interesting half of a mint is in that
5
+ * record: `outputCids` names the holdings it created. The create events alone cannot say it — a mint of two holdings
6
+ * creates two contracts with nothing to distinguish which output each was — so the exercise result is read instead, and
7
+ * a registry that mints outside the factory is read from the creates only when the caller asks for it.
8
+ */
9
+ export interface TokenStandardV1BurnMintResult {
10
+ readonly updateId: string;
11
+ /** `Holding` interface contract ids, one per output, in the order the outputs were given. Empty for a pure burn. */
12
+ readonly outputHoldingCids: string[];
13
+ }
14
+ /**
15
+ * The result of the burn-mint in this transaction: a mint's new holdings, or an empty list for a burn. Also finds a
16
+ * burn-mint that was exercised as a child of another choice, which is how a redeem's burn is confirmed.
17
+ */
18
+ export declare function parseBurnMintResult(transaction: unknown): TokenStandardV1BurnMintResult;
19
+ export interface ParseMintedHoldingsOptions {
20
+ /**
21
+ * Registry-specific choices that mint without going through the burn-mint factory, such as an admin recovery's
22
+ * `BurnHoldingEnforcement`, which returns contract ids of the concrete template rather than a burn-mint result.
23
+ * Required together with `holdingTemplate` to enable the create-event fallback, which then runs only when the
24
+ * transaction exercised one of these.
25
+ */
26
+ readonly mintingChoices?: readonly string[];
27
+ /**
28
+ * Template of the concrete holding contract, narrowing the fallback's create events to it. Matched
29
+ * package-agnostically, so `Module:Template`, `Template`, or a fully qualified id all work. Required together with
30
+ * `mintingChoices` to enable the create-event fallback.
31
+ */
32
+ readonly holdingTemplate?: string;
33
+ }
34
+ /**
35
+ * The holdings a mint created, from `BurnMintFactory_BurnMint`'s `outputCids`.
36
+ *
37
+ * Create events are never read on their own: every contract a transaction happened to create is not the same thing as
38
+ * the outputs of a mint, and answering with the first would name a sender's change as minted supply. A caller whose
39
+ * registry mints outside the factory opts into the fallback by naming both `mintingChoices` and `holdingTemplate`;
40
+ * without both, a transaction carrying no burn-mint result is reported.
41
+ */
42
+ export declare function parseMintedHoldings(transaction: unknown, options?: ParseMintedHoldingsOptions): string[];
43
+ //# sourceMappingURL=burn-mint.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"burn-mint.d.ts","sourceRoot":"","sources":["../../../../../src/utils/token-standard/v1/burn-mint.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAYH,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,oHAAoH;IACpH,QAAQ,CAAC,iBAAiB,EAAE,MAAM,EAAE,CAAC;CACtC;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,OAAO,GAAG,6BAA6B,CAMvF;AAED,MAAM,WAAW,0BAA0B;IACzC;;;;;OAKG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5C;;;;OAIG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;CACnC;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,OAAO,EAAE,OAAO,GAAE,0BAA+B,GAAG,MAAM,EAAE,CA4B5G"}
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ /**
3
+ * Reading a mint or a burn back out of the transaction that performed it.
4
+ *
5
+ * `BurnMintFactory_BurnMint` returns a record rather than contract ids, and the interesting half of a mint is in that
6
+ * record: `outputCids` names the holdings it created. The create events alone cannot say it — a mint of two holdings
7
+ * creates two contracts with nothing to distinguish which output each was — so the exercise result is read instead, and
8
+ * a registry that mints outside the factory is read from the creates only when the caller asks for it.
9
+ */
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.parseBurnMintResult = parseBurnMintResult;
12
+ exports.parseMintedHoldings = parseMintedHoldings;
13
+ const event_parser_1 = require("../../parsers/event-parser");
14
+ const constants_1 = require("./constants");
15
+ const errors_1 = require("./errors");
16
+ const result_1 = require("./result");
17
+ /**
18
+ * The result of the burn-mint in this transaction: a mint's new holdings, or an empty list for a burn. Also finds a
19
+ * burn-mint that was exercised as a child of another choice, which is how a redeem's burn is confirmed.
20
+ */
21
+ function parseBurnMintResult(transaction) {
22
+ const result = (0, result_1.requireResultRecord)(transaction, constants_1.TokenStandardV1Choice.burnMint);
23
+ return {
24
+ updateId: (0, event_parser_1.requireTransactionUpdateId)(transaction),
25
+ outputHoldingCids: (0, result_1.requireContractIds)(result['outputCids'], 'outputCids'),
26
+ };
27
+ }
28
+ /**
29
+ * The holdings a mint created, from `BurnMintFactory_BurnMint`'s `outputCids`.
30
+ *
31
+ * Create events are never read on their own: every contract a transaction happened to create is not the same thing as
32
+ * the outputs of a mint, and answering with the first would name a sender's change as minted supply. A caller whose
33
+ * registry mints outside the factory opts into the fallback by naming both `mintingChoices` and `holdingTemplate`;
34
+ * without both, a transaction carrying no burn-mint result is reported.
35
+ */
36
+ function parseMintedHoldings(transaction, options = {}) {
37
+ if ((0, event_parser_1.findExercisedEvent)(transaction, constants_1.TokenStandardV1Choice.burnMint)) {
38
+ const result = (0, result_1.requireResultRecord)(transaction, constants_1.TokenStandardV1Choice.burnMint);
39
+ return (0, result_1.requireContractIds)(result['outputCids'], 'outputCids');
40
+ }
41
+ const { mintingChoices, holdingTemplate } = options;
42
+ const canFallback = Array.isArray(mintingChoices) &&
43
+ mintingChoices.length > 0 &&
44
+ typeof holdingTemplate === 'string' &&
45
+ holdingTemplate.length > 0;
46
+ if (!canFallback) {
47
+ throw new errors_1.TokenStandardV1ResultError(errors_1.TokenStandardV1ResultErrorCode.RESULT_NOT_FOUND, `The transaction contains no ${constants_1.TokenStandardV1Choice.burnMint} exercise, so it minted nothing. Name mintingChoices and holdingTemplate to read a registry-specific mint from the create events instead.`, { choice: constants_1.TokenStandardV1Choice.burnMint, updateId: (0, event_parser_1.getTransactionUpdateId)(transaction) });
48
+ }
49
+ if (!(0, event_parser_1.findExercisedEvent)(transaction, mintingChoices)) {
50
+ throw new errors_1.TokenStandardV1ResultError(errors_1.TokenStandardV1ResultErrorCode.RESULT_NOT_FOUND, `The transaction contains neither a ${constants_1.TokenStandardV1Choice.burnMint} exercise nor any of these minting choices: ${mintingChoices.join(', ')}.`, { choices: [constants_1.TokenStandardV1Choice.burnMint, ...mintingChoices], updateId: (0, event_parser_1.getTransactionUpdateId)(transaction) });
51
+ }
52
+ return (0, event_parser_1.findCreatedContractIds)(transaction, holdingTemplate);
53
+ }
54
+ //# sourceMappingURL=burn-mint.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"burn-mint.js","sourceRoot":"","sources":["../../../../../src/utils/token-standard/v1/burn-mint.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;;AAEH,6DAKoC;AACpC,2CAAoD;AACpD,qCAAsF;AACtF,qCAAmE;AAQnE;;;GAGG;AACH,6BAAoC,WAAoB;IACtD,MAAM,MAAM,GAAG,IAAA,4BAAmB,EAAC,WAAW,EAAE,iCAAqB,CAAC,QAAQ,CAAC,CAAC;IAChF,OAAO;QACL,QAAQ,EAAE,IAAA,yCAA0B,EAAC,WAAW,CAAC;QACjD,iBAAiB,EAAE,IAAA,2BAAkB,EAAC,MAAM,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;KAC1E,CAAC;AACJ,CAAC;AAkBD;;;;;;;GAOG;AACH,6BAAoC,WAAoB,EAAE,OAAO,GAA+B,EAAE;IAChG,IAAI,IAAA,iCAAkB,EAAC,WAAW,EAAE,iCAAqB,CAAC,QAAQ,CAAC,EAAE,CAAC;QACpE,MAAM,MAAM,GAAG,IAAA,4BAAmB,EAAC,WAAW,EAAE,iCAAqB,CAAC,QAAQ,CAAC,CAAC;QAChF,OAAO,IAAA,2BAAkB,EAAC,MAAM,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC,CAAC;IAChE,CAAC;IAED,MAAM,EAAE,cAAc,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC;IACpD,MAAM,WAAW,GACf,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC;QAC7B,cAAc,CAAC,MAAM,GAAG,CAAC;QACzB,OAAO,eAAe,KAAK,QAAQ;QACnC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC;IAC7B,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,mCAA0B,CAClC,uCAA8B,CAAC,gBAAgB,EAC/C,+BAA+B,iCAAqB,CAAC,QAAQ,2IAA2I,EACxM,EAAE,MAAM,EAAE,iCAAqB,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAA,qCAAsB,EAAC,WAAW,CAAC,EAAE,CAC1F,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,IAAA,iCAAkB,EAAC,WAAW,EAAE,cAAc,CAAC,EAAE,CAAC;QACrD,MAAM,IAAI,mCAA0B,CAClC,uCAA8B,CAAC,gBAAgB,EAC/C,sCAAsC,iCAAqB,CAAC,QAAQ,+CAA+C,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAC/I,EAAE,OAAO,EAAE,CAAC,iCAAqB,CAAC,QAAQ,EAAE,GAAG,cAAc,CAAC,EAAE,QAAQ,EAAE,IAAA,qCAAsB,EAAC,WAAW,CAAC,EAAE,CAChH,CAAC;IACJ,CAAC;IAED,OAAO,IAAA,qCAAsB,EAAC,WAAW,EAAE,eAAe,CAAC,CAAC;AAC9D,CAAC"}