All checks were successful
Deploy production / deploy (push) Successful in 1m19s
497 lines
18 KiB
TypeScript
497 lines
18 KiB
TypeScript
// Colourful tracker tiles for the header menu: a gradient rounded tile per tracker with a
|
||
// small inline SVG icon (24×24, stroke paths). No icon library: each icon is a few path
|
||
// strings, so the whole set is a couple of KB.
|
||
|
||
/** A circle as a path, so every icon is just a list of `d` strings. */
|
||
const c = (cx: number, cy: number, r: number) =>
|
||
`M${cx - r} ${cy}a${r} ${r} 0 1 0 ${2 * r} 0a${r} ${r} 0 1 0 ${-2 * r} 0`;
|
||
|
||
export type TrackerIcon = {
|
||
/** Gradient start and end (top-left to bottom-right). */
|
||
from: string;
|
||
to: string;
|
||
/** Icon colour; white unless the tile is light (yellow, lime). */
|
||
ink: string;
|
||
/** Filled glyph (brand marks from simple-icons) instead of stroked outline paths. */
|
||
fill?: boolean;
|
||
paths: string[];
|
||
};
|
||
|
||
const WHITE = '#ffffff';
|
||
|
||
// Shared glyphs for the per-title Call of Duty (crosshair) and per-generation Pokémon (Poké Ball)
|
||
// fallback tiles; each entry only changes the colours.
|
||
const codTile: TrackerIcon = {
|
||
from: '#fb923c',
|
||
to: '#9a3412',
|
||
ink: WHITE,
|
||
paths: [c(12, 12, 9), 'M21 12h-4M7 12H3M12 7V3M12 21v-4', c(12, 12, 1)]
|
||
};
|
||
const pokemonTile: TrackerIcon = {
|
||
from: '#fb7185',
|
||
to: '#c81e4a',
|
||
ink: WHITE,
|
||
paths: [c(12, 12, 9), 'M3 12h6M15 12h6', c(12, 12, 3)]
|
||
};
|
||
|
||
export const trackerIcons: Record<string, TrackerIcon> = {
|
||
tasks: {
|
||
from: '#60a5fa',
|
||
to: '#2563eb',
|
||
ink: WHITE,
|
||
paths: [c(12, 12, 9), 'm8.5 12 2.5 2.5 4.5-5']
|
||
},
|
||
money: {
|
||
from: '#34d399',
|
||
to: '#059669',
|
||
ink: WHITE,
|
||
paths: [c(12, 12, 9), 'M15.5 8.6a4 4 0 1 0 0 6.8', 'M7 10.8h6M7 13.2h6']
|
||
},
|
||
reading: {
|
||
from: '#2dd4bf',
|
||
to: '#0d9488',
|
||
ink: WHITE,
|
||
paths: [
|
||
'M12 7v14',
|
||
'M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z'
|
||
]
|
||
},
|
||
cars: {
|
||
from: '#f87171',
|
||
to: '#dc2626',
|
||
ink: WHITE,
|
||
paths: ['M3 16v-3.5L5.5 7h13l2.5 5.5V16', 'M3 12.5h18', c(7.5, 16.5, 2), c(16.5, 16.5, 2)]
|
||
},
|
||
music: {
|
||
from: '#a78bfa',
|
||
to: '#7c3aed',
|
||
ink: WHITE,
|
||
paths: ['M9 18V5l12-2v13', c(6, 18, 3), c(18, 16, 3)]
|
||
},
|
||
movies: {
|
||
from: '#fbbf24',
|
||
to: '#f2552c',
|
||
ink: WHITE,
|
||
// clapperboard
|
||
paths: [
|
||
'M20.2 6 3 11l-.9-2.4c-.3-1.1.3-2.2 1.3-2.5l13.5-4c1.1-.3 2.2.3 2.5 1.3Z',
|
||
'm6.2 5.3 3.1 3.9',
|
||
'm12.4 3.4 3.1 4',
|
||
'M3 11h18v8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2Z'
|
||
]
|
||
},
|
||
pc: {
|
||
from: '#22d3ee',
|
||
to: '#0891b2',
|
||
ink: WHITE,
|
||
paths: ['M4 4h16v11H4z', 'M9 19h6M12 15v4', 'M8 8h3v3H8z', 'M14 8.5h2M14 11h2']
|
||
},
|
||
ai: {
|
||
from: '#fda4af',
|
||
to: '#8b5cf6',
|
||
ink: WHITE,
|
||
// sparkles
|
||
paths: [
|
||
'M9.94 15.5A2 2 0 0 0 8.5 14.06l-6.14-1.58a.5.5 0 0 1 0-.96L8.5 9.94A2 2 0 0 0 9.94 8.5l1.58-6.14a.5.5 0 0 1 .96 0L14.06 8.5a2 2 0 0 0 1.44 1.44l6.14 1.58a.5.5 0 0 1 0 .96l-6.14 1.58a2 2 0 0 0-1.44 1.44l-1.58 6.14a.5.5 0 0 1-.96 0z',
|
||
'M20 3v4M22 5h-4M4 17v2M5 18H3'
|
||
]
|
||
},
|
||
math: {
|
||
from: '#60a5fa',
|
||
to: '#1e40af',
|
||
ink: WHITE,
|
||
// sigma
|
||
paths: ['M18 7V4H6l6 8-6 8h12v-3']
|
||
},
|
||
notes: {
|
||
from: '#fde68a',
|
||
to: '#f59e0b',
|
||
ink: '#422006',
|
||
// notebook with a pen line
|
||
paths: [
|
||
'M6 3h11a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6z',
|
||
'M6 3v18',
|
||
'M4 7h3M4 12h3M4 17h3',
|
||
'M10 8h6M10 12h6M10 16h3'
|
||
]
|
||
},
|
||
health: {
|
||
from: '#f472b6',
|
||
to: '#db2777',
|
||
ink: WHITE,
|
||
paths: [
|
||
'M19 14c1.5-1.5 3-3.2 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.8 0-3 .5-4.5 2-1.5-1.5-2.7-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4 3 5.5l7 7Z',
|
||
'M3.2 12h6.3l.5-1 2 4.5 2-7 1.5 3.5h5.3'
|
||
]
|
||
},
|
||
groceries: {
|
||
from: '#bef264',
|
||
to: '#65a30d',
|
||
ink: '#1a2e05',
|
||
paths: [
|
||
c(8, 20.5, 1.2),
|
||
c(18.5, 20.5, 1.2),
|
||
'M2 2.5h2.2l2.6 12a2 2 0 0 0 2 1.5h9.5a2 2 0 0 0 2-1.5L22 7H5.2'
|
||
]
|
||
},
|
||
houses: {
|
||
from: '#fb923c',
|
||
to: '#ea580c',
|
||
ink: WHITE,
|
||
paths: ['M3 10.5 12 3l9 7.5', 'M5 9.5V20h14V9.5', 'M10 20v-6h4v6']
|
||
},
|
||
holders: {
|
||
from: '#38bdf8',
|
||
to: '#6d28d9',
|
||
ink: WHITE,
|
||
// id card
|
||
paths: [
|
||
'M4 5h16a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V7a2 2 0 0 1 2-2z',
|
||
c(9, 10.5, 2),
|
||
'M5.8 16a3.4 3.4 0 0 1 6.4 0',
|
||
'M15 10h4M15 14h3'
|
||
]
|
||
},
|
||
energy: {
|
||
from: '#fde047',
|
||
to: '#eab308',
|
||
ink: '#422006',
|
||
paths: ['M13 2 3 14h9l-1 8 10-12h-9l1-8z']
|
||
},
|
||
games: {
|
||
from: '#818cf8',
|
||
to: '#4338ca',
|
||
ink: WHITE,
|
||
paths: [
|
||
'M6 11h4M8 9v4M15 12h.01M18 10h.01',
|
||
'M17.3 5H6.7a4 4 0 0 0-4 3.6C2.6 9.4 2 14.5 2 16a3 3 0 0 0 3 3c1 0 1.5-.5 2-1l1.4-1.4A2 2 0 0 1 9.8 16h4.4a2 2 0 0 1 1.4.6L17 18c.5.5 1 1 2 1a3 3 0 0 0 3-3c0-1.5-.6-6.6-.7-7.3A4 4 0 0 0 17.3 5z'
|
||
]
|
||
},
|
||
skins: {
|
||
from: '#e879f9',
|
||
to: '#a21caf',
|
||
ink: WHITE,
|
||
paths: [c(12, 12, 8), c(12, 12, 2.5), 'M22 12h-4M6 12H2M12 6V2M12 22v-4']
|
||
},
|
||
pets: {
|
||
from: '#d6a46a',
|
||
to: '#92602a',
|
||
ink: WHITE,
|
||
paths: [
|
||
c(11, 4, 2),
|
||
c(18, 8, 2),
|
||
c(20, 16, 2),
|
||
'M9 10a5 5 0 0 1 5 5v3.5a3.5 3.5 0 0 1-6.8 1C6.5 17.5 4.5 17 4.5 17A3.5 3.5 0 0 1 5.5 10Z'
|
||
]
|
||
},
|
||
planes: {
|
||
from: '#7dd3fc',
|
||
to: '#0284c7',
|
||
ink: WHITE,
|
||
paths: [
|
||
'M17.8 19.2 16 11l3.5-3.5C21 6 21.5 4 21 3c-1-.5-3 0-4.5 1.5L13 8 4.8 6.2c-.5-.1-.9.1-1.1.5l-.3.5c-.2.5-.1 1 .3 1.3L9 12l-2 3H4l-1 1 3 2 2 3 1-1v-3l3-2 3.5 5.3c.3.4.8.5 1.3.3l.5-.2c.4-.3.6-.7.5-1.2z'
|
||
]
|
||
},
|
||
trains: {
|
||
from: '#fdba74',
|
||
to: '#c2410c',
|
||
ink: WHITE,
|
||
paths: [
|
||
'M8 3.1V7a4 4 0 0 0 8 0V3.1',
|
||
'm9 15-1-1',
|
||
'm15 15 1-1',
|
||
'M9 19c-2.8 0-5-2.2-5-5v-4a8 8 0 0 1 16 0v4c0 2.8-2.2 5-5 5Z',
|
||
'm8 19-2 3',
|
||
'm16 19 2 3'
|
||
]
|
||
},
|
||
wildlife: {
|
||
from: '#86efac',
|
||
to: '#15803d',
|
||
ink: WHITE,
|
||
paths: [
|
||
'M11 20A7 7 0 0 1 9.8 6.1C15.5 5 17 4.48 19 2c1 2 2 4.18 2 8 0 5.5-4.78 10-10 10Z',
|
||
'M2 21c0-3 1.85-5.36 5.08-6C9.5 14.52 12 13 13 12'
|
||
]
|
||
},
|
||
spotting: {
|
||
from: '#fbbf24',
|
||
to: '#e11d48',
|
||
ink: WHITE,
|
||
// binoculars
|
||
paths: [
|
||
'M10 10h4',
|
||
'M19 7V4a1 1 0 0 0-1-1h-2a1 1 0 0 0-1 1v3',
|
||
'M20 21a2 2 0 0 0 2-2v-3.851c0-1.39-2-2.962-2-4.829V8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v11a2 2 0 0 0 2 2z',
|
||
'M22 16H2',
|
||
'M4 21a2 2 0 0 1-2-2v-3.851c0-1.39 2-2.962 2-4.829V8a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v11a2 2 0 0 1-2 2z',
|
||
'M9 7V4a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1v3'
|
||
]
|
||
},
|
||
lists: {
|
||
from: '#94a3b8',
|
||
to: '#475569',
|
||
ink: WHITE,
|
||
paths: ['M8 6h13M8 12h13M8 18h13M3 6h.01M3 12h.01M3 18h.01']
|
||
},
|
||
// Games (keys are each game's `icon` in gameTrackers): brand marks where simple-icons has
|
||
// a clean glyph, otherwise a lucide-style outline that hints at the game.
|
||
'game-osu': {
|
||
from: '#ff79b0',
|
||
to: '#e6338a',
|
||
ink: WHITE,
|
||
fill: true,
|
||
paths: [
|
||
'M7.698 10.362a1.94 1.94 0 0 0-.7-.516q-.421-.189-.988-.189c-.567 0-.704.063-.982.189s-.51.298-.692.516q-.273.328-.413.777q-.139.448-.139.96q0 .511.14.952q.139.44.412.767q.274.329.692.512t.982.184c.565 0 .707-.062.988-.184q.422-.184.7-.512q.279-.327.413-.767q.135-.44.135-.952a3.3 3.3 0 0 0-.135-.96a2.1 2.1 0 0 0-.413-.777m-.965 2.81q-.22.372-.723.372q-.494 0-.713-.372q-.22-.373-.22-1.073c0-.7.073-.824.22-1.073q.22-.372.713-.372q.503 0 .723.372q.22.373.22 1.073t-.22 1.073m11.89-.83l-.09-4.39a4.5 4.5 0 0 1 .69-.054q.351 0 .701.054l-.09 4.39q-.315.053-.601.053a3.5 3.5 0 0 1-.61-.054m1.319 1.4q0 .332-.054.664a4 4 0 0 1-.655.054a4 4 0 0 1-.664-.054a4 4 0 0 1-.054-.655q0-.323.054-.665a4 4 0 0 1 .655-.054q.323 0 .664.054q.054.341.054.656m-3.223-4.03q.315 0 .638.053v4.461q-.288.099-.759.193a5.3 5.3 0 0 1-1.863.023a1.7 1.7 0 0 1-.74-.305q-.32-.234-.507-.683q-.189-.449-.189-1.193V9.765a4 4 0 0 1 .638-.054q.313 0 .637.054v2.46q0 .367.058.606a.9.9 0 0 0 .18.377a.66.66 0 0 0 .3.197q.18.058.422.058q.332 0 .557-.062V9.765a4 4 0 0 1 .628-.054m-4.362 2.683q.08.225.08.548a1.4 1.4 0 0 1-.542 1.117q-.265.212-.642.333q-.378.12-.853.12a5 5 0 0 1-.395-.013a3 3 0 0 1-.346-.045a4 4 0 0 1-.327-.076a4 4 0 0 1-.35-.116a2.6 2.6 0 0 1 .085-.49a3 3 0 0 1 .175-.48q.296.117.561.175q.265.06.552.059q.126 0 .274-.023a1 1 0 0 0 .274-.08a.7.7 0 0 0 .21-.153a.35.35 0 0 0 .086-.247q0-.216-.13-.31a1.3 1.3 0 0 0-.364-.166l-.556-.162q-.503-.143-.786-.426q-.282-.283-.283-.848q0-.682.49-1.068q.489-.386 1.332-.386q.35 0 .692.062q.341.063.691.189a2.5 2.5 0 0 1-.09.485a2.3 2.3 0 0 1-.17.44a4 4 0 0 0-.476-.158a2.2 2.2 0 0 0-.548-.067q-.305 0-.476.094a.32.32 0 0 0-.17.301q0 .197.121.278t.346.153l.511.153q.252.072.454.175t.345.255t.225.377M12 0C5.373 0 0 5.373 0 12s5.373 12 12 12c6.628 0 12-5.373 12-12S18.628 0 12 0m0 22.8C6.035 22.8 1.2 17.965 1.2 12S6.035 1.2 12 1.2S22.8 6.035 22.8 12S17.965 22.8 12 22.8'
|
||
]
|
||
},
|
||
'game-cs2': {
|
||
from: '#fcd34d',
|
||
to: '#d97706',
|
||
ink: WHITE,
|
||
fill: true,
|
||
paths: [
|
||
'M21.71 3.235a.02.02 0 0 1-.022-.022c.002-.081.004-.37.005-.424c0-.129-.143-.183-.212-.083l-.229.333a.02.02 0 0 1-.02.01h-6.55a.047.047 0 0 1-.048-.046l-.013-.177a.048.048 0 0 1 .056-.048l.335.032a.06.06 0 0 0 .063-.045l.244-.989a.05.05 0 0 0-.03-.054l-.227-.085a.04.04 0 0 1-.026-.03c-.041-.171-.377-1.323-1.993-1.58c-.787-.125-1.302.21-1.577.478a1.6 1.6 0 0 0-.302.41l-.097.212a2 2 0 0 0-.046.234l.051.982a.11.11 0 0 0 .043.085l.354.153l-.196.325a.055.055 0 0 1-.053.04s-.417.01-.622.02c-.386.015-1.245.485-1.878 1.838l-.724 1.55a.07.07 0 0 1-.068.04l-.578.001c-.035 0-.073.028-.088.06L6.364 9a.11.11 0 0 0 .017.108l.627.392a.06.06 0 0 1 .02.058l-.328.967a.2.2 0 0 1-.023.062l-.435.382a.1.1 0 0 0-.035.06l-.598 1.53a.06.06 0 0 1-.06.045l-.336.002a.163.163 0 0 0-.162.149l-.201 2.288l-.016.121l-.158.908a.13.13 0 0 1-.034.055l-.558.427a4.8 4.8 0 0 0-.767 1.001l-1.86 3.924a.8.8 0 0 0-.078.322l.132.235c.002.084-.032.456-.07.53l-.624 1.09a.1.1 0 0 0-.003.085l.03.07l.094.187L2.829 24c.118.011.247-.14.251-.3l.103-1.297l-.027-.195l3.606-4.232c.095-.114.222-.317.286-.45l1.719-3.79a.17.17 0 0 1 .1-.088l.109-.035a.17.17 0 0 1 .183.053c.15.181.504.781.676 1.032c.143.208.85 1.23 1.158 1.567c.086.093.349.198.466.27a.083.083 0 0 1 .03.112l-1.03 1.808l-.455 2.136a1 1 0 0 0-.036.152l-.412 1.483c.003.188-.14.286-.153.507l-.15 1.084a.06.06 0 0 0 .059.061l2.544.014q.142-.001.286-.006l.075-.007c.124-.016.563-.076.75-.15a.6.6 0 0 0 .227-.13c.185-.194.2-.278.203-.398a.3.3 0 0 0-.028-.105a.12.12 0 0 0-.06-.047l-1.18-.356a.37.37 0 0 1-.19-.134l-.317-.47a.09.09 0 0 1 .018-.097l.618-.609a.2.2 0 0 0 .048-.072l1.904-4.488c.089-.285.059-.605 0-.944c-.044-.25-.686-1.326-.854-1.624l-1.286-2.251c-.079-.138-.19-.133-.228-.276l-.073-1.118a.04.04 0 0 1 .036-.05l.33-.028a.1.1 0 0 0 .075-.048l1.147-2.155a.1.1 0 0 0-.002-.094l-.235-.29a.09.09 0 0 1-.001-.088l.352-.38a.054.054 0 0 1 .073-.02l.934.526a.4.4 0 0 0 .186.05c.26-.001.686-.154.908-.29a.4.4 0 0 0 .139-.148l.458-1.07c.006-.014.027-.012.03.003l.127.595a.064.064 0 0 0 .079.05l1.35-.3a.066.066 0 0 0 .05-.078l-.319-1.344a.07.07 0 0 1 .01-.054l.13-.203a.3.3 0 0 0 .037-.082l.159-.725a.04.04 0 0 1 .04-.032l3.732.005a.09.09 0 0 0 .093-.093v-.634a.02.02 0 0 1 .022-.021h1.439a.047.047 0 0 0 .046-.047V3.28a.047.047 0 0 0-.046-.047h-1.44z'
|
||
]
|
||
},
|
||
'game-pubg': {
|
||
from: '#fde68a',
|
||
to: '#b45309',
|
||
ink: '#422006',
|
||
paths: [
|
||
'M15.4 15.63a7.875 6 135 1 1 6.23-6.23 4.5 3.43 135 0 0-6.23 6.23',
|
||
'm8.29 12.71-2.6 2.6a2.5 2.5 0 1 0-1.65 4.65A2.5 2.5 0 1 0 8.7 18.3l2.59-2.59'
|
||
]
|
||
},
|
||
'game-r6': {
|
||
from: '#94a3b8',
|
||
to: '#1e293b',
|
||
ink: WHITE,
|
||
paths: [
|
||
'M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z',
|
||
'M14 8.5h-2a2 2 0 0 0-2 2v3.5a2 2 0 0 0 4 0v-.5a2 2 0 0 0-4 0'
|
||
]
|
||
},
|
||
'game-tarkov': {
|
||
from: '#bdb76b',
|
||
to: '#4d4a26',
|
||
ink: WHITE,
|
||
paths: [
|
||
'M4 10a4 4 0 0 1 4-4h8a4 4 0 0 1 4 4v10a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2z',
|
||
'M8 10h8',
|
||
'M8 18h8',
|
||
'M8 22v-6a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v6',
|
||
'M9 6V4a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2v2'
|
||
]
|
||
},
|
||
'game-black-ops-2': { ...codTile, from: '#f58147', to: '#863913' },
|
||
'game-black-ops': { ...codTile, from: '#f59b47', to: '#864b13' },
|
||
'game-ghosts': { ...codTile, from: '#f5b547', to: '#865c13' },
|
||
'game-advanced-warfare': { ...codTile, from: '#f5d047', to: '#866d13' },
|
||
'game-black-ops-3': { ...codTile, from: '#f5ea47', to: '#867e13' },
|
||
'game-infinite-warfare': { ...codTile, from: '#e7f547', to: '#7c8613' },
|
||
'game-wwii': { ...codTile, from: '#cdf547', to: '#6b8613' },
|
||
'game-valorant': {
|
||
from: '#ff6b77',
|
||
to: '#9f1239',
|
||
ink: WHITE,
|
||
fill: true,
|
||
paths: [
|
||
'M23.792 2.152a.25.25 0 0 0-.098.083q-5.077 6.345-10.15 12.69c-.107.093-.025.288.119.265c2.439.003 4.877 0 7.316.001a.66.66 0 0 0 .552-.25l2.324-2.903a.72.72 0 0 0 .144-.49c-.002-3.077 0-6.153-.003-9.23c.016-.11-.1-.206-.204-.167zM.077 2.166c-.077.038-.074.132-.076.205q.002 4.612.001 9.225a.68.68 0 0 0 .158.463l7.64 9.55c.12.152.308.25.505.247c2.455 0 4.91.003 7.365 0c.142.02.222-.174.116-.265C10.661 15.176 5.526 8.766.4 2.35c-.08-.094-.174-.272-.322-.184z'
|
||
]
|
||
},
|
||
'game-lol': {
|
||
from: '#e2c27a',
|
||
to: '#0e4a5c',
|
||
ink: WHITE,
|
||
fill: true,
|
||
paths: [
|
||
'm1.912 0l1.212 2.474v19.053L1.912 24h14.73l1.337-4.682H8.33V0ZM12 1.516c-.913 0-1.798.112-2.648.312v1.74A9.7 9.7 0 0 1 12 3.2c5.267 0 9.536 4.184 9.536 9.348a9.2 9.2 0 0 1-2.3 6.086l-.273.954l-.602 2.112c2.952-1.993 4.89-5.335 4.89-9.122C23.25 6.468 18.213 1.516 12 1.516m0 2.673c-.924 0-1.814.148-2.648.414v13.713h8.817a8.25 8.25 0 0 0 2.36-5.768c0-4.617-3.818-8.359-8.529-8.359M2.104 7.312A10.86 10.86 0 0 0 .75 12.576c0 1.906.492 3.7 1.355 5.266z'
|
||
]
|
||
},
|
||
'game-overwatch': {
|
||
from: '#fdba74',
|
||
to: '#f97316',
|
||
ink: '#431407',
|
||
paths: [c(12, 12, 9), 'm8 7.5 4 7 4-7', 'M7 15.5h10']
|
||
},
|
||
'game-minecraft': {
|
||
from: '#86efac',
|
||
to: '#166534',
|
||
ink: WHITE,
|
||
paths: [
|
||
'm14 13-8.381 8.38a1 1 0 0 1-3.001-3L11 9.999',
|
||
'M15.973 4.027A13 13 0 0 0 5.902 2.373c-1.398.342-1.092 2.158.277 2.601a19.9 19.9 0 0 1 5.822 3.024',
|
||
'M16.001 11.999a19.9 19.9 0 0 1 3.024 5.824c.444 1.369 2.26 1.676 2.603.278A13 13 0 0 0 20 8.069',
|
||
'M18.352 3.352a1.205 1.205 0 0 0-1.704 0l-5.296 5.296a1.205 1.205 0 0 0 0 1.704l2.296 2.296a1.205 1.205 0 0 0 1.704 0l5.296-5.296a1.205 1.205 0 0 0 0-1.704z'
|
||
]
|
||
},
|
||
'game-factorio': {
|
||
from: '#f0b16a',
|
||
to: '#7c4a1e',
|
||
ink: WHITE,
|
||
paths: [
|
||
'M11 10.27 7 3.34',
|
||
'm11 13.73-4 6.93',
|
||
'M12 22v-2',
|
||
'M12 2v2',
|
||
'M14 12h8',
|
||
'm17 20.66-1-1.73',
|
||
'm17 3.34-1 1.73',
|
||
'M2 12h2',
|
||
'm20.66 17-1.73-1',
|
||
'm20.66 7-1.73 1',
|
||
'm3.34 17 1.73-1',
|
||
'm3.34 7 1.73 1',
|
||
c(12, 12, 2),
|
||
c(12, 12, 8)
|
||
]
|
||
},
|
||
'game-ksp': {
|
||
from: '#93c5fd',
|
||
to: '#1e3a8a',
|
||
ink: WHITE,
|
||
paths: [
|
||
'M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5',
|
||
'M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09',
|
||
'M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z',
|
||
'M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05'
|
||
]
|
||
},
|
||
'game-smash': {
|
||
from: '#f87171',
|
||
to: '#991b1b',
|
||
ink: WHITE,
|
||
paths: [c(12, 12, 9), 'M9.5 3.4v17.2', 'M3 14.5h18']
|
||
},
|
||
'game-cubing': {
|
||
from: '#4ade80',
|
||
to: '#1d4ed8',
|
||
ink: WHITE,
|
||
paths: ['M4 4h16v16H4z', 'M9.33 4v16M14.67 4v16', 'M4 9.33h16M4 14.67h16']
|
||
},
|
||
'game-pokemon-red-blue-yellow': { ...pokemonTile, from: '#f37868', to: '#9c2b1c' },
|
||
'game-pokemon-gold-silver-crystal': { ...pokemonTile, from: '#f3a668', to: '#9c551c' },
|
||
'game-pokemon-ruby-sapphire-emerald': { ...pokemonTile, from: '#f3d568', to: '#9c801c' },
|
||
'game-pokemon-colosseum': { ...pokemonTile, from: '#e3f368', to: '#8d9c1c' },
|
||
'game-pokemon-xd': { ...pokemonTile, from: '#b4f368', to: '#629c1c' },
|
||
'game-pokemon-firered-leafgreen': { ...pokemonTile, from: '#86f368', to: '#379c1c' },
|
||
'game-pokemon-diamond-pearl-platinum': { ...pokemonTile, from: '#68f378', to: '#1c9c2b' },
|
||
'game-pokemon-heartgold-soulsilver': { ...pokemonTile, from: '#68f3a6', to: '#1c9c55' },
|
||
'game-pokemon-black-white': { ...pokemonTile, from: '#68f3d5', to: '#1c9c80' },
|
||
'game-pokemon-x-y': { ...pokemonTile, from: '#68e3f3', to: '#1c8d9c' },
|
||
'game-pokemon-omega-ruby-alpha-sapphire': { ...pokemonTile, from: '#68b4f3', to: '#1c629c' },
|
||
'game-pokemon-sun-moon': { ...pokemonTile, from: '#6886f3', to: '#1c379c' },
|
||
'game-pokemon-lets-go': { ...pokemonTile, from: '#7868f3', to: '#2b1c9c' },
|
||
'game-pokemon-sword-shield': { ...pokemonTile, from: '#a668f3', to: '#551c9c' },
|
||
'game-pokemon-brilliant-diamond-shining-pearl': {
|
||
...pokemonTile,
|
||
from: '#d568f3',
|
||
to: '#801c9c'
|
||
},
|
||
'game-pokemon-legends-arceus': { ...pokemonTile, from: '#f368e3', to: '#9c1c8d' },
|
||
'game-pokemon-scarlet-violet': { ...pokemonTile, from: '#f368b4', to: '#9c1c62' },
|
||
'game-pokemon-legends-z-a': { ...pokemonTile, from: '#f36886', to: '#9c1c37' },
|
||
'game-sot': {
|
||
from: '#5eead4',
|
||
to: '#0f766e',
|
||
ink: WHITE,
|
||
paths: [
|
||
'M10 2v15',
|
||
'M7 22a4 4 0 0 1-4-4 1 1 0 0 1 1-1h16a1 1 0 0 1 1 1 4 4 0 0 1-4 4z',
|
||
'M9.159 2.46a1 1 0 0 1 1.521-.193l9.977 8.98A1 1 0 0 1 20 13H4a1 1 0 0 1-.824-1.567z'
|
||
]
|
||
},
|
||
// /stats sections (header stats menu, home page, stats nav). Keys are `stats-<section>`.
|
||
'stats-overview': {
|
||
from: '#3b82f6',
|
||
to: '#6366f1',
|
||
ink: WHITE,
|
||
paths: ['M3 3v16a2 2 0 0 0 2 2h16', 'm19 9-5 5-4-4-3 3']
|
||
},
|
||
'stats-economy': {
|
||
from: '#10b981',
|
||
to: '#0d9488',
|
||
ink: WHITE,
|
||
paths: ['M16 7h6v6', 'm22 7-8.5 8.5-5-5L2 17']
|
||
},
|
||
'stats-energy': {
|
||
from: '#f97316',
|
||
to: '#e11d48',
|
||
ink: WHITE,
|
||
paths: ['M13 2 3 14h9l-1 8 10-12h-9l1-8z']
|
||
},
|
||
'stats-gouda': {
|
||
from: '#eab308',
|
||
to: '#f97316',
|
||
ink: WHITE,
|
||
paths: [
|
||
'M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0',
|
||
c(12, 10, 3)
|
||
]
|
||
},
|
||
'stats-countries': {
|
||
from: '#a855f7',
|
||
to: '#ec4899',
|
||
ink: WHITE,
|
||
paths: [c(12, 12, 10), 'M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20', 'M2 12h20']
|
||
},
|
||
'stats-curacao': {
|
||
from: '#22d3ee',
|
||
to: '#0e7490',
|
||
ink: WHITE,
|
||
paths: [
|
||
'M13 8c0-2.76-2.46-5-5.5-5S2 5.24 2 8h2l1-1 1 1h4',
|
||
'M13 7.14A5.82 5.82 0 0 1 16.5 6c3.04 0 5.5 2.24 5.5 5h-3l-1-1-1 1h-3',
|
||
'M5.89 9.71c-2.15 2.15-2.3 5.47-.35 7.43l4.24-4.25.7-.7.71-.71 2.12-2.12c-1.95-1.96-5.27-1.8-7.42.35',
|
||
'M11 15.5c.5 2.5-.17 4.5-1 6.5h4c2-5.5-.5-12-1-14'
|
||
]
|
||
},
|
||
'stats-elections': {
|
||
from: '#06b6d4',
|
||
to: '#3b82f6',
|
||
ink: WHITE,
|
||
paths: ['m9 12 2 2 4-4', 'M5 7c0-1.1.9-2 2-2h10a2 2 0 0 1 2 2v12H5V7Z', 'M22 19H2']
|
||
},
|
||
'stats-history': {
|
||
from: '#b45309',
|
||
to: '#eab308',
|
||
ink: WHITE,
|
||
paths: [
|
||
'M15 12h-5',
|
||
'M15 8h-5',
|
||
'M19 17V5a2 2 0 0 0-2-2H4',
|
||
'M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3'
|
||
]
|
||
},
|
||
'stats-opinions': {
|
||
from: '#ec4899',
|
||
to: '#f97316',
|
||
ink: WHITE,
|
||
paths: ['M7.9 20A9 9 0 1 0 4 16.1L2 22Z']
|
||
},
|
||
'stats-polls': {
|
||
from: '#f472b6',
|
||
to: '#db2777',
|
||
ink: WHITE,
|
||
paths: ['M3 3v16a2 2 0 0 0 2 2h16', 'M18 17V9', 'M13 17V5', 'M8 17v-3']
|
||
},
|
||
'stats-world': {
|
||
from: '#38bdf8',
|
||
to: '#0369a1',
|
||
ink: WHITE,
|
||
paths: [
|
||
c(12, 12, 10),
|
||
'm16.24 7.76-1.804 5.411a2 2 0 0 1-1.265 1.265L7.76 16.24l1.804-5.411a2 2 0 0 1 1.265-1.265z'
|
||
]
|
||
}
|
||
};
|
||
|
||
/** Neutral fallback for a tracker without its own tile yet. */
|
||
export const defaultTrackerIcon: TrackerIcon = {
|
||
from: '#a1a1aa',
|
||
to: '#52525b',
|
||
ink: WHITE,
|
||
paths: ['M4 20V10M10 20V4M16 20v-7M22 20H2']
|
||
};
|