@karibulab/wsdl2tsx-runtime 0.5.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 (2) hide show
  1. package/README.md +108 -0
  2. package/package.json +1 -1
package/README.md ADDED
@@ -0,0 +1,108 @@
1
+ # @karibulab/wsdl2tsx-runtime
2
+
3
+ Runtime XML para código TSX generado desde WSDL. Proporciona funciones JSX personalizadas para construir documentos XML/SOAP.
4
+
5
+ ## Instalación
6
+
7
+ ```bash
8
+ npm install @karibulab/wsdl2tsx-runtime
9
+ ```
10
+
11
+ ## Uso
12
+
13
+ Este paquete es utilizado automáticamente por el código generado por `@karibulab/wsdl2tsx`. No necesitas importarlo manualmente en la mayoría de los casos.
14
+
15
+ ### Configuración de TypeScript
16
+
17
+ Para que TypeScript reconozca los elementos JSX personalizados, configura tu `tsconfig.json`:
18
+
19
+ ```json
20
+ {
21
+ "compilerOptions": {
22
+ "jsx": "react-jsx",
23
+ "jsxImportSource": "@karibulab/wsdl2tsx-runtime"
24
+ }
25
+ }
26
+ ```
27
+
28
+ ### API
29
+
30
+ #### `soap`
31
+
32
+ Objeto con elementos SOAP predefinidos:
33
+
34
+ ```tsx
35
+ import { soap } from "@karibulab/wsdl2tsx-runtime";
36
+
37
+ <soap.Envelope>
38
+ <soap.Header />
39
+ <soap.Body>
40
+ {/* contenido */}
41
+ </soap.Body>
42
+ </soap.Envelope>
43
+ ```
44
+
45
+ #### `ns(prefix, tags)`
46
+
47
+ Función helper para crear namespaces personalizados:
48
+
49
+ ```tsx
50
+ import { ns } from "@karibulab/wsdl2tsx-runtime";
51
+
52
+ const myns = ns("myns", ["tag1", "tag2"] as const);
53
+
54
+ <myns.tag1>
55
+ <myns.tag2>Contenido</myns.tag2>
56
+ </myns.tag1>
57
+ ```
58
+
59
+ ### Ejemplo completo
60
+
61
+ ```tsx
62
+ import { soap, ns } from "@karibulab/wsdl2tsx-runtime";
63
+
64
+ const facade = ns("facade", ["consultaCodigoPlan"] as const);
65
+
66
+ export function ConsultaCodigoPlan(props: ConsultaCodigoPlanProps) {
67
+ return (
68
+ <soap.Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
69
+ <soap.Header />
70
+ <soap.Body>
71
+ <facade.consultaCodigoPlan>
72
+ {/* contenido del body */}
73
+ </facade.consultaCodigoPlan>
74
+ </soap.Body>
75
+ </soap.Envelope>
76
+ );
77
+ }
78
+ ```
79
+
80
+ ## Características
81
+
82
+ - ✅ JSX personalizado para construir XML
83
+ - ✅ Soporte completo para namespaces XML
84
+ - ✅ Genera XML válido desde componentes TSX
85
+ - ✅ TypeScript tipado para todos los elementos
86
+ - ✅ Compatible con ESM (ES Modules)
87
+
88
+ ## Desarrollo
89
+
90
+ ```bash
91
+ # Clonar el repositorio
92
+ git clone https://github.com/KaribuLab/wsdl2tsx.git
93
+ cd wsdl2tsx
94
+
95
+ # Instalar dependencias
96
+ npm install
97
+
98
+ # Construir el runtime
99
+ npm run build:runtime
100
+ ```
101
+
102
+ ## Licencia
103
+
104
+ ISC
105
+
106
+ ## Repositorio
107
+
108
+ https://github.com/KaribuLab/wsdl2tsx
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@karibulab/wsdl2tsx-runtime",
3
- "version": "0.5.0",
3
+ "version": "0.6.0",
4
4
  "description": "Runtime XML para código TSX generado desde WSDL",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",