infodocviewdoc 2.0.3 → 2.0.4
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
|
@@ -15,7 +15,7 @@ Si tu MFE ya existe (con Angular y dependencias base), **solo debes agregar esta
|
|
|
15
15
|
```json
|
|
16
16
|
{
|
|
17
17
|
"dependencies": {
|
|
18
|
-
"infodocviewdoc": "
|
|
18
|
+
"infodocviewdoc": "2.0.4",
|
|
19
19
|
"@handsontable/angular": "^16.2.0",
|
|
20
20
|
"handsontable": "^16.2.0",
|
|
21
21
|
"jspdf": "^4.1.0",
|
|
@@ -50,7 +50,7 @@ Si creas un microfront desde cero, ademas de Angular/base, tu bloque de `depende
|
|
|
50
50
|
"rxjs": "~7.8.0",
|
|
51
51
|
"tslib": "2.3.0",
|
|
52
52
|
"zone.js": "~0.15.0",
|
|
53
|
-
"infodocviewdoc": "
|
|
53
|
+
"infodocviewdoc": "^2.0.4",
|
|
54
54
|
"@handsontable/angular": "^16.2.0",
|
|
55
55
|
"handsontable": "^16.2.0",
|
|
56
56
|
"jspdf": "^4.1.0",
|
|
@@ -66,19 +66,61 @@ Despues de agregarlas:
|
|
|
66
66
|
npm install
|
|
67
67
|
```
|
|
68
68
|
|
|
69
|
-
## 3) Configuracion de assets PDF viewer (host)
|
|
69
|
+
## 3) Configuracion de assets PDF viewer en `angular.json` (host)
|
|
70
70
|
|
|
71
|
-
|
|
71
|
+
Los ficheros de PDF.js (`viewer-*.mjs`, workers, `cmaps`, etc.) viven en `node_modules/ngx-extended-pdf-viewer/assets`. El host debe **copiarlos al build** para poder servirlos bajo la ruta base de la aplicacion (normalmente `/assets/`).
|
|
72
|
+
|
|
73
|
+
### Donde colocarlo
|
|
74
|
+
|
|
75
|
+
En el proyecto del MFE, dentro del **target que realmente usa `ng build` / `ng serve`** (suele llamarse `esbuild`, `build` o `application`), en `architect.<target>.options.assets` (no solo en el target `test`).
|
|
76
|
+
|
|
77
|
+
Ejemplo con el builder moderno de aplicacion (`@angular-devkit/build-angular:application`):
|
|
72
78
|
|
|
73
79
|
```json
|
|
74
|
-
{
|
|
75
|
-
"
|
|
76
|
-
|
|
77
|
-
|
|
80
|
+
"architect": {
|
|
81
|
+
"esbuild": {
|
|
82
|
+
"builder": "@angular-devkit/build-angular:application",
|
|
83
|
+
"options": {
|
|
84
|
+
"assets": [
|
|
85
|
+
{
|
|
86
|
+
"glob": "**/*",
|
|
87
|
+
"input": "public"
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
"glob": "**/*",
|
|
91
|
+
"input": "node_modules/ngx-extended-pdf-viewer/assets",
|
|
92
|
+
"output": "/assets/"
|
|
93
|
+
}
|
|
94
|
+
]
|
|
95
|
+
}
|
|
96
|
+
}
|
|
78
97
|
}
|
|
79
98
|
```
|
|
80
99
|
|
|
81
|
-
|
|
100
|
+
- Ajusta el primer bloque (`public`, `src/assets`, etc.) segun tu proyecto; lo importante es **anadir** el segundo bloque con `ngx-extended-pdf-viewer/assets`.
|
|
101
|
+
- `output: "/assets/"` hace que los ficheros queden disponibles como `https://<tu-host>/assets/viewer-*.mjs` (y el resto de recursos en el mismo prefijo).
|
|
102
|
+
|
|
103
|
+
### Si no configuras estos assets
|
|
104
|
+
|
|
105
|
+
- La libreria puede cargar los mismos recursos desde un **CDN** (jsDelivr) alineado a la version de `ngx-extended-pdf-viewer`: en muchos entornos el PDF **funcionara igual** sin copiar assets.
|
|
106
|
+
- Conviene **mantener** la entrada en `angular.json` si necesitas: **sin acceso a internet**, **CSP** que bloquea dominios externos, o **politica** de no depender de CDN.
|
|
107
|
+
|
|
108
|
+
### Si sirves los assets locales pero con otra ruta
|
|
109
|
+
|
|
110
|
+
Puedes usar el input opcional `pdfAssetsBaseUrl` en el componente (por ejemplo la URL base donde el host publica los ficheros, sin barra final o normalizada).
|
|
111
|
+
|
|
112
|
+
```html
|
|
113
|
+
<sgdea-document-viewer
|
|
114
|
+
[pdfAssetsBaseUrl]="'https://mi-dominio.com/assets'"
|
|
115
|
+
...
|
|
116
|
+
></sgdea-document-viewer>
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
Si no se define `pdfAssetsBaseUrl` y el host **no** sirve `/assets/` con los ficheros del viewer, se usara el **fallback CDN** interno.
|
|
120
|
+
|
|
121
|
+
### Sintoma tipico si falta todo (host sin assets y sin CDN)
|
|
122
|
+
|
|
123
|
+
Error en red **404** sobre `http(s)://<host>/assets/viewer-*.mjs` y el PDF no se renderiza aunque la descarga del archivo sea **200**.
|
|
82
124
|
|
|
83
125
|
## 4) Como importar y usar el componente
|
|
84
126
|
|
|
@@ -113,6 +155,7 @@ export class PdfPreviewModalComponent {}
|
|
|
113
155
|
- `nameBucket`: nombre del bucket (ej: `attachments`)
|
|
114
156
|
- `nameSpaceBucket`: namespace (si aplica; puede ir vacio)
|
|
115
157
|
- `token`: JWT para `Authorization: Bearer <token>`
|
|
158
|
+
- `pdfAssetsBaseUrl` (opcional): URL base donde el host publica los assets de `ngx-extended-pdf-viewer` (p. ej. `https://mi-app.com/assets`). Si no se define, se usa CDN o, si estan copiados en el build, la ruta por defecto del viewer.
|
|
116
159
|
|
|
117
160
|
## 6) Consideraciones de integracion en MFE
|
|
118
161
|
|
|
@@ -156,5 +199,5 @@ npm install "C:/ruta/a/infodocviewdoc-<version>.tgz"
|
|
|
156
199
|
|
|
157
200
|
Si integras este paquete en otro microfront, valida primero:
|
|
158
201
|
1. dependencias del host,
|
|
159
|
-
2. assets de `ngx-extended-pdf-viewer`,
|
|
202
|
+
2. assets de `ngx-extended-pdf-viewer` en `angular.json` del target de build (recomendado) o, si no, que el entorno permita el fallback CDN / `pdfAssetsBaseUrl`,
|
|
160
203
|
3. envio correcto de `url`, `nameFile`, `nameBucket` y `token`.
|