Compare commits

...

2 commits

Author SHA1 Message Date
9fc30bff57 change tooltip delay in sidebar items 2025-08-21 21:00:52 +02:00
1e2548ad11 power level improvements
changed default colors
added more presets
2025-08-21 21:00:43 +02:00
4 changed files with 13 additions and 21 deletions

View file

@ -36,7 +36,7 @@ export function SidebarItemTooltip({
return ( return (
<TooltipProvider <TooltipProvider
delay={400} delay={0}
position="Right" position="Right"
tooltip={ tooltip={
<Tooltip style={{ maxWidth: toRem(280) }}> <Tooltip style={{ maxWidth: toRem(280) }}>

View file

@ -51,26 +51,22 @@ export const getUsedPowers = (powerLevels: IPowerLevels): Set<number> => {
}; };
const DEFAULT_TAGS: PowerLevelTags = { const DEFAULT_TAGS: PowerLevelTags = {
9001: {
name: 'Goku',
color: '#ff6a00',
},
102: {
name: 'Goku Reborn',
color: '#ff6a7f',
},
101: {
name: 'Founder',
color: '#0000ff',
},
100: { 100: {
name: 'Admin', name: 'Admin',
color: '#ed0800',
},
70: {
name: 'Manager',
color: '#0088ff', color: '#0088ff',
}, },
50: { 50: {
name: 'Moderator', name: 'Moderator',
color: '#1fd81f', color: '#1fd81f',
}, },
10: {
name: 'Helper',
color: '#0be0ce',
},
0: { 0: {
name: 'Member', name: 'Member',
color: '#91cfdf', color: '#91cfdf',
@ -82,13 +78,9 @@ const DEFAULT_TAGS: PowerLevelTags = {
}; };
const generateFallbackTag = (powerLevelTags: PowerLevelTags, power: number): PowerLevelTag => { const generateFallbackTag = (powerLevelTags: PowerLevelTags, power: number): PowerLevelTag => {
const highToLow = sortPowers(getPowers(powerLevelTags));
const tagPower = highToLow.find((p) => p < power);
const tag = typeof tagPower === 'number' ? powerLevelTags[tagPower] : undefined;
return { return {
name: tag ? `${tag.name} ${power}` : `Team ${power}`, name: `Team ${power}`,
}; };
}; };

View file

@ -35,7 +35,9 @@ function PowerLevelSelector({
{max >= 0 && <MenuHeader>Presets</MenuHeader>} {max >= 0 && <MenuHeader>Presets</MenuHeader>}
{max >= 100 && <MenuItem variant={value === 100 ? 'positive' : 'surface'} onClick={() => onSelect(100)}>Admin - 100</MenuItem>} {max >= 100 && <MenuItem variant={value === 100 ? 'positive' : 'surface'} onClick={() => onSelect(100)}>Admin - 100</MenuItem>}
{max >= 50 && <MenuItem variant={value === 50 ? 'positive' : 'surface'} onClick={() => onSelect(50)}>Mod - 50</MenuItem>} {max >= 50 && <MenuItem variant={value === 50 ? 'positive' : 'surface'} onClick={() => onSelect(50)}>Mod - 50</MenuItem>}
{max >= 10 && <MenuItem variant={value === 10 ? 'positive' : 'surface'} onClick={() => onSelect(10)}>Helper - 10</MenuItem>}
{max >= 0 && <MenuItem variant={value === 0 ? 'positive' : 'surface'} onClick={() => onSelect(0)}>Member - 0</MenuItem>} {max >= 0 && <MenuItem variant={value === 0 ? 'positive' : 'surface'} onClick={() => onSelect(0)}>Member - 0</MenuItem>}
{max >= -1 && <MenuItem variant={value === -1 ? 'positive' : 'surface'} onClick={() => onSelect(-1)}>Muted - -1</MenuItem>}
</div> </div>
); );
} }

View file

@ -48,9 +48,7 @@ export async function isRoomAliasAvailable(mx, alias) {
} }
export function getPowerLabel(powerLevel) { export function getPowerLabel(powerLevel) {
if (powerLevel > 9000) return 'Goku'; if (powerLevel === 100) return 'Founder';
if (powerLevel > 100) return 'Founder';
if (powerLevel === 100) return 'Admin';
if (powerLevel >= 50) return 'Mod'; if (powerLevel >= 50) return 'Mod';
return null; return null;
} }