mirror of
https://github.com/DorkSquadRR/DorkNet.git
synced 2026-10-25 23:18:44 -07:00
feat: Add account privacy settings endpoint
- Implemented new endpoints for retrieving account privacy settings. - Added fields for privacy preferences such as profile visibility, online status, and activity visibility. feat: Extend play menu tags functionality - Updated PlayMenuTagsRequest to include TrendingTags. - Modified SetPlayMenuTags to handle trending tags. - Enhanced logging to include trending tags. fix: Increase maximum archive size for room zip imports - Updated MaxArchiveBytes from 12GB to 25GB in RoomZipImportController. feat: Improve CDN image handling - Added local image path resolution for room images. - Implemented lazy loading of room image aliases from JSON file. feat: Enhance match player presence resolution - Updated ResolveDataBlobForPresenceAsync to consider sub-room IDs and private instance status. feat: Extend RoomEntity with new properties - Added AllowNewUsers, MinLevel, MaxPlayerCalculationMode, LoadScreensJson, PromoImagesJson, and PromoExternalContentJson fields. feat: Update database schema for new room properties - Added new columns to the Rooms table for AllowNewUsers, MinLevel, MaxPlayerCalculationMode, LoadScreensJson, PromoImagesJson, and PromoExternalContentJson. feat: Implement platform notifications controller - Created PlatformNotificationsController for managing user notification preferences. - Added endpoints for retrieving and setting notification preferences and categories.
This commit is contained in:
@@ -13,6 +13,7 @@ import { Plus, RefreshCw, Trash, Upload } from '../components/Icons';
|
||||
interface PlayMenuTagSettings {
|
||||
pinnedTags: string[];
|
||||
popularTags: string[];
|
||||
trendingTags: string[];
|
||||
updatedAt: string;
|
||||
}
|
||||
|
||||
@@ -245,6 +246,7 @@ function PlayMenuTagsPanel({
|
||||
}) {
|
||||
const [pinnedTags, setPinnedTags] = useState<string[]>([]);
|
||||
const [popularTags, setPopularTags] = useState<string[]>([]);
|
||||
const [trendingTags, setTrendingTags] = useState<string[]>([]);
|
||||
const [busy, setBusy] = useState(false);
|
||||
const toast = useToast();
|
||||
|
||||
@@ -252,6 +254,7 @@ function PlayMenuTagsPanel({
|
||||
if (!tags) return;
|
||||
setPinnedTags(tags.pinnedTags);
|
||||
setPopularTags(tags.popularTags);
|
||||
setTrendingTags(tags.trendingTags);
|
||||
}, [tags]);
|
||||
|
||||
const save = async (reset = false) => {
|
||||
@@ -260,8 +263,8 @@ function PlayMenuTagsPanel({
|
||||
await api<PlayMenuTagSettings>('/settings/play-menu-tags', {
|
||||
method: 'POST',
|
||||
body: reset
|
||||
? { PinnedTags: [], PopularTags: [] }
|
||||
: { PinnedTags: pinnedTags, PopularTags: popularTags },
|
||||
? { PinnedTags: [], PopularTags: [], TrendingTags: [] }
|
||||
: { PinnedTags: pinnedTags, PopularTags: popularTags, TrendingTags: trendingTags },
|
||||
});
|
||||
toast.push(reset ? 'Play menu tags reset.' : 'Play menu tags saved.', 'success');
|
||||
onSaved();
|
||||
@@ -299,7 +302,7 @@ function PlayMenuTagsPanel({
|
||||
{error && <div className="mt-3 text-sm text-danger">{error}</div>}
|
||||
{loading && !tags && <div className="mt-3 text-xs text-ink-400">Loading tags...</div>}
|
||||
{tags && (
|
||||
<div className="mt-4 grid gap-3 md:grid-cols-2">
|
||||
<div className="mt-4 grid gap-3 md:grid-cols-3">
|
||||
<TagListEditor
|
||||
label="Pinned tags"
|
||||
tags={pinnedTags}
|
||||
@@ -312,6 +315,12 @@ function PlayMenuTagsPanel({
|
||||
onChange={setPopularTags}
|
||||
max={32}
|
||||
/>
|
||||
<TagListEditor
|
||||
label="Trending tags"
|
||||
tags={trendingTags}
|
||||
onChange={setTrendingTags}
|
||||
max={32}
|
||||
/>
|
||||
</div>
|
||||
)}
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user