@ramiidv/arca-mtxca 0.2.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.
- package/CHANGELOG.md +129 -0
- package/README.md +175 -318
- package/dist/arca-mtxca.d.ts +81 -78
- package/dist/arca-mtxca.d.ts.map +1 -1
- package/dist/arca-mtxca.js +174 -153
- package/dist/arca-mtxca.js.map +1 -1
- package/dist/constants.d.ts +37 -21
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +49 -22
- package/dist/constants.js.map +1 -1
- package/dist/format.d.ts +10 -0
- package/dist/format.d.ts.map +1 -0
- package/dist/format.js +22 -0
- package/dist/format.js.map +1 -0
- package/dist/index.d.ts +7 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +11 -10
- package/dist/index.js.map +1 -1
- package/dist/mtxca-client.d.ts +94 -33
- package/dist/mtxca-client.d.ts.map +1 -1
- package/dist/mtxca-client.js +307 -332
- package/dist/mtxca-client.js.map +1 -1
- package/dist/schemas.d.ts +104 -0
- package/dist/schemas.d.ts.map +1 -0
- package/dist/schemas.js +285 -0
- package/dist/schemas.js.map +1 -0
- package/dist/serialize.d.ts +26 -0
- package/dist/serialize.d.ts.map +1 -0
- package/dist/serialize.js +116 -0
- package/dist/serialize.js.map +1 -0
- package/dist/types.d.ts +328 -174
- package/dist/types.d.ts.map +1 -1
- package/dist/validation.d.ts +21 -7
- package/dist/validation.d.ts.map +1 -1
- package/dist/validation.js +301 -83
- package/dist/validation.js.map +1 -1
- package/llms.txt +82 -159
- package/package.json +19 -20
package/llms.txt
CHANGED
|
@@ -1,186 +1,109 @@
|
|
|
1
1
|
# @ramiidv/arca-mtxca
|
|
2
2
|
|
|
3
|
-
> TypeScript SDK para el web service WSMTXCA de ARCA (ex AFIP)
|
|
3
|
+
> TypeScript SDK para el web service WSMTXCA de ARCA (ex AFIP): factura electrónica con detalle de ítems, con CAE y CAEA. ESM, Node >= 18.
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## Instalación
|
|
6
6
|
|
|
7
|
-
```bash
|
|
8
7
|
npm install @ramiidv/arca-mtxca
|
|
9
|
-
```
|
|
10
|
-
|
|
11
|
-
Requisitos: Node.js >= 18 (fetch nativo). ESM only.
|
|
12
8
|
|
|
13
|
-
##
|
|
9
|
+
## Configuración
|
|
14
10
|
|
|
15
11
|
```typescript
|
|
16
12
|
import { ArcaMtxca } from '@ramiidv/arca-mtxca';
|
|
17
13
|
|
|
18
14
|
const mtxca = new ArcaMtxca({
|
|
19
|
-
cert: string,
|
|
20
|
-
key: string,
|
|
21
|
-
cuit: number,
|
|
22
|
-
production?: boolean,
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
15
|
+
cert: string, // PEM
|
|
16
|
+
key: string, // PEM
|
|
17
|
+
cuit: number | string, // CUIT representada; se valida el dígito verificador
|
|
18
|
+
production?: boolean, // default false (homologación)
|
|
19
|
+
endpoints?: { mtxca?: string, wsaa?: string }, // overrides (endpoint/wsaaEndpoint: deprecated)
|
|
20
|
+
wsaa?: WsaaClient, // WsaaClient compartido
|
|
21
|
+
signal?: AbortSignal, // cancela todas las llamadas
|
|
22
|
+
timeout?: number, retries?: number, retryDelayMs?: number,
|
|
23
|
+
ticketStorage?: TicketStorage, tokenTTLMinutes?: number,
|
|
24
|
+
clockOffsetMs?: number, autoClockSkew?: boolean, loginErrorCooldownMs?: number,
|
|
25
|
+
fetch?: typeof fetch, legacyTls?: 'auto' | 'never' | 'always',
|
|
26
26
|
onEvent?: (event: ArcaEvent) => void,
|
|
27
27
|
});
|
|
28
28
|
```
|
|
29
29
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
WSMTXCA: facturacion con detalle de articulos (arrayItems con codigo, descripcion, cantidad, precioUnitario, importeItem, codigoCondicionIVA, importeIVA por linea). Fechas en formato YYYY-MM-DD. Soporta tipos A, B, M. Protocolo SOAP Java.
|
|
33
|
-
WSFEv1: facturacion sin detalle de items (solo subtotales globales de IVA). Fechas en formato YYYYMMDD. Soporta A, B, C, E, M, FCE. Protocolo SOAP .NET.
|
|
34
|
-
|
|
35
|
-
## Metodos principales
|
|
36
|
-
|
|
37
|
-
### autorizar(request: AutorizarRequest): Promise<MtxcaInvoiceResult>
|
|
38
|
-
Autoriza un comprobante con detalle de articulos. Retorna CAE si aprobado. El request contiene ptoVta, cbteTipo, y un objeto invoice con concepto, docTipo, docNro, cbteFch (YYYY-MM-DD), importeTotal, items[], y campos opcionales (subtotalesIVA, otrosTributos, comprobanteAsociado, fechas de servicio).
|
|
39
|
-
|
|
40
|
-
### ultimoComprobante(ptoVta: number, cbteTipo: number): Promise<number>
|
|
41
|
-
Ultimo numero de comprobante autorizado.
|
|
42
|
-
|
|
43
|
-
### siguienteComprobante(ptoVta: number, cbteTipo: number): Promise<number>
|
|
44
|
-
Siguiente numero de comprobante (ultimo + 1).
|
|
45
|
-
|
|
46
|
-
### consultarComprobante(cbteTipo: number, ptoVta: number, cbteNro: number): Promise<MtxcaComprobante>
|
|
47
|
-
Consulta un comprobante previamente autorizado, incluyendo detalle de items.
|
|
30
|
+
Endpoints: homologación https://fwshomo.afip.gov.ar/wsmtxca/services/MTXCAService, producción https://serviciosjava.afip.gob.ar/wsmtxca/services/MTXCAService. Namespace http://impl.service.wsmtxca.afip.gov.ar/service/, SOAPAction = namespace + operación, wrappers `{operacion}Request` / `{operacion}Response`.
|
|
48
31
|
|
|
49
|
-
|
|
50
|
-
Health check. No requiere autenticacion.
|
|
32
|
+
Todos los métodos aceptan `opts?: { signal?: AbortSignal }` como último parámetro.
|
|
51
33
|
|
|
52
|
-
|
|
53
|
-
- getTiposComprobante(): Promise<ParamItem[]>
|
|
54
|
-
- getTiposDocumento(): Promise<ParamItem[]>
|
|
55
|
-
- getAlicuotasIVA(): Promise<ParamItem[]>
|
|
56
|
-
- getCondicionesIVA(): Promise<ParamItem[]>
|
|
57
|
-
- getMonedas(): Promise<MonedaItem[]>
|
|
58
|
-
- getUnidadesMedida(): Promise<UnidadMedidaItem[]>
|
|
59
|
-
- getPuntosVenta(): Promise<PtoVentaItem[]>
|
|
60
|
-
- getPuntosVentaCAE(): Promise<PtoVentaItem[]>
|
|
61
|
-
- getPuntosVentaCAEA(): Promise<PtoVentaItem[]>
|
|
62
|
-
- getCotizacionMoneda(monedaId: string): Promise<CotizacionResult>
|
|
34
|
+
## Autorizar (CAE)
|
|
63
35
|
|
|
64
|
-
|
|
36
|
+
Los campos se llaman como en el XSD (ComprobanteType / ItemType). Fechas: Date o 'YYYY-MM-DD' / 'YYYYMMDD'.
|
|
65
37
|
|
|
66
38
|
```typescript
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
subtotalesIVA?: SubtotalIVA[];
|
|
98
|
-
importeOtrosTributos?: number;
|
|
99
|
-
otrosTributos?: MtxcaTributo[];
|
|
100
|
-
comprobanteAsociado?: MtxcaComprobanteAsociado[];
|
|
101
|
-
fechaDesde?: string;
|
|
102
|
-
fechaHasta?: string;
|
|
103
|
-
fechaVtoPago?: string;
|
|
104
|
-
observaciones?: string;
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
interface AutorizarRequest {
|
|
108
|
-
ptoVta: number;
|
|
109
|
-
cbteTipo: number;
|
|
110
|
-
invoice: MtxcaInvoice;
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
interface MtxcaInvoiceResult {
|
|
114
|
-
resultado: string; // "A" or "R"
|
|
115
|
-
cae?: string;
|
|
116
|
-
caeFchVto?: string;
|
|
117
|
-
cbteNro: number;
|
|
118
|
-
observaciones: MtxcaObservacion[];
|
|
119
|
-
errores: MtxcaObservacion[];
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
interface MtxcaComprobante {
|
|
123
|
-
codigoTipoComprobante: number;
|
|
124
|
-
numeroPuntoVenta: number;
|
|
125
|
-
numeroComprobante: number;
|
|
126
|
-
fechaEmision: string;
|
|
127
|
-
codigoTipoDocumento: number;
|
|
128
|
-
numeroDocumento: number;
|
|
129
|
-
importeTotal: number;
|
|
130
|
-
importeNoGravado: number;
|
|
131
|
-
importeGravado: number;
|
|
132
|
-
importeExento: number;
|
|
133
|
-
importeOtrosTributos: number;
|
|
134
|
-
importeSubtotal: number;
|
|
135
|
-
codigoMoneda: string;
|
|
136
|
-
cotizacionMoneda: number;
|
|
137
|
-
resultado: string;
|
|
138
|
-
codigoAutorizacion?: string;
|
|
139
|
-
fechaVencimiento?: string;
|
|
140
|
-
observaciones: MtxcaObservacion[];
|
|
141
|
-
items: MtxcaItem[];
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
interface MtxcaObservacion { code: number; msg: string; }
|
|
145
|
-
interface MtxcaTributo { codigoTributo: number; descripcion?: string; baseImponible: number; alicuota?: number; importe: number; }
|
|
146
|
-
interface MtxcaComprobanteAsociado { codigoTipoComprobante: number; numeroPuntoVenta: number; numeroComprobante: number; cuit?: number; }
|
|
147
|
-
interface ServerStatus { appserver: string; dbserver: string; authserver: string; }
|
|
148
|
-
interface ParamItem { Id: number; Desc: string; FchDesde?: string; FchHasta?: string; }
|
|
149
|
-
interface MonedaItem { Id: string; Desc: string; FchDesde?: string; FchHasta?: string; }
|
|
150
|
-
interface UnidadMedidaItem { Id: number; Desc: string; FchDesde?: string; FchHasta?: string; }
|
|
151
|
-
interface PtoVentaItem { Nro: number; EmisionTipo: string; Bloqueado: string; FchBaja: string; }
|
|
152
|
-
interface CotizacionResult { monedaId: string; cotizacion: number; fechaCotizacion: string; }
|
|
39
|
+
const res = await mtxca.autorizar({
|
|
40
|
+
codigoTipoComprobante: 1, // CbteTipo.FACTURA_A
|
|
41
|
+
numeroPuntoVenta: 4000,
|
|
42
|
+
numeroComprobante?: number, // omitido => último + 1
|
|
43
|
+
fechaEmision?: Date | string,
|
|
44
|
+
codigoTipoDocumento: 80, numeroDocumento: '30000000007',
|
|
45
|
+
condicionIVAReceptor: 1, // RG 5616, ver getCondicionesIVAReceptor(tipo)
|
|
46
|
+
importeGravado: 100, importeNoGravado: 0, importeExento: 0,
|
|
47
|
+
importeSubtotal: 100, // obligatorio
|
|
48
|
+
importeOtrosTributos?: number,
|
|
49
|
+
importeTotal: 121, // obligatorio
|
|
50
|
+
codigoMoneda: 'PES', // obligatorio
|
|
51
|
+
cotizacionMoneda: 1,
|
|
52
|
+
codigoConcepto: 1, // 2/3 exigen fechaServicioDesde/Hasta y fechaVencimientoPago
|
|
53
|
+
items: [{
|
|
54
|
+
unidadesMtx: 1, codigoMtx: '7790001000012', // obligatorios salvo unidad 97/99
|
|
55
|
+
codigo?: string, descripcion: 'Producto',
|
|
56
|
+
cantidad: 1, codigoUnidadMedida: 7, precioUnitario: 100, // sin cantidad/precio en unidad 97/99
|
|
57
|
+
importeBonificacion?: number,
|
|
58
|
+
codigoCondicionIVA: 5,
|
|
59
|
+
importeIVA: 21, // obligatorio en 1,2,3,51,52,53; prohibido en 6,7,8
|
|
60
|
+
importeItem: 121, // con IVA; negativo en unidad 95/99
|
|
61
|
+
}],
|
|
62
|
+
subtotalesIVA: [{ codigo: 5, importe: 21 }], // uno por condición 4/5/6 presente
|
|
63
|
+
otrosTributos?: [{ codigo, descripcion?, baseImponible, importe }],
|
|
64
|
+
comprobantesAsociados?, periodoComprobantesAsociados?, datosAdicionales?, compradores?, actividades?: number[],
|
|
65
|
+
}, { validarImportes?: boolean /* default true */, signal? });
|
|
66
|
+
|
|
67
|
+
if (res.resultado === 'R') res.errores; // rechazo: NO lanza
|
|
68
|
+
else res.comprobante.cae, res.comprobante.fechaVencimientoCAE; // 'A' u 'O' (con observaciones)
|
|
153
69
|
```
|
|
154
70
|
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
4-class hierarchy from @ramiidv/arca-common:
|
|
158
|
-
- ArcaError: base class
|
|
159
|
-
- ArcaAuthError: WSAA authentication failures
|
|
160
|
-
- ArcaServiceError: business errors from ARCA (has errors: {code: number, msg: string}[])
|
|
161
|
-
- ArcaSoapError: HTTP/transport errors (has statusCode?: number)
|
|
71
|
+
Reglas validadas localmente (manual WSMTXCA): importeItem = (precio*cantidad - bonif)*(1+alícuota) en clase A (precio sin IVA) y precio*cantidad - bonif en clase B (precio con IVA); importeGravado = Σ(importeItem - IVA) de condiciones 3-6; importeNoGravado = Σ condición 1; importeExento = Σ condición 2; importeSubtotal = gravado + no gravado + exento; importeTotal = subtotal + otros tributos + Σ subtotalesIVA = otros tributos + Σ importeItem. Margen: relativo <= 0.01% o absoluto <= 0.01 por elemento. Redondeo: importes 2 decimales, cantidad/precio/bonificación/cotización 6 (`roundImporte`, `roundDecimal`).
|
|
162
72
|
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
## Eventos
|
|
73
|
+
## Errores
|
|
166
74
|
|
|
167
|
-
|
|
75
|
+
- ArcaValidationError: datos inválidos (sin request). `details[]` con field/message.
|
|
76
|
+
- autorizar / autorizarAjusteIVA / informar*: un rechazo devuelve resultado 'R' con errores.
|
|
77
|
+
- Consultas: arrayErrores => ArcaServiceError (`errors[]` con code/msg).
|
|
78
|
+
- ArcaSoapError: Fault/HTTP/red/timeout. En emisiones nunca se reintenta; `uncertain: true` => pudo procesarse.
|
|
79
|
+
Recuperación: `ultimoComprobante(ptoVta, tipo)` y `consultarComprobante(tipo, ptoVta, nro)`; para solicitarCAEA, `consultarCAEAEntreFechas`.
|
|
80
|
+
- `ultimoComprobante` devuelve 0 solo ante el error 1502 (sin comprobantes).
|
|
81
|
+
|
|
82
|
+
## Métodos
|
|
83
|
+
|
|
84
|
+
- autorizar(req, opts?) -> MtxcaAutorizarResult
|
|
85
|
+
- autorizarAjusteIVA(req, opts?) -> MtxcaAutorizarResult (solo validación XSD)
|
|
86
|
+
- ultimoComprobante(ptoVta, cbteTipo, opts?) -> number
|
|
87
|
+
- siguienteComprobante(ptoVta, cbteTipo, opts?) -> number
|
|
88
|
+
- consultarComprobante(cbteTipo, ptoVta, cbteNro, opts?) -> { comprobante, observaciones, evento? }
|
|
89
|
+
- solicitarCAEA(periodo AAAAMM, orden 1|2, opts?) -> MtxcaCAEA { caea, fechaDesde, fechaHasta, fechaTopeInforme, ... }
|
|
90
|
+
- consultarCAEA(caea, opts?) -> MtxcaCAEA
|
|
91
|
+
- consultarCAEAEntreFechas(desde, hasta, opts?) -> MtxcaCAEA[]
|
|
92
|
+
- informarComprobanteCAEA({ ...comprobante, numeroComprobante, caea, fechaHoraGen? }, opts?) -> MtxcaInformarCAEAResult
|
|
93
|
+
- informarAjusteIVACAEA(comp, opts?) -> MtxcaInformarCAEAResult
|
|
94
|
+
- informarCAEANoUtilizado(caea, opts?) / informarCAEANoUtilizadoPtoVta(caea, ptoVta, opts?) -> { resultado, fechaProceso?, caea?, errores }
|
|
95
|
+
- consultarPtosVtaCAEANoInformados(caea, opts?) -> PuntoVenta[]
|
|
96
|
+
- status() -> { appserver, dbserver, authserver } (dummy, sin auth)
|
|
97
|
+
- getTiposComprobante, getTiposDocumento, getAlicuotasIVA, getCondicionesIVA, getUnidadesMedida, getTiposTributo, getTiposDatosAdicionales -> { codigo: number, descripcion }[]
|
|
98
|
+
- getCondicionesIVAReceptor(cbteTipo) -> { codigo, descripcion }[]
|
|
99
|
+
- getMonedas() -> { codigo: string, descripcion }[]
|
|
100
|
+
- getCotizacionMoneda(codigo, fecha = hoy) -> { codigoMoneda, fechaCotizacion, cotizacion: number | null }
|
|
101
|
+
- getActividadesVigentes() -> { codigo, orden, descripcion }[]
|
|
102
|
+
- getPuntosVenta / getPuntosVentaCAE / getPuntosVentaCAEA -> { numeroPuntoVenta, bloqueado: 'S'|'N', fechaBaja? }[]
|
|
103
|
+
- clearAuthCache(): Promise<void>
|
|
104
|
+
|
|
105
|
+
Bajo nivel: `mtxca.client` / `new MtxcaClient({ endpoint })`, una función por operación del WSDL; recibe `MtxcaAuth { token, sign, cuitRepresentada }`.
|
|
168
106
|
|
|
169
107
|
## Enums
|
|
170
108
|
|
|
171
|
-
|
|
172
|
-
- Concepto: PRODUCTOS=1, SERVICIOS=2, PRODUCTOS_Y_SERVICIOS=3
|
|
173
|
-
- CodigoCondicionIVA: NO_GRAVADO=1, EXENTO=2, IVA_0=3, IVA_10_5=4, IVA_21=5, IVA_27=6, GRAVADO=7, IVA_5=8, IVA_2_5=9
|
|
174
|
-
- Moneda: PESOS="PES", DOLARES="DOL", EUROS="060", etc.
|
|
175
|
-
|
|
176
|
-
## Clientes de bajo nivel
|
|
177
|
-
|
|
178
|
-
Accesibles como propiedades publicas: mtxca.wsaa (WsaaClient), mtxca.client (MtxcaClient).
|
|
179
|
-
|
|
180
|
-
## SOAP details
|
|
181
|
-
|
|
182
|
-
WSAA service name: wsmtxca
|
|
183
|
-
Production: https://serviciosjava.afip.gob.ar/wsmtxca/services/MTXCAService
|
|
184
|
-
Homologation: https://fwshomo.afip.gov.ar/wsmtxca/services/MTXCAService
|
|
185
|
-
Namespace: http://impl.service.wsmtxca.afip.gov.ar/
|
|
186
|
-
Auth params use lowercase keys: token, sign, cuitRepresentada (wrapped in authRequest object).
|
|
109
|
+
CbteTipo (1,2,3,6,7,8,51,52,53,201,202,203,206,207,208), Concepto (1,2,3), CodigoCondicionIVA (1 no gravado, 2 exento, 3 0%, 4 10.5%, 5 21%, 6 27%), UnidadMedidaEspecial (95, 97 seña, 99 bonificación), Moneda (PES, DOL, 060).
|
package/package.json
CHANGED
|
@@ -1,30 +1,34 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ramiidv/arca-mtxca",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"description": "TypeScript SDK para el web service WSMTXCA de ARCA (ex AFIP) - Facturacion electronica con detalle de articulos",
|
|
5
|
+
"author": "ramiidv",
|
|
6
|
+
"license": "MIT",
|
|
5
7
|
"type": "module",
|
|
6
|
-
"main": "dist/index.js",
|
|
7
|
-
"types": "dist/index.d.ts",
|
|
8
|
+
"main": "./dist/index.js",
|
|
9
|
+
"types": "./dist/index.d.ts",
|
|
8
10
|
"exports": {
|
|
9
11
|
".": {
|
|
10
12
|
"types": "./dist/index.d.ts",
|
|
11
13
|
"default": "./dist/index.js"
|
|
12
|
-
}
|
|
14
|
+
},
|
|
15
|
+
"./package.json": "./package.json"
|
|
13
16
|
},
|
|
14
17
|
"sideEffects": false,
|
|
15
18
|
"files": [
|
|
16
19
|
"dist",
|
|
17
|
-
"
|
|
20
|
+
"README.md",
|
|
18
21
|
"LICENSE",
|
|
19
|
-
"
|
|
22
|
+
"CHANGELOG.md",
|
|
23
|
+
"llms.txt"
|
|
20
24
|
],
|
|
21
25
|
"scripts": {
|
|
22
|
-
"build": "tsc",
|
|
26
|
+
"build": "tsc -p tsconfig.build.json",
|
|
23
27
|
"clean": "rm -rf dist",
|
|
24
28
|
"typecheck": "tsc --noEmit",
|
|
25
29
|
"test": "vitest run",
|
|
26
30
|
"test:watch": "vitest",
|
|
27
|
-
"
|
|
31
|
+
"lint:pkg": "publint --strict && attw --pack . --profile esm-only"
|
|
28
32
|
},
|
|
29
33
|
"keywords": [
|
|
30
34
|
"arca",
|
|
@@ -42,28 +46,23 @@
|
|
|
42
46
|
"soap",
|
|
43
47
|
"invoice"
|
|
44
48
|
],
|
|
45
|
-
"author": "ramiidv",
|
|
46
|
-
"license": "MIT",
|
|
47
49
|
"repository": {
|
|
48
50
|
"type": "git",
|
|
49
|
-
"url": "git+https://github.com/ramiidv/arca-
|
|
51
|
+
"url": "git+https://github.com/ramiidv/arca-sdks.git",
|
|
52
|
+
"directory": "packages/mtxca"
|
|
50
53
|
},
|
|
51
54
|
"homepage": "https://arca-sdk.dev/mtxca",
|
|
52
55
|
"bugs": {
|
|
53
|
-
"url": "https://github.com/ramiidv/arca-
|
|
56
|
+
"url": "https://github.com/ramiidv/arca-sdks/issues"
|
|
54
57
|
},
|
|
55
58
|
"publishConfig": {
|
|
56
|
-
"access": "public"
|
|
59
|
+
"access": "public",
|
|
60
|
+
"provenance": true
|
|
57
61
|
},
|
|
58
62
|
"engines": {
|
|
59
|
-
"node": ">=
|
|
63
|
+
"node": ">=20.19.0"
|
|
60
64
|
},
|
|
61
65
|
"dependencies": {
|
|
62
|
-
"@ramiidv/arca-common": "^0.
|
|
63
|
-
},
|
|
64
|
-
"devDependencies": {
|
|
65
|
-
"@types/node": "^22.0.0",
|
|
66
|
-
"typescript": "^5.7.0",
|
|
67
|
-
"vitest": "^3.2.4"
|
|
66
|
+
"@ramiidv/arca-common": "^0.5.0"
|
|
68
67
|
}
|
|
69
68
|
}
|