[feat-216] fix ui issues + change some dropdown options

This commit is contained in:
silentrald
2025-01-08 21:31:39 +08:00
parent 99ce770592
commit 1d70c867f3
12 changed files with 166 additions and 165 deletions
@@ -86,7 +86,7 @@ export function MapsPlaylistsPanel({ version, isActive }: Props) {
const [sortOptions, setSortOptions] = useState<BsmSelectOption<string>[]>(
() => mapsSorter.getComparatorKeys().map(key => ({
text: `pages.version-viewer.maps.sort.${key}`,
text: `pages.version-viewer.maps.tabs.maps.sort.${key}`,
value: key,
}))
);
@@ -131,7 +131,7 @@ export function MapsPlaylistsPanel({ version, isActive }: Props) {
switch (index) {
case MAP_TAB:
setSortOptions(() => mapsSorter.getComparatorKeys().map(key => ({
text: `pages.version-viewer.maps.sort.${key}`,
text: `pages.version-viewer.maps.tabs.maps.sort.${key}`,
value: key,
})));
setSelectedSort(mapsSorter.getDefaultComparatorKey());
@@ -143,7 +143,7 @@ export function MapsPlaylistsPanel({ version, isActive }: Props) {
case PLAYLIST_TAB:
setSortOptions(() => playlistsSorter.getComparatorKeys().map(key => ({
text: `pages.version-viewer.playlists.sort.${key}`,
text: `pages.version-viewer.maps.tabs.playlists.sort.${key}`,
value: key,
})));
setSelectedSort(playlistsSorter.getDefaultComparatorKey());
@@ -282,9 +282,9 @@ export function MapsPlaylistsPanel({ version, isActive }: Props) {
<BsmDropdownButton className="h-full relative z-[1] flex justify-center" buttonClassName="flex items-center justify-center h-full rounded-full px-2 py-1 whitespace-nowrap" icon="filter" text="pages.version-viewer.maps.search-bar.filters-btn" textClassName="whitespace-nowrap" withBar={false}>
{(
tabIndex === 0 ? (
<FilterPanel className="absolute top-[calc(100%+3px)] origin-top w-[500px] h-fit p-2 rounded-full shadow-md shadow-black" filter={mapFilter} onChange={setMapFilter} />
<FilterPanel className="absolute top-[calc(100%+3px)] origin-top w-[500px] h-fit p-2 rounded-md shadow-md shadow-black" filter={mapFilter} onChange={setMapFilter} />
) : (
<LocalPlaylistFilterPanel className="absolute top-[calc(100%+3px)] origin-top w-[300px] h-fit p-2 rounded-full shadow-md shadow-black" filter={playlistFilter} onChange={setPlaylistFilter} />
<LocalPlaylistFilterPanel className="absolute top-[calc(100%+3px)] origin-top w-[300px] h-fit p-2 rounded-md shadow-md shadow-black" filter={playlistFilter} onChange={setPlaylistFilter} />
)
)}
</BsmDropdownButton>
@@ -24,14 +24,7 @@ export class PlaylistsSorterService {
return !playlist2.duration ? Comparison.GREATER : playlist1.duration - playlist2.duration;
},
"min-notes-per-second": (playlist1, playlist2) => {
if (!playlist1.minNps) {
return playlist2.minNps ? Comparison.LESSER : Comparison.EQUAL;
}
return !playlist2.minNps ? Comparison.GREATER : playlist1.minNps - playlist2.minNps;
},
"max-notes-per-second": (playlist1, playlist2) => {
"notes-per-second": (playlist1, playlist2) => {
if (!playlist1.maxNps) {
return playlist2.maxNps ? Comparison.LESSER : Comparison.EQUAL;
}