forked from Shinonome/dots-hyprland
c82a2e835b
Co-Authored-By: Vague Syntax <173799252+vaguesyntax@users.noreply.github.com>
83 lines
2.1 KiB
QML
83 lines
2.1 KiB
QML
pragma Singleton
|
|
|
|
// From https://github.com/caelestia-dots/shell (GPLv3)
|
|
|
|
import Quickshell
|
|
|
|
Singleton {
|
|
id: root
|
|
|
|
function getBluetoothDeviceMaterialSymbol(systemIconName: string): string {
|
|
if (systemIconName.includes("headset") || systemIconName.includes("headphones"))
|
|
return "headphones";
|
|
if (systemIconName.includes("audio"))
|
|
return "speaker";
|
|
if (systemIconName.includes("phone"))
|
|
return "smartphone";
|
|
if (systemIconName.includes("mouse"))
|
|
return "mouse";
|
|
if (systemIconName.includes("keyboard"))
|
|
return "keyboard";
|
|
return "bluetooth";
|
|
}
|
|
|
|
readonly property var weatherIconMap: ({
|
|
"113": "clear_day",
|
|
"116": "partly_cloudy_day",
|
|
"119": "cloud",
|
|
"122": "cloud",
|
|
"143": "foggy",
|
|
"176": "rainy",
|
|
"179": "rainy",
|
|
"182": "rainy",
|
|
"185": "rainy",
|
|
"200": "thunderstorm",
|
|
"227": "cloudy_snowing",
|
|
"230": "snowing_heavy",
|
|
"248": "foggy",
|
|
"260": "foggy",
|
|
"263": "rainy",
|
|
"266": "rainy",
|
|
"281": "rainy",
|
|
"284": "rainy",
|
|
"293": "rainy",
|
|
"296": "rainy",
|
|
"299": "rainy",
|
|
"302": "weather_hail",
|
|
"305": "rainy",
|
|
"308": "weather_hail",
|
|
"311": "rainy",
|
|
"314": "rainy",
|
|
"317": "rainy",
|
|
"320": "cloudy_snowing",
|
|
"323": "cloudy_snowing",
|
|
"326": "cloudy_snowing",
|
|
"329": "snowing_heavy",
|
|
"332": "snowing_heavy",
|
|
"335": "snowing",
|
|
"338": "snowing_heavy",
|
|
"350": "rainy",
|
|
"353": "rainy",
|
|
"356": "rainy",
|
|
"359": "weather_hail",
|
|
"362": "rainy",
|
|
"365": "rainy",
|
|
"368": "cloudy_snowing",
|
|
"371": "snowing",
|
|
"374": "rainy",
|
|
"377": "rainy",
|
|
"386": "thunderstorm",
|
|
"389": "thunderstorm",
|
|
"392": "thunderstorm",
|
|
"395": "snowing"
|
|
})
|
|
|
|
|
|
function getWeatherIcon(code) {
|
|
const key = String(code)
|
|
if (weatherIconMap.hasOwnProperty(key)) {
|
|
return weatherIconMap[key]
|
|
}
|
|
}
|
|
}
|