From fb720a4170f2390d19bfb2603bd8ed0d5d8d9afd Mon Sep 17 00:00:00 2001
From: kmmiio99o <164557248+kmmiio99o@users.noreply.github.com>
Date: Sat, 13 Sep 2025 23:23:38 +0200
Subject: [PATCH] Add changelog display to Last.fm plugin settings
---
base_manifest.json | 2 +-
plugins/Last.fm/src/changelog.ts | 35 ++++++++++++++++
plugins/Last.fm/src/ui/ChangelogView.tsx | 49 +++++++++++++++++++++++
plugins/Last.fm/src/ui/pages/Settings.tsx | 37 ++++++++++++++++-
4 files changed, 121 insertions(+), 2 deletions(-)
create mode 100644 plugins/Last.fm/src/changelog.ts
create mode 100644 plugins/Last.fm/src/ui/ChangelogView.tsx
diff --git a/base_manifest.json b/base_manifest.json
index 59ba9e7..5bcc327 100644
--- a/base_manifest.json
+++ b/base_manifest.json
@@ -5,7 +5,7 @@
"id": "492949202121261067"
},
{
- "name": "forked by kmmiio99o",
+ "name": "kmmiio99o",
"id": "879393496627306587"
}
],
diff --git a/plugins/Last.fm/src/changelog.ts b/plugins/Last.fm/src/changelog.ts
new file mode 100644
index 0000000..f2e1f98
--- /dev/null
+++ b/plugins/Last.fm/src/changelog.ts
@@ -0,0 +1,35 @@
+interface ChangelogEntry {
+ version: string;
+ date: string;
+ changes: string[];
+}
+
+export const changelog: ChangelogEntry[] = [
+ {
+ version: "2.1.0",
+ date: "2024-01-15",
+ changes: ["Add changelog display to Last.fm plugin settings"],
+ },
+ {
+ version: "2.0.0",
+ date: "2025-09-12",
+ changes: ["Fix settings scrolling"],
+ },
+ {
+ version: "1.3.0",
+ date: "2025-09-12",
+ changes: ["fix reanimated"],
+ },
+ {
+ version: "1.2.0",
+ date: "2025-09-12",
+ changes: ["test"],
+ },
+ {
+ version: "1.1.0",
+ date: "2025-09-12",
+ changes: ["fixed reanimated issue??"],
+ },
+];
+
+export const currentVersion = "2.0.0";
diff --git a/plugins/Last.fm/src/ui/ChangelogView.tsx b/plugins/Last.fm/src/ui/ChangelogView.tsx
new file mode 100644
index 0000000..3492d7a
--- /dev/null
+++ b/plugins/Last.fm/src/ui/ChangelogView.tsx
@@ -0,0 +1,49 @@
+import { clipboard } from "@vendetta/metro/common";
+import { getAssetIDByName } from "@vendetta/ui/assets";
+import { ErrorBoundary, Forms, General } from "@vendetta/ui/components";
+import { showToast } from "@vendetta/ui/toasts";
+import { changelog, currentVersion } from "../changelog";
+import { React } from "@vendetta/metro/common";
+
+const { FormRow, FormSection } = Forms;
+const { View, ScrollView, Text, TouchableOpacity } = General;
+
+export default function ChangelogView() {
+ return (
+
+
+
+ {
+ clipboard.setString(currentVersion);
+ showToast("Version copied to clipboard", getAssetIDByName("toast_copy_link"));
+ }}
+ >
+ Copy
+
+ }
+ />
+
+
+
+ {changelog.map((entry, index) => (
+
+
+ Version {entry.version}
+ {entry.date}
+
+ {entry.changes.map((change, changeIndex) => (
+
+ • {change}
+
+ ))}
+
+ ))}
+
+
+
+ );
+}
diff --git a/plugins/Last.fm/src/ui/pages/Settings.tsx b/plugins/Last.fm/src/ui/pages/Settings.tsx
index 46769c3..72c45f5 100644
--- a/plugins/Last.fm/src/ui/pages/Settings.tsx
+++ b/plugins/Last.fm/src/ui/pages/Settings.tsx
@@ -5,6 +5,7 @@ import { getAssetIDByName } from "@vendetta/ui/assets";
import { showToast } from "@vendetta/ui/toasts";
import { React } from "@vendetta/metro/common";
import { ScrollView, View } from "react-native";
+import { changelog, currentVersion } from "../../changelog";
import { currentSettings, pluginState } from "../..";
import Constants from "../../constants";
@@ -191,6 +192,40 @@ export default function Settings() {
+
+ {changelog.map((entry, index) => (
+
+
+
+ Version {entry.version}
+
+ {entry.date}
+
+ {entry.changes.map((change, changeIndex) => (
+
+ • {change}
+
+ ))}
+
+ ))}
+
+
- Version 2.0.0
+ Version {currentVersion}
);