@veriko-mx/sdk 0.4.10 → 0.4.12

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 (55) hide show
  1. package/CHANGELOG.md +51 -0
  2. package/README.md +237 -41
  3. package/dist/cjs/client.d.ts +6 -3
  4. package/dist/cjs/client.d.ts.map +1 -1
  5. package/dist/cjs/client.js +6 -3
  6. package/dist/cjs/client.js.map +1 -1
  7. package/dist/cjs/generated/openapi.d.ts +835 -33
  8. package/dist/cjs/generated/openapi.d.ts.map +1 -1
  9. package/dist/cjs/http.d.ts +2 -0
  10. package/dist/cjs/http.d.ts.map +1 -1
  11. package/dist/cjs/http.js +1 -1
  12. package/dist/cjs/http.js.map +1 -1
  13. package/dist/cjs/index.d.ts +2 -2
  14. package/dist/cjs/index.d.ts.map +1 -1
  15. package/dist/cjs/index.js +6 -2
  16. package/dist/cjs/index.js.map +1 -1
  17. package/dist/cjs/resources.d.ts +88 -4
  18. package/dist/cjs/resources.d.ts.map +1 -1
  19. package/dist/cjs/resources.js +166 -8
  20. package/dist/cjs/resources.js.map +1 -1
  21. package/dist/cjs/types.d.ts +129 -13
  22. package/dist/cjs/types.d.ts.map +1 -1
  23. package/dist/cjs/types.js +6 -0
  24. package/dist/cjs/types.js.map +1 -1
  25. package/dist/cjs/webhooks.d.ts +41 -1
  26. package/dist/cjs/webhooks.d.ts.map +1 -1
  27. package/dist/cjs/webhooks.js +94 -6
  28. package/dist/cjs/webhooks.js.map +1 -1
  29. package/dist/esm/client.d.ts +6 -3
  30. package/dist/esm/client.d.ts.map +1 -1
  31. package/dist/esm/client.js +6 -3
  32. package/dist/esm/client.js.map +1 -1
  33. package/dist/esm/generated/openapi.d.ts +835 -33
  34. package/dist/esm/generated/openapi.d.ts.map +1 -1
  35. package/dist/esm/http.d.ts +2 -0
  36. package/dist/esm/http.d.ts.map +1 -1
  37. package/dist/esm/http.js +1 -1
  38. package/dist/esm/http.js.map +1 -1
  39. package/dist/esm/index.d.ts +2 -2
  40. package/dist/esm/index.d.ts.map +1 -1
  41. package/dist/esm/index.js +1 -1
  42. package/dist/esm/index.js.map +1 -1
  43. package/dist/esm/resources.d.ts +88 -4
  44. package/dist/esm/resources.d.ts.map +1 -1
  45. package/dist/esm/resources.js +166 -8
  46. package/dist/esm/resources.js.map +1 -1
  47. package/dist/esm/types.d.ts +129 -13
  48. package/dist/esm/types.d.ts.map +1 -1
  49. package/dist/esm/types.js +6 -0
  50. package/dist/esm/types.js.map +1 -1
  51. package/dist/esm/webhooks.d.ts +41 -1
  52. package/dist/esm/webhooks.d.ts.map +1 -1
  53. package/dist/esm/webhooks.js +91 -5
  54. package/dist/esm/webhooks.js.map +1 -1
  55. package/package.json +1 -1
@@ -13,18 +13,31 @@
13
13
  * el escape de los caracteres no ASCII no se conservan, y la firma deja de
14
14
  * cuadrar. En Express, eso significa `express.raw()` en la ruta del webhook.
15
15
  *
16
+ * Cada entrega lleva además una segunda firma que incluye la hora del intento:
17
+ *
18
+ * X-Webhook-Signature-Timestamped: t=<segundos>,v1=<hex>
19
+ *
20
+ * `v1` es el HMAC-SHA256 de `<t>.<cuerpo>`. Con ella el receptor puede descartar
21
+ * una entrega vieja que alguien vuelva a enviar.
22
+ *
16
23
  * @see https://docs.veriko.mx/es/concepts/webhooks-architecture
