Skip to content

Commit 718be4f

Browse files
committed
fix: dropdown of Reading Experience
1 parent a0d34eb commit 718be4f

File tree

3 files changed

+28
-21
lines changed

3 files changed

+28
-21
lines changed

src/context/VisualSettingsContext.js

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -42,9 +42,9 @@ export const VisualSettingsProvider = ({ children }) => {
4242
const [isGarden, setIsGarden] = usePersistentState('is-garden', false);
4343
const [isAutumn, setIsAutumn] = usePersistentState('is-autumn', false);
4444
const [isRain, setIsRain] = usePersistentState('is-rain', false);
45-
const [isDossierMode, setIsDossierMode] = usePersistentState(
46-
'is-dossier-mode',
47-
false,
45+
const [blogPostViewMode, setBlogPostViewMode] = usePersistentState(
46+
'blog-post-view-mode',
47+
'standard',
4848
);
4949

5050
// Chaos Theory Achievement Tracker
@@ -80,7 +80,7 @@ export const VisualSettingsProvider = ({ children }) => {
8080
isGarden,
8181
isAutumn,
8282
isRain,
83-
isDossierMode,
83+
blogPostViewMode,
8484
unlockAchievement,
8585
]);
8686

@@ -235,7 +235,6 @@ export const VisualSettingsProvider = ({ children }) => {
235235
const toggleGarden = () => setIsGarden((prev) => !prev);
236236
const toggleAutumn = () => setIsAutumn((prev) => !prev);
237237
const toggleRain = () => setIsRain((prev) => !prev);
238-
const toggleDossierMode = () => setIsDossierMode((prev) => !prev);
239238

240239
return (
241240
<VisualSettingsContext.Provider
@@ -276,8 +275,8 @@ export const VisualSettingsProvider = ({ children }) => {
276275
toggleAutumn,
277276
isRain,
278277
toggleRain,
279-
isDossierMode,
280-
toggleDossierMode,
278+
blogPostViewMode,
279+
setBlogPostViewMode,
281280
}}
282281
>
283282
{children}

src/pages/BlogPostPage.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@ import DossierBlogPostPage from './DossierBlogPostPage';
44
import StandardBlogPostPage from './StandardBlogPostPage';
55

66
const BlogPostPage = () => {
7-
const { isDossierMode } = useVisualSettings();
7+
const { blogPostViewMode } = useVisualSettings();
88

9-
if (isDossierMode) {
9+
if (blogPostViewMode === 'dossier') {
1010
return <DossierBlogPostPage />;
1111
}
1212

src/pages/SettingsPage.js

Lines changed: 20 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ import { useAnimation } from '../context/AnimationContext';
1919
import { useVisualSettings } from '../context/VisualSettingsContext';
2020
import { useAchievements } from '../context/AchievementContext';
2121
import CustomToggle from '../components/CustomToggle';
22+
import CustomDropdown from '../components/CustomDropdown'; // Added CustomDropdown
2223
import useSeo from '../hooks/useSeo';
2324
import { useToast } from '../hooks/useToast';
2425
import { useHomepageOrder } from '../context/HomepageOrderContext';
@@ -109,8 +110,8 @@ const SettingsPage = () => {
109110
toggleAutumn,
110111
isRain,
111112
toggleRain,
112-
isDossierMode,
113-
toggleDossierMode,
113+
blogPostViewMode, // Changed from isDossierMode
114+
setBlogPostViewMode, // Changed from toggleDossierMode
114115
} = useVisualSettings();
115116

116117
const { addToast } = useToast();
@@ -247,16 +248,23 @@ const SettingsPage = () => {
247248

248249
{/* Reading Experience */}
249250
<Section title="Reading Experience" icon={<Article />} delay={0.05}>
250-
<div className="bg-gray-800/30 rounded-xl p-4 border border-white/5">
251-
<CustomToggle
252-
id="dossier-mode"
253-
label="Dossier Mode"
254-
checked={isDossierMode}
255-
onChange={toggleDossierMode}
256-
colorTheme="stone"
257-
/>
258-
<p className="mt-2 text-sm text-gray-400 ml-1">
259-
Render blog posts as classified dossiers.
251+
<div className="bg-gray-800/30 rounded-xl p-4 border border-white/5 flex flex-col gap-4">
252+
<div className="flex items-center justify-between">
253+
<span className="font-medium text-white">Blog Post View</span>
254+
<CustomDropdown
255+
label="Select View"
256+
options={[
257+
{ label: 'Standard', value: 'standard' },
258+
{ label: 'Dossier', value: 'dossier' },
259+
]}
260+
value={blogPostViewMode}
261+
onChange={setBlogPostViewMode}
262+
icon={Article}
263+
className="ml-auto"
264+
/>
265+
</div>
266+
<p className="text-sm text-gray-400">
267+
Select the default rendering style for blog posts.
260268
</p>
261269
</div>
262270
</Section>

0 commit comments

Comments
 (0)