diff --git a/frontend/src/reports/journal/JournalHeaders.svelte b/frontend/src/reports/journal/JournalHeaders.svelte
index 710d53248..ca60ffd52 100644
--- a/frontend/src/reports/journal/JournalHeaders.svelte
+++ b/frontend/src/reports/journal/JournalHeaders.svelte
@@ -52,7 +52,17 @@
{_("Units")}
{#if show_change_and_balance}
- {_("Cost")} / {_("Change")}
+
{_("Price")} / {_("Balance")}
{:else}
{_("Cost")}
@@ -70,4 +80,13 @@
button {
position: relative;
}
+
+ button.num {
+ padding-left: 18px;
+ }
+
+ button.num[data-order]::after {
+ right: auto;
+ left: 4px;
+ }
diff --git a/frontend/src/reports/journal/sort.ts b/frontend/src/reports/journal/sort.ts
index 97b369a55..de11fdeac 100644
--- a/frontend/src/reports/journal/sort.ts
+++ b/frontend/src/reports/journal/sort.ts
@@ -1,18 +1,20 @@
import { get_direction, sortElements } from "../../sort/index.ts";
import type { JournalSort } from "../../stores/journal.ts";
-export type JournalSortColumn = "date" | "flag" | "narration";
+export type JournalSortColumn = "date" | "flag" | "narration" | "change";
const journal_column_types = {
date: "num",
flag: "string",
narration: "string",
+ change: "num",
};
const journal_column_selectors = {
date: ".datecell",
flag: ".flag",
narration: ".description",
+ change: ".change",
};
export function sort_journal(ol: HTMLOListElement, sort: JournalSort): void {
diff --git a/frontend/src/stores/journal.ts b/frontend/src/stores/journal.ts
index fb3cdc773..44305ef6e 100644
--- a/frontend/src/stores/journal.ts
+++ b/frontend/src/stores/journal.ts
@@ -29,6 +29,9 @@ const default_journal_sort: JournalSort = ["date", "desc"];
/** The column and order that the journal should be sorted in. */
export const journal_sort = localStorageSyncedStore(
"journal-sort-order",
- tuple(constants("date", "flag", "narration"), constants("asc", "desc")),
+ tuple(
+ constants("date", "flag", "narration", "change"),
+ constants("asc", "desc"),
+ ),
() => default_journal_sort,
);
diff --git a/src/fava/translations/messages.pot b/src/fava/translations/messages.pot
index a0f939264..16afd7b6e 100644
--- a/src/fava/translations/messages.pot
+++ b/src/fava/translations/messages.pot
@@ -80,7 +80,7 @@ msgstr ""
#: frontend/src/entry-forms/Balance.svelte:28
#: frontend/src/modals/AddEntry.svelte:15
-#: frontend/src/reports/journal/JournalHeaders.svelte:56
+#: frontend/src/reports/journal/JournalHeaders.svelte:66
#: frontend/src/reports/statistics/UpdateActivity.svelte:39
msgid "Balance"
msgstr ""
@@ -239,8 +239,8 @@ msgid "Date"
msgstr ""
#: frontend/src/reports/commodities/CommodityTable.svelte:19
-#: frontend/src/reports/journal/JournalHeaders.svelte:56
-#: frontend/src/reports/journal/JournalHeaders.svelte:59
+#: frontend/src/reports/journal/JournalHeaders.svelte:66
+#: frontend/src/reports/journal/JournalHeaders.svelte:69
msgid "Price"
msgstr ""
@@ -460,12 +460,12 @@ msgstr ""
msgid "F"
msgstr ""
-#: frontend/src/reports/journal/JournalHeaders.svelte:55
-#: frontend/src/reports/journal/JournalHeaders.svelte:58
+#: frontend/src/reports/journal/JournalHeaders.svelte:64
+#: frontend/src/reports/journal/JournalHeaders.svelte:68
msgid "Cost"
msgstr ""
-#: frontend/src/reports/journal/JournalHeaders.svelte:55
+#: frontend/src/reports/journal/JournalHeaders.svelte:64
msgid "Change"
msgstr ""