17
24
  */
18
25
  Object.defineProperty(exports, "__esModule", { value: true });
19
- exports.TIMESTAMP_HEADER = exports.DELIVERY_ID_HEADER = exports.EVENT_HEADER = exports.SIGNATURE_HEADER = void 0;
26
+ exports.TIMESTAMP_HEADER = exports.DELIVERY_ID_HEADER = exports.EVENT_HEADER = exports.DEFAULT_TOLERANCE_SECONDS = exports.TIMESTAMPED_SIGNATURE_HEADER = exports.SIGNATURE_HEADER = void 0;
20
27
  exports.computeSignature = computeSignature;
21
28
  exports.verifyWebhook = verifyWebhook;
29
+ exports.verifyWebhookTimestamped = verifyWebhookTimestamped;
22
30
  exports.signatureFromHeaders = signatureFromHeaders;
31
+ exports.timestampedSignatureFromHeaders = timestampedSignatureFromHeaders;
23
32
  exports.parseWebhook = parseWebhook;
24
33
  const node_crypto_1 = require("node:crypto");
25
34
  const errors_js_1 = require("./errors.js");
26
35
  /** Cabecera de la firma. */
27
36
  exports.SIGNATURE_HEADER = 'X-Webhook-Signature';
37
+ /** Cabecera de la firma que incluye la hora del intento. */
38
+ exports.TIMESTAMPED_SIGNATURE_HEADER = 'X-Webhook-Signature-Timestamped';
39
+ /** Ventana recomendada entre `t` y el reloj del receptor, en segundos. */
40
+ exports.DEFAULT_TOLERANCE_SECONDS = 300;
28
41
  /** Otras cabeceras de una entrega. */
29
42
  exports.EVENT_HEADER = 'X-Veriko-Event';
30
43
  exports.DELIVERY_ID_HEADER = 'X-Veriko-Delivery-Id';
@@ -66,14 +79,76 @@ function verifyWebhook(payload, signature, secret) {
66
79
  return false;
67
80
  return (0, node_crypto_1.timingSafeEqual)(receivedBuffer, expectedBuffer);
68
81
  }
82
+ const UNIX_SECONDS = /^[0-9]{1,15}$/;
69
83
  /**
70
- * Busca la cabecera de firma en cualquiera de sus grafías.
84
+ * Separa `t=<segundos>,v1=<hex>` en la hora y las firmas `v1`.
71
85
  *
72
- * Los nombres de cabecera no distinguen mayúsculas, y cada framework los
73
- * entrega a su manera.
86
+ * Admite varias `v1` y descarta las claves que no conoce. Devuelve `undefined`
87
+ * cuando falta `t`, cuando trae más de una, o cuando no es un entero de segundos.
74
88
  */
