@iobroker/adapter-react-v5 7.5.2 → 7.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +22 -22
- package/build/AdminConnection.js.map +1 -1
- package/build/Components/404.js +13 -13
- package/build/Components/404.js.map +1 -1
- package/build/Components/ColorPicker.js.map +1 -1
- package/build/Components/CopyToClipboard.js.map +1 -1
- package/build/Components/CustomModal.js.map +1 -1
- package/build/Components/FileViewer.js.map +1 -1
- package/build/Components/Icon.js.map +1 -1
- package/build/Components/IconPicker.js.map +1 -1
- package/build/Components/IconSelector.js.map +1 -1
- package/build/Components/IobUri.js.map +1 -1
- package/build/Components/Loader.js +223 -223
- package/build/Components/Loader.js.map +1 -1
- package/build/Components/Loaders/MV.js.map +1 -1
- package/build/Components/Loaders/PT.js +103 -103
- package/build/Components/Loaders/PT.js.map +1 -1
- package/build/Components/Loaders/Vendor.js +7 -7
- package/build/Components/Loaders/Vendor.js.map +1 -1
- package/build/Components/MDUtils.js.map +1 -1
- package/build/Components/ObjectBrowser.js +1 -1
- package/build/Components/ObjectBrowser.js.map +1 -1
- package/build/Components/Router.js.map +1 -1
- package/build/Components/SaveCloseButtons.js.map +1 -1
- package/build/Components/SimpleCron/cronText.js.map +1 -1
- package/build/Components/SimpleCron/index.js.map +1 -1
- package/build/Components/TabContainer.js.map +1 -1
- package/build/Components/TabContent.js.map +1 -1
- package/build/Components/TabHeader.js.map +1 -1
- package/build/Components/TableResize.js.map +1 -1
- package/build/Components/TextWithIcon.js.map +1 -1
- package/build/Components/ToggleThemeMenu.js.map +1 -1
- package/build/Components/TreeTable.js.map +1 -1
- package/build/Components/UploadImage.js +305 -305
- package/build/Components/UploadImage.js.map +1 -1
- package/build/Components/withWidth.js.map +1 -1
- package/build/Connection.js.map +1 -1
- package/build/Dialogs/ComplexCron.js.map +1 -1
- package/build/Dialogs/Confirm.js.map +1 -1
- package/build/Dialogs/Cron.js.map +1 -1
- package/build/Dialogs/Error.js.map +1 -1
- package/build/Dialogs/Message.js.map +1 -1
- package/build/Dialogs/SelectFile.js.map +1 -1
- package/build/Dialogs/SimpleCron.js.map +1 -1
- package/build/Dialogs/TextInput.d.ts +1 -1
- package/build/Dialogs/TextInput.js.map +1 -1
- package/build/Prompt.js +7 -7
- package/build/Prompt.js.map +1 -1
- package/build/assets/devices/parseNames.js.map +1 -1
- package/build/assets/devices.json +1 -1
- package/build/assets/lamp_ceiling.svg +8 -8
- package/build/assets/lamp_table.svg +7 -7
- package/build/assets/no_icon.svg +9 -9
- package/build/assets/rooms/parseNames.js.map +1 -1
- package/build/assets/rooms.json +1 -1
- package/build/dictionary.js.map +1 -1
- package/build/i18n.js.map +1 -1
- package/build/icons/IconAdapter.js.map +1 -1
- package/build/icons/IconAlias.js.map +1 -1
- package/build/icons/IconButtonImage.js.map +1 -1
- package/build/icons/IconChannel.js.map +1 -1
- package/build/icons/IconClearFilter.js.map +1 -1
- package/build/icons/IconClosed.js.map +1 -1
- package/build/icons/IconCopy.js.map +1 -1
- package/build/icons/IconDevice.js.map +1 -1
- package/build/icons/IconDocument.js.map +1 -1
- package/build/icons/IconDocumentReadOnly.js.map +1 -1
- package/build/icons/IconExpert.js.map +1 -1
- package/build/icons/IconFx.js +1 -1
- package/build/icons/IconFx.js.map +1 -1
- package/build/icons/IconInstance.js.map +1 -1
- package/build/icons/IconLogout.js +1 -1
- package/build/icons/IconLogout.js.map +1 -1
- package/build/icons/IconNoIcon.js.map +1 -1
- package/build/icons/IconOpen.js.map +1 -1
- package/build/icons/IconProps.js.map +1 -1
- package/build/icons/IconState.js.map +1 -1
- package/build/icons/IconVacuum.js.map +1 -1
- package/build/index.css +56 -56
- package/build/index.d.ts +1 -0
- package/build/index.js +1 -0
- package/build/index.js.map +1 -1
- package/build/modulefederation.admin.config.d.ts +13 -0
- package/build/modulefederation.admin.config.js +44 -0
- package/build/modulefederation.admin.config.js.map +1 -0
- package/craco-module-federation.js +62 -62
- package/index.css +56 -56
- package/modulefederation.admin.config.d.ts +13 -0
- package/modulefederation.admin.config.js +48 -33
- package/package.json +12 -10
- package/tasksExample.js +91 -91
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IconSelector.js","sourceRoot":"./src/","sources":["Components/IconSelector.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { Component } from 'react';\r\n\r\nimport {\r\n Dialog,\r\n DialogTitle,\r\n DialogActions,\r\n DialogContent,\r\n Button,\r\n IconButton,\r\n TextField,\r\n Tooltip,\r\n CircularProgress,\r\n} from '@mui/material';\r\n\r\nimport { Close as CloseIcon, Clear as ClearIcon } from '@mui/icons-material';\r\n\r\nimport { Icon } from './Icon';\r\nimport { Utils } from './Utils';\r\nimport devicesIcons from '../assets/devices.json';\r\nimport roomsIcons from '../assets/rooms.json';\r\nimport type { Translate } from '../types';\r\n\r\n// import devices from '../assets/devices/list.json';\r\nconst devices: { _id: string; name: ioBroker.StringOrTranslated; icon: string }[] = [\r\n {\r\n _id: 'hood',\r\n name: {\r\n en: 'Hood',\r\n ru: 'Вытяжка',\r\n de: 'Abzugshaube',\r\n fr: 'Capot',\r\n it: 'Cappe',\r\n nl: 'Hood',\r\n pl: 'Okapy',\r\n pt: 'Hood',\r\n es: 'Campana',\r\n 'zh-cn': '抽油烟机',\r\n },\r\n icon: 'Hoods.svg',\r\n },\r\n {\r\n _id: 'alarm_system',\r\n name: {\r\n en: 'Alarm System',\r\n ru: 'Сигнализация',\r\n de: 'Alarmanlage',\r\n fr: \"Systèmes D'Alarme\",\r\n it: 'Sistemi Di Allarme',\r\n nl: 'Alarm Systems',\r\n pl: 'Systemy Alarmowe',\r\n pt: 'Sistemas De Alarme',\r\n es: 'Sistemas De Alarma',\r\n 'zh-cn': '报警系统',\r\n },\r\n icon: 'Alarm Systems.svg',\r\n },\r\n {\r\n _id: 'battery_status',\r\n name: {\r\n en: 'Battery Status',\r\n ru: 'Заряд батареи',\r\n de: 'Batteriestatus',\r\n fr: 'État De La Batterie',\r\n it: 'Stato Della Batteria',\r\n nl: 'Batterij Status',\r\n pl: 'Stan Baterii',\r\n pt: 'Estado Da Bateria',\r\n es: 'Estado De La Batería',\r\n 'zh-cn': '电池状态',\r\n },\r\n icon: 'Battery Status.svg',\r\n },\r\n {\r\n _id: 'lighting',\r\n name: {\r\n en: 'Lighting',\r\n ru: 'Светильник',\r\n de: 'Beleuchtung',\r\n fr: 'Éclairages',\r\n it: 'Illuminazione',\r\n nl: 'Verlichting',\r\n pl: 'Oprawy Oświetleniowe',\r\n pt: 'Iluminações',\r\n es: 'Iluminaciones',\r\n 'zh-cn': '照明',\r\n },\r\n icon: 'Lightings.svg',\r\n },\r\n {\r\n _id: 'shading',\r\n name: {\r\n en: 'Shading',\r\n ru: 'Затенение',\r\n de: 'Beschattungen',\r\n fr: 'Ombres',\r\n it: 'Ombreggiatura',\r\n nl: 'Shading',\r\n pl: 'Zacienienie',\r\n pt: 'Shading',\r\n es: 'Sombreado',\r\n 'zh-cn': '底纹',\r\n },\r\n icon: 'Shading.svg',\r\n },\r\n {\r\n _id: 'irrigation',\r\n name: {\r\n en: 'Irrigation',\r\n ru: 'Орошение',\r\n de: 'Bewässerung',\r\n fr: 'Irrigation',\r\n it: 'Irrigazione',\r\n nl: 'Irrigatie',\r\n pl: 'Nawadnianie',\r\n pt: 'Irrigação',\r\n es: 'Irrigación',\r\n 'zh-cn': '灌溉',\r\n },\r\n icon: 'Irrigation.svg',\r\n },\r\n {\r\n _id: 'iron',\r\n name: {\r\n en: 'Iron',\r\n ru: 'Утюг',\r\n de: 'Bügeleisen',\r\n fr: 'Le Fer',\r\n it: 'Ferro',\r\n nl: 'Ijzer',\r\n pl: 'Żelazo',\r\n pt: 'Ferro',\r\n es: 'Hierro',\r\n 'zh-cn': '铁',\r\n },\r\n icon: 'Iron.svg',\r\n },\r\n {\r\n _id: 'computer',\r\n name: {\r\n en: 'Computer',\r\n ru: 'Компьютер',\r\n de: 'Rechner',\r\n fr: \"L'Ordinateur\",\r\n it: 'Computer',\r\n nl: 'Computer',\r\n pl: 'Komputer',\r\n pt: 'Computador',\r\n es: 'Ordenador',\r\n 'zh-cn': '电脑',\r\n },\r\n icon: 'Computer.svg',\r\n },\r\n {\r\n _id: 'ceiling_spotlight',\r\n name: {\r\n en: 'Ceiling Spotlight',\r\n ru: 'Потолочный прожектор',\r\n de: 'Deckenspot',\r\n fr: 'Plafond Spotlight',\r\n it: 'Faretti A Soffitto',\r\n nl: 'Plafond Spotlight',\r\n pl: 'Reflektory Sufitowe',\r\n pt: 'Tecto Foco',\r\n es: 'Focos De Techo',\r\n 'zh-cn': '天花射灯',\r\n },\r\n icon: 'Ceiling Spotlights.svg',\r\n },\r\n {\r\n _id: 'printer',\r\n name: {\r\n en: 'Printer',\r\n de: 'Drucker',\r\n ru: 'Принтер',\r\n pt: 'Impressora',\r\n nl: 'Printer',\r\n fr: 'Imprimante',\r\n it: 'Stampante',\r\n es: 'Impresora',\r\n pl: 'Drukarka',\r\n 'zh-cn': '打印机',\r\n },\r\n icon: 'Printer.svg',\r\n },\r\n {\r\n _id: 'power_consumption',\r\n name: {\r\n en: 'Power Consumption',\r\n ru: 'Потребляемая мощность',\r\n de: 'Stromverbrauch',\r\n fr: \"Consommation D'Énergie\",\r\n it: 'Consumo Di Energia',\r\n nl: 'Energieverbruik',\r\n pl: 'Pobór Energii',\r\n pt: 'Consumo De Energia',\r\n es: 'El Consumo De Energía',\r\n 'zh-cn': '能量消耗',\r\n },\r\n icon: 'Power Consumption.svg',\r\n },\r\n {\r\n _id: 'window',\r\n name: {\r\n en: 'Window',\r\n ru: 'Окно',\r\n de: 'Fenster',\r\n fr: 'La Fenêtre',\r\n it: 'Finestra',\r\n nl: 'Venster',\r\n pl: 'Okno',\r\n pt: 'Janela',\r\n es: 'Ventana',\r\n 'zh-cn': '窗户',\r\n },\r\n icon: 'Window.svg',\r\n },\r\n {\r\n _id: 'garage_door',\r\n name: {\r\n en: 'Garage Door',\r\n ru: 'Гаражные Ворота',\r\n de: 'Garagentor',\r\n fr: 'Portes De Garage',\r\n it: 'Garage Door',\r\n nl: 'Garage Door',\r\n pl: 'Bramy Garażowe',\r\n pt: 'Portas De Garagem',\r\n es: 'Las Puertas De Garaje',\r\n 'zh-cn': '车库门',\r\n },\r\n icon: 'Garage Doors.svg',\r\n },\r\n {\r\n _id: 'hairdryer',\r\n name: {\r\n en: 'Hairdryer',\r\n ru: 'Фен',\r\n de: 'Haartrockner',\r\n fr: 'Sèche-Cheveux',\r\n it: 'Asciugacapelli',\r\n nl: 'Haardroger',\r\n pl: 'Suszarka Do Włosów',\r\n pt: 'Secador De Cabelo',\r\n es: 'Secador De Pelo',\r\n 'zh-cn': '电吹风',\r\n },\r\n icon: 'Hairdryer.svg',\r\n },\r\n {\r\n _id: 'hanging_lamp',\r\n name: {\r\n en: 'Hanging Lamp',\r\n ru: 'Подвесной светильник',\r\n de: 'Hängelampe',\r\n fr: 'Lampes Suspendues',\r\n it: 'Lampade A Sospensione',\r\n nl: 'Opknoping Lampen',\r\n pl: 'Lampy Wiszące',\r\n pt: 'Lâmpadas De Suspensão',\r\n es: 'Lámparas Colgantes',\r\n 'zh-cn': '挂灯',\r\n },\r\n icon: 'Hanging Lamps.svg',\r\n },\r\n {\r\n _id: 'doorstep',\r\n name: {\r\n en: 'Enterance',\r\n ru: 'Входная дверь',\r\n de: 'Haustür',\r\n fr: 'Seuil De Porte',\r\n it: 'Gradino Della Porta',\r\n nl: 'Drempel',\r\n pl: 'Próg',\r\n pt: 'Porta',\r\n es: 'Peldaño',\r\n 'zh-cn': '门阶',\r\n },\r\n icon: 'Doorstep.svg',\r\n },\r\n {\r\n _id: 'hot_water',\r\n name: {\r\n en: 'Hot Water',\r\n ru: 'Горячая вода',\r\n de: 'Heißwasser',\r\n fr: 'Eau Chaude',\r\n it: 'Acqua Calda',\r\n nl: 'Heet Water',\r\n pl: 'Gorąca Woda',\r\n pt: 'Água Quente',\r\n es: 'Agua Caliente',\r\n 'zh-cn': '热水',\r\n },\r\n icon: 'Hot Water.svg',\r\n },\r\n {\r\n _id: 'heating',\r\n name: {\r\n en: 'Heating',\r\n ru: 'Отопление',\r\n de: 'Heizung',\r\n fr: 'Chauffe-Eau',\r\n it: 'Riscaldatore',\r\n nl: 'Verwarmer',\r\n pl: 'Podgrzewacz',\r\n pt: 'Aquecedor',\r\n es: 'Calentador',\r\n 'zh-cn': '加热器',\r\n },\r\n icon: 'Heater.svg',\r\n },\r\n {\r\n _id: 'stove',\r\n name: {\r\n en: 'Stove',\r\n ru: 'Печь',\r\n de: 'Herd',\r\n fr: 'Le Fourneau',\r\n it: 'Stufa',\r\n nl: 'Fornuis',\r\n pl: 'Kuchenka',\r\n pt: 'Forno',\r\n es: 'Cocina',\r\n 'zh-cn': '火炉',\r\n },\r\n icon: 'Stove.svg',\r\n },\r\n {\r\n _id: 'louvre',\r\n name: {\r\n en: 'Louvre',\r\n ru: 'Жалюзи',\r\n de: 'Jalousie',\r\n fr: 'Persienne',\r\n it: 'Persiana Di Ventilazione',\r\n nl: 'Louvre',\r\n pl: 'Żaluzja',\r\n pt: 'Trapeira',\r\n es: 'Lumbrera',\r\n 'zh-cn': '卢浮宫',\r\n },\r\n icon: 'Louvre.svg',\r\n },\r\n {\r\n _id: 'coffee_maker',\r\n name: {\r\n en: 'Coffee Maker',\r\n ru: 'Кофеварка',\r\n de: 'Kaffemaschine',\r\n fr: 'Cafetière',\r\n it: 'Macchine Da Caffè',\r\n nl: 'Koffie Maker',\r\n pl: 'Ekspresy Do Kawy',\r\n pt: 'Cafeteira',\r\n es: 'Cafetera',\r\n 'zh-cn': '咖啡壶',\r\n },\r\n icon: 'Coffee Makers.svg',\r\n },\r\n {\r\n _id: 'cold_water',\r\n name: {\r\n en: 'Cold Water',\r\n ru: 'Холодная вода',\r\n de: 'Kaltwasser',\r\n fr: 'Eau Froide',\r\n it: 'Acqua Fredda',\r\n nl: 'Koud Water',\r\n pl: 'Zimna Woda',\r\n pt: 'Água Fria',\r\n es: 'Agua Fría',\r\n 'zh-cn': '冷水',\r\n },\r\n icon: 'Cold Water.svg',\r\n },\r\n {\r\n _id: 'climate',\r\n name: {\r\n en: 'Climate',\r\n ru: 'Климат',\r\n de: 'Klima',\r\n fr: 'Climat',\r\n it: 'Clima',\r\n nl: 'Klimaat',\r\n pl: 'Klimat',\r\n pt: 'Clima',\r\n es: 'Clima',\r\n 'zh-cn': '气候',\r\n },\r\n icon: 'Climate.svg',\r\n },\r\n {\r\n _id: 'speaker',\r\n name: {\r\n en: 'Speaker',\r\n ru: 'Звуковая система',\r\n de: 'Lautsprecher',\r\n fr: 'Orateur',\r\n it: 'Altoparlante',\r\n nl: 'Spreker',\r\n pl: 'Głośnik',\r\n pt: 'Palestrante',\r\n es: 'Altavoz',\r\n 'zh-cn': '扬声器',\r\n },\r\n icon: 'Speaker.svg',\r\n },\r\n {\r\n _id: 'led_strip',\r\n name: {\r\n en: 'Led Strip',\r\n ru: 'Светодиодная лента',\r\n de: 'LED Leiste',\r\n fr: 'Led Strip',\r\n it: 'Led Strip',\r\n nl: 'Loden Strip',\r\n pl: 'Pasek Ledowy',\r\n pt: 'Led Faixa',\r\n es: 'Tira Llevada',\r\n 'zh-cn': '灯带',\r\n },\r\n icon: 'Led Strip.svg',\r\n },\r\n {\r\n _id: 'light',\r\n name: {\r\n en: 'Light',\r\n ru: 'Свет',\r\n de: 'Licht',\r\n fr: 'Lumière',\r\n it: 'Leggero',\r\n nl: 'Licht',\r\n pl: 'Lekki',\r\n pt: 'Luz',\r\n es: 'Luz',\r\n 'zh-cn': '光',\r\n },\r\n icon: 'Light.svg',\r\n },\r\n {\r\n _id: 'fan',\r\n name: {\r\n en: 'Fan',\r\n ru: 'Вентилятор',\r\n de: 'Lüfter',\r\n fr: 'Ventilateur',\r\n it: 'Fan',\r\n nl: 'Ventilator',\r\n pl: 'Wentylator',\r\n pt: 'Ventilador',\r\n es: 'Ventilador',\r\n 'zh-cn': '扇子',\r\n },\r\n icon: 'Fan.svg',\r\n },\r\n {\r\n _id: 'humidity',\r\n name: {\r\n en: 'Humidity',\r\n ru: 'Влажность',\r\n de: 'Luftfeuchtigkeit',\r\n fr: 'Humidité',\r\n it: 'Umidità',\r\n nl: 'Vochtigheid',\r\n pl: 'Wilgotność',\r\n pt: 'Umidade',\r\n es: 'Humedad',\r\n 'zh-cn': '湿度',\r\n },\r\n icon: 'Humidity.svg',\r\n },\r\n {\r\n _id: 'ventilation',\r\n name: {\r\n en: 'Ventilation',\r\n ru: 'Вентиляция',\r\n de: 'Lüftung',\r\n fr: 'Ventilation',\r\n it: 'Ventilazione',\r\n nl: 'Ventilatie',\r\n pl: 'Wentylacja',\r\n pt: 'Ventilação',\r\n es: 'Ventilación',\r\n 'zh-cn': '通风',\r\n },\r\n icon: 'Ventilation.svg',\r\n },\r\n {\r\n _id: 'chandelier',\r\n name: {\r\n en: 'Chandelier',\r\n ru: 'Люстра',\r\n de: 'Kronleuchter',\r\n fr: 'Lustre',\r\n it: 'Lampadario',\r\n nl: 'Kroonluchter',\r\n pl: 'Żyrandol',\r\n pt: 'Lustre',\r\n es: 'Candelabro',\r\n 'zh-cn': '枝形吊灯',\r\n },\r\n icon: 'Chandelier.svg',\r\n },\r\n {\r\n _id: 'awning',\r\n name: {\r\n en: 'Awning',\r\n ru: 'Маркиза',\r\n de: 'Markise',\r\n fr: 'Auvents',\r\n it: 'Tende',\r\n nl: 'Luifels',\r\n pl: 'Okrycia',\r\n pt: 'Toldos',\r\n es: 'Toldos',\r\n 'zh-cn': '遮阳篷',\r\n },\r\n icon: 'Awnings.svg',\r\n },\r\n {\r\n _id: 'music',\r\n name: {\r\n en: 'Music',\r\n ru: 'Музыка',\r\n de: 'Musik',\r\n fr: 'Musique',\r\n it: 'Musica',\r\n nl: 'Muziek',\r\n pl: 'Muzyka',\r\n pt: 'Música',\r\n es: 'Música',\r\n 'zh-cn': '音乐',\r\n },\r\n icon: 'Music.svg',\r\n },\r\n {\r\n _id: 'people',\r\n name: {\r\n en: 'People',\r\n ru: 'Люди',\r\n de: 'Personen',\r\n fr: 'Gens',\r\n it: 'Persone',\r\n nl: 'Mensen',\r\n pl: 'Ludzie',\r\n pt: 'Pessoas',\r\n es: 'Personas',\r\n 'zh-cn': '人们',\r\n },\r\n icon: 'People.svg',\r\n },\r\n {\r\n _id: 'pool',\r\n name: {\r\n en: 'Pool',\r\n ru: 'Бассейн',\r\n de: 'Pool',\r\n fr: 'Piscine',\r\n it: 'Piscina',\r\n nl: 'Zwembad',\r\n pl: 'Basen',\r\n pt: 'Piscina',\r\n es: 'Piscina',\r\n 'zh-cn': '水池',\r\n },\r\n icon: 'Pool.svg',\r\n },\r\n {\r\n _id: 'pump',\r\n name: {\r\n en: 'Pump',\r\n ru: 'Насос',\r\n de: 'Pumpe',\r\n fr: 'Pompe',\r\n it: 'Pompa',\r\n nl: 'Pomp',\r\n pl: 'Pompa',\r\n pt: 'Bombear',\r\n es: 'Bomba',\r\n 'zh-cn': '泵',\r\n },\r\n icon: 'Pump.svg',\r\n },\r\n {\r\n _id: 'outdoor_blinds',\r\n name: {\r\n en: 'Outdoor Blinds',\r\n ru: 'Внещгте жалюзи',\r\n de: 'Raffstore',\r\n fr: 'Volets',\r\n it: 'Tende Da Esterni',\r\n nl: 'Outdoor Blinds',\r\n pl: 'Rolety Zewnętrzne',\r\n pt: 'Estores Exteriores',\r\n es: 'Persianas Exteriores',\r\n 'zh-cn': '室外百叶窗',\r\n },\r\n icon: 'Outdoor Blinds.svg',\r\n },\r\n {\r\n _id: 'mowing_machine',\r\n name: {\r\n en: 'Mowing Machine',\r\n ru: 'Газонокосилка',\r\n de: 'Rasenmäher',\r\n fr: 'Machine De Fauchage',\r\n it: 'Macchina Di Falciatura',\r\n nl: 'Maaimachine',\r\n pl: 'Kosiarka',\r\n pt: 'Roçada Máquina',\r\n es: 'Segadora',\r\n 'zh-cn': '割草机',\r\n },\r\n icon: 'Mowing Machine.svg',\r\n },\r\n {\r\n _id: 'receiver',\r\n name: {\r\n en: 'Receiver',\r\n ru: 'Приставка',\r\n de: 'Receiver',\r\n fr: 'Destinataire',\r\n it: 'Ricevitore',\r\n nl: 'Ontvanger',\r\n pl: 'Odbiorca',\r\n pt: 'Recebedor',\r\n es: 'Receptor',\r\n 'zh-cn': '接收者',\r\n },\r\n icon: 'Receiver.svg',\r\n },\r\n {\r\n _id: 'shutters',\r\n name: {\r\n en: 'Shutters',\r\n ru: 'Ставни',\r\n de: 'Rollladen',\r\n fr: 'Volets',\r\n it: 'Persiane',\r\n nl: 'Shutters',\r\n pl: 'Żaluzje',\r\n pt: 'Persianas',\r\n es: 'Persianas',\r\n 'zh-cn': '百叶窗',\r\n },\r\n icon: 'Shutters.svg',\r\n },\r\n {\r\n _id: 'smoke_detector',\r\n name: {\r\n en: 'Smoke detector',\r\n de: 'Rauchmelder',\r\n ru: 'Детектор дыма',\r\n pt: 'Detector de fumaça',\r\n nl: 'Rookdetector',\r\n fr: 'Détecteur de fumée',\r\n it: 'Rilevatore di fumo',\r\n es: 'Detector de humo',\r\n pl: 'Wykrywacz dymu',\r\n 'zh-cn': '烟雾探测器',\r\n },\r\n icon: 'SmokeDetector.svg',\r\n },\r\n {\r\n _id: 'lock',\r\n name: {\r\n en: 'Lock',\r\n ru: 'Замок',\r\n de: 'Schloß',\r\n fr: 'Fermer À Clé',\r\n it: 'Serratura',\r\n nl: 'Slot',\r\n pl: 'Zamek',\r\n pt: 'Trancar',\r\n es: 'Cerrar Con Llave',\r\n 'zh-cn': '锁',\r\n },\r\n icon: 'Lock.svg',\r\n },\r\n {\r\n _id: 'security',\r\n name: {\r\n en: 'Security',\r\n ru: 'Безопасность',\r\n de: 'Sicherheit',\r\n fr: 'Sécurité',\r\n it: 'Sicurezza',\r\n nl: 'Veiligheid',\r\n pl: 'Bezpieczeństwo',\r\n pt: 'Segurança',\r\n es: 'Seguridad',\r\n 'zh-cn': '安全',\r\n },\r\n icon: 'Security.svg',\r\n },\r\n {\r\n _id: 'dishwasher',\r\n name: {\r\n en: 'Dishwasher',\r\n ru: 'Посудомоечная машина',\r\n de: 'Spülmaschine',\r\n fr: 'Lave-Vaisselles',\r\n it: 'Lavastoviglie',\r\n nl: 'Vaatwassers',\r\n pl: 'Zmywarki',\r\n pt: 'Máquinas De Lavar Louça',\r\n es: 'Lavaplatos',\r\n 'zh-cn': '洗碗机',\r\n },\r\n icon: 'Dishwashers.svg',\r\n },\r\n {\r\n _id: 'vacuum_cleaner',\r\n name: {\r\n en: 'Vacuum Cleaner',\r\n ru: 'Пылесос',\r\n de: 'Staubsauger',\r\n fr: 'Aspirateur',\r\n it: 'Aspirapolvere',\r\n nl: 'Stofzuiger',\r\n pl: 'Odkurzacz',\r\n pt: 'Aspirador De Pó',\r\n es: 'Aspiradora',\r\n 'zh-cn': '吸尘器',\r\n },\r\n icon: 'Vacuum Cleaner.svg',\r\n },\r\n {\r\n _id: 'socket',\r\n name: {\r\n en: 'Socket',\r\n ru: 'Розетка',\r\n de: 'Steckdose',\r\n fr: 'Prise',\r\n it: 'Socket',\r\n nl: 'Socket',\r\n pl: 'Gniazdka',\r\n pt: 'Tomada',\r\n es: 'Zócalo',\r\n 'zh-cn': '套接字',\r\n },\r\n icon: 'Sockets.svg',\r\n },\r\n {\r\n _id: 'floor_lamp',\r\n name: {\r\n en: 'Floor Lamp',\r\n ru: 'Торшер',\r\n de: 'Stehlampe',\r\n fr: 'Lampes Pour Plancher',\r\n it: 'Lampade A Stelo',\r\n nl: 'Vloerlampen',\r\n pl: 'Lampy Podłogowe',\r\n pt: 'Lâmpadas Chão',\r\n es: 'Lámparas De Pie',\r\n 'zh-cn': '落地灯',\r\n },\r\n icon: 'Floor Lamps.svg',\r\n },\r\n {\r\n _id: 'power_consumption',\r\n name: {\r\n en: 'Power Consumption',\r\n ru: 'Потребляемая мощность',\r\n de: 'Stromverbrauch',\r\n fr: \"Consommation D'Énergie\",\r\n it: 'Consumo Di Energia',\r\n nl: 'Energieverbruik',\r\n pl: 'Pobór Energii',\r\n pt: 'Consumo De Energia',\r\n es: 'El Consumo De Energía',\r\n 'zh-cn': '能量消耗',\r\n },\r\n icon: 'Power Consumption.svg',\r\n },\r\n {\r\n _id: 'temperature_sensor',\r\n name: {\r\n en: 'Temperature Sensor',\r\n ru: 'Температурный датчик',\r\n de: 'Temperatur-Sensor',\r\n fr: 'Capteur De Température',\r\n it: 'Sensori Di Temperatura',\r\n nl: 'Temperatuursensor',\r\n pl: 'Czujniki Temperatury',\r\n pt: 'Sensores De Temperatura',\r\n es: 'Sensores De Temperatura',\r\n 'zh-cn': '温度传感器',\r\n },\r\n icon: 'Temperature Sensors.svg',\r\n },\r\n {\r\n _id: 'table_lamp',\r\n name: {\r\n en: 'Table Lamp',\r\n ru: 'Настольная лампа',\r\n de: 'Tischlampe',\r\n fr: 'Lampe De Chevet',\r\n it: 'Lampade Da Tavolo',\r\n nl: 'Tafellampen',\r\n pl: 'Lampy Stołowe',\r\n pt: 'Lâmpadas De Mesa',\r\n es: 'Lámparas De Mesa',\r\n 'zh-cn': '台灯',\r\n },\r\n icon: 'Table Lamps.svg',\r\n },\r\n {\r\n _id: 'gate',\r\n name: {\r\n en: 'Gate',\r\n ru: 'Ворота',\r\n de: 'Tor',\r\n fr: 'Porte',\r\n it: 'Gate',\r\n nl: 'Gate',\r\n pl: 'Bramy',\r\n pt: 'Portões',\r\n es: 'Puertas',\r\n 'zh-cn': '盖茨',\r\n },\r\n icon: 'Gates.svg',\r\n },\r\n {\r\n _id: 'dryer',\r\n name: {\r\n en: 'Dryer',\r\n ru: 'Сушилка',\r\n de: 'Trockner',\r\n fr: 'Séchoir',\r\n it: 'Asciugatrice',\r\n nl: 'Droger',\r\n pl: 'Suszarka',\r\n pt: 'Secador',\r\n es: 'Secadora',\r\n 'zh-cn': '烘干机',\r\n },\r\n icon: 'Dryer.svg',\r\n },\r\n {\r\n _id: 'door',\r\n name: {\r\n en: 'Door',\r\n ru: 'Дверь',\r\n de: 'Tür',\r\n fr: 'Des Portes',\r\n it: 'Porte',\r\n nl: 'Deuren',\r\n pl: 'Drzwi',\r\n pt: 'Portas',\r\n es: 'Puertas',\r\n 'zh-cn': '门',\r\n },\r\n icon: 'Doors.svg',\r\n },\r\n {\r\n _id: 'tv',\r\n name: {\r\n en: 'Tv',\r\n ru: 'Телевизор',\r\n de: 'TV',\r\n fr: 'La Télé',\r\n it: 'Tv',\r\n nl: 'Tv',\r\n pl: 'Telewizja',\r\n pt: 'Televisão',\r\n es: 'Televisor',\r\n 'zh-cn': '电视',\r\n },\r\n icon: 'Tv.svg',\r\n },\r\n {\r\n _id: 'consumption',\r\n name: {\r\n en: 'Consumption',\r\n ru: 'Потребление',\r\n de: 'Verbrauch',\r\n fr: 'Consommation',\r\n it: 'Consumo',\r\n nl: 'Consumptie',\r\n pl: 'Konsumpcja',\r\n pt: 'Consumo',\r\n es: 'Consumo',\r\n 'zh-cn': '消费',\r\n },\r\n icon: 'Consumption.svg',\r\n },\r\n {\r\n _id: 'amplifier',\r\n name: {\r\n en: 'Amplifier',\r\n ru: 'Усилитель звука',\r\n de: 'Verstärker',\r\n fr: 'Amplificateur',\r\n it: 'Amplificatore',\r\n nl: 'Versterker',\r\n pl: 'Wzmacniacz',\r\n pt: 'Amplificador',\r\n es: 'Amplificador',\r\n 'zh-cn': '放大器',\r\n },\r\n icon: 'Amplifier.svg',\r\n },\r\n {\r\n _id: 'curtains',\r\n name: {\r\n en: 'Curtains',\r\n ru: 'Шторы',\r\n de: 'Vorhänge',\r\n fr: 'Des Rideaux',\r\n it: 'Le Tende',\r\n nl: 'Gordijnen',\r\n pl: 'Zasłony',\r\n pt: 'Cortinas',\r\n es: 'Cortinas',\r\n 'zh-cn': '窗帘',\r\n },\r\n icon: 'Curtains.svg',\r\n },\r\n {\r\n _id: 'sconce',\r\n name: {\r\n en: 'Sconce',\r\n ru: 'Настенный светильник',\r\n de: 'Wandlampe',\r\n fr: 'Sconce',\r\n it: 'Sconce',\r\n nl: 'Sconce',\r\n pl: 'Kinkiety',\r\n pt: 'Arandelas',\r\n es: 'Los Apliques',\r\n 'zh-cn': '壁灯',\r\n },\r\n icon: 'Sconces.svg',\r\n },\r\n {\r\n _id: 'washing_machine',\r\n name: {\r\n en: 'Washing Machine',\r\n ru: 'Стиральная машина',\r\n de: 'Waschmaschine',\r\n fr: 'Machines À Laver',\r\n it: 'Lavatrici',\r\n nl: 'Wasmachines',\r\n pl: 'Pralki',\r\n pt: 'Máquinas De Lavar Roupas',\r\n es: 'Lavadoras',\r\n 'zh-cn': '洗衣机',\r\n },\r\n icon: 'Washing Machines.svg',\r\n },\r\n {\r\n _id: 'water',\r\n name: {\r\n en: 'Water',\r\n ru: 'Вода',\r\n de: 'Wasser',\r\n fr: \"L'Eau\",\r\n it: 'Acqua',\r\n nl: 'Water',\r\n pl: 'Woda',\r\n pt: 'Água',\r\n es: 'Agua',\r\n 'zh-cn': '水',\r\n },\r\n icon: 'Water.svg',\r\n },\r\n {\r\n _id: 'water_heater',\r\n name: {\r\n en: 'Water Heater',\r\n ru: 'Нагреватель воды',\r\n de: 'Wasserkocher',\r\n fr: 'Chauffe-Eau',\r\n it: 'Scaldabagno',\r\n nl: 'Waterkoker',\r\n pl: 'Podgrzewacz Wody',\r\n pt: 'Aquecedor De Água',\r\n es: 'Calentador De Agua',\r\n 'zh-cn': '热水器',\r\n },\r\n icon: 'Water Heater.svg',\r\n },\r\n {\r\n _id: 'water_consumption',\r\n name: {\r\n en: 'Water Consumption',\r\n ru: 'Потребление воды',\r\n de: 'Wasserverbrauch',\r\n fr: \"Consommation D'Eau\",\r\n it: \"Consumo D'Acqua\",\r\n nl: 'Waterverbruik',\r\n pl: 'Konsumpcja Wody',\r\n pt: 'Consumo De Água',\r\n es: 'Consumo De Agua',\r\n 'zh-cn': '耗水量',\r\n },\r\n icon: 'Water Consumption.svg',\r\n },\r\n {\r\n _id: 'weather',\r\n name: {\r\n en: 'Weather',\r\n ru: 'Погода',\r\n de: 'Wetter',\r\n fr: 'La Météo',\r\n it: 'Tempo Metereologico',\r\n nl: 'Weer',\r\n pl: 'Pogoda',\r\n pt: 'Clima',\r\n es: 'Tiempo',\r\n 'zh-cn': '天气',\r\n },\r\n icon: 'Weather.svg',\r\n },\r\n];\r\n\r\n// import rooms from '../assets/rooms/list.json';\r\nconst rooms: { _id: string; name: ioBroker.StringOrTranslated; icon: string }[] = [\r\n {\r\n _id: 'storeroom',\r\n name: {\r\n en: 'Storeroom',\r\n ru: 'Кладовая',\r\n de: 'Abstellraum',\r\n fr: 'Débarras',\r\n it: 'Dispensa',\r\n nl: 'Bergplaats',\r\n pl: 'Magazyn',\r\n pt: 'Despensa',\r\n es: 'Trastero',\r\n 'zh-cn': '库房',\r\n },\r\n icon: 'Storeroom.svg',\r\n },\r\n {\r\n _id: 'second_floor',\r\n name: {\r\n en: 'Second floor',\r\n ru: 'Второй этаж',\r\n de: 'Erster OG',\r\n pt: 'Primeiro andar',\r\n nl: 'Eerste verdieping',\r\n fr: 'Premier étage',\r\n it: 'Primo piano',\r\n es: 'Primer piso',\r\n pl: 'Pierwsze piętro',\r\n 'zh-cn': '第一层',\r\n },\r\n icon: 'Second Floor.svg',\r\n },\r\n {\r\n _id: 'dressing_room',\r\n name: {\r\n en: 'Dressing Room',\r\n ru: 'Гардеробная',\r\n de: 'Ankleide',\r\n fr: 'Vestiaire',\r\n it: 'Camerino',\r\n nl: 'Kleedkamer',\r\n pl: 'Przebieralnia',\r\n pt: 'Provador',\r\n es: 'Vestidor',\r\n 'zh-cn': '更衣室',\r\n },\r\n icon: 'Dressing Room.svg',\r\n },\r\n {\r\n _id: 'workspace',\r\n name: {\r\n en: 'Workspace',\r\n ru: 'Рабочая Среда',\r\n de: 'Arbeitszimmer',\r\n fr: 'Espace De Travail',\r\n it: 'Area Di Lavoro',\r\n nl: 'Workspace',\r\n pl: 'Workspace',\r\n pt: 'Área De Trabalho',\r\n es: 'Espacio De Trabajo',\r\n 'zh-cn': '工作区',\r\n },\r\n icon: 'Workspace.svg',\r\n },\r\n {\r\n _id: 'driveway',\r\n name: {\r\n en: 'Driveway',\r\n ru: 'Дорога',\r\n de: 'Auffahrt',\r\n fr: 'Allée',\r\n it: 'Viale',\r\n nl: 'Pad',\r\n pl: 'Podjazd',\r\n pt: 'Entrada Da Garagem',\r\n es: 'Entrada De Coches',\r\n 'zh-cn': '车道',\r\n },\r\n icon: 'Driveway.svg',\r\n },\r\n {\r\n _id: 'outdoors',\r\n name: {\r\n en: 'Outdoors',\r\n ru: 'На Улице',\r\n de: 'Außenbereich',\r\n fr: 'En Plein Air',\r\n it: \"All'Aperto\",\r\n nl: 'Buitenshuis',\r\n pl: 'Na Dworze',\r\n pt: 'Ao Ar Livre',\r\n es: 'Al Aire Libre',\r\n 'zh-cn': '户外',\r\n },\r\n icon: 'Outdoors.svg',\r\n },\r\n {\r\n _id: 'bathroom',\r\n name: {\r\n en: 'Bathroom',\r\n ru: 'Ванная Комната',\r\n de: 'Badezimmer',\r\n fr: 'Salle De Bains',\r\n it: 'Bagno',\r\n nl: 'Badkamer',\r\n pl: 'Łazienka',\r\n pt: 'Banheiro',\r\n es: 'Baño',\r\n 'zh-cn': '浴室',\r\n },\r\n icon: 'Bathroom.svg',\r\n },\r\n {\r\n _id: 'balcony',\r\n name: {\r\n en: 'Balcony',\r\n ru: 'Балкон',\r\n de: 'Balkon',\r\n fr: 'Balcon',\r\n it: 'Balcone',\r\n nl: 'Balkon',\r\n pl: 'Balkon',\r\n pt: 'Sacada',\r\n es: 'Balcón',\r\n 'zh-cn': '阳台',\r\n },\r\n icon: 'Balcony.svg',\r\n },\r\n {\r\n _id: 'office',\r\n name: {\r\n en: 'Office',\r\n ru: 'Офис',\r\n de: 'Office',\r\n fr: 'Bureau',\r\n it: 'Ufficio',\r\n nl: 'Kantoor',\r\n pl: 'Gabinet',\r\n pt: 'Escritório',\r\n es: 'Oficina',\r\n 'zh-cn': '办公室',\r\n },\r\n icon: 'Office.svg',\r\n },\r\n {\r\n _id: 'carport',\r\n name: {\r\n en: 'Carport',\r\n ru: 'Навес',\r\n de: 'Carport',\r\n fr: 'Carport',\r\n it: 'Posto Auto Coperto',\r\n nl: 'Carport',\r\n pl: 'Wiata',\r\n pt: 'Telheiro',\r\n es: 'Cochera',\r\n 'zh-cn': '车棚',\r\n },\r\n icon: 'Carport.svg',\r\n },\r\n {\r\n _id: 'attic',\r\n name: {\r\n en: 'Attic',\r\n ru: 'Чердак',\r\n de: 'Dachgeschoss',\r\n fr: 'Grenier',\r\n it: 'Attico',\r\n nl: 'Zolder',\r\n pl: 'Poddasze',\r\n pt: 'Sótão',\r\n es: 'Ático',\r\n 'zh-cn': '阁楼',\r\n },\r\n icon: 'Attic.svg',\r\n },\r\n {\r\n _id: 'hall',\r\n name: {\r\n en: 'Hall',\r\n ru: 'Зал',\r\n de: 'Diele',\r\n fr: 'Salle',\r\n it: 'Sala',\r\n nl: 'Hal',\r\n pl: 'Sala',\r\n pt: 'Corredor',\r\n es: 'Sala',\r\n 'zh-cn': '大厅',\r\n },\r\n icon: 'Hall.svg',\r\n },\r\n {\r\n _id: 'entrance',\r\n name: {\r\n en: 'Entrance',\r\n ru: 'Вход',\r\n de: 'Eingang',\r\n fr: 'Entrée',\r\n it: 'Ingresso',\r\n nl: 'Ingang',\r\n pl: 'Wejście',\r\n pt: 'Entrada',\r\n es: 'Entrada',\r\n 'zh-cn': '入口',\r\n },\r\n icon: 'Entrance.svg',\r\n },\r\n {\r\n _id: 'ground_floor',\r\n name: {\r\n en: 'Ground Floor',\r\n ru: 'Первый Этаж',\r\n de: 'Erdgeschoss',\r\n fr: 'Rez-De-Chaussée',\r\n it: 'Piano Terra',\r\n nl: 'Begane Grond',\r\n pl: 'Parter',\r\n pt: 'Térreo',\r\n es: 'Planta Baja',\r\n 'zh-cn': '一楼',\r\n },\r\n icon: 'Ground Floor.svg',\r\n },\r\n {\r\n _id: 'dining_area',\r\n name: {\r\n en: 'Dining Area',\r\n ru: 'Столовая',\r\n de: 'Essbereich',\r\n fr: 'Salle À Manger',\r\n it: 'Zona Pranzo',\r\n nl: 'Eethoek',\r\n pl: 'Jadalnia',\r\n pt: 'Área De Refeições',\r\n es: 'Comedor',\r\n 'zh-cn': '用餐区',\r\n },\r\n icon: 'Dining Area.svg',\r\n },\r\n {\r\n _id: 'dining_room',\r\n name: {\r\n en: 'Dining Room',\r\n ru: 'Столовая',\r\n de: 'Esszimmer',\r\n fr: 'Salle À Manger',\r\n it: 'Sala Da Pranzo',\r\n nl: 'Eetkamer',\r\n pl: 'Jadalnia',\r\n pt: 'Sala De Jantar',\r\n es: 'Comedor',\r\n 'zh-cn': '饭厅',\r\n },\r\n icon: 'Dining Room.svg',\r\n },\r\n {\r\n _id: 'gym',\r\n name: {\r\n en: 'Gym',\r\n ru: 'Спортзал',\r\n de: 'Fitnessraum',\r\n fr: 'Gym',\r\n it: 'Palestra',\r\n nl: 'Sportschool',\r\n pl: 'Siłownia',\r\n pt: 'Ginásio',\r\n es: 'Gimnasio',\r\n 'zh-cn': '健身房',\r\n },\r\n icon: 'Gym.svg',\r\n },\r\n {\r\n _id: 'gallery',\r\n name: {\r\n en: 'Gallery',\r\n ru: 'Галерея',\r\n de: 'Galerie',\r\n fr: 'Galerie',\r\n it: 'Galleria',\r\n nl: 'Galerij',\r\n pl: 'Galeria',\r\n pt: 'Galeria',\r\n es: 'Galería',\r\n 'zh-cn': '画廊',\r\n },\r\n icon: 'Gallery.svg',\r\n },\r\n {\r\n _id: 'garage',\r\n name: {\r\n en: 'Garage',\r\n ru: 'Гараж',\r\n de: 'Garage',\r\n fr: 'Garage',\r\n it: 'Box Auto',\r\n nl: 'Garage',\r\n pl: 'Garaż',\r\n pt: 'Garagem',\r\n es: 'Garaje',\r\n 'zh-cn': '车库',\r\n },\r\n icon: 'Garage.svg',\r\n },\r\n {\r\n _id: 'wardrobe',\r\n name: {\r\n en: 'Wardrobe',\r\n ru: 'Гардероб',\r\n de: 'Garderobe',\r\n fr: 'Penderie',\r\n it: 'Armadio',\r\n nl: 'Garderobe',\r\n pl: 'Szafa',\r\n pt: 'Guarda Roupa',\r\n es: 'Armario',\r\n 'zh-cn': '衣柜',\r\n },\r\n icon: 'Wardrobe.svg',\r\n },\r\n {\r\n _id: 'garden',\r\n name: {\r\n en: 'Garden',\r\n ru: 'Сад',\r\n de: 'Garten',\r\n fr: 'Jardin',\r\n it: 'Giardino',\r\n nl: 'Tuin',\r\n pl: 'Ogród',\r\n pt: 'Jardim',\r\n es: 'Jardín',\r\n 'zh-cn': '花园',\r\n },\r\n icon: 'Garden.svg',\r\n },\r\n {\r\n _id: 'summer_house',\r\n name: {\r\n en: 'Summer House',\r\n ru: 'Дача',\r\n de: 'Gartenhaus',\r\n fr: \"Maison D'Été\",\r\n it: 'Casa Estiva',\r\n nl: 'Zomerhuis',\r\n pl: 'Domek Letniskowy',\r\n pt: 'Summer House',\r\n es: 'Casa De Verano',\r\n 'zh-cn': '凉亭',\r\n },\r\n icon: 'Summer House.svg',\r\n },\r\n {\r\n _id: 'guest_bathroom',\r\n name: {\r\n en: 'Guest Bathroom',\r\n ru: 'Гостевая Комната',\r\n de: 'Gäste-WC',\r\n fr: 'Salle De Bains Invité',\r\n it: 'Guest Bathroom',\r\n nl: 'Gastenbadkamer',\r\n pl: 'Łazienka Gościnna',\r\n pt: 'Banheiro De Hóspedes',\r\n es: 'Baño De Visitas',\r\n 'zh-cn': '客用浴室',\r\n },\r\n icon: 'Guest Bathroom.svg',\r\n },\r\n {\r\n _id: 'guest_room',\r\n name: {\r\n en: 'Guest Room',\r\n ru: 'Гостевая Комната',\r\n de: 'Gästezimmer',\r\n fr: \"Chambre D'Amis\",\r\n it: 'Stanza Degli Ospiti',\r\n nl: 'Guest Room',\r\n pl: 'Pokój Gościnny',\r\n pt: 'Quarto De Hóspedes',\r\n es: 'Habitación De Huéspedes',\r\n 'zh-cn': '客房',\r\n },\r\n icon: 'Guest Room.svg',\r\n },\r\n {\r\n _id: 'laundry_room',\r\n name: {\r\n en: 'Laundry Room',\r\n ru: 'Прачечная',\r\n de: 'Hauswirtschaftsraum',\r\n fr: 'Buanderie',\r\n it: 'Lavanderia',\r\n nl: 'Wasruimte',\r\n pl: 'Pralnia',\r\n pt: 'Lavandaria',\r\n es: 'Cuarto De Lavado',\r\n 'zh-cn': '洗衣房',\r\n },\r\n icon: 'Laundry Room.svg',\r\n },\r\n {\r\n _id: 'home_theater',\r\n name: {\r\n en: 'Home Theater',\r\n ru: 'Домашний Театр',\r\n de: 'Heimkino',\r\n fr: 'Cinéma Maison',\r\n it: 'Home Theater',\r\n nl: 'Thuisbioscoop',\r\n pl: 'Kino Domowe',\r\n pt: 'Cinema Em Casa',\r\n es: 'Cine En Casa',\r\n 'zh-cn': '家庭电影院',\r\n },\r\n icon: 'Home Theater.svg',\r\n },\r\n {\r\n _id: 'boiler_room',\r\n name: {\r\n en: 'Boiler Room',\r\n ru: 'Бойлерная',\r\n de: 'Heizungsraum',\r\n fr: 'Chaufferie',\r\n it: 'Locale Caldaia',\r\n nl: 'Boiler Room',\r\n pl: 'Kotłownia',\r\n pt: 'Sala Da Caldeira',\r\n es: 'Sala De Calderas',\r\n 'zh-cn': '锅炉房',\r\n },\r\n icon: 'Boiler Room.svg',\r\n },\r\n {\r\n _id: 'chamber',\r\n name: {\r\n en: 'Chamber',\r\n ru: 'Камера',\r\n de: 'Kammer',\r\n fr: 'Chambre',\r\n it: 'Camera',\r\n nl: 'Kamer',\r\n pl: 'Izba',\r\n pt: 'Câmara',\r\n es: 'Cámara',\r\n 'zh-cn': '商会',\r\n },\r\n icon: 'Chamber.svg',\r\n },\r\n {\r\n _id: 'basement,_cellar',\r\n name: {\r\n en: 'Basement, Cellar',\r\n ru: 'Подвал, Погреб',\r\n de: 'Keller',\r\n fr: 'Sous-Sol, Cave',\r\n it: 'Taverna, Cantina',\r\n nl: 'Kelder, Kelder',\r\n pl: 'Piwnica, Piwnica',\r\n pt: 'Porão, Adega',\r\n es: 'Sótano, Bodega',\r\n 'zh-cn': '地下室,地窖',\r\n },\r\n icon: 'Basement.svg',\r\n },\r\n {\r\n _id: 'nursery',\r\n name: {\r\n en: 'Nursery',\r\n ru: 'Питомник',\r\n de: 'Kinderzimmer',\r\n fr: 'Garderie',\r\n it: 'Asilo',\r\n nl: 'Kinderkamer',\r\n pl: 'Żłobek',\r\n pt: 'Berçário',\r\n es: 'Guardería',\r\n 'zh-cn': '苗圃',\r\n },\r\n icon: 'Nursery.svg',\r\n },\r\n {\r\n _id: 'corridor',\r\n name: {\r\n en: 'Corridor',\r\n ru: 'Коридор',\r\n de: 'Korridor',\r\n fr: 'Couloir',\r\n it: 'Corridoio',\r\n nl: 'Gang',\r\n pl: 'Korytarz',\r\n pt: 'Corredor',\r\n es: 'Corredor',\r\n 'zh-cn': '走廊',\r\n },\r\n icon: 'Corridor.svg',\r\n },\r\n {\r\n _id: 'kitchen',\r\n name: {\r\n en: 'Kitchen',\r\n ru: 'Кухня',\r\n de: 'Küche',\r\n fr: 'Cuisine',\r\n it: 'Cucina',\r\n nl: 'Keuken',\r\n pl: 'Kuchnia',\r\n pt: 'Cozinha',\r\n es: 'Cocina',\r\n 'zh-cn': '厨房',\r\n },\r\n icon: 'Kitchen.svg',\r\n },\r\n {\r\n _id: 'upstairs',\r\n name: {\r\n en: 'Upstairs',\r\n ru: 'Вверх По Лестнице',\r\n de: 'Obergeschoss',\r\n fr: 'En Haut',\r\n it: 'Di Sopra',\r\n nl: 'Boven',\r\n pl: 'Na Górę',\r\n pt: 'Andar De Cima',\r\n es: 'Piso Superior',\r\n 'zh-cn': '楼上',\r\n },\r\n icon: 'Upstairs.svg',\r\n },\r\n {\r\n _id: 'office',\r\n name: {\r\n en: 'Office',\r\n ru: 'Офис',\r\n de: 'Office',\r\n fr: 'Bureau',\r\n it: 'Ufficio',\r\n nl: 'Kantoor',\r\n pl: 'Gabinet',\r\n pt: 'Escritório',\r\n es: 'Oficina',\r\n 'zh-cn': '办公室',\r\n },\r\n icon: 'Office.svg',\r\n },\r\n {\r\n _id: 'pool',\r\n name: {\r\n en: 'Pool',\r\n ru: 'Бассейн',\r\n de: 'Pool',\r\n fr: 'Piscine',\r\n it: 'Piscina',\r\n nl: 'Zwembad',\r\n pl: 'Basen',\r\n pt: 'Piscina',\r\n es: 'Piscina',\r\n 'zh-cn': '水池',\r\n },\r\n icon: 'Pool.svg',\r\n },\r\n {\r\n _id: 'rear_wall',\r\n name: {\r\n en: 'Rear Wall',\r\n ru: 'Задняя Стенка',\r\n de: 'Rückwand',\r\n fr: 'Paroi Arrière',\r\n it: 'Parete Posteriore',\r\n nl: 'Achterwand',\r\n pl: 'Tylna Ściana',\r\n pt: 'Parede Traseira',\r\n es: 'Pared Posterior',\r\n 'zh-cn': '后墙',\r\n },\r\n icon: 'Rear Wall.svg',\r\n },\r\n {\r\n _id: 'barn',\r\n name: {\r\n en: 'Barn',\r\n ru: 'Амбар',\r\n de: 'Scheune',\r\n fr: 'Grange',\r\n it: 'Fienile',\r\n nl: 'Schuur',\r\n pl: 'Stodoła',\r\n pt: 'Celeiro',\r\n es: 'Granero',\r\n 'zh-cn': '谷仓',\r\n },\r\n icon: 'Barn.svg',\r\n },\r\n {\r\n _id: 'sleeping_area',\r\n name: {\r\n en: 'Sleeping Area',\r\n ru: 'Спальное Место',\r\n de: 'Schlafbereich',\r\n fr: 'Coin Montagne',\r\n it: 'Area Sleeping',\r\n nl: 'Sleeping Area',\r\n pl: 'Powierzchnia Spania',\r\n pt: 'Sleeping Area',\r\n es: 'Área De Dormir',\r\n 'zh-cn': '睡眠区',\r\n },\r\n icon: 'Sleeping Area.svg',\r\n },\r\n {\r\n _id: 'bedroom',\r\n name: {\r\n en: 'Bedroom',\r\n ru: 'Спальная Комната',\r\n de: 'Schlafzimmer',\r\n fr: 'Chambre',\r\n it: 'Camera Da Letto',\r\n nl: 'Slaapkamer',\r\n pl: 'Sypialnia',\r\n pt: 'Quarto',\r\n es: 'Cuarto',\r\n 'zh-cn': '卧室',\r\n },\r\n icon: 'Bedroom.svg',\r\n },\r\n {\r\n _id: 'shed',\r\n name: {\r\n en: 'Shed',\r\n ru: 'Сбрасывать',\r\n de: 'Schuppen',\r\n fr: 'Hangar',\r\n it: 'Capannone',\r\n nl: 'Schuur',\r\n pl: 'Budka',\r\n pt: 'Cabana',\r\n es: 'Cobertizo',\r\n 'zh-cn': '棚',\r\n },\r\n icon: 'Shed.svg',\r\n },\r\n {\r\n _id: 'swimming_pool',\r\n name: {\r\n en: 'Swimming Pool',\r\n ru: 'Плавательный Бассейн',\r\n de: 'Schwimmbad',\r\n fr: 'Piscine',\r\n it: 'Piscina',\r\n nl: 'Zwembad',\r\n pl: 'Basen',\r\n pt: 'Piscina',\r\n es: 'Piscina',\r\n 'zh-cn': '游泳池',\r\n },\r\n icon: 'Swimming Pool.svg',\r\n },\r\n {\r\n _id: 'dining',\r\n name: {\r\n en: 'Dining',\r\n ru: 'Обеденный',\r\n de: 'Speis',\r\n fr: 'À Manger',\r\n it: 'Cenare',\r\n nl: 'Dining',\r\n pl: 'Jadalnia',\r\n pt: 'Jantar',\r\n es: 'Comida',\r\n 'zh-cn': '用餐',\r\n },\r\n icon: 'Dining.svg',\r\n },\r\n {\r\n _id: 'playroom',\r\n name: {\r\n en: 'Playroom',\r\n ru: 'Игровая Комната',\r\n de: 'Spielzimmer',\r\n fr: 'Salle De Jeux',\r\n it: 'Stanza Dei Giochi',\r\n nl: 'Speelkamer',\r\n pl: 'Pokój Zabaw',\r\n pt: 'Sala De Jogos',\r\n es: 'Cuarto De Jugar',\r\n 'zh-cn': '游戏室',\r\n },\r\n icon: 'Playroom.svg',\r\n },\r\n {\r\n _id: 'stairway',\r\n name: {\r\n en: 'Stairway',\r\n ru: 'Лестница',\r\n de: 'Treppe',\r\n fr: 'Escalier',\r\n it: 'Scala',\r\n nl: 'Trap',\r\n pl: 'Klatka Schodowa',\r\n pt: 'Escada',\r\n es: 'Escalera',\r\n 'zh-cn': '楼梯',\r\n },\r\n icon: 'Stairway.svg',\r\n },\r\n {\r\n _id: 'equipment_room',\r\n name: {\r\n en: 'Equipment Room',\r\n ru: 'Оборудование Номера',\r\n de: 'Technikraum',\r\n fr: \"Salle D'Équipement\",\r\n it: 'Stanza Degli Attrezzi',\r\n nl: 'Technische Ruimte',\r\n pl: 'Wyposażenie Pokoi',\r\n pt: 'Sala De Equipamentos',\r\n es: 'Cuarto De Equipos',\r\n 'zh-cn': '机房',\r\n },\r\n icon: 'Equipment Room.svg',\r\n },\r\n {\r\n _id: 'terrace',\r\n name: {\r\n en: 'Terrace',\r\n ru: 'Терраса',\r\n de: 'Terrasse',\r\n fr: 'Terrasse',\r\n it: 'Terrazza',\r\n nl: 'Terras',\r\n pl: 'Taras',\r\n pt: 'Terraço',\r\n es: 'Terraza',\r\n 'zh-cn': '阳台',\r\n },\r\n icon: 'Terrace.svg',\r\n },\r\n {\r\n _id: 'toilet',\r\n name: {\r\n en: 'Toilet',\r\n ru: 'Туалет',\r\n de: 'Toilette',\r\n fr: 'Toilette',\r\n it: 'Gabinetto',\r\n nl: 'Toilet',\r\n pl: 'Toaleta',\r\n pt: 'Banheiro',\r\n es: 'Inodoro',\r\n 'zh-cn': '洗手间',\r\n },\r\n icon: 'Toilet.svg',\r\n },\r\n {\r\n _id: 'stairwell',\r\n name: {\r\n en: 'Stairwell',\r\n ru: 'Лестничная клетка',\r\n de: 'Treppenhaus',\r\n fr: \"Cage D'Escalier\",\r\n it: 'Tromba Delle Scale',\r\n nl: 'Trappenhuis',\r\n pl: 'Klatka Schodowa',\r\n pt: 'Caixa De Escada',\r\n es: 'Hueco De Escalera',\r\n 'zh-cn': '楼梯间',\r\n },\r\n icon: 'Stairwell.svg',\r\n },\r\n {\r\n _id: 'locker_room',\r\n name: {\r\n en: 'Locker Room',\r\n ru: 'Камера Хранения',\r\n de: 'Umkleideraum',\r\n fr: 'Vestiaire',\r\n it: 'Spogliatoio',\r\n nl: 'Kleedkamer',\r\n pl: 'Szatnia',\r\n pt: 'Vestiário',\r\n es: 'Vestuario',\r\n 'zh-cn': '更衣室',\r\n },\r\n icon: 'Locker Room.svg',\r\n },\r\n {\r\n _id: 'basement',\r\n name: {\r\n en: 'Basement',\r\n ru: 'Подвал',\r\n de: 'Untergeschoss',\r\n fr: 'Sous-Sol',\r\n it: 'Seminterrato',\r\n nl: 'Kelder',\r\n pl: 'Piwnica',\r\n pt: 'Porão',\r\n es: 'Sótano',\r\n 'zh-cn': '地下室',\r\n },\r\n icon: 'Basement.svg',\r\n },\r\n {\r\n _id: 'front_yard',\r\n name: {\r\n en: 'Front Yard',\r\n ru: 'Передний Двор',\r\n de: 'Vorgarten',\r\n fr: 'Front Yard',\r\n it: 'Cortile',\r\n nl: 'Voortuin',\r\n pl: 'Podwórko',\r\n pt: 'Jardim Da Frente',\r\n es: 'Patio Delantero',\r\n 'zh-cn': '前院',\r\n },\r\n icon: 'Front Yard.svg',\r\n },\r\n {\r\n _id: 'anteroom',\r\n name: {\r\n en: 'Anteroom',\r\n ru: 'Передняя',\r\n de: 'Vorraum',\r\n fr: 'Antichambre',\r\n it: 'Anticamera',\r\n nl: 'Voorkamer',\r\n pl: 'Przedpokój',\r\n pt: 'Ante-Sala',\r\n es: 'Antesala',\r\n 'zh-cn': '接待室',\r\n },\r\n icon: 'Anteroom.svg',\r\n },\r\n {\r\n _id: 'washroom',\r\n name: {\r\n en: 'Washroom',\r\n ru: 'Уборная',\r\n de: 'Waschraum',\r\n fr: 'Toilettes',\r\n it: 'Bagno',\r\n nl: 'Waskamer',\r\n pl: 'Umywalnia',\r\n pt: 'Banheiro',\r\n es: 'Baño',\r\n 'zh-cn': '卫生间',\r\n },\r\n icon: 'Washroom.svg',\r\n },\r\n {\r\n _id: 'wc',\r\n name: {\r\n en: 'Wc',\r\n ru: 'Туалет',\r\n de: 'WC',\r\n fr: 'Toilettes',\r\n it: 'Bagno',\r\n nl: 'Wc',\r\n pl: 'Toaleta',\r\n pt: 'Banheiro',\r\n es: 'Wc',\r\n 'zh-cn': '厕所',\r\n },\r\n icon: 'Wc.svg',\r\n },\r\n {\r\n _id: 'workshop',\r\n name: {\r\n en: 'Workshop',\r\n ru: 'Мастерская',\r\n de: 'Werkstatt',\r\n fr: 'Atelier',\r\n it: 'Laboratorio',\r\n nl: 'Werkplaats',\r\n pl: 'Warsztat',\r\n pt: 'Oficina',\r\n es: 'Taller',\r\n 'zh-cn': '作坊',\r\n },\r\n icon: 'Workshop.svg',\r\n },\r\n {\r\n _id: 'windscreen',\r\n name: {\r\n en: 'Windscreen',\r\n ru: 'Ветровое Стекло',\r\n de: 'Windfang',\r\n fr: 'Pare-Brise',\r\n it: 'Parabrezza',\r\n nl: 'Voorruit',\r\n pl: 'Szyba Przednia',\r\n pt: 'Pára-Brisas',\r\n es: 'Parabrisas',\r\n 'zh-cn': '风档',\r\n },\r\n icon: 'Windscreen.svg',\r\n },\r\n {\r\n _id: 'living_area',\r\n name: {\r\n en: 'Living Area',\r\n ru: 'Жилая Площадь',\r\n de: 'Wohnbereich',\r\n fr: 'Salon',\r\n it: 'Zona Giorno',\r\n nl: 'Living Area',\r\n pl: 'Powierzchnia Mieszkalna',\r\n pt: 'Sala-De-Estar',\r\n es: 'Sala De Estar',\r\n 'zh-cn': '生活区域',\r\n },\r\n icon: 'Living Area.svg',\r\n },\r\n {\r\n _id: 'living_room',\r\n name: {\r\n en: 'Living Room',\r\n ru: 'Гостинная',\r\n de: 'Wohnzimmer',\r\n fr: 'Le Salon',\r\n it: 'Soggiorno',\r\n nl: 'Woonkamer',\r\n pl: 'Salon',\r\n pt: 'Sala De Estar',\r\n es: 'Sala De Estar',\r\n 'zh-cn': '客厅',\r\n },\r\n icon: 'Living Room.svg',\r\n },\r\n {\r\n _id: 'living_room',\r\n name: {\r\n en: 'Living Room',\r\n ru: 'Гостинная',\r\n de: 'Wohnzimmer',\r\n fr: 'Le Salon',\r\n it: 'Soggiorno',\r\n nl: 'Woonkamer',\r\n pl: 'Salon',\r\n pt: 'Sala De Estar',\r\n es: 'Sala De Estar',\r\n 'zh-cn': '客厅',\r\n },\r\n icon: 'Living Room.svg',\r\n },\r\n];\r\n\r\ninterface IconSelectorProps {\r\n icons?: {\r\n icon?: string;\r\n src?: string;\r\n href?: string;\r\n name?: ioBroker.StringOrTranslated;\r\n _id?: string;\r\n }[];\r\n onlyRooms?: boolean;\r\n onlyDevices?: boolean;\r\n onSelect?: (icon: string) => void; // one of onSelect or onChange are required\r\n onChange?: (icon: string) => void;\r\n t: Translate;\r\n lang: ioBroker.Languages;\r\n}\r\n\r\ninterface IconSelectorState {\r\n opened: boolean;\r\n names: string[];\r\n filter: string;\r\n icons: string[] | null;\r\n loading: boolean;\r\n isAnyName: boolean;\r\n}\r\n\r\nexport class IconSelector extends Component<IconSelectorProps, IconSelectorState> {\r\n constructor(props: IconSelectorProps) {\r\n super(props);\r\n\r\n this.state = {\r\n opened: false,\r\n names: [],\r\n filter: '',\r\n icons: null,\r\n loading: false,\r\n isAnyName: false,\r\n };\r\n }\r\n\r\n loadAllIcons(): void {\r\n if (this.state.loading || this.state.icons) {\r\n return;\r\n }\r\n this.setState({ loading: true }, () => {\r\n const icons: string[] = [];\r\n const names: string[] = [];\r\n\r\n if (!this.props.icons) {\r\n // load rooms\r\n let templates =\r\n this.props.onlyRooms || (!this.props.onlyRooms && !this.props.onlyDevices) ? rooms : null;\r\n\r\n if (templates) {\r\n templates.forEach(item => {\r\n if (item.name && typeof item.name === 'object') {\r\n item.name = item.name[this.props.lang] || item.name.en || item._id;\r\n }\r\n item.name = item.name || item._id;\r\n });\r\n\r\n templates = templates.filter(\r\n (item, i) =>\r\n !templates?.find(\r\n (_item, _i) => i !== _i && _item.icon === item.icon && _item.name === item.name,\r\n ),\r\n );\r\n\r\n templates.forEach((template, i) => {\r\n names[i] = template.name as string;\r\n icons[i] =\r\n `data:image/svg+xml;base64,${(roomsIcons as Record<string, string>)[template.icon.replace(/\\.svg$/, '')]}`;\r\n });\r\n }\r\n\r\n // load devices\r\n templates =\r\n this.props.onlyDevices || (!this.props.onlyRooms && !this.props.onlyDevices) ? devices : null;\r\n if (templates) {\r\n const offset = icons.length;\r\n templates &&\r\n templates.forEach(item => {\r\n if (item.name && typeof item.name === 'object') {\r\n item.name = item.name[this.props.lang] || item.name.en || item._id;\r\n }\r\n item.name = item.name || item._id;\r\n });\r\n\r\n templates = templates.filter(\r\n (item, i) =>\r\n !templates?.find(\r\n (_item, _i) => i !== _i && _item.icon === item.icon && _item.name === item.name,\r\n ),\r\n );\r\n\r\n templates.forEach((template, i) => {\r\n names[i + offset] = template.name as string;\r\n icons[i + offset] =\r\n `data:image/svg+xml;base64,${(devicesIcons as Record<string, string>)[template.icon.replace(/\\.svg$/, '')]}`;\r\n });\r\n }\r\n this.setState({\r\n icons,\r\n loading: false,\r\n names,\r\n isAnyName: !!names.find(i => i),\r\n });\r\n } else {\r\n const promises = this.props.icons.map((item, i) => {\r\n let href: string;\r\n if (typeof item === 'object') {\r\n href = item.icon || item.src || item.href || '';\r\n names[i] =\r\n typeof item.name === 'object'\r\n ? item.name[this.props.lang] || item.name.en || item._id || ''\r\n : item.name || '';\r\n if (!names[i]) {\r\n const parts = href.split('.');\r\n parts.pop();\r\n names[i] = parts[parts.length - 1];\r\n }\r\n } else {\r\n href = item;\r\n }\r\n\r\n if (href) {\r\n if (href.startsWith('data:')) {\r\n icons[i] = href;\r\n return Promise.resolve();\r\n }\r\n return Utils.getSvg(href).then(icon => (icons[i] = icon));\r\n }\r\n\r\n return Promise.resolve();\r\n });\r\n\r\n void Promise.all(promises)\r\n .catch((e: Error) => console.error(e))\r\n .then(() =>\r\n this.setState({\r\n icons,\r\n loading: false,\r\n names,\r\n isAnyName: !!names.find(i => i),\r\n }),\r\n );\r\n }\r\n });\r\n }\r\n\r\n render(): React.JSX.Element {\r\n if (this.state.loading) {\r\n return <CircularProgress />;\r\n }\r\n\r\n return (\r\n <>\r\n <Button\r\n color=\"grey\"\r\n variant=\"outlined\"\r\n title={this.props.t('ra_Select predefined icon')}\r\n onClick={() => this.setState({ opened: true }, () => this.loadAllIcons())}\r\n style={{ minWidth: 40, marginRight: 8 }}\r\n >\r\n ...\r\n </Button>\r\n {this.state.opened ? (\r\n <Dialog\r\n onClose={() => this.setState({ opened: false })}\r\n open={!0}\r\n >\r\n <DialogTitle>\r\n {this.props.t('ra_Select predefined icon')}\r\n {this.state.isAnyName ? (\r\n <TextField\r\n variant=\"standard\"\r\n margin=\"dense\"\r\n style={{ marginLeft: 20 }}\r\n value={this.state.filter}\r\n onChange={e => this.setState({ filter: e.target.value.toLowerCase() })}\r\n placeholder={this.props.t('ra_Filter')}\r\n slotProps={{\r\n input: {\r\n endAdornment: this.state.filter ? (\r\n <IconButton\r\n size=\"small\"\r\n onClick={() => this.setState({ filter: '' })}\r\n >\r\n <ClearIcon />\r\n </IconButton>\r\n ) : undefined,\r\n },\r\n }}\r\n />\r\n ) : null}\r\n </DialogTitle>\r\n <DialogContent>\r\n <div style={{ width: '100%', textAlign: 'center' }}>\r\n {this.state.icons &&\r\n this.state.icons.map((icon, i) => {\r\n if (\r\n !this.state.filter ||\r\n (this.state.names[i] &&\r\n this.state.names[i].toLowerCase().includes(this.state.filter))\r\n ) {\r\n return (\r\n <Tooltip\r\n title={this.state.names[i] || ''}\r\n key={i}\r\n slotProps={{ popper: { sx: { pointerEvents: 'none' } } }}\r\n >\r\n <IconButton\r\n onClick={() =>\r\n this.setState({ opened: false }, () => {\r\n const onApply: ((_icon: string) => void) | undefined =\r\n this.props.onSelect || this.props.onChange;\r\n if (onApply) {\r\n onApply(icon);\r\n }\r\n })\r\n }\r\n size=\"large\"\r\n >\r\n <Icon\r\n src={icon}\r\n alt={i.toString()}\r\n style={{ width: 32, height: 32, borderRadius: 5 }}\r\n />\r\n </IconButton>\r\n </Tooltip>\r\n );\r\n }\r\n\r\n return null;\r\n })}\r\n </div>\r\n </DialogContent>\r\n <DialogActions>\r\n <Button\r\n color=\"grey\"\r\n variant=\"contained\"\r\n onClick={() => this.setState({ opened: false })}\r\n startIcon={<CloseIcon />}\r\n >\r\n {this.props.t('ra_Close')}\r\n </Button>\r\n </DialogActions>\r\n </Dialog>\r\n ) : null}\r\n </>\r\n );\r\n }\r\n}\r\n"]}
|
|
1
|
+
{"version":3,"file":"IconSelector.js","sourceRoot":"./src/","sources":["Components/IconSelector.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { Component } from 'react';\n\nimport {\n Dialog,\n DialogTitle,\n DialogActions,\n DialogContent,\n Button,\n IconButton,\n TextField,\n Tooltip,\n CircularProgress,\n} from '@mui/material';\n\nimport { Close as CloseIcon, Clear as ClearIcon } from '@mui/icons-material';\n\nimport { Icon } from './Icon';\nimport { Utils } from './Utils';\nimport devicesIcons from '../assets/devices.json';\nimport roomsIcons from '../assets/rooms.json';\nimport type { Translate } from '../types';\n\n// import devices from '../assets/devices/list.json';\nconst devices: { _id: string; name: ioBroker.StringOrTranslated; icon: string }[] = [\n {\n _id: 'hood',\n name: {\n en: 'Hood',\n ru: 'Вытяжка',\n de: 'Abzugshaube',\n fr: 'Capot',\n it: 'Cappe',\n nl: 'Hood',\n pl: 'Okapy',\n pt: 'Hood',\n es: 'Campana',\n 'zh-cn': '抽油烟机',\n },\n icon: 'Hoods.svg',\n },\n {\n _id: 'alarm_system',\n name: {\n en: 'Alarm System',\n ru: 'Сигнализация',\n de: 'Alarmanlage',\n fr: \"Systèmes D'Alarme\",\n it: 'Sistemi Di Allarme',\n nl: 'Alarm Systems',\n pl: 'Systemy Alarmowe',\n pt: 'Sistemas De Alarme',\n es: 'Sistemas De Alarma',\n 'zh-cn': '报警系统',\n },\n icon: 'Alarm Systems.svg',\n },\n {\n _id: 'battery_status',\n name: {\n en: 'Battery Status',\n ru: 'Заряд батареи',\n de: 'Batteriestatus',\n fr: 'État De La Batterie',\n it: 'Stato Della Batteria',\n nl: 'Batterij Status',\n pl: 'Stan Baterii',\n pt: 'Estado Da Bateria',\n es: 'Estado De La Batería',\n 'zh-cn': '电池状态',\n },\n icon: 'Battery Status.svg',\n },\n {\n _id: 'lighting',\n name: {\n en: 'Lighting',\n ru: 'Светильник',\n de: 'Beleuchtung',\n fr: 'Éclairages',\n it: 'Illuminazione',\n nl: 'Verlichting',\n pl: 'Oprawy Oświetleniowe',\n pt: 'Iluminações',\n es: 'Iluminaciones',\n 'zh-cn': '照明',\n },\n icon: 'Lightings.svg',\n },\n {\n _id: 'shading',\n name: {\n en: 'Shading',\n ru: 'Затенение',\n de: 'Beschattungen',\n fr: 'Ombres',\n it: 'Ombreggiatura',\n nl: 'Shading',\n pl: 'Zacienienie',\n pt: 'Shading',\n es: 'Sombreado',\n 'zh-cn': '底纹',\n },\n icon: 'Shading.svg',\n },\n {\n _id: 'irrigation',\n name: {\n en: 'Irrigation',\n ru: 'Орошение',\n de: 'Bewässerung',\n fr: 'Irrigation',\n it: 'Irrigazione',\n nl: 'Irrigatie',\n pl: 'Nawadnianie',\n pt: 'Irrigação',\n es: 'Irrigación',\n 'zh-cn': '灌溉',\n },\n icon: 'Irrigation.svg',\n },\n {\n _id: 'iron',\n name: {\n en: 'Iron',\n ru: 'Утюг',\n de: 'Bügeleisen',\n fr: 'Le Fer',\n it: 'Ferro',\n nl: 'Ijzer',\n pl: 'Żelazo',\n pt: 'Ferro',\n es: 'Hierro',\n 'zh-cn': '铁',\n },\n icon: 'Iron.svg',\n },\n {\n _id: 'computer',\n name: {\n en: 'Computer',\n ru: 'Компьютер',\n de: 'Rechner',\n fr: \"L'Ordinateur\",\n it: 'Computer',\n nl: 'Computer',\n pl: 'Komputer',\n pt: 'Computador',\n es: 'Ordenador',\n 'zh-cn': '电脑',\n },\n icon: 'Computer.svg',\n },\n {\n _id: 'ceiling_spotlight',\n name: {\n en: 'Ceiling Spotlight',\n ru: 'Потолочный прожектор',\n de: 'Deckenspot',\n fr: 'Plafond Spotlight',\n it: 'Faretti A Soffitto',\n nl: 'Plafond Spotlight',\n pl: 'Reflektory Sufitowe',\n pt: 'Tecto Foco',\n es: 'Focos De Techo',\n 'zh-cn': '天花射灯',\n },\n icon: 'Ceiling Spotlights.svg',\n },\n {\n _id: 'printer',\n name: {\n en: 'Printer',\n de: 'Drucker',\n ru: 'Принтер',\n pt: 'Impressora',\n nl: 'Printer',\n fr: 'Imprimante',\n it: 'Stampante',\n es: 'Impresora',\n pl: 'Drukarka',\n 'zh-cn': '打印机',\n },\n icon: 'Printer.svg',\n },\n {\n _id: 'power_consumption',\n name: {\n en: 'Power Consumption',\n ru: 'Потребляемая мощность',\n de: 'Stromverbrauch',\n fr: \"Consommation D'Énergie\",\n it: 'Consumo Di Energia',\n nl: 'Energieverbruik',\n pl: 'Pobór Energii',\n pt: 'Consumo De Energia',\n es: 'El Consumo De Energía',\n 'zh-cn': '能量消耗',\n },\n icon: 'Power Consumption.svg',\n },\n {\n _id: 'window',\n name: {\n en: 'Window',\n ru: 'Окно',\n de: 'Fenster',\n fr: 'La Fenêtre',\n it: 'Finestra',\n nl: 'Venster',\n pl: 'Okno',\n pt: 'Janela',\n es: 'Ventana',\n 'zh-cn': '窗户',\n },\n icon: 'Window.svg',\n },\n {\n _id: 'garage_door',\n name: {\n en: 'Garage Door',\n ru: 'Гаражные Ворота',\n de: 'Garagentor',\n fr: 'Portes De Garage',\n it: 'Garage Door',\n nl: 'Garage Door',\n pl: 'Bramy Garażowe',\n pt: 'Portas De Garagem',\n es: 'Las Puertas De Garaje',\n 'zh-cn': '车库门',\n },\n icon: 'Garage Doors.svg',\n },\n {\n _id: 'hairdryer',\n name: {\n en: 'Hairdryer',\n ru: 'Фен',\n de: 'Haartrockner',\n fr: 'Sèche-Cheveux',\n it: 'Asciugacapelli',\n nl: 'Haardroger',\n pl: 'Suszarka Do Włosów',\n pt: 'Secador De Cabelo',\n es: 'Secador De Pelo',\n 'zh-cn': '电吹风',\n },\n icon: 'Hairdryer.svg',\n },\n {\n _id: 'hanging_lamp',\n name: {\n en: 'Hanging Lamp',\n ru: 'Подвесной светильник',\n de: 'Hängelampe',\n fr: 'Lampes Suspendues',\n it: 'Lampade A Sospensione',\n nl: 'Opknoping Lampen',\n pl: 'Lampy Wiszące',\n pt: 'Lâmpadas De Suspensão',\n es: 'Lámparas Colgantes',\n 'zh-cn': '挂灯',\n },\n icon: 'Hanging Lamps.svg',\n },\n {\n _id: 'doorstep',\n name: {\n en: 'Enterance',\n ru: 'Входная дверь',\n de: 'Haustür',\n fr: 'Seuil De Porte',\n it: 'Gradino Della Porta',\n nl: 'Drempel',\n pl: 'Próg',\n pt: 'Porta',\n es: 'Peldaño',\n 'zh-cn': '门阶',\n },\n icon: 'Doorstep.svg',\n },\n {\n _id: 'hot_water',\n name: {\n en: 'Hot Water',\n ru: 'Горячая вода',\n de: 'Heißwasser',\n fr: 'Eau Chaude',\n it: 'Acqua Calda',\n nl: 'Heet Water',\n pl: 'Gorąca Woda',\n pt: 'Água Quente',\n es: 'Agua Caliente',\n 'zh-cn': '热水',\n },\n icon: 'Hot Water.svg',\n },\n {\n _id: 'heating',\n name: {\n en: 'Heating',\n ru: 'Отопление',\n de: 'Heizung',\n fr: 'Chauffe-Eau',\n it: 'Riscaldatore',\n nl: 'Verwarmer',\n pl: 'Podgrzewacz',\n pt: 'Aquecedor',\n es: 'Calentador',\n 'zh-cn': '加热器',\n },\n icon: 'Heater.svg',\n },\n {\n _id: 'stove',\n name: {\n en: 'Stove',\n ru: 'Печь',\n de: 'Herd',\n fr: 'Le Fourneau',\n it: 'Stufa',\n nl: 'Fornuis',\n pl: 'Kuchenka',\n pt: 'Forno',\n es: 'Cocina',\n 'zh-cn': '火炉',\n },\n icon: 'Stove.svg',\n },\n {\n _id: 'louvre',\n name: {\n en: 'Louvre',\n ru: 'Жалюзи',\n de: 'Jalousie',\n fr: 'Persienne',\n it: 'Persiana Di Ventilazione',\n nl: 'Louvre',\n pl: 'Żaluzja',\n pt: 'Trapeira',\n es: 'Lumbrera',\n 'zh-cn': '卢浮宫',\n },\n icon: 'Louvre.svg',\n },\n {\n _id: 'coffee_maker',\n name: {\n en: 'Coffee Maker',\n ru: 'Кофеварка',\n de: 'Kaffemaschine',\n fr: 'Cafetière',\n it: 'Macchine Da Caffè',\n nl: 'Koffie Maker',\n pl: 'Ekspresy Do Kawy',\n pt: 'Cafeteira',\n es: 'Cafetera',\n 'zh-cn': '咖啡壶',\n },\n icon: 'Coffee Makers.svg',\n },\n {\n _id: 'cold_water',\n name: {\n en: 'Cold Water',\n ru: 'Холодная вода',\n de: 'Kaltwasser',\n fr: 'Eau Froide',\n it: 'Acqua Fredda',\n nl: 'Koud Water',\n pl: 'Zimna Woda',\n pt: 'Água Fria',\n es: 'Agua Fría',\n 'zh-cn': '冷水',\n },\n icon: 'Cold Water.svg',\n },\n {\n _id: 'climate',\n name: {\n en: 'Climate',\n ru: 'Климат',\n de: 'Klima',\n fr: 'Climat',\n it: 'Clima',\n nl: 'Klimaat',\n pl: 'Klimat',\n pt: 'Clima',\n es: 'Clima',\n 'zh-cn': '气候',\n },\n icon: 'Climate.svg',\n },\n {\n _id: 'speaker',\n name: {\n en: 'Speaker',\n ru: 'Звуковая система',\n de: 'Lautsprecher',\n fr: 'Orateur',\n it: 'Altoparlante',\n nl: 'Spreker',\n pl: 'Głośnik',\n pt: 'Palestrante',\n es: 'Altavoz',\n 'zh-cn': '扬声器',\n },\n icon: 'Speaker.svg',\n },\n {\n _id: 'led_strip',\n name: {\n en: 'Led Strip',\n ru: 'Светодиодная лента',\n de: 'LED Leiste',\n fr: 'Led Strip',\n it: 'Led Strip',\n nl: 'Loden Strip',\n pl: 'Pasek Ledowy',\n pt: 'Led Faixa',\n es: 'Tira Llevada',\n 'zh-cn': '灯带',\n },\n icon: 'Led Strip.svg',\n },\n {\n _id: 'light',\n name: {\n en: 'Light',\n ru: 'Свет',\n de: 'Licht',\n fr: 'Lumière',\n it: 'Leggero',\n nl: 'Licht',\n pl: 'Lekki',\n pt: 'Luz',\n es: 'Luz',\n 'zh-cn': '光',\n },\n icon: 'Light.svg',\n },\n {\n _id: 'fan',\n name: {\n en: 'Fan',\n ru: 'Вентилятор',\n de: 'Lüfter',\n fr: 'Ventilateur',\n it: 'Fan',\n nl: 'Ventilator',\n pl: 'Wentylator',\n pt: 'Ventilador',\n es: 'Ventilador',\n 'zh-cn': '扇子',\n },\n icon: 'Fan.svg',\n },\n {\n _id: 'humidity',\n name: {\n en: 'Humidity',\n ru: 'Влажность',\n de: 'Luftfeuchtigkeit',\n fr: 'Humidité',\n it: 'Umidità',\n nl: 'Vochtigheid',\n pl: 'Wilgotność',\n pt: 'Umidade',\n es: 'Humedad',\n 'zh-cn': '湿度',\n },\n icon: 'Humidity.svg',\n },\n {\n _id: 'ventilation',\n name: {\n en: 'Ventilation',\n ru: 'Вентиляция',\n de: 'Lüftung',\n fr: 'Ventilation',\n it: 'Ventilazione',\n nl: 'Ventilatie',\n pl: 'Wentylacja',\n pt: 'Ventilação',\n es: 'Ventilación',\n 'zh-cn': '通风',\n },\n icon: 'Ventilation.svg',\n },\n {\n _id: 'chandelier',\n name: {\n en: 'Chandelier',\n ru: 'Люстра',\n de: 'Kronleuchter',\n fr: 'Lustre',\n it: 'Lampadario',\n nl: 'Kroonluchter',\n pl: 'Żyrandol',\n pt: 'Lustre',\n es: 'Candelabro',\n 'zh-cn': '枝形吊灯',\n },\n icon: 'Chandelier.svg',\n },\n {\n _id: 'awning',\n name: {\n en: 'Awning',\n ru: 'Маркиза',\n de: 'Markise',\n fr: 'Auvents',\n it: 'Tende',\n nl: 'Luifels',\n pl: 'Okrycia',\n pt: 'Toldos',\n es: 'Toldos',\n 'zh-cn': '遮阳篷',\n },\n icon: 'Awnings.svg',\n },\n {\n _id: 'music',\n name: {\n en: 'Music',\n ru: 'Музыка',\n de: 'Musik',\n fr: 'Musique',\n it: 'Musica',\n nl: 'Muziek',\n pl: 'Muzyka',\n pt: 'Música',\n es: 'Música',\n 'zh-cn': '音乐',\n },\n icon: 'Music.svg',\n },\n {\n _id: 'people',\n name: {\n en: 'People',\n ru: 'Люди',\n de: 'Personen',\n fr: 'Gens',\n it: 'Persone',\n nl: 'Mensen',\n pl: 'Ludzie',\n pt: 'Pessoas',\n es: 'Personas',\n 'zh-cn': '人们',\n },\n icon: 'People.svg',\n },\n {\n _id: 'pool',\n name: {\n en: 'Pool',\n ru: 'Бассейн',\n de: 'Pool',\n fr: 'Piscine',\n it: 'Piscina',\n nl: 'Zwembad',\n pl: 'Basen',\n pt: 'Piscina',\n es: 'Piscina',\n 'zh-cn': '水池',\n },\n icon: 'Pool.svg',\n },\n {\n _id: 'pump',\n name: {\n en: 'Pump',\n ru: 'Насос',\n de: 'Pumpe',\n fr: 'Pompe',\n it: 'Pompa',\n nl: 'Pomp',\n pl: 'Pompa',\n pt: 'Bombear',\n es: 'Bomba',\n 'zh-cn': '泵',\n },\n icon: 'Pump.svg',\n },\n {\n _id: 'outdoor_blinds',\n name: {\n en: 'Outdoor Blinds',\n ru: 'Внещгте жалюзи',\n de: 'Raffstore',\n fr: 'Volets',\n it: 'Tende Da Esterni',\n nl: 'Outdoor Blinds',\n pl: 'Rolety Zewnętrzne',\n pt: 'Estores Exteriores',\n es: 'Persianas Exteriores',\n 'zh-cn': '室外百叶窗',\n },\n icon: 'Outdoor Blinds.svg',\n },\n {\n _id: 'mowing_machine',\n name: {\n en: 'Mowing Machine',\n ru: 'Газонокосилка',\n de: 'Rasenmäher',\n fr: 'Machine De Fauchage',\n it: 'Macchina Di Falciatura',\n nl: 'Maaimachine',\n pl: 'Kosiarka',\n pt: 'Roçada Máquina',\n es: 'Segadora',\n 'zh-cn': '割草机',\n },\n icon: 'Mowing Machine.svg',\n },\n {\n _id: 'receiver',\n name: {\n en: 'Receiver',\n ru: 'Приставка',\n de: 'Receiver',\n fr: 'Destinataire',\n it: 'Ricevitore',\n nl: 'Ontvanger',\n pl: 'Odbiorca',\n pt: 'Recebedor',\n es: 'Receptor',\n 'zh-cn': '接收者',\n },\n icon: 'Receiver.svg',\n },\n {\n _id: 'shutters',\n name: {\n en: 'Shutters',\n ru: 'Ставни',\n de: 'Rollladen',\n fr: 'Volets',\n it: 'Persiane',\n nl: 'Shutters',\n pl: 'Żaluzje',\n pt: 'Persianas',\n es: 'Persianas',\n 'zh-cn': '百叶窗',\n },\n icon: 'Shutters.svg',\n },\n {\n _id: 'smoke_detector',\n name: {\n en: 'Smoke detector',\n de: 'Rauchmelder',\n ru: 'Детектор дыма',\n pt: 'Detector de fumaça',\n nl: 'Rookdetector',\n fr: 'Détecteur de fumée',\n it: 'Rilevatore di fumo',\n es: 'Detector de humo',\n pl: 'Wykrywacz dymu',\n 'zh-cn': '烟雾探测器',\n },\n icon: 'SmokeDetector.svg',\n },\n {\n _id: 'lock',\n name: {\n en: 'Lock',\n ru: 'Замок',\n de: 'Schloß',\n fr: 'Fermer À Clé',\n it: 'Serratura',\n nl: 'Slot',\n pl: 'Zamek',\n pt: 'Trancar',\n es: 'Cerrar Con Llave',\n 'zh-cn': '锁',\n },\n icon: 'Lock.svg',\n },\n {\n _id: 'security',\n name: {\n en: 'Security',\n ru: 'Безопасность',\n de: 'Sicherheit',\n fr: 'Sécurité',\n it: 'Sicurezza',\n nl: 'Veiligheid',\n pl: 'Bezpieczeństwo',\n pt: 'Segurança',\n es: 'Seguridad',\n 'zh-cn': '安全',\n },\n icon: 'Security.svg',\n },\n {\n _id: 'dishwasher',\n name: {\n en: 'Dishwasher',\n ru: 'Посудомоечная машина',\n de: 'Spülmaschine',\n fr: 'Lave-Vaisselles',\n it: 'Lavastoviglie',\n nl: 'Vaatwassers',\n pl: 'Zmywarki',\n pt: 'Máquinas De Lavar Louça',\n es: 'Lavaplatos',\n 'zh-cn': '洗碗机',\n },\n icon: 'Dishwashers.svg',\n },\n {\n _id: 'vacuum_cleaner',\n name: {\n en: 'Vacuum Cleaner',\n ru: 'Пылесос',\n de: 'Staubsauger',\n fr: 'Aspirateur',\n it: 'Aspirapolvere',\n nl: 'Stofzuiger',\n pl: 'Odkurzacz',\n pt: 'Aspirador De Pó',\n es: 'Aspiradora',\n 'zh-cn': '吸尘器',\n },\n icon: 'Vacuum Cleaner.svg',\n },\n {\n _id: 'socket',\n name: {\n en: 'Socket',\n ru: 'Розетка',\n de: 'Steckdose',\n fr: 'Prise',\n it: 'Socket',\n nl: 'Socket',\n pl: 'Gniazdka',\n pt: 'Tomada',\n es: 'Zócalo',\n 'zh-cn': '套接字',\n },\n icon: 'Sockets.svg',\n },\n {\n _id: 'floor_lamp',\n name: {\n en: 'Floor Lamp',\n ru: 'Торшер',\n de: 'Stehlampe',\n fr: 'Lampes Pour Plancher',\n it: 'Lampade A Stelo',\n nl: 'Vloerlampen',\n pl: 'Lampy Podłogowe',\n pt: 'Lâmpadas Chão',\n es: 'Lámparas De Pie',\n 'zh-cn': '落地灯',\n },\n icon: 'Floor Lamps.svg',\n },\n {\n _id: 'power_consumption',\n name: {\n en: 'Power Consumption',\n ru: 'Потребляемая мощность',\n de: 'Stromverbrauch',\n fr: \"Consommation D'Énergie\",\n it: 'Consumo Di Energia',\n nl: 'Energieverbruik',\n pl: 'Pobór Energii',\n pt: 'Consumo De Energia',\n es: 'El Consumo De Energía',\n 'zh-cn': '能量消耗',\n },\n icon: 'Power Consumption.svg',\n },\n {\n _id: 'temperature_sensor',\n name: {\n en: 'Temperature Sensor',\n ru: 'Температурный датчик',\n de: 'Temperatur-Sensor',\n fr: 'Capteur De Température',\n it: 'Sensori Di Temperatura',\n nl: 'Temperatuursensor',\n pl: 'Czujniki Temperatury',\n pt: 'Sensores De Temperatura',\n es: 'Sensores De Temperatura',\n 'zh-cn': '温度传感器',\n },\n icon: 'Temperature Sensors.svg',\n },\n {\n _id: 'table_lamp',\n name: {\n en: 'Table Lamp',\n ru: 'Настольная лампа',\n de: 'Tischlampe',\n fr: 'Lampe De Chevet',\n it: 'Lampade Da Tavolo',\n nl: 'Tafellampen',\n pl: 'Lampy Stołowe',\n pt: 'Lâmpadas De Mesa',\n es: 'Lámparas De Mesa',\n 'zh-cn': '台灯',\n },\n icon: 'Table Lamps.svg',\n },\n {\n _id: 'gate',\n name: {\n en: 'Gate',\n ru: 'Ворота',\n de: 'Tor',\n fr: 'Porte',\n it: 'Gate',\n nl: 'Gate',\n pl: 'Bramy',\n pt: 'Portões',\n es: 'Puertas',\n 'zh-cn': '盖茨',\n },\n icon: 'Gates.svg',\n },\n {\n _id: 'dryer',\n name: {\n en: 'Dryer',\n ru: 'Сушилка',\n de: 'Trockner',\n fr: 'Séchoir',\n it: 'Asciugatrice',\n nl: 'Droger',\n pl: 'Suszarka',\n pt: 'Secador',\n es: 'Secadora',\n 'zh-cn': '烘干机',\n },\n icon: 'Dryer.svg',\n },\n {\n _id: 'door',\n name: {\n en: 'Door',\n ru: 'Дверь',\n de: 'Tür',\n fr: 'Des Portes',\n it: 'Porte',\n nl: 'Deuren',\n pl: 'Drzwi',\n pt: 'Portas',\n es: 'Puertas',\n 'zh-cn': '门',\n },\n icon: 'Doors.svg',\n },\n {\n _id: 'tv',\n name: {\n en: 'Tv',\n ru: 'Телевизор',\n de: 'TV',\n fr: 'La Télé',\n it: 'Tv',\n nl: 'Tv',\n pl: 'Telewizja',\n pt: 'Televisão',\n es: 'Televisor',\n 'zh-cn': '电视',\n },\n icon: 'Tv.svg',\n },\n {\n _id: 'consumption',\n name: {\n en: 'Consumption',\n ru: 'Потребление',\n de: 'Verbrauch',\n fr: 'Consommation',\n it: 'Consumo',\n nl: 'Consumptie',\n pl: 'Konsumpcja',\n pt: 'Consumo',\n es: 'Consumo',\n 'zh-cn': '消费',\n },\n icon: 'Consumption.svg',\n },\n {\n _id: 'amplifier',\n name: {\n en: 'Amplifier',\n ru: 'Усилитель звука',\n de: 'Verstärker',\n fr: 'Amplificateur',\n it: 'Amplificatore',\n nl: 'Versterker',\n pl: 'Wzmacniacz',\n pt: 'Amplificador',\n es: 'Amplificador',\n 'zh-cn': '放大器',\n },\n icon: 'Amplifier.svg',\n },\n {\n _id: 'curtains',\n name: {\n en: 'Curtains',\n ru: 'Шторы',\n de: 'Vorhänge',\n fr: 'Des Rideaux',\n it: 'Le Tende',\n nl: 'Gordijnen',\n pl: 'Zasłony',\n pt: 'Cortinas',\n es: 'Cortinas',\n 'zh-cn': '窗帘',\n },\n icon: 'Curtains.svg',\n },\n {\n _id: 'sconce',\n name: {\n en: 'Sconce',\n ru: 'Настенный светильник',\n de: 'Wandlampe',\n fr: 'Sconce',\n it: 'Sconce',\n nl: 'Sconce',\n pl: 'Kinkiety',\n pt: 'Arandelas',\n es: 'Los Apliques',\n 'zh-cn': '壁灯',\n },\n icon: 'Sconces.svg',\n },\n {\n _id: 'washing_machine',\n name: {\n en: 'Washing Machine',\n ru: 'Стиральная машина',\n de: 'Waschmaschine',\n fr: 'Machines À Laver',\n it: 'Lavatrici',\n nl: 'Wasmachines',\n pl: 'Pralki',\n pt: 'Máquinas De Lavar Roupas',\n es: 'Lavadoras',\n 'zh-cn': '洗衣机',\n },\n icon: 'Washing Machines.svg',\n },\n {\n _id: 'water',\n name: {\n en: 'Water',\n ru: 'Вода',\n de: 'Wasser',\n fr: \"L'Eau\",\n it: 'Acqua',\n nl: 'Water',\n pl: 'Woda',\n pt: 'Água',\n es: 'Agua',\n 'zh-cn': '水',\n },\n icon: 'Water.svg',\n },\n {\n _id: 'water_heater',\n name: {\n en: 'Water Heater',\n ru: 'Нагреватель воды',\n de: 'Wasserkocher',\n fr: 'Chauffe-Eau',\n it: 'Scaldabagno',\n nl: 'Waterkoker',\n pl: 'Podgrzewacz Wody',\n pt: 'Aquecedor De Água',\n es: 'Calentador De Agua',\n 'zh-cn': '热水器',\n },\n icon: 'Water Heater.svg',\n },\n {\n _id: 'water_consumption',\n name: {\n en: 'Water Consumption',\n ru: 'Потребление воды',\n de: 'Wasserverbrauch',\n fr: \"Consommation D'Eau\",\n it: \"Consumo D'Acqua\",\n nl: 'Waterverbruik',\n pl: 'Konsumpcja Wody',\n pt: 'Consumo De Água',\n es: 'Consumo De Agua',\n 'zh-cn': '耗水量',\n },\n icon: 'Water Consumption.svg',\n },\n {\n _id: 'weather',\n name: {\n en: 'Weather',\n ru: 'Погода',\n de: 'Wetter',\n fr: 'La Météo',\n it: 'Tempo Metereologico',\n nl: 'Weer',\n pl: 'Pogoda',\n pt: 'Clima',\n es: 'Tiempo',\n 'zh-cn': '天气',\n },\n icon: 'Weather.svg',\n },\n];\n\n// import rooms from '../assets/rooms/list.json';\nconst rooms: { _id: string; name: ioBroker.StringOrTranslated; icon: string }[] = [\n {\n _id: 'storeroom',\n name: {\n en: 'Storeroom',\n ru: 'Кладовая',\n de: 'Abstellraum',\n fr: 'Débarras',\n it: 'Dispensa',\n nl: 'Bergplaats',\n pl: 'Magazyn',\n pt: 'Despensa',\n es: 'Trastero',\n 'zh-cn': '库房',\n },\n icon: 'Storeroom.svg',\n },\n {\n _id: 'second_floor',\n name: {\n en: 'Second floor',\n ru: 'Второй этаж',\n de: 'Erster OG',\n pt: 'Primeiro andar',\n nl: 'Eerste verdieping',\n fr: 'Premier étage',\n it: 'Primo piano',\n es: 'Primer piso',\n pl: 'Pierwsze piętro',\n 'zh-cn': '第一层',\n },\n icon: 'Second Floor.svg',\n },\n {\n _id: 'dressing_room',\n name: {\n en: 'Dressing Room',\n ru: 'Гардеробная',\n de: 'Ankleide',\n fr: 'Vestiaire',\n it: 'Camerino',\n nl: 'Kleedkamer',\n pl: 'Przebieralnia',\n pt: 'Provador',\n es: 'Vestidor',\n 'zh-cn': '更衣室',\n },\n icon: 'Dressing Room.svg',\n },\n {\n _id: 'workspace',\n name: {\n en: 'Workspace',\n ru: 'Рабочая Среда',\n de: 'Arbeitszimmer',\n fr: 'Espace De Travail',\n it: 'Area Di Lavoro',\n nl: 'Workspace',\n pl: 'Workspace',\n pt: 'Área De Trabalho',\n es: 'Espacio De Trabajo',\n 'zh-cn': '工作区',\n },\n icon: 'Workspace.svg',\n },\n {\n _id: 'driveway',\n name: {\n en: 'Driveway',\n ru: 'Дорога',\n de: 'Auffahrt',\n fr: 'Allée',\n it: 'Viale',\n nl: 'Pad',\n pl: 'Podjazd',\n pt: 'Entrada Da Garagem',\n es: 'Entrada De Coches',\n 'zh-cn': '车道',\n },\n icon: 'Driveway.svg',\n },\n {\n _id: 'outdoors',\n name: {\n en: 'Outdoors',\n ru: 'На Улице',\n de: 'Außenbereich',\n fr: 'En Plein Air',\n it: \"All'Aperto\",\n nl: 'Buitenshuis',\n pl: 'Na Dworze',\n pt: 'Ao Ar Livre',\n es: 'Al Aire Libre',\n 'zh-cn': '户外',\n },\n icon: 'Outdoors.svg',\n },\n {\n _id: 'bathroom',\n name: {\n en: 'Bathroom',\n ru: 'Ванная Комната',\n de: 'Badezimmer',\n fr: 'Salle De Bains',\n it: 'Bagno',\n nl: 'Badkamer',\n pl: 'Łazienka',\n pt: 'Banheiro',\n es: 'Baño',\n 'zh-cn': '浴室',\n },\n icon: 'Bathroom.svg',\n },\n {\n _id: 'balcony',\n name: {\n en: 'Balcony',\n ru: 'Балкон',\n de: 'Balkon',\n fr: 'Balcon',\n it: 'Balcone',\n nl: 'Balkon',\n pl: 'Balkon',\n pt: 'Sacada',\n es: 'Balcón',\n 'zh-cn': '阳台',\n },\n icon: 'Balcony.svg',\n },\n {\n _id: 'office',\n name: {\n en: 'Office',\n ru: 'Офис',\n de: 'Office',\n fr: 'Bureau',\n it: 'Ufficio',\n nl: 'Kantoor',\n pl: 'Gabinet',\n pt: 'Escritório',\n es: 'Oficina',\n 'zh-cn': '办公室',\n },\n icon: 'Office.svg',\n },\n {\n _id: 'carport',\n name: {\n en: 'Carport',\n ru: 'Навес',\n de: 'Carport',\n fr: 'Carport',\n it: 'Posto Auto Coperto',\n nl: 'Carport',\n pl: 'Wiata',\n pt: 'Telheiro',\n es: 'Cochera',\n 'zh-cn': '车棚',\n },\n icon: 'Carport.svg',\n },\n {\n _id: 'attic',\n name: {\n en: 'Attic',\n ru: 'Чердак',\n de: 'Dachgeschoss',\n fr: 'Grenier',\n it: 'Attico',\n nl: 'Zolder',\n pl: 'Poddasze',\n pt: 'Sótão',\n es: 'Ático',\n 'zh-cn': '阁楼',\n },\n icon: 'Attic.svg',\n },\n {\n _id: 'hall',\n name: {\n en: 'Hall',\n ru: 'Зал',\n de: 'Diele',\n fr: 'Salle',\n it: 'Sala',\n nl: 'Hal',\n pl: 'Sala',\n pt: 'Corredor',\n es: 'Sala',\n 'zh-cn': '大厅',\n },\n icon: 'Hall.svg',\n },\n {\n _id: 'entrance',\n name: {\n en: 'Entrance',\n ru: 'Вход',\n de: 'Eingang',\n fr: 'Entrée',\n it: 'Ingresso',\n nl: 'Ingang',\n pl: 'Wejście',\n pt: 'Entrada',\n es: 'Entrada',\n 'zh-cn': '入口',\n },\n icon: 'Entrance.svg',\n },\n {\n _id: 'ground_floor',\n name: {\n en: 'Ground Floor',\n ru: 'Первый Этаж',\n de: 'Erdgeschoss',\n fr: 'Rez-De-Chaussée',\n it: 'Piano Terra',\n nl: 'Begane Grond',\n pl: 'Parter',\n pt: 'Térreo',\n es: 'Planta Baja',\n 'zh-cn': '一楼',\n },\n icon: 'Ground Floor.svg',\n },\n {\n _id: 'dining_area',\n name: {\n en: 'Dining Area',\n ru: 'Столовая',\n de: 'Essbereich',\n fr: 'Salle À Manger',\n it: 'Zona Pranzo',\n nl: 'Eethoek',\n pl: 'Jadalnia',\n pt: 'Área De Refeições',\n es: 'Comedor',\n 'zh-cn': '用餐区',\n },\n icon: 'Dining Area.svg',\n },\n {\n _id: 'dining_room',\n name: {\n en: 'Dining Room',\n ru: 'Столовая',\n de: 'Esszimmer',\n fr: 'Salle À Manger',\n it: 'Sala Da Pranzo',\n nl: 'Eetkamer',\n pl: 'Jadalnia',\n pt: 'Sala De Jantar',\n es: 'Comedor',\n 'zh-cn': '饭厅',\n },\n icon: 'Dining Room.svg',\n },\n {\n _id: 'gym',\n name: {\n en: 'Gym',\n ru: 'Спортзал',\n de: 'Fitnessraum',\n fr: 'Gym',\n it: 'Palestra',\n nl: 'Sportschool',\n pl: 'Siłownia',\n pt: 'Ginásio',\n es: 'Gimnasio',\n 'zh-cn': '健身房',\n },\n icon: 'Gym.svg',\n },\n {\n _id: 'gallery',\n name: {\n en: 'Gallery',\n ru: 'Галерея',\n de: 'Galerie',\n fr: 'Galerie',\n it: 'Galleria',\n nl: 'Galerij',\n pl: 'Galeria',\n pt: 'Galeria',\n es: 'Galería',\n 'zh-cn': '画廊',\n },\n icon: 'Gallery.svg',\n },\n {\n _id: 'garage',\n name: {\n en: 'Garage',\n ru: 'Гараж',\n de: 'Garage',\n fr: 'Garage',\n it: 'Box Auto',\n nl: 'Garage',\n pl: 'Garaż',\n pt: 'Garagem',\n es: 'Garaje',\n 'zh-cn': '车库',\n },\n icon: 'Garage.svg',\n },\n {\n _id: 'wardrobe',\n name: {\n en: 'Wardrobe',\n ru: 'Гардероб',\n de: 'Garderobe',\n fr: 'Penderie',\n it: 'Armadio',\n nl: 'Garderobe',\n pl: 'Szafa',\n pt: 'Guarda Roupa',\n es: 'Armario',\n 'zh-cn': '衣柜',\n },\n icon: 'Wardrobe.svg',\n },\n {\n _id: 'garden',\n name: {\n en: 'Garden',\n ru: 'Сад',\n de: 'Garten',\n fr: 'Jardin',\n it: 'Giardino',\n nl: 'Tuin',\n pl: 'Ogród',\n pt: 'Jardim',\n es: 'Jardín',\n 'zh-cn': '花园',\n },\n icon: 'Garden.svg',\n },\n {\n _id: 'summer_house',\n name: {\n en: 'Summer House',\n ru: 'Дача',\n de: 'Gartenhaus',\n fr: \"Maison D'Été\",\n it: 'Casa Estiva',\n nl: 'Zomerhuis',\n pl: 'Domek Letniskowy',\n pt: 'Summer House',\n es: 'Casa De Verano',\n 'zh-cn': '凉亭',\n },\n icon: 'Summer House.svg',\n },\n {\n _id: 'guest_bathroom',\n name: {\n en: 'Guest Bathroom',\n ru: 'Гостевая Комната',\n de: 'Gäste-WC',\n fr: 'Salle De Bains Invité',\n it: 'Guest Bathroom',\n nl: 'Gastenbadkamer',\n pl: 'Łazienka Gościnna',\n pt: 'Banheiro De Hóspedes',\n es: 'Baño De Visitas',\n 'zh-cn': '客用浴室',\n },\n icon: 'Guest Bathroom.svg',\n },\n {\n _id: 'guest_room',\n name: {\n en: 'Guest Room',\n ru: 'Гостевая Комната',\n de: 'Gästezimmer',\n fr: \"Chambre D'Amis\",\n it: 'Stanza Degli Ospiti',\n nl: 'Guest Room',\n pl: 'Pokój Gościnny',\n pt: 'Quarto De Hóspedes',\n es: 'Habitación De Huéspedes',\n 'zh-cn': '客房',\n },\n icon: 'Guest Room.svg',\n },\n {\n _id: 'laundry_room',\n name: {\n en: 'Laundry Room',\n ru: 'Прачечная',\n de: 'Hauswirtschaftsraum',\n fr: 'Buanderie',\n it: 'Lavanderia',\n nl: 'Wasruimte',\n pl: 'Pralnia',\n pt: 'Lavandaria',\n es: 'Cuarto De Lavado',\n 'zh-cn': '洗衣房',\n },\n icon: 'Laundry Room.svg',\n },\n {\n _id: 'home_theater',\n name: {\n en: 'Home Theater',\n ru: 'Домашний Театр',\n de: 'Heimkino',\n fr: 'Cinéma Maison',\n it: 'Home Theater',\n nl: 'Thuisbioscoop',\n pl: 'Kino Domowe',\n pt: 'Cinema Em Casa',\n es: 'Cine En Casa',\n 'zh-cn': '家庭电影院',\n },\n icon: 'Home Theater.svg',\n },\n {\n _id: 'boiler_room',\n name: {\n en: 'Boiler Room',\n ru: 'Бойлерная',\n de: 'Heizungsraum',\n fr: 'Chaufferie',\n it: 'Locale Caldaia',\n nl: 'Boiler Room',\n pl: 'Kotłownia',\n pt: 'Sala Da Caldeira',\n es: 'Sala De Calderas',\n 'zh-cn': '锅炉房',\n },\n icon: 'Boiler Room.svg',\n },\n {\n _id: 'chamber',\n name: {\n en: 'Chamber',\n ru: 'Камера',\n de: 'Kammer',\n fr: 'Chambre',\n it: 'Camera',\n nl: 'Kamer',\n pl: 'Izba',\n pt: 'Câmara',\n es: 'Cámara',\n 'zh-cn': '商会',\n },\n icon: 'Chamber.svg',\n },\n {\n _id: 'basement,_cellar',\n name: {\n en: 'Basement, Cellar',\n ru: 'Подвал, Погреб',\n de: 'Keller',\n fr: 'Sous-Sol, Cave',\n it: 'Taverna, Cantina',\n nl: 'Kelder, Kelder',\n pl: 'Piwnica, Piwnica',\n pt: 'Porão, Adega',\n es: 'Sótano, Bodega',\n 'zh-cn': '地下室,地窖',\n },\n icon: 'Basement.svg',\n },\n {\n _id: 'nursery',\n name: {\n en: 'Nursery',\n ru: 'Питомник',\n de: 'Kinderzimmer',\n fr: 'Garderie',\n it: 'Asilo',\n nl: 'Kinderkamer',\n pl: 'Żłobek',\n pt: 'Berçário',\n es: 'Guardería',\n 'zh-cn': '苗圃',\n },\n icon: 'Nursery.svg',\n },\n {\n _id: 'corridor',\n name: {\n en: 'Corridor',\n ru: 'Коридор',\n de: 'Korridor',\n fr: 'Couloir',\n it: 'Corridoio',\n nl: 'Gang',\n pl: 'Korytarz',\n pt: 'Corredor',\n es: 'Corredor',\n 'zh-cn': '走廊',\n },\n icon: 'Corridor.svg',\n },\n {\n _id: 'kitchen',\n name: {\n en: 'Kitchen',\n ru: 'Кухня',\n de: 'Küche',\n fr: 'Cuisine',\n it: 'Cucina',\n nl: 'Keuken',\n pl: 'Kuchnia',\n pt: 'Cozinha',\n es: 'Cocina',\n 'zh-cn': '厨房',\n },\n icon: 'Kitchen.svg',\n },\n {\n _id: 'upstairs',\n name: {\n en: 'Upstairs',\n ru: 'Вверх По Лестнице',\n de: 'Obergeschoss',\n fr: 'En Haut',\n it: 'Di Sopra',\n nl: 'Boven',\n pl: 'Na Górę',\n pt: 'Andar De Cima',\n es: 'Piso Superior',\n 'zh-cn': '楼上',\n },\n icon: 'Upstairs.svg',\n },\n {\n _id: 'office',\n name: {\n en: 'Office',\n ru: 'Офис',\n de: 'Office',\n fr: 'Bureau',\n it: 'Ufficio',\n nl: 'Kantoor',\n pl: 'Gabinet',\n pt: 'Escritório',\n es: 'Oficina',\n 'zh-cn': '办公室',\n },\n icon: 'Office.svg',\n },\n {\n _id: 'pool',\n name: {\n en: 'Pool',\n ru: 'Бассейн',\n de: 'Pool',\n fr: 'Piscine',\n it: 'Piscina',\n nl: 'Zwembad',\n pl: 'Basen',\n pt: 'Piscina',\n es: 'Piscina',\n 'zh-cn': '水池',\n },\n icon: 'Pool.svg',\n },\n {\n _id: 'rear_wall',\n name: {\n en: 'Rear Wall',\n ru: 'Задняя Стенка',\n de: 'Rückwand',\n fr: 'Paroi Arrière',\n it: 'Parete Posteriore',\n nl: 'Achterwand',\n pl: 'Tylna Ściana',\n pt: 'Parede Traseira',\n es: 'Pared Posterior',\n 'zh-cn': '后墙',\n },\n icon: 'Rear Wall.svg',\n },\n {\n _id: 'barn',\n name: {\n en: 'Barn',\n ru: 'Амбар',\n de: 'Scheune',\n fr: 'Grange',\n it: 'Fienile',\n nl: 'Schuur',\n pl: 'Stodoła',\n pt: 'Celeiro',\n es: 'Granero',\n 'zh-cn': '谷仓',\n },\n icon: 'Barn.svg',\n },\n {\n _id: 'sleeping_area',\n name: {\n en: 'Sleeping Area',\n ru: 'Спальное Место',\n de: 'Schlafbereich',\n fr: 'Coin Montagne',\n it: 'Area Sleeping',\n nl: 'Sleeping Area',\n pl: 'Powierzchnia Spania',\n pt: 'Sleeping Area',\n es: 'Área De Dormir',\n 'zh-cn': '睡眠区',\n },\n icon: 'Sleeping Area.svg',\n },\n {\n _id: 'bedroom',\n name: {\n en: 'Bedroom',\n ru: 'Спальная Комната',\n de: 'Schlafzimmer',\n fr: 'Chambre',\n it: 'Camera Da Letto',\n nl: 'Slaapkamer',\n pl: 'Sypialnia',\n pt: 'Quarto',\n es: 'Cuarto',\n 'zh-cn': '卧室',\n },\n icon: 'Bedroom.svg',\n },\n {\n _id: 'shed',\n name: {\n en: 'Shed',\n ru: 'Сбрасывать',\n de: 'Schuppen',\n fr: 'Hangar',\n it: 'Capannone',\n nl: 'Schuur',\n pl: 'Budka',\n pt: 'Cabana',\n es: 'Cobertizo',\n 'zh-cn': '棚',\n },\n icon: 'Shed.svg',\n },\n {\n _id: 'swimming_pool',\n name: {\n en: 'Swimming Pool',\n ru: 'Плавательный Бассейн',\n de: 'Schwimmbad',\n fr: 'Piscine',\n it: 'Piscina',\n nl: 'Zwembad',\n pl: 'Basen',\n pt: 'Piscina',\n es: 'Piscina',\n 'zh-cn': '游泳池',\n },\n icon: 'Swimming Pool.svg',\n },\n {\n _id: 'dining',\n name: {\n en: 'Dining',\n ru: 'Обеденный',\n de: 'Speis',\n fr: 'À Manger',\n it: 'Cenare',\n nl: 'Dining',\n pl: 'Jadalnia',\n pt: 'Jantar',\n es: 'Comida',\n 'zh-cn': '用餐',\n },\n icon: 'Dining.svg',\n },\n {\n _id: 'playroom',\n name: {\n en: 'Playroom',\n ru: 'Игровая Комната',\n de: 'Spielzimmer',\n fr: 'Salle De Jeux',\n it: 'Stanza Dei Giochi',\n nl: 'Speelkamer',\n pl: 'Pokój Zabaw',\n pt: 'Sala De Jogos',\n es: 'Cuarto De Jugar',\n 'zh-cn': '游戏室',\n },\n icon: 'Playroom.svg',\n },\n {\n _id: 'stairway',\n name: {\n en: 'Stairway',\n ru: 'Лестница',\n de: 'Treppe',\n fr: 'Escalier',\n it: 'Scala',\n nl: 'Trap',\n pl: 'Klatka Schodowa',\n pt: 'Escada',\n es: 'Escalera',\n 'zh-cn': '楼梯',\n },\n icon: 'Stairway.svg',\n },\n {\n _id: 'equipment_room',\n name: {\n en: 'Equipment Room',\n ru: 'Оборудование Номера',\n de: 'Technikraum',\n fr: \"Salle D'Équipement\",\n it: 'Stanza Degli Attrezzi',\n nl: 'Technische Ruimte',\n pl: 'Wyposażenie Pokoi',\n pt: 'Sala De Equipamentos',\n es: 'Cuarto De Equipos',\n 'zh-cn': '机房',\n },\n icon: 'Equipment Room.svg',\n },\n {\n _id: 'terrace',\n name: {\n en: 'Terrace',\n ru: 'Терраса',\n de: 'Terrasse',\n fr: 'Terrasse',\n it: 'Terrazza',\n nl: 'Terras',\n pl: 'Taras',\n pt: 'Terraço',\n es: 'Terraza',\n 'zh-cn': '阳台',\n },\n icon: 'Terrace.svg',\n },\n {\n _id: 'toilet',\n name: {\n en: 'Toilet',\n ru: 'Туалет',\n de: 'Toilette',\n fr: 'Toilette',\n it: 'Gabinetto',\n nl: 'Toilet',\n pl: 'Toaleta',\n pt: 'Banheiro',\n es: 'Inodoro',\n 'zh-cn': '洗手间',\n },\n icon: 'Toilet.svg',\n },\n {\n _id: 'stairwell',\n name: {\n en: 'Stairwell',\n ru: 'Лестничная клетка',\n de: 'Treppenhaus',\n fr: \"Cage D'Escalier\",\n it: 'Tromba Delle Scale',\n nl: 'Trappenhuis',\n pl: 'Klatka Schodowa',\n pt: 'Caixa De Escada',\n es: 'Hueco De Escalera',\n 'zh-cn': '楼梯间',\n },\n icon: 'Stairwell.svg',\n },\n {\n _id: 'locker_room',\n name: {\n en: 'Locker Room',\n ru: 'Камера Хранения',\n de: 'Umkleideraum',\n fr: 'Vestiaire',\n it: 'Spogliatoio',\n nl: 'Kleedkamer',\n pl: 'Szatnia',\n pt: 'Vestiário',\n es: 'Vestuario',\n 'zh-cn': '更衣室',\n },\n icon: 'Locker Room.svg',\n },\n {\n _id: 'basement',\n name: {\n en: 'Basement',\n ru: 'Подвал',\n de: 'Untergeschoss',\n fr: 'Sous-Sol',\n it: 'Seminterrato',\n nl: 'Kelder',\n pl: 'Piwnica',\n pt: 'Porão',\n es: 'Sótano',\n 'zh-cn': '地下室',\n },\n icon: 'Basement.svg',\n },\n {\n _id: 'front_yard',\n name: {\n en: 'Front Yard',\n ru: 'Передний Двор',\n de: 'Vorgarten',\n fr: 'Front Yard',\n it: 'Cortile',\n nl: 'Voortuin',\n pl: 'Podwórko',\n pt: 'Jardim Da Frente',\n es: 'Patio Delantero',\n 'zh-cn': '前院',\n },\n icon: 'Front Yard.svg',\n },\n {\n _id: 'anteroom',\n name: {\n en: 'Anteroom',\n ru: 'Передняя',\n de: 'Vorraum',\n fr: 'Antichambre',\n it: 'Anticamera',\n nl: 'Voorkamer',\n pl: 'Przedpokój',\n pt: 'Ante-Sala',\n es: 'Antesala',\n 'zh-cn': '接待室',\n },\n icon: 'Anteroom.svg',\n },\n {\n _id: 'washroom',\n name: {\n en: 'Washroom',\n ru: 'Уборная',\n de: 'Waschraum',\n fr: 'Toilettes',\n it: 'Bagno',\n nl: 'Waskamer',\n pl: 'Umywalnia',\n pt: 'Banheiro',\n es: 'Baño',\n 'zh-cn': '卫生间',\n },\n icon: 'Washroom.svg',\n },\n {\n _id: 'wc',\n name: {\n en: 'Wc',\n ru: 'Туалет',\n de: 'WC',\n fr: 'Toilettes',\n it: 'Bagno',\n nl: 'Wc',\n pl: 'Toaleta',\n pt: 'Banheiro',\n es: 'Wc',\n 'zh-cn': '厕所',\n },\n icon: 'Wc.svg',\n },\n {\n _id: 'workshop',\n name: {\n en: 'Workshop',\n ru: 'Мастерская',\n de: 'Werkstatt',\n fr: 'Atelier',\n it: 'Laboratorio',\n nl: 'Werkplaats',\n pl: 'Warsztat',\n pt: 'Oficina',\n es: 'Taller',\n 'zh-cn': '作坊',\n },\n icon: 'Workshop.svg',\n },\n {\n _id: 'windscreen',\n name: {\n en: 'Windscreen',\n ru: 'Ветровое Стекло',\n de: 'Windfang',\n fr: 'Pare-Brise',\n it: 'Parabrezza',\n nl: 'Voorruit',\n pl: 'Szyba Przednia',\n pt: 'Pára-Brisas',\n es: 'Parabrisas',\n 'zh-cn': '风档',\n },\n icon: 'Windscreen.svg',\n },\n {\n _id: 'living_area',\n name: {\n en: 'Living Area',\n ru: 'Жилая Площадь',\n de: 'Wohnbereich',\n fr: 'Salon',\n it: 'Zona Giorno',\n nl: 'Living Area',\n pl: 'Powierzchnia Mieszkalna',\n pt: 'Sala-De-Estar',\n es: 'Sala De Estar',\n 'zh-cn': '生活区域',\n },\n icon: 'Living Area.svg',\n },\n {\n _id: 'living_room',\n name: {\n en: 'Living Room',\n ru: 'Гостинная',\n de: 'Wohnzimmer',\n fr: 'Le Salon',\n it: 'Soggiorno',\n nl: 'Woonkamer',\n pl: 'Salon',\n pt: 'Sala De Estar',\n es: 'Sala De Estar',\n 'zh-cn': '客厅',\n },\n icon: 'Living Room.svg',\n },\n {\n _id: 'living_room',\n name: {\n en: 'Living Room',\n ru: 'Гостинная',\n de: 'Wohnzimmer',\n fr: 'Le Salon',\n it: 'Soggiorno',\n nl: 'Woonkamer',\n pl: 'Salon',\n pt: 'Sala De Estar',\n es: 'Sala De Estar',\n 'zh-cn': '客厅',\n },\n icon: 'Living Room.svg',\n },\n];\n\ninterface IconSelectorProps {\n icons?: {\n icon?: string;\n src?: string;\n href?: string;\n name?: ioBroker.StringOrTranslated;\n _id?: string;\n }[];\n onlyRooms?: boolean;\n onlyDevices?: boolean;\n onSelect?: (icon: string) => void; // one of onSelect or onChange are required\n onChange?: (icon: string) => void;\n t: Translate;\n lang: ioBroker.Languages;\n}\n\ninterface IconSelectorState {\n opened: boolean;\n names: string[];\n filter: string;\n icons: string[] | null;\n loading: boolean;\n isAnyName: boolean;\n}\n\nexport class IconSelector extends Component<IconSelectorProps, IconSelectorState> {\n constructor(props: IconSelectorProps) {\n super(props);\n\n this.state = {\n opened: false,\n names: [],\n filter: '',\n icons: null,\n loading: false,\n isAnyName: false,\n };\n }\n\n loadAllIcons(): void {\n if (this.state.loading || this.state.icons) {\n return;\n }\n this.setState({ loading: true }, () => {\n const icons: string[] = [];\n const names: string[] = [];\n\n if (!this.props.icons) {\n // load rooms\n let templates =\n this.props.onlyRooms || (!this.props.onlyRooms && !this.props.onlyDevices) ? rooms : null;\n\n if (templates) {\n templates.forEach(item => {\n if (item.name && typeof item.name === 'object') {\n item.name = item.name[this.props.lang] || item.name.en || item._id;\n }\n item.name = item.name || item._id;\n });\n\n templates = templates.filter(\n (item, i) =>\n !templates?.find(\n (_item, _i) => i !== _i && _item.icon === item.icon && _item.name === item.name,\n ),\n );\n\n templates.forEach((template, i) => {\n names[i] = template.name as string;\n icons[i] =\n `data:image/svg+xml;base64,${(roomsIcons as Record<string, string>)[template.icon.replace(/\\.svg$/, '')]}`;\n });\n }\n\n // load devices\n templates =\n this.props.onlyDevices || (!this.props.onlyRooms && !this.props.onlyDevices) ? devices : null;\n if (templates) {\n const offset = icons.length;\n templates &&\n templates.forEach(item => {\n if (item.name && typeof item.name === 'object') {\n item.name = item.name[this.props.lang] || item.name.en || item._id;\n }\n item.name = item.name || item._id;\n });\n\n templates = templates.filter(\n (item, i) =>\n !templates?.find(\n (_item, _i) => i !== _i && _item.icon === item.icon && _item.name === item.name,\n ),\n );\n\n templates.forEach((template, i) => {\n names[i + offset] = template.name as string;\n icons[i + offset] =\n `data:image/svg+xml;base64,${(devicesIcons as Record<string, string>)[template.icon.replace(/\\.svg$/, '')]}`;\n });\n }\n this.setState({\n icons,\n loading: false,\n names,\n isAnyName: !!names.find(i => i),\n });\n } else {\n const promises = this.props.icons.map((item, i) => {\n let href: string;\n if (typeof item === 'object') {\n href = item.icon || item.src || item.href || '';\n names[i] =\n typeof item.name === 'object'\n ? item.name[this.props.lang] || item.name.en || item._id || ''\n : item.name || '';\n if (!names[i]) {\n const parts = href.split('.');\n parts.pop();\n names[i] = parts[parts.length - 1];\n }\n } else {\n href = item;\n }\n\n if (href) {\n if (href.startsWith('data:')) {\n icons[i] = href;\n return Promise.resolve();\n }\n return Utils.getSvg(href).then(icon => (icons[i] = icon));\n }\n\n return Promise.resolve();\n });\n\n void Promise.all(promises)\n .catch((e: Error) => console.error(e))\n .then(() =>\n this.setState({\n icons,\n loading: false,\n names,\n isAnyName: !!names.find(i => i),\n }),\n );\n }\n });\n }\n\n render(): React.JSX.Element {\n if (this.state.loading) {\n return <CircularProgress />;\n }\n\n return (\n <>\n <Button\n color=\"grey\"\n variant=\"outlined\"\n title={this.props.t('ra_Select predefined icon')}\n onClick={() => this.setState({ opened: true }, () => this.loadAllIcons())}\n style={{ minWidth: 40, marginRight: 8 }}\n >\n ...\n </Button>\n {this.state.opened ? (\n <Dialog\n onClose={() => this.setState({ opened: false })}\n open={!0}\n >\n <DialogTitle>\n {this.props.t('ra_Select predefined icon')}\n {this.state.isAnyName ? (\n <TextField\n variant=\"standard\"\n margin=\"dense\"\n style={{ marginLeft: 20 }}\n value={this.state.filter}\n onChange={e => this.setState({ filter: e.target.value.toLowerCase() })}\n placeholder={this.props.t('ra_Filter')}\n slotProps={{\n input: {\n endAdornment: this.state.filter ? (\n <IconButton\n size=\"small\"\n onClick={() => this.setState({ filter: '' })}\n >\n <ClearIcon />\n </IconButton>\n ) : undefined,\n },\n }}\n />\n ) : null}\n </DialogTitle>\n <DialogContent>\n <div style={{ width: '100%', textAlign: 'center' }}>\n {this.state.icons &&\n this.state.icons.map((icon, i) => {\n if (\n !this.state.filter ||\n (this.state.names[i] &&\n this.state.names[i].toLowerCase().includes(this.state.filter))\n ) {\n return (\n <Tooltip\n title={this.state.names[i] || ''}\n key={i}\n slotProps={{ popper: { sx: { pointerEvents: 'none' } } }}\n >\n <IconButton\n onClick={() =>\n this.setState({ opened: false }, () => {\n const onApply: ((_icon: string) => void) | undefined =\n this.props.onSelect || this.props.onChange;\n if (onApply) {\n onApply(icon);\n }\n })\n }\n size=\"large\"\n >\n <Icon\n src={icon}\n alt={i.toString()}\n style={{ width: 32, height: 32, borderRadius: 5 }}\n />\n </IconButton>\n </Tooltip>\n );\n }\n\n return null;\n })}\n </div>\n </DialogContent>\n <DialogActions>\n <Button\n color=\"grey\"\n variant=\"contained\"\n onClick={() => this.setState({ opened: false })}\n startIcon={<CloseIcon />}\n >\n {this.props.t('ra_Close')}\n </Button>\n </DialogActions>\n </Dialog>\n ) : null}\n </>\n );\n }\n}\n"]}
|