@ramiidv/arca-padron 0.4.0 → 0.6.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 (140) hide show
  1. package/CHANGELOG.md +73 -0
  2. package/README.md +45 -53
  3. package/dist/{cjs/arca-padron.d.ts → arca-padron.d.ts} +6 -10
  4. package/dist/arca-padron.d.ts.map +1 -0
  5. package/dist/{esm/arca-padron.js → arca-padron.js} +44 -74
  6. package/dist/arca-padron.js.map +1 -0
  7. package/dist/{cjs/base-client.d.ts → base-client.d.ts} +5 -5
  8. package/dist/base-client.d.ts.map +1 -0
  9. package/dist/{esm/base-client.js → base-client.js} +15 -25
  10. package/dist/base-client.js.map +1 -0
  11. package/dist/condicion-iva.d.ts.map +1 -0
  12. package/dist/{esm/condicion-iva.js → condicion-iva.js} +10 -3
  13. package/dist/condicion-iva.js.map +1 -0
  14. package/dist/{esm/constants.d.ts → constants.d.ts} +22 -34
  15. package/dist/constants.d.ts.map +1 -0
  16. package/dist/{esm/constants.js → constants.js} +1 -10
  17. package/dist/constants.js.map +1 -0
  18. package/dist/errors.d.ts.map +1 -0
  19. package/dist/{esm/errors.js → errors.js} +4 -1
  20. package/dist/errors.js.map +1 -0
  21. package/dist/{cjs/index.d.ts → index.d.ts} +2 -9
  22. package/dist/index.d.ts.map +1 -0
  23. package/dist/{esm/index.js → index.js} +1 -8
  24. package/dist/index.js.map +1 -0
  25. package/dist/mapping.d.ts +22 -0
  26. package/dist/mapping.d.ts.map +1 -0
  27. package/dist/mapping.js +52 -0
  28. package/dist/mapping.js.map +1 -0
  29. package/dist/{esm/padron-a10.d.ts → padron-a10.d.ts} +6 -3
  30. package/dist/padron-a10.d.ts.map +1 -0
  31. package/dist/{esm/padron-a10.js → padron-a10.js} +22 -14
  32. package/dist/padron-a10.js.map +1 -0
  33. package/dist/{esm/padron-a100.d.ts → padron-a100.d.ts} +6 -0
  34. package/dist/padron-a100.d.ts.map +1 -0
  35. package/dist/{esm/padron-a100.js → padron-a100.js} +22 -20
  36. package/dist/padron-a100.js.map +1 -0
  37. package/dist/{esm/padron-a13.d.ts → padron-a13.d.ts} +5 -3
  38. package/dist/padron-a13.d.ts.map +1 -0
  39. package/dist/padron-a13.js +95 -0
  40. package/dist/padron-a13.js.map +1 -0
  41. package/dist/{esm/padron-a4.d.ts → padron-a4.d.ts} +3 -3
  42. package/dist/padron-a4.d.ts.map +1 -0
  43. package/dist/padron-a4.js +128 -0
  44. package/dist/padron-a4.js.map +1 -0
  45. package/dist/{esm/padron-a5.d.ts → padron-a5.d.ts} +5 -3
  46. package/dist/padron-a5.d.ts.map +1 -0
  47. package/dist/padron-a5.js +214 -0
  48. package/dist/padron-a5.js.map +1 -0
  49. package/dist/{cjs/types.d.ts → types.d.ts} +8 -18
  50. package/dist/types.d.ts.map +1 -0
  51. package/dist/types.js.map +1 -0
  52. package/llms.txt +3 -4
  53. package/package.json +21 -32
  54. package/dist/cjs/arca-padron.d.ts.map +0 -1
  55. package/dist/cjs/arca-padron.js +0 -211
  56. package/dist/cjs/arca-padron.js.map +0 -1
  57. package/dist/cjs/base-client.d.ts.map +0 -1
  58. package/dist/cjs/base-client.js +0 -68
  59. package/dist/cjs/base-client.js.map +0 -1
  60. package/dist/cjs/condicion-iva.d.ts.map +0 -1
  61. package/dist/cjs/condicion-iva.js +0 -166
  62. package/dist/cjs/condicion-iva.js.map +0 -1
  63. package/dist/cjs/constants.d.ts +0 -142
  64. package/dist/cjs/constants.d.ts.map +0 -1
  65. package/dist/cjs/constants.js +0 -155
  66. package/dist/cjs/constants.js.map +0 -1
  67. package/dist/cjs/errors.d.ts.map +0 -1
  68. package/dist/cjs/errors.js +0 -62
  69. package/dist/cjs/errors.js.map +0 -1
  70. package/dist/cjs/index.d.ts.map +0 -1
  71. package/dist/cjs/index.js +0 -66
  72. package/dist/cjs/index.js.map +0 -1
  73. package/dist/cjs/mapping.d.ts +0 -52
  74. package/dist/cjs/mapping.d.ts.map +0 -1
  75. package/dist/cjs/mapping.js +0 -135
  76. package/dist/cjs/mapping.js.map +0 -1
  77. package/dist/cjs/package.json +0 -1
  78. package/dist/cjs/padron-a10.d.ts +0 -21
  79. package/dist/cjs/padron-a10.d.ts.map +0 -1
  80. package/dist/cjs/padron-a10.js +0 -38
  81. package/dist/cjs/padron-a10.js.map +0 -1
  82. package/dist/cjs/padron-a100.d.ts +0 -20
  83. package/dist/cjs/padron-a100.d.ts.map +0 -1
  84. package/dist/cjs/padron-a100.js +0 -48
  85. package/dist/cjs/padron-a100.js.map +0 -1
  86. package/dist/cjs/padron-a13.d.ts +0 -34
  87. package/dist/cjs/padron-a13.d.ts.map +0 -1
  88. package/dist/cjs/padron-a13.js +0 -100
  89. package/dist/cjs/padron-a13.js.map +0 -1
  90. package/dist/cjs/padron-a4.d.ts +0 -21
  91. package/dist/cjs/padron-a4.d.ts.map +0 -1
  92. package/dist/cjs/padron-a4.js +0 -119
  93. package/dist/cjs/padron-a4.js.map +0 -1
  94. package/dist/cjs/padron-a5.d.ts +0 -37
  95. package/dist/cjs/padron-a5.d.ts.map +0 -1
  96. package/dist/cjs/padron-a5.js +0 -181
  97. package/dist/cjs/padron-a5.js.map +0 -1
  98. package/dist/cjs/types.d.ts.map +0 -1
  99. package/dist/cjs/types.js +0 -3
  100. package/dist/cjs/types.js.map +0 -1
  101. package/dist/esm/arca-padron.d.ts +0 -111
  102. package/dist/esm/arca-padron.d.ts.map +0 -1
  103. package/dist/esm/arca-padron.js.map +0 -1
  104. package/dist/esm/base-client.d.ts +0 -45
  105. package/dist/esm/base-client.d.ts.map +0 -1
  106. package/dist/esm/base-client.js.map +0 -1
  107. package/dist/esm/condicion-iva.d.ts +0 -28
  108. package/dist/esm/condicion-iva.d.ts.map +0 -1
  109. package/dist/esm/condicion-iva.js.map +0 -1
  110. package/dist/esm/constants.d.ts.map +0 -1
  111. package/dist/esm/constants.js.map +0 -1
  112. package/dist/esm/errors.d.ts +0 -50
  113. package/dist/esm/errors.d.ts.map +0 -1
  114. package/dist/esm/errors.js.map +0 -1
  115. package/dist/esm/index.d.ts +0 -24
  116. package/dist/esm/index.d.ts.map +0 -1
  117. package/dist/esm/index.js.map +0 -1
  118. package/dist/esm/mapping.d.ts +0 -52
  119. package/dist/esm/mapping.d.ts.map +0 -1
  120. package/dist/esm/mapping.js +0 -118
  121. package/dist/esm/mapping.js.map +0 -1
  122. package/dist/esm/padron-a10.d.ts.map +0 -1
  123. package/dist/esm/padron-a10.js.map +0 -1
  124. package/dist/esm/padron-a100.d.ts.map +0 -1
  125. package/dist/esm/padron-a100.js.map +0 -1
  126. package/dist/esm/padron-a13.d.ts.map +0 -1
  127. package/dist/esm/padron-a13.js +0 -94
  128. package/dist/esm/padron-a13.js.map +0 -1
  129. package/dist/esm/padron-a4.d.ts.map +0 -1
  130. package/dist/esm/padron-a4.js +0 -114
  131. package/dist/esm/padron-a4.js.map +0 -1
  132. package/dist/esm/padron-a5.d.ts.map +0 -1
  133. package/dist/esm/padron-a5.js +0 -176
  134. package/dist/esm/padron-a5.js.map +0 -1
  135. package/dist/esm/types.d.ts +0 -337
  136. package/dist/esm/types.d.ts.map +0 -1
  137. package/dist/esm/types.js.map +0 -1
  138. /package/dist/{cjs/condicion-iva.d.ts → condicion-iva.d.ts} +0 -0
  139. /package/dist/{cjs/errors.d.ts → errors.d.ts} +0 -0
  140. /package/dist/{esm/types.js → types.js} +0 -0
