fix(react/dialogs): add back selection in revisions list

This commit is contained in:
Elian Doran 2025-08-10 17:53:45 +03:00
parent 5db7997a17
commit 3d81633214
No known key found for this signature in database
2 changed files with 6 additions and 3 deletions

View File

@ -83,6 +83,7 @@ function RevisionsDialogComponent() {
setCurrentRevision(correspondingRevision); setCurrentRevision(correspondingRevision);
} }
}} }}
currentRevision={currentRevision}
/> />
<div className="revision-content-wrapper" style={{ <div className="revision-content-wrapper" style={{
@ -104,13 +105,14 @@ function RevisionsDialogComponent() {
) )
} }
function RevisionsList({ revisions, onSelect }: { revisions: RevisionItem[], onSelect: (val: string) => void }) { function RevisionsList({ revisions, onSelect, currentRevision }: { revisions: RevisionItem[], onSelect: (val: string) => void, currentRevision?: RevisionItem }) {
return ( return (
<FormList style={{ height: "100%", flexShrink: 0 }} onSelect={onSelect}> <FormList style={{ height: "100%", flexShrink: 0 }} onSelect={onSelect}>
{revisions.map((item) => {revisions.map((item) =>
<FormListItem <FormListItem
title={t("revisions.revision_last_edited", { date: item.dateLastEdited })} title={t("revisions.revision_last_edited", { date: item.dateLastEdited })}
value={item.revisionId} value={item.revisionId}
active={currentRevision && item.revisionId === currentRevision.revisionId}
> >
{item.dateLastEdited && item.dateLastEdited.substr(0, 16)} ({item.contentLength && utils.formatSize(item.contentLength)}) {item.dateLastEdited && item.dateLastEdited.substr(0, 16)} ({item.contentLength && utils.formatSize(item.contentLength)})
</FormListItem> </FormListItem>

View File

@ -29,11 +29,12 @@ interface FormListItemOpts {
icon?: string; icon?: string;
value?: string; value?: string;
title?: string; title?: string;
active?: boolean;
} }
export function FormListItem({ children, icon, value, title }: FormListItemOpts) { export function FormListItem({ children, icon, value, title, active }: FormListItemOpts) {
return ( return (
<a class="dropdown-item" data-value={value} title={title}> <a class={`dropdown-item ${active ? "active" : ""}`} data-value={value} title={title}>
<Icon icon={icon} />&nbsp; <Icon icon={icon} />&nbsp;
{children} {children}
</a> </a>