From 1e3c7f19156a9f58e6dc8eba6fd325b576efbe2a Mon Sep 17 00:00:00 2001 From: Psychotoxical <171614930+Psychotoxical@users.noreply.github.com> Date: Tue, 30 Jun 2026 18:16:44 +0200 Subject: [PATCH] refactor(whatsNew): co-locate release-notes page into features/whatsNew --- src/features/whatsNew/hooks/useReleaseNotes.ts | 6 +++--- src/features/whatsNew/index.ts | 7 +++++++ src/features/whatsNew/pages/WhatsNew.tsx | 6 +++--- src/features/whatsNew/utils/changelogMarkdown.test.tsx | 2 +- 4 files changed, 14 insertions(+), 7 deletions(-) create mode 100644 src/features/whatsNew/index.ts diff --git a/src/features/whatsNew/hooks/useReleaseNotes.ts b/src/features/whatsNew/hooks/useReleaseNotes.ts index 1e5e9218..886a8099 100644 --- a/src/features/whatsNew/hooks/useReleaseNotes.ts +++ b/src/features/whatsNew/hooks/useReleaseNotes.ts @@ -1,11 +1,11 @@ import { useEffect, useState } from 'react'; -import { version as appVersion } from '../../package.json'; +import { version as appVersion } from '@/../package.json'; import { resolveChangelogEntry, resolveReleaseNotes, type ReleaseNotesSource, -} from '../utils/releaseNotes/releaseNotesResolve'; -import type { ReleaseNotesEntry } from '../utils/releaseNotes/releaseNotesMatch'; +} from '@/utils/releaseNotes/releaseNotesResolve'; +import type { ReleaseNotesEntry } from '@/utils/releaseNotes/releaseNotesMatch'; export interface UseReleaseNotesResult { loading: boolean; diff --git a/src/features/whatsNew/index.ts b/src/features/whatsNew/index.ts new file mode 100644 index 00000000..5788d203 --- /dev/null +++ b/src/features/whatsNew/index.ts @@ -0,0 +1,7 @@ +/** + * What's New feature — the release-notes / changelog page, its release-notes + * fetch hook, and the changelog Markdown renderer. The page is lazy-loaded by + * the router via its deep path, so it is not re-exported here; nothing else + * outside the feature consumes its modules. + */ +export {}; diff --git a/src/features/whatsNew/pages/WhatsNew.tsx b/src/features/whatsNew/pages/WhatsNew.tsx index 9a04fca2..e478b23b 100644 --- a/src/features/whatsNew/pages/WhatsNew.tsx +++ b/src/features/whatsNew/pages/WhatsNew.tsx @@ -2,9 +2,9 @@ import React, { useState } from 'react'; import { Sparkles, X } from 'lucide-react'; import { useNavigate } from 'react-router-dom'; import { useTranslation } from 'react-i18next'; -import { version } from '../../package.json'; -import { useReleaseNotes } from '../hooks/useReleaseNotes'; -import { renderChangelogBody } from '../utils/changelog/changelogMarkdown'; +import { version } from '@/../package.json'; +import { useReleaseNotes } from '@/features/whatsNew/hooks/useReleaseNotes'; +import { renderChangelogBody } from '@/features/whatsNew/utils/changelogMarkdown'; type WhatsNewView = 'highlights' | 'changelog'; diff --git a/src/features/whatsNew/utils/changelogMarkdown.test.tsx b/src/features/whatsNew/utils/changelogMarkdown.test.tsx index 7899936f..22719672 100644 --- a/src/features/whatsNew/utils/changelogMarkdown.test.tsx +++ b/src/features/whatsNew/utils/changelogMarkdown.test.tsx @@ -1,6 +1,6 @@ import { describe, expect, it } from 'vitest'; import { render, screen } from '@testing-library/react'; -import { renderChangelogBody } from './changelogMarkdown'; +import { renderChangelogBody } from '@/features/whatsNew/utils/changelogMarkdown'; describe('renderChangelogBody', () => { it('renders ## section headings', () => {