iobroker.roborock
Version:
121 lines (112 loc) • 6.59 kB
text/typescript
import * as path from "node:path";
const Q10_PLUGIN_ROOT = path.join(
process.cwd(),
".AppPlugins",
"Q10 X5+",
"019bdf41f583723bb937ccc99bbd7541"
);
const DRAWABLE_DIR = "drawable-mdpi";
const RAW_DIR = "raw";
function drawable(name: string): string {
return path.posix.join(DRAWABLE_DIR, name);
}
function drawableList(prefix: string, count: number, suffix = ".png"): string[] {
return Array.from({ length: count }, (_, index) => drawable(`${prefix}${index}${suffix}`));
}
function raw(name: string): string {
return path.posix.join(RAW_DIR, name);
}
export function resolveQ10PluginAssetPath(relativePath: string): string {
return path.join(Q10_PLUGIN_ROOT, ...relativePath.split("/"));
}
export const Q10AssetCatalog = {
root: Q10_PLUGIN_ROOT,
drawableDir: DRAWABLE_DIR,
rawDir: RAW_DIR,
device: drawable("src_resources_map_images_light_mapdevice.png"),
power: drawable("src_resources_map_images_light_mappower.png"),
areaDelete: drawable("src_resources_map_images_light_mapareadelete.png"),
areaRotate: drawable("src_resources_map_images_light_maparearotate.png"),
forbidlineIcon: drawable("src_resources_map_images_light_mapforbidlineicon.png"),
roomSpliteLeveling: drawable("src_resources_map_images_light_maproomspliteleveling.png"),
roomTags: drawableList("src_resources_map_images_light_maproomtag", 12),
roomConfigFun: drawableList("src_resources_home_images_fun_", 5),
roomConfigWater: drawableList("src_resources_home_images_water_", 3),
roomConfigLine: drawableList("src_resources_home_images_device_clean_line_", 3),
roomConfigTimes: [
drawable("src_resources_home_images_times_1.png"),
drawable("src_resources_home_images_times_2.png")
],
floorTypeNormal: [
drawable("src_resources_images_light_floor_hdb_normal.png"),
drawable("src_resources_images_light_floor_sdb_normal.png"),
drawable("src_resources_images_light_floor_cz_normal.png"),
drawable("src_resources_images_light_floor_other_normal.png")
],
floorTypeSelected: [
drawable("src_resources_images_light_floor_hdb_selected.png"),
drawable("src_resources_images_light_floor_sdb_selected.png"),
drawable("src_resources_images_light_floor_cz_selected.png"),
drawable("src_resources_images_light_floor_other_selected.png")
],
roomPop: drawable("src_resources_map_images_light_maproomtagpop.png"),
mapCarpetMaterial: drawable("src_resources_map_images_light_mapcarpetmaterial.png"),
mapArrow: drawable("src_resources_map_images_light_map_arrow.png"),
mapCarpetCleanTypeSelected: [
drawable("src_resources_map_images_light_map_carpet_guibi_sel.png"),
drawable("src_resources_map_images_light_map_carpet_wushi_sel.png"),
drawable("src_resources_map_images_light_map_carpet_chuanyue_sel.png"),
drawable("src_resources_map_images_light_map_carpet_zishiying_sel.png")
],
mapCarpetCleanTypeNormal: [
drawable("src_resources_map_images_light_map_carpet_guibi.png"),
drawable("src_resources_map_images_light_map_carpet_wushi.png"),
drawable("src_resources_map_images_light_map_carpet_chuanyue.png"),
drawable("src_resources_map_images_light_map_carpet_zishiying.png")
],
mapThresholdMaterial: drawable("src_resources_map_images_light_map_thresholdmaterial.png"),
deviceAnimations: {
waiting: drawable("src_resources_map_images_devicepop_light_map_ani_waiting.png"),
mapping: drawable("src_resources_map_images_devicepop_light_map_ani_mapping.png"),
sweepMop: drawable("src_resources_map_images_devicepop_light_map_ani_sweepmop.png"),
sweeping: drawable("src_resources_map_images_devicepop_light_map_ani_sweeping.png"),
notDisturb: drawable("src_resources_map_images_devicepop_light_map_ani_notdisturb.png"),
charging: drawable("src_resources_map_images_devicepop_light_map_ani_chargeing.png"),
mopping: drawable("src_resources_map_images_devicepop_light_map_ani_mopping.png"),
sleep: drawable("src_resources_map_images_devicepop_light_map_ani_sleep.png"),
offline: drawable("src_resources_map_images_devicepop_light_map_ani_offline.png"),
fault: drawable("src_resources_map_images_devicepop_light_map_ani_fault.png"),
jichen: drawable("src_resources_map_images_devicepop_light_map_ani_jichen.png"),
remote: drawable("src_resources_map_images_devicepop_light_map_ani_yaokong.png"),
spot: drawable("src_resources_map_images_devicepop_light_map_ani_jubu.png"),
returning: drawable("src_resources_map_images_devicepop_light_map_ani_huichong.png"),
pauseSweepMop: drawable("src_resources_map_images_devicepop_light_map_ani_saotuozanting.png"),
pauseMop: drawable("src_resources_map_images_devicepop_light_map_ani_tuozanting.png"),
pauseSweep: drawable("src_resources_map_images_devicepop_light_map_ani_saozanting.png"),
pauseMapping: drawable("src_resources_map_images_devicepop_light_map_ani_jiantuzanting.png"),
pauseSpot: drawable("src_resources_map_images_devicepop_light_map_ani_jubuzanting.png"),
waitCharge: drawable("src_resources_map_images_devicepop_light_map_ani_dengdaichongdian.png")
},
obstacle: drawable("src_resources_map_images_light_mapobstacle.png"),
yisiMenkan: drawable("src_resources_map_images_light_map_yisi_menkan.png"),
yisiYika: drawable("src_resources_map_images_light_map_yisi_yika.png"),
yisiXuanya: drawable("src_resources_map_images_light_map_yisi_xuanya.png"),
popMenkanIcon: drawable("src_resources_map_images_light_map_pop_menkan_icon.png"),
popYikaIcon: drawable("src_resources_map_images_light_map_pop_yika_icon.png"),
popXuanyaIcon: drawable("src_resources_map_images_light_map_pop_xuanya_icon.png"),
mapArrowDown: drawable("src_resources_map_images_light_map_jiantou_xia.png"),
tiaoGuoIcon: drawable("src_resources_map_images_light_map_tiaoguo_icon.png"),
rawDeviceAnimations: {
waiting: raw("src_resources_map_images_devicepop_light_map_ani_waiting.pag"),
mapping: raw("src_resources_map_images_devicepop_light_map_ani_mapping.pag"),
sweepMop: raw("src_resources_map_images_devicepop_light_map_ani_sweepmop.pag"),
sweeping: raw("src_resources_map_images_devicepop_light_map_ani_sweeping.pag"),
notDisturb: raw("src_resources_map_images_devicepop_light_map_ani_notdisturb.pag"),
charging: raw("src_resources_map_images_devicepop_light_map_ani_chargeing.pag"),
mopping: raw("src_resources_map_images_devicepop_light_map_ani_mopping.pag"),
sleep: raw("src_resources_map_images_devicepop_light_map_ani_sleep.pag"),
offline: raw("src_resources_map_images_devicepop_light_map_ani_offline.pag"),
fault: raw("src_resources_map_images_devicepop_light_map_ani_fault.pag")
}
} as const;
export type Q10AssetCatalogKey = keyof typeof Q10AssetCatalog;