fix: version 2.10.6 -- icono de compartida junto al de arrastre + fix de actualizacion en vivo

El icono de compartida de las tarjetas de Notas se mueve de junto a la fecha a la esquina
inferior derecha, a la izquierda del icono de arrastre. De paso se corrige que no se
actualizaba en la tarjeta tras compartir/dejar de compartir sin recargar la pagina (faltaba
un reload() de la lista principal, que es de donde sale el share_count de cada tarjeta).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Milton Gonzalez
2026-10-12 17:31:56 -05:00
parent 0d47bba29d
commit 24169237e1
6 changed files with 33 additions and 12 deletions
+8
View File
@@ -1,5 +1,13 @@
# Changelog - project.linkedcorp.net
## [2.10.6] - 2026-10-12
### Changed
- Ícono de compartida de las tarjetas de Notas: se mueve junto al de arrastre, abajo a la
derecha (antes estaba junto a la fecha).
### Fixed
- El ícono de compartida no se actualizaba en la tarjeta tras compartir/dejar de compartir
hasta recargar la página.
## [2.10.5] - 2026-10-12
### Changed
- Ícono de arrastre de las tarjetas de Notas: de la esquina superior derecha a la inferior
+1 -1
View File
@@ -1 +1 @@
2.10.5
2.10.6
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "project-linkedcorp-backend",
"version": "2.10.5",
"version": "2.10.6",
"private": true,
"type": "module",
"main": "src/server.js",
+1 -1
View File
@@ -1,7 +1,7 @@
{
"name": "project-linkedcorp-frontend",
"private": true,
"version": "2.10.5",
"version": "2.10.6",
"type": "module",
"scripts": {
"dev": "vite",
+19 -7
View File
@@ -93,12 +93,14 @@ export default function NotasPage() {
await runAction(async () => {
setShares(await addNoteShare(selected.id, Number(sharingWith)));
setSharingWith('');
await reload(); // el ícono de compartida de la tarjeta usa share_count de la lista principal
});
}
function removeShare(userId) {
runAction(async () => {
setShares(await removeNoteShare(selected.id, userId));
await reload();
});
}
@@ -136,15 +138,21 @@ export default function NotasPage() {
onClick={() => openNote(note)}
{...(dragEnabled ? getRowProps(note) : {})}
>
{dragEnabled && (
<span className="notes-card-handle" onClick={(e) => e.stopPropagation()} {...getHandleProps(note)}>
<GripVertical size={14} />
</span>
)}
<div className="notes-card-corner">
{note.share_count > 0 && (
<span className="notes-card-corner-share" title={t('notes_share_title')}>
<Share2 size={13} strokeWidth={2.5} />
</span>
)}
{dragEnabled && (
<span className="notes-card-handle" onClick={(e) => e.stopPropagation()} {...getHandleProps(note)}>
<GripVertical size={14} />
</span>
)}
</div>
<div className="notes-card-preview">{note.content}</div>
<div className="notes-card-meta">
<span className="notes-card-meta-row">
{note.share_count > 0 && <Share2 size={13} strokeWidth={2.5} title={t('notes_share_title')} />}
{note.created_at === note.updated_at
? formatDateTime(note.created_at)
: `${t('notes_updated')} ${formatDateTime(note.updated_at)}`}
@@ -154,10 +162,14 @@ export default function NotasPage() {
))}
{sharedNotes.map((note) => (
<div key={note.id} className="notes-card" onClick={() => openNote(note)}>
<div className="notes-card-corner">
<span className="notes-card-corner-share" title={t('notes_share_title')}>
<Share2 size={13} strokeWidth={2.5} />
</span>
</div>
<div className="notes-card-preview">{note.content}</div>
<div className="notes-card-meta">
<span className="notes-card-meta-row">
<Share2 size={13} strokeWidth={2.5} title={t('notes_share_title')} />
{note.created_at === note.updated_at
? formatDateTime(note.created_at)
: `${t('notes_updated')} ${formatDateTime(note.updated_at)}`}
+3 -2
View File
@@ -374,8 +374,10 @@ table.list-table { width: 100%; border-collapse: collapse; font-size: .8rem; }
}
.notes-card:hover { border-color: rgb(var(--accent) / .5); }
.notes-card.dragging { opacity: .4; }
.notes-card-corner { position: absolute; bottom: 8px; right: 8px; display: flex; align-items: center; gap: 6px; }
.notes-card-corner-share { display: flex; align-items: center; color: rgb(var(--accent)); }
.notes-card-handle {
position: absolute; bottom: 8px; right: 8px; width: 20px; height: 20px;
width: 20px; height: 20px;
display: flex; align-items: center; justify-content: center;
color: rgb(var(--muted)); cursor: grab;
}
@@ -386,7 +388,6 @@ table.list-table { width: 100%; border-collapse: collapse; font-size: .8rem; }
}
.notes-card-meta { display: flex; flex-direction: column; gap: 2px; font-size: .68rem; color: rgb(var(--muted)); }
.notes-card-meta-row { display: flex; align-items: center; gap: 5px; }
.notes-card-meta-row svg { color: rgb(var(--accent)); flex: none; }
.notes-card-shared { color: rgb(var(--accent)); }
.notes-card-new {
border: 1px dashed rgb(var(--line)); background: transparent; color: rgb(var(--muted));