Add files for christmas theme, theme handler, feedback revamp and cattpuccin theme

This commit is contained in:
Samidy 2025-12-05 18:07:32 +03:00 committed by GitHub
parent c3cea020b3
commit 12d6af83cf
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
17 changed files with 1655 additions and 127 deletions

View file

@ -0,0 +1,161 @@
/**
* Copyright (c) 2025 taskylizard. Apache License 2.0.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import type { Theme } from '../types'
export const catppuccinTheme: Theme = {
name: 'catppuccin',
displayName: 'Catppuccin',
preview: 'https://raw.githubusercontent.com/catppuccin/catppuccin/main/assets/logos/exports/1544x1544_circle.png',
modes: {
light: {
brand: {
1: '#8b5cf6',
2: '#7c3aed',
3: '#5b21b6',
soft: '#a78bfa'
},
bg: '#ffffff',
bgAlt: '#f9fafb',
bgElv: 'rgba(255, 255, 255, 0.7)',
bgMark: 'rgb(232, 232, 232)',
text: {
1: '#1f2937',
2: '#4b5563',
3: '#6b7280'
},
button: {
brand: {
bg: '#8b5cf6',
border: '#a78bfa',
text: 'rgba(42, 40, 47)',
hoverBorder: '#a78bfa',
hoverText: 'rgba(42, 40, 47)',
hoverBg: '#a78bfa',
activeBorder: '#a78bfa',
activeText: 'rgba(42, 40, 47)',
activeBg: '#8b5cf6'
},
alt: {
bg: '#484848',
text: '#f0eeee',
hoverBg: '#484848',
hoverText: '#f0eeee'
}
},
customBlock: {
info: {
bg: '#ede9fe',
border: '#5b21b6',
text: '#5b21b6',
textDeep: '#4c1d95'
},
tip: {
bg: '#d1fae5',
border: '#065f46',
text: '#065f46',
textDeep: '#064e3b'
},
warning: {
bg: '#fef3c7',
border: '#92400e',
text: '#92400e',
textDeep: '#78350f'
},
danger: {
bg: '#ffe4e6',
border: '#9f1239',
text: '#9f1239',
textDeep: '#881337'
}
},
selection: {
bg: '#5586a6'
},
home: {
heroNameColor: 'transparent',
heroNameBackground: '-webkit-linear-gradient(120deg, #c4b5fd 30%, #7bc5e4)',
heroImageBackground: 'linear-gradient(-45deg, #c4b5fd 50%, #47caff 50%)',
heroImageFilter: 'blur(44px)'
}
},
dark: {
brand: {
1: '#a78bfa',
2: '#8b5cf6',
3: '#6d28d9',
soft: '#c4b5fd'
},
bg: 'rgb(26, 26, 26)',
bgAlt: 'rgb(23, 23, 23)',
bgElv: 'rgba(23, 23, 23, 0.8)',
button: {
brand: {
bg: '#a78bfa',
border: '#c4b5fd',
text: 'rgba(42, 40, 47)',
hoverBorder: '#c4b5fd',
hoverText: 'rgba(42, 40, 47)',
hoverBg: '#c4b5fd',
activeBorder: '#c4b5fd',
activeText: 'rgba(42, 40, 47)',
activeBg: '#a78bfa'
},
alt: {
bg: '#484848',
text: '#f0eeee',
hoverBg: '#484848',
hoverText: '#f0eeee'
}
},
customBlock: {
info: {
bg: '#2e1065',
border: '#5b21b6',
text: '#ddd6fe',
textDeep: '#ddd6fe'
},
tip: {
bg: '#022c22',
border: '#065f46',
text: '#a7f3d0',
textDeep: '#a7f3d0'
},
warning: {
bg: '#451a03',
border: '#92400e',
text: '#fef08a',
textDeep: '#fef08a'
},
danger: {
bg: '#4c0519',
border: '#9f1239',
text: '#fecdd3',
textDeep: '#fecdd3'
}
},
selection: {
bg: '#0f2c47'
},
home: {
heroNameColor: 'transparent',
heroNameBackground: '-webkit-linear-gradient(120deg, #c4b5fd 30%, #7bc5e4)',
heroImageBackground: 'linear-gradient(-45deg, #c4b5fd 50%, #47caff 50%)',
heroImageFilter: 'blur(44px)'
}
}
}
}

View file

@ -0,0 +1,161 @@
/**
* Copyright (c) 2025 taskylizard. Apache License 2.0.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import type { Theme } from '../types'
export const christmasTheme: Theme = {
name: 'Christmas',
displayName: 'Christmas',
preview: 'https://files.catbox.moe/inbi62.png',
modes: {
light: {
brand: {
1: '#BD2F2F',
2: '#22ff00ff',
3: '#155C2F',
soft: '#a200ffff'
},
bg: '#ffffffff',
bgAlt: '#f9fafb',
bgElv: 'rgba(255, 255, 255, 0.7)',
bgMark: 'rgb(232, 232, 232)',
text: {
1: '#1f2937',
2: '#4b5563',
3: '#353638ff'
},
button: {
brand: {
bg: '#155C2F',
border: '#0E3B1F',
text: 'rgba(255, 255, 255)',
hoverBorder: '#072a15ff',
hoverText: 'rgba(255, 255, 255)',
hoverBg: '#072a15ff',
activeBorder: '#072a15ff',
activeText: 'rgba(255, 255, 255)',
activeBg: '#072a15ff'
},
alt: {
bg: '#484848',
text: '#f0eeee',
hoverBg: '#484848',
hoverText: '#f0eeee'
}
},
customBlock: {
info: {
bg: '#dbeafe',
border: '#1e40af',
text: '#1e40af',
textDeep: '#1e3a8a'
},
tip: {
bg: '#D8F8E4',
border: '#447A61',
text: '#2D6A58',
textDeep: '#166534'
},
warning: {
bg: '#FCEFC3',
border: '#9A8034',
text: '#9C701B',
textDeep: '#92400e'
},
danger: {
bg: '#FBE1E2',
border: '#B3565E',
text: '#912239',
textDeep: '#991b1b'
}
},
selection: {
bg: '#bfdbfe'
},
home: {
heroNameColor: 'transparent',
heroNameBackground: '-webkit-linear-gradient(120deg, #BD2F2F 30%, #f9fafb)',
heroImageBackground: 'linear-gradient(-45deg, #BD2F2F 50%, #f9fafb 50%)',
heroImageFilter: 'blur(44px)'
}
},
dark: {
brand: {
1: '#2CA03C',
2: '#22ff00ff',
3: '#5C151A',
soft: '#a200ffff'
},
bg: 'rgb(26, 26, 26)',
bgAlt: 'rgb(23, 23, 23)',
bgElv: 'rgba(23, 23, 23, 0.8)',
button: {
brand: {
bg: '#155C2F',
border: '#0E3B1F',
text: 'rgba(255, 255, 255)',
hoverBorder: '#072a15ff',
hoverText: 'rgba(255, 255, 255)',
hoverBg: '#072a15ff',
activeBorder: '#072a15ff',
activeText: 'rgba(255, 255, 255)',
activeBg: '#072a15ff'
},
alt: {
bg: '#484848',
text: '#f0eeee',
hoverBg: '#484848',
hoverText: '#f0eeee'
}
},
customBlock: {
info: {
bg: '#0c4a6e',
border: '#0284c7',
text: '#bae6fd',
textDeep: '#bae6fd'
},
tip: {
bg: '#0C2A20',
border: '#184633',
text: '#B0EBC9',
textDeep: '#166534'
},
warning: {
bg: '#403207',
border: '#7E6211',
text: '#F9DE88',
textDeep: '#92400e'
},
danger: {
bg: '#3F060A',
border: '#7C0F18',
text: '#F7C1BC',
textDeep: '#991b1b'
}
},
selection: {
bg: '#1e3a8a'
},
home: {
heroNameColor: 'transparent',
heroNameBackground: '-webkit-linear-gradient(120deg, #f9fafb 30%, #BD2F2F)',
heroImageBackground: 'linear-gradient(-45deg, #f9fafb 50%,#BD2F2F 50%)',
heroImageFilter: 'blur(44px)'
}
}
}
}

View file

@ -0,0 +1,161 @@
/**
* Copyright (c) 2025 taskylizard. Apache License 2.0.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import type { Theme } from '../types'
export const darkTheme: Theme = {
name: 'Christmas',
displayName: 'Christmas',
preview: 'https://files.catbox.moe/inbi62.png',
modes: {
light: {
brand: {
1: '#BD2F2F',
2: '#22ff00ff',
3: '#155C2F',
soft: '#a200ffff'
},
bg: '#ffffffff',
bgAlt: '#f9fafb',
bgElv: 'rgba(255, 255, 255, 0.7)',
bgMark: 'rgb(232, 232, 232)',
text: {
1: '#1f2937',
2: '#4b5563',
3: '#353638ff'
},
button: {
brand: {
bg: '#155C2F',
border: '#0E3B1F',
text: 'rgba(255, 255, 255)',
hoverBorder: '#072a15ff',
hoverText: 'rgba(255, 255, 255)',
hoverBg: '#072a15ff',
activeBorder: '#072a15ff',
activeText: 'rgba(255, 255, 255)',
activeBg: '#072a15ff'
},
alt: {
bg: '#484848',
text: '#f0eeee',
hoverBg: '#484848',
hoverText: '#f0eeee'
}
},
customBlock: {
info: {
bg: '#dbeafe',
border: '#1e40af',
text: '#1e40af',
textDeep: '#1e3a8a'
},
tip: {
bg: '#D8F8E4',
border: '#447A61',
text: '#2D6A58',
textDeep: '#166534'
},
warning: {
bg: '#FCEFC3',
border: '#9A8034',
text: '#9C701B',
textDeep: '#92400e'
},
danger: {
bg: '#FBE1E2',
border: '#B3565E',
text: '#912239',
textDeep: '#991b1b'
}
},
selection: {
bg: '#bfdbfe'
},
home: {
heroNameColor: 'transparent',
heroNameBackground: '-webkit-linear-gradient(120deg, #BD2F2F 30%, #f9fafb)',
heroImageBackground: 'linear-gradient(-45deg, #BD2F2F 50%, #f9fafb 50%)',
heroImageFilter: 'blur(44px)'
}
},
dark: {
brand: {
1: '#2CA03C',
2: '#22ff00ff',
3: '#5C151A',
soft: '#a200ffff'
},
bg: 'rgb(26, 26, 26)',
bgAlt: 'rgb(23, 23, 23)',
bgElv: 'rgba(23, 23, 23, 0.8)',
button: {
brand: {
bg: '#155C2F',
border: '#0E3B1F',
text: 'rgba(255, 255, 255)',
hoverBorder: '#072a15ff',
hoverText: 'rgba(255, 255, 255)',
hoverBg: '#072a15ff',
activeBorder: '#072a15ff',
activeText: 'rgba(255, 255, 255)',
activeBg: '#072a15ff'
},
alt: {
bg: '#484848',
text: '#f0eeee',
hoverBg: '#484848',
hoverText: '#f0eeee'
}
},
customBlock: {
info: {
bg: '#0c4a6e',
border: '#0284c7',
text: '#bae6fd',
textDeep: '#bae6fd'
},
tip: {
bg: '#0C2A20',
border: '#184633',
text: '#B0EBC9',
textDeep: '#166534'
},
warning: {
bg: '#403207',
border: '#7E6211',
text: '#F9DE88',
textDeep: '#92400e'
},
danger: {
bg: '#3F060A',
border: '#7C0F18',
text: '#F7C1BC',
textDeep: '#991b1b'
}
},
selection: {
bg: '#1e3a8a'
},
home: {
heroNameColor: 'transparent',
heroNameBackground: '-webkit-linear-gradient(120deg, #f9fafb 30%, #BD2F2F)',
heroImageBackground: 'linear-gradient(-45deg, #f9fafb 50%,#BD2F2F 50%)',
heroImageFilter: 'blur(44px)'
}
}
}
}

View file

@ -0,0 +1,25 @@
/**
* Copyright (c) 2025 taskylizard. Apache License 2.0.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { christmasTheme } from './christmas'
import { catppuccinTheme } from './catppuccin'
import type { ThemeRegistry } from '../types'
export const themeRegistry: ThemeRegistry = {
catppuccin: catppuccinTheme,
christmas: christmasTheme,
}
export { christmasTheme, catppuccinTheme }