feat: reemplaza "Creado" por "Actualizado" en el listado de Proyectos
Columna con fecha y hora, orden por defecto (mas reciente primero) en vez de fecha de creacion. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,5 +1,10 @@
|
|||||||
# Changelog - project.linkedcorp.net
|
# Changelog - project.linkedcorp.net
|
||||||
|
|
||||||
|
## [1.12.5] - 2026-09-14
|
||||||
|
### Changed
|
||||||
|
- Listado de Proyectos: columna "Creado" reemplazada por "Actualizado" (fecha y hora), y es ahora
|
||||||
|
el orden por defecto — el proyecto tocado más recientemente aparece primero.
|
||||||
|
|
||||||
## [1.12.4] - 2026-09-14
|
## [1.12.4] - 2026-09-14
|
||||||
### Added
|
### Added
|
||||||
- Botón "Editar" (lápiz) en cada tarea de una actividad — el backend ya soportaba renombrar una
|
- Botón "Editar" (lápiz) en cada tarea de una actividad — el backend ya soportaba renombrar una
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "project-linkedcorp-backend",
|
"name": "project-linkedcorp-backend",
|
||||||
"version": "1.12.4",
|
"version": "1.12.5",
|
||||||
"private": true,
|
"private": true,
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"main": "src/server.js",
|
"main": "src/server.js",
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "project-linkedcorp-frontend",
|
"name": "project-linkedcorp-frontend",
|
||||||
"private": true,
|
"private": true,
|
||||||
"version": "1.12.4",
|
"version": "1.12.5",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"dev": "vite",
|
"dev": "vite",
|
||||||
|
|||||||
@@ -136,6 +136,7 @@ export const messages = {
|
|||||||
project_invite_email_hint: 'Si el correo no pertenece a nadie todavia, se le manda un enlace para que complete su registro y se una al proyecto.',
|
project_invite_email_hint: 'Si el correo no pertenece a nadie todavia, se le manda un enlace para que complete su registro y se una al proyecto.',
|
||||||
project_invite_sent: 'Invitacion enviada por correo',
|
project_invite_sent: 'Invitacion enviada por correo',
|
||||||
project_created_at: 'Creado',
|
project_created_at: 'Creado',
|
||||||
|
project_updated_at: 'Actualizado',
|
||||||
project_deleted_at: 'Eliminado',
|
project_deleted_at: 'Eliminado',
|
||||||
project_filter_due_soon: 'Solo próximos a vencer (7 días)',
|
project_filter_due_soon: 'Solo próximos a vencer (7 días)',
|
||||||
|
|
||||||
@@ -369,6 +370,7 @@ export const messages = {
|
|||||||
project_invite_email_hint: "If the email doesn't belong to anyone yet, they get a link to finish signing up and join the project.",
|
project_invite_email_hint: "If the email doesn't belong to anyone yet, they get a link to finish signing up and join the project.",
|
||||||
project_invite_sent: 'Invite sent by email',
|
project_invite_sent: 'Invite sent by email',
|
||||||
project_created_at: 'Created',
|
project_created_at: 'Created',
|
||||||
|
project_updated_at: 'Updated',
|
||||||
project_deleted_at: 'Deleted',
|
project_deleted_at: 'Deleted',
|
||||||
project_filter_due_soon: 'Due soon only (7 days)',
|
project_filter_due_soon: 'Due soon only (7 days)',
|
||||||
|
|
||||||
|
|||||||
@@ -134,7 +134,7 @@ export default function ProyectosPage() {
|
|||||||
{ key: 'owner_name', label: t('project_owner') },
|
{ key: 'owner_name', label: t('project_owner') },
|
||||||
{ key: 'progress_pct', label: t('project_progress'), render: (r) => <div style={{ width: 100 }}><ProgressBar value={Number(r.progress_pct)} /></div> },
|
{ key: 'progress_pct', label: t('project_progress'), render: (r) => <div style={{ width: 100 }}><ProgressBar value={Number(r.progress_pct)} /></div> },
|
||||||
{ key: 'risk_level', label: t('project_risk'), render: (r) => <Badge color={RISK_COLOR[r.risk_level]}>{t(`risk_${r.risk_level}`)}</Badge> },
|
{ key: 'risk_level', label: t('project_risk'), render: (r) => <Badge color={RISK_COLOR[r.risk_level]}>{t(`risk_${r.risk_level}`)}</Badge> },
|
||||||
{ key: 'created_at', label: t('project_created_at'), render: (r) => String(r.created_at).slice(0, 10) },
|
{ key: 'updated_at', label: t('project_updated_at'), render: (r) => String(r.updated_at).slice(0, 16) },
|
||||||
...(showTrash ? [{ key: 'deleted_at', label: t('project_deleted_at'), render: (r) => String(r.deleted_at).slice(0, 10) }] : []),
|
...(showTrash ? [{ key: 'deleted_at', label: t('project_deleted_at'), render: (r) => String(r.deleted_at).slice(0, 10) }] : []),
|
||||||
];
|
];
|
||||||
|
|
||||||
@@ -193,7 +193,7 @@ export default function ProyectosPage() {
|
|||||||
getSearchHaystack={(p) => `${p.code} ${p.name} ${p.owner_name} ${p.status_name}`}
|
getSearchHaystack={(p) => `${p.code} ${p.name} ${p.owner_name} ${p.status_name}`}
|
||||||
getRowKey={(p) => p.id}
|
getRowKey={(p) => p.id}
|
||||||
onRowClick={showTrash ? undefined : (p) => navigate(`/proyectos/${p.id}`)}
|
onRowClick={showTrash ? undefined : (p) => navigate(`/proyectos/${p.id}`)}
|
||||||
initialSort={{ key: 'created_at', dir: -1 }}
|
initialSort={{ key: 'updated_at', dir: -1 }}
|
||||||
rowActions={
|
rowActions={
|
||||||
showTrash
|
showTrash
|
||||||
? (p) => [
|
? (p) => [
|
||||||
|
|||||||
Reference in New Issue
Block a user