mirror of
https://github.com/zadam/trilium.git
synced 2025-12-21 15:49:56 +01:00
feat(layout): move revisions button to note actions
This commit is contained in:
@@ -6,13 +6,13 @@ interface ExperimentalFeature {
|
|||||||
description: string;
|
description: string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export const experimentalFeatures: ExperimentalFeature[] = [
|
export const experimentalFeatures = [
|
||||||
{
|
{
|
||||||
id: "new-layout",
|
id: "new-layout",
|
||||||
name: "New Layout",
|
name: "New Layout",
|
||||||
description: "Try out the new layout for a more modern look and improved usability.",
|
description: "Try out the new layout for a more modern look and improved usability.",
|
||||||
}
|
}
|
||||||
];
|
] as const satisfies ExperimentalFeature[];
|
||||||
|
|
||||||
type ExperimentalFeatureId = typeof experimentalFeatures[number]["id"];
|
type ExperimentalFeatureId = typeof experimentalFeatures[number]["id"];
|
||||||
|
|
||||||
@@ -28,7 +28,7 @@ export function getEnabledExperimentalFeatureIds() {
|
|||||||
|
|
||||||
function getEnabledFeatures() {
|
function getEnabledFeatures() {
|
||||||
if (!enabledFeatures) {
|
if (!enabledFeatures) {
|
||||||
const features = JSON.parse(options.get("experimentalFeatures")) as string[];
|
const features = JSON.parse(options.get("experimentalFeatures")) as ExperimentalFeatureId[];
|
||||||
enabledFeatures = new Set(features);
|
enabledFeatures = new Set(features);
|
||||||
}
|
}
|
||||||
return enabledFeatures;
|
return enabledFeatures;
|
||||||
|
|||||||
@@ -16,12 +16,15 @@ import Dropdown from "../react/Dropdown";
|
|||||||
import { FormDropdownDivider, FormListHeader, FormListItem } from "../react/FormList";
|
import { FormDropdownDivider, FormListHeader, FormListItem } from "../react/FormList";
|
||||||
import { useIsNoteReadOnly, useNoteContext, useNoteLabel, useNoteProperty, useTriliumOption } from "../react/hooks";
|
import { useIsNoteReadOnly, useNoteContext, useNoteLabel, useNoteProperty, useTriliumOption } from "../react/hooks";
|
||||||
import { ParentComponent } from "../react/react_utils";
|
import { ParentComponent } from "../react/react_utils";
|
||||||
|
import { isExperimentalFeatureEnabled } from "../../services/experimental_features";
|
||||||
|
|
||||||
|
const isNewLayout = isExperimentalFeatureEnabled("new-layout");
|
||||||
|
|
||||||
export default function NoteActions() {
|
export default function NoteActions() {
|
||||||
const { note, noteContext } = useNoteContext();
|
const { note, noteContext } = useNoteContext();
|
||||||
return (
|
return (
|
||||||
<div className="ribbon-button-container" style={{ contain: "none" }}>
|
<div className="ribbon-button-container" style={{ contain: "none" }}>
|
||||||
{note && <RevisionsButton note={note} />}
|
{note && !isNewLayout && <RevisionsButton note={note} />}
|
||||||
{note && note.type !== "launcher" && <NoteContextMenu note={note as FNote} noteContext={noteContext} />}
|
{note && note.type !== "launcher" && <NoteContextMenu note={note as FNote} noteContext={noteContext} />}
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
@@ -95,6 +98,7 @@ function NoteContextMenu({ note, noteContext }: { note: FNote, noteContext?: Not
|
|||||||
}
|
}
|
||||||
<FormDropdownDivider />
|
<FormDropdownDivider />
|
||||||
|
|
||||||
|
<CommandItem command="showRevisions" icon="bx bx-history" text={t("revisions_button.note_revisions")} />
|
||||||
<CommandItem command="forceSaveRevision" icon="bx bx-save" disabled={isInOptionsOrHelp} text={t("note_actions.save_revision")} />
|
<CommandItem command="forceSaveRevision" icon="bx bx-save" disabled={isInOptionsOrHelp} text={t("note_actions.save_revision")} />
|
||||||
<CommandItem icon="bx bx-trash destructive-action-icon" text={t("note_actions.delete_note")} destructive
|
<CommandItem icon="bx bx-trash destructive-action-icon" text={t("note_actions.delete_note")} destructive
|
||||||
disabled={isInOptionsOrHelp}
|
disabled={isInOptionsOrHelp}
|
||||||
|
|||||||
Reference in New Issue
Block a user