# Avisos de terceros

Este archivo debe acompañar cualquier copia distribuida de Lúmina. La aplicación
puede utilizarse y comercializarse sin adquirir licencias de pago para los
componentes inventariados, siempre que se conserven los textos y atribuciones que
se indican aquí. Este aviso no sustituye los textos completos de las licencias.

El inventario reproducible se conserva en
`THIRD_PARTY_LICENSE_INVENTORY.json`. Se genera desde `package-lock.json`, los
paquetes instalados y `THIRD_PARTY_LICENSES/manifest.json` mediante
`node scripts/generate-license-inventory.mjs`. El control previo de publicación
rechaza licencias copyleft no admitidas, no comerciales, de uso restringido,
propietarias, source-available, de pago o pendientes de revisión. También
rechaza identificadores sin texto reconocido, paquetes físicos fuera del
lockfile y archivos no declarados dentro de `THIRD_PARTY_LICENSES/`.

## Astronomy Engine

Los cálculos astronómicos utilizan `astronomy-engine` 2.1.19, publicado bajo la
licencia MIT.

- Autor y titular indicado en la licencia: Copyright (c) 2019-2023 Don Cross.
- Código fuente fijado: https://github.com/cosinekitty/astronomy/tree/61dc07020aaa6885d2c7f688a4d82beaf6edb9ef
- Texto conservado: `THIRD_PARTY_LICENSES/astronomy-engine-2.1.19-MIT.txt`.

## Álgebra de sistemas de casas abiertos

La implementación propia de casas abiertas de `open-houses.mjs` usa como
referencia algebraica CircularNatalHoroscopeJS 1.1.0, revisión `76e150f`,
publicada bajo Unlicense.

- Código fuente fijado: https://github.com/0xStarcat/CircularNatalHoroscopeJS/tree/76e150f
- Texto conservado: `THIRD_PARTY_LICENSES/CircularNatalHoroscopeJS-1.1.0-Unlicense.txt`.

## Elementos orbitales CC0 de seis cuerpos menores

Lúmina incorpora un snapshot offline reproducible de datos estructurados de
Wikidata para seis cuerpos menores: Ceres, Pallas, Juno, Vesta, Chiron y Pholus.
Cada entrada conserva QID, revisión y hash de EntityData, época y siete claims
orbitales con statement, rango, unidad y valor. El motor transforma esos datos
en estados ecuatoriales J2000 y los integra localmente; no consulta servicios de
red durante el uso.

- Fuente: https://www.wikidata.org/wiki/Special:EntityData/
- Política oficial: https://www.wikidata.org/wiki/Wikidata:Copyright
- Acceso reproducible por revisión: https://www.wikidata.org/wiki/Help:Data_access
- Licencia de los datos estructurados: CC0-1.0.
- Snapshot: `wikidata-minor-bodies.mjs`.
- Registro: `THIRD_PARTY_LICENSES/Wikidata-minor-bodies-CC0-NOTICE.txt`.
- Hash del payload:
  `004c532b157cf7846a7a77422913c971336a1ba3553b3e5afc3f4c542c825451`.

CC0-1.0 no exige atribución. Este aviso se conserva voluntariamente para hacer
reproducibles los datos y no implica patrocinio ni aprobación de Wikidata o la
Fundación Wikimedia. El motor falla de forma cerrada si falta un claim, la época
no coincide, la unidad cambia o un elemento sale del dominio orbital admitido.

## Astrometría de 32 estrellas de Wikidata

Lúmina incorpora un snapshot offline reproducible de datos estructurados para
32 estrellas fijas. Conserva por entidad su QID, revisión de EntityData, hash
SHA-256, statement seleccionado, rango, unidad, valor y límites numéricos para
las propiedades P6257, P6258, P10752, P10751 y P2214.

- Fuente: https://www.wikidata.org/wiki/Special:EntityData/
- Política oficial: https://www.wikidata.org/wiki/Wikidata:Copyright
- Acceso, revisiones fijadas y atribución: https://www.wikidata.org/wiki/Wikidata:Data_access
- Licencia de los datos estructurados: CC0-1.0.
- Snapshot: `wikidata-fixed-stars.mjs`.
- Registro de procedencia: `THIRD_PARTY_LICENSES/Wikidata-fixed-stars-CC0-NOTICE.txt`.
- Hash del payload de 32 estrellas:
  `f6b53992ae3e6f7881bc0cd1e536e769c12862ff99336115828df9e7d7d660ed`.

CC0-1.0 no exige atribución. Este aviso se conserva voluntariamente para hacer
reproducibles los datos y no implica patrocinio ni aprobación de Wikidata o la
Wikimedia Foundation. Las 32 entradas conservan los cinco claims astrométricos
completos. Fomalhaut usa Fomalhaut A (Q76446963), con statements normales de
movimiento propio y paralaje en vez de alternativas deprecated. El motor falla
si falta un dato y no inventa astrometría de fallback.

## GeoNames y buscador de ciudades

El archivo offline `data/geonames-cities.json.gz` es un conjunto transformado a
partir de `cities1000.zip` de GeoNames. Se filtró, convirtió a JSON y comprimió
para su uso local; no es una copia sin modificar del formato de origen.

- Datos GeoNames: Creative Commons Attribution 4.0 International (CC BY 4.0).
- Fuente exacta: https://download.geonames.org/export/dump/cities1000.zip
- Sitio de atribución: https://www.geonames.org/
- SHA-256 del archivo fuente: `f3a02b4644c48bddded6bf70a579a4b6af8a6ed657a91728eb3873e327c187ba`.
- SHA-256 del índice transformado: `31ad47acb9aacac48028f6d5b2b6683259adbd339d53a2e98a30094c27e6a48c`.
- Texto conservado: `THIRD_PARTY_LICENSES/CC-BY-4.0.txt`.

Atribución: datos geográficos derivados de GeoNames, licencia CC BY 4.0.

Aviso oficial de GeoNames: los datos se proporcionan “as is”, sin garantía ni
representación alguna sobre su exactitud, actualidad o integridad
(“accuracy, timeliness or completeness”). Este aviso procede de
https://download.geonames.org/export/dump/readme.txt y también aparece en las
condiciones de https://www.geonames.org/export/.

## Dependencias npm

Las dependencias directas son `astronomy-engine` (MIT), `fast-xml-parser` (MIT)
y `pdfkit` (MIT). El inventario incluye también todas sus dependencias
transitivas y los textos detectados o vendorizados.

Algunos tarballs transitivos declaran MIT pero omiten un archivo LICENSE. Por
eso se conservan copias trazables para `@nodable/entities`, `xml-naming`,
`brotli`, `dfa` y `fontkit`. En `brotli`, siete archivos del decodificador
conservan además cabeceras bajo Apache-2.0; su texto oficial se adjunta junto al
aviso MIT.

También se conservan las licencias acumulativas que no quedan cubiertas por el
LICENSE principal de cada tarball:

- `pako` 1.0.11 y la copia anidada 0.2.9 incorporan un port de Zlib 1.2.8.
  Copyright de zlib: Jean-loup Gailly y Mark Adler. Texto conservado:
  `THIRD_PARTY_LICENSES/Zlib-1.2.8.txt`.
- El módulo RIPEMD-160 de `crypto-js` 4.2.0 conserva Copyright (c) 2012
  Cédric Mesnil bajo BSD-2-Clause. Texto conservado:
  `THIRD_PARTY_LICENSES/CryptoJS-RIPEMD160-BSD-2-Clause.txt`.
- `fontkit` 2.0.4 identifica lógica portada o basada en HarfBuzz y un
  decodificador basado en base64-arraybuffer. Se conservan el aviso Old MIT de
  HarfBuzz y el aviso MIT de base64-arraybuffer en `THIRD_PARTY_LICENSES/`.

## Métricas Adobe Core 14 incluidas por PDFKit

PDFKit 0.17.2 distribuye 14 archivos de métricas AFM con Copyright Adobe Systems Incorporated y vuelve a representarlos dentro de su bundle
`pdfkit.standalone.js`. Se conservan bajo Adobe PostScript AFM License
(`APAFML`). El texto completo y la nota de la transformación de empaquetado
deben acompañar siempre a esos archivos:
`THIRD_PARTY_LICENSES/Adobe-PostScript-AFM-APAFML.txt`.

La licencia permite su uso, copia y distribución para cualquier finalidad y
"without charge"; Lúmina no cobra ni vende por separado los archivos AFM. Se
han conservado sus avisos y no se han modificado intencionadamente las métricas.

## Perfil ICC sRGB2014 incluido por PDFKit

`node_modules/pdfkit/js/data/sRGB_IEC61966_2_1.icc` es byte por byte el perfil
oficial sRGB2014.icc de la International Color Consortium, con SHA-256
`384b832de3412066743b52a75ee906b6fb9fb8d9e09e936fc2c43223815c6e0a`.
Los términos generales oficiales permiten copiar, distribuir, incorporar, usar
y vender perfiles propiedad de ICC. Lúmina lo distribuye sin alterar y no
sugiere patrocinio, certificación ni aprobación de ICC. Aviso conservado:
`THIRD_PARTY_LICENSES/ICC-sRGB2014-profile-NOTICE.txt`.

## Tablas de la base de datos Unicode

`unicode-properties`, `linebreak` y `fontkit`, dependencias de PDFKit,
distribuyen tablas compiladas o transformadas desde la base de datos Unicode.
Esos datos se conservan bajo Unicode-DFS-2016, que permite usar, modificar,
distribuir y vender las copias siempre que el aviso aparezca con los datos o en
la documentación asociada.

Copyright © 1991-2016 Unicode, Inc. El texto completo se conserva en
`THIRD_PARTY_LICENSES/Unicode-DFS-2016.txt`. El nombre de Unicode no debe usarse
para promocionar el producto sin autorización previa.

## Contenido editorial

La distribución comercial contiene únicamente publicaciones originales de
primera parte y no incorpora títulos, extractos ni cuerpos de feeds externos.
La recolección externa está desactivada de forma predeterminada y también en
modo público o comercial. Si un operador modifica el producto para activarla,
debe documentar por separado los derechos de cada fuente antes de publicar.

Las menciones de proveedores y fuentes no implican patrocinio, asociación ni
aprobación de Lúmina por esas organizaciones.