@@ -1,94 +0,0 @@
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
- import { BasePadronClient } from './base-client.js';
4
- /**
5
- * Client for ws_sr_padron_a13 - Datos básicos de un contribuyente (manual v1.4).
6
- */
7
- export class PadronA13Client extends BasePadronClient {
8
- /**
9
- * Datos de un contribuyente por CUIT (`getPersona`). Si la clave está
10
- * inactiva, ARCA responde con error (`reason: 'inactiva'`): usá `getPersonaV2`.
11
- * @param auth - Authentication object with Token, Sign, and CuitRepresentada
12
- * @param cuit - CUIT/CUIL a consultar (con o sin guiones)
13
- * @param opts - Opciones por llamada (signal)
14
- */
15
- async getPersona(auth, cuit, opts) {
16
- const idPersona = validateCuit(cuit);
17
- const result = await this.call('getPersona', { ...this.authParams(auth), idPersona }, opts);
18
- return mapPersonaA13(requirePersona(result, 'getPersona'));
19
- }
20
- /**
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")
33
- */
34
- async getIdPersonaListByDocumento(auth, documento, opts) {
35
- const result = await this.call('getIdPersonaListByDocumento', { ...this.authParams(auth), documento: normalizarDocumento(documento) }, opts);
36
- return strings(result['idPersona']);
37
- }
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
- }
47
- function mapDomicilio(d) {
48
- return {
49
- direccion: str(d['direccion']),
50
- calle: str(d['calle']),
51
- numero: num(d['numero']),
52
- piso: str(d['piso']),
53
- oficinaDptoLocal: str(d['oficinaDptoLocal']),
54
- sector: str(d['sector']),
55
- torre: str(d['torre']),
56
- manzana: str(d['manzana']),
57
- codigoPostal: str(d['codigoPostal']),
58
- localidad: str(d['localidad']),
59
- idProvincia: num(d['idProvincia']),
60
- descripcionProvincia: str(d['descripcionProvincia']),
61
- tipoDomicilio: str(d['tipoDomicilio']),
62
- estadoDomicilio: str(d['estadoDomicilio']),
63
- datoAdicional: str(d['datoAdicional']),
64
- tipoDatoAdicional: str(d['tipoDatoAdicional']),
65
- };
66
- }
67
- /** Mapea `persona` de A13 (`getPersona` y `getPersonaV2`). */
68
- export function mapPersonaA13(raw) {
69
- const persona = {
70
- idPersona: reqString(raw['idPersona'], 'persona.idPersona'),
71
- tipoPersona: tipoPersona(raw['tipoPersona']),
72
- tipoClave: str(raw['tipoClave']),
73
- estadoClave: str(raw['estadoClave']),
74
- nombre: str(raw['nombre']),
75
- apellido: str(raw['apellido']),
76
- razonSocial: str(raw['razonSocial']),
77
- numeroDocumento: str(raw['numeroDocumento']),
78
- tipoDocumento: str(raw['tipoDocumento']),
79
- formaJuridica: str(raw['formaJuridica']),
80
- mesCierre: num(raw['mesCierre']),
81
- fechaNacimiento: str(raw['fechaNacimiento']),
82
- fechaFallecimiento: str(raw['fechaFallecimiento']),
83
- fechaContratoSocial: str(raw['fechaContratoSocial']),
84
- idActividadPrincipal: str(raw['idActividadPrincipal']),
85
- descripcionActividadPrincipal: str(raw['descripcionActividadPrincipal']),
86
- periodoActividadPrincipal: num(raw['periodoActividadPrincipal']),
87
- };
88
- if (raw['claveInactivaAsociada'] !== undefined)
89
- persona.claveInactivaAsociada = strings(raw['claveInactivaAsociada']);
90
- if (raw['domicilio'] !== undefined)
91
- persona.domicilio = list(raw['domicilio']).map(mapDomicilio);
92
- return persona;
93
- }
94
- //# sourceMappingURL=padron-a13.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"padron-a13.js","sourceRoot":"","sources":["../../src/padron-a13.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
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,114 +0,0 @@
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';
3
- import { BasePadronClient } from './base-client.js';
4
- /**
5
- * Client for ws_sr_padron_a4 - Datos completos de un contribuyente.
6
- */
7
- export class PadronA4Client extends BasePadronClient {
8
- /**
9
- * Datos completos de un contribuyente.
10
- * @param auth - Authentication object with Token, Sign, and CuitRepresentada
11
- * @param cuit - CUIT/CUIL a consultar (con o sin guiones; se valida el dígito verificador)
12
- * @param opts - Opciones por llamada (signal)
13
- * @throws ArcaPadronServiceError si ARCA informa la CUIT inexistente, inactiva, etc.
14
- */
15
- async getPersona(auth, cuit, opts) {
16
- const idPersona = validateCuit(cuit);
17
- const result = await this.call('getPersona', { ...this.authParams(auth), idPersona }, opts);
18
- return mapPersonaA4(requirePersona(result, 'getPersona'));
19
- }
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
- }));
111
- }
112
- return persona;
113
- }
114
- //# sourceMappingURL=padron-a4.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"padron-a4.js","sourceRoot":"","sources":["../../src/padron-a4.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
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"}
@@ -1,176 +0,0 @@
1
- import { ArcaValidationError, validateCuit } from '@ramiidv/arca-common';
2
- import { ArcaPadronError } from './errors.js';
3
- import { mapDomicilio, optNumber as num, optString as str, record, records as list, reqNumber, reqString, strings, } from './mapping.js';
4
- import { BasePadronClient } from './base-client.js';
5
- /** Máximo de claves por `getPersonaList_v2` (manual de constancia v4.1, §3.3). */
6
- export const MAX_PERSONA_LIST = 250;
7
- /**
8
- * Client for ws_sr_constancia_inscripcion (ex ws_sr_padron_a5, deprecado por
9
- * ARCA) - Constancia de inscripción: datos generales, domicilio fiscal,
10
- * impuestos del régimen general y monotributo.
11
- *
12
- * Usa `getPersona_v2` y `getPersonaList_v2`, los métodos vigentes según el
13
- * manual del servicio (v4.1).
14
- */
15
- export class PadronA5Client extends BasePadronClient {
16
- /**
17
- * Constancia de inscripción de un contribuyente (`getPersona_v2`).
18
- *
19
- * Si ARCA no puede emitir la constancia, devuelve la persona con
20
- * `errorConstancia` / `errorRegimenGeneral` / `errorMonotributo`.
21
- * @param cuit - CUIT a consultar (con o sin guiones; se valida el dígito verificador)
22
- * @throws ArcaPadronServiceError si ARCA responde con un Fault de negocio (ej: CUIT inexistente)
23
- */
24
- async getPersona(auth, cuit, opts) {
25
- const idPersona = validateCuit(cuit);
26
- const result = await this.call('getPersona_v2', { ...this.authParams(auth), idPersona }, opts);
27
- return mapPersonaA5(result);
28
- }
29
- /**
30
- * Constancias de hasta 250 contribuyentes en una llamada (`getPersonaList_v2`).
31
- *
32
- * Devuelve una persona por cada clave que informa ARCA. Las claves
33
- * inexistentes vuelven con `errorConstancia` (ej: "No existe persona con ese
34
- * Id") en lugar de hacer fallar toda la consulta.
35
- */
36
- async getPersonaList(auth, cuits, opts) {
37
- if (!Array.isArray(cuits) || cuits.length === 0 || cuits.length > MAX_PERSONA_LIST) {
38
- throw new ArcaValidationError(`getPersonaList_v2 acepta entre 1 y ${MAX_PERSONA_LIST} CUITs (recibió ${Array.isArray(cuits) ? cuits.length : 0})`, [{ field: 'cuits', message: `Entre 1 y ${MAX_PERSONA_LIST} CUITs`, value: Array.isArray(cuits) ? cuits.length : cuits }], 'cuits');
39
- }
40
- const idPersona = cuits.map((c) => validateCuit(c));
41
- const result = await this.call('getPersonaList_v2', { ...this.authParams(auth), idPersona }, opts);
42
- return list(result['persona']).map(mapPersonaA5);
43
- }
44
- }
45
- function mapImpuesto(i) {
46
- return {
47
- idImpuesto: reqNumber(i['idImpuesto'], 'impuesto.idImpuesto'),
48
- descripcionImpuesto: str(i['descripcionImpuesto']),
49
- estadoImpuesto: str(i['estadoImpuesto']),
50
- motivo: str(i['motivo']),
51
- periodo: num(i['periodo']),
52
- };
53
- }
54
- function mapActividad(a) {
55
- return {
56
- idActividad: reqString(a['idActividad'], 'actividad.idActividad'),
57
- descripcionActividad: str(a['descripcionActividad']),
58
- nomenclador: num(a['nomenclador']),
59
- orden: num(a['orden']),
60
- periodo: num(a['periodo']),
61
- };
62
- }
63
- function mapCategoria(v) {
64
- const c = record(v);
65
- if (!c)
66
- return undefined;
67
- return {
68
- idCategoria: reqNumber(c['idCategoria'], 'categoria.idCategoria'),
69
- descripcionCategoria: str(c['descripcionCategoria']),
70
- idImpuesto: num(c['idImpuesto']),
71
- periodo: num(c['periodo']),
72
- };
73
- }
74
- function mapErrorRegimen(v) {
75
- const e = record(v);
76
- if (!e)
77
- return undefined;
78
- return { error: strings(e['error']), mensaje: str(e['mensaje']) };
79
- }
80
- /** Mapea `personaReturn` de `getPersona_v2` o un `persona` de `getPersonaList_v2`. */
81
- export function mapPersonaA5(raw) {
82
- const g = record(raw['datosGenerales']);
83
- const rg = record(raw['datosRegimenGeneral']);
84
- const mt = record(raw['datosMonotributo']);
85
- const ec = record(raw['errorConstancia']);
86
- const domicilioFiscal = record(g?.['domicilioFiscal']);
87
- if (!g && !ec) {
88
- throw new ArcaPadronError('Respuesta inválida de ARCA: la constancia no tiene datosGenerales ni errorConstancia');
89
- }
90
- const persona = {
91
- idPersona: reqString(g?.['idPersona'] ?? ec?.['idPersona'], 'datosGenerales.idPersona'),
92
- tipoPersona: str(g?.['tipoPersona']),
93
- tipoClave: str(g?.['tipoClave']),
94
- estadoClave: str(g?.['estadoClave']),
95
- nombre: str(g?.['nombre'] ?? ec?.['nombre']),
96
- apellido: str(g?.['apellido'] ?? ec?.['apellido']),
97
- razonSocial: str(g?.['razonSocial']),
98
- mesCierre: num(g?.['mesCierre']),
99
- fechaContratoSocial: str(g?.['fechaContratoSocial']),
100
- fechaFallecimiento: str(g?.['fechaFallecimiento']),
101
- esSucesion: str(g?.['esSucesion']),
102
- domicilioFiscal: domicilioFiscal ? mapDomicilio(domicilioFiscal) : undefined,
103
- impuestos: [],
104
- };
105
- const dep = record(g?.['dependencia']);
106
- if (dep) {
107
- persona.dependencia = {
108
- idDependencia: num(dep['idDependencia']),
109
- descripcionDependencia: str(dep['descripcionDependencia']),
110
- direccion: str(dep['direccion']),
111
- localidad: str(dep['localidad']),
112
- codPostal: str(dep['codPostal']),
113
- idProvincia: num(dep['idProvincia']),
114
- descripcionProvincia: str(dep['descripcionProvincia']),
115
- };
116
- }
117
- if (g?.['caracterizacion'] !== undefined) {
118
- persona.caracterizacion = list(g['caracterizacion']).map((c) => ({
119
- idCaracterizacion: reqNumber(c['idCaracterizacion'], 'caracterizacion.idCaracterizacion'),
120
- descripcionCaracterizacion: str(c['descripcionCaracterizacion']),
121
- periodo: num(c['periodo']),
122
- fechaSolicitud: num(c['fechaSolicitud']),
123
- }));
124
- }
125
- if (rg) {
126
- persona.regimenGeneral = {
127
- impuestos: list(rg['impuesto']).map(mapImpuesto),
128
- actividades: list(rg['actividad']).map(mapActividad),
129
- regimenes: list(rg['regimen']).map((r) => ({
130
- idRegimen: reqNumber(r['idRegimen'], 'regimen.idRegimen'),
131
- descripcionRegimen: str(r['descripcionRegimen']),
132
- idImpuesto: num(r['idImpuesto']),
133
- periodo: num(r['periodo']),
134
- tipoRegimen: str(r['tipoRegimen']),
135
- })),
136
- categoriaAutonomo: mapCategoria(rg['categoriaAutonomo']),
137
- };
138
- }
139
- if (mt) {
140
- const actividadMonotributista = record(mt['actividadMonotributista']);
141
- persona.monotributo = {
142
- impuestos: list(mt['impuesto']).map(mapImpuesto),
143
- actividades: list(mt['actividad']).map(mapActividad),
144
- actividadMonotributista: actividadMonotributista ? mapActividad(actividadMonotributista) : undefined,
145
- categoria: mapCategoria(mt['categoriaMonotributo']),
146
- };
147
- if (mt['componenteDeSociedad'] !== undefined) {
148
- persona.monotributo.componenteDeSociedad = list(mt['componenteDeSociedad']).map((c) => ({
149
- idPersonaAsociada: str(c['idPersonaAsociada']),
150
- apellidoPersonaAsociada: str(c['apellidoPersonaAsociada']),
151
- nombrePersonaAsociada: str(c['nombrePersonaAsociada']),
152
- razonSocialPersonaAsociada: str(c['razonSocialPersonaAsociada']),
153
- tipoComponente: str(c['tipoComponente']),
154
- ffRelacion: str(c['ffRelacion']),
155
- ffVencimiento: str(c['ffVencimiento']),
156
- }));
157
- }
158
- }
159
- persona.impuestos = [...(persona.regimenGeneral?.impuestos ?? []), ...(persona.monotributo?.impuestos ?? [])];
160
- if (ec) {
161
- persona.errorConstancia = {
162
- error: strings(ec['error']),
163
- idPersona: str(ec['idPersona']),
164
- nombre: str(ec['nombre']),
165
- apellido: str(ec['apellido']),
166
- };
167
- }
168
- const errorRegimenGeneral = mapErrorRegimen(raw['errorRegimenGeneral']);
169
- if (errorRegimenGeneral)
170
- persona.errorRegimenGeneral = errorRegimenGeneral;
171
- const errorMonotributo = mapErrorRegimen(raw['errorMonotributo']);
172
- if (errorMonotributo)
173
- persona.errorMonotributo = errorMonotributo;
174
- return persona;
175
- }
176
- //# sourceMappingURL=padron-a5.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"padron-a5.js","sourceRoot":"","sources":["../../src/padron-a5.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEzE,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EACL,YAAY,EACZ,SAAS,IAAI,GAAG,EAChB,SAAS,IAAI,GAAG,EAChB,MAAM,EACN,OAAO,IAAI,IAAI,EACf,SAAS,EACT,SAAS,EACT,OAAO,GAER,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,gBAAgB,EAA2B,MAAM,kBAAkB,CAAC;AAK7E,kFAAkF;AAClF,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAEpC;;;;;;;GAOG;AACH,MAAM,OAAO,cAAe,SAAQ,gBAAgB;IAClD;;;;;;;OAOG;IACH,KAAK,CAAC,UAAU,CAAC,IAAY,EAAE,IAAqB,EAAE,IAAkB;QACtE,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;QACrC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,EAAE,IAAI,CAAC,CAAC;QAC/F,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,cAAc,CAAC,IAAY,EAAE,KAA6B,EAAE,IAAkB;QAClF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,gBAAgB,EAAE,CAAC;YACnF,MAAM,IAAI,mBAAmB,CAC3B,sCAAsC,gBAAgB,mBAAmB,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,EACnH,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,gBAAgB,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,EACxH,OAAO,CACR,CAAC;QACJ,CAAC;QACD,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QACpD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,EAAE,IAAI,CAAC,CAAC;QACnG,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IACnD,CAAC;CACF;AAED,SAAS,WAAW,CAAC,CAAI;IACvB,OAAO;QACL,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,qBAAqB,CAAC;QAC7D,mBAAmB,EAAE,GAAG,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC;QAClD,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;QACxC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QACxB,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;KAC3B,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,CAAI;IACxB,OAAO;QACL,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,uBAAuB,CAAC;QACjE,oBAAoB,EAAE,GAAG,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC;QACpD,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;QAClC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACtB,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;KAC3B,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,CAAU;IAC9B,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACpB,IAAI,CAAC,CAAC;QAAE,OAAO,SAAS,CAAC;IACzB,OAAO;QACL,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,uBAAuB,CAAC;QACjE,oBAAoB,EAAE,GAAG,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC;QACpD,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;QAChC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;KAC3B,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,CAAU;IACjC,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACpB,IAAI,CAAC,CAAC;QAAE,OAAO,SAAS,CAAC;IACzB,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;AACpE,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,YAAY,CAAC,GAAM;IACjC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACxC,MAAM,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC;IAC9C,MAAM,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAC3C,MAAM,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAC1C,MAAM,eAAe,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAEvD,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;QACd,MAAM,IAAI,eAAe,CAAC,sFAAsF,CAAC,CAAC;IACpH,CAAC;IAED,MAAM,OAAO,GAAc;QACzB,SAAS,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,EAAE,0BAA0B,CAAC;QACvF,WAAW,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAA6B;QAChE,SAAS,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;QAChC,WAAW,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC;QACpC,MAAM,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC;QAC5C,QAAQ,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC;QAClD,WAAW,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC;QACpC,SAAS,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;QAChC,mBAAmB,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC;QACpD,kBAAkB,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAC;QAClD,UAAU,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC;QAClC,eAAe,EAAE,eAAe,CAAC,CAAC,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,SAAS;QAC5E,SAAS,EAAE,EAAE;KACd,CAAC;IAEF,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IACvC,IAAI,GAAG,EAAE,CAAC;QACR,OAAO,CAAC,WAAW,GAAG;YACpB,aAAa,EAAE,GAAG,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;YACxC,sBAAsB,EAAE,GAAG,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;YAC1D,SAAS,EAAE,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YAChC,SAAS,EAAE,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YAChC,SAAS,EAAE,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YAChC,WAAW,EAAE,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YACpC,oBAAoB,EAAE,GAAG,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;SACvD,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,EAAE,CAAC,iBAAiB,CAAC,KAAK,SAAS,EAAE,CAAC;QACzC,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC/D,iBAAiB,EAAE,SAAS,CAAC,CAAC,CAAC,mBAAmB,CAAC,EAAE,mCAAmC,CAAC;YACzF,0BAA0B,EAAE,GAAG,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC;YAChE,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAC1B,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;SACzC,CAAC,CAAC,CAAC;IACN,CAAC;IAED,IAAI,EAAE,EAAE,CAAC;QACP,OAAO,CAAC,cAAc,GAAG;YACvB,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC;YAChD,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC;YACpD,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACzC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,mBAAmB,CAAC;gBACzD,kBAAkB,EAAE,GAAG,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC;gBAChD,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;gBAChC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;gBAC1B,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;aACnC,CAAC,CAAC;YACH,iBAAiB,EAAE,YAAY,CAAC,EAAE,CAAC,mBAAmB,CAAC,CAAC;SACzD,CAAC;IACJ,CAAC;IAED,IAAI,EAAE,EAAE,CAAC;QACP,MAAM,uBAAuB,GAAG,MAAM,CAAC,EAAE,CAAC,yBAAyB,CAAC,CAAC,CAAC;QACtE,OAAO,CAAC,WAAW,GAAG;YACpB,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC;YAChD,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC;YACpD,uBAAuB,EAAE,uBAAuB,CAAC,CAAC,CAAC,YAAY,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,SAAS;YACpG,SAAS,EAAE,YAAY,CAAC,EAAE,CAAC,sBAAsB,CAAC,CAAC;SACpD,CAAC;QACF,IAAI,EAAE,CAAC,sBAAsB,CAAC,KAAK,SAAS,EAAE,CAAC;YAC7C,OAAO,CAAC,WAAW,CAAC,oBAAoB,GAAG,IAAI,CAAC,EAAE,CAAC,sBAAsB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACtF,iBAAiB,EAAE,GAAG,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC;gBAC9C,uBAAuB,EAAE,GAAG,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC;gBAC1D,qBAAqB,EAAE,GAAG,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC;gBACtD,0BAA0B,EAAE,GAAG,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC;gBAChE,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;gBACxC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;gBAChC,aAAa,EAAE,GAAG,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;aACvC,CAAC,CAAC,CAAC;QACN,CAAC;IACH,CAAC;IAED,OAAO,CAAC,SAAS,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,EAAE,SAAS,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,WAAW,EAAE,SAAS,IAAI,EAAE,CAAC,CAAC,CAAC;IAE9G,IAAI,EAAE,EAAE,CAAC;QACP,OAAO,CAAC,eAAe,GAAG;YACxB,KAAK,EAAE,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;YAC3B,SAAS,EAAE,GAAG,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;YAC/B,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;YACzB,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;SAC9B,CAAC;IACJ,CAAC;IACD,MAAM,mBAAmB,GAAG,eAAe,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,CAAC;IACxE,IAAI,mBAAmB;QAAE,OAAO,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;IAC3E,MAAM,gBAAgB,GAAG,eAAe,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAClE,IAAI,gBAAgB;QAAE,OAAO,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAElE,OAAO,OAAO,CAAC;AACjB,CAAC"}