@ramiidv/arca-padron 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (120) hide show
  1. package/CHANGELOG.md +65 -0
  2. package/README.md +137 -82
  3. package/dist/cjs/arca-padron.d.ts +44 -31
  4. package/dist/cjs/arca-padron.d.ts.map +1 -1
  5. package/dist/cjs/arca-padron.js +61 -27
  6. package/dist/cjs/arca-padron.js.map +1 -1
  7. package/dist/cjs/base-client.d.ts +19 -10
  8. package/dist/cjs/base-client.d.ts.map +1 -1
  9. package/dist/cjs/base-client.js +33 -17
  10. package/dist/cjs/base-client.js.map +1 -1
  11. package/dist/cjs/condicion-iva.d.ts +9 -5
  12. package/dist/cjs/condicion-iva.d.ts.map +1 -1
  13. package/dist/cjs/condicion-iva.js +86 -39
  14. package/dist/cjs/condicion-iva.js.map +1 -1
  15. package/dist/cjs/constants.d.ts +57 -12
  16. package/dist/cjs/constants.d.ts.map +1 -1
  17. package/dist/cjs/constants.js +53 -11
  18. package/dist/cjs/constants.js.map +1 -1
  19. package/dist/cjs/errors.d.ts +38 -10
  20. package/dist/cjs/errors.d.ts.map +1 -1
  21. package/dist/cjs/errors.js +45 -19
  22. package/dist/cjs/errors.js.map +1 -1
  23. package/dist/cjs/index.d.ts +16 -8
  24. package/dist/cjs/index.d.ts.map +1 -1
  25. package/dist/cjs/index.js +27 -17
  26. package/dist/cjs/index.js.map +1 -1
  27. package/dist/cjs/mapping.d.ts +46 -3
  28. package/dist/cjs/mapping.d.ts.map +1 -1
  29. package/dist/cjs/mapping.js +129 -8
  30. package/dist/cjs/mapping.js.map +1 -1
  31. package/dist/cjs/padron-a10.d.ts +8 -5
  32. package/dist/cjs/padron-a10.d.ts.map +1 -1
  33. package/dist/cjs/padron-a10.js +22 -57
  34. package/dist/cjs/padron-a10.js.map +1 -1
  35. package/dist/cjs/padron-a100.d.ts +8 -4
  36. package/dist/cjs/padron-a100.d.ts.map +1 -1
  37. package/dist/cjs/padron-a100.js +27 -17
  38. package/dist/cjs/padron-a100.js.map +1 -1
  39. package/dist/cjs/padron-a13.d.ts +17 -7
  40. package/dist/cjs/padron-a13.d.ts.map +1 -1
  41. package/dist/cjs/padron-a13.js +37 -17
  42. package/dist/cjs/padron-a13.js.map +1 -1
  43. package/dist/cjs/padron-a4.d.ts +8 -5
  44. package/dist/cjs/padron-a4.d.ts.map +1 -1
  45. package/dist/cjs/padron-a4.js +103 -157
  46. package/dist/cjs/padron-a4.js.map +1 -1
  47. package/dist/cjs/padron-a5.d.ts +20 -7
  48. package/dist/cjs/padron-a5.d.ts.map +1 -1
  49. package/dist/cjs/padron-a5.js +82 -57
  50. package/dist/cjs/padron-a5.js.map +1 -1
  51. package/dist/cjs/types.d.ts +39 -48
  52. package/dist/cjs/types.d.ts.map +1 -1
  53. package/dist/esm/arca-padron.d.ts +44 -31
  54. package/dist/esm/arca-padron.d.ts.map +1 -1
  55. package/dist/esm/arca-padron.js +62 -28
  56. package/dist/esm/arca-padron.js.map +1 -1
  57. package/dist/esm/base-client.d.ts +19 -10
  58. package/dist/esm/base-client.d.ts.map +1 -1
  59. package/dist/esm/base-client.js +33 -17
  60. package/dist/esm/base-client.js.map +1 -1
  61. package/dist/esm/condicion-iva.d.ts +9 -5
  62. package/dist/esm/condicion-iva.d.ts.map +1 -1
  63. package/dist/esm/condicion-iva.js +86 -39
  64. package/dist/esm/condicion-iva.js.map +1 -1
  65. package/dist/esm/constants.d.ts +57 -12
  66. package/dist/esm/constants.d.ts.map +1 -1
  67. package/dist/esm/constants.js +53 -11
  68. package/dist/esm/constants.js.map +1 -1
  69. package/dist/esm/errors.d.ts +38 -10
  70. package/dist/esm/errors.d.ts.map +1 -1
  71. package/dist/esm/errors.js +40 -11
  72. package/dist/esm/errors.js.map +1 -1
  73. package/dist/esm/index.d.ts +16 -8
  74. package/dist/esm/index.d.ts.map +1 -1
  75. package/dist/esm/index.js +14 -6
  76. package/dist/esm/index.js.map +1 -1
  77. package/dist/esm/mapping.d.ts +46 -3
  78. package/dist/esm/mapping.d.ts.map +1 -1
  79. package/dist/esm/mapping.js +117 -7
  80. package/dist/esm/mapping.js.map +1 -1
  81. package/dist/esm/padron-a10.d.ts +8 -5
  82. package/dist/esm/padron-a10.d.ts.map +1 -1
  83. package/dist/esm/padron-a10.js +21 -57
  84. package/dist/esm/padron-a10.js.map +1 -1
  85. package/dist/esm/padron-a100.d.ts +8 -4
  86. package/dist/esm/padron-a100.d.ts.map +1 -1
  87. package/dist/esm/padron-a100.js +27 -17
  88. package/dist/esm/padron-a100.js.map +1 -1
  89. package/dist/esm/padron-a13.d.ts +17 -7
  90. package/dist/esm/padron-a13.d.ts.map +1 -1
  91. package/dist/esm/padron-a13.js +37 -18
  92. package/dist/esm/padron-a13.js.map +1 -1
  93. package/dist/esm/padron-a4.d.ts +8 -5
  94. package/dist/esm/padron-a4.d.ts.map +1 -1
  95. package/dist/esm/padron-a4.js +101 -156
  96. package/dist/esm/padron-a4.js.map +1 -1
  97. package/dist/esm/padron-a5.d.ts +20 -7
  98. package/dist/esm/padron-a5.d.ts.map +1 -1
  99. package/dist/esm/padron-a5.js +82 -57
  100. package/dist/esm/padron-a5.js.map +1 -1
  101. package/dist/esm/types.d.ts +39 -48
  102. package/dist/esm/types.d.ts.map +1 -1
  103. package/llms.txt +46 -27
  104. package/package.json +3 -3
  105. package/dist/cjs/soap-client.d.ts +0 -2
  106. package/dist/cjs/soap-client.d.ts.map +0 -1
  107. package/dist/cjs/soap-client.js +0 -13
  108. package/dist/cjs/soap-client.js.map +0 -1
  109. package/dist/cjs/wsaa.d.ts +0 -3
  110. package/dist/cjs/wsaa.d.ts.map +0 -1
  111. package/dist/cjs/wsaa.js +0 -6
  112. package/dist/cjs/wsaa.js.map +0 -1
  113. package/dist/esm/soap-client.d.ts +0 -2
  114. package/dist/esm/soap-client.d.ts.map +0 -1
  115. package/dist/esm/soap-client.js +0 -3
  116. package/dist/esm/soap-client.js.map +0 -1
  117. package/dist/esm/wsaa.d.ts +0 -3
  118. package/dist/esm/wsaa.d.ts.map +0 -1
  119. package/dist/esm/wsaa.js +0 -2
  120. package/dist/esm/wsaa.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"padron-a100.js","sourceRoot":"","sources":["../../src/padron-a100.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,EAAE,gBAAgB,EAA2B,MAAM,kBAAkB,CAAC;AAQ7E;;GAEG;AACH,MAAM,OAAO,gBAAiB,SAAQ,gBAAgB;IACpD;;;;OAIG;IACH,KAAK,CAAC,4BAA4B,CAChC,IAAY,EACZ,cAAsB,EACtB,IAAkB;QAElB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAC5B,8BAA8B,EAC9B,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,cAAc,EAAE,EAC5C,IAAI,CACL,CAAC;QAEF,+BAA+B;QAC/B,MAAM,UAAU,GAAG,MAAM,CAAC,qBAAqB,CAAwC,CAAC;QACxF,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,EAAE,CAAC;QACZ,CAAC;QAGD,MAAM,aAAa,GAAG,WAAW,CAAI,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,EAAE,CAAY,CAAC,CAAC;QAErF,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAC7B,MAAM,QAAQ,GAAG,WAAW,CAAI,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,EAAE,CAAY,CAAC,CAAC;YACvE,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACrC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC7B,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;aAChC,CAAC,CAAC,CAAC;YAEJ,OAAO;gBACL,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACzB,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;gBAC3C,SAAS,EAAE,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;aACxD,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"padron-a100.js","sourceRoot":"","sources":["../../src/padron-a100.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,IAAI,IAAI,EAAE,SAAS,EAAwB,MAAM,cAAc,CAAC;AACnG,OAAO,EAAE,gBAAgB,EAA2B,MAAM,kBAAkB,CAAC;AAK7E,MAAM,MAAM,GAAG,8BAA8B,CAAC;AAE9C;;;;;;GAMG;AACH,MAAM,OAAO,gBAAiB,SAAQ,gBAAgB;IACpD;;;;OAIG;IACH,KAAK,CAAC,4BAA4B,CAChC,IAAY,EACZ,cAAsB,EACtB,IAAkB;QAElB,IAAI,OAAO,cAAc,KAAK,QAAQ,IAAI,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACvE,MAAM,IAAI,mBAAmB,CAC3B,+BAA+B,EAC/B,CAAC,EAAE,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAE,kCAAkC,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,EACjG,gBAAgB,CACjB,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,cAAc,EAAE,cAAc,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;QAElH,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC;QACzD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,eAAe,CAAC,+BAA+B,MAAM,8BAA8B,CAAC,CAAC;QACjG,CAAC;QAED,OAAO,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAI,EAAE,EAAE;YACpD,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACrD,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,oBAAoB,CAAC;gBAChD,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;aAC7B,CAAC,CAAC,CAAC;YACJ,MAAM,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;YAChD,IAAI,WAAW,KAAK,SAAS;gBAAE,MAAM,IAAI,eAAe,CAAC,+BAA+B,MAAM,sBAAsB,CAAC,CAAC;YACtH,OAAO;gBACL,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,kBAAkB,CAAC;gBAC1C,WAAW;gBACX,SAAS,EAAE,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;aACxD,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -4,21 +4,31 @@ import { BasePadronClient, type PadronClientConfig } from './base-client.js';
4
4
  import type { PersonaA13, WsAuth } from './types.js';
5
5
  export type PadronA13ClientConfig = PadronClientConfig;
6
6
  /**
7
- * Client for ws_sr_padron_a13 - Datos básicos de un contribuyente.
7
+ * Client for ws_sr_padron_a13 - Datos básicos de un contribuyente (manual v1.4).
8
8
  */
9
9
  export declare class PadronA13Client extends BasePadronClient {
10
10
  /**
11
- * Datos de un contribuyente por CUIT.
11
+ * Datos de un contribuyente por CUIT (`getPersona`). Si la clave está
12
+ * inactiva, ARCA responde con error (`reason: 'inactiva'`): usá `getPersonaV2`.
12
13
  * @param auth - Authentication object with Token, Sign, and CuitRepresentada
13
- * @param cuit - CUIT of the taxpayer to query
14
+ * @param cuit - CUIT/CUIL a consultar (con o sin guiones)
14
15
  * @param opts - Opciones por llamada (signal)
15
16
  */
16
- getPersona(auth: WsAuth, cuit: string, opts?: CallOptions): Promise<PersonaA13>;
17
+ getPersona(auth: WsAuth, cuit: string | number, opts?: CallOptions): Promise<PersonaA13>;
17
18
  /**
18
- * CUITs/CUILs asociados a un número de documento.
19
- * @param documento - Número de documento (DNI)
19
+ * Datos de un contribuyente por CUIT, aunque la clave esté INACTIVA
20
+ * (`getPersonaV2`, agregado en el manual v1.4).
20
21
  */
21
- getIdPersonaListByDocumento(auth: WsAuth, documento: string, opts?: CallOptions): Promise<string[]>;
22
+ getPersonaV2(auth: WsAuth, cuit: string | number, opts?: CallOptions): Promise<PersonaA13>;
23
+ /**
24
+ * CUITs/CUILs asociados a un número de documento. Devuelve `[]` si ARCA
25
+ * responde sin claves.
26
+ * @param documento - Número de documento (se aceptan puntos y espacios: "11.709.676")
27
+ */
28
+ getIdPersonaListByDocumento(auth: WsAuth, documento: string | number, opts?: CallOptions): Promise<string[]>;
22
29
  }
30
+ /** Normaliza un número de documento: sin puntos, espacios ni guiones; solo dígitos (1 a 11). */
31
+ export declare function normalizarDocumento(documento: string | number): string;
32
+ /** Mapea `persona` de A13 (`getPersona` y `getPersonaV2`). */
23
33
  export declare function mapPersonaA13(raw: R): PersonaA13;
24
34
  //# sourceMappingURL=padron-a13.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"padron-a13.d.ts","sourceRoot":"","sources":["../../src/padron-a13.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAuD,KAAK,UAAU,IAAI,CAAC,EAAE,MAAM,cAAc,CAAC;AACzG,OAAO,EAAE,gBAAgB,EAAE,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC7E,OAAO,KAAK,EAAgB,UAAU,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEnE,MAAM,MAAM,qBAAqB,GAAG,kBAAkB,CAAC;AAEvD;;GAEG;AACH,qBAAa,eAAgB,SAAQ,gBAAgB;IACnD;;;;;OAKG;IACG,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;IAKrF;;;OAGG;IACG,2BAA2B,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;CAI1G;AAuBD,wBAAgB,aAAa,CAAC,GAAG,EAAE,CAAC,GAAG,UAAU,CA2BhD"}
1
+ {"version":3,"file":"padron-a13.d.ts","sourceRoot":"","sources":["../../src/padron-a13.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAQL,KAAK,UAAU,IAAI,CAAC,EACrB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,gBAAgB,EAAE,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC7E,OAAO,KAAK,EAAgB,UAAU,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEnE,MAAM,MAAM,qBAAqB,GAAG,kBAAkB,CAAC;AAEvD;;GAEG;AACH,qBAAa,eAAgB,SAAQ,gBAAgB;IACnD;;;;;;OAMG;IACG,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;IAM9F;;;OAGG;IACG,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;IAMhG;;;;OAIG;IACG,2BAA2B,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;CAQnH;AAED,gGAAgG;AAChG,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAUtE;AAuBD,8DAA8D;AAC9D,wBAAgB,aAAa,CAAC,GAAG,EAAE,CAAC,GAAG,UAAU,CAuBhD"}
@@ -1,29 +1,49 @@
1
- import { ensureArray } from './soap-client.js';
2
- import { optNumber as num, optString as str, records as list } from './mapping.js';
1
+ import { ArcaValidationError, validateCuit } from '@ramiidv/arca-common';
2
+ import { optNumber as num, optString as str, records as list, reqString, requirePersona, strings, tipoPersona, } from './mapping.js';
3
3
  import { BasePadronClient } from './base-client.js';
4
4
  /**
5
- * Client for ws_sr_padron_a13 - Datos básicos de un contribuyente.
5
+ * Client for ws_sr_padron_a13 - Datos básicos de un contribuyente (manual v1.4).
6
6
  */
7
7
  export class PadronA13Client extends BasePadronClient {
8
8
  /**
9
- * Datos de un contribuyente por CUIT.
9
+ * Datos de un contribuyente por CUIT (`getPersona`). Si la clave está
10
+ * inactiva, ARCA responde con error (`reason: 'inactiva'`): usá `getPersonaV2`.
10
11
  * @param auth - Authentication object with Token, Sign, and CuitRepresentada
11
- * @param cuit - CUIT of the taxpayer to query
12
+ * @param cuit - CUIT/CUIL a consultar (con o sin guiones)
12
13
  * @param opts - Opciones por llamada (signal)
13
14
  */
14
15
  async getPersona(auth, cuit, opts) {
15
- const result = await this.call('getPersona', { ...this.authParams(auth), idPersona: cuit }, opts);
16
- return mapPersonaA13((result['persona'] ?? result));
16
+ const idPersona = validateCuit(cuit);
17
+ const result = await this.call('getPersona', { ...this.authParams(auth), idPersona }, opts);
18
+ return mapPersonaA13(requirePersona(result, 'getPersona'));
17
19
  }
18
20
  /**
19
- * CUITs/CUILs asociados a un número de documento.
20
- * @param documento - Número de documento (DNI)
21
+ * Datos de un contribuyente por CUIT, aunque la clave esté INACTIVA
22
+ * (`getPersonaV2`, agregado en el manual v1.4).
23
+ */
24
+ async getPersonaV2(auth, cuit, opts) {
25
+ const idPersona = validateCuit(cuit);
26
+ const result = await this.call('getPersonaV2', { ...this.authParams(auth), idPersona }, opts);
27
+ return mapPersonaA13(requirePersona(result, 'getPersonaV2'));
28
+ }
29
+ /**
30
+ * CUITs/CUILs asociados a un número de documento. Devuelve `[]` si ARCA
31
+ * responde sin claves.
32
+ * @param documento - Número de documento (se aceptan puntos y espacios: "11.709.676")
21
33
  */
22
34
  async getIdPersonaListByDocumento(auth, documento, opts) {
23
- const result = await this.call('getIdPersonaListByDocumento', { ...this.authParams(auth), documento }, opts);
24
- return ensureArray(result['idPersona']).map((id) => String(id));
35
+ const result = await this.call('getIdPersonaListByDocumento', { ...this.authParams(auth), documento: normalizarDocumento(documento) }, opts);
36
+ return strings(result['idPersona']);
25
37
  }
26
38
  }
39
+ /** Normaliza un número de documento: sin puntos, espacios ni guiones; solo dígitos (1 a 11). */
40
+ export function normalizarDocumento(documento) {
41
+ const normalized = String(documento).replace(/[.\s-]/g, '');
42
+ if (!/^\d{1,11}$/.test(normalized)) {
43
+ throw new ArcaValidationError(`Documento inválido: "${documento}". Debe ser numérico.`, [{ field: 'documento', message: 'El documento debe tener entre 1 y 11 dígitos', value: documento }], 'documento');
44
+ }
45
+ return normalized;
46
+ }
27
47
  function mapDomicilio(d) {
28
48
  return {
29
49
  direccion: str(d['direccion']),
@@ -44,10 +64,11 @@ function mapDomicilio(d) {
44
64
  tipoDatoAdicional: str(d['tipoDatoAdicional']),
45
65
  };
46
66
  }
67
+ /** Mapea `persona` de A13 (`getPersona` y `getPersonaV2`). */
47
68
  export function mapPersonaA13(raw) {
48
69
  const persona = {
49
- idPersona: String(raw['idPersona'] ?? ''),
50
- tipoPersona: (raw['tipoPersona'] ?? 'FISICA'),
70
+ idPersona: reqString(raw['idPersona'], 'persona.idPersona'),
71
+ tipoPersona: tipoPersona(raw['tipoPersona']),
51
72
  tipoClave: str(raw['tipoClave']),
52
73
  estadoClave: str(raw['estadoClave']),
53
74
  nombre: str(raw['nombre']),
@@ -64,12 +85,10 @@ export function mapPersonaA13(raw) {
64
85
  descripcionActividadPrincipal: str(raw['descripcionActividadPrincipal']),
65
86
  periodoActividadPrincipal: num(raw['periodoActividadPrincipal']),
66
87
  };
67
- if (raw['claveInactivaAsociada'] !== undefined) {
68
- persona.claveInactivaAsociada = ensureArray(raw['claveInactivaAsociada']).map(String);
69
- }
70
- if (raw['domicilio'] !== undefined) {
88
+ if (raw['claveInactivaAsociada'] !== undefined)
89
+ persona.claveInactivaAsociada = strings(raw['claveInactivaAsociada']);
90
+ if (raw['domicilio'] !== undefined)
71
91
  persona.domicilio = list(raw['domicilio']).map(mapDomicilio);
72
- }
73
92
  return persona;
74
93
  }
75
94
  //# sourceMappingURL=padron-a13.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"padron-a13.js","sourceRoot":"","sources":["../../src/padron-a13.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"padron-a13.js","sourceRoot":"","sources":["../../src/padron-a13.ts"],"names":[],"mappings":"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"}
@@ -1,18 +1,21 @@
1
1
  import type { CallOptions } from '@ramiidv/arca-common';
2
+ import { type SoapRecord as R } from './mapping.js';
2
3
  import { BasePadronClient, type PadronClientConfig } from './base-client.js';
3
4
  import type { PersonaA4, WsAuth } from './types.js';
4
5
  export type PadronA4ClientConfig = PadronClientConfig;
5
6
  /**
6
- * Client for ws_sr_padron_a4 - Full taxpayer data.
7
+ * Client for ws_sr_padron_a4 - Datos completos de un contribuyente.
7
8
  */
8
9
  export declare class PadronA4Client extends BasePadronClient {
9
10
  /**
10
- * Get full taxpayer data for a given CUIT.
11
+ * Datos completos de un contribuyente.
11
12
  * @param auth - Authentication object with Token, Sign, and CuitRepresentada
12
- * @param cuit - CUIT of the taxpayer to query
13
+ * @param cuit - CUIT/CUIL a consultar (con o sin guiones; se valida el dígito verificador)
13
14
  * @param opts - Opciones por llamada (signal)
15
+ * @throws ArcaPadronServiceError si ARCA informa la CUIT inexistente, inactiva, etc.
14
16
  */
15
- getPersona(auth: WsAuth, cuit: string, opts?: CallOptions): Promise<PersonaA4>;
16
- private mapPersona;
17
+ getPersona(auth: WsAuth, cuit: string | number, opts?: CallOptions): Promise<PersonaA4>;
17
18
  }
19
+ /** Mapea `persona` de A4 (WSDL personaServiceA4: estructura plana). */
20
+ export declare function mapPersonaA4(raw: R): PersonaA4;
18
21
  //# sourceMappingURL=padron-a4.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"padron-a4.d.ts","sourceRoot":"","sources":["../../src/padron-a4.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC7E,OAAO,KAAK,EACV,SAAS,EACT,MAAM,EACP,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,oBAAoB,GAAG,kBAAkB,CAAC;AAEtD;;GAEG;AACH,qBAAa,cAAe,SAAQ,gBAAgB;IAClD;;;;;OAKG;IACG,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC;IAiBpF,OAAO,CAAC,UAAU;CAiKnB"}
1
+ {"version":3,"file":"padron-a4.d.ts","sourceRoot":"","sources":["../../src/padron-a4.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAUL,KAAK,UAAU,IAAI,CAAC,EACrB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,gBAAgB,EAAE,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC7E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEpD,MAAM,MAAM,oBAAoB,GAAG,kBAAkB,CAAC;AAEtD;;GAEG;AACH,qBAAa,cAAe,SAAQ,gBAAgB;IAClD;;;;;;OAMG;IACG,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC;CAK9F;AAED,uEAAuE;AACvE,wBAAgB,YAAY,CAAC,GAAG,EAAE,CAAC,GAAG,SAAS,CA8F9C"}
@@ -1,169 +1,114 @@
1
- import { ensureArray } from './soap-client.js';
1
+ import { validateCuit } from '@ramiidv/arca-common';
2
+ import { asignarDependenciaYClaves, mapDomicilio, mapPersonaComun, optNumber as num, optString as str, records as list, reqNumber, reqString, requirePersona, } from './mapping.js';
2
3
  import { BasePadronClient } from './base-client.js';
3
4
  /**
4
- * Client for ws_sr_padron_a4 - Full taxpayer data.
5
+ * Client for ws_sr_padron_a4 - Datos completos de un contribuyente.
5
6
  */
6
7
  export class PadronA4Client extends BasePadronClient {
7
8
  /**
8
- * Get full taxpayer data for a given CUIT.
9
+ * Datos completos de un contribuyente.
9
10
  * @param auth - Authentication object with Token, Sign, and CuitRepresentada
10
- * @param cuit - CUIT of the taxpayer to query
11
+ * @param cuit - CUIT/CUIL a consultar (con o sin guiones; se valida el dígito verificador)
11
12
  * @param opts - Opciones por llamada (signal)
13
+ * @throws ArcaPadronServiceError si ARCA informa la CUIT inexistente, inactiva, etc.
12
14
  */
13
15
  async getPersona(auth, cuit, opts) {
14
- const result = await this.call('getPersona', { ...this.authParams(auth), idPersona: cuit }, opts);
15
- // Extract persona data
16
- const persona = (result['persona'] ?? result);
17
- return this.mapPersona(persona);
16
+ const idPersona = validateCuit(cuit);
17
+ const result = await this.call('getPersona', { ...this.authParams(auth), idPersona }, opts);
18
+ return mapPersonaA4(requirePersona(result, 'getPersona'));
18
19
  }
19
- // -------------------------------------------------------------------------
20
- // Private helpers
21
- // -------------------------------------------------------------------------
22
- mapPersona(raw) {
23
- const data = (raw['datosGenerales'] ?? raw);
24
- const persona = {
25
- idPersona: String(data['idPersona'] ?? ''),
26
- tipoPersona: (data['tipoPersona'] ?? 'FISICA'),
27
- tipoClave: data['tipoClave'],
28
- estadoClave: data['estadoClave'],
29
- nombre: data['nombre'],
30
- apellido: data['apellido'],
31
- razonSocial: data['razonSocial'],
32
- numeroDocumento: data['numeroDocumento'] != null
33
- ? String(data['numeroDocumento'])
34
- : undefined,
35
- tipoDocumento: data['tipoDocumento'],
36
- fechaNacimiento: data['fechaNacimiento'],
37
- sexo: data['sexo'],
38
- numeroInscripcion: data['numeroInscripcion'] != null
39
- ? String(data['numeroInscripcion'])
40
- : undefined,
41
- formaJuridica: data['formaJuridica'],
42
- mesCierre: data['mesCierre'] != null
43
- ? Number(data['mesCierre'])
44
- : undefined,
45
- fechaInscripcion: data['fechaInscripcion'],
46
- fechaContratoSocial: data['fechaContratoSocial'],
47
- fechaFallecimiento: data['fechaFallecimiento'],
48
- fechaJubilado: data['fechaJubilado'],
49
- fechaVencimientoMigracion: data['fechaVencimientoMigracion'],
50
- localidadInscripcion: data['localidadInscripcion'],
51
- provinciaInscripcion: data['provinciaInscripcion'],
52
- organismoInscripcion: data['organismoInscripcion'],
53
- organismoOriginante: data['organismoOriginante'],
54
- tipoOrganismoOriginante: data['tipoOrganismoOriginante'],
55
- tipoResidencia: data['tipoResidencia'],
56
- porcentajeCapitalNacional: data['porcentajeCapitalNacional'] != null
57
- ? Number(data['porcentajeCapitalNacional'])
58
- : undefined,
59
- cantidadSociosEmpresaMono: data['cantidadSociosEmpresaMono'] != null
60
- ? Number(data['cantidadSociosEmpresaMono'])
61
- : undefined,
62
- leyJubilacion: data['leyJubilacion'] != null
63
- ? Number(data['leyJubilacion'])
64
- : undefined,
65
- };
66
- // Dependencia (single object)
67
- const dep = data['dependencia'];
68
- if (dep) {
69
- persona.dependencia = {
70
- idDependencia: Number(dep['idDependencia'] ?? 0),
71
- descripcionDependencia: String(dep['descripcionDependencia'] ?? ''),
72
- };
73
- }
74
- // claveInactivaAsociada (array of strings)
75
- const clavesInactivas = raw['claveInactivaAsociada'] ?? data['claveInactivaAsociada'];
76
- if (clavesInactivas) {
77
- persona.claveInactivaAsociada = ensureArray(clavesInactivas);
78
- }
79
- const domicilios = raw['domicilio'] ?? data['domicilio'];
80
- if (domicilios) {
81
- persona.domicilio = ensureArray(domicilios).map((d) => ({
82
- direccion: String(d['direccion'] ?? ''),
83
- localidad: d['localidad'],
84
- codPostal: d['codPostal'],
85
- idProvincia: d['idProvincia'] != null ? Number(d['idProvincia']) : undefined,
86
- descripcionProvincia: d['descripcionProvincia'],
87
- tipoDomicilio: String(d['tipoDomicilio'] ?? ''),
88
- estadoDomicilio: d['estadoDomicilio'],
89
- datoAdicional: d['datoAdicional'],
90
- tipoDatoAdicional: d['tipoDatoAdicional'],
91
- orden: d['orden'] != null ? Number(d['orden']) : undefined,
92
- }));
93
- }
94
- const impuestos = raw['impuesto'] ?? data['impuesto'];
95
- if (impuestos) {
96
- persona.impuesto = ensureArray(impuestos).map((i) => ({
97
- idImpuesto: Number(i['idImpuesto'] ?? 0),
98
- descripcionImpuesto: i['descripcionImpuesto'],
99
- estado: String(i['estado'] ?? ''),
100
- periodo: i['periodo'] != null ? Number(i['periodo']) : undefined,
101
- diaPeriodo: i['diaPeriodo'] != null ? Number(i['diaPeriodo']) : undefined,
102
- ffInscripcion: i['ffInscripcion'],
103
- }));
104
- }
105
- const actividades = raw['actividad'] ?? data['actividad'];
106
- if (actividades) {
107
- persona.actividad = ensureArray(actividades).map((a) => ({
108
- idActividad: String(a['idActividad'] ?? ''),
109
- descripcionActividad: a['descripcionActividad'],
110
- nomenclador: a['nomenclador'] != null ? Number(a['nomenclador']) : undefined,
111
- orden: a['orden'] != null ? Number(a['orden']) : undefined,
112
- periodo: a['periodo'] != null ? Number(a['periodo']) : undefined,
113
- }));
114
- }
115
- const regimenes = raw['regimen'] ?? data['regimen'];
116
- if (regimenes) {
117
- persona.regimen = ensureArray(regimenes).map((r) => ({
118
- idRegimen: Number(r['idRegimen'] ?? 0),
119
- descripcionRegimen: r['descripcionRegimen'],
120
- estado: r['estado'],
121
- periodo: r['periodo'] != null ? Number(r['periodo']) : undefined,
122
- diaPeriodo: r['diaPeriodo'] != null ? Number(r['diaPeriodo']) : undefined,
123
- tipoRegimen: r['tipoRegimen'],
124
- idImpuesto: r['idImpuesto'] != null ? Number(r['idImpuesto']) : undefined,
125
- }));
126
- }
127
- const relaciones = raw['relacion'] ?? data['relacion'];
128
- if (relaciones) {
129
- persona.relacion = ensureArray(relaciones).map((r) => ({
130
- idPersona: String(r['idPersona'] ?? ''),
131
- idPersonaAsociada: r['idPersonaAsociada'] != null
132
- ? String(r['idPersonaAsociada'])
133
- : undefined,
134
- tipoRelacion: r['tipoRelacion'],
135
- subtipoRelacion: r['subtipoRelacion'],
136
- ffRelacion: r['ffRelacion'],
137
- ffVencimiento: r['ffVencimiento'],
138
- }));
139
- }
140
- const categorias = raw['categoria'] ?? data['categoria'];
141
- if (categorias) {
142
- persona.categoria = ensureArray(categorias).map((c) => ({
143
- idCategoria: Number(c['idCategoria'] ?? 0),
144
- descripcionCategoria: c['descripcionCategoria'],
145
- idImpuesto: c['idImpuesto'] != null ? Number(c['idImpuesto']) : undefined,
146
- estado: c['estado'],
147
- periodo: c['periodo'] != null ? Number(c['periodo']) : undefined,
148
- }));
149
- }
150
- const emails = raw['email'] ?? data['email'];
151
- if (emails) {
152
- persona.email = ensureArray(emails).map((e) => ({
153
- direccion: String(e['direccion'] ?? ''),
154
- tipoEmail: e['tipoEmail'],
155
- estado: e['estado'],
156
- }));
157
- }
158
- const telefonos = raw['telefono'] ?? data['telefono'];
159
- if (telefonos) {
160
- persona.telefono = ensureArray(telefonos).map((t) => ({
161
- numero: String(t['numero'] ?? ''),
162
- tipoTelefono: t['tipoTelefono'],
163
- tipoLinea: t['tipoLinea'],
164
- }));
165
- }
166
- return persona;
20
+ }
21
+ /** Mapea `persona` de A4 (WSDL personaServiceA4: estructura plana). */
22
+ export function mapPersonaA4(raw) {
23
+ const persona = {
24
+ ...mapPersonaComun(raw),
25
+ fechaNacimiento: str(raw['fechaNacimiento']),
26
+ sexo: str(raw['sexo']),
27
+ numeroInscripcion: str(raw['numeroInscripcion']),
28
+ formaJuridica: str(raw['formaJuridica']),
29
+ mesCierre: num(raw['mesCierre']),
30
+ fechaInscripcion: str(raw['fechaInscripcion']),
31
+ fechaContratoSocial: str(raw['fechaContratoSocial']),
32
+ fechaFallecimiento: str(raw['fechaFallecimiento']),
33
+ fechaJubilado: str(raw['fechaJubilado']),
34
+ fechaVencimientoMigracion: str(raw['fechaVencimientoMigracion']),
35
+ localidadInscripcion: str(raw['localidadInscripcion']),
36
+ provinciaInscripcion: str(raw['provinciaInscripcion']),
37
+ organismoInscripcion: str(raw['organismoInscripcion']),
38
+ organismoOriginante: str(raw['organismoOriginante']),
39
+ tipoOrganismoOriginante: str(raw['tipoOrganismoOriginante']),
40
+ tipoResidencia: str(raw['tipoResidencia']),
41
+ porcentajeCapitalNacional: num(raw['porcentajeCapitalNacional']),
42
+ cantidadSociosEmpresaMono: num(raw['cantidadSociosEmpresaMono']),
43
+ leyJubilacion: num(raw['leyJubilacion']),
44
+ };
45
+ asignarDependenciaYClaves(persona, raw);
46
+ if (raw['domicilio'] !== undefined) {
47
+ persona.domicilio = list(raw['domicilio']).map((d) => ({ ...mapDomicilio(d), orden: num(d['orden']) }));
48
+ }
49
+ if (raw['impuesto'] !== undefined) {
50
+ persona.impuesto = list(raw['impuesto']).map((i) => ({
51
+ idImpuesto: reqNumber(i['idImpuesto'], 'impuesto.idImpuesto'),
52
+ descripcionImpuesto: str(i['descripcionImpuesto']),
53
+ estado: str(i['estado']),
54
+ periodo: num(i['periodo']),
55
+ diaPeriodo: num(i['diaPeriodo']),
56
+ ffInscripcion: str(i['ffInscripcion']),
57
+ }));
58
+ }
59
+ if (raw['actividad'] !== undefined) {
60
+ persona.actividad = list(raw['actividad']).map((a) => ({
61
+ idActividad: reqString(a['idActividad'], 'actividad.idActividad'),
62
+ descripcionActividad: str(a['descripcionActividad']),
63
+ nomenclador: num(a['nomenclador']),
64
+ orden: num(a['orden']),
65
+ periodo: num(a['periodo']),
66
+ }));
67
+ }
68
+ if (raw['regimen'] !== undefined) {
69
+ persona.regimen = list(raw['regimen']).map((r) => ({
70
+ idRegimen: reqNumber(r['idRegimen'], 'regimen.idRegimen'),
71
+ descripcionRegimen: str(r['descripcionRegimen']),
72
+ estado: str(r['estado']),
73
+ periodo: num(r['periodo']),
74
+ diaPeriodo: num(r['diaPeriodo']),
75
+ tipoRegimen: str(r['tipoRegimen']),
76
+ idImpuesto: num(r['idImpuesto']),
77
+ }));
78
+ }
79
+ if (raw['relacion'] !== undefined) {
80
+ persona.relacion = list(raw['relacion']).map((r) => ({
81
+ idPersona: reqString(r['idPersona'], 'relacion.idPersona'),
82
+ idPersonaAsociada: str(r['idPersonaAsociada']),
83
+ tipoRelacion: str(r['tipoRelacion']),
84
+ subtipoRelacion: str(r['subtipoRelacion']),
85
+ ffRelacion: str(r['ffRelacion']),
86
+ ffVencimiento: str(r['ffVencimiento']),
87
+ }));
88
+ }
89
+ if (raw['categoria'] !== undefined) {
90
+ persona.categoria = list(raw['categoria']).map((c) => ({
91
+ idCategoria: reqNumber(c['idCategoria'], 'categoria.idCategoria'),
92
+ descripcionCategoria: str(c['descripcionCategoria']),
93
+ idImpuesto: num(c['idImpuesto']),
94
+ estado: str(c['estado']),
95
+ periodo: num(c['periodo']),
96
+ }));
97
+ }
98
+ if (raw['email'] !== undefined) {
99
+ persona.email = list(raw['email']).map((e) => ({
100
+ direccion: reqString(e['direccion'], 'email.direccion'),
101
+ tipoEmail: str(e['tipoEmail']),
102
+ estado: str(e['estado']),
103
+ }));
104
+ }
105
+ if (raw['telefono'] !== undefined) {
106
+ persona.telefono = list(raw['telefono']).map((t) => ({
107
+ numero: reqString(t['numero'], 'telefono.numero'),
108
+ tipoTelefono: str(t['tipoTelefono']),
109
+ tipoLinea: str(t['tipoLinea']),
110
+ }));
167
111
  }
112
+ return persona;
168
113
  }
169
114
  //# sourceMappingURL=padron-a4.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"padron-a4.js","sourceRoot":"","sources":["../../src/padron-a4.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"padron-a4.js","sourceRoot":"","sources":["../../src/padron-a4.ts"],"names":[],"mappings":"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"}
@@ -3,22 +3,35 @@ import { type SoapRecord as R } from './mapping.js';
3
3
  import { BasePadronClient, type PadronClientConfig } from './base-client.js';
4
4
  import type { PersonaA5, WsAuth } from './types.js';
5
5
  export type PadronA5ClientConfig = PadronClientConfig;
6
+ /** Máximo de claves por `getPersonaList_v2` (manual de constancia v4.1, §3.3). */
7
+ export declare const MAX_PERSONA_LIST = 250;
6
8
  /**
7
9
  * Client for ws_sr_constancia_inscripcion (ex ws_sr_padron_a5, deprecado por
8
10
  * ARCA) - Constancia de inscripción: datos generales, domicilio fiscal,
9
11
  * impuestos del régimen general y monotributo.
10
12
  *
11
- * Usa `getPersona_v2`, el método vigente según el manual del servicio (v4.1).
13
+ * Usa `getPersona_v2` y `getPersonaList_v2`, los métodos vigentes según el
14
+ * manual del servicio (v4.1).
12
15
  */
13
16
  export declare class PadronA5Client extends BasePadronClient {
14
17
  /**
15
- * Constancia de inscripción de un contribuyente.
16
- * @param auth - Authentication object with Token, Sign, and CuitRepresentada
17
- * @param cuit - CUIT of the taxpayer to query
18
- * @param opts - Opciones por llamada (signal)
18
+ * Constancia de inscripción de un contribuyente (`getPersona_v2`).
19
+ *
20
+ * Si ARCA no puede emitir la constancia, devuelve la persona con
21
+ * `errorConstancia` / `errorRegimenGeneral` / `errorMonotributo`.
22
+ * @param cuit - CUIT a consultar (con o sin guiones; se valida el dígito verificador)
23
+ * @throws ArcaPadronServiceError si ARCA responde con un Fault de negocio (ej: CUIT inexistente)
19
24
  */
20
- getPersona(auth: WsAuth, cuit: string, opts?: CallOptions): Promise<PersonaA5>;
25
+ getPersona(auth: WsAuth, cuit: string | number, opts?: CallOptions): Promise<PersonaA5>;
26
+ /**
27
+ * Constancias de hasta 250 contribuyentes en una llamada (`getPersonaList_v2`).
28
+ *
29
+ * Devuelve una persona por cada clave que informa ARCA. Las claves
30
+ * inexistentes vuelven con `errorConstancia` (ej: "No existe persona con ese
31
+ * Id") en lugar de hacer fallar toda la consulta.
32
+ */
33
+ getPersonaList(auth: WsAuth, cuits: Array<string | number>, opts?: CallOptions): Promise<PersonaA5[]>;
21
34
  }
22
- /** Mapea `personaReturn` de `getPersona_v2`. */
35
+ /** Mapea `personaReturn` de `getPersona_v2` o un `persona` de `getPersonaList_v2`. */
23
36
  export declare function mapPersonaA5(raw: R): PersonaA5;
24
37
  //# sourceMappingURL=padron-a5.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"padron-a5.d.ts","sourceRoot":"","sources":["../../src/padron-a5.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAuD,KAAK,UAAU,IAAI,CAAC,EAAE,MAAM,cAAc,CAAC;AACzG,OAAO,EAAE,gBAAgB,EAAE,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC7E,OAAO,KAAK,EAMV,SAAS,EACT,MAAM,EACP,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,oBAAoB,GAAG,kBAAkB,CAAC;AAEtD;;;;;;GAMG;AACH,qBAAa,cAAe,SAAQ,gBAAgB;IAClD;;;;;OAKG;IACG,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC;CAIrF;AAmDD,gDAAgD;AAChD,wBAAgB,YAAY,CAAC,GAAG,EAAE,CAAC,GAAG,SAAS,CAqF9C"}
1
+ {"version":3,"file":"padron-a5.d.ts","sourceRoot":"","sources":["../../src/padron-a5.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO,EASL,KAAK,UAAU,IAAI,CAAC,EACrB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,gBAAgB,EAAE,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC7E,OAAO,KAAK,EAAwD,SAAS,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAE1G,MAAM,MAAM,oBAAoB,GAAG,kBAAkB,CAAC;AAEtD,kFAAkF;AAClF,eAAO,MAAM,gBAAgB,MAAM,CAAC;AAEpC;;;;;;;GAOG;AACH,qBAAa,cAAe,SAAQ,gBAAgB;IAClD;;;;;;;OAOG;IACG,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC;IAM7F;;;;;;OAMG;IACG,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,IAAI,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;CAY5G;AAuCD,sFAAsF;AACtF,wBAAgB,YAAY,CAAC,GAAG,EAAE,CAAC,GAAG,SAAS,CAqG9C"}