diff --git a/frontend/src/components/settings/CommitSection.jsx b/frontend/src/components/settings/CommitSection.jsx
index 04b92cd..cdb0d81 100644
--- a/frontend/src/components/settings/CommitSection.jsx
+++ b/frontend/src/components/settings/CommitSection.jsx
@@ -1,59 +1,44 @@
-import React from "react";
-import Textarea from "../ui/TextArea";
+import React from 'react';
+import Textarea from '../ui/TextArea';
const CommitSection = ({
- status,
- commitMessage,
- setCommitMessage,
- hasIncomingChanges,
+ status,
+ commitMessage,
+ setCommitMessage,
+ hasIncomingChanges,
+ funMessage
}) => {
- const hasUnstagedChanges = status.outgoing_changes.some(
- (change) => !change.staged || (change.staged && change.modified)
- );
- const hasStagedChanges = status.outgoing_changes.some(
- (change) => change.staged
- );
- const hasAnyChanges = status.outgoing_changes.length > 0;
+ const hasUnstagedChanges = status.outgoing_changes.some(
+ change => !change.staged || (change.staged && change.modified)
+ );
+ const hasStagedChanges = status.outgoing_changes.some(
+ change => change.staged
+ );
+ const hasAnyChanges = status.outgoing_changes.length > 0;
- const funMessages = [
- "No changes detected. Your regex is so precise, it could find a needle in a haystack... made of needles. ๐งต๐",
- "All quiet on the commit front. Your custom formats are so perfect, even perfectionists are jealous. ๐",
- "No updates needed. Your media automation is running so smoothly, it's making butter jealous. ๐ง",
- "Zero modifications. Your torrent setup is seeding so efficiently, farmers are asking for advice. ๐พ",
- "No edits required. Your regex fu is so strong, it's bench-pressing parentheses for fun. ๐ช()",
- "Unchanged status. Your Plex library is so well-organized, librarians are taking notes. ๐๐ค",
- "No alterations found. Your file naming scheme is so consistent, it's bringing tears to OCD eyes. ๐ข๐",
- "All systems nominal. Your download queue is so orderly, it's making Marie Kondo question her career. ๐งนโจ",
- "No revisions necessary. Your automation scripts are so smart, they're solving captchas for fun. ๐ค๐งฉ",
- "Steady as she goes. Your media collection is so complete, Netflix is asking you for recommendations. ๐ฌ๐",
- ];
-
- const randomMessage =
- funMessages[Math.floor(Math.random() * funMessages.length)];
-
- return (
-
- {hasAnyChanges || hasIncomingChanges ? (
- <>
- {hasStagedChanges && (
- <>
-
- Commit Message:
-
-
- );
+ return (
+
+ {hasAnyChanges || hasIncomingChanges ? (
+ <>
+ {hasStagedChanges && (
+ <>
+
+ Commit Message:
+
+
+ );
};
export default CommitSection;
diff --git a/frontend/src/components/settings/SettingsPage.jsx b/frontend/src/components/settings/SettingsPage.jsx
index 3a9535c..23d16a1 100644
--- a/frontend/src/components/settings/SettingsPage.jsx
+++ b/frontend/src/components/settings/SettingsPage.jsx
@@ -43,6 +43,7 @@ const SettingsPage = () => {
const [showBranchModal, setShowBranchModal] = useState(false);
const [loadingAction, setLoadingAction] = useState('');
const [loadingStatus, setLoadingStatus] = useState(true);
+ const [loadingMessage, setLoadingMessage] = useState('');
const [commitMessage, setCommitMessage] = useState('');
const [showUnlinkModal, setShowUnlinkModal] = useState(false);
const [selectedIncomingChanges, setSelectedIncomingChanges] = useState([]);
@@ -52,6 +53,7 @@ const SettingsPage = () => {
const [currentChange, setCurrentChange] = useState(null);
const [loadingDiff, setLoadingDiff] = useState(false);
const [selectionType, setSelectionType] = useState(null);
+ const [funMessage, setFunMessage] = useState('');
const [sortConfig, setSortConfig] = useState({
key: 'type',
direction: 'descending'
@@ -116,6 +118,8 @@ const SettingsPage = () => {
const fetchGitStatus = async () => {
setLoadingStatus(true);
+ setLoadingMessage(getRandomLoadingMessage());
+ setFunMessage(getRandomFunMessage());
try {
const result = await getGitStatus();
console.log(
@@ -149,6 +153,22 @@ const SettingsPage = () => {
}
};
+ const getRandomFunMessage = () => {
+ const funMessages = [
+ 'No changes detected. Your regex is so precise, it could find a needle in a haystack... made of needles. ๐งต๐',
+ 'All quiet on the commit front. Your custom formats are so perfect, even perfectionists are jealous. ๐',
+ "No updates needed. Your media automation is running so smoothly, it's making butter jealous. ๐ง",
+ 'Zero modifications. Your torrent setup is seeding so efficiently, farmers are asking for advice. ๐พ',
+ "No edits required. Your regex fu is so strong, it's bench-pressing parentheses for fun. ๐ช()",
+ 'Unchanged status. Your Plex library is so well-organized, librarians are taking notes. ๐๐ค',
+ "No alterations found. Your file naming scheme is so consistent, it's bringing tears to OCD eyes. ๐ข๐",
+ "All systems nominal. Your download queue is so orderly, it's making Marie Kondo question her career. ๐งนโจ",
+ "No revisions necessary. Your automation scripts are so smart, they're solving captchas for fun. ๐ค๐งฉ",
+ 'Steady as she goes. Your media collection is so complete, Netflix is asking you for recommendations. ๐ฌ๐'
+ ];
+ return funMessages[Math.floor(Math.random() * funMessages.length)];
+ };
+
const renderChangeTable = (changes, title, icon, isIncoming) => (
@@ -606,7 +626,7 @@ const SettingsPage = () => {
className='animate-spin text-gray-300'
/>
- {getRandomLoadingMessage()}
+ {loadingMessage}
) : (
@@ -661,6 +681,7 @@ const SettingsPage = () => {
hasIncomingChanges={
status.incoming_changes.length > 0
}
+ funMessage={funMessage}
/>
{/* Buttons Below Commit Section */}