75
- function signatureFromHeaders(headers) {
76
- const wanted = exports.SIGNATURE_HEADER.toLowerCase();
89
+ function parseTimestamped(header) {
90
+ const times = [];
91
+ const digests = [];
92
+ for (const part of header.split(',')) {
93
+ const separator = part.indexOf('=');
94
+ if (separator === -1)
95
+ continue;
96
+ const key = part.slice(0, separator).trim();
97
+ const value = part.slice(separator + 1).trim();
98
+ if (key === 't')
99
+ times.push(value);
100
+ else if (key === 'v1')
101
+ digests.push(value.toLowerCase());
102
+ }
103
+ const timestamp = times[0];
104
+ if (times.length !== 1 || timestamp === undefined || !UNIX_SECONDS.test(timestamp)) {
105
+ return undefined;
106
+ }
107
+ return { timestamp, digests };
108
+ }
109
+ /**
110
+ * Comprueba la firma con marca de tiempo de una entrega. Devuelve `true` o
111
+ * `false`, sin lanzar.
112
+ *
113
+ * Acepta el valor de la cabecera `X-Webhook-Signature-Timestamped`:
114
+ * `t=<segundos>,v1=<hex>`. Calcula el HMAC-SHA256 de `<t>.<cuerpo>`, lo compara
115
+ * en tiempo constante con cada `v1` y rechaza la entrega cuando `t` se aleja del
116
+ * reloj del receptor más de `toleranceSeconds`.
117
+ *
118
+ * La ventana se mide contra `t`, la hora de ese intento, y no contra el campo
119
+ * `timestamp` del cuerpo, que es la hora del evento. Un reintento llega hasta
120
+ * unas 8,6 horas después del evento, pero con una `t` nueva.
121
+ *
122
+ * @param payload El cuerpo crudo de la petición, sin reserializar.
123
+ * @param header El valor de la cabecera `X-Webhook-Signature-Timestamped`.
124
+ * @param secret El secreto del endpoint, entregado al registrarlo.
125
+ * @param options La ventana y la hora actual.
126
+ */
127
+ function verifyWebhookTimestamped(payload, header, secret, options = {}) {
128
+ if (!header || !secret)
129
+ return false;
130
+ const parsed = parseTimestamped(header);
131
+ if (!parsed)
132
+ return false;
133
+ const tolerance = options.toleranceSeconds ?? exports.DEFAULT_TOLERANCE_SECONDS;
134
+ const nowSeconds = (options.now ?? new Date()).getTime() / 1000;
135
+ if (!(Math.abs(nowSeconds - Number(parsed.timestamp)) <= tolerance))
136
+ return false;
137
+ const signed = Buffer.concat([Buffer.from(`${parsed.timestamp}.`, 'utf8'), toBuffer(payload)]);
138
+ const expected = Buffer.from((0, node_crypto_1.createHmac)('sha256', secret).update(signed).digest('hex'), 'utf8');
139
+ // Se comparan todas, sin cortar en la primera que cuadra.
140
+ let matched = false;
141
+ for (const digest of parsed.digests) {
142
+ const received = Buffer.from(digest, 'utf8');
143
+ if (received.length === expected.length && (0, node_crypto_1.timingSafeEqual)(received, expected)) {
144
+ matched = true;
145
+ }
146
+ }
147
+ return matched;
148
+ }
149
+ /** El valor de una cabecera, sin distinguir mayúsculas. */
150
+ function headerValue(headers, header) {
151
+ const wanted = header.toLowerCase();
77
152
  for (const [name, value] of Object.entries(headers)) {
78
153
  if (name.toLowerCase() !== wanted)
79
154
  continue;
@@ -81,6 +156,19 @@ function signatureFromHeaders(headers) {
81
156
  }
82
157
  return undefined;
83
158
  }
159
+ /**
160
+ * Busca la cabecera de firma en cualquiera de sus grafías.
161
+ *
162
+ * Los nombres de cabecera no distinguen mayúsculas, y cada framework los
163
+ * entrega a su manera.
164
+ */
165
+ function signatureFromHeaders(headers) {
166
+ return headerValue(headers, exports.SIGNATURE_HEADER);
167
+ }
168
+ /** Busca la cabecera de la firma con marca de tiempo en cualquiera de sus grafías. */
169
+ function timestampedSignatureFromHeaders(headers) {
170
+ return headerValue(headers, exports.TIMESTAMPED_SIGNATURE_HEADER);
171
+ }
84
172
  /**
85
173
  * Verifica la firma y devuelve el evento ya interpretado.
86
174
  *
@@ -1 +1 @@
1
- {"version":3,"file":"webhooks.js","sourceRoot":"","sources":["../../src/webhooks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"webhooks.js","sourceRoot":"","sources":["../../src/webhooks.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;;;AAmCH,4CAEC;AAaD,sCAeC;AAsDD,4DAyBC;AAoBD,oDAEC;AAGD,0EAEC;AAQD,oCAgCC;AAjND,6CAA0D;AAE1D,2CAAyD;AAGzD,4BAA4B;AACf,QAAA,gBAAgB,GAAG,qBAAqB,CAAC;AAEtD,4DAA4D;AAC/C,QAAA,4BAA4B,GAAG,iCAAiC,CAAC;AAE9E,0EAA0E;AAC7D,QAAA,yBAAyB,GAAG,GAAG,CAAC;AAE7C,sCAAsC;AACzB,QAAA,YAAY,GAAG,gBAAgB,CAAC;AAChC,QAAA,kBAAkB,GAAG,sBAAsB,CAAC;AAC5C,QAAA,gBAAgB,GAAG,oBAAoB,CAAC;AAErD,MAAM,gBAAgB,GAAG,SAAS,CAAC;AAEnC,qEAAqE;AACrE,SAAS,oBAAoB,CAAC,IAAa;IACzC,OAAO,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,IAAI,MAAM,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC;AACnG,CAAC;AAID,SAAS,QAAQ,CAAC,OAAgB;IAChC,OAAO,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC3F,CAAC;AAED,gFAAgF;AAChF,SAAgB,gBAAgB,CAAC,OAAgB,EAAE,MAAc;IAC/D,OAAO,IAAA,wBAAU,EAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAgB,aAAa,CAC3B,OAAgB,EAChB,SAAoC,EACpC,MAAc;IAEd,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IACxC,IAAI,QAAQ,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;IAChC,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACxD,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACrD,CAAC;IACD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACnD,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,MAAM,CAAC,CAAC;IACnE,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACrD,IAAI,cAAc,CAAC,MAAM,KAAK,cAAc,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IAClE,OAAO,IAAA,6BAAe,EAAC,cAAc,EAAE,cAAc,CAAC,CAAC;AACzD,CAAC;AAUD,MAAM,YAAY,GAAG,eAAe,CAAC;AAErC;;;;;GAKG;AACH,SAAS,gBAAgB,CAAC,MAAc;IACtC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QACrC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACpC,IAAI,SAAS,KAAK,CAAC,CAAC;YAAE,SAAS;QAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC;QAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC/C,IAAI,GAAG,KAAK,GAAG;YAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aAC9B,IAAI,GAAG,KAAK,IAAI;YAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;IAC3D,CAAC;IACD,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAC3B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,SAAS,KAAK,SAAS,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QACnF,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;AAChC,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAgB,wBAAwB,CACtC,OAAgB,EAChB,MAAiC,EACjC,MAAc,EACd,UAAoC,EAAE;IAEtC,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IACrC,MAAM,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACxC,IAAI,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IAE1B,MAAM,SAAS,GAAG,OAAO,CAAC,gBAAgB,IAAI,iCAAyB,CAAC;IACxE,MAAM,UAAU,GAAG,CAAC,OAAO,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC;IAChE,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,SAAS,CAAC;QAAE,OAAO,KAAK,CAAC;IAElF,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,SAAS,GAAG,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC/F,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,IAAA,wBAAU,EAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC;IAChG,0DAA0D;IAC1D,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACpC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC7C,IAAI,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,IAAI,IAAA,6BAAe,EAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC;YAC/E,OAAO,GAAG,IAAI,CAAC;QACjB,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAID,2DAA2D;AAC3D,SAAS,WAAW,CAAC,OAAkB,EAAE,MAAc;IACrD,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;IACpC,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACpD,IAAI,IAAI,CAAC,WAAW,EAAE,KAAK,MAAM;YAAE,SAAS;QAC5C,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACjD,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;GAKG;AACH,SAAgB,oBAAoB,CAAC,OAAkB;IACrD,OAAO,WAAW,CAAC,OAAO,EAAE,wBAAgB,CAAC,CAAC;AAChD,CAAC;AAED,sFAAsF;AACtF,SAAgB,+BAA+B,CAAC,OAAkB;IAChE,OAAO,WAAW,CAAC,OAAO,EAAE,oCAA4B,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;GAKG;AACH,SAAgB,YAAY,CAC1B,OAAgB,EAChB,SAAoC,EACpC,MAAc;IAEd,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC;QAC/C,MAAM,IAAI,sCAA0B,CAClC,yEAAyE;YACvE,qEAAqE;YACrE,qBAAqB,CACxB,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACvF,MAAM,MAAM,GAAY,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACzC,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC1C,MAAM,IAAI,sCAA0B,CAAC,8CAA8C,CAAC,CAAC;IACvF,CAAC;IAED,MAAM,QAAQ,GAAG,MAAiC,CAAC;IACnD,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC9B,MAAM,UAAU,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IAEjE,MAAM,KAAK,GAAiB;QAC1B,KAAK,EAAE,OAAO,QAAQ,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE;KACtE,CAAC;IACF,IAAI,OAAO,QAAQ,CAAC,WAAW,CAAC,KAAK,QAAQ;QAAE,KAAK,CAAC,SAAS,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;IACvF,IAAI,UAAU;QAAE,KAAK,CAAC,IAAI,GAAG,UAAU,CAAC;IACxC,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,OAAO,QAAQ,CAAC,MAAM,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC7D,KAAK,CAAC,IAAI,GAAG,QAAQ,CAAC,MAAM,CAA4B,CAAC;IAC3D,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -7,7 +7,7 @@ export declare const DEFAULT_TIMEOUT_MS = 30000;
7
7
  export declare const API_KEY_ENV_VAR = "VERIKO_API_KEY";
8
8
  export declare const BASE_URL_ENV_VAR = "VERIKO_BASE_URL";
9
9
  /** La versión que viaja en el `User-Agent`. `test/client.test.ts` la compara con `package.json`. */
10
- export declare const VERSION = "0.4.10";
10
+ export declare const VERSION = "0.4.12";
11
11
  export interface VerikoOptions {
12
12
  /** La clave de API. Por omisión, `VERIKO_API_KEY`. */
13
13
  apiKey?: string;
@@ -95,8 +95,11 @@ export declare class Veriko {
95
95
  * Devuelve el veredicto en `attributes.status`: `valid`, `not_found`,
96
96
  * `cep_unavailable`, `returned` o `error`.
97
97
  *
98
- * La operación exige `claveRastreo` o `referenciaNumerica`. Enviar las dos
99
- * precisa la búsqueda. La fecha es la de envío, en `YYYY-MM-DD`.
98
+ * La operación exige `cuentaBeneficiaria`, o `cuentasCandidatas` cuando no se
99
+ * sabe cuál fue la cuenta (una de las dos, no las dos), y `claveRastreo` o
100
+ * `referenciaNumerica`. Enviar las dos últimas precisa la búsqueda. La fecha
101
+ * es la de envío, en `YYYY-MM-DD`. `clientRef` es una referencia propia que
102
+ * vuelve en la validación y en los webhooks.
100
103
  *
101
104
  * Un `not_found` inmediato no equivale a una transferencia inexistente: un
102
105
  * CEP tarda en publicarse. `retryPolicy` deja a la API consultando de nuevo y
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"AAAA,mEAAmE;AAEnE,OAAO,EAAiB,SAAS,EAAE,KAAK,WAAW,EAAE,MAAM,WAAW,CAAC;AACvE,OAAO,EACL,OAAO,EACP,aAAa,EACb,OAAO,EACP,OAAO,EACP,SAAS,EACT,OAAO,EACP,QAAQ,EACR,KAAK,EACL,KAAK,EACL,WAAW,EACX,QAAQ,EACT,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EACV,WAAW,EACX,SAAS,EACT,oBAAoB,EACpB,sBAAsB,EACtB,UAAU,EACV,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,gBAAgB,6BAA6B,CAAC;AAC3D,eAAO,MAAM,kBAAkB,QAAS,CAAC;AACzC,eAAO,MAAM,eAAe,mBAAmB,CAAC;AAChD,eAAO,MAAM,gBAAgB,oBAAoB,CAAC;AAElD,oGAAoG;AACpG,eAAO,MAAM,OAAO,WAAW,CAAC;AAEhC,MAAM,WAAW,aAAa;IAC5B,sDAAsD;IACtD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sEAAsE;IACtE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qDAAqD;IACrD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,qEAAqE;IACrE,KAAK,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAC7B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,4EAA4E;IAC5E,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,qBAAa,MAAM;IACjB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAY;IAEtC,kDAAkD;IAClD,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC,uDAAuD;IACvD,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,2DAA2D;IAC3D,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,+DAA+D;IAC/D,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IACtC,8CAA8C;IAC9C,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IACtB,sDAAsD;IACtD,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,yBAAyB;IACzB,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,kCAAkC;IAClC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IACtB,uCAAuC;IACvC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,yCAAyC;IACzC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,uCAAuC;IACvC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;gBAEd,OAAO,GAAE,aAAkB;IA+BvC,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED;;;;;;;;;;;;;;;OAeG;IACH,gBAAgB,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,UAAU,CAAC;IAIrE;;;;;;;OAOG;IACH,aAAa,CACX,YAAY,EAAE,MAAM,EACpB,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,kBAAkB,CAAC;IAI9B;;;;;;OAMG;IACH,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,SAAS,CAAA;KAAO,GAAG,OAAO,CAAC,WAAW,CAAC;CAGzF"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"AAAA,mEAAmE;AAEnE,OAAO,EAAiB,SAAS,EAAE,KAAK,WAAW,EAAE,MAAM,WAAW,CAAC;AACvE,OAAO,EACL,OAAO,EACP,aAAa,EACb,OAAO,EACP,OAAO,EACP,SAAS,EACT,OAAO,EACP,QAAQ,EACR,KAAK,EACL,KAAK,EACL,WAAW,EACX,QAAQ,EACT,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EACV,WAAW,EACX,SAAS,EACT,oBAAoB,EACpB,sBAAsB,EACtB,UAAU,EACV,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,gBAAgB,6BAA6B,CAAC;AAC3D,eAAO,MAAM,kBAAkB,QAAS,CAAC;AACzC,eAAO,MAAM,eAAe,mBAAmB,CAAC;AAChD,eAAO,MAAM,gBAAgB,oBAAoB,CAAC;AAElD,oGAAoG;AACpG,eAAO,MAAM,OAAO,WAAW,CAAC;AAEhC,MAAM,WAAW,aAAa;IAC5B,sDAAsD;IACtD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sEAAsE;IACtE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qDAAqD;IACrD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,qEAAqE;IACrE,KAAK,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAC7B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,4EAA4E;IAC5E,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,qBAAa,MAAM;IACjB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAY;IAEtC,kDAAkD;IAClD,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC,uDAAuD;IACvD,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,2DAA2D;IAC3D,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,+DAA+D;IAC/D,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IACtC,8CAA8C;IAC9C,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IACtB,sDAAsD;IACtD,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,yBAAyB;IACzB,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,kCAAkC;IAClC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IACtB,uCAAuC;IACvC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,yCAAyC;IACzC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,uCAAuC;IACvC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;gBAEd,OAAO,GAAE,aAAkB;IA+BvC,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,gBAAgB,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,UAAU,CAAC;IAIrE;;;;;;;OAOG;IACH,aAAa,CACX,YAAY,EAAE,MAAM,EACpB,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,kBAAkB,CAAC;IAI9B;;;;;;OAMG;IACH,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,SAAS,CAAA;KAAO,GAAG,OAAO,CAAC,WAAW,CAAC;CAGzF"}
@@ -6,7 +6,7 @@ export const DEFAULT_TIMEOUT_MS = 30_000;
6
6
  export const API_KEY_ENV_VAR = 'VERIKO_API_KEY';
7
7
  export const BASE_URL_ENV_VAR = 'VERIKO_BASE_URL';
8
8
  /** La versión que viaja en el `User-Agent`. `test/client.test.ts` la compara con `package.json`. */
9
- export const VERSION = '0.4.10';
9
+ export const VERSION = '0.4.12';
10
10
  /**
11
11
  * Cliente de la API de Veriko.
12
12
  *
@@ -104,8 +104,11 @@ export class Veriko {
104
104
  * Devuelve el veredicto en `attributes.status`: `valid`, `not_found`,
105
105
  * `cep_unavailable`, `returned` o `error`.
106
106
  *
107
- * La operación exige `claveRastreo` o `referenciaNumerica`. Enviar las dos
108
- * precisa la búsqueda. La fecha es la de envío, en `YYYY-MM-DD`.
107
+ * La operación exige `cuentaBeneficiaria`, o `cuentasCandidatas` cuando no se
108
+ * sabe cuál fue la cuenta (una de las dos, no las dos), y `claveRastreo` o
109
+ * `referenciaNumerica`. Enviar las dos últimas precisa la búsqueda. La fecha
110
+ * es la de envío, en `YYYY-MM-DD`. `clientRef` es una referencia propia que
111
+ * vuelve en la validación y en los webhooks.
109
112
  *
110
113
  * Un `not_found` inmediato no equivale a una transferencia inexistente: un
111
114
  * CEP tarda en publicarse. `retryPolicy` deja a la API consultando de nuevo y
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"AAAA,mEAAmE;AAEnE,OAAO,EAAE,aAAa,EAAE,SAAS,EAAoB,MAAM,WAAW,CAAC;AACvE,OAAO,EACL,OAAO,EACP,aAAa,EACb,OAAO,EACP,OAAO,EACP,SAAS,EACT,OAAO,EACP,QAAQ,EACR,KAAK,EACL,KAAK,EACL,WAAW,EACX,QAAQ,GACT,MAAM,gBAAgB,CAAC;AAUxB,MAAM,CAAC,MAAM,gBAAgB,GAAG,0BAA0B,CAAC;AAC3D,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC;AACzC,MAAM,CAAC,MAAM,eAAe,GAAG,gBAAgB,CAAC;AAChD,MAAM,CAAC,MAAM,gBAAgB,GAAG,iBAAiB,CAAC;AAElD,oGAAoG;AACpG,MAAM,CAAC,MAAM,OAAO,GAAG,QAAQ,CAAC;AAuBhC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,MAAM,OAAO,MAAM;IACA,SAAS,CAAY;IAEtC,kDAAkD;IACzC,WAAW,CAAc;IAClC,uDAAuD;IAC9C,QAAQ,CAAW;IAC5B,2DAA2D;IAClD,OAAO,CAAU;IAC1B,+DAA+D;IACtD,aAAa,CAAgB;IACtC,8CAA8C;IACrC,KAAK,CAAQ;IACtB,sDAAsD;IAC7C,OAAO,CAAU;IAC1B,yBAAyB;IAChB,SAAS,CAAY;IAC9B,kCAAkC;IACzB,KAAK,CAAQ;IACtB,uCAAuC;IAC9B,QAAQ,CAAW;IAC5B,yCAAyC;IAChC,OAAO,CAAU;IAC1B,uCAAuC;IAC9B,OAAO,CAAU;IAE1B,YAAY,UAAyB,EAAE;QACrC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;QACpE,MAAM,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5E,IAAI,CAAC,SAAS;YACZ,OAAO,CAAC,SAAS;gBACjB,IAAI,SAAS,CAAC;oBACZ,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,gBAAgB;oBAC7E,MAAM;oBACN,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,kBAAkB;oBAClD,KAAK,EAAE;wBACL,GAAG,aAAa;wBAChB,GAAG,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC/E,GAAG,OAAO,CAAC,KAAK;qBACjB;oBACD,SAAS,EAAE,aAAa,OAAO,kDAAkD,MAAM,EAAE;oBACzF,cAAc,EAAE,OAAO,CAAC,cAAc;iBACvC,CAAC,CAAC;QAEL,IAAI,CAAC,WAAW,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACnD,IAAI,CAAC,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACvD,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACvC,IAAI,CAAC,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACvC,IAAI,CAAC,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC7C,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;IAChC,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,gBAAgB,CAAC,MAA8B;QAC7C,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED;;;;;;;OAOG;IACH,aAAa,CACX,YAAoB,EACpB,UAAgC,EAAE;QAElC,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,YAAoB,EAAE,UAAkC,EAAE;QAC/D,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;CACF"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"AAAA,mEAAmE;AAEnE,OAAO,EAAE,aAAa,EAAE,SAAS,EAAoB,MAAM,WAAW,CAAC;AACvE,OAAO,EACL,OAAO,EACP,aAAa,EACb,OAAO,EACP,OAAO,EACP,SAAS,EACT,OAAO,EACP,QAAQ,EACR,KAAK,EACL,KAAK,EACL,WAAW,EACX,QAAQ,GACT,MAAM,gBAAgB,CAAC;AAUxB,MAAM,CAAC,MAAM,gBAAgB,GAAG,0BAA0B,CAAC;AAC3D,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC;AACzC,MAAM,CAAC,MAAM,eAAe,GAAG,gBAAgB,CAAC;AAChD,MAAM,CAAC,MAAM,gBAAgB,GAAG,iBAAiB,CAAC;AAElD,oGAAoG;AACpG,MAAM,CAAC,MAAM,OAAO,GAAG,QAAQ,CAAC;AAuBhC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,MAAM,OAAO,MAAM;IACA,SAAS,CAAY;IAEtC,kDAAkD;IACzC,WAAW,CAAc;IAClC,uDAAuD;IAC9C,QAAQ,CAAW;IAC5B,2DAA2D;IAClD,OAAO,CAAU;IAC1B,+DAA+D;IACtD,aAAa,CAAgB;IACtC,8CAA8C;IACrC,KAAK,CAAQ;IACtB,sDAAsD;IAC7C,OAAO,CAAU;IAC1B,yBAAyB;IAChB,SAAS,CAAY;IAC9B,kCAAkC;IACzB,KAAK,CAAQ;IACtB,uCAAuC;IAC9B,QAAQ,CAAW;IAC5B,yCAAyC;IAChC,OAAO,CAAU;IAC1B,uCAAuC;IAC9B,OAAO,CAAU;IAE1B,YAAY,UAAyB,EAAE;QACrC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;QACpE,MAAM,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5E,IAAI,CAAC,SAAS;YACZ,OAAO,CAAC,SAAS;gBACjB,IAAI,SAAS,CAAC;oBACZ,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,gBAAgB;oBAC7E,MAAM;oBACN,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,kBAAkB;oBAClD,KAAK,EAAE;wBACL,GAAG,aAAa;wBAChB,GAAG,CAAC,OAAO,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC/E,GAAG,OAAO,CAAC,KAAK;qBACjB;oBACD,SAAS,EAAE,aAAa,OAAO,kDAAkD,MAAM,EAAE;oBACzF,cAAc,EAAE,OAAO,CAAC,cAAc;iBACvC,CAAC,CAAC;QAEL,IAAI,CAAC,WAAW,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACnD,IAAI,CAAC,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACvD,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACvC,IAAI,CAAC,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,SAAS,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC/C,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACvC,IAAI,CAAC,QAAQ,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC7C,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;IAChC,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,gBAAgB,CAAC,MAA8B;QAC7C,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED;;;;;;;OAOG;IACH,aAAa,CACX,YAAoB,EACpB,UAAgC,EAAE;QAElC,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,YAAoB,EAAE,UAAkC,EAAE;QAC/D,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;CACF"}