@cat-indev/catops-cli 0.0.1-alpha.13 → 0.0.1-alpha.15

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.
package/README.md CHANGED
@@ -6,7 +6,8 @@ Trae:
6
6
 
7
7
  - Un **ExecutionContext** compartido (`flags`, `params`, `env`, `vars`, `results`, `logger`, `services`, `notifier`) para que ninguna task tenga que recibir parámetros manualmente.
8
8
  - **16 servicios** listos (`shell`, `docker`, `git`, `kubectl`, `helm`, `npm`, `archive`, `terraform`, `ansible`, `argocd`, `tekton`, `oc`, `az`, `azdo`, `http`, `yaml`) + un **cliente REST API** para Azure DevOps (`AzureDevOpsApi`) + un **motor de pipelines** declarativo con dependencias (`Pipeline`).
9
- - **Servicio HTTP** con interceptores de request/response, registry de agentes nombrados, configuración global, query params, dry-run y timeout.
9
+ - **Servicio HTTP** con interceptores de request/response, registry de agentes nombrados, configuración global, query params, dry-run y timeout. Los interceptores también se pueden registrar sobre el agente que integra `AzureDevOpsApi`.
10
+ - **Parser de errores de Azure DevOps**: cada fallo de la REST API se convierte en un `AzdoApiError` legible con el mensaje del servidor, código TF/VS, tipo de excepción y sugerencias accionables (`parseAzdoError` / `formatAzdoError`).
10
11
  - **Menús interactivos** con navegación anidada y **selección automática por flag** (para correr pipelines sin prompts, ideal para CI).
11
12
  - **retry / timeout / dryRun** en cada comando de shell.
12
13
  - Validación cíclica de rollouts de Kubernetes/OpenShift (`waitForDeployment`, `waitForDeploymentGroup`).
@@ -89,7 +90,7 @@ src/
89
90
  http.ts -> cliente HTTP con interceptores de request/response, múltiples instancias
90
91
  http-types.ts -> tipos del servicio HTTP (HttpRequest, HttpResponse, interceptors, ...)
91
92
  docker.ts, git.ts, kubectl.ts, helm.ts, npm.ts, archive.ts
92
- terraform.ts, ansible.ts, argocd.ts, tekton.ts, oc.ts, az.ts, azdo.ts, azdo-api.ts, pipeline.ts
93
+ terraform.ts, ansible.ts, argocd.ts, tekton.ts, oc.ts, az.ts, azdo.ts, azdo-api.ts, azdo-errors.ts, pipeline.ts
93
94
  yaml.ts -> YamlService: manipulación de archivos YAML con prepare(), multidocument, comentarios
94
95
  index.ts -> registra todos los servicios anteriores (ServicesRegistry)
95
96
  index.ts -> entry point público: Context, Menu, Notifier, senders, classifiers, messages, services, http, tipos
@@ -428,6 +429,45 @@ const azdo = new AzureDevOpsApi().configure({
428
429
  });
429
430
  ```
430
431
 
432
+ ### Interceptores del agente HTTP
433
+
434
+ `AzureDevOpsApi` integra su propio agente HTTP (se crea perezosamente en la primera petición) y permite registrar **interceptores de request/response** sobre él, igual que en `ctx.services.http`:
435
+
436
+ ```typescript
437
+ const azdo = new AzureDevOpsApi().configure({
438
+ baseUrl: "https://dev.azure.com/miorg",
439
+ pat: process.env.AZDO_PAT,
440
+ project: "mi-proyecto",
441
+
442
+ // Se registran sobre el agente activo (interno o inyectado)
443
+ requestInterceptors: [
444
+ ctx => { ctx.request.headers["x-correlation-id"] = crypto.randomUUID(); }
445
+ ],
446
+ responseInterceptors: [
447
+ ctx => { console.log(`← ${ctx.response.status} ${ctx.request.url}`); }
448
+ ]
449
+ });
450
+ ```
451
+
452
+ También hay métodos chainable para gestionarlos en cualquier momento — si el agente interno aún no existe, quedan en cola y se aplican al crearlo:
453
+
454
+ ```typescript
455
+ azdo
456
+ .addRequestInterceptor(ctx => { /* tracing, headers extra, ... */ })
457
+ .addResponseInterceptor(ctx => { /* logging, métricas, ... */ });
458
+
459
+ // Eliminar uno específico o todos
460
+ azdo.removeRequestInterceptor(myInterceptor);
461
+ azdo.clearRequestInterceptors();
462
+ azdo.clearResponseInterceptors();
463
+ ```
464
+
465
+ Detalles a tener en cuenta:
466
+
467
+ - Si inyectas un `agent` externo (`HttpService`), los interceptores se registran **en ese agente**, así que también afectan al resto de consumidores que compartan la instancia.
468
+ - El auth Basic del PAT se aplica siempre, independientemente de los interceptores.
469
+ - Un agente custom que no exponga los métodos de interceptores lanza un error descriptivo en vez de ignorarlos silenciosamente.
470
+
431
471
  ### Proyectos
432
472
 
433
473
  ```typescript
@@ -526,6 +566,47 @@ await azdo.listRepos({ exec: { dryRun: true } });
526
566
 
527
567
  Los tipos de respuesta completos (`AzdoProject`, `AzdoGitRepository`, `AzdoBuild`, etc.) se exportan desde la raíz del paquete para tipado en TypeScript.
528
568
 
569
+ ### Errores legibles (`AzdoApiError`)
570
+
571
+ La REST API de Azure DevOps devuelve errores con cuerpo JSON rico (`message`, `typeKey`, `errorCode`, `innerException`, ...), pero el detalle se perdía en un genérico `HTTP 403 responded with 403`. Cualquier error HTTP de `AzureDevOpsApi` se lanza ahora como **`AzdoApiError`**, que parsea ese cuerpo y lo presenta de forma legible:
572
+
573
+ ```typescript
574
+ try {
575
+ await azdo.pushChanges({ project: "mi-proyecto", repository: "api", branch: "main", comment: "x", changes: [] });
576
+ } catch (err) {
577
+ console.log(String(err));
578
+ }
579
+ ```
580
+
581
+ ```
582
+ ✖ Azure DevOps permisos — HTTP 403 Forbidden
583
+ Petición : POST https://dev.azure.com/miorg/mi-proyecto/_apis/git/repositories/api/pushes?api-version=7.1
584
+ Mensaje : TF401027: You need the Git 'ForcePush' permission to perform this operation.
585
+ Detalle : código=TF401027 · tipo=RequestNotAuthorizedException · errorCode=0 · eventId=3000
586
+ Qué significa: Falta el permiso 'ForcePush' de Git.
587
+ Sugerencias:
588
+ • Un admin debe conceder 'Force push (rewrite history)' en Repos > Security, o evita reescribir historial.
589
+ • Pide al administrador los permisos necesarios sobre el proyecto/repo/pipeline.
590
+ • Si el PAT tiene restricciones de scope, amplíalo (ej. Code Read & Write, Build).
591
+ ```
592
+
593
+ Qué aporta cada pieza:
594
+
595
+ | API | Uso |
596
+ |---|---|
597
+ | `err.message` | Resumen de una línea: `[AZDO] HTTP 403 Forbidden — POST ... — TF401027: You need...` |
598
+ | `String(err)` / `formatAzdoError(err)` | Bloque multi-línea legible (el del ejemplo) |
599
+ | `err.detail` | Detalle estructurado: `{ status, kind, serverMessage, code, typeKey, errorCode, eventId, innerMessages, hints, ... }` |
600
+ | `parseAzdoError(err)` | Parsea cualquier error con forma HTTP y devuelve el detalle (o `null`) |
601
+ | `formatAzdoError(err)` | Devuelve el texto legible; acepta el error o el detalle ya parseado |
602
+
603
+ Notas:
604
+
605
+ - El error conserva `status`, `headers`, `body` y `request` del error HTTP original, así que los checks tipo `err.status === 404` siguen funcionando igual que siempre (y helpers como `branchExists()`/`repoExists()` no cambian).
606
+ - Detecta códigos TF/VS conocidos (`TF400813`, `TF401019`, `TF401027`, `TF401320`, `VS800075`, ...) con explicación y sugerencia específica; los desconocidos caen a sugerencias por status HTTP (401 → PAT expirado/org incorrecta, 404 → puede ser falta de permisos, 409 → `oldObjectId` desactualizado, 429 → throttling, etc.).
607
+ - Aplana la cadena `innerException` del servidor en `detail.innerMessages`.
608
+ - Soporta cuerpos no-JSON (proxies que devuelven HTML) y clasifica errores de red/timeout (`status: 0`) como `Red / Timeout`.
609
+
529
610
  ## Motor de pipelines declarativo (`ctx.services.pipeline`)
530
611
 
531
612
  Un motor de ejecución de pipelines con **stages → jobs → tasks**, dependencias entre entidades, acceso a resultados jerárquico por contexto (`stage.job.task`), tipos de task extensibles, y registro global de pipelines reutilizables.
@@ -1403,6 +1484,8 @@ npm test
1403
1484
  - `exec-options-passthrough.test.js` — retry/timeout/dryRun (`exec`) llegando a todos los servicios, incluyendo un retry real que se recupera tras 2 fallos
1404
1485
  - `deployment-group.test.js` — waitForDeploymentGroup (éxito total, fallo parcial, label sin matches, oc con `dc`)
1405
1486
  - `azdo-api.test.js` — AzureDevOpsApi contra mock server: proyectos, repos, branches, commits, PRs, builds, pipelines, work items, overrides
1487
+ - `azdo-errors.test.js` — parser de errores de Azure DevOps: extracción de message/typeKey/código TF/VS, innerException aplanada, cuerpos no-JSON, errores de red, formato legible, compatibilidad de los checks de 404 tras el wrap
1488
+ - `azdo-interceptors.test.js` — interceptores del agente HTTP de AzureDevOpsApi: vía configure() y vía métodos add/remove/clear, cola perezosa antes del primer request, agente externo compartido, error descriptivo con agentes sin soporte
1406
1489
  - `pipeline.test.js` — Pipeline motor: stages/jobs/tasks, dependencias cross-level con paths dotted, resultados jerárquicos (stage.job.task), fluent API, registry, reset, ctx access, detección de tipo por propiedad, PipelineResultsAccessor
1407
1490
  - `service-notify.test.js` — ServiceError, ctx.wrap(), Notifier con service/method/args, classifiers.byService/messages.byService, unwrap de ServiceError en byCommand/byPattern/byRule, integración completa, backward compat
1408
1491
  - `yaml.test.js` — YamlService: fromYaml/fromJson, yamlGet/yamlSet/yamlPush/yamlOmit, comment(), prepare() con $set/$push/$spread/$superSet/$merge/$delete, multidocument/use/clone
package/dist/index.d.ts CHANGED
@@ -14,6 +14,8 @@ export { http, HttpService, HttpRegistry } from "./services/http";
14
14
  export type { HttpMethod, HttpRequest, HttpResponse, HttpServiceConfig, RequestInterceptor, ResponseInterceptor, RequestContext, ResponseContext } from "./services/http-types";
15
15
  export { AzureDevOpsApi } from "./services/azdo-api";
16
16
  export type { AzureDevOpsApiConfig, AzdoRequestOptions, AzdoProject, AzdoGitRepository, AzdoGitBranch, AzdoGitCommitRef, AzdoGitAuthor, AzdoGitPullRequest, AzdoBuildDefinition, AzdoBuild, AzdoPipeline, AzdoWorkItem, AzdoListResponse, AzdoWebHookSubscription, AzdoEnvironment, AzdoIdentityGroup, AzdoPolicyConfiguration, AzdoAgentPool, AzdoAgentQueue, AzdoVariableGroup, AzdoBuildFolder, AzdoServiceEndpoint, AzdoGitRef, AzdoGitTag, AzdoGitItem } from "./services/azdo-api";
17
+ export { AzdoApiError, parseAzdoError, formatAzdoError } from "./services/azdo-errors";
18
+ export type { AzdoErrorDetail, AzdoErrorBody } from "./services/azdo-errors";
17
19
  export { Notifier } from "./core/Notifier";
18
20
  export * as senders from "./core/senders";
19
21
  export * as classifiers from "./core/classifiers";
package/dist/index.js CHANGED
@@ -33,7 +33,7 @@ var __importStar = (this && this.__importStar) || (function () {
33
33
  };
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.ServiceError = exports.messages = exports.classifiers = exports.senders = exports.Notifier = exports.AzureDevOpsApi = exports.HttpRegistry = exports.HttpService = exports.http = exports.YamlService = exports.PipelineResultsAccessor = exports.PipelineTask = exports.PipelineJob = exports.PipelineStage = exports.Pipeline = exports.PipelineRegistry = exports.services = exports.prompt = exports.logger = exports.Menu = exports.Context = void 0;
36
+ exports.ServiceError = exports.messages = exports.classifiers = exports.senders = exports.Notifier = exports.formatAzdoError = exports.parseAzdoError = exports.AzdoApiError = exports.AzureDevOpsApi = exports.HttpRegistry = exports.HttpService = exports.http = exports.YamlService = exports.PipelineResultsAccessor = exports.PipelineTask = exports.PipelineJob = exports.PipelineStage = exports.Pipeline = exports.PipelineRegistry = exports.services = exports.prompt = exports.logger = exports.Menu = exports.Context = void 0;
37
37
  var Context_1 = require("./core/Context");
38
38
  Object.defineProperty(exports, "Context", { enumerable: true, get: function () { return Context_1.Context; } });
39
39
  var Menu_1 = require("./core/Menu");
@@ -58,6 +58,10 @@ Object.defineProperty(exports, "HttpService", { enumerable: true, get: function
58
58
  Object.defineProperty(exports, "HttpRegistry", { enumerable: true, get: function () { return http_1.HttpRegistry; } });
59
59
  var azdo_api_1 = require("./services/azdo-api");
60
60
  Object.defineProperty(exports, "AzureDevOpsApi", { enumerable: true, get: function () { return azdo_api_1.AzureDevOpsApi; } });
61
+ var azdo_errors_1 = require("./services/azdo-errors");
62
+ Object.defineProperty(exports, "AzdoApiError", { enumerable: true, get: function () { return azdo_errors_1.AzdoApiError; } });
63
+ Object.defineProperty(exports, "parseAzdoError", { enumerable: true, get: function () { return azdo_errors_1.parseAzdoError; } });
64
+ Object.defineProperty(exports, "formatAzdoError", { enumerable: true, get: function () { return azdo_errors_1.formatAzdoError; } });
61
65
  var Notifier_1 = require("./core/Notifier");
62
66
  Object.defineProperty(exports, "Notifier", { enumerable: true, get: function () { return Notifier_1.Notifier; } });
63
67
  exports.senders = __importStar(require("./core/senders"));
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAAyC;AAAhC,kGAAA,OAAO,OAAA;AAGhB,oCAAmC;AAA1B,4FAAA,IAAI,OAAA;AAEb,wCAAuC;AAA9B,gGAAA,MAAM,OAAA;AAGf,wDAAwC;AAExC,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA;AAGjB,gDAAoI;AAA3H,4GAAA,gBAAgB,OAAA;AAAE,oGAAA,QAAQ,OAAA;AAAE,yGAAA,aAAa,OAAA;AAAE,uGAAA,WAAW,OAAA;AAAE,wGAAA,YAAY,OAAA;AAAE,mHAAA,uBAAuB,OAAA;AAYtG,wCAA8C;AAArC,mGAAA,WAAW,OAAA;AAGpB,wCAAkE;AAAzD,4FAAA,IAAI,OAAA;AAAE,mGAAA,WAAW,OAAA;AAAE,oGAAA,YAAY,OAAA;AAYxC,gDAAqD;AAA5C,0GAAA,cAAc,OAAA;AA6BvB,4CAA2C;AAAlC,oGAAA,QAAQ,OAAA;AACjB,0DAA0C;AAC1C,kEAAkD;AAClD,4DAA4C;AAmB5C,sCAA4C;AAAnC,qGAAA,YAAY,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAAyC;AAAhC,kGAAA,OAAO,OAAA;AAGhB,oCAAmC;AAA1B,4FAAA,IAAI,OAAA;AAEb,wCAAuC;AAA9B,gGAAA,MAAM,OAAA;AAGf,wDAAwC;AAExC,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA;AAGjB,gDAAoI;AAA3H,4GAAA,gBAAgB,OAAA;AAAE,oGAAA,QAAQ,OAAA;AAAE,yGAAA,aAAa,OAAA;AAAE,uGAAA,WAAW,OAAA;AAAE,wGAAA,YAAY,OAAA;AAAE,mHAAA,uBAAuB,OAAA;AAYtG,wCAA8C;AAArC,mGAAA,WAAW,OAAA;AAGpB,wCAAkE;AAAzD,4FAAA,IAAI,OAAA;AAAE,mGAAA,WAAW,OAAA;AAAE,oGAAA,YAAY,OAAA;AAYxC,gDAAqD;AAA5C,0GAAA,cAAc,OAAA;AA6BvB,sDAAuF;AAA9E,2GAAA,YAAY,OAAA;AAAE,6GAAA,cAAc,OAAA;AAAE,8GAAA,eAAe,OAAA;AAGtD,4CAA2C;AAAlC,oGAAA,QAAQ,OAAA;AACjB,0DAA0C;AAC1C,kEAAkD;AAClD,4DAA4C;AAmB5C,sCAA4C;AAAnC,qGAAA,YAAY,OAAA"}
@@ -1,7 +1,13 @@
1
- import type { HttpRequest, HttpResponse } from "./http-types";
1
+ import type { HttpRequest, HttpResponse, RequestInterceptor, ResponseInterceptor } from "./http-types";
2
2
  import type { ExecOptions } from "../core/types";
3
3
  interface HttpAgent {
4
4
  request<T = unknown>(req: HttpRequest): Promise<HttpResponse<T>>;
5
+ addRequestInterceptor?(interceptor: RequestInterceptor): unknown;
6
+ removeRequestInterceptor?(interceptor: RequestInterceptor): unknown;
7
+ clearRequestInterceptors?(): unknown;
8
+ addResponseInterceptor?(interceptor: ResponseInterceptor): unknown;
9
+ removeResponseInterceptor?(interceptor: ResponseInterceptor): unknown;
10
+ clearResponseInterceptors?(): unknown;
5
11
  }
6
12
  export interface AzureDevOpsApiConfig {
7
13
  /** URL base de la instancia (e.g. https://dev.azure.com/myorg o https://myorg.visualstudio.com). */
@@ -14,6 +20,17 @@ export interface AzureDevOpsApiConfig {
14
20
  apiVersion?: string;
15
21
  /** Agent HTTP a usar para las peticiones. Si no se pasa, se crea uno interno. */
16
22
  agent?: HttpAgent;
23
+ /**
24
+ * Interceptores de request que se registran en el agente HTTP
25
+ * (interno o inyectado, siempre que lo soporte). Útiles para tracing,
26
+ * headers extra, métricas, etc. Se ejecutan ANTES de enviar cada petición.
27
+ */
28
+ requestInterceptors?: RequestInterceptor[];
29
+ /**
30
+ * Interceptores de response que se registran en el agente HTTP.
31
+ * Se ejecutan DESPUÉS de recibir cada respuesta (incluye errores HTTP).
32
+ */
33
+ responseInterceptors?: ResponseInterceptor[];
17
34
  }
18
35
  export interface AzdoRequestOptions {
19
36
  /** Project override para esta llamada. */
@@ -218,7 +235,32 @@ export declare class AzureDevOpsApi {
218
235
  private apiVersion;
219
236
  private agent;
220
237
  private ownAgent;
238
+ /** Interceptores en cola mientras el agente (perezoso) aún no existe. */
239
+ private pendingRequestInterceptors;
240
+ private pendingResponseInterceptors;
221
241
  configure(config: AzureDevOpsApiConfig): this;
242
+ /**
243
+ * Registra un interceptor de request en el agente HTTP. Si el agente
244
+ * interno aún no existe, queda en cola y se aplica al crearlo.
245
+ */
246
+ addRequestInterceptor(interceptor: RequestInterceptor): this;
247
+ /** Elimina un interceptor de request (de la cola o del agente activo). */
248
+ removeRequestInterceptor(interceptor: RequestInterceptor): this;
249
+ /** Elimina todos los interceptores de request (cola + agente activo). */
250
+ clearRequestInterceptors(): this;
251
+ /**
252
+ * Registra un interceptor de response en el agente HTTP. Si el agente
253
+ * interno aún no existe, queda en cola y se aplica al crearlo.
254
+ */
255
+ addResponseInterceptor(interceptor: ResponseInterceptor): this;
256
+ /** Elimina un interceptor de response (de la cola o del agente activo). */
257
+ removeResponseInterceptor(interceptor: ResponseInterceptor): this;
258
+ /** Elimina todos los interceptores de response (cola + agente activo). */
259
+ clearResponseInterceptors(): this;
260
+ /** Vuelca la cola de interceptores pendientes sobre el agente activo. */
261
+ private flushPendingInterceptors;
262
+ /** Falla con un error descriptivo si el agente no soporta interceptores. */
263
+ private requireAgentMethod;
222
264
  private getAgent;
223
265
  private assertConfigured;
224
266
  private authHeaders;
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AzureDevOpsApi = void 0;
4
4
  const http_1 = require("./http");
5
+ const azdo_errors_1 = require("./azdo-errors");
5
6
  // ---------------------------------------------------------------------------
6
7
  // AzureDevOpsApi
7
8
  // ---------------------------------------------------------------------------
@@ -13,6 +14,9 @@ class AzureDevOpsApi {
13
14
  this.apiVersion = "7.1";
14
15
  this.agent = null;
15
16
  this.ownAgent = false;
17
+ /** Interceptores en cola mientras el agente (perezoso) aún no existe. */
18
+ this.pendingRequestInterceptors = [];
19
+ this.pendingResponseInterceptors = [];
16
20
  }
17
21
  configure(config) {
18
22
  this.baseUrl = config.baseUrl.replace(/\/+$/, "");
@@ -25,8 +29,110 @@ class AzureDevOpsApi {
25
29
  this.agent = config.agent;
26
30
  this.ownAgent = false;
27
31
  }
32
+ // Los interceptores se aplican al agente activo, o quedan en cola si
33
+ // el agente interno todavía no se ha creado.
34
+ for (const i of config.requestInterceptors ?? [])
35
+ this.addRequestInterceptor(i);
36
+ for (const i of config.responseInterceptors ?? [])
37
+ this.addResponseInterceptor(i);
28
38
  return this;
29
39
  }
40
+ // ---- interceptores del agente HTTP ----
41
+ /**
42
+ * Registra un interceptor de request en el agente HTTP. Si el agente
43
+ * interno aún no existe, queda en cola y se aplica al crearlo.
44
+ */
45
+ addRequestInterceptor(interceptor) {
46
+ if (this.agent) {
47
+ this.requireAgentMethod("addRequestInterceptor");
48
+ this.agent.addRequestInterceptor(interceptor);
49
+ }
50
+ else {
51
+ this.pendingRequestInterceptors.push(interceptor);
52
+ }
53
+ return this;
54
+ }
55
+ /** Elimina un interceptor de request (de la cola o del agente activo). */
56
+ removeRequestInterceptor(interceptor) {
57
+ const idx = this.pendingRequestInterceptors.indexOf(interceptor);
58
+ if (idx !== -1) {
59
+ this.pendingRequestInterceptors.splice(idx, 1);
60
+ return this;
61
+ }
62
+ if (this.agent) {
63
+ this.requireAgentMethod("removeRequestInterceptor");
64
+ this.agent.removeRequestInterceptor(interceptor);
65
+ }
66
+ return this;
67
+ }
68
+ /** Elimina todos los interceptores de request (cola + agente activo). */
69
+ clearRequestInterceptors() {
70
+ this.pendingRequestInterceptors = [];
71
+ if (this.agent) {
72
+ this.requireAgentMethod("clearRequestInterceptors");
73
+ this.agent.clearRequestInterceptors();
74
+ }
75
+ return this;
76
+ }
77
+ /**
78
+ * Registra un interceptor de response en el agente HTTP. Si el agente
79
+ * interno aún no existe, queda en cola y se aplica al crearlo.
80
+ */
81
+ addResponseInterceptor(interceptor) {
82
+ if (this.agent) {
83
+ this.requireAgentMethod("addResponseInterceptor");
84
+ this.agent.addResponseInterceptor(interceptor);
85
+ }
86
+ else {
87
+ this.pendingResponseInterceptors.push(interceptor);
88
+ }
89
+ return this;
90
+ }
91
+ /** Elimina un interceptor de response (de la cola o del agente activo). */
92
+ removeResponseInterceptor(interceptor) {
93
+ const idx = this.pendingResponseInterceptors.indexOf(interceptor);
94
+ if (idx !== -1) {
95
+ this.pendingResponseInterceptors.splice(idx, 1);
96
+ return this;
97
+ }
98
+ if (this.agent) {
99
+ this.requireAgentMethod("removeResponseInterceptor");
100
+ this.agent.removeResponseInterceptor(interceptor);
101
+ }
102
+ return this;
103
+ }
104
+ /** Elimina todos los interceptores de response (cola + agente activo). */
105
+ clearResponseInterceptors() {
106
+ this.pendingResponseInterceptors = [];
107
+ if (this.agent) {
108
+ this.requireAgentMethod("clearResponseInterceptors");
109
+ this.agent.clearResponseInterceptors();
110
+ }
111
+ return this;
112
+ }
113
+ /** Vuelca la cola de interceptores pendientes sobre el agente activo. */
114
+ flushPendingInterceptors() {
115
+ if (!this.agent)
116
+ return;
117
+ while (this.pendingRequestInterceptors.length) {
118
+ const i = this.pendingRequestInterceptors.shift();
119
+ this.requireAgentMethod("addRequestInterceptor");
120
+ this.agent.addRequestInterceptor(i);
121
+ }
122
+ while (this.pendingResponseInterceptors.length) {
123
+ const i = this.pendingResponseInterceptors.shift();
124
+ this.requireAgentMethod("addResponseInterceptor");
125
+ this.agent.addResponseInterceptor(i);
126
+ }
127
+ }
128
+ /** Falla con un error descriptivo si el agente no soporta interceptores. */
129
+ requireAgentMethod(method) {
130
+ const agent = this.agent;
131
+ if (!agent || typeof agent[method] !== "function") {
132
+ throw new Error(`El agente HTTP configurado no soporta interceptores (falta "${method}"). ` +
133
+ "Provee una instancia de HttpService o deja que AzureDevOpsApi cree su agente interno.");
134
+ }
135
+ }
30
136
  getAgent() {
31
137
  if (!this.agent) {
32
138
  // Agente interno: se crea perezosamente en la primera petición,
@@ -34,6 +140,7 @@ class AzureDevOpsApi {
34
140
  this.agent = new http_1.HttpService();
35
141
  this.ownAgent = true;
36
142
  }
143
+ this.flushPendingInterceptors();
37
144
  return this.agent;
38
145
  }
39
146
  assertConfigured() {
@@ -61,17 +168,25 @@ class AzureDevOpsApi {
61
168
  const prefix = opts?.organizationLevel ? "" : this.projectPath(opts);
62
169
  const url = `${this.baseUrl}${prefix}/_apis${apiPath}`;
63
170
  const agent = this.getAgent();
64
- return agent.request({
65
- url,
66
- method,
67
- headers: this.authHeaders(),
68
- body: opts?.body,
69
- query: {
70
- "api-version": this.version(opts),
71
- ...opts?.query
72
- },
73
- exec: opts?.exec
74
- });
171
+ try {
172
+ return await agent.request({
173
+ url,
174
+ method,
175
+ headers: this.authHeaders(),
176
+ body: opts?.body,
177
+ query: {
178
+ "api-version": this.version(opts),
179
+ ...opts?.query
180
+ },
181
+ exec: opts?.exec
182
+ });
183
+ }
184
+ catch (err) {
185
+ // Enriquece los errores HTTP con el detalle legible de Azure DevOps
186
+ // (message/typeKey/TF-code del body + sugerencias). El error envuelto
187
+ // conserva `status`, así que los checks de 404 siguen funcionando.
188
+ throw (0, azdo_errors_1.toAzdoApiError)(err);
189
+ }
75
190
  }
76
191
  // =========================================================================
77
192
  // Projects
@@ -1 +1 @@
1
- {"version":3,"file":"azdo-api.js","sourceRoot":"","sources":["../../src/services/azdo-api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"azdo-api.js","sourceRoot":"","sources":["../../src/services/azdo-api.ts"],"names":[],"mappings":";;;AAEA,iCAAqC;AACrC,+CAA+C;AAuQ/C,8EAA8E;AAC9E,iBAAiB;AACjB,8EAA8E;AAE9E,MAAa,cAAc;IAA3B;QAEY,YAAO,GAAG,EAAE,CAAC;QACb,QAAG,GAAG,EAAE,CAAC;QACT,YAAO,GAAG,EAAE,CAAC;QACb,eAAU,GAAG,KAAK,CAAC;QACnB,UAAK,GAAqB,IAAI,CAAC;QAC/B,aAAQ,GAAG,KAAK,CAAC;QACzB,yEAAyE;QACjE,+BAA0B,GAAyB,EAAE,CAAC;QACtD,gCAA2B,GAA0B,EAAE,CAAC;IA81CpE,CAAC;IA51CG,SAAS,CAAC,MAA4B;QAClC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAClD,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;QACtB,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS;YAAE,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAChE,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS;YAAE,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QACzE,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;YAC1B,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QAC1B,CAAC;QACD,qEAAqE;QACrE,6CAA6C;QAC7C,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,mBAAmB,IAAI,EAAE;YAAE,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAChF,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,oBAAoB,IAAI,EAAE;YAAE,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC;QAClF,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,0CAA0C;IAE1C;;;OAGG;IACH,qBAAqB,CAAC,WAA+B;QACjD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,kBAAkB,CAAC,uBAAuB,CAAC,CAAC;YACjD,IAAI,CAAC,KAAK,CAAC,qBAAsB,CAAC,WAAW,CAAC,CAAC;QACnD,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACtD,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,0EAA0E;IAC1E,wBAAwB,CAAC,WAA+B;QACpD,MAAM,GAAG,GAAG,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACjE,IAAI,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC;YACb,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YAC/C,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,kBAAkB,CAAC,0BAA0B,CAAC,CAAC;YACpD,IAAI,CAAC,KAAK,CAAC,wBAAyB,CAAC,WAAW,CAAC,CAAC;QACtD,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,yEAAyE;IACzE,wBAAwB;QACpB,IAAI,CAAC,0BAA0B,GAAG,EAAE,CAAC;QACrC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,kBAAkB,CAAC,0BAA0B,CAAC,CAAC;YACpD,IAAI,CAAC,KAAK,CAAC,wBAAyB,EAAE,CAAC;QAC3C,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;OAGG;IACH,sBAAsB,CAAC,WAAgC;QACnD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,kBAAkB,CAAC,wBAAwB,CAAC,CAAC;YAClD,IAAI,CAAC,KAAK,CAAC,sBAAuB,CAAC,WAAW,CAAC,CAAC;QACpD,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACvD,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,2EAA2E;IAC3E,yBAAyB,CAAC,WAAgC;QACtD,MAAM,GAAG,GAAG,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAClE,IAAI,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC;YACb,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YAChD,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,kBAAkB,CAAC,2BAA2B,CAAC,CAAC;YACrD,IAAI,CAAC,KAAK,CAAC,yBAA0B,CAAC,WAAW,CAAC,CAAC;QACvD,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,0EAA0E;IAC1E,yBAAyB;QACrB,IAAI,CAAC,2BAA2B,GAAG,EAAE,CAAC;QACtC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,kBAAkB,CAAC,2BAA2B,CAAC,CAAC;YACrD,IAAI,CAAC,KAAK,CAAC,yBAA0B,EAAE,CAAC;QAC5C,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,yEAAyE;IACjE,wBAAwB;QAC5B,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO;QACxB,OAAO,IAAI,CAAC,0BAA0B,CAAC,MAAM,EAAE,CAAC;YAC5C,MAAM,CAAC,GAAG,IAAI,CAAC,0BAA0B,CAAC,KAAK,EAAG,CAAC;YACnD,IAAI,CAAC,kBAAkB,CAAC,uBAAuB,CAAC,CAAC;YACjD,IAAI,CAAC,KAAK,CAAC,qBAAsB,CAAC,CAAC,CAAC,CAAC;QACzC,CAAC;QACD,OAAO,IAAI,CAAC,2BAA2B,CAAC,MAAM,EAAE,CAAC;YAC7C,MAAM,CAAC,GAAG,IAAI,CAAC,2BAA2B,CAAC,KAAK,EAAG,CAAC;YACpD,IAAI,CAAC,kBAAkB,CAAC,wBAAwB,CAAC,CAAC;YAClD,IAAI,CAAC,KAAK,CAAC,sBAAuB,CAAC,CAAC,CAAC,CAAC;QAC1C,CAAC;IACL,CAAC;IAED,4EAA4E;IACpE,kBAAkB,CAAC,MAAgC;QACvD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAuC,CAAC;QAC3D,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,CAAC,MAAM,CAAC,KAAK,UAAU,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CACX,+DAA+D,MAAM,MAAM;gBAC3E,uFAAuF,CAC1F,CAAC;QACN,CAAC;IACL,CAAC;IAEO,QAAQ;QACZ,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YACd,gEAAgE;YAChE,mEAAmE;YACnE,IAAI,CAAC,KAAK,GAAG,IAAI,kBAAW,EAAE,CAAC;YAC/B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACzB,CAAC;QACD,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;IAEO,gBAAgB;QACpB,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CACX,yEAAyE,CAC5E,CAAC;QACN,CAAC;IACL,CAAC;IAEO,WAAW;QACf,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC/D,OAAO;YACH,eAAe,EAAE,SAAS,OAAO,EAAE;YACnC,QAAQ,EAAE,kBAAkB;SAC/B,CAAC;IACN,CAAC;IAEO,WAAW,CAAC,IAAyB;QACzC,MAAM,CAAC,GAAG,IAAI,EAAE,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC;QACxC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5B,CAAC;IAEO,OAAO,CAAC,IAAyB;QACrC,OAAO,IAAI,EAAE,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC;IAC/C,CAAC;IAED,oCAAoC;IAEpC,KAAK,CAAC,OAAO,CACT,MAAmD,EACnD,OAAe,EACf,IAA8C;QAE9C,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACrE,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,OAAO,GAAG,MAAM,SAAS,OAAO,EAAE,CAAC;QACvD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC9B,IAAI,CAAC;YACD,OAAO,MAAM,KAAK,CAAC,OAAO,CAAI;gBAC1B,GAAG;gBACH,MAAM;gBACN,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE;gBAC3B,IAAI,EAAE,IAAI,EAAE,IAAI;gBAChB,KAAK,EAAE;oBACH,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;oBACjC,GAAG,IAAI,EAAE,KAAK;iBACjB;gBACD,IAAI,EAAE,IAAI,EAAE,IAAI;aACnB,CAAC,CAAC;QACP,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,oEAAoE;YACpE,sEAAsE;YACtE,mEAAmE;YACnE,MAAM,IAAA,4BAAc,EAAC,GAAG,CAAC,CAAC;QAC9B,CAAC;IACL,CAAC;IAED,4EAA4E;IAC5E,WAAW;IACX,4EAA4E;IAE5E,oDAAoD;IACpD,YAAY,CAAC,IAAyB;QAClC,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,GAAG,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC;IAClF,CAAC;IAED,6CAA6C;IAC7C,UAAU,CAAC,eAAuB,EAAE,IAAyB;QACzD,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,aAAa,kBAAkB,CAAC,eAAe,CAAC,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC;IACzH,CAAC;IAED,4EAA4E;IAC5E,mBAAmB;IACnB,4EAA4E;IAE5E,0CAA0C;IAC1C,SAAS,CAAC,IAAyB;QAC/B,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,mBAAmB,EAAE,IAAI,CAAC,CAAC;IAC1D,CAAC;IAED,yCAAyC;IACzC,OAAO,CAAC,YAAoB,EAAE,IAAyB;QACnD,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,qBAAqB,kBAAkB,CAAC,YAAY,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAC9F,CAAC;IAED,4EAA4E;IAC5E,WAAW;IACX,4EAA4E;IAE5E,2CAA2C;IAC3C,YAAY,CAAC,YAAoB,EAAE,IAAyB;QACxD,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,qBAAqB,kBAAkB,CAAC,YAAY,CAAC,OAAO,EAAE;YACrF,GAAG,IAAI;YACP,KAAK,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE;SAC9C,CAAC,CAAC;IACP,CAAC;IAED,8DAA8D;IAC9D,KAAK,CAAC,YAAY,CACd,YAAoB,EACpB,UAAkB,EAClB,IAAyB;QAEzB,IAAI,CAAC;YACD,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,cAAc,UAAU,EAAE,CAAC;YAC/F,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,qBAAqB,kBAAkB,CAAC,YAAY,CAAC,SAAS,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC;YACzG,OAAO,IAAI,CAAC;QAChB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,QAAQ,IAAI,GAAG,IAAK,GAA0B,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBAClG,OAAO,KAAK,CAAC;YACjB,CAAC;YACD,MAAM,GAAG,CAAC;QACd,CAAC;IACL,CAAC;IAED,0DAA0D;IAC1D,SAAS,CAAC,YAAoB,EAAE,UAAkB,EAAE,IAAyB;QACzE,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,cAAc,UAAU,EAAE,CAAC;QAC/F,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,qBAAqB,kBAAkB,CAAC,YAAY,CAAC,SAAS,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC;IAC9G,CAAC;IAED,4EAA4E;IAC5E,UAAU;IACV,4EAA4E;IAE5E,mCAAmC;IACnC,WAAW,CACP,YAAoB,EACpB,IAA4E;QAE5E,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,IAAI,MAAM,CAAC;QACtC,MAAM,IAAI,GAA4B;YAClC,cAAc,EAAE;gBACZ,WAAW,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE;gBACvD,GAAG,CAAC,IAAI,EAAE,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtD,GAAG,CAAC,IAAI,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC5D;SACJ,CAAC;QACF,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,qBAAqB,kBAAkB,CAAC,YAAY,CAAC,UAAU,EAAE;YACzF,GAAG,IAAI;YACP,IAAI;SACP,CAAC,CAAC;IACP,CAAC;IAED,oCAAoC;IACpC,SAAS,CAAC,YAAoB,EAAE,QAAgB,EAAE,IAAyB;QACvE,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,qBAAqB,kBAAkB,CAAC,YAAY,CAAC,YAAY,QAAQ,EAAE,EAAE,IAAI,CAAC,CAAC;IAClH,CAAC;IAED,4EAA4E;IAC5E,gBAAgB;IAChB,4EAA4E;IAE5E,sCAAsC;IACtC,gBAAgB,CACZ,YAAoB,EACpB,IAAqF;QAErF,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,qBAAqB,kBAAkB,CAAC,YAAY,CAAC,eAAe,EAAE;YAC7F,GAAG,IAAI;YACP,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,IAAI,QAAQ,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE;SAC9D,CAAC,CAAC;IACP,CAAC;IAED,sCAAsC;IACtC,cAAc,CAAC,YAAoB,EAAE,aAAqB,EAAE,IAAyB;QACjF,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,qBAAqB,kBAAkB,CAAC,YAAY,CAAC,iBAAiB,aAAa,EAAE,EAAE,IAAI,CAAC,CAAC;IAC5H,CAAC;IAED,4BAA4B;IAC5B,iBAAiB,CACb,YAAoB,EACpB,EAAyF,EACzF,IAAyB;QAEzB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,qBAAqB,kBAAkB,CAAC,YAAY,CAAC,eAAe,EAAE;YAC9F,GAAG,IAAI;YACP,IAAI,EAAE,EAAE;SACX,CAAC,CAAC;IACP,CAAC;IAED,4EAA4E;IAC5E,oBAAoB;IACpB,4EAA4E;IAE5E,mCAAmC;IACnC,oBAAoB,CAAC,IAAyB;QAC1C,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,oBAAoB,EAAE,IAAI,CAAC,CAAC;IAC3D,CAAC;IAED,8CAA8C;IAC9C,kBAAkB,CAAC,YAAoB,EAAE,IAAyB;QAC9D,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,sBAAsB,YAAY,EAAE,EAAE,IAAI,CAAC,CAAC;IAC3E,CAAC;IAED,4EAA4E;IAC5E,SAAS;IACT,4EAA4E;IAE5E,8BAA8B;IAC9B,UAAU,CACN,IAAoF;QAEpF,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,eAAe,EAAE;YACxC,GAAG,IAAI;YACP,KAAK,EAAE;gBACH,GAAG,CAAC,IAAI,EAAE,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChF,GAAG,CAAC,IAAI,EAAE,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtD,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACpE,GAAG,IAAI,EAAE,KAAK;aACjB;SACJ,CAAC,CAAC;IACP,CAAC;IAED,+BAA+B;IAC/B,QAAQ,CAAC,OAAe,EAAE,IAAyB;QAC/C,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,iBAAiB,OAAO,EAAE,EAAE,IAAI,CAAC,CAAC;IACjE,CAAC;IAED,gCAAgC;IAChC,UAAU,CACN,YAAoB,EACpB,IAAqF;QAErF,MAAM,IAAI,GAA4B,EAAE,UAAU,EAAE,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,CAAC;QAC3E,IAAI,IAAI,EAAE,MAAM,EAAE,CAAC;YACf,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,IAAI,CAAC,MAAM,EAAE,CAAC;QACpG,CAAC;QACD,IAAI,IAAI,EAAE,UAAU,EAAE,CAAC;YACnB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACtC,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,eAAe,EAAE,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,4EAA4E;IAC5E,YAAY;IACZ,4EAA4E;IAE5E,oCAAoC;IACpC,aAAa,CAAC,IAAyB;QACnC,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC;IACnD,CAAC;IAED,kCAAkC;IAClC,WAAW,CAAC,UAAkB,EAAE,IAAyB;QACrD,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,cAAc,UAAU,EAAE,EAAE,IAAI,CAAC,CAAC;IACjE,CAAC;IAED,iCAAiC;IACjC,WAAW,CACP,UAAkB,EAClB,IAA+F;QAE/F,MAAM,IAAI,GAA4B,EAAE,CAAC;QACzC,IAAI,IAAI,EAAE,MAAM,EAAE,CAAC;YACf,IAAI,CAAC,SAAS,GAAG;gBACb,YAAY,EAAE;oBACV,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,IAAI,CAAC,MAAM,EAAE,EAAE;iBACjG;aACJ,CAAC;QACN,CAAC;QACD,IAAI,IAAI,EAAE,SAAS,EAAE,CAAC;YAClB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QACpC,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,cAAc,UAAU,OAAO,EAAE,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IACpF,CAAC;IAED,4EAA4E;IAC5E,aAAa;IACb,4EAA4E;IAE5E,mCAAmC;IACnC,WAAW,CACP,UAAkB,EAClB,IAAiD;QAEjD,MAAM,KAAK,GAA0D,EAAE,CAAC;QACxE,IAAI,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;YACvB,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACzC,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,kBAAkB,UAAU,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACnF,CAAC;IAED,oCAAoC;IACpC,cAAc,CACV,IAAY,EACZ,IAAyB;QAEzB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,WAAW,EAAE;YACrC,GAAG,IAAI;YACP,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;SACxB,CAAC,CAAC;IACP,CAAC;IAED,4EAA4E;IAC5E,iDAAiD;IACjD,4EAA4E;IAE5E,yEAAyE;IACzE,KAAK,CAAC,UAAU,CACZ,OAA2B,EAC3B,QAAgB,EAChB,IAAyB;QAEzB,IAAI,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAC1B,KAAK,EACL,qBAAqB,kBAAkB,CAAC,QAAQ,CAAC,EAAE,EACnD,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,OAAO,EAAE,CACjD,CAAC;YACF,OAAO,GAAG,CAAC,IAAI,CAAC;QACpB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,QAAQ,IAAI,GAAG,IAAK,GAA0B,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBAClG,OAAO,SAAS,CAAC;YACrB,CAAC;YACD,MAAM,GAAG,CAAC;QACd,CAAC;IACL,CAAC;IAED,0CAA0C;IAC1C,gBAAgB,CACZ,WAAmB,EACnB,SAAiB,EACjB,QAAgB,EAChB,IAAyB;QAEzB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,mBAAmB,EAAE;YAC7C,GAAG,IAAI;YACP,IAAI,EAAE;gBACF,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE;aAChD;SACJ,CAAC,CAAC;IACP,CAAC;IAED,4EAA4E;IAC5E,sBAAsB;IACtB,4EAA4E;IAE5E,sDAAsD;IACtD,YAAY,CACR,OAA2B,EAC3B,QAAgB,EAChB,UAAkB,EAClB,YAAoB,EACpB,IAAyB;QAEzB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,qBAAqB,kBAAkB,CAAC,QAAQ,CAAC,OAAO,EAAE;YAClF,GAAG,IAAI;YACP,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,OAAO;YACjC,IAAI,EAAE;gBACF;oBACI,IAAI,EAAE,cAAc,UAAU,EAAE;oBAChC,WAAW,EAAE,YAAY;oBACzB,WAAW,EAAE,0CAA0C;iBAC1D;aACJ;SACJ,CAAC,CAAC;IACP,CAAC;IAED,4EAA4E;IAC5E,mBAAmB;IACnB,4EAA4E;IAE5E,8EAA8E;IAC9E,KAAK,CAAC,eAAe,CACjB,OAA2B,EAC3B,YAAoB,EACpB,IAAyB;QAEzB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAC1B,KAAK,EACL,qBAAqB,kBAAkB,CAAC,YAAY,CAAC,UAAU,EAC/D,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,EAAE,CACrF,CAAC;QACF,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QACxC,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjC,OAAO;YACH,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI;YACxB,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE;SACjE,CAAC;IACN,CAAC;IAED,4EAA4E;IAC5E,0BAA0B;IAC1B,4EAA4E;IAE5E,mFAAmF;IACnF,KAAK,CAAC,UAAU,CACZ,OAA2B,EAC3B,QAAgB,EAChB,UAAkB,EAClB,QAAgB,EAChB,IAAyB;QAEzB,IAAI,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAC1B,KAAK,EACL,qBAAqB,kBAAkB,CAAC,QAAQ,CAAC,QAAQ,EACzD;gBACI,GAAG,IAAI;gBACP,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,OAAO;gBACjC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,2BAA2B,EAAE,UAAU,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE;aACrF,CACJ,CAAC;YACF,OAAO,GAAG,CAAC,IAAI,CAAC;QACpB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,QAAQ,IAAI,GAAG,IAAK,GAA0B,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBAClG,OAAO,SAAS,CAAC;YACrB,CAAC;YACD,MAAM,GAAG,CAAC;QACd,CAAC;IACL,CAAC;IAED,4EAA4E;IAC5E,0BAA0B;IAC1B,4EAA4E;IAE5E,2EAA2E;IAC3E,KAAK,CAAC,kBAAkB,CACpB,OAOC,EACD,IAAyB;QAEzB,IAAI,GAAuB,CAAC;QAC5B,IAAI,CAAC;YACD,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,OAAO,CAAC,MAAM,EAAE,CAAC;YAC3G,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,OAAO,CAChC,KAAK,EACL,qBAAqB,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,OAAO,EAAE,EACvE,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CACxC,CAAC;YACF,GAAG,GAAG,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC;QAC/C,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,QAAQ,IAAI,GAAG,IAAK,GAA0B,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBAClG,GAAG,GAAG,SAAS,CAAC;YACpB,CAAC;iBAAM,CAAC;gBACJ,MAAM,GAAG,CAAC;YACd,CAAC;QACL,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QAC5G,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACtD,OAAO,IAAI,CAAC,OAAO,CACf,MAAM,EACN,qBAAqB,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAC9D;YACI,GAAG,IAAI;YACP,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,IAAI,EAAE;gBACF,UAAU,EAAE;oBACR;wBACI,IAAI,EAAE,cAAc,OAAO,CAAC,MAAM,EAAE;wBACpC,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,0CAA0C,CAAC,CAAC,CAAC,GAAG;qBACvE;iBACJ;gBACD,OAAO,EAAE;oBACL;wBACI,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,kBAAkB;wBAC9C,OAAO,EAAE;4BACL;gCACI,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK;gCACnC,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,QAAQ,EAAE;gCAChC,UAAU,EAAE;oCACR,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW;oCAChF,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS;iCACtD;6BACJ;yBACJ;qBACJ;iBACJ;aACJ;SACJ,CACJ,CAAC;IACN,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,gBAAgB,CAClB,OAA2B,EAC3B,IAAY,EACZ,MAAc,EACd,QAAgB,EAChB,QAAgB,EAChB,WAAmB,EACnB,IAAyB;QAEzB,MAAM,gBAAgB,GAAmD;YACrE,kBAAkB,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE;SAC5D,CAAC;QAEF,IAAI,gBAAgB,CAAC,WAAW,CAAC,EAAE,CAAC;YAChC,OAAO,IAAI,CAAC,kBAAkB,CAAC;gBAC3B,OAAO;gBACP,IAAI;gBACJ,MAAM;gBACN,QAAQ,EAAE,GAAG,QAAQ,IAAI,gBAAgB,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE;gBAC7D,WAAW,EAAE,KAAK,IAAI,yBAAyB;aAClD,EAAE,IAAI,CAAC,CAAC;QACb,CAAC;QAED,OAAO,IAAI,CAAC,kBAAkB,CAAC;YAC3B,OAAO;YACP,IAAI;YACJ,MAAM;YACN,QAAQ,EAAE,GAAG,QAAQ,IAAI,QAAQ,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;YACxD,WAAW;YACX,OAAO,EAAE,oCAAoC;SAChD,EAAE,IAAI,CAAC,CAAC;IACb,CAAC;IAED,yDAAyD;IACzD,KAAK,CAAC,uBAAuB,CACzB,WAAmB,EACnB,SAAiB,EACjB,UAAkB,EAClB,IAAyB;QAEzB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;QACpE,IAAI,QAAQ,GAAG,QAAQ,CAAC;QAExB,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;YAClF,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC;QACxB,CAAC;QAED,MAAM,MAAM,GAAG,QAAS,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE,kBAAkB,EAAE,IAAI,CAAC,CAAC;QAEnG,OAAO,QAAS,CAAC;IACrB,CAAC;IAED,4EAA4E;IAC5E,wCAAwC;IACxC,4EAA4E;IAE5E,8EAA8E;IAC9E,KAAK,CAAC,WAAW,CACb,OAUC,EACD,IAAyB;QAEzB,IAAI,GAAuB,CAAC;QAC5B,IAAI,CAAC;YACD,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,OAAO,CAAC,MAAM,EAAE,CAAC;YAC3G,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,OAAO,CAChC,KAAK,EACL,qBAAqB,kBAAkB,CAAC,OAAO,CAAC,UAAU,CAAC,SAAS,OAAO,EAAE,EAC7E;gBACI,GAAG,IAAI;gBACP,OAAO,EAAE,OAAO,CAAC,OAAO;aAC3B,CACJ,CAAC;YACF,GAAG,GAAG,SAAS,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC;QAC/C,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,QAAQ,IAAI,GAAG,IAAK,GAA0B,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBAClG,GAAG,GAAG,SAAS,CAAC;YACpB,CAAC;iBAAM,CAAC;gBACJ,MAAM,GAAG,CAAC;YACd,CAAC;QACL,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CACf,MAAM,EACN,qBAAqB,kBAAkB,CAAC,OAAO,CAAC,UAAU,CAAC,SAAS,EACpE;YACI,GAAG,IAAI;YACP,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,IAAI,EAAE;gBACF,UAAU,EAAE;oBACR;wBACI,IAAI,EAAE,cAAc,OAAO,CAAC,MAAM,EAAE;wBACpC,WAAW,EAAE,GAAG;qBACnB;iBACJ;gBACD,OAAO,EAAE;oBACL;wBACI,OAAO,EAAE,OAAO,CAAC,OAAO;wBACxB,OAAO,EAAE,OAAO,CAAC,OAAO;qBAC3B;iBACJ;aACJ;SACJ,CACJ,CAAC;IACN,CAAC;IAED,4EAA4E;IAC5E,+BAA+B;IAC/B,4EAA4E;IAE5E,wDAAwD;IACxD,KAAK,CAAC,qBAAqB,CACvB,OAKC,EACD,IAAyB;QAEzB,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,IAAI,GAAG,CAAC;QACtC,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,qBAAqB,kBAAkB,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE;YAC5F,GAAG,IAAI;YACP,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,KAAK,EAAE;gBACH,IAAI;gBACJ,mCAAmC,EAAE,CAAC;gBACtC,gCAAgC,EAAE,CAAC;gBACnC,4BAA4B,EAAE,OAAO,CAAC,MAAM;gBAC5C,UAAU,EAAE,IAAI;gBAChB,SAAS,EAAE,KAAK;gBAChB,QAAQ,EAAE,IAAI;gBACd,GAAG,IAAI,EAAE,KAAK;aACjB;SACJ,CAAC,CAAC;IACP,CAAC;IAED,4EAA4E;IAC5E,WAAW;IACX,4EAA4E;IAE5E,2EAA2E;IAC3E,KAAK,CAAC,aAAa,CACf,SAAiB,EACjB,YAAoB,EACpB,UAAkB,EAClB,UAAkB,EAClB,IAAyB;QAEzB,IAAI,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAC1B,MAAM,EACN,2BAA2B,EAC3B;gBACI,GAAG,IAAI;gBACP,iBAAiB,EAAE,IAAI;gBACvB,UAAU,EAAE,eAAe;gBAC3B,IAAI,EAAE;oBACF,WAAW,EAAE,KAAK;oBAClB,qBAAqB,EAAE;wBACnB;4BACI,UAAU,EAAE;gCACR,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE;6BAC/D;yBACJ;qBACJ;iBACJ;aACJ,CACJ,CAAC;YACF,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CACxB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,SAAS,KAAK,SAAS;mBACvC,CAAC,CAAC,eAAe,CAAC,UAAU,KAAK,YAAY;mBAC7C,CAAC,CAAC,eAAe,CAAC,MAAM,KAAK,UAAU;mBACvC,CAAC,CAAC,cAAc,CAAC,GAAG,KAAK,UAAU,CAC7C,CAAC;QACN,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,SAAS,CAAC;QACrB,CAAC;IACL,CAAC;IAED,mDAAmD;IACnD,aAAa,CACT,SAAiB,EACjB,MAAc,EACd,YAAoB,EACpB,UAAkB,EAClB,IAAyB;QAEzB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,sBAAsB,EAAE;YAChD,GAAG,IAAI;YACP,iBAAiB,EAAE,IAAI;YACvB,UAAU,EAAE,eAAe;YAC3B,IAAI,EAAE;gBACF,gBAAgB,EAAE,aAAa;gBAC/B,UAAU,EAAE,UAAU;gBACtB,cAAc,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE;gBACnC,SAAS,EAAE,UAAU;gBACrB,WAAW,EAAE,KAAK;gBAClB,eAAe,EAAE;oBACb,UAAU,EAAE,MAAM;oBAClB,MAAM,EAAE,YAAY;oBACpB,QAAQ,EAAE,EAAE;oBACZ,SAAS;iBACZ;gBACD,eAAe,EAAE,KAAK;gBACtB,KAAK,EAAE,CAAC;aACX;SACJ,CAAC,CAAC;IACP,CAAC;IAED,4EAA4E;IAC5E,eAAe;IACf,4EAA4E;IAE5E,0CAA0C;IAC1C,iBAAiB,CACb,OAA2B,EAC3B,IAAY,EACZ,WAAW,GAAG,EAAE,EAChB,IAAyB;QAEzB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,+BAA+B,EAAE;YACzD,GAAG,IAAI;YACP,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,OAAO;YACjC,UAAU,EAAE,eAAe;YAC3B,IAAI,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;SAC9B,CAAC,CAAC;IACP,CAAC;IAED,mEAAmE;IACnE,KAAK,CAAC,iBAAiB,CACnB,SAAiB,EACjB,IAAyB;QAEzB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAC1B,MAAM,EACN,4BAA4B,EAC5B;YACI,GAAG,IAAI;YACP,iBAAiB,EAAE,IAAI;YACvB,UAAU,EAAE,eAAe;YAC3B,IAAI,EAAE;gBACF,KAAK,EAAE,SAAS;gBAChB,aAAa,EAAE,CAAC,OAAO,CAAC;gBACxB,eAAe,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC;gBAClC,OAAO,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE;gBAC1C,UAAU,EAAE,CAAC,aAAa,EAAE,gBAAgB,EAAE,mBAAmB,CAAC;aACrE;SACJ,CACJ,CAAC;QACF,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC;QACvF,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CAAC,UAAU,SAAS,cAAc,CAAC,CAAC;QACvD,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,mDAAmD;IACnD,yBAAyB,CACrB,OAA2B,EAC3B,aAAqB,EACrB,eAAuB,EACvB,QAA2B,EAC3B,IAAyB;QAEzB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,kCAAkC,EAAE;YAC5D,GAAG,IAAI;YACP,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,OAAO;YACjC,UAAU,EAAE,eAAe;YAC3B,IAAI,EAAE;gBACF,IAAI,EAAE,EAAE,EAAE,EAAE,sCAAsC,EAAE,IAAI,EAAE,UAAU,EAAE;gBACtE,QAAQ,EAAE;oBACN,SAAS,EAAE;wBACP;4BACI,WAAW,EAAE,QAAQ,CAAC,WAAW;4BACjC,EAAE,EAAE,QAAQ,CAAC,OAAO;4BACpB,UAAU,EAAE,QAAQ,CAAC,iBAAiB;4BACtC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,IAAI,EAAE;4BACjC,UAAU,EAAE,QAAQ,CAAC,UAAU,IAAI,EAAE;yBACxC;qBACJ;oBACD,cAAc,EAAE,CAAC;oBACjB,YAAY,EAAE,EAAE;oBAChB,gBAAgB,EAAE,EAAE;oBACpB,oBAAoB,EAAE,CAAC;oBACvB,yBAAyB,EAAE,KAAK;oBAChC,aAAa,EAAE;wBACX,EAAE,EAAE,sCAAsC;qBAC7C;iBACJ;gBACD,QAAQ,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,eAAe,EAAE;gBAC3E,OAAO,EAAE,KAAK;aACjB;SACJ,CAAC,CAAC;IACP,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,8BAA8B,CAChC,OAKC,EACD,IAAyB;QAEzB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,CACvC,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,eAAe,EACvB,OAAO,CAAC,WAAW,IAAI,EAAE,EACzB,IAAI,CACP,CAAC;QACF,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC;QAEhC,IAAI,OAAO,CAAC,aAAa,KAAK,MAAM;YAAE,OAAO,WAAW,CAAC;QAEzD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QACxE,MAAM,IAAI,CAAC,yBAAyB,CAChC,OAAO,CAAC,OAAO,EACf,WAAW,CAAC,EAAE,EACd,OAAO,CAAC,eAAe,EACvB,KAAK,EACL,IAAI,CACP,CAAC;QAEF,OAAO,WAAW,CAAC;IACvB,CAAC;IAED,4EAA4E;IAC5E,uCAAuC;IACvC,4EAA4E;IAE5E,8DAA8D;IAC9D,8BAA8B,CAC1B,SAAiB,EACjB,IAAyB;QAEzB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,wBAAwB,EAAE;YAClD,GAAG,IAAI;YACP,UAAU,EAAE,eAAe;YAC3B,IAAI,EAAE;gBACF,IAAI,EAAE,EAAE,EAAE,EAAE,sCAAsC,EAAE;gBACpD,QAAQ,EAAE,CAAC;gBACX,SAAS,EAAE,KAAK;gBAChB,UAAU,EAAE,IAAI;gBAChB,SAAS,EAAE,IAAI;gBACf,QAAQ,EAAE;oBACN,mBAAmB,EAAE,IAAI;oBACzB,KAAK,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;iBAClC;aACJ;SACJ,CAAC,CAAC;IACP,CAAC;IAED,mEAAmE;IACnE,+BAA+B,CAC3B,SAAiB,EACjB,QAAgB,EAChB,oBAA8B,EAC9B,IAAyB;QAEzB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,0BAA0B,QAAQ,EAAE,EAAE;YAC9D,GAAG,IAAI;YACP,UAAU,EAAE,eAAe;YAC3B,IAAI,EAAE;gBACF,SAAS,EAAE,IAAI;gBACf,UAAU,EAAE,IAAI;gBAChB,SAAS,EAAE,KAAK;gBAChB,QAAQ,EAAE;oBACN,mBAAmB,EAAE,oBAAoB;oBACzC,KAAK,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;iBAClC;gBACD,QAAQ,EAAE,CAAC;gBACX,EAAE,EAAE,QAAQ;gBACZ,IAAI,EAAE;oBACF,EAAE,EAAE,sCAAsC;oBAC1C,WAAW,EAAE,gCAAgC;iBAChD;aACJ;SACJ,CAAC,CAAC;IACP,CAAC;IAED,oEAAoE;IACpE,KAAK,CAAC,oBAAoB,CACtB,SAAiB,EACjB,WAAmB,EACnB,IAAyB;QAEzB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAG1B,MAAM,EACN,8BAA8B,EAC9B;YACI,GAAG,IAAI;YACP,iBAAiB,EAAE,IAAI;YACvB,UAAU,EAAE,eAAe;YAC3B,IAAI,EAAE;gBACF,eAAe,EAAE,CAAC,sDAAsD,CAAC;gBACzE,mBAAmB,EAAE;oBACjB,UAAU,EAAE;wBACR,eAAe,EAAE,sCAAsC;wBACvD,kBAAkB,EAAE,UAAU,SAAS,GAAG;wBAC1C,UAAU,EAAE;4BACR,GAAG,EAAE,yBAAyB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,kBAAkB,CAAC,WAAW,CAAC,wCAAwC;4BACtI,OAAO,EAAE,0CAA0C;4BACnD,WAAW,EAAE;gCACT,OAAO,EAAE,WAAW;gCACpB,UAAU,EAAE,cAAc;gCAC1B,UAAU,EAAE,iBAAiB;gCAC7B,MAAM,EAAE,SAAS;6BACpB;yBACJ;qBACJ;iBACJ;aACJ;SACJ,CACJ,CAAC;QACF,OAAO,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,sDAAsD,CAAC,CAAC,UAAU,CAAC;IACrG,CAAC;IAED,8CAA8C;IAC9C,cAAc,CACV,SAAiB,EACjB,QAAgB,EAChB,cAAsB,EACtB,IAAyB;QAEzB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,4DAA4D,EAAE;YACtF,GAAG,IAAI;YACP,iBAAiB,EAAE,IAAI;YACvB,UAAU,EAAE,eAAe;YAC3B,IAAI,EAAE;gBACF,KAAK,EAAE,UAAU,SAAS,GAAG;gBAC7B,KAAK,EAAE,IAAI;gBACX,oBAAoB,EAAE;oBAClB;wBACI,UAAU,EAAE,qCAAqC,QAAQ,EAAE;wBAC3D,KAAK,EAAE,CAAC;wBACR,IAAI,EAAE,cAAc;wBACpB,YAAY,EAAE;4BACV,cAAc,EAAE,CAAC;4BACjB,aAAa,EAAE,cAAc;4BAC7B,cAAc,EAAE,CAAC;4BACjB,aAAa,EAAE,cAAc;yBAChC;qBACJ;iBACJ;aACJ;SACJ,CAAC,CAAC;IACP,CAAC;IAED,+CAA+C;IAC/C,qBAAqB,CACjB,SAAiB,EACjB,SAAiB,EACjB,cAAsB,EACtB,IAAyB;QAEzB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,4DAA4D,EAAE;YACtF,GAAG,IAAI;YACP,iBAAiB,EAAE,IAAI;YACvB,UAAU,EAAE,eAAe;YAC3B,IAAI,EAAE;gBACF,KAAK,EAAE,UAAU,SAAS,GAAG;gBAC7B,KAAK,EAAE,IAAI;gBACX,oBAAoB,EAAE;oBAClB;wBACI,UAAU,EAAE,yFAAyF,SAAS,EAAE;wBAChH,KAAK,EAAE,CAAC;wBACR,IAAI,EAAE,cAAc;wBACpB,YAAY,EAAE;4BACV,cAAc,EAAE,CAAC;4BACjB,aAAa,EAAE,cAAc;4BAC7B,cAAc,EAAE,CAAC;4BACjB,aAAa,EAAE,cAAc;yBAChC;qBACJ;iBACJ;aACJ;SACJ,CAAC,CAAC;IACP,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,gBAAgB,CAClB,IAAyB;QAEzB,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAClD,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC;QACxC,MAAM,OAAO,GAAwD,EAAE,CAAC;QAExE,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC7B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,8BAA8B,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YAC9E,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC;YAEhC,MAAM,IAAI,CAAC,+BAA+B,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;YAE3E,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAE/E,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBACzB,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;oBACZ,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;oBAC9D,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;gBAChE,CAAC;qBAAM,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;oBACrC,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;wBACZ,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;oBAClE,CAAC;oBACD,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;wBACpB,MAAM,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,WAAW,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;oBAC/E,CAAC;gBACL,CAAC;YACL,CAAC;YAED,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAC5E,CAAC;QAED,OAAO,OAAO,CAAC;IACnB,CAAC;IAED,4EAA4E;IAC5E,cAAc;IACd,4EAA4E;IAE5E,qEAAqE;IACrE,KAAK,CAAC,qBAAqB,CACvB,OAA2B,EAC3B,aAAqB,EACrB,IAAyB;QAEzB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAC/B,KAAK,EACL,wBAAwB,EACxB;YACI,GAAG,IAAI;YACP,iBAAiB,EAAE,IAAI;YACvB,UAAU,EAAE,eAAe;SAC9B,CACJ,CAAC;QACF,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC;QACrE,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,MAAM,IAAI,KAAK,CAAC,eAAe,aAAa,cAAc,CAAC,CAAC;QAChE,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,yBAAyB,EAAE;YACnD,GAAG,IAAI;YACP,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,OAAO;YACjC,UAAU,EAAE,eAAe;YAC3B,KAAK,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE;YACnD,IAAI,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE;SACvD,CAAC,CAAC;IACP,CAAC;IAED,wDAAwD;IACxD,kBAAkB,CACd,OAA2B,EAC3B,OAAe,EACf,IAAyB;QAEzB,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,wCAAwC,OAAO,EAAE,EAAE;YAC5E,GAAG,IAAI;YACP,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,OAAO;YACjC,UAAU,EAAE,eAAe;YAC3B,IAAI,EAAE;gBACF,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;gBAChD,YAAY,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE;gBAC1E,SAAS,EAAE,EAAE;aAChB;SACJ,CAAC,CAAC;IACP,CAAC;IAED,4EAA4E;IAC5E,kBAAkB;IAClB,4EAA4E;IAE5E,uFAAuF;IACvF,KAAK,CAAC,mBAAmB,CACrB,OAA2B,EAC3B,IAAY,EACZ,YAAoE,EAAE,EACtE,IAAyB;QAEzB,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,OAAO,CAClC,KAAK,EACL,iCAAiC,EACjC,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,CAC9E,CAAC;QACF,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;QACrE,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAE9B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAC1B,MAAM,EACN,iCAAiC,EACjC;YACI,GAAG,IAAI;YACP,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,OAAO;YACjC,UAAU,EAAE,eAAe;YAC3B,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;SAC5B,CACJ,CAAC;QACF,OAAO,GAAG,CAAC,IAAI,CAAC;IACpB,CAAC;IAED,4EAA4E;IAC5E,gBAAgB;IAChB,4EAA4E;IAE5E,4DAA4D;IAC5D,KAAK,CAAC,iBAAiB,CACnB,OAA2B,EAC3B,UAAkB,EAClB,IAAyB;QAEzB,MAAM,cAAc,GAAG,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,UAAU,EAAE,CAAC;QAEpF,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,OAAO,CACjC,KAAK,EACL,gBAAgB,EAChB,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,CAC9E,CAAC;QACF,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC;QAC5E,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAE9B,MAAM,WAAW,GAAG,kBAAkB,CAAC,cAAc,CAAC,CAAC;QACvD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAC1B,KAAK,EACL,uBAAuB,WAAW,EAAE,EACpC;YACI,GAAG,IAAI;YACP,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,OAAO;YACjC,UAAU,EAAE,eAAe;YAC3B,IAAI,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE;SACjC,CACJ,CAAC;QACF,OAAO,GAAG,CAAC,IAAI,CAAC;IACpB,CAAC;IAED,4EAA4E;IAC5E,uBAAuB;IACvB,4EAA4E;IAE5E,uDAAuD;IACvD,KAAK,CAAC,cAAc,CAChB,OAOC,EACD,IAAyB;QAEzB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7E,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC;QAC1E,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,MAAM,IAAI,KAAK,CAAC,eAAe,OAAO,CAAC,UAAU,cAAc,CAAC,CAAC;QACrE,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,YAAY,EAAE;YACtC,GAAG,IAAI;YACP,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,UAAU,EAAE,eAAe;YAC3B,IAAI,EAAE;gBACF,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,IAAI;gBAC9B,aAAa,EAAE;oBACX,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,OAAO,CAAC,QAAQ;oBACtB,UAAU,EAAE;wBACR,EAAE,EAAE,IAAI,CAAC,EAAE;wBACX,IAAI,EAAE,eAAe;wBACrB,IAAI,EAAE,IAAI,CAAC,IAAI;wBACf,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,iBAAiB;qBAC5D;iBACJ;aACJ;SACJ,CAAC,CAAC;IACP,CAAC;IAED,4EAA4E;IAC5E,sBAAsB;IACtB,4EAA4E;IAE5E,oDAAoD;IACpD,KAAK,CAAC,sBAAsB,CACxB,OAAe,EACf,UAAkB,EAClB,YAAoB,EACpB,IAAyB;QAEzB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,GAAG,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC;QACxF,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,YAAY,OAAO,cAAc,CAAC,CAAC;QACvD,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,8BAA8B,UAAU,EAAE,EAAE;YACrE,GAAG,IAAI;YACP,iBAAiB,EAAE,IAAI;YACvB,UAAU,EAAE,eAAe;YAC3B,IAAI,EAAE;gBACF;oBACI,WAAW,EAAE,EAAE;oBACf,IAAI,EAAE,GAAG,YAAY,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE;oBAC/C,gBAAgB,EAAE,EAAE,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE;iBAC3E;aACJ;SACJ,CAAC,CAAC;IACP,CAAC;IAED,4EAA4E;IAC5E,OAAO;IACP,4EAA4E;IAE5E,8CAA8C;IAC9C,KAAK,CAAC,OAAO,CACT,OAA2B,EAC3B,UAAkB,EAClB,IAAyB;QAEzB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAC1B,KAAK,EACL,qBAAqB,kBAAkB,CAAC,UAAU,CAAC,OAAO,EAC1D;YACI,GAAG,IAAI;YACP,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,OAAO;YACjC,KAAK,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE;SAC7C,CACJ,CAAC;QACF,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC9B,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;YACxC,GAAG,EAAE,GAAG,CAAC,IAAI;YACb,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,cAAc,EAAE,GAAG,CAAC,cAAc;SACrC,CAAC,CAAC,CAAC;IACR,CAAC;CAEJ;AAx2CD,wCAw2CC"}
@@ -0,0 +1,74 @@
1
+ import type { HttpRequest } from "./http-types";
2
+ /** Cuerpo típico de error de la REST API de Azure DevOps. */
3
+ export interface AzdoErrorBody {
4
+ message?: string;
5
+ typeName?: string;
6
+ typeKey?: string;
7
+ errorCode?: number;
8
+ eventId?: number;
9
+ innerException?: AzdoErrorBody | null;
10
+ }
11
+ /** Detalle estructurado y legible de un error de Azure DevOps. */
12
+ export interface AzdoErrorDetail {
13
+ /** Código HTTP (0 = error de red / timeout). */
14
+ status: number;
15
+ /** Texto del código HTTP ("Not Found", "Forbidden", ...). */
16
+ statusLabel: string;
17
+ /** Categoría legible: "Permisos", "No encontrado", "Conflicto", etc. */
18
+ kind: string;
19
+ /** Mensaje devuelto por el servidor (`body.message`). */
20
+ serverMessage: string | null;
21
+ /** Código TF/VS extraído del mensaje (ej. "TF401027", "VS800075"). */
22
+ code: string | null;
23
+ /** Resumen legible del código TF/VS si es conocido. */
24
+ codeSummary: string | null;
25
+ typeKey: string | null;
26
+ typeName: string | null;
27
+ errorCode: number | null;
28
+ eventId: number | null;
29
+ /** Mensajes de la cadena `innerException` aplanada. */
30
+ innerMessages: string[];
31
+ method: string | null;
32
+ url: string | null;
33
+ /** Sugerencias accionables en español. */
34
+ hints: string[];
35
+ /** Cuerpo crudo tal cual llegó. */
36
+ rawBody: unknown;
37
+ }
38
+ /**
39
+ * Convierte un error capturado (el HttpError de HttpService u otro) en un
40
+ * detalle estructurado y legible.
41
+ *
42
+ * Devuelve `null` si el error no tiene forma de error HTTP reconocible
43
+ * (no tiene `status` numérico).
44
+ */
45
+ export declare function parseAzdoError(err: unknown): AzdoErrorDetail | null;
46
+ /**
47
+ * Formatea un error de la API de Azure DevOps en un texto legible.
48
+ * Acepta cualquier cosa; si no puede parsearlo, cae a String(input).
49
+ */
50
+ export declare function formatAzdoError(input: unknown): string;
51
+ /**
52
+ * Error lanzado por AzureDevOpsApi con el detalle de Azure DevOps ya parseado.
53
+ * Conserva `status`/`headers`/`body`/`request` del HttpError original, así que
54
+ * los checks tipo `err.status === 404` siguen funcionando.
55
+ */
56
+ export declare class AzdoApiError extends Error {
57
+ readonly status: number;
58
+ readonly headers: Record<string, string>;
59
+ readonly body: unknown;
60
+ readonly request?: HttpRequest;
61
+ readonly detail: AzdoErrorDetail;
62
+ constructor(detail: AzdoErrorDetail, source: Error & {
63
+ headers?: Record<string, string>;
64
+ body?: unknown;
65
+ request?: HttpRequest;
66
+ });
67
+ /** Representación legible multi-línea lista para loguear/mostrar al usuario. */
68
+ toString(): string;
69
+ }
70
+ /**
71
+ * Envuelve un error capturado en `AzdoApiError` si es parseable;
72
+ * devuelve el original intacto si no lo es.
73
+ */
74
+ export declare function toAzdoApiError(err: unknown): unknown;
@@ -0,0 +1,385 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AzdoApiError = void 0;
4
+ exports.parseAzdoError = parseAzdoError;
5
+ exports.formatAzdoError = formatAzdoError;
6
+ exports.toAzdoApiError = toAzdoApiError;
7
+ const STATUS_INFO = {
8
+ 0: {
9
+ label: "Network Error",
10
+ kind: "Red / Timeout",
11
+ meaning: "La petición no llegó al servidor o expiró el timeout.",
12
+ hints: [
13
+ "Verifica conectividad y que la URL base de la organización sea correcta.",
14
+ "Revisa proxies/firewall corporativos.",
15
+ "Aumenta el timeout (exec.timeout) para operaciones pesadas."
16
+ ]
17
+ },
18
+ 400: {
19
+ label: "Bad Request",
20
+ kind: "Petición inválida",
21
+ meaning: "El servidor rechazó el cuerpo o los parámetros de la petición.",
22
+ hints: [
23
+ "Revisa el body/query enviado: campos obligatorios, tipos y nombres.",
24
+ "Prueba con otra api-version (algunos endpoints solo existen en previews).",
25
+ "Si envías JSON, asegúrate de que el Content-Type sea application/json."
26
+ ]
27
+ },
28
+ 401: {
29
+ label: "Unauthorized",
30
+ kind: "Autenticación",
31
+ meaning: "Las credenciales no son válidas o están ausentes.",
32
+ hints: [
33
+ "El PAT es inválido, expiró o fue revocado — genera uno nuevo.",
34
+ "Verifica que el PAT pertenezca a la MISMA organización que baseUrl.",
35
+ "Algunos endpoints requieren scopes adicionales en el PAT."
36
+ ]
37
+ },
38
+ 403: {
39
+ label: "Forbidden",
40
+ kind: "Permisos",
41
+ meaning: "Autenticado, pero la cuenta no tiene permisos sobre el recurso.",
42
+ hints: [
43
+ "Pide al administrador los permisos necesarios sobre el proyecto/repo/pipeline.",
44
+ "Si el PAT tiene restricciones de scope, amplíalo (ej. Code Read & Write, Build).",
45
+ "Revisa políticas y grupos de seguridad del proyecto en Project Settings > Permissions."
46
+ ]
47
+ },
48
+ 404: {
49
+ label: "Not Found",
50
+ kind: "No encontrado",
51
+ meaning: "El recurso no existe o no eres visible para él.",
52
+ hints: [
53
+ "Verifica el nombre/GUID del proyecto, repo, branch o ID usado.",
54
+ "Azure DevOps devuelve 404 también por falta de permisos — valida acceso.",
55
+ "Revisa que baseUrl apunte a la organización correcta."
56
+ ]
57
+ },
58
+ 405: {
59
+ label: "Method Not Allowed",
60
+ kind: "Método incorrecto",
61
+ meaning: "El verbo HTTP no corresponde al endpoint.",
62
+ hints: ["Consulta la doc del endpoint: algunos requieren POST/PATCH aunque parezcan lecturas."]
63
+ },
64
+ 409: {
65
+ label: "Conflict",
66
+ kind: "Conflicto",
67
+ meaning: "El estado actual del recurso choca con la operación.",
68
+ hints: [
69
+ "En push: el oldObjectId no coincide con el HEAD actual (alguien pusheó antes).",
70
+ "Branch ya existente, edición concurrente o PR en estado incompatible.",
71
+ "Vuelve a leer el recurso y reintenta con el valor fresco."
72
+ ]
73
+ },
74
+ 413: {
75
+ label: "Payload Too Large",
76
+ kind: "Payload demasiado grande",
77
+ meaning: "El cuerpo enviado excede el límite del servidor.",
78
+ hints: ["Divide el push en varios commits o reduce el tamaño del contenido."]
79
+ },
80
+ 429: {
81
+ label: "Too Many Requests",
82
+ kind: "Rate limit",
83
+ meaning: "Se superó el límite de peticiones (throttling).",
84
+ hints: [
85
+ "Espera y reintenta con backoff exponencial.",
86
+ "Reduce llamadas en bucle usando filtros ($top) o cacheando respuestas."
87
+ ]
88
+ },
89
+ 500: {
90
+ label: "Internal Server Error",
91
+ kind: "Error del servidor",
92
+ meaning: "Falla inesperada del lado de Azure DevOps.",
93
+ hints: ["Reintenta más tarde; si persiste revisa status.dev.azure.com."]
94
+ },
95
+ 502: {
96
+ label: "Bad Gateway",
97
+ kind: "Error del servidor",
98
+ meaning: "Proxy/gateway intermedio reportó falla.",
99
+ hints: ["Reintenta; suele ser transitorio."]
100
+ },
101
+ 503: {
102
+ label: "Service Unavailable",
103
+ kind: "Servicio no disponible",
104
+ meaning: "Mantenimiento o sobrecarga temporal.",
105
+ hints: ["Reintenta con backoff; revisa status.dev.azure.com."]
106
+ },
107
+ 504: {
108
+ label: "Gateway Timeout",
109
+ kind: "Timeout del servidor",
110
+ meaning: "El gateway agotó la espera de respuesta.",
111
+ hints: ["Reintenta; si ocurre en operaciones grandes, divídelas."]
112
+ }
113
+ };
114
+ /** Códigos TF/VS conocidos → resumen + hint. Solo entradas verificables. */
115
+ const KNOWN_CODES = {
116
+ TF400813: {
117
+ summary: "Usuario anónimo/no autorizado para este recurso.",
118
+ hint: "El PAT no es válido para esa organización (u org distinta). Verifica baseUrl vs. organización del PAT."
119
+ },
120
+ TF401019: {
121
+ summary: "Objeto Git desconocido (repo, commit o ref inexistente o sin permisos).",
122
+ hint: "Valida nombre/GUID del repo, commitId o ref. Un 404 disfrazado también indica falta de permisos."
123
+ },
124
+ TF401027: {
125
+ summary: "Falta el permiso 'ForcePush' de Git.",
126
+ hint: "Un admin debe conceder 'Force push (rewrite history)' en Repos > Security, o evita reescribir historial."
127
+ },
128
+ TF401320: {
129
+ summary: "El proyecto no existe o no tienes acceso.",
130
+ hint: "Verifica el nombre exacto del proyecto y tu membresía en algún grupo del mismo."
131
+ },
132
+ VS800075: {
133
+ summary: "El proyecto no existe o no tienes acceso (nivel organización).",
134
+ hint: "Verifica el proyecto contra GET /_apis/projects y tu acceso."
135
+ },
136
+ TF400324: {
137
+ summary: "Error interno inesperado del servidor.",
138
+ hint: "Reintenta; si persiste, revisa el estado del servicio o reporta con el eventId."
139
+ },
140
+ TF401349: {
141
+ summary: "Operación bloqueada por una política o validación del servicio.",
142
+ hint: "Revisa las políticas del repo/branch y las restricciones del pipeline."
143
+ }
144
+ };
145
+ /** Reglas sobre typeKey/typeName/message para clasificar cuando no hay código conocido. */
146
+ const TYPE_RULES = [
147
+ { test: /notauthorized|unauthorized|securitypermission/i, kind: "Permisos", hint: "La cuenta autenticada carece de permisos para esta operación." },
148
+ { test: /doesnotexist|notfound/i, kind: "No encontrado", hint: "Algún identificador (proyecto/repo/branch/ID) no existe o no es visible." },
149
+ { test: /conflict|concurrency/i, kind: "Conflicto", hint: "Estado concurrente: vuelve a leer el recurso y reintenta." },
150
+ { test: /validation|argument|invalid/i, kind: "Petición inválida", hint: "Revisa campos y formatos del body/query." },
151
+ { test: /quota|limit|throttl/i, kind: "Límite alcanzado", hint: "Reduce la frecuencia de peticiones o el tamaño del payload." }
152
+ ];
153
+ // ---------------------------------------------------------------------------
154
+ // Helpers internos
155
+ // ---------------------------------------------------------------------------
156
+ const HTTP_STATUS_LABELS = {
157
+ 400: "Bad Request", 401: "Unauthorized", 403: "Forbidden", 404: "Not Found",
158
+ 405: "Method Not Allowed", 406: "Not Acceptable", 408: "Request Timeout",
159
+ 409: "Conflict", 410: "Gone", 413: "Payload Too Large", 415: "Unsupported Media Type",
160
+ 422: "Unprocessable Entity", 429: "Too Many Requests",
161
+ 500: "Internal Server Error", 501: "Not Implemented", 502: "Bad Gateway",
162
+ 503: "Service Unavailable", 504: "Gateway Timeout"
163
+ };
164
+ function statusLabel(status) {
165
+ return HTTP_STATUS_LABELS[status] ?? (status >= 500 ? "Server Error" : status >= 400 ? "Client Error" : "Unknown");
166
+ }
167
+ function extractAzdoCode(message) {
168
+ const m = /\b(?:TF|VS|DevTools|TFS)\d{4,7}\b/i.exec(message);
169
+ return m ? m[0].toUpperCase() : null;
170
+ }
171
+ function flattenInner(body) {
172
+ const out = [];
173
+ let cur = body?.innerException ?? null;
174
+ const seen = new Set();
175
+ while (cur && typeof cur === "object" && !seen.has(cur)) {
176
+ seen.add(cur);
177
+ if (typeof cur.message === "string" && cur.message.trim())
178
+ out.push(cur.message.trim());
179
+ cur = cur.innerException ?? null;
180
+ }
181
+ return out;
182
+ }
183
+ function isRecord(value) {
184
+ return typeof value === "object" && value !== null && !Array.isArray(value);
185
+ }
186
+ function readErrorBody(raw) {
187
+ if (isRecord(raw))
188
+ return raw;
189
+ if (typeof raw === "string") {
190
+ // Algunos proxies devuelven HTML/texto plano en lugar de JSON.
191
+ const trimmed = raw.trim();
192
+ if (!trimmed)
193
+ return {};
194
+ try {
195
+ const parsed = JSON.parse(trimmed);
196
+ if (isRecord(parsed))
197
+ return parsed;
198
+ }
199
+ catch {
200
+ /* no era JSON — se usa como texto */
201
+ }
202
+ return { message: trimmed.length > 500 ? `${trimmed.slice(0, 500)}…` : trimmed };
203
+ }
204
+ return {};
205
+ }
206
+ function dedupe(items) {
207
+ return [...new Set(items.filter((i) => !!i))];
208
+ }
209
+ // ---------------------------------------------------------------------------
210
+ // Parser
211
+ // ---------------------------------------------------------------------------
212
+ /**
213
+ * Convierte un error capturado (el HttpError de HttpService u otro) en un
214
+ * detalle estructurado y legible.
215
+ *
216
+ * Devuelve `null` si el error no tiene forma de error HTTP reconocible
217
+ * (no tiene `status` numérico).
218
+ */
219
+ function parseAzdoError(err) {
220
+ if (!isRecord(err) || typeof err.status !== "number")
221
+ return null;
222
+ const status = err.status;
223
+ const info = STATUS_INFO[status];
224
+ const body = readErrorBody(err.body);
225
+ const serverMessage = typeof body.message === "string" && body.message.trim() ? body.message.trim() : null;
226
+ const innerMessages = flattenInner(body);
227
+ const code = serverMessage ? extractAzdoCode(serverMessage) : null;
228
+ const known = code ? KNOWN_CODES[code] : undefined;
229
+ const typeKey = typeof body.typeKey === "string" && body.typeKey ? body.typeKey : null;
230
+ const typeName = typeof body.typeName === "string" && body.typeName ? body.typeName : null;
231
+ const errorCode = typeof body.errorCode === "number" ? body.errorCode : null;
232
+ const eventId = typeof body.eventId === "number" ? body.eventId : null;
233
+ // --- clasificación: código conocido > reglas de tipo > status ---
234
+ let kind = info?.kind ?? statusLabel(status);
235
+ const haystack = `${typeKey ?? ""} ${typeName ?? ""} ${serverMessage ?? ""}`;
236
+ for (const rule of TYPE_RULES) {
237
+ if (rule.test.test(haystack)) {
238
+ kind = rule.kind;
239
+ break;
240
+ }
241
+ }
242
+ // --- sugerencias ---
243
+ const hints = dedupe([
244
+ ...(known ? [known.hint] : []),
245
+ ...innerMessages.map(m => {
246
+ const c = extractAzdoCode(m);
247
+ return c && KNOWN_CODES[c] ? KNOWN_CODES[c].hint : null;
248
+ }),
249
+ ...(info?.hints ?? [])
250
+ ]);
251
+ const request = isRecord(err.request) ? err.request : null;
252
+ return {
253
+ status,
254
+ statusLabel: info?.label ?? statusLabel(status),
255
+ kind,
256
+ serverMessage,
257
+ code,
258
+ codeSummary: known?.summary ?? null,
259
+ typeKey,
260
+ typeName,
261
+ errorCode,
262
+ eventId,
263
+ innerMessages,
264
+ method: request && typeof request.method === "string" ? request.method : null,
265
+ url: request && typeof request.url === "string" ? request.url : null,
266
+ hints,
267
+ rawBody: err.body
268
+ };
269
+ }
270
+ // ---------------------------------------------------------------------------
271
+ // Formatter — salida legible multi-línea
272
+ // ---------------------------------------------------------------------------
273
+ /**
274
+ * Formatea un error de la API de Azure DevOps en un texto legible.
275
+ * Acepta cualquier cosa; si no puede parsearlo, cae a String(input).
276
+ */
277
+ function formatAzdoError(input) {
278
+ const detail = input !== null && typeof input === "object" && "kind" in input
279
+ ? input
280
+ : parseAzdoError(input);
281
+ if (!detail) {
282
+ return input instanceof Error ? input.message : String(input);
283
+ }
284
+ const lines = [];
285
+ const target = detail.method && detail.url
286
+ ? `${detail.method} ${shortenUrl(detail.url)}`
287
+ : "(petición desconocida)";
288
+ lines.push(`✖ Azure DevOps ${detail.kind.toLowerCase()} — HTTP ${detail.status} ${detail.statusLabel}`);
289
+ lines.push(` Petición : ${target}`);
290
+ if (detail.serverMessage) {
291
+ lines.push(` Mensaje : ${detail.serverMessage}`);
292
+ }
293
+ const meta = [];
294
+ if (detail.code)
295
+ meta.push(`código=${detail.code}`);
296
+ if (detail.typeKey) {
297
+ const shortType = detail.typeName ? shortenTypeName(detail.typeName) : null;
298
+ const extra = shortType && shortType !== detail.typeKey ? ` (${shortType})` : "";
299
+ meta.push(`tipo=${detail.typeKey}${extra}`);
300
+ }
301
+ if (detail.errorCode !== null)
302
+ meta.push(`errorCode=${detail.errorCode}`);
303
+ if (detail.eventId !== null)
304
+ meta.push(`eventId=${detail.eventId}`);
305
+ if (meta.length) {
306
+ lines.push(` Detalle : ${meta.join(" · ")}`);
307
+ }
308
+ if (detail.codeSummary) {
309
+ lines.push(` Qué significa: ${detail.codeSummary}`);
310
+ }
311
+ if (detail.innerMessages.length) {
312
+ lines.push(" Excepciones internas:");
313
+ for (const im of detail.innerMessages) {
314
+ lines.push(` ↳ ${im}`);
315
+ }
316
+ }
317
+ if (detail.hints.length) {
318
+ lines.push(" Sugerencias:");
319
+ for (const h of detail.hints) {
320
+ lines.push(` • ${h}`);
321
+ }
322
+ }
323
+ return lines.join("\n");
324
+ }
325
+ /** Recorta query strings largas para mantener la salida compacta. */
326
+ function shortenUrl(url, max = 160) {
327
+ return url.length > max ? `${url.slice(0, max)}…` : url;
328
+ }
329
+ /** Quita el namespace largo de .NET: "Ns.FooException, Assembly" -> "FooException". */
330
+ function shortenTypeName(typeName) {
331
+ const withoutAssembly = typeName.split(",")[0].trim();
332
+ const parts = withoutAssembly.split(".");
333
+ return parts[parts.length - 1] || withoutAssembly;
334
+ }
335
+ /** Construye el mensaje de una línea para el Error (compacto pero informativo). */
336
+ function buildSummaryMessage(detail) {
337
+ const parts = [];
338
+ parts.push(detail.status === 0 ? "error de red" : `HTTP ${detail.status} ${detail.statusLabel}`);
339
+ if (detail.method && detail.url)
340
+ parts.push(`${detail.method} ${shortenUrl(detail.url, 100)}`);
341
+ if (detail.serverMessage)
342
+ parts.push(detail.serverMessage);
343
+ else if (detail.codeSummary)
344
+ parts.push(detail.codeSummary);
345
+ return `[AZDO] ${parts.join(" — ")}`;
346
+ }
347
+ // ---------------------------------------------------------------------------
348
+ // AzdoApiError
349
+ // ---------------------------------------------------------------------------
350
+ /**
351
+ * Error lanzado por AzureDevOpsApi con el detalle de Azure DevOps ya parseado.
352
+ * Conserva `status`/`headers`/`body`/`request` del HttpError original, así que
353
+ * los checks tipo `err.status === 404` siguen funcionando.
354
+ */
355
+ class AzdoApiError extends Error {
356
+ constructor(detail, source) {
357
+ super(buildSummaryMessage(detail));
358
+ this.name = "AzdoApiError";
359
+ this.status = detail.status;
360
+ this.headers = source.headers ?? {};
361
+ this.body = source.body;
362
+ this.request = source.request;
363
+ this.detail = detail;
364
+ if (source.stack && source instanceof Error && source !== this) {
365
+ this.stack = `${this.name}: ${this.message}\n (causado por) ${source.stack}`;
366
+ }
367
+ }
368
+ /** Representación legible multi-línea lista para loguear/mostrar al usuario. */
369
+ toString() {
370
+ return formatAzdoError(this.detail);
371
+ }
372
+ }
373
+ exports.AzdoApiError = AzdoApiError;
374
+ /**
375
+ * Envuelve un error capturado en `AzdoApiError` si es parseable;
376
+ * devuelve el original intacto si no lo es.
377
+ */
378
+ function toAzdoApiError(err) {
379
+ const detail = parseAzdoError(err);
380
+ if (detail && err instanceof Error) {
381
+ return new AzdoApiError(detail, err);
382
+ }
383
+ return err;
384
+ }
385
+ //# sourceMappingURL=azdo-errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"azdo-errors.js","sourceRoot":"","sources":["../../src/services/azdo-errors.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cat-indev/catops-cli",
3
- "version": "0.0.1-alpha.13",
3
+ "version": "0.0.1-alpha.15",
4
4
  "description": "Framework CLI para pipelines DevOps (shell, docker, git, kubectl, helm, npm, terraform, ansible, argocd, tekton, oc, az) sobre un ExecutionContext compartido, con menus interactivos y selectores automaticos por flag. Escrito en TypeScript, 100% usable desde JavaScript.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",