Repository navigation
Releases: Coongro/contacts
Release list
v1.9.0
v1.8.0
Minor Changes
- Forma canónica de las acciones, sin
legacy(requiere Core ≥ 0.70):contacts.list: de array a página (pageInput→{ items, total }, 50 por defecto), consearch,orderByy filtrostype,kind,organization_id,is_active.contacts.search: sigue devolviendo{ items, total }, pero sinlimittrae 50 (antes, todos); aceptasearchademás dequeryyorderBysolo por columnas ordenables.contacts.listByOrganization: de array a página;organizationIdobligatorio.contacts.findByTag: de array a página.contacts.create,contacts.update,contacts.softDelete,contacts.restore: devuelven el registro (onull), nunca[registro].
Patch Changes
- Requiere Coongro 0.72.0 o posterior: las acciones responden la forma canónica, las listas paginadas aceptan llamarse sin argumentos y las vistas leen sus parámetros por instancia.
v1.7.0
Minor Changes
- Componentes y hooks del navegador en JSX con imports normales (
react,@coongro/ui-components) en lugar deReact.createElement+getHostReact()/getHostUI(). Mismo render salvo un cambio declarado: enContactDetaillas fechas de alta y última modificación salen conuseFormat()(zona horaria del negocio y formato06/10/2026; antes zona del navegador y6/10/2026). Requiere Core >=0.69.0.
Patch Changes
- Las consultas SQL crudas del repositorio tipan sus filas con
execute<Row>()en vez de castear el resultado. Requiere Coongro 0.69. Sin cambios de comportamiento.
v1.6.2
Patch Changes
- Requiere Core >=0.68.0 (eventos y señales de la UI).
v1.6.1
Patch Changes
- El manifest declara con qué acción se borra cada entidad (
deleteAction), y las vistas regeneradas solo llaman a acciones que existen. No cambia ninguna vista.
v1.6.0
Minor Changes
-
Las acciones de contacts se declaran con
@coongro/plugin-sdk/actions: el Core valida lo que llega a cada una y nadie puede escribir desde afuera las columnas de sistema (created_at,updated_at,deleted_at,merged_into_id) ni la calculada (phone_normalized). Mientras el Core está en modo sombra, lo inválido se registra y la acción corre igual.Las acciones devuelven la forma nueva a quien la pide (un contacto en vez de
[contacto];searchylistcomo{ items, total }), y la de siempre a todos los demás, así que los kits que usan contacts no cambian. Los hooks de contacts usan el cliente tipado: la tabla muestra el total real en vez de estimarlo.Requiere Core 0.61.0 o posterior.
Patch Changes
searchtrae la página y el total en una sola consulta (count(*) OVER()) en lugar de dos. Antes hacía la segunda aunque quien llama descartara el total.
v1.5.0
Minor Changes
-
Los contactos distinguen persona de organización y guardan los datos de un CRM
- Columnas nuevas, todas con default o nullable (quien inserta directo en la tabla no se entera):
kind(person|organization, defaultperson),organization_id,first_name,
last_name,job_title,additional_emails/additional_phones(jsonb, default[]),
website,linkedin, domicilio estructurado (address_street,address_city,
address_state,address_postcode,address_country) yowner_staff_id. - Las migraciones marcan como organización a los contactos con
metadata.kind = 'empresa'o
con untypeque lo dice en cualquier vocabulario (company,empresa,organization,
organización), incluidos los borrados.typeno cambia: sigue siendo el rol de cada kit. - Índices no únicos por email, documento, organización,
kindydeleted_at. - Acciones nuevas:
contacts.listByOrganizationycontacts.count.contacts.listacepta
limit/offsetopcionales (sin ellos devuelve la agenda completa, como antes) y
contacts.searchfiltra además porkindyorganizationId. - Los contratos agentic exponen los campos nuevos y su copy deja de hablar de alquileres.
- Columnas nuevas, todas con default o nullable (quien inserta directo en la tabla no se entera):
-
Los contactos declaran quién puede verlos y gestionarlos
El plugin declara sus permisos (
contributes.permissions, generados con el Coongro Builder) y traesrc/permissions/permissions.gen.tscon las constantes para chequearlos en código. En Coongro Standalone, cada usuario ve y hace solo lo que le permiten sus roles; el dueño, todo.
v1.4.0
What's Changed
- ci: migrar a recetas reutilizables de plugin-ci (COONG-244) by @AllyssaLyddell in #52
- chore: normalizar fin de línea y validar solo staged en el pre-commit by @AllyssaLyddell in #53
- fix(contacts): la tabla genera su propio id y is_active por default (COONG-275) by @AllyssaLyddell in #54
- El catálogo agentic, declarado en código (COONG-275) by @AllyssaLyddell in #55
- release: contacts → staging (COONG-275: id/is_active defaults + actions) by @AllyssaLyddell in #56
- Version Packages by @github-actions[bot] in #57
- release: contacts 1.4.0 -> prod by @AllyssaLyddell in #58
Full Changelog: v1.3.0...v1.4.0
v1.3.0
What's Changed
- refactor(ui): adopt FormSection + FormDialogSubmit + ConfirmDialog (COONG-112) by @AllyssaLyddell in #41
- chore: promote develop to staging (FormSection + ConfirmDialog + detail patterns) by @AllyssaLyddell in #42
- Version Packages by @github-actions[bot] in #43
- feat(contacts): rediseño de ContactDetail (COONG-208) by @AllyssaLyddell in #46
- ci: HUSKY=0 en release/publish workflows (COONG-244) by @AllyssaLyddell in #47
- release: contacts a staging (COONG-244) by @AllyssaLyddell in #48
- fix: tailwind config self-contained (COONG-244) by @AllyssaLyddell in #49
- release: contacts tailwind fix a staging (COONG-244) by @AllyssaLyddell in #50
- Version Packages by @github-actions[bot] in #45
- release: contacts 1.3.0 → producción by @AllyssaLyddell in #51
Full Changelog: v1.2.0...v1.3.0
v1.2.0
What's Changed
- release: COONG-112 visual consistency by @AllyssaLyddell in #44
Full Changelog: v1.1.0...v1.2.0