From e49f23ff652afd40198484a56b4eeb32ca0d9ea0 Mon Sep 17 00:00:00 2001 From: estevez Date: Sun, 16 Sep 2018 14:58:21 +0300 Subject: [PATCH] [#24, #33, #36] UI building improvements. Fetch bugfix --- lib/data_model.dart | 2897 ++++++++++++++++++++++++++++++++++++++++++- lib/main.dart | 160 ++- 2 files changed, 2968 insertions(+), 89 deletions(-) diff --git a/lib/data_model.dart b/lib/data_model.dart index 1f218a8..c60c61c 100644 --- a/lib/data_model.dart +++ b/lib/data_model.dart @@ -13,7 +13,7 @@ class HassioDataModel { Completer _fetchCompleter; Completer _statesCompleter; Completer _servicesCompleter; - Map _icons = { + Map _defaultIcons = { "light": 0xf335, "switch": 0xf241, "binary_sensor": 0xf130, @@ -36,12 +36,16 @@ class HassioDataModel { } Future fetch() { - _fetchCompleter = new Completer(); - _reConnectSocket().then((r) { - _getData(); - }).catchError((e){ - _fetchCompleter.completeError(e); - }); + if ((_fetchCompleter != null) && (!_fetchCompleter.isCompleted)) { + debugPrint("Previous fetch is not complited"); + } else { + _fetchCompleter = new Completer(); + _reConnectSocket().then((r) { + _getData(); + }).catchError((e) { + _fetchCompleter.completeError(e); + }); + } return _fetchCompleter.future; } @@ -71,8 +75,6 @@ class HassioDataModel { }).catchError((e) { _fetchCompleter.completeError(e); }); - - } _handleMessage(Completer connectionCompleter, String message) { @@ -163,6 +165,7 @@ class HassioDataModel { void _parseEntities(List data) async { debugPrint("Parsing ${data.length} Home Assistant entities"); + List uiGroups = []; data.forEach((entity) { var composedEntity = Map.from(entity); String entityDomain = entity["entity_id"].split(".")[0]; @@ -178,38 +181,2870 @@ class HassioDataModel { } else { composedEntity["actionType"] = "stateText"; } - composedEntity["iconCode"] = _icons[entityDomain] ?? 0xf485; + + if (composedEntity["attributes"] != null) { + if ((entityDomain == "group")&&(composedEntity["attributes"]["view"] == true)) { + uiGroups.add(entityId); + } + String iconName = composedEntity["attributes"]["icon"]; + if (iconName != null) { + composedEntity["iconCode"] = MaterialDesignIcons.getIconCode(iconName); + } else { + composedEntity["iconCode"] = _defaultIcons[entityDomain] ?? 0; + } + } + + + if (entityDomain == "group") { + if ((composedEntity["attributes"] != null) && + (composedEntity["attributes"]["view"] == true)) { + + } + } _entitiesData[entityId] = Map.from(composedEntity); }); //Gethering information for UI - var defaultView = _entitiesData["group.default_view"]; - debugPrint("Gethering default view"); - if (defaultView!= null) { - _uiStructure["standalone"] = []; - _uiStructure["groups"] = []; - defaultView["attributes"]["entity_id"].forEach((entityId) { - if (_entitiesData[entityId]["domain"] != "group") { - _uiStructure["standalone"].add(entityId); - } else { - Map newGroup = {}; - newGroup["entity_id"] = entityId; - newGroup["friendly_name"] = (_entitiesData[entityId]['attributes']!=null) ? (_entitiesData[entityId]['attributes']['friendly_name'] ?? "") : ""; - newGroup["children"] = List(); - _entitiesData[entityId]["attributes"]["entity_id"].forEach((groupedEntityId) { - newGroup["children"].add(groupedEntityId); - - }); - _uiStructure["groups"].add(Map.from(newGroup)); - } - }); - } + uiGroups.forEach((viewId) { + var viewGroup = _entitiesData[viewId]; + Map viewGroupStructure = {}; + debugPrint("Gethering views"); + if (viewGroup != null) { + viewGroupStructure["standalone"] = []; + viewGroupStructure["groups"] = []; + viewGroupStructure["iconCode"] = viewGroup["iconCode"]; + viewGroup["attributes"]["entity_id"].forEach((entityId) { + if (_entitiesData[entityId]["domain"] != "group") { + viewGroupStructure["standalone"].add(entityId); + } else { + Map newGroup = {}; + newGroup["entity_id"] = entityId; + newGroup["friendly_name"] = + (_entitiesData[entityId]['attributes'] != null) + ? (_entitiesData[entityId]['attributes']['friendly_name'] ?? "") + : ""; + newGroup["children"] = List(); + _entitiesData[entityId]["attributes"]["entity_id"].forEach(( + groupedEntityId) { + newGroup["children"].add(groupedEntityId); + }); + viewGroupStructure["groups"].add(Map.from(newGroup)); + } + }); + _uiStructure[viewId.split(".")[1]] = viewGroupStructure; + } + }); } callService(String domain, String service, String entity_id) { _incrementMessageId(); _sendMessageRaw('{"id": $_currentMssageId, "type": "call_service", "domain": "$domain", "service": "$service", "service_data": {"entity_id": "$entity_id"}}'); } +} + +class MaterialDesignIcons { + static Map _iconsMap = { + "mdi:access-point": 0xf002, + "mdi:access-point-network": 0xf003, + "mdi:account": 0xf004, + "mdi:account-alert": 0xf005, + "mdi:account-box": 0xf006, + "mdi:account-box-multiple": 0xf933, + "mdi:account-box-outline": 0xf007, + "mdi:account-card-details": 0xf5d2, + "mdi:account-check": 0xf008, + "mdi:account-child": 0xfa88, + "mdi:account-child-circle": 0xfa89, + "mdi:account-circle": 0xf009, + "mdi:account-convert": 0xf00a, + "mdi:account-details": 0xf631, + "mdi:account-edit": 0xf6bb, + "mdi:account-group": 0xf848, + "mdi:account-heart": 0xf898, + "mdi:account-key": 0xf00b, + "mdi:account-location": 0xf00c, + "mdi:account-minus": 0xf00d, + "mdi:account-multiple": 0xf00e, + "mdi:account-multiple-check": 0xf8c4, + "mdi:account-multiple-minus": 0xf5d3, + "mdi:account-multiple-outline": 0xf00f, + "mdi:account-multiple-plus": 0xf010, + "mdi:account-multiple-plus-outline": 0xf7ff, + "mdi:account-network": 0xf011, + "mdi:account-off": 0xf012, + "mdi:account-outline": 0xf013, + "mdi:account-plus": 0xf014, + "mdi:account-plus-outline": 0xf800, + "mdi:account-remove": 0xf015, + "mdi:account-search": 0xf016, + "mdi:account-search-outline": 0xf934, + "mdi:account-settings": 0xf630, + "mdi:account-star": 0xf017, + "mdi:account-supervisor": 0xfa8a, + "mdi:account-supervisor-circle": 0xfa8b, + "mdi:account-switch": 0xf019, + "mdi:accusoft": 0xf849, + "mdi:adjust": 0xf01a, + "mdi:adobe": 0xf935, + "mdi:air-conditioner": 0xf01b, + "mdi:airballoon": 0xf01c, + "mdi:airplane": 0xf01d, + "mdi:airplane-landing": 0xf5d4, + "mdi:airplane-off": 0xf01e, + "mdi:airplane-takeoff": 0xf5d5, + "mdi:airplay": 0xf01f, + "mdi:airport": 0xf84a, + "mdi:alarm": 0xf020, + "mdi:alarm-bell": 0xf78d, + "mdi:alarm-check": 0xf021, + "mdi:alarm-light": 0xf78e, + "mdi:alarm-multiple": 0xf022, + "mdi:alarm-off": 0xf023, + "mdi:alarm-plus": 0xf024, + "mdi:alarm-snooze": 0xf68d, + "mdi:album": 0xf025, + "mdi:alert": 0xf026, + "mdi:alert-box": 0xf027, + "mdi:alert-circle": 0xf028, + "mdi:alert-circle-outline": 0xf5d6, + "mdi:alert-decagram": 0xf6bc, + "mdi:alert-octagon": 0xf029, + "mdi:alert-octagram": 0xf766, + "mdi:alert-outline": 0xf02a, + "mdi:alien": 0xf899, + "mdi:all-inclusive": 0xf6bd, + "mdi:alpha": 0xf02b, + "mdi:alphabetical": 0xf02c, + "mdi:altimeter": 0xf5d7, + "mdi:amazon": 0xf02d, + "mdi:amazon-alexa": 0xf8c5, + "mdi:amazon-drive": 0xf02e, + "mdi:ambulance": 0xf02f, + "mdi:ampersand": 0xfa8c, + "mdi:amplifier": 0xf030, + "mdi:anchor": 0xf031, + "mdi:android": 0xf032, + "mdi:android-auto": 0xfa8d, + "mdi:android-debug-bridge": 0xf033, + "mdi:android-head": 0xf78f, + "mdi:android-studio": 0xf034, + "mdi:angle-acute": 0xf936, + "mdi:angle-obtuse": 0xf937, + "mdi:angle-right": 0xf938, + "mdi:angular": 0xf6b1, + "mdi:angularjs": 0xf6be, + "mdi:animation": 0xf5d8, + "mdi:animation-outline": 0xfa8e, + "mdi:animation-play": 0xf939, + "mdi:animation-play-outline": 0xfa8f, + "mdi:anvil": 0xf89a, + "mdi:apple": 0xf035, + "mdi:apple-finder": 0xf036, + "mdi:apple-icloud": 0xf038, + "mdi:apple-ios": 0xf037, + "mdi:apple-keyboard-caps": 0xf632, + "mdi:apple-keyboard-command": 0xf633, + "mdi:apple-keyboard-control": 0xf634, + "mdi:apple-keyboard-option": 0xf635, + "mdi:apple-keyboard-shift": 0xf636, + "mdi:apple-safari": 0xf039, + "mdi:application": 0xf614, + "mdi:apps": 0xf03b, + "mdi:arch": 0xf8c6, + "mdi:archive": 0xf03c, + "mdi:arrange-bring-forward": 0xf03d, + "mdi:arrange-bring-to-front": 0xf03e, + "mdi:arrange-send-backward": 0xf03f, + "mdi:arrange-send-to-back": 0xf040, + "mdi:arrow-all": 0xf041, + "mdi:arrow-bottom-left": 0xf042, + "mdi:arrow-bottom-left-bold-outline": 0xf9b6, + "mdi:arrow-bottom-left-thick": 0xf9b7, + "mdi:arrow-bottom-right": 0xf043, + "mdi:arrow-bottom-right-bold-outline": 0xf9b8, + "mdi:arrow-bottom-right-thick": 0xf9b9, + "mdi:arrow-collapse": 0xf615, + "mdi:arrow-collapse-all": 0xf044, + "mdi:arrow-collapse-down": 0xf791, + "mdi:arrow-collapse-horizontal": 0xf84b, + "mdi:arrow-collapse-left": 0xf792, + "mdi:arrow-collapse-right": 0xf793, + "mdi:arrow-collapse-up": 0xf794, + "mdi:arrow-collapse-vertical": 0xf84c, + "mdi:arrow-decision": 0xf9ba, + "mdi:arrow-decision-auto": 0xf9bb, + "mdi:arrow-decision-auto-outline": 0xf9bc, + "mdi:arrow-decision-outline": 0xf9bd, + "mdi:arrow-down": 0xf045, + "mdi:arrow-down-bold": 0xf72d, + "mdi:arrow-down-bold-box": 0xf72e, + "mdi:arrow-down-bold-box-outline": 0xf72f, + "mdi:arrow-down-bold-circle": 0xf047, + "mdi:arrow-down-bold-circle-outline": 0xf048, + "mdi:arrow-down-bold-hexagon-outline": 0xf049, + "mdi:arrow-down-bold-outline": 0xf9be, + "mdi:arrow-down-box": 0xf6bf, + "mdi:arrow-down-drop-circle": 0xf04a, + "mdi:arrow-down-drop-circle-outline": 0xf04b, + "mdi:arrow-down-thick": 0xf046, + "mdi:arrow-expand": 0xf616, + "mdi:arrow-expand-all": 0xf04c, + "mdi:arrow-expand-down": 0xf795, + "mdi:arrow-expand-horizontal": 0xf84d, + "mdi:arrow-expand-left": 0xf796, + "mdi:arrow-expand-right": 0xf797, + "mdi:arrow-expand-up": 0xf798, + "mdi:arrow-expand-vertical": 0xf84e, + "mdi:arrow-left": 0xf04d, + "mdi:arrow-left-bold": 0xf730, + "mdi:arrow-left-bold-box": 0xf731, + "mdi:arrow-left-bold-box-outline": 0xf732, + "mdi:arrow-left-bold-circle": 0xf04f, + "mdi:arrow-left-bold-circle-outline": 0xf050, + "mdi:arrow-left-bold-hexagon-outline": 0xf051, + "mdi:arrow-left-bold-outline": 0xf9bf, + "mdi:arrow-left-box": 0xf6c0, + "mdi:arrow-left-drop-circle": 0xf052, + "mdi:arrow-left-drop-circle-outline": 0xf053, + "mdi:arrow-left-right-bold-outline": 0xf9c0, + "mdi:arrow-left-thick": 0xf04e, + "mdi:arrow-right": 0xf054, + "mdi:arrow-right-bold": 0xf733, + "mdi:arrow-right-bold-box": 0xf734, + "mdi:arrow-right-bold-box-outline": 0xf735, + "mdi:arrow-right-bold-circle": 0xf056, + "mdi:arrow-right-bold-circle-outline": 0xf057, + "mdi:arrow-right-bold-hexagon-outline": 0xf058, + "mdi:arrow-right-bold-outline": 0xf9c1, + "mdi:arrow-right-box": 0xf6c1, + "mdi:arrow-right-drop-circle": 0xf059, + "mdi:arrow-right-drop-circle-outline": 0xf05a, + "mdi:arrow-right-thick": 0xf055, + "mdi:arrow-split-horizontal": 0xf93a, + "mdi:arrow-split-vertical": 0xf93b, + "mdi:arrow-top-left": 0xf05b, + "mdi:arrow-top-left-bold-outline": 0xf9c2, + "mdi:arrow-top-left-thick": 0xf9c3, + "mdi:arrow-top-right": 0xf05c, + "mdi:arrow-top-right-bold-outline": 0xf9c4, + "mdi:arrow-top-right-thick": 0xf9c5, + "mdi:arrow-up": 0xf05d, + "mdi:arrow-up-bold": 0xf736, + "mdi:arrow-up-bold-box": 0xf737, + "mdi:arrow-up-bold-box-outline": 0xf738, + "mdi:arrow-up-bold-circle": 0xf05f, + "mdi:arrow-up-bold-circle-outline": 0xf060, + "mdi:arrow-up-bold-hexagon-outline": 0xf061, + "mdi:arrow-up-bold-outline": 0xf9c6, + "mdi:arrow-up-box": 0xf6c2, + "mdi:arrow-up-down-bold-outline": 0xf9c7, + "mdi:arrow-up-drop-circle": 0xf062, + "mdi:arrow-up-drop-circle-outline": 0xf063, + "mdi:arrow-up-thick": 0xf05e, + "mdi:artist": 0xf802, + "mdi:aspect-ratio": 0xfa23, + "mdi:assistant": 0xf064, + "mdi:asterisk": 0xf6c3, + "mdi:at": 0xf065, + "mdi:atlassian": 0xf803, + "mdi:atom": 0xf767, + "mdi:attachment": 0xf066, + "mdi:audio-video": 0xf93c, + "mdi:audiobook": 0xf067, + "mdi:augmented-reality": 0xf84f, + "mdi:auto-fix": 0xf068, + "mdi:auto-upload": 0xf069, + "mdi:autorenew": 0xf06a, + "mdi:av-timer": 0xf06b, + "mdi:axe": 0xf8c7, + "mdi:azure": 0xf804, + "mdi:babel": 0xfa24, + "mdi:baby": 0xf06c, + "mdi:baby-buggy": 0xf68e, + "mdi:backburger": 0xf06d, + "mdi:backspace": 0xf06e, + "mdi:backup-restore": 0xf06f, + "mdi:badminton": 0xf850, + "mdi:balloon": 0xfa25, + "mdi:ballot": 0xf9c8, + "mdi:ballot-outline": 0xf9c9, + "mdi:bandcamp": 0xf674, + "mdi:bank": 0xf070, + "mdi:bank-transfer": 0xfa26, + "mdi:bank-transfer-in": 0xfa27, + "mdi:bank-transfer-out": 0xfa28, + "mdi:barcode": 0xf071, + "mdi:barcode-scan": 0xf072, + "mdi:barley": 0xf073, + "mdi:barrel": 0xf074, + "mdi:baseball": 0xf851, + "mdi:baseball-bat": 0xf852, + "mdi:basecamp": 0xf075, + "mdi:basket": 0xf076, + "mdi:basket-fill": 0xf077, + "mdi:basket-unfill": 0xf078, + "mdi:basketball": 0xf805, + "mdi:battery": 0xf079, + "mdi:battery-10": 0xf07a, + "mdi:battery-10-bluetooth": 0xf93d, + "mdi:battery-20": 0xf07b, + "mdi:battery-20-bluetooth": 0xf93e, + "mdi:battery-30": 0xf07c, + "mdi:battery-30-bluetooth": 0xf93f, + "mdi:battery-40": 0xf07d, + "mdi:battery-40-bluetooth": 0xf940, + "mdi:battery-50": 0xf07e, + "mdi:battery-50-bluetooth": 0xf941, + "mdi:battery-60": 0xf07f, + "mdi:battery-60-bluetooth": 0xf942, + "mdi:battery-70": 0xf080, + "mdi:battery-70-bluetooth": 0xf943, + "mdi:battery-80": 0xf081, + "mdi:battery-80-bluetooth": 0xf944, + "mdi:battery-90": 0xf082, + "mdi:battery-90-bluetooth": 0xf945, + "mdi:battery-alert": 0xf083, + "mdi:battery-alert-bluetooth": 0xf946, + "mdi:battery-bluetooth": 0xf947, + "mdi:battery-bluetooth-variant": 0xf948, + "mdi:battery-charging": 0xf084, + "mdi:battery-charging-10": 0xf89b, + "mdi:battery-charging-100": 0xf085, + "mdi:battery-charging-20": 0xf086, + "mdi:battery-charging-30": 0xf087, + "mdi:battery-charging-40": 0xf088, + "mdi:battery-charging-50": 0xf89c, + "mdi:battery-charging-60": 0xf089, + "mdi:battery-charging-70": 0xf89d, + "mdi:battery-charging-80": 0xf08a, + "mdi:battery-charging-90": 0xf08b, + "mdi:battery-charging-outline": 0xf89e, + "mdi:battery-charging-wireless": 0xf806, + "mdi:battery-charging-wireless-10": 0xf807, + "mdi:battery-charging-wireless-20": 0xf808, + "mdi:battery-charging-wireless-30": 0xf809, + "mdi:battery-charging-wireless-40": 0xf80a, + "mdi:battery-charging-wireless-50": 0xf80b, + "mdi:battery-charging-wireless-60": 0xf80c, + "mdi:battery-charging-wireless-70": 0xf80d, + "mdi:battery-charging-wireless-80": 0xf80e, + "mdi:battery-charging-wireless-90": 0xf80f, + "mdi:battery-charging-wireless-alert": 0xf810, + "mdi:battery-charging-wireless-outline": 0xf811, + "mdi:battery-minus": 0xf08c, + "mdi:battery-negative": 0xf08d, + "mdi:battery-outline": 0xf08e, + "mdi:battery-plus": 0xf08f, + "mdi:battery-positive": 0xf090, + "mdi:battery-unknown": 0xf091, + "mdi:battery-unknown-bluetooth": 0xf949, + "mdi:beach": 0xf092, + "mdi:beaker": 0xf68f, + "mdi:beats": 0xf097, + "mdi:bed-empty": 0xf89f, + "mdi:beer": 0xf098, + "mdi:behance": 0xf099, + "mdi:bell": 0xf09a, + "mdi:bell-off": 0xf09b, + "mdi:bell-off-outline": 0xfa90, + "mdi:bell-outline": 0xf09c, + "mdi:bell-plus": 0xf09d, + "mdi:bell-plus-outline": 0xfa91, + "mdi:bell-ring": 0xf09e, + "mdi:bell-ring-outline": 0xf09f, + "mdi:bell-sleep": 0xf0a0, + "mdi:bell-sleep-outline": 0xfa92, + "mdi:beta": 0xf0a1, + "mdi:betamax": 0xf9ca, + "mdi:bible": 0xf0a2, + "mdi:bike": 0xf0a3, + "mdi:bing": 0xf0a4, + "mdi:binoculars": 0xf0a5, + "mdi:bio": 0xf0a6, + "mdi:biohazard": 0xf0a7, + "mdi:bitbucket": 0xf0a8, + "mdi:bitcoin": 0xf812, + "mdi:black-mesa": 0xf0a9, + "mdi:blackberry": 0xf0aa, + "mdi:blender": 0xf0ab, + "mdi:blinds": 0xf0ac, + "mdi:block-helper": 0xf0ad, + "mdi:blogger": 0xf0ae, + "mdi:bluetooth": 0xf0af, + "mdi:bluetooth-audio": 0xf0b0, + "mdi:bluetooth-connect": 0xf0b1, + "mdi:bluetooth-off": 0xf0b2, + "mdi:bluetooth-settings": 0xf0b3, + "mdi:bluetooth-transfer": 0xf0b4, + "mdi:blur": 0xf0b5, + "mdi:blur-linear": 0xf0b6, + "mdi:blur-off": 0xf0b7, + "mdi:blur-radial": 0xf0b8, + "mdi:bomb": 0xf690, + "mdi:bomb-off": 0xf6c4, + "mdi:bone": 0xf0b9, + "mdi:book": 0xf0ba, + "mdi:book-lock": 0xf799, + "mdi:book-lock-open": 0xf79a, + "mdi:book-minus": 0xf5d9, + "mdi:book-multiple": 0xf0bb, + "mdi:book-multiple-minus": 0xfa93, + "mdi:book-multiple-plus": 0xfa94, + "mdi:book-multiple-remove": 0xfa95, + "mdi:book-multiple-variant": 0xf0bc, + "mdi:book-open": 0xf0bd, + "mdi:book-open-page-variant": 0xf5da, + "mdi:book-open-variant": 0xf0be, + "mdi:book-plus": 0xf5db, + "mdi:book-remove": 0xfa96, + "mdi:book-variant": 0xf0bf, + "mdi:bookmark": 0xf0c0, + "mdi:bookmark-check": 0xf0c1, + "mdi:bookmark-minus": 0xf9cb, + "mdi:bookmark-minus-outline": 0xf9cc, + "mdi:bookmark-music": 0xf0c2, + "mdi:bookmark-off": 0xf9cd, + "mdi:bookmark-off-outline": 0xf9ce, + "mdi:bookmark-outline": 0xf0c3, + "mdi:bookmark-plus": 0xf0c5, + "mdi:bookmark-plus-outline": 0xf0c4, + "mdi:bookmark-remove": 0xf0c6, + "mdi:boombox": 0xf5dc, + "mdi:bootstrap": 0xf6c5, + "mdi:border-all": 0xf0c7, + "mdi:border-all-variant": 0xf8a0, + "mdi:border-bottom": 0xf0c8, + "mdi:border-bottom-variant": 0xf8a1, + "mdi:border-color": 0xf0c9, + "mdi:border-horizontal": 0xf0ca, + "mdi:border-inside": 0xf0cb, + "mdi:border-left": 0xf0cc, + "mdi:border-left-variant": 0xf8a2, + "mdi:border-none": 0xf0cd, + "mdi:border-none-variant": 0xf8a3, + "mdi:border-outside": 0xf0ce, + "mdi:border-right": 0xf0cf, + "mdi:border-right-variant": 0xf8a4, + "mdi:border-style": 0xf0d0, + "mdi:border-top": 0xf0d1, + "mdi:border-top-variant": 0xf8a5, + "mdi:border-vertical": 0xf0d2, + "mdi:bottle-wine": 0xf853, + "mdi:bow-tie": 0xf677, + "mdi:bowl": 0xf617, + "mdi:bowling": 0xf0d3, + "mdi:box": 0xf0d4, + "mdi:box-cutter": 0xf0d5, + "mdi:box-shadow": 0xf637, + "mdi:braille": 0xf9cf, + "mdi:brain": 0xf9d0, + "mdi:bridge": 0xf618, + "mdi:briefcase": 0xf0d6, + "mdi:briefcase-check": 0xf0d7, + "mdi:briefcase-download": 0xf0d8, + "mdi:briefcase-edit": 0xfa97, + "mdi:briefcase-minus": 0xfa29, + "mdi:briefcase-outline": 0xf813, + "mdi:briefcase-plus": 0xfa2a, + "mdi:briefcase-remove": 0xfa2b, + "mdi:briefcase-search": 0xfa2c, + "mdi:briefcase-upload": 0xf0d9, + "mdi:brightness-1": 0xf0da, + "mdi:brightness-2": 0xf0db, + "mdi:brightness-3": 0xf0dc, + "mdi:brightness-4": 0xf0dd, + "mdi:brightness-5": 0xf0de, + "mdi:brightness-6": 0xf0df, + "mdi:brightness-7": 0xf0e0, + "mdi:brightness-auto": 0xf0e1, + "mdi:broom": 0xf0e2, + "mdi:brush": 0xf0e3, + "mdi:buddhism": 0xf94a, + "mdi:buffer": 0xf619, + "mdi:bug": 0xf0e4, + "mdi:bug-check": 0xfa2d, + "mdi:bug-check-outline": 0xfa2e, + "mdi:bug-outline": 0xfa2f, + "mdi:bulletin-board": 0xf0e5, + "mdi:bullhorn": 0xf0e6, + "mdi:bullseye": 0xf5dd, + "mdi:bullseye-arrow": 0xf8c8, + "mdi:bus": 0xf0e7, + "mdi:bus-alert": 0xfa98, + "mdi:bus-articulated-end": 0xf79b, + "mdi:bus-articulated-front": 0xf79c, + "mdi:bus-clock": 0xf8c9, + "mdi:bus-double-decker": 0xf79d, + "mdi:bus-school": 0xf79e, + "mdi:bus-side": 0xf79f, + "mdi:cached": 0xf0e8, + "mdi:cake": 0xf0e9, + "mdi:cake-layered": 0xf0ea, + "mdi:cake-variant": 0xf0eb, + "mdi:calculator": 0xf0ec, + "mdi:calculator-variant": 0xfa99, + "mdi:calendar": 0xf0ed, + "mdi:calendar-alert": 0xfa30, + "mdi:calendar-blank": 0xf0ee, + "mdi:calendar-check": 0xf0ef, + "mdi:calendar-clock": 0xf0f0, + "mdi:calendar-edit": 0xf8a6, + "mdi:calendar-heart": 0xf9d1, + "mdi:calendar-multiple": 0xf0f1, + "mdi:calendar-multiple-check": 0xf0f2, + "mdi:calendar-multiselect": 0xfa31, + "mdi:calendar-plus": 0xf0f3, + "mdi:calendar-question": 0xf691, + "mdi:calendar-range": 0xf678, + "mdi:calendar-remove": 0xf0f4, + "mdi:calendar-search": 0xf94b, + "mdi:calendar-star": 0xf9d2, + "mdi:calendar-text": 0xf0f5, + "mdi:calendar-today": 0xf0f6, + "mdi:calendar-week": 0xfa32, + "mdi:calendar-week-begin": 0xfa33, + "mdi:call-made": 0xf0f7, + "mdi:call-merge": 0xf0f8, + "mdi:call-missed": 0xf0f9, + "mdi:call-received": 0xf0fa, + "mdi:call-split": 0xf0fb, + "mdi:camcorder": 0xf0fc, + "mdi:camcorder-box": 0xf0fd, + "mdi:camcorder-box-off": 0xf0fe, + "mdi:camcorder-off": 0xf0ff, + "mdi:camera": 0xf100, + "mdi:camera-account": 0xf8ca, + "mdi:camera-burst": 0xf692, + "mdi:camera-enhance": 0xf101, + "mdi:camera-front": 0xf102, + "mdi:camera-front-variant": 0xf103, + "mdi:camera-gopro": 0xf7a0, + "mdi:camera-image": 0xf8cb, + "mdi:camera-iris": 0xf104, + "mdi:camera-metering-center": 0xf7a1, + "mdi:camera-metering-matrix": 0xf7a2, + "mdi:camera-metering-partial": 0xf7a3, + "mdi:camera-metering-spot": 0xf7a4, + "mdi:camera-off": 0xf5df, + "mdi:camera-party-mode": 0xf105, + "mdi:camera-rear": 0xf106, + "mdi:camera-rear-variant": 0xf107, + "mdi:camera-switch": 0xf108, + "mdi:camera-timer": 0xf109, + "mdi:cancel": 0xf739, + "mdi:candle": 0xf5e2, + "mdi:candycane": 0xf10a, + "mdi:cannabis": 0xf7a5, + "mdi:caps-lock": 0xfa9a, + "mdi:car": 0xf10b, + "mdi:car-battery": 0xf10c, + "mdi:car-connected": 0xf10d, + "mdi:car-convertible": 0xf7a6, + "mdi:car-estate": 0xf7a7, + "mdi:car-hatchback": 0xf7a8, + "mdi:car-limousine": 0xf8cc, + "mdi:car-pickup": 0xf7a9, + "mdi:car-side": 0xf7aa, + "mdi:car-sports": 0xf7ab, + "mdi:car-wash": 0xf10e, + "mdi:caravan": 0xf7ac, + "mdi:cards": 0xf638, + "mdi:cards-club": 0xf8cd, + "mdi:cards-diamond": 0xf8ce, + "mdi:cards-heart": 0xf8cf, + "mdi:cards-outline": 0xf639, + "mdi:cards-playing-outline": 0xf63a, + "mdi:cards-spade": 0xf8d0, + "mdi:cards-variant": 0xf6c6, + "mdi:carrot": 0xf10f, + "mdi:cart": 0xf110, + "mdi:cart-off": 0xf66b, + "mdi:cart-outline": 0xf111, + "mdi:cart-plus": 0xf112, + "mdi:case-sensitive-alt": 0xf113, + "mdi:cash": 0xf114, + "mdi:cash-100": 0xf115, + "mdi:cash-multiple": 0xf116, + "mdi:cash-refund": 0xfa9b, + "mdi:cash-usd": 0xf117, + "mdi:cassette": 0xf9d3, + "mdi:cast": 0xf118, + "mdi:cast-connected": 0xf119, + "mdi:cast-off": 0xf789, + "mdi:castle": 0xf11a, + "mdi:cat": 0xf11b, + "mdi:cctv": 0xf7ad, + "mdi:ceiling-light": 0xf768, + "mdi:cellphone": 0xf11c, + "mdi:cellphone-android": 0xf11d, + "mdi:cellphone-arrow-down": 0xf9d4, + "mdi:cellphone-basic": 0xf11e, + "mdi:cellphone-dock": 0xf11f, + "mdi:cellphone-erase": 0xf94c, + "mdi:cellphone-iphone": 0xf120, + "mdi:cellphone-key": 0xf94d, + "mdi:cellphone-link": 0xf121, + "mdi:cellphone-link-off": 0xf122, + "mdi:cellphone-lock": 0xf94e, + "mdi:cellphone-message": 0xf8d2, + "mdi:cellphone-off": 0xf94f, + "mdi:cellphone-screenshot": 0xfa34, + "mdi:cellphone-settings": 0xf123, + "mdi:cellphone-settings-variant": 0xf950, + "mdi:cellphone-sound": 0xf951, + "mdi:cellphone-text": 0xf8d1, + "mdi:cellphone-wireless": 0xf814, + "mdi:certificate": 0xf124, + "mdi:chair-school": 0xf125, + "mdi:chart-arc": 0xf126, + "mdi:chart-areaspline": 0xf127, + "mdi:chart-bar": 0xf128, + "mdi:chart-bar-stacked": 0xf769, + "mdi:chart-bubble": 0xf5e3, + "mdi:chart-donut": 0xf7ae, + "mdi:chart-donut-variant": 0xf7af, + "mdi:chart-gantt": 0xf66c, + "mdi:chart-histogram": 0xf129, + "mdi:chart-line": 0xf12a, + "mdi:chart-line-stacked": 0xf76a, + "mdi:chart-line-variant": 0xf7b0, + "mdi:chart-multiline": 0xf8d3, + "mdi:chart-pie": 0xf12b, + "mdi:chart-scatterplot-hexbin": 0xf66d, + "mdi:chart-timeline": 0xf66e, + "mdi:check": 0xf12c, + "mdi:check-all": 0xf12d, + "mdi:check-circle": 0xf5e0, + "mdi:check-circle-outline": 0xf5e1, + "mdi:check-decagram": 0xf790, + "mdi:check-outline": 0xf854, + "mdi:checkbook": 0xfa9c, + "mdi:checkbox-blank": 0xf12e, + "mdi:checkbox-blank-circle": 0xf12f, + "mdi:checkbox-blank-circle-outline": 0xf130, + "mdi:checkbox-blank-outline": 0xf131, + "mdi:checkbox-intermediate": 0xf855, + "mdi:checkbox-marked": 0xf132, + "mdi:checkbox-marked-circle": 0xf133, + "mdi:checkbox-marked-circle-outline": 0xf134, + "mdi:checkbox-marked-outline": 0xf135, + "mdi:checkbox-multiple-blank": 0xf136, + "mdi:checkbox-multiple-blank-circle": 0xf63b, + "mdi:checkbox-multiple-blank-circle-outline": 0xf63c, + "mdi:checkbox-multiple-blank-outline": 0xf137, + "mdi:checkbox-multiple-marked": 0xf138, + "mdi:checkbox-multiple-marked-circle": 0xf63d, + "mdi:checkbox-multiple-marked-circle-outline": 0xf63e, + "mdi:checkbox-multiple-marked-outline": 0xf139, + "mdi:checkerboard": 0xf13a, + "mdi:chemical-weapon": 0xf13b, + "mdi:chess-bishop": 0xf85b, + "mdi:chess-king": 0xf856, + "mdi:chess-knight": 0xf857, + "mdi:chess-pawn": 0xf858, + "mdi:chess-queen": 0xf859, + "mdi:chess-rook": 0xf85a, + "mdi:chevron-double-down": 0xf13c, + "mdi:chevron-double-left": 0xf13d, + "mdi:chevron-double-right": 0xf13e, + "mdi:chevron-double-up": 0xf13f, + "mdi:chevron-down": 0xf140, + "mdi:chevron-down-box": 0xf9d5, + "mdi:chevron-down-box-outline": 0xf9d6, + "mdi:chevron-left": 0xf141, + "mdi:chevron-left-box": 0xf9d7, + "mdi:chevron-left-box-outline": 0xf9d8, + "mdi:chevron-right": 0xf142, + "mdi:chevron-right-box": 0xf9d9, + "mdi:chevron-right-box-outline": 0xf9da, + "mdi:chevron-up": 0xf143, + "mdi:chevron-up-box": 0xf9db, + "mdi:chevron-up-box-outline": 0xf9dc, + "mdi:chili-hot": 0xf7b1, + "mdi:chili-medium": 0xf7b2, + "mdi:chili-mild": 0xf7b3, + "mdi:chip": 0xf61a, + "mdi:christianity": 0xf952, + "mdi:church": 0xf144, + "mdi:circle": 0xf764, + "mdi:circle-edit-outline": 0xf8d4, + "mdi:circle-medium": 0xf9dd, + "mdi:circle-outline": 0xf765, + "mdi:circle-slice-1": 0xfa9d, + "mdi:circle-slice-2": 0xfa9e, + "mdi:circle-slice-3": 0xfa9f, + "mdi:circle-slice-4": 0xfaa0, + "mdi:circle-slice-5": 0xfaa1, + "mdi:circle-slice-6": 0xfaa2, + "mdi:circle-slice-7": 0xfaa3, + "mdi:circle-slice-8": 0xfaa4, + "mdi:circle-small": 0xf9de, + "mdi:cisco-webex": 0xf145, + "mdi:city": 0xf146, + "mdi:city-variant": 0xfa35, + "mdi:city-variant-outline": 0xfa36, + "mdi:clipboard": 0xf147, + "mdi:clipboard-account": 0xf148, + "mdi:clipboard-alert": 0xf149, + "mdi:clipboard-arrow-down": 0xf14a, + "mdi:clipboard-arrow-left": 0xf14b, + "mdi:clipboard-check": 0xf14c, + "mdi:clipboard-check-outline": 0xf8a7, + "mdi:clipboard-flow": 0xf6c7, + "mdi:clipboard-outline": 0xf14d, + "mdi:clipboard-plus": 0xf750, + "mdi:clipboard-pulse": 0xf85c, + "mdi:clipboard-pulse-outline": 0xf85d, + "mdi:clipboard-text": 0xf14e, + "mdi:clipboard-text-outline": 0xfa37, + "mdi:clippy": 0xf14f, + "mdi:clock": 0xf953, + "mdi:clock-alert": 0xf954, + "mdi:clock-alert-outline": 0xf5ce, + "mdi:clock-end": 0xf151, + "mdi:clock-fast": 0xf152, + "mdi:clock-in": 0xf153, + "mdi:clock-out": 0xf154, + "mdi:clock-outline": 0xf150, + "mdi:clock-start": 0xf155, + "mdi:close": 0xf156, + "mdi:close-box": 0xf157, + "mdi:close-box-outline": 0xf158, + "mdi:close-circle": 0xf159, + "mdi:close-circle-outline": 0xf15a, + "mdi:close-network": 0xf15b, + "mdi:close-octagon": 0xf15c, + "mdi:close-octagon-outline": 0xf15d, + "mdi:close-outline": 0xf6c8, + "mdi:closed-caption": 0xf15e, + "mdi:cloud": 0xf15f, + "mdi:cloud-alert": 0xf9df, + "mdi:cloud-braces": 0xf7b4, + "mdi:cloud-check": 0xf160, + "mdi:cloud-circle": 0xf161, + "mdi:cloud-download": 0xf162, + "mdi:cloud-off-outline": 0xf164, + "mdi:cloud-outline": 0xf163, + "mdi:cloud-print": 0xf165, + "mdi:cloud-print-outline": 0xf166, + "mdi:cloud-question": 0xfa38, + "mdi:cloud-search": 0xf955, + "mdi:cloud-search-outline": 0xf956, + "mdi:cloud-sync": 0xf63f, + "mdi:cloud-tags": 0xf7b5, + "mdi:cloud-upload": 0xf167, + "mdi:clover": 0xf815, + "mdi:code-array": 0xf168, + "mdi:code-braces": 0xf169, + "mdi:code-brackets": 0xf16a, + "mdi:code-equal": 0xf16b, + "mdi:code-greater-than": 0xf16c, + "mdi:code-greater-than-or-equal": 0xf16d, + "mdi:code-less-than": 0xf16e, + "mdi:code-less-than-or-equal": 0xf16f, + "mdi:code-not-equal": 0xf170, + "mdi:code-not-equal-variant": 0xf171, + "mdi:code-parentheses": 0xf172, + "mdi:code-string": 0xf173, + "mdi:code-tags": 0xf174, + "mdi:code-tags-check": 0xf693, + "mdi:codepen": 0xf175, + "mdi:coffee": 0xf176, + "mdi:coffee-outline": 0xf6c9, + "mdi:coffee-to-go": 0xf177, + "mdi:cogs": 0xf8d5, + "mdi:coin": 0xf178, + "mdi:coins": 0xf694, + "mdi:collage": 0xf640, + "mdi:collapse-all": 0xfaa5, + "mdi:collapse-all-outline": 0xfaa6, + "mdi:color-helper": 0xf179, + "mdi:comment": 0xf17a, + "mdi:comment-account": 0xf17b, + "mdi:comment-account-outline": 0xf17c, + "mdi:comment-alert": 0xf17d, + "mdi:comment-alert-outline": 0xf17e, + "mdi:comment-arrow-left": 0xf9e0, + "mdi:comment-arrow-left-outline": 0xf9e1, + "mdi:comment-arrow-right": 0xf9e2, + "mdi:comment-arrow-right-outline": 0xf9e3, + "mdi:comment-check": 0xf17f, + "mdi:comment-check-outline": 0xf180, + "mdi:comment-eye": 0xfa39, + "mdi:comment-eye-outline": 0xfa3a, + "mdi:comment-multiple": 0xf85e, + "mdi:comment-multiple-outline": 0xf181, + "mdi:comment-outline": 0xf182, + "mdi:comment-plus": 0xf9e4, + "mdi:comment-plus-outline": 0xf183, + "mdi:comment-processing": 0xf184, + "mdi:comment-processing-outline": 0xf185, + "mdi:comment-question": 0xf816, + "mdi:comment-question-outline": 0xf186, + "mdi:comment-remove": 0xf5de, + "mdi:comment-remove-outline": 0xf187, + "mdi:comment-search": 0xfa3b, + "mdi:comment-search-outline": 0xfa3c, + "mdi:comment-text": 0xf188, + "mdi:comment-text-multiple": 0xf85f, + "mdi:comment-text-multiple-outline": 0xf860, + "mdi:comment-text-outline": 0xf189, + "mdi:compare": 0xf18a, + "mdi:compass": 0xf18b, + "mdi:compass-outline": 0xf18c, + "mdi:console": 0xf18d, + "mdi:console-line": 0xf7b6, + "mdi:console-network": 0xf8a8, + "mdi:contact-mail": 0xf18e, + "mdi:contacts": 0xf6ca, + "mdi:contain": 0xfa3d, + "mdi:contain-end": 0xfa3e, + "mdi:contain-start": 0xfa3f, + "mdi:content-copy": 0xf18f, + "mdi:content-cut": 0xf190, + "mdi:content-duplicate": 0xf191, + "mdi:content-paste": 0xf192, + "mdi:content-save": 0xf193, + "mdi:content-save-all": 0xf194, + "mdi:content-save-outline": 0xf817, + "mdi:content-save-settings": 0xf61b, + "mdi:contrast": 0xf195, + "mdi:contrast-box": 0xf196, + "mdi:contrast-circle": 0xf197, + "mdi:cookie": 0xf198, + "mdi:copyright": 0xf5e6, + "mdi:cordova": 0xf957, + "mdi:corn": 0xf7b7, + "mdi:counter": 0xf199, + "mdi:cow": 0xf19a, + "mdi:crane": 0xf861, + "mdi:creation": 0xf1c9, + "mdi:credit-card": 0xf19b, + "mdi:credit-card-multiple": 0xf19c, + "mdi:credit-card-off": 0xf5e4, + "mdi:credit-card-plus": 0xf675, + "mdi:credit-card-refund": 0xfaa7, + "mdi:credit-card-scan": 0xf19d, + "mdi:credit-card-settings": 0xf8d6, + "mdi:crop": 0xf19e, + "mdi:crop-free": 0xf19f, + "mdi:crop-landscape": 0xf1a0, + "mdi:crop-portrait": 0xf1a1, + "mdi:crop-rotate": 0xf695, + "mdi:crop-square": 0xf1a2, + "mdi:crosshairs": 0xf1a3, + "mdi:crosshairs-gps": 0xf1a4, + "mdi:crown": 0xf1a5, + "mdi:cryengine": 0xf958, + "mdi:cube": 0xf1a6, + "mdi:cube-outline": 0xf1a7, + "mdi:cube-send": 0xf1a8, + "mdi:cube-unfolded": 0xf1a9, + "mdi:cup": 0xf1aa, + "mdi:cup-off": 0xf5e5, + "mdi:cup-water": 0xf1ab, + "mdi:cupcake": 0xf959, + "mdi:curling": 0xf862, + "mdi:currency-bdt": 0xf863, + "mdi:currency-btc": 0xf1ac, + "mdi:currency-chf": 0xf7b8, + "mdi:currency-cny": 0xf7b9, + "mdi:currency-eth": 0xf7ba, + "mdi:currency-eur": 0xf1ad, + "mdi:currency-gbp": 0xf1ae, + "mdi:currency-inr": 0xf1af, + "mdi:currency-jpy": 0xf7bb, + "mdi:currency-krw": 0xf7bc, + "mdi:currency-kzt": 0xf864, + "mdi:currency-ngn": 0xf1b0, + "mdi:currency-php": 0xf9e5, + "mdi:currency-rub": 0xf1b1, + "mdi:currency-sign": 0xf7bd, + "mdi:currency-try": 0xf1b2, + "mdi:currency-twd": 0xf7be, + "mdi:currency-usd": 0xf1b3, + "mdi:currency-usd-off": 0xf679, + "mdi:current-ac": 0xf95a, + "mdi:current-dc": 0xf95b, + "mdi:cursor-default": 0xf1b4, + "mdi:cursor-default-outline": 0xf1b5, + "mdi:cursor-move": 0xf1b6, + "mdi:cursor-pointer": 0xf1b7, + "mdi:cursor-text": 0xf5e7, + "mdi:database": 0xf1b8, + "mdi:database-check": 0xfaa8, + "mdi:database-export": 0xf95d, + "mdi:database-import": 0xf95c, + "mdi:database-lock": 0xfaa9, + "mdi:database-minus": 0xf1b9, + "mdi:database-plus": 0xf1ba, + "mdi:database-search": 0xf865, + "mdi:death-star": 0xf8d7, + "mdi:death-star-variant": 0xf8d8, + "mdi:debian": 0xf8d9, + "mdi:debug-step-into": 0xf1bb, + "mdi:debug-step-out": 0xf1bc, + "mdi:debug-step-over": 0xf1bd, + "mdi:decagram": 0xf76b, + "mdi:decagram-outline": 0xf76c, + "mdi:decimal-decrease": 0xf1be, + "mdi:decimal-increase": 0xf1bf, + "mdi:delete": 0xf1c0, + "mdi:delete-circle": 0xf682, + "mdi:delete-empty": 0xf6cb, + "mdi:delete-forever": 0xf5e8, + "mdi:delete-outline": 0xf9e6, + "mdi:delete-restore": 0xf818, + "mdi:delete-sweep": 0xf5e9, + "mdi:delete-variant": 0xf1c1, + "mdi:delta": 0xf1c2, + "mdi:desk-lamp": 0xf95e, + "mdi:deskphone": 0xf1c3, + "mdi:desktop-classic": 0xf7bf, + "mdi:desktop-mac": 0xf1c4, + "mdi:desktop-mac-dashboard": 0xf9e7, + "mdi:desktop-tower": 0xf1c5, + "mdi:desktop-tower-monitor": 0xfaaa, + "mdi:details": 0xf1c6, + "mdi:developer-board": 0xf696, + "mdi:deviantart": 0xf1c7, + "mdi:dialpad": 0xf61c, + "mdi:diamond": 0xf1c8, + "mdi:dice-1": 0xf1ca, + "mdi:dice-2": 0xf1cb, + "mdi:dice-3": 0xf1cc, + "mdi:dice-4": 0xf1cd, + "mdi:dice-5": 0xf1ce, + "mdi:dice-6": 0xf1cf, + "mdi:dice-d10": 0xf76e, + "mdi:dice-d12": 0xf866, + "mdi:dice-d20": 0xf5ea, + "mdi:dice-d4": 0xf5eb, + "mdi:dice-d6": 0xf5ec, + "mdi:dice-d8": 0xf5ed, + "mdi:dice-multiple": 0xf76d, + "mdi:dictionary": 0xf61d, + "mdi:dip-switch": 0xf7c0, + "mdi:directions": 0xf1d0, + "mdi:directions-fork": 0xf641, + "mdi:disc": 0xf5ee, + "mdi:disc-alert": 0xf1d1, + "mdi:disc-player": 0xf95f, + "mdi:discord": 0xf66f, + "mdi:dishwasher": 0xfaab, + "mdi:disqus": 0xf1d2, + "mdi:disqus-outline": 0xf1d3, + "mdi:division": 0xf1d4, + "mdi:division-box": 0xf1d5, + "mdi:dlna": 0xfa40, + "mdi:dna": 0xf683, + "mdi:dns": 0xf1d6, + "mdi:do-not-disturb": 0xf697, + "mdi:do-not-disturb-off": 0xf698, + "mdi:docker": 0xf867, + "mdi:doctor": 0xfa41, + "mdi:dog": 0xfa42, + "mdi:dog-service": 0xfaac, + "mdi:dog-side": 0xfa43, + "mdi:dolby": 0xf6b2, + "mdi:domain": 0xf1d7, + "mdi:donkey": 0xf7c1, + "mdi:door": 0xf819, + "mdi:door-closed": 0xf81a, + "mdi:door-open": 0xf81b, + "mdi:doorbell-video": 0xf868, + "mdi:dot-net": 0xfaad, + "mdi:dots-horizontal": 0xf1d8, + "mdi:dots-horizontal-circle": 0xf7c2, + "mdi:dots-vertical": 0xf1d9, + "mdi:dots-vertical-circle": 0xf7c3, + "mdi:douban": 0xf699, + "mdi:download": 0xf1da, + "mdi:download-multiple": 0xf9e8, + "mdi:download-network": 0xf6f3, + "mdi:drag": 0xf1db, + "mdi:drag-horizontal": 0xf1dc, + "mdi:drag-vertical": 0xf1dd, + "mdi:drawing": 0xf1de, + "mdi:drawing-box": 0xf1df, + "mdi:dribbble": 0xf1e0, + "mdi:dribbble-box": 0xf1e1, + "mdi:drone": 0xf1e2, + "mdi:dropbox": 0xf1e3, + "mdi:drupal": 0xf1e4, + "mdi:duck": 0xf1e5, + "mdi:dumbbell": 0xf1e6, + "mdi:ear-hearing": 0xf7c4, + "mdi:ear-hearing-off": 0xfa44, + "mdi:earth": 0xf1e7, + "mdi:earth-box": 0xf6cc, + "mdi:earth-box-off": 0xf6cd, + "mdi:earth-off": 0xf1e8, + "mdi:edge": 0xf1e9, + "mdi:egg": 0xfaae, + "mdi:egg-easter": 0xfaaf, + "mdi:eight-track": 0xf9e9, + "mdi:eject": 0xf1ea, + "mdi:elephant": 0xf7c5, + "mdi:elevation-decline": 0xf1eb, + "mdi:elevation-rise": 0xf1ec, + "mdi:elevator": 0xf1ed, + "mdi:email": 0xf1ee, + "mdi:email-alert": 0xf6ce, + "mdi:email-check": 0xfab0, + "mdi:email-check-outline": 0xfab1, + "mdi:email-lock": 0xf1f1, + "mdi:email-open": 0xf1ef, + "mdi:email-open-outline": 0xf5ef, + "mdi:email-outline": 0xf1f0, + "mdi:email-plus": 0xf9ea, + "mdi:email-plus-outline": 0xf9eb, + "mdi:email-search": 0xf960, + "mdi:email-search-outline": 0xf961, + "mdi:email-variant": 0xf5f0, + "mdi:emby": 0xf6b3, + "mdi:emoticon": 0xf1f2, + "mdi:emoticon-cool": 0xf1f3, + "mdi:emoticon-dead": 0xf69a, + "mdi:emoticon-devil": 0xf1f4, + "mdi:emoticon-excited": 0xf69b, + "mdi:emoticon-happy": 0xf1f5, + "mdi:emoticon-neutral": 0xf1f6, + "mdi:emoticon-poop": 0xf1f7, + "mdi:emoticon-sad": 0xf1f8, + "mdi:emoticon-tongue": 0xf1f9, + "mdi:engine": 0xf1fa, + "mdi:engine-off": 0xfa45, + "mdi:engine-off-outline": 0xfa46, + "mdi:engine-outline": 0xf1fb, + "mdi:equal": 0xf1fc, + "mdi:equal-box": 0xf1fd, + "mdi:eraser": 0xf1fe, + "mdi:eraser-variant": 0xf642, + "mdi:escalator": 0xf1ff, + "mdi:et": 0xfab2, + "mdi:ethereum": 0xf869, + "mdi:ethernet": 0xf200, + "mdi:ethernet-cable": 0xf201, + "mdi:ethernet-cable-off": 0xf202, + "mdi:etsy": 0xf203, + "mdi:ev-station": 0xf5f1, + "mdi:eventbrite": 0xf7c6, + "mdi:evernote": 0xf204, + "mdi:exclamation": 0xf205, + "mdi:exit-run": 0xfa47, + "mdi:exit-to-app": 0xf206, + "mdi:expand-all": 0xfab3, + "mdi:expand-all-outline": 0xfab4, + "mdi:exponent": 0xf962, + "mdi:exponent-box": 0xf963, + "mdi:export": 0xf207, + "mdi:eye": 0xf208, + "mdi:eye-off": 0xf209, + "mdi:eye-off-outline": 0xf6d0, + "mdi:eye-outline": 0xf6cf, + "mdi:eye-plus": 0xf86a, + "mdi:eye-plus-outline": 0xf86b, + "mdi:eye-settings": 0xf86c, + "mdi:eye-settings-outline": 0xf86d, + "mdi:eyedropper": 0xf20a, + "mdi:eyedropper-variant": 0xf20b, + "mdi:face": 0xf643, + "mdi:face-profile": 0xf644, + "mdi:facebook": 0xf20c, + "mdi:facebook-box": 0xf20d, + "mdi:facebook-messenger": 0xf20e, + "mdi:factory": 0xf20f, + "mdi:fan": 0xf210, + "mdi:fan-off": 0xf81c, + "mdi:fast-forward": 0xf211, + "mdi:fast-forward-outline": 0xf6d1, + "mdi:fax": 0xf212, + "mdi:feather": 0xf6d2, + "mdi:feature-search": 0xfa48, + "mdi:feature-search-outline": 0xfa49, + "mdi:fedora": 0xf8da, + "mdi:ferry": 0xf213, + "mdi:file": 0xf214, + "mdi:file-account": 0xf73a, + "mdi:file-alert": 0xfa4a, + "mdi:file-alert-outline": 0xfa4b, + "mdi:file-cabinet": 0xfab5, + "mdi:file-chart": 0xf215, + "mdi:file-check": 0xf216, + "mdi:file-cloud": 0xf217, + "mdi:file-compare": 0xf8a9, + "mdi:file-delimited": 0xf218, + "mdi:file-document": 0xf219, + "mdi:file-document-box": 0xf21a, + "mdi:file-document-box-multiple": 0xfab6, + "mdi:file-document-box-multiple-outline": 0xfab7, + "mdi:file-document-box-outline": 0xf9ec, + "mdi:file-document-outline": 0xf9ed, + "mdi:file-download": 0xf964, + "mdi:file-download-outline": 0xf965, + "mdi:file-excel": 0xf21b, + "mdi:file-excel-box": 0xf21c, + "mdi:file-export": 0xf21d, + "mdi:file-find": 0xf21e, + "mdi:file-hidden": 0xf613, + "mdi:file-image": 0xf21f, + "mdi:file-import": 0xf220, + "mdi:file-lock": 0xf221, + "mdi:file-move": 0xfab8, + "mdi:file-multiple": 0xf222, + "mdi:file-music": 0xf223, + "mdi:file-outline": 0xf224, + "mdi:file-pdf": 0xf225, + "mdi:file-pdf-box": 0xf226, + "mdi:file-percent": 0xf81d, + "mdi:file-plus": 0xf751, + "mdi:file-powerpoint": 0xf227, + "mdi:file-powerpoint-box": 0xf228, + "mdi:file-presentation-box": 0xf229, + "mdi:file-question": 0xf86e, + "mdi:file-restore": 0xf670, + "mdi:file-send": 0xf22a, + "mdi:file-tree": 0xf645, + "mdi:file-undo": 0xf8db, + "mdi:file-upload": 0xfa4c, + "mdi:file-upload-outline": 0xfa4d, + "mdi:file-video": 0xf22b, + "mdi:file-word": 0xf22c, + "mdi:file-word-box": 0xf22d, + "mdi:file-xml": 0xf22e, + "mdi:film": 0xf22f, + "mdi:filmstrip": 0xf230, + "mdi:filmstrip-off": 0xf231, + "mdi:filter": 0xf232, + "mdi:filter-outline": 0xf233, + "mdi:filter-remove": 0xf234, + "mdi:filter-remove-outline": 0xf235, + "mdi:filter-variant": 0xf236, + "mdi:finance": 0xf81e, + "mdi:find-replace": 0xf6d3, + "mdi:fingerprint": 0xf237, + "mdi:fire": 0xf238, + "mdi:fire-truck": 0xf8aa, + "mdi:firebase": 0xf966, + "mdi:firefox": 0xf239, + "mdi:fish": 0xf23a, + "mdi:flag": 0xf23b, + "mdi:flag-checkered": 0xf23c, + "mdi:flag-outline": 0xf23d, + "mdi:flag-triangle": 0xf23f, + "mdi:flag-variant": 0xf240, + "mdi:flag-variant-outline": 0xf23e, + "mdi:flash": 0xf241, + "mdi:flash-auto": 0xf242, + "mdi:flash-circle": 0xf81f, + "mdi:flash-off": 0xf243, + "mdi:flash-outline": 0xf6d4, + "mdi:flash-red-eye": 0xf67a, + "mdi:flashlight": 0xf244, + "mdi:flashlight-off": 0xf245, + "mdi:flask": 0xf093, + "mdi:flask-empty": 0xf094, + "mdi:flask-empty-outline": 0xf095, + "mdi:flask-outline": 0xf096, + "mdi:flattr": 0xf246, + "mdi:flip-to-back": 0xf247, + "mdi:flip-to-front": 0xf248, + "mdi:floor-lamp": 0xf8dc, + "mdi:floor-plan": 0xf820, + "mdi:floppy": 0xf249, + "mdi:floppy-variant": 0xf9ee, + "mdi:flower": 0xf24a, + "mdi:flower-outline": 0xf9ef, + "mdi:flower-tulip": 0xf9f0, + "mdi:flower-tulip-outline": 0xf9f1, + "mdi:folder": 0xf24b, + "mdi:folder-account": 0xf24c, + "mdi:folder-clock": 0xfab9, + "mdi:folder-clock-outline": 0xfaba, + "mdi:folder-download": 0xf24d, + "mdi:folder-edit": 0xf8dd, + "mdi:folder-google-drive": 0xf24e, + "mdi:folder-image": 0xf24f, + "mdi:folder-key": 0xf8ab, + "mdi:folder-key-network": 0xf8ac, + "mdi:folder-lock": 0xf250, + "mdi:folder-lock-open": 0xf251, + "mdi:folder-move": 0xf252, + "mdi:folder-multiple": 0xf253, + "mdi:folder-multiple-image": 0xf254, + "mdi:folder-multiple-outline": 0xf255, + "mdi:folder-network": 0xf86f, + "mdi:folder-open": 0xf76f, + "mdi:folder-outline": 0xf256, + "mdi:folder-plus": 0xf257, + "mdi:folder-remove": 0xf258, + "mdi:folder-search": 0xf967, + "mdi:folder-search-outline": 0xf968, + "mdi:folder-star": 0xf69c, + "mdi:folder-upload": 0xf259, + "mdi:font-awesome": 0xf03a, + "mdi:food": 0xf25a, + "mdi:food-apple": 0xf25b, + "mdi:food-croissant": 0xf7c7, + "mdi:food-fork-drink": 0xf5f2, + "mdi:food-off": 0xf5f3, + "mdi:food-variant": 0xf25c, + "mdi:football": 0xf25d, + "mdi:football-australian": 0xf25e, + "mdi:football-helmet": 0xf25f, + "mdi:forklift": 0xf7c8, + "mdi:format-align-bottom": 0xf752, + "mdi:format-align-center": 0xf260, + "mdi:format-align-justify": 0xf261, + "mdi:format-align-left": 0xf262, + "mdi:format-align-middle": 0xf753, + "mdi:format-align-right": 0xf263, + "mdi:format-align-top": 0xf754, + "mdi:format-annotation-minus": 0xfabb, + "mdi:format-annotation-plus": 0xf646, + "mdi:format-bold": 0xf264, + "mdi:format-clear": 0xf265, + "mdi:format-color-fill": 0xf266, + "mdi:format-color-text": 0xf69d, + "mdi:format-columns": 0xf8de, + "mdi:format-float-center": 0xf267, + "mdi:format-float-left": 0xf268, + "mdi:format-float-none": 0xf269, + "mdi:format-float-right": 0xf26a, + "mdi:format-font": 0xf6d5, + "mdi:format-font-size-decrease": 0xf9f2, + "mdi:format-font-size-increase": 0xf9f3, + "mdi:format-header-1": 0xf26b, + "mdi:format-header-2": 0xf26c, + "mdi:format-header-3": 0xf26d, + "mdi:format-header-4": 0xf26e, + "mdi:format-header-5": 0xf26f, + "mdi:format-header-6": 0xf270, + "mdi:format-header-decrease": 0xf271, + "mdi:format-header-equal": 0xf272, + "mdi:format-header-increase": 0xf273, + "mdi:format-header-pound": 0xf274, + "mdi:format-horizontal-align-center": 0xf61e, + "mdi:format-horizontal-align-left": 0xf61f, + "mdi:format-horizontal-align-right": 0xf620, + "mdi:format-indent-decrease": 0xf275, + "mdi:format-indent-increase": 0xf276, + "mdi:format-italic": 0xf277, + "mdi:format-line-spacing": 0xf278, + "mdi:format-line-style": 0xf5c8, + "mdi:format-line-weight": 0xf5c9, + "mdi:format-list-bulleted": 0xf279, + "mdi:format-list-bulleted-type": 0xf27a, + "mdi:format-list-checkbox": 0xf969, + "mdi:format-list-checks": 0xf755, + "mdi:format-list-numbers": 0xf27b, + "mdi:format-page-break": 0xf6d6, + "mdi:format-paint": 0xf27c, + "mdi:format-paragraph": 0xf27d, + "mdi:format-pilcrow": 0xf6d7, + "mdi:format-quote-close": 0xf27e, + "mdi:format-quote-open": 0xf756, + "mdi:format-rotate-90": 0xf6a9, + "mdi:format-section": 0xf69e, + "mdi:format-size": 0xf27f, + "mdi:format-strikethrough": 0xf280, + "mdi:format-strikethrough-variant": 0xf281, + "mdi:format-subscript": 0xf282, + "mdi:format-superscript": 0xf283, + "mdi:format-text": 0xf284, + "mdi:format-textdirection-l-to-r": 0xf285, + "mdi:format-textdirection-r-to-l": 0xf286, + "mdi:format-title": 0xf5f4, + "mdi:format-underline": 0xf287, + "mdi:format-vertical-align-bottom": 0xf621, + "mdi:format-vertical-align-center": 0xf622, + "mdi:format-vertical-align-top": 0xf623, + "mdi:format-wrap-inline": 0xf288, + "mdi:format-wrap-square": 0xf289, + "mdi:format-wrap-tight": 0xf28a, + "mdi:format-wrap-top-bottom": 0xf28b, + "mdi:forum": 0xf28c, + "mdi:forum-outline": 0xf821, + "mdi:forward": 0xf28d, + "mdi:fountain": 0xf96a, + "mdi:foursquare": 0xf28e, + "mdi:freebsd": 0xf8df, + "mdi:fridge": 0xf28f, + "mdi:fridge-filled": 0xf290, + "mdi:fridge-filled-bottom": 0xf291, + "mdi:fridge-filled-top": 0xf292, + "mdi:fuel": 0xf7c9, + "mdi:fullscreen": 0xf293, + "mdi:fullscreen-exit": 0xf294, + "mdi:function": 0xf295, + "mdi:function-variant": 0xf870, + "mdi:gamepad": 0xf296, + "mdi:gamepad-variant": 0xf297, + "mdi:garage": 0xf6d8, + "mdi:garage-alert": 0xf871, + "mdi:garage-open": 0xf6d9, + "mdi:gas-cylinder": 0xf647, + "mdi:gas-station": 0xf298, + "mdi:gate": 0xf299, + "mdi:gate-and": 0xf8e0, + "mdi:gate-nand": 0xf8e1, + "mdi:gate-nor": 0xf8e2, + "mdi:gate-not": 0xf8e3, + "mdi:gate-or": 0xf8e4, + "mdi:gate-xnor": 0xf8e5, + "mdi:gate-xor": 0xf8e6, + "mdi:gauge": 0xf29a, + "mdi:gauge-empty": 0xf872, + "mdi:gauge-full": 0xf873, + "mdi:gauge-low": 0xf874, + "mdi:gavel": 0xf29b, + "mdi:gender-female": 0xf29c, + "mdi:gender-male": 0xf29d, + "mdi:gender-male-female": 0xf29e, + "mdi:gender-transgender": 0xf29f, + "mdi:gentoo": 0xf8e7, + "mdi:gesture": 0xf7ca, + "mdi:gesture-double-tap": 0xf73b, + "mdi:gesture-pinch": 0xfabc, + "mdi:gesture-spread": 0xfabd, + "mdi:gesture-swipe-down": 0xf73c, + "mdi:gesture-swipe-horizontal": 0xfabe, + "mdi:gesture-swipe-left": 0xf73d, + "mdi:gesture-swipe-right": 0xf73e, + "mdi:gesture-swipe-up": 0xf73f, + "mdi:gesture-swipe-vertical": 0xfabf, + "mdi:gesture-tap": 0xf740, + "mdi:gesture-two-double-tap": 0xf741, + "mdi:gesture-two-tap": 0xf742, + "mdi:ghost": 0xf2a0, + "mdi:ghost-off": 0xf9f4, + "mdi:gift": 0xf2a1, + "mdi:git": 0xf2a2, + "mdi:github-box": 0xf2a3, + "mdi:github-circle": 0xf2a4, + "mdi:github-face": 0xf6da, + "mdi:glass-cocktail": 0xf356, + "mdi:glass-flute": 0xf2a5, + "mdi:glass-mug": 0xf2a6, + "mdi:glass-stange": 0xf2a7, + "mdi:glass-tulip": 0xf2a8, + "mdi:glass-wine": 0xf875, + "mdi:glassdoor": 0xf2a9, + "mdi:glasses": 0xf2aa, + "mdi:globe-model": 0xf8e8, + "mdi:gmail": 0xf2ab, + "mdi:gnome": 0xf2ac, + "mdi:golf": 0xf822, + "mdi:gondola": 0xf685, + "mdi:google": 0xf2ad, + "mdi:google-allo": 0xf801, + "mdi:google-analytics": 0xf7cb, + "mdi:google-assistant": 0xf7cc, + "mdi:google-cardboard": 0xf2ae, + "mdi:google-chrome": 0xf2af, + "mdi:google-circles": 0xf2b0, + "mdi:google-circles-communities": 0xf2b1, + "mdi:google-circles-extended": 0xf2b2, + "mdi:google-circles-group": 0xf2b3, + "mdi:google-controller": 0xf2b4, + "mdi:google-controller-off": 0xf2b5, + "mdi:google-drive": 0xf2b6, + "mdi:google-earth": 0xf2b7, + "mdi:google-fit": 0xf96b, + "mdi:google-glass": 0xf2b8, + "mdi:google-hangouts": 0xf2c9, + "mdi:google-home": 0xf823, + "mdi:google-keep": 0xf6db, + "mdi:google-lens": 0xf9f5, + "mdi:google-maps": 0xf5f5, + "mdi:google-nearby": 0xf2b9, + "mdi:google-pages": 0xf2ba, + "mdi:google-photos": 0xf6dc, + "mdi:google-physical-web": 0xf2bb, + "mdi:google-play": 0xf2bc, + "mdi:google-plus": 0xf2bd, + "mdi:google-plus-box": 0xf2be, + "mdi:google-spreadsheet": 0xf9f6, + "mdi:google-translate": 0xf2bf, + "mdi:google-wallet": 0xf2c0, + "mdi:gpu": 0xf8ad, + "mdi:gradient": 0xf69f, + "mdi:graphql": 0xf876, + "mdi:grease-pencil": 0xf648, + "mdi:greater-than": 0xf96c, + "mdi:greater-than-or-equal": 0xf96d, + "mdi:grid": 0xf2c1, + "mdi:grid-large": 0xf757, + "mdi:grid-off": 0xf2c2, + "mdi:group": 0xf2c3, + "mdi:guitar-acoustic": 0xf770, + "mdi:guitar-electric": 0xf2c4, + "mdi:guitar-pick": 0xf2c5, + "mdi:guitar-pick-outline": 0xf2c6, + "mdi:guy-fawkes-mask": 0xf824, + "mdi:hackernews": 0xf624, + "mdi:hail": 0xfac0, + "mdi:hamburger": 0xf684, + "mdi:hammer": 0xf8e9, + "mdi:hand": 0xfa4e, + "mdi:hand-okay": 0xfa4f, + "mdi:hand-peace": 0xfa50, + "mdi:hand-peace-variant": 0xfa51, + "mdi:hand-pointing-down": 0xfa52, + "mdi:hand-pointing-left": 0xfa53, + "mdi:hand-pointing-right": 0xf2c7, + "mdi:hand-pointing-up": 0xfa54, + "mdi:hanger": 0xf2c8, + "mdi:hard-hat": 0xf96e, + "mdi:harddisk": 0xf2ca, + "mdi:headphones": 0xf2cb, + "mdi:headphones-bluetooth": 0xf96f, + "mdi:headphones-box": 0xf2cc, + "mdi:headphones-off": 0xf7cd, + "mdi:headphones-settings": 0xf2cd, + "mdi:headset": 0xf2ce, + "mdi:headset-dock": 0xf2cf, + "mdi:headset-off": 0xf2d0, + "mdi:heart": 0xf2d1, + "mdi:heart-box": 0xf2d2, + "mdi:heart-box-outline": 0xf2d3, + "mdi:heart-broken": 0xf2d4, + "mdi:heart-circle": 0xf970, + "mdi:heart-circle-outline": 0xf971, + "mdi:heart-half": 0xf6de, + "mdi:heart-half-full": 0xf6dd, + "mdi:heart-half-outline": 0xf6df, + "mdi:heart-multiple": 0xfa55, + "mdi:heart-multiple-outline": 0xfa56, + "mdi:heart-off": 0xf758, + "mdi:heart-outline": 0xf2d5, + "mdi:heart-pulse": 0xf5f6, + "mdi:helicopter": 0xfac1, + "mdi:help": 0xf2d6, + "mdi:help-box": 0xf78a, + "mdi:help-circle": 0xf2d7, + "mdi:help-circle-outline": 0xf625, + "mdi:help-network": 0xf6f4, + "mdi:hexagon": 0xf2d8, + "mdi:hexagon-multiple": 0xf6e0, + "mdi:hexagon-outline": 0xf2d9, + "mdi:hexagon-slice-1": 0xfac2, + "mdi:hexagon-slice-2": 0xfac3, + "mdi:hexagon-slice-3": 0xfac4, + "mdi:hexagon-slice-4": 0xfac5, + "mdi:hexagon-slice-5": 0xfac6, + "mdi:hexagon-slice-6": 0xfac7, + "mdi:hexagram": 0xfac8, + "mdi:hexagram-outline": 0xfac9, + "mdi:high-definition": 0xf7ce, + "mdi:high-definition-box": 0xf877, + "mdi:highway": 0xf5f7, + "mdi:hinduism": 0xf972, + "mdi:history": 0xf2da, + "mdi:hockey-puck": 0xf878, + "mdi:hockey-sticks": 0xf879, + "mdi:hololens": 0xf2db, + "mdi:home": 0xf2dc, + "mdi:home-account": 0xf825, + "mdi:home-alert": 0xf87a, + "mdi:home-assistant": 0xf7cf, + "mdi:home-automation": 0xf7d0, + "mdi:home-circle": 0xf7d1, + "mdi:home-currency-usd": 0xf8ae, + "mdi:home-heart": 0xf826, + "mdi:home-lock": 0xf8ea, + "mdi:home-lock-open": 0xf8eb, + "mdi:home-map-marker": 0xf5f8, + "mdi:home-minus": 0xf973, + "mdi:home-modern": 0xf2dd, + "mdi:home-outline": 0xf6a0, + "mdi:home-plus": 0xf974, + "mdi:home-variant": 0xf2de, + "mdi:hook": 0xf6e1, + "mdi:hook-off": 0xf6e2, + "mdi:hops": 0xf2df, + "mdi:horseshoe": 0xfa57, + "mdi:hospital": 0xf2e0, + "mdi:hospital-building": 0xf2e1, + "mdi:hospital-marker": 0xf2e2, + "mdi:hot-tub": 0xf827, + "mdi:hotel": 0xf2e3, + "mdi:houzz": 0xf2e4, + "mdi:houzz-box": 0xf2e5, + "mdi:hulu": 0xf828, + "mdi:human": 0xf2e6, + "mdi:human-child": 0xf2e7, + "mdi:human-female": 0xf649, + "mdi:human-female-boy": 0xfa58, + "mdi:human-female-female": 0xfa59, + "mdi:human-female-girl": 0xfa5a, + "mdi:human-greeting": 0xf64a, + "mdi:human-handsdown": 0xf64b, + "mdi:human-handsup": 0xf64c, + "mdi:human-male": 0xf64d, + "mdi:human-male-boy": 0xfa5b, + "mdi:human-male-female": 0xf2e8, + "mdi:human-male-girl": 0xfa5c, + "mdi:human-male-male": 0xfa5d, + "mdi:human-pregnant": 0xf5cf, + "mdi:humble-bundle": 0xf743, + "mdi:ice-cream": 0xf829, + "mdi:image": 0xf2e9, + "mdi:image-album": 0xf2ea, + "mdi:image-area": 0xf2eb, + "mdi:image-area-close": 0xf2ec, + "mdi:image-broken": 0xf2ed, + "mdi:image-broken-variant": 0xf2ee, + "mdi:image-filter": 0xf2ef, + "mdi:image-filter-black-white": 0xf2f0, + "mdi:image-filter-center-focus": 0xf2f1, + "mdi:image-filter-center-focus-weak": 0xf2f2, + "mdi:image-filter-drama": 0xf2f3, + "mdi:image-filter-frames": 0xf2f4, + "mdi:image-filter-hdr": 0xf2f5, + "mdi:image-filter-none": 0xf2f6, + "mdi:image-filter-tilt-shift": 0xf2f7, + "mdi:image-filter-vintage": 0xf2f8, + "mdi:image-move": 0xf9f7, + "mdi:image-multiple": 0xf2f9, + "mdi:image-off": 0xf82a, + "mdi:image-outline": 0xf975, + "mdi:image-plus": 0xf87b, + "mdi:image-search": 0xf976, + "mdi:image-search-outline": 0xf977, + "mdi:import": 0xf2fa, + "mdi:inbox": 0xf686, + "mdi:inbox-arrow-down": 0xf2fb, + "mdi:inbox-arrow-up": 0xf3d1, + "mdi:inbox-multiple": 0xf8af, + "mdi:incognito": 0xf5f9, + "mdi:infinity": 0xf6e3, + "mdi:information": 0xf2fc, + "mdi:information-outline": 0xf2fd, + "mdi:information-variant": 0xf64e, + "mdi:instagram": 0xf2fe, + "mdi:instapaper": 0xf2ff, + "mdi:internet-explorer": 0xf300, + "mdi:invert-colors": 0xf301, + "mdi:ip": 0xfa5e, + "mdi:ip-network": 0xfa5f, + "mdi:islam": 0xf978, + "mdi:itunes": 0xf676, + "mdi:jeepney": 0xf302, + "mdi:jira": 0xf303, + "mdi:jquery": 0xf87c, + "mdi:jsfiddle": 0xf304, + "mdi:json": 0xf626, + "mdi:judaism": 0xf979, + "mdi:karate": 0xf82b, + "mdi:keg": 0xf305, + "mdi:kettle": 0xf5fa, + "mdi:key": 0xf306, + "mdi:key-change": 0xf307, + "mdi:key-minus": 0xf308, + "mdi:key-plus": 0xf309, + "mdi:key-remove": 0xf30a, + "mdi:key-variant": 0xf30b, + "mdi:keyboard": 0xf30c, + "mdi:keyboard-backspace": 0xf30d, + "mdi:keyboard-caps": 0xf30e, + "mdi:keyboard-close": 0xf30f, + "mdi:keyboard-off": 0xf310, + "mdi:keyboard-outline": 0xf97a, + "mdi:keyboard-return": 0xf311, + "mdi:keyboard-settings": 0xf9f8, + "mdi:keyboard-settings-outline": 0xf9f9, + "mdi:keyboard-tab": 0xf312, + "mdi:keyboard-variant": 0xf313, + "mdi:kickstarter": 0xf744, + "mdi:knife": 0xf9fa, + "mdi:knife-military": 0xf9fb, + "mdi:kodi": 0xf314, + "mdi:label": 0xf315, + "mdi:label-off": 0xfaca, + "mdi:label-off-outline": 0xfacb, + "mdi:label-outline": 0xf316, + "mdi:label-variant": 0xfacc, + "mdi:label-variant-outline": 0xfacd, + "mdi:ladybug": 0xf82c, + "mdi:lambda": 0xf627, + "mdi:lamp": 0xf6b4, + "mdi:lan": 0xf317, + "mdi:lan-connect": 0xf318, + "mdi:lan-disconnect": 0xf319, + "mdi:lan-pending": 0xf31a, + "mdi:language-c": 0xf671, + "mdi:language-cpp": 0xf672, + "mdi:language-csharp": 0xf31b, + "mdi:language-css3": 0xf31c, + "mdi:language-go": 0xf7d2, + "mdi:language-html5": 0xf31d, + "mdi:language-javascript": 0xf31e, + "mdi:language-lua": 0xf8b0, + "mdi:language-php": 0xf31f, + "mdi:language-python": 0xf320, + "mdi:language-python-text": 0xf321, + "mdi:language-r": 0xf7d3, + "mdi:language-ruby-on-rails": 0xface, + "mdi:language-swift": 0xf6e4, + "mdi:language-typescript": 0xf6e5, + "mdi:laptop": 0xf322, + "mdi:laptop-chromebook": 0xf323, + "mdi:laptop-mac": 0xf324, + "mdi:laptop-off": 0xf6e6, + "mdi:laptop-windows": 0xf325, + "mdi:laravel": 0xfacf, + "mdi:lastfm": 0xf326, + "mdi:lastpass": 0xf446, + "mdi:launch": 0xf327, + "mdi:lava-lamp": 0xf7d4, + "mdi:layers": 0xf328, + "mdi:layers-off": 0xf329, + "mdi:layers-off-outline": 0xf9fc, + "mdi:layers-outline": 0xf9fd, + "mdi:lead-pencil": 0xf64f, + "mdi:leaf": 0xf32a, + "mdi:led-off": 0xf32b, + "mdi:led-on": 0xf32c, + "mdi:led-outline": 0xf32d, + "mdi:led-strip": 0xf7d5, + "mdi:led-variant-off": 0xf32e, + "mdi:led-variant-on": 0xf32f, + "mdi:led-variant-outline": 0xf330, + "mdi:less-than": 0xf97b, + "mdi:less-than-or-equal": 0xf97c, + "mdi:library": 0xf331, + "mdi:library-books": 0xf332, + "mdi:library-music": 0xf333, + "mdi:library-plus": 0xf334, + "mdi:lifebuoy": 0xf87d, + "mdi:light-switch": 0xf97d, + "mdi:lightbulb": 0xf335, + "mdi:lightbulb-on": 0xf6e7, + "mdi:lightbulb-on-outline": 0xf6e8, + "mdi:lightbulb-outline": 0xf336, + "mdi:lighthouse": 0xf9fe, + "mdi:lighthouse-on": 0xf9ff, + "mdi:link": 0xf337, + "mdi:link-off": 0xf338, + "mdi:link-variant": 0xf339, + "mdi:link-variant-off": 0xf33a, + "mdi:linkedin": 0xf33b, + "mdi:linkedin-box": 0xf33c, + "mdi:linux": 0xf33d, + "mdi:linux-mint": 0xf8ec, + "mdi:litecoin": 0xfa60, + "mdi:loading": 0xf771, + "mdi:lock": 0xf33e, + "mdi:lock-alert": 0xf8ed, + "mdi:lock-clock": 0xf97e, + "mdi:lock-open": 0xf33f, + "mdi:lock-open-outline": 0xf340, + "mdi:lock-outline": 0xf341, + "mdi:lock-pattern": 0xf6e9, + "mdi:lock-plus": 0xf5fb, + "mdi:lock-question": 0xf8ee, + "mdi:lock-reset": 0xf772, + "mdi:lock-smart": 0xf8b1, + "mdi:locker": 0xf7d6, + "mdi:locker-multiple": 0xf7d7, + "mdi:login": 0xf342, + "mdi:login-variant": 0xf5fc, + "mdi:logout": 0xf343, + "mdi:logout-variant": 0xf5fd, + "mdi:looks": 0xf344, + "mdi:loop": 0xf6ea, + "mdi:loupe": 0xf345, + "mdi:lumx": 0xf346, + "mdi:magnet": 0xf347, + "mdi:magnet-on": 0xf348, + "mdi:magnify": 0xf349, + "mdi:magnify-close": 0xf97f, + "mdi:magnify-minus": 0xf34a, + "mdi:magnify-minus-cursor": 0xfa61, + "mdi:magnify-minus-outline": 0xf6eb, + "mdi:magnify-plus": 0xf34b, + "mdi:magnify-plus-cursor": 0xfa62, + "mdi:magnify-plus-outline": 0xf6ec, + "mdi:mail-ru": 0xf34c, + "mdi:mailbox": 0xf6ed, + "mdi:map": 0xf34d, + "mdi:map-legend": 0xfa00, + "mdi:map-marker": 0xf34e, + "mdi:map-marker-circle": 0xf34f, + "mdi:map-marker-distance": 0xf8ef, + "mdi:map-marker-minus": 0xf650, + "mdi:map-marker-multiple": 0xf350, + "mdi:map-marker-off": 0xf351, + "mdi:map-marker-outline": 0xf7d8, + "mdi:map-marker-plus": 0xf651, + "mdi:map-marker-radius": 0xf352, + "mdi:map-minus": 0xf980, + "mdi:map-outline": 0xf981, + "mdi:map-plus": 0xf982, + "mdi:map-search": 0xf983, + "mdi:map-search-outline": 0xf984, + "mdi:margin": 0xf353, + "mdi:markdown": 0xf354, + "mdi:marker": 0xf652, + "mdi:marker-check": 0xf355, + "mdi:mastodon": 0xfad0, + "mdi:mastodon-variant": 0xfad1, + "mdi:material-design": 0xf985, + "mdi:material-ui": 0xf357, + "mdi:math-compass": 0xf358, + "mdi:matrix": 0xf628, + "mdi:maxcdn": 0xf359, + "mdi:medal": 0xf986, + "mdi:medical-bag": 0xf6ee, + "mdi:medium": 0xf35a, + "mdi:meetup": 0xfad2, + "mdi:memory": 0xf35b, + "mdi:menu": 0xf35c, + "mdi:menu-down": 0xf35d, + "mdi:menu-down-outline": 0xf6b5, + "mdi:menu-left": 0xf35e, + "mdi:menu-left-outline": 0xfa01, + "mdi:menu-right": 0xf35f, + "mdi:menu-right-outline": 0xfa02, + "mdi:menu-swap": 0xfa63, + "mdi:menu-swap-outline": 0xfa64, + "mdi:menu-up": 0xf360, + "mdi:menu-up-outline": 0xf6b6, + "mdi:message": 0xf361, + "mdi:message-alert": 0xf362, + "mdi:message-alert-outline": 0xfa03, + "mdi:message-bulleted": 0xf6a1, + "mdi:message-bulleted-off": 0xf6a2, + "mdi:message-draw": 0xf363, + "mdi:message-image": 0xf364, + "mdi:message-outline": 0xf365, + "mdi:message-plus": 0xf653, + "mdi:message-processing": 0xf366, + "mdi:message-reply": 0xf367, + "mdi:message-reply-text": 0xf368, + "mdi:message-settings": 0xf6ef, + "mdi:message-settings-variant": 0xf6f0, + "mdi:message-text": 0xf369, + "mdi:message-text-outline": 0xf36a, + "mdi:message-video": 0xf36b, + "mdi:meteor": 0xf629, + "mdi:metronome": 0xf7d9, + "mdi:metronome-tick": 0xf7da, + "mdi:micro-sd": 0xf7db, + "mdi:microphone": 0xf36c, + "mdi:microphone-minus": 0xf8b2, + "mdi:microphone-off": 0xf36d, + "mdi:microphone-outline": 0xf36e, + "mdi:microphone-plus": 0xf8b3, + "mdi:microphone-settings": 0xf36f, + "mdi:microphone-variant": 0xf370, + "mdi:microphone-variant-off": 0xf371, + "mdi:microscope": 0xf654, + "mdi:microsoft": 0xf372, + "mdi:microsoft-dynamics": 0xf987, + "mdi:midi": 0xf8f0, + "mdi:midi-port": 0xf8f1, + "mdi:minecraft": 0xf373, + "mdi:mini-sd": 0xfa04, + "mdi:minidisc": 0xfa05, + "mdi:minus": 0xf374, + "mdi:minus-box": 0xf375, + "mdi:minus-box-outline": 0xf6f1, + "mdi:minus-circle": 0xf376, + "mdi:minus-circle-outline": 0xf377, + "mdi:minus-network": 0xf378, + "mdi:mixcloud": 0xf62a, + "mdi:mixed-reality": 0xf87e, + "mdi:mixer": 0xf7dc, + "mdi:monitor": 0xf379, + "mdi:monitor-cellphone": 0xf988, + "mdi:monitor-cellphone-star": 0xf989, + "mdi:monitor-dashboard": 0xfa06, + "mdi:monitor-multiple": 0xf37a, + "mdi:more": 0xf37b, + "mdi:motorbike": 0xf37c, + "mdi:mouse": 0xf37d, + "mdi:mouse-bluetooth": 0xf98a, + "mdi:mouse-off": 0xf37e, + "mdi:mouse-variant": 0xf37f, + "mdi:mouse-variant-off": 0xf380, + "mdi:move-resize": 0xf655, + "mdi:move-resize-variant": 0xf656, + "mdi:movie": 0xf381, + "mdi:movie-roll": 0xf7dd, + "mdi:muffin": 0xf98b, + "mdi:multiplication": 0xf382, + "mdi:multiplication-box": 0xf383, + "mdi:mushroom": 0xf7de, + "mdi:mushroom-outline": 0xf7df, + "mdi:music": 0xf759, + "mdi:music-box": 0xf384, + "mdi:music-box-outline": 0xf385, + "mdi:music-circle": 0xf386, + "mdi:music-circle-outline": 0xfad3, + "mdi:music-note": 0xf387, + "mdi:music-note-bluetooth": 0xf5fe, + "mdi:music-note-bluetooth-off": 0xf5ff, + "mdi:music-note-eighth": 0xf388, + "mdi:music-note-half": 0xf389, + "mdi:music-note-off": 0xf38a, + "mdi:music-note-quarter": 0xf38b, + "mdi:music-note-sixteenth": 0xf38c, + "mdi:music-note-whole": 0xf38d, + "mdi:music-off": 0xf75a, + "mdi:nas": 0xf8f2, + "mdi:nativescript": 0xf87f, + "mdi:nature": 0xf38e, + "mdi:nature-people": 0xf38f, + "mdi:navigation": 0xf390, + "mdi:near-me": 0xf5cd, + "mdi:needle": 0xf391, + "mdi:netflix": 0xf745, + "mdi:network": 0xf6f2, + "mdi:network-strength-1": 0xf8f3, + "mdi:network-strength-1-alert": 0xf8f4, + "mdi:network-strength-2": 0xf8f5, + "mdi:network-strength-2-alert": 0xf8f6, + "mdi:network-strength-3": 0xf8f7, + "mdi:network-strength-3-alert": 0xf8f8, + "mdi:network-strength-4": 0xf8f9, + "mdi:network-strength-4-alert": 0xf8fa, + "mdi:network-strength-off": 0xf8fb, + "mdi:network-strength-off-outline": 0xf8fc, + "mdi:network-strength-outline": 0xf8fd, + "mdi:new-box": 0xf394, + "mdi:newspaper": 0xf395, + "mdi:nfc": 0xf396, + "mdi:nfc-tap": 0xf397, + "mdi:nfc-variant": 0xf398, + "mdi:ninja": 0xf773, + "mdi:nintendo-switch": 0xf7e0, + "mdi:nodejs": 0xf399, + "mdi:not-equal": 0xf98c, + "mdi:not-equal-variant": 0xf98d, + "mdi:note": 0xf39a, + "mdi:note-multiple": 0xf6b7, + "mdi:note-multiple-outline": 0xf6b8, + "mdi:note-outline": 0xf39b, + "mdi:note-plus": 0xf39c, + "mdi:note-plus-outline": 0xf39d, + "mdi:note-text": 0xf39e, + "mdi:notebook": 0xf82d, + "mdi:notification-clear-all": 0xf39f, + "mdi:npm": 0xf6f6, + "mdi:npm-variant": 0xf98e, + "mdi:npm-variant-outline": 0xf98f, + "mdi:nuke": 0xf6a3, + "mdi:null": 0xf7e1, + "mdi:numeric": 0xf3a0, + "mdi:numeric-0-box": 0xf3a1, + "mdi:numeric-0-box-multiple-outline": 0xf3a2, + "mdi:numeric-0-box-outline": 0xf3a3, + "mdi:numeric-1-box": 0xf3a4, + "mdi:numeric-1-box-multiple-outline": 0xf3a5, + "mdi:numeric-1-box-outline": 0xf3a6, + "mdi:numeric-2-box": 0xf3a7, + "mdi:numeric-2-box-multiple-outline": 0xf3a8, + "mdi:numeric-2-box-outline": 0xf3a9, + "mdi:numeric-3-box": 0xf3aa, + "mdi:numeric-3-box-multiple-outline": 0xf3ab, + "mdi:numeric-3-box-outline": 0xf3ac, + "mdi:numeric-4-box": 0xf3ad, + "mdi:numeric-4-box-multiple-outline": 0xf3ae, + "mdi:numeric-4-box-outline": 0xf3af, + "mdi:numeric-5-box": 0xf3b0, + "mdi:numeric-5-box-multiple-outline": 0xf3b1, + "mdi:numeric-5-box-outline": 0xf3b2, + "mdi:numeric-6-box": 0xf3b3, + "mdi:numeric-6-box-multiple-outline": 0xf3b4, + "mdi:numeric-6-box-outline": 0xf3b5, + "mdi:numeric-7-box": 0xf3b6, + "mdi:numeric-7-box-multiple-outline": 0xf3b7, + "mdi:numeric-7-box-outline": 0xf3b8, + "mdi:numeric-8-box": 0xf3b9, + "mdi:numeric-8-box-multiple-outline": 0xf3ba, + "mdi:numeric-8-box-outline": 0xf3bb, + "mdi:numeric-9-box": 0xf3bc, + "mdi:numeric-9-box-multiple-outline": 0xf3bd, + "mdi:numeric-9-box-outline": 0xf3be, + "mdi:numeric-9-plus-box": 0xf3bf, + "mdi:numeric-9-plus-box-multiple-outline": 0xf3c0, + "mdi:numeric-9-plus-box-outline": 0xf3c1, + "mdi:nut": 0xf6f7, + "mdi:nutrition": 0xf3c2, + "mdi:oar": 0xf67b, + "mdi:octagon": 0xf3c3, + "mdi:octagon-outline": 0xf3c4, + "mdi:octagram": 0xf6f8, + "mdi:octagram-outline": 0xf774, + "mdi:odnoklassniki": 0xf3c5, + "mdi:office": 0xf3c6, + "mdi:office-building": 0xf990, + "mdi:oil": 0xf3c7, + "mdi:oil-temperature": 0xf3c8, + "mdi:omega": 0xf3c9, + "mdi:onedrive": 0xf3ca, + "mdi:onenote": 0xf746, + "mdi:onepassword": 0xf880, + "mdi:opacity": 0xf5cc, + "mdi:open-in-app": 0xf3cb, + "mdi:open-in-new": 0xf3cc, + "mdi:openid": 0xf3cd, + "mdi:opera": 0xf3ce, + "mdi:orbit": 0xf018, + "mdi:ornament": 0xf3cf, + "mdi:ornament-variant": 0xf3d0, + "mdi:owl": 0xf3d2, + "mdi:package": 0xf3d3, + "mdi:package-down": 0xf3d4, + "mdi:package-up": 0xf3d5, + "mdi:package-variant": 0xf3d6, + "mdi:package-variant-closed": 0xf3d7, + "mdi:page-first": 0xf600, + "mdi:page-last": 0xf601, + "mdi:page-layout-body": 0xf6f9, + "mdi:page-layout-footer": 0xf6fa, + "mdi:page-layout-header": 0xf6fb, + "mdi:page-layout-sidebar-left": 0xf6fc, + "mdi:page-layout-sidebar-right": 0xf6fd, + "mdi:palette": 0xf3d8, + "mdi:palette-advanced": 0xf3d9, + "mdi:palette-swatch": 0xf8b4, + "mdi:panda": 0xf3da, + "mdi:pandora": 0xf3db, + "mdi:panorama": 0xf3dc, + "mdi:panorama-fisheye": 0xf3dd, + "mdi:panorama-horizontal": 0xf3de, + "mdi:panorama-vertical": 0xf3df, + "mdi:panorama-wide-angle": 0xf3e0, + "mdi:paper-cut-vertical": 0xf3e1, + "mdi:paperclip": 0xf3e2, + "mdi:parking": 0xf3e3, + "mdi:passport": 0xf7e2, + "mdi:patreon": 0xf881, + "mdi:pause": 0xf3e4, + "mdi:pause-circle": 0xf3e5, + "mdi:pause-circle-outline": 0xf3e6, + "mdi:pause-octagon": 0xf3e7, + "mdi:pause-octagon-outline": 0xf3e8, + "mdi:paw": 0xf3e9, + "mdi:paw-off": 0xf657, + "mdi:paypal": 0xf882, + "mdi:peace": 0xf883, + "mdi:pen": 0xf3ea, + "mdi:pencil": 0xf3eb, + "mdi:pencil-box": 0xf3ec, + "mdi:pencil-box-outline": 0xf3ed, + "mdi:pencil-circle": 0xf6fe, + "mdi:pencil-circle-outline": 0xf775, + "mdi:pencil-lock": 0xf3ee, + "mdi:pencil-off": 0xf3ef, + "mdi:pentagon": 0xf6ff, + "mdi:pentagon-outline": 0xf700, + "mdi:percent": 0xf3f0, + "mdi:periodic-table": 0xf8b5, + "mdi:periodic-table-co2": 0xf7e3, + "mdi:periscope": 0xf747, + "mdi:pharmacy": 0xf3f1, + "mdi:phone": 0xf3f2, + "mdi:phone-bluetooth": 0xf3f3, + "mdi:phone-classic": 0xf602, + "mdi:phone-forward": 0xf3f4, + "mdi:phone-hangup": 0xf3f5, + "mdi:phone-in-talk": 0xf3f6, + "mdi:phone-incoming": 0xf3f7, + "mdi:phone-lock": 0xf3f8, + "mdi:phone-log": 0xf3f9, + "mdi:phone-minus": 0xf658, + "mdi:phone-missed": 0xf3fa, + "mdi:phone-outgoing": 0xf3fb, + "mdi:phone-paused": 0xf3fc, + "mdi:phone-plus": 0xf659, + "mdi:phone-return": 0xf82e, + "mdi:phone-rotate-landscape": 0xf884, + "mdi:phone-rotate-portrait": 0xf885, + "mdi:phone-settings": 0xf3fd, + "mdi:phone-voip": 0xf3fe, + "mdi:pi": 0xf3ff, + "mdi:pi-box": 0xf400, + "mdi:piano": 0xf67c, + "mdi:pickaxe": 0xf8b6, + "mdi:pier": 0xf886, + "mdi:pier-crane": 0xf887, + "mdi:pig": 0xf401, + "mdi:pill": 0xf402, + "mdi:pillar": 0xf701, + "mdi:pin": 0xf403, + "mdi:pin-off": 0xf404, + "mdi:pin-off-outline": 0xf92f, + "mdi:pin-outline": 0xf930, + "mdi:pine-tree": 0xf405, + "mdi:pine-tree-box": 0xf406, + "mdi:pinterest": 0xf407, + "mdi:pinterest-box": 0xf408, + "mdi:pinwheel": 0xfad4, + "mdi:pinwheel-outline": 0xfad5, + "mdi:pipe": 0xf7e4, + "mdi:pipe-disconnected": 0xf7e5, + "mdi:pipe-leak": 0xf888, + "mdi:pirate": 0xfa07, + "mdi:pistol": 0xf702, + "mdi:piston": 0xf889, + "mdi:pizza": 0xf409, + "mdi:plane-shield": 0xf6ba, + "mdi:play": 0xf40a, + "mdi:play-box-outline": 0xf40b, + "mdi:play-circle": 0xf40c, + "mdi:play-circle-outline": 0xf40d, + "mdi:play-network": 0xf88a, + "mdi:play-pause": 0xf40e, + "mdi:play-protected-content": 0xf40f, + "mdi:play-speed": 0xf8fe, + "mdi:playlist-check": 0xf5c7, + "mdi:playlist-edit": 0xf8ff, + "mdi:playlist-minus": 0xf410, + "mdi:playlist-play": 0xf411, + "mdi:playlist-plus": 0xf412, + "mdi:playlist-remove": 0xf413, + "mdi:playstation": 0xf414, + "mdi:plex": 0xf6b9, + "mdi:plus": 0xf415, + "mdi:plus-box": 0xf416, + "mdi:plus-box-outline": 0xf703, + "mdi:plus-circle": 0xf417, + "mdi:plus-circle-multiple-outline": 0xf418, + "mdi:plus-circle-outline": 0xf419, + "mdi:plus-minus": 0xf991, + "mdi:plus-minus-box": 0xf992, + "mdi:plus-network": 0xf41a, + "mdi:plus-one": 0xf41b, + "mdi:plus-outline": 0xf704, + "mdi:pocket": 0xf41c, + "mdi:podcast": 0xf993, + "mdi:pokeball": 0xf41d, + "mdi:pokemon-go": 0xfa08, + "mdi:poker-chip": 0xf82f, + "mdi:polaroid": 0xf41e, + "mdi:poll": 0xf41f, + "mdi:poll-box": 0xf420, + "mdi:polymer": 0xf421, + "mdi:pool": 0xf606, + "mdi:popcorn": 0xf422, + "mdi:pot": 0xf65a, + "mdi:pot-mix": 0xf65b, + "mdi:pound": 0xf423, + "mdi:pound-box": 0xf424, + "mdi:power": 0xf425, + "mdi:power-cycle": 0xf900, + "mdi:power-off": 0xf901, + "mdi:power-on": 0xf902, + "mdi:power-plug": 0xf6a4, + "mdi:power-plug-off": 0xf6a5, + "mdi:power-settings": 0xf426, + "mdi:power-sleep": 0xf903, + "mdi:power-socket": 0xf427, + "mdi:power-socket-au": 0xf904, + "mdi:power-socket-eu": 0xf7e6, + "mdi:power-socket-uk": 0xf7e7, + "mdi:power-socket-us": 0xf7e8, + "mdi:power-standby": 0xf905, + "mdi:powershell": 0xfa09, + "mdi:prescription": 0xf705, + "mdi:presentation": 0xf428, + "mdi:presentation-play": 0xf429, + "mdi:printer": 0xf42a, + "mdi:printer-3d": 0xf42b, + "mdi:printer-alert": 0xf42c, + "mdi:printer-settings": 0xf706, + "mdi:printer-wireless": 0xfa0a, + "mdi:priority-high": 0xf603, + "mdi:priority-low": 0xf604, + "mdi:professional-hexagon": 0xf42d, + "mdi:progress-check": 0xf994, + "mdi:progress-clock": 0xf995, + "mdi:progress-download": 0xf996, + "mdi:progress-upload": 0xf997, + "mdi:projector": 0xf42e, + "mdi:projector-screen": 0xf42f, + "mdi:publish": 0xf6a6, + "mdi:pulse": 0xf430, + "mdi:puzzle": 0xf431, + "mdi:puzzle-outline": 0xfa65, + "mdi:qi": 0xf998, + "mdi:qqchat": 0xf605, + "mdi:qrcode": 0xf432, + "mdi:qrcode-edit": 0xf8b7, + "mdi:qrcode-scan": 0xf433, + "mdi:quadcopter": 0xf434, + "mdi:quality-high": 0xf435, + "mdi:quality-low": 0xfa0b, + "mdi:quality-medium": 0xfa0c, + "mdi:quicktime": 0xf436, + "mdi:rabbit": 0xf906, + "mdi:radar": 0xf437, + "mdi:radiator": 0xf438, + "mdi:radiator-disabled": 0xfad6, + "mdi:radiator-off": 0xfad7, + "mdi:radio": 0xf439, + "mdi:radio-handheld": 0xf43a, + "mdi:radio-tower": 0xf43b, + "mdi:radioactive": 0xf43c, + "mdi:radiobox-blank": 0xf43d, + "mdi:radiobox-marked": 0xf43e, + "mdi:raspberrypi": 0xf43f, + "mdi:ray-end": 0xf440, + "mdi:ray-end-arrow": 0xf441, + "mdi:ray-start": 0xf442, + "mdi:ray-start-arrow": 0xf443, + "mdi:ray-start-end": 0xf444, + "mdi:ray-vertex": 0xf445, + "mdi:react": 0xf707, + "mdi:read": 0xf447, + "mdi:receipt": 0xf449, + "mdi:record": 0xf44a, + "mdi:record-player": 0xf999, + "mdi:record-rec": 0xf44b, + "mdi:recycle": 0xf44c, + "mdi:reddit": 0xf44d, + "mdi:redo": 0xf44e, + "mdi:redo-variant": 0xf44f, + "mdi:reflect-horizontal": 0xfa0d, + "mdi:reflect-vertical": 0xfa0e, + "mdi:refresh": 0xf450, + "mdi:regex": 0xf451, + "mdi:registered-trademark": 0xfa66, + "mdi:relative-scale": 0xf452, + "mdi:reload": 0xf453, + "mdi:reminder": 0xf88b, + "mdi:remote": 0xf454, + "mdi:remote-desktop": 0xf8b8, + "mdi:rename-box": 0xf455, + "mdi:reorder-horizontal": 0xf687, + "mdi:reorder-vertical": 0xf688, + "mdi:repeat": 0xf456, + "mdi:repeat-off": 0xf457, + "mdi:repeat-once": 0xf458, + "mdi:replay": 0xf459, + "mdi:reply": 0xf45a, + "mdi:reply-all": 0xf45b, + "mdi:reproduction": 0xf45c, + "mdi:resize": 0xfa67, + "mdi:resize-bottom-right": 0xf45d, + "mdi:responsive": 0xf45e, + "mdi:restart": 0xf708, + "mdi:restore": 0xf99a, + "mdi:restore-clock": 0xf6a7, + "mdi:rewind": 0xf45f, + "mdi:rewind-outline": 0xf709, + "mdi:rhombus": 0xf70a, + "mdi:rhombus-medium": 0xfa0f, + "mdi:rhombus-outline": 0xf70b, + "mdi:rhombus-split": 0xfa10, + "mdi:ribbon": 0xf460, + "mdi:rice": 0xf7e9, + "mdi:ring": 0xf7ea, + "mdi:road": 0xf461, + "mdi:road-variant": 0xf462, + "mdi:robot": 0xf6a8, + "mdi:robot-vacuum": 0xf70c, + "mdi:robot-vacuum-variant": 0xf907, + "mdi:rocket": 0xf463, + "mdi:room-service": 0xf88c, + "mdi:rotate-3d": 0xf464, + "mdi:rotate-left": 0xf465, + "mdi:rotate-left-variant": 0xf466, + "mdi:rotate-right": 0xf467, + "mdi:rotate-right-variant": 0xf468, + "mdi:rounded-corner": 0xf607, + "mdi:router-wireless": 0xf469, + "mdi:router-wireless-settings": 0xfa68, + "mdi:routes": 0xf46a, + "mdi:rowing": 0xf608, + "mdi:rss": 0xf46b, + "mdi:rss-box": 0xf46c, + "mdi:ruler": 0xf46d, + "mdi:run": 0xf70d, + "mdi:run-fast": 0xf46e, + "mdi:safe": 0xfa69, + "mdi:sale": 0xf46f, + "mdi:salesforce": 0xf88d, + "mdi:sass": 0xf7eb, + "mdi:satellite": 0xf470, + "mdi:satellite-uplink": 0xf908, + "mdi:satellite-variant": 0xf471, + "mdi:sausage": 0xf8b9, + "mdi:saxophone": 0xf609, + "mdi:scale": 0xf472, + "mdi:scale-balance": 0xf5d1, + "mdi:scale-bathroom": 0xf473, + "mdi:scanner": 0xf6aa, + "mdi:scanner-off": 0xf909, + "mdi:school": 0xf474, + "mdi:scissors-cutting": 0xfa6a, + "mdi:screen-rotation": 0xf475, + "mdi:screen-rotation-lock": 0xf476, + "mdi:screwdriver": 0xf477, + "mdi:script": 0xf478, + "mdi:sd": 0xf479, + "mdi:seal": 0xf47a, + "mdi:search-web": 0xf70e, + "mdi:seat-flat": 0xf47b, + "mdi:seat-flat-angled": 0xf47c, + "mdi:seat-individual-suite": 0xf47d, + "mdi:seat-legroom-extra": 0xf47e, + "mdi:seat-legroom-normal": 0xf47f, + "mdi:seat-legroom-reduced": 0xf480, + "mdi:seat-recline-extra": 0xf481, + "mdi:seat-recline-normal": 0xf482, + "mdi:security": 0xf483, + "mdi:security-account": 0xf88e, + "mdi:security-account-outline": 0xfa11, + "mdi:security-close": 0xf99b, + "mdi:security-home": 0xf689, + "mdi:security-lock": 0xf99c, + "mdi:security-network": 0xf484, + "mdi:security-off": 0xf99d, + "mdi:select": 0xf485, + "mdi:select-all": 0xf486, + "mdi:select-compare": 0xfad8, + "mdi:select-drag": 0xfa6b, + "mdi:select-inverse": 0xf487, + "mdi:select-off": 0xf488, + "mdi:selection": 0xf489, + "mdi:selection-drag": 0xfa6c, + "mdi:selection-off": 0xf776, + "mdi:send": 0xf48a, + "mdi:send-lock": 0xf7ec, + "mdi:serial-port": 0xf65c, + "mdi:server": 0xf48b, + "mdi:server-minus": 0xf48c, + "mdi:server-network": 0xf48d, + "mdi:server-network-off": 0xf48e, + "mdi:server-off": 0xf48f, + "mdi:server-plus": 0xf490, + "mdi:server-remove": 0xf491, + "mdi:server-security": 0xf492, + "mdi:set-all": 0xf777, + "mdi:set-center": 0xf778, + "mdi:set-center-right": 0xf779, + "mdi:set-left": 0xf77a, + "mdi:set-left-center": 0xf77b, + "mdi:set-left-right": 0xf77c, + "mdi:set-none": 0xf77d, + "mdi:set-right": 0xf77e, + "mdi:set-top-box": 0xf99e, + "mdi:settings": 0xf493, + "mdi:settings-box": 0xf494, + "mdi:settings-helper": 0xfa6d, + "mdi:settings-outline": 0xf8ba, + "mdi:shape": 0xf830, + "mdi:shape-circle-plus": 0xf65d, + "mdi:shape-outline": 0xf831, + "mdi:shape-plus": 0xf495, + "mdi:shape-polygon-plus": 0xf65e, + "mdi:shape-rectangle-plus": 0xf65f, + "mdi:shape-square-plus": 0xf660, + "mdi:share": 0xf496, + "mdi:share-outline": 0xf931, + "mdi:share-variant": 0xf497, + "mdi:shield": 0xf498, + "mdi:shield-half-full": 0xf77f, + "mdi:shield-outline": 0xf499, + "mdi:shield-plus": 0xfad9, + "mdi:shield-plus-outline": 0xfada, + "mdi:shield-remove": 0xfadb, + "mdi:shield-remove-outline": 0xfadc, + "mdi:ship-wheel": 0xf832, + "mdi:shopify": 0xfadd, + "mdi:shopping": 0xf49a, + "mdi:shopping-music": 0xf49b, + "mdi:shovel": 0xf70f, + "mdi:shovel-off": 0xf710, + "mdi:shower": 0xf99f, + "mdi:shower-head": 0xf9a0, + "mdi:shredder": 0xf49c, + "mdi:shuffle": 0xf49d, + "mdi:shuffle-disabled": 0xf49e, + "mdi:shuffle-variant": 0xf49f, + "mdi:sigma": 0xf4a0, + "mdi:sigma-lower": 0xf62b, + "mdi:sign-caution": 0xf4a1, + "mdi:sign-direction": 0xf780, + "mdi:sign-text": 0xf781, + "mdi:signal": 0xf4a2, + "mdi:signal-2g": 0xf711, + "mdi:signal-3g": 0xf712, + "mdi:signal-4g": 0xf713, + "mdi:signal-5g": 0xfa6e, + "mdi:signal-cellular-1": 0xf8bb, + "mdi:signal-cellular-2": 0xf8bc, + "mdi:signal-cellular-3": 0xf8bd, + "mdi:signal-cellular-outline": 0xf8be, + "mdi:signal-hspa": 0xf714, + "mdi:signal-hspa-plus": 0xf715, + "mdi:signal-off": 0xf782, + "mdi:signal-variant": 0xf60a, + "mdi:silverware": 0xf4a3, + "mdi:silverware-fork": 0xf4a4, + "mdi:silverware-fork-knife": 0xfa6f, + "mdi:silverware-spoon": 0xf4a5, + "mdi:silverware-variant": 0xf4a6, + "mdi:sim": 0xf4a7, + "mdi:sim-alert": 0xf4a8, + "mdi:sim-off": 0xf4a9, + "mdi:sina-weibo": 0xfade, + "mdi:sitemap": 0xf4aa, + "mdi:skip-backward": 0xf4ab, + "mdi:skip-forward": 0xf4ac, + "mdi:skip-next": 0xf4ad, + "mdi:skip-next-circle": 0xf661, + "mdi:skip-next-circle-outline": 0xf662, + "mdi:skip-previous": 0xf4ae, + "mdi:skip-previous-circle": 0xf663, + "mdi:skip-previous-circle-outline": 0xf664, + "mdi:skull": 0xf68b, + "mdi:skype": 0xf4af, + "mdi:skype-business": 0xf4b0, + "mdi:slack": 0xf4b1, + "mdi:slackware": 0xf90a, + "mdi:sleep": 0xf4b2, + "mdi:sleep-off": 0xf4b3, + "mdi:smog": 0xfa70, + "mdi:smoke-detector": 0xf392, + "mdi:smoking": 0xf4b4, + "mdi:smoking-off": 0xf4b5, + "mdi:snapchat": 0xf4b6, + "mdi:snowflake": 0xf716, + "mdi:snowman": 0xf4b7, + "mdi:soccer": 0xf4b8, + "mdi:soccer-field": 0xf833, + "mdi:sofa": 0xf4b9, + "mdi:solar-power": 0xfa71, + "mdi:solid": 0xf68c, + "mdi:sort": 0xf4ba, + "mdi:sort-alphabetical": 0xf4bb, + "mdi:sort-ascending": 0xf4bc, + "mdi:sort-descending": 0xf4bd, + "mdi:sort-numeric": 0xf4be, + "mdi:sort-variant": 0xf4bf, + "mdi:soundcloud": 0xf4c0, + "mdi:source-branch": 0xf62c, + "mdi:source-commit": 0xf717, + "mdi:source-commit-end": 0xf718, + "mdi:source-commit-end-local": 0xf719, + "mdi:source-commit-local": 0xf71a, + "mdi:source-commit-next-local": 0xf71b, + "mdi:source-commit-start": 0xf71c, + "mdi:source-commit-start-next-local": 0xf71d, + "mdi:source-fork": 0xf4c1, + "mdi:source-merge": 0xf62d, + "mdi:source-pull": 0xf4c2, + "mdi:soy-sauce": 0xf7ed, + "mdi:speaker": 0xf4c3, + "mdi:speaker-bluetooth": 0xf9a1, + "mdi:speaker-off": 0xf4c4, + "mdi:speaker-wireless": 0xf71e, + "mdi:speedometer": 0xf4c5, + "mdi:spellcheck": 0xf4c6, + "mdi:spotify": 0xf4c7, + "mdi:spotlight": 0xf4c8, + "mdi:spotlight-beam": 0xf4c9, + "mdi:spray": 0xf665, + "mdi:spray-bottle": 0xfadf, + "mdi:square": 0xf763, + "mdi:square-edit-outline": 0xf90b, + "mdi:square-inc": 0xf4ca, + "mdi:square-inc-cash": 0xf4cb, + "mdi:square-medium": 0xfa12, + "mdi:square-medium-outline": 0xfa13, + "mdi:square-outline": 0xf762, + "mdi:square-root": 0xf783, + "mdi:square-root-box": 0xf9a2, + "mdi:square-small": 0xfa14, + "mdi:squeegee": 0xfae0, + "mdi:ssh": 0xf8bf, + "mdi:stack-exchange": 0xf60b, + "mdi:stack-overflow": 0xf4cc, + "mdi:stadium": 0xf71f, + "mdi:stairs": 0xf4cd, + "mdi:standard-definition": 0xf7ee, + "mdi:star": 0xf4ce, + "mdi:star-box": 0xfa72, + "mdi:star-box-outline": 0xfa73, + "mdi:star-circle": 0xf4cf, + "mdi:star-circle-outline": 0xf9a3, + "mdi:star-face": 0xf9a4, + "mdi:star-four-points": 0xfae1, + "mdi:star-four-points-outline": 0xfae2, + "mdi:star-half": 0xf4d0, + "mdi:star-off": 0xf4d1, + "mdi:star-outline": 0xf4d2, + "mdi:star-three-points": 0xfae3, + "mdi:star-three-points-outline": 0xfae4, + "mdi:steam": 0xf4d3, + "mdi:steam-box": 0xf90c, + "mdi:steering": 0xf4d4, + "mdi:steering-off": 0xf90d, + "mdi:step-backward": 0xf4d5, + "mdi:step-backward-2": 0xf4d6, + "mdi:step-forward": 0xf4d7, + "mdi:step-forward-2": 0xf4d8, + "mdi:stethoscope": 0xf4d9, + "mdi:sticker": 0xf5d0, + "mdi:sticker-emoji": 0xf784, + "mdi:stocking": 0xf4da, + "mdi:stop": 0xf4db, + "mdi:stop-circle": 0xf666, + "mdi:stop-circle-outline": 0xf667, + "mdi:store": 0xf4dc, + "mdi:store-24-hour": 0xf4dd, + "mdi:stove": 0xf4de, + "mdi:subdirectory-arrow-left": 0xf60c, + "mdi:subdirectory-arrow-right": 0xf60d, + "mdi:subtitles": 0xfa15, + "mdi:subtitles-outline": 0xfa16, + "mdi:subway": 0xf6ab, + "mdi:subway-variant": 0xf4df, + "mdi:summit": 0xf785, + "mdi:sunglasses": 0xf4e0, + "mdi:surround-sound": 0xf5c5, + "mdi:surround-sound-2-0": 0xf7ef, + "mdi:surround-sound-3-1": 0xf7f0, + "mdi:surround-sound-5-1": 0xf7f1, + "mdi:surround-sound-7-1": 0xf7f2, + "mdi:svg": 0xf720, + "mdi:swap-horizontal": 0xf4e1, + "mdi:swap-horizontal-variant": 0xf8c0, + "mdi:swap-vertical": 0xf4e2, + "mdi:swap-vertical-variant": 0xf8c1, + "mdi:swim": 0xf4e3, + "mdi:switch": 0xf4e4, + "mdi:sword": 0xf4e5, + "mdi:sword-cross": 0xf786, + "mdi:symfony": 0xfae5, + "mdi:sync": 0xf4e6, + "mdi:sync-alert": 0xf4e7, + "mdi:sync-off": 0xf4e8, + "mdi:tab": 0xf4e9, + "mdi:tab-plus": 0xf75b, + "mdi:tab-unselected": 0xf4ea, + "mdi:table": 0xf4eb, + "mdi:table-border": 0xfa17, + "mdi:table-column": 0xf834, + "mdi:table-column-plus-after": 0xf4ec, + "mdi:table-column-plus-before": 0xf4ed, + "mdi:table-column-remove": 0xf4ee, + "mdi:table-column-width": 0xf4ef, + "mdi:table-edit": 0xf4f0, + "mdi:table-large": 0xf4f1, + "mdi:table-merge-cells": 0xf9a5, + "mdi:table-of-contents": 0xf835, + "mdi:table-plus": 0xfa74, + "mdi:table-remove": 0xfa75, + "mdi:table-row": 0xf836, + "mdi:table-row-height": 0xf4f2, + "mdi:table-row-plus-after": 0xf4f3, + "mdi:table-row-plus-before": 0xf4f4, + "mdi:table-row-remove": 0xf4f5, + "mdi:table-search": 0xf90e, + "mdi:table-settings": 0xf837, + "mdi:tablet": 0xf4f6, + "mdi:tablet-android": 0xf4f7, + "mdi:tablet-cellphone": 0xf9a6, + "mdi:tablet-ipad": 0xf4f8, + "mdi:taco": 0xf761, + "mdi:tag": 0xf4f9, + "mdi:tag-faces": 0xf4fa, + "mdi:tag-heart": 0xf68a, + "mdi:tag-minus": 0xf90f, + "mdi:tag-multiple": 0xf4fb, + "mdi:tag-outline": 0xf4fc, + "mdi:tag-plus": 0xf721, + "mdi:tag-remove": 0xf722, + "mdi:tag-text-outline": 0xf4fd, + "mdi:target": 0xf4fe, + "mdi:target-variant": 0xfa76, + "mdi:taxi": 0xf4ff, + "mdi:teach": 0xf88f, + "mdi:teamviewer": 0xf500, + "mdi:telegram": 0xf501, + "mdi:television": 0xf502, + "mdi:television-box": 0xf838, + "mdi:television-classic": 0xf7f3, + "mdi:television-classic-off": 0xf839, + "mdi:television-guide": 0xf503, + "mdi:television-off": 0xf83a, + "mdi:temperature-celsius": 0xf504, + "mdi:temperature-fahrenheit": 0xf505, + "mdi:temperature-kelvin": 0xf506, + "mdi:tennis": 0xf507, + "mdi:tent": 0xf508, + "mdi:terrain": 0xf509, + "mdi:test-tube": 0xf668, + "mdi:test-tube-empty": 0xf910, + "mdi:test-tube-off": 0xf911, + "mdi:text": 0xf9a7, + "mdi:text-shadow": 0xf669, + "mdi:text-short": 0xf9a8, + "mdi:text-subject": 0xf9a9, + "mdi:text-to-speech": 0xf50a, + "mdi:text-to-speech-off": 0xf50b, + "mdi:textbox": 0xf60e, + "mdi:textbox-password": 0xf7f4, + "mdi:texture": 0xf50c, + "mdi:theater": 0xf50d, + "mdi:theme-light-dark": 0xf50e, + "mdi:thermometer": 0xf50f, + "mdi:thermometer-lines": 0xf510, + "mdi:thermostat": 0xf393, + "mdi:thermostat-box": 0xf890, + "mdi:thought-bubble": 0xf7f5, + "mdi:thought-bubble-outline": 0xf7f6, + "mdi:thumb-down": 0xf511, + "mdi:thumb-down-outline": 0xf512, + "mdi:thumb-up": 0xf513, + "mdi:thumb-up-outline": 0xf514, + "mdi:thumbs-up-down": 0xf515, + "mdi:ticket": 0xf516, + "mdi:ticket-account": 0xf517, + "mdi:ticket-confirmation": 0xf518, + "mdi:ticket-outline": 0xf912, + "mdi:ticket-percent": 0xf723, + "mdi:tie": 0xf519, + "mdi:tilde": 0xf724, + "mdi:timelapse": 0xf51a, + "mdi:timer": 0xf51b, + "mdi:timer-10": 0xf51c, + "mdi:timer-3": 0xf51d, + "mdi:timer-off": 0xf51e, + "mdi:timer-sand": 0xf51f, + "mdi:timer-sand-empty": 0xf6ac, + "mdi:timer-sand-full": 0xf78b, + "mdi:timetable": 0xf520, + "mdi:toggle-switch": 0xf521, + "mdi:toggle-switch-off": 0xf522, + "mdi:toggle-switch-off-outline": 0xfa18, + "mdi:toggle-switch-outline": 0xfa19, + "mdi:toilet": 0xf9aa, + "mdi:toolbox": 0xf9ab, + "mdi:toolbox-outline": 0xf9ac, + "mdi:tooltip": 0xf523, + "mdi:tooltip-edit": 0xf524, + "mdi:tooltip-image": 0xf525, + "mdi:tooltip-outline": 0xf526, + "mdi:tooltip-outline-plus": 0xf527, + "mdi:tooltip-text": 0xf528, + "mdi:tooth": 0xf8c2, + "mdi:tooth-outline": 0xf529, + "mdi:tor": 0xf52a, + "mdi:tournament": 0xf9ad, + "mdi:tower-beach": 0xf680, + "mdi:tower-fire": 0xf681, + "mdi:towing": 0xf83b, + "mdi:track-light": 0xf913, + "mdi:trackpad": 0xf7f7, + "mdi:trackpad-lock": 0xf932, + "mdi:tractor": 0xf891, + "mdi:trademark": 0xfa77, + "mdi:traffic-light": 0xf52b, + "mdi:train": 0xf52c, + "mdi:train-variant": 0xf8c3, + "mdi:tram": 0xf52d, + "mdi:transcribe": 0xf52e, + "mdi:transcribe-close": 0xf52f, + "mdi:transfer": 0xf530, + "mdi:transit-transfer": 0xf6ad, + "mdi:transition": 0xf914, + "mdi:transition-masked": 0xf915, + "mdi:translate": 0xf5ca, + "mdi:trash-can": 0xfa78, + "mdi:trash-can-outline": 0xfa79, + "mdi:treasure-chest": 0xf725, + "mdi:tree": 0xf531, + "mdi:trello": 0xf532, + "mdi:trending-down": 0xf533, + "mdi:trending-neutral": 0xf534, + "mdi:trending-up": 0xf535, + "mdi:triangle": 0xf536, + "mdi:triangle-outline": 0xf537, + "mdi:trophy": 0xf538, + "mdi:trophy-award": 0xf539, + "mdi:trophy-outline": 0xf53a, + "mdi:trophy-variant": 0xf53b, + "mdi:trophy-variant-outline": 0xf53c, + "mdi:truck": 0xf53d, + "mdi:truck-delivery": 0xf53e, + "mdi:truck-fast": 0xf787, + "mdi:truck-trailer": 0xf726, + "mdi:tshirt-crew": 0xfa7a, + "mdi:tshirt-crew-outline": 0xf53f, + "mdi:tshirt-v": 0xfa7b, + "mdi:tshirt-v-outline": 0xf540, + "mdi:tumble-dryer": 0xf916, + "mdi:tumblr": 0xf541, + "mdi:tumblr-box": 0xf917, + "mdi:tumblr-reblog": 0xf542, + "mdi:tune": 0xf62e, + "mdi:tune-vertical": 0xf66a, + "mdi:twitch": 0xf543, + "mdi:twitter": 0xf544, + "mdi:twitter-box": 0xf545, + "mdi:twitter-circle": 0xf546, + "mdi:twitter-retweet": 0xf547, + "mdi:two-factor-authentication": 0xf9ae, + "mdi:uber": 0xf748, + "mdi:ubuntu": 0xf548, + "mdi:ultra-high-definition": 0xf7f8, + "mdi:umbraco": 0xf549, + "mdi:umbrella": 0xf54a, + "mdi:umbrella-closed": 0xf9af, + "mdi:umbrella-outline": 0xf54b, + "mdi:undo": 0xf54c, + "mdi:undo-variant": 0xf54d, + "mdi:unfold-less-horizontal": 0xf54e, + "mdi:unfold-less-vertical": 0xf75f, + "mdi:unfold-more-horizontal": 0xf54f, + "mdi:unfold-more-vertical": 0xf760, + "mdi:ungroup": 0xf550, + "mdi:unity": 0xf6ae, + "mdi:unreal": 0xf9b0, + "mdi:untappd": 0xf551, + "mdi:update": 0xf6af, + "mdi:upload": 0xf552, + "mdi:upload-multiple": 0xf83c, + "mdi:upload-network": 0xf6f5, + "mdi:usb": 0xf553, + "mdi:van-passenger": 0xf7f9, + "mdi:van-utility": 0xf7fa, + "mdi:vanish": 0xf7fb, + "mdi:variable": 0xfae6, + "mdi:vector-arrange-above": 0xf554, + "mdi:vector-arrange-below": 0xf555, + "mdi:vector-bezier": 0xfae7, + "mdi:vector-circle": 0xf556, + "mdi:vector-circle-variant": 0xf557, + "mdi:vector-combine": 0xf558, + "mdi:vector-curve": 0xf559, + "mdi:vector-difference": 0xf55a, + "mdi:vector-difference-ab": 0xf55b, + "mdi:vector-difference-ba": 0xf55c, + "mdi:vector-ellipse": 0xf892, + "mdi:vector-intersection": 0xf55d, + "mdi:vector-line": 0xf55e, + "mdi:vector-point": 0xf55f, + "mdi:vector-polygon": 0xf560, + "mdi:vector-polyline": 0xf561, + "mdi:vector-radius": 0xf749, + "mdi:vector-rectangle": 0xf5c6, + "mdi:vector-selection": 0xf562, + "mdi:vector-square": 0xf001, + "mdi:vector-triangle": 0xf563, + "mdi:vector-union": 0xf564, + "mdi:venmo": 0xf578, + "mdi:verified": 0xf565, + "mdi:vhs": 0xfa1a, + "mdi:vibrate": 0xf566, + "mdi:video": 0xf567, + "mdi:video-3d": 0xf7fc, + "mdi:video-4k-box": 0xf83d, + "mdi:video-account": 0xf918, + "mdi:video-image": 0xf919, + "mdi:video-input-antenna": 0xf83e, + "mdi:video-input-component": 0xf83f, + "mdi:video-input-hdmi": 0xf840, + "mdi:video-input-svideo": 0xf841, + "mdi:video-minus": 0xf9b1, + "mdi:video-off": 0xf568, + "mdi:video-plus": 0xf9b2, + "mdi:video-stabilization": 0xf91a, + "mdi:video-switch": 0xf569, + "mdi:video-vintage": 0xfa1b, + "mdi:view-agenda": 0xf56a, + "mdi:view-array": 0xf56b, + "mdi:view-carousel": 0xf56c, + "mdi:view-column": 0xf56d, + "mdi:view-dashboard": 0xf56e, + "mdi:view-dashboard-outline": 0xfa1c, + "mdi:view-dashboard-variant": 0xf842, + "mdi:view-day": 0xf56f, + "mdi:view-grid": 0xf570, + "mdi:view-headline": 0xf571, + "mdi:view-list": 0xf572, + "mdi:view-module": 0xf573, + "mdi:view-parallel": 0xf727, + "mdi:view-quilt": 0xf574, + "mdi:view-sequential": 0xf728, + "mdi:view-stream": 0xf575, + "mdi:view-week": 0xf576, + "mdi:vimeo": 0xf577, + "mdi:violin": 0xf60f, + "mdi:virtual-reality": 0xf893, + "mdi:visual-studio": 0xf610, + "mdi:visual-studio-code": 0xfa1d, + "mdi:vk": 0xf579, + "mdi:vk-box": 0xf57a, + "mdi:vk-circle": 0xf57b, + "mdi:vlc": 0xf57c, + "mdi:voice": 0xf5cb, + "mdi:voicemail": 0xf57d, + "mdi:volleyball": 0xf9b3, + "mdi:volume-high": 0xf57e, + "mdi:volume-low": 0xf57f, + "mdi:volume-medium": 0xf580, + "mdi:volume-minus": 0xf75d, + "mdi:volume-mute": 0xf75e, + "mdi:volume-off": 0xf581, + "mdi:volume-plus": 0xf75c, + "mdi:vote": 0xfa1e, + "mdi:vote-outline": 0xfa1f, + "mdi:vpn": 0xf582, + "mdi:vuejs": 0xf843, + "mdi:walk": 0xf583, + "mdi:wall": 0xf7fd, + "mdi:wall-sconce": 0xf91b, + "mdi:wall-sconce-flat": 0xf91c, + "mdi:wall-sconce-variant": 0xf91d, + "mdi:wallet": 0xf584, + "mdi:wallet-giftcard": 0xf585, + "mdi:wallet-membership": 0xf586, + "mdi:wallet-travel": 0xf587, + "mdi:wan": 0xf588, + "mdi:washing-machine": 0xf729, + "mdi:watch": 0xf589, + "mdi:watch-export": 0xf58a, + "mdi:watch-export-variant": 0xf894, + "mdi:watch-import": 0xf58b, + "mdi:watch-import-variant": 0xf895, + "mdi:watch-variant": 0xf896, + "mdi:watch-vibrate": 0xf6b0, + "mdi:water": 0xf58c, + "mdi:water-off": 0xf58d, + "mdi:water-percent": 0xf58e, + "mdi:water-pump": 0xf58f, + "mdi:watermark": 0xf612, + "mdi:waves": 0xf78c, + "mdi:weather-cloudy": 0xf590, + "mdi:weather-fog": 0xf591, + "mdi:weather-hail": 0xf592, + "mdi:weather-hurricane": 0xf897, + "mdi:weather-lightning": 0xf593, + "mdi:weather-lightning-rainy": 0xf67d, + "mdi:weather-night": 0xf594, + "mdi:weather-partlycloudy": 0xf595, + "mdi:weather-pouring": 0xf596, + "mdi:weather-rainy": 0xf597, + "mdi:weather-snowy": 0xf598, + "mdi:weather-snowy-rainy": 0xf67e, + "mdi:weather-sunny": 0xf599, + "mdi:weather-sunset": 0xf59a, + "mdi:weather-sunset-down": 0xf59b, + "mdi:weather-sunset-up": 0xf59c, + "mdi:weather-windy": 0xf59d, + "mdi:weather-windy-variant": 0xf59e, + "mdi:web": 0xf59f, + "mdi:webcam": 0xf5a0, + "mdi:webhook": 0xf62f, + "mdi:webpack": 0xf72a, + "mdi:wechat": 0xf611, + "mdi:weight": 0xf5a1, + "mdi:weight-kilogram": 0xf5a2, + "mdi:weight-pound": 0xf9b4, + "mdi:whatsapp": 0xf5a3, + "mdi:wheelchair-accessibility": 0xf5a4, + "mdi:whistle": 0xf9b5, + "mdi:white-balance-auto": 0xf5a5, + "mdi:white-balance-incandescent": 0xf5a6, + "mdi:white-balance-iridescent": 0xf5a7, + "mdi:white-balance-sunny": 0xf5a8, + "mdi:widgets": 0xf72b, + "mdi:wifi": 0xf5a9, + "mdi:wifi-off": 0xf5aa, + "mdi:wifi-strength-1": 0xf91e, + "mdi:wifi-strength-1-alert": 0xf91f, + "mdi:wifi-strength-1-lock": 0xf920, + "mdi:wifi-strength-2": 0xf921, + "mdi:wifi-strength-2-alert": 0xf922, + "mdi:wifi-strength-2-lock": 0xf923, + "mdi:wifi-strength-3": 0xf924, + "mdi:wifi-strength-3-alert": 0xf925, + "mdi:wifi-strength-3-lock": 0xf926, + "mdi:wifi-strength-4": 0xf927, + "mdi:wifi-strength-4-alert": 0xf928, + "mdi:wifi-strength-4-lock": 0xf929, + "mdi:wifi-strength-alert-outline": 0xf92a, + "mdi:wifi-strength-lock-outline": 0xf92b, + "mdi:wifi-strength-off": 0xf92c, + "mdi:wifi-strength-off-outline": 0xf92d, + "mdi:wifi-strength-outline": 0xf92e, + "mdi:wii": 0xf5ab, + "mdi:wiiu": 0xf72c, + "mdi:wikipedia": 0xf5ac, + "mdi:window-close": 0xf5ad, + "mdi:window-closed": 0xf5ae, + "mdi:window-maximize": 0xf5af, + "mdi:window-minimize": 0xf5b0, + "mdi:window-open": 0xf5b1, + "mdi:window-restore": 0xf5b2, + "mdi:windows": 0xf5b3, + "mdi:windows-classic": 0xfa20, + "mdi:wiper": 0xfae8, + "mdi:wordpress": 0xf5b4, + "mdi:worker": 0xf5b5, + "mdi:wrap": 0xf5b6, + "mdi:wrench": 0xf5b7, + "mdi:wunderlist": 0xf5b8, + "mdi:xamarin": 0xf844, + "mdi:xamarin-outline": 0xf845, + "mdi:xaml": 0xf673, + "mdi:xbox": 0xf5b9, + "mdi:xbox-controller": 0xf5ba, + "mdi:xbox-controller-battery-alert": 0xf74a, + "mdi:xbox-controller-battery-charging": 0xfa21, + "mdi:xbox-controller-battery-empty": 0xf74b, + "mdi:xbox-controller-battery-full": 0xf74c, + "mdi:xbox-controller-battery-low": 0xf74d, + "mdi:xbox-controller-battery-medium": 0xf74e, + "mdi:xbox-controller-battery-unknown": 0xf74f, + "mdi:xbox-controller-off": 0xf5bb, + "mdi:xda": 0xf5bc, + "mdi:xing": 0xf5bd, + "mdi:xing-box": 0xf5be, + "mdi:xing-circle": 0xf5bf, + "mdi:xml": 0xf5c0, + "mdi:xmpp": 0xf7fe, + "mdi:yammer": 0xf788, + "mdi:yeast": 0xf5c1, + "mdi:yelp": 0xf5c2, + "mdi:yin-yang": 0xf67f, + "mdi:youtube": 0xf5c3, + "mdi:youtube-creator-studio": 0xf846, + "mdi:youtube-gaming": 0xf847, + "mdi:youtube-tv": 0xf448, + "mdi:z-wave": 0xfae9, + "mdi:zend": 0xfaea, + "mdi:zip-box": 0xf5c4, + "mdi:zip-disk": 0xfa22, + "mdi:zodiac-aquarius": 0xfa7c, + "mdi:zodiac-aries": 0xfa7d, + "mdi:zodiac-cancer": 0xfa7e, + "mdi:zodiac-capricorn": 0xfa7f, + "mdi:zodiac-gemini": 0xfa80, + "mdi:zodiac-leo": 0xfa81, + "mdi:zodiac-libra": 0xfa82, + "mdi:zodiac-pisces": 0xfa83, + "mdi:zodiac-sagittarius": 0xfa84, + "mdi:zodiac-scorpio": 0xfa85, + "mdi:zodiac-taurus": 0xfa86, + "mdi:zodiac-virgo": 0xfa87, + "mdi:blank": 0xf68c + }; + + static int getIconCode(String name) { + return _iconsMap[name] ?? 0; + } + } \ No newline at end of file diff --git a/lib/main.dart b/lib/main.dart index b459c7c..1e0ba98 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -44,6 +44,7 @@ class _MainPageState extends State { HassioDataModel _dataModel; Map _entitiesData; Map _uiStructure; + int _uiViewsCount = 0; String _dataModelErrorMessage = ""; bool loading = true; Map _stateIconColors = { @@ -82,6 +83,7 @@ class _MainPageState extends State { setState(() { _entitiesData = _dataModel.entities; _uiStructure = _dataModel.uiStructure; + _uiViewsCount = _uiStructure.length; loading = false; }); }).catchError((e) { @@ -138,16 +140,16 @@ class _MainPageState extends State { return result; } - Card _buildEntityGroup(List ids, String name) { + Card _buildCard(List ids, String name) { List body = []; - body.add(_buildEntityGroupHeader(name)); - body.addAll(_buildEntityGroupBody(ids)); + body.add(_buildCardHeader(name)); + body.addAll(_buildCardBody(ids)); Card result = Card(child: new Column(mainAxisSize: MainAxisSize.min, children: body)); return result; } - Widget _buildEntityGroupHeader(String name) { + Widget _buildCardHeader(String name) { var result; if (name.length > 0) { result = new ListTile( @@ -165,7 +167,7 @@ class _MainPageState extends State { return result; } - List _buildEntityGroupBody(List ids) { + List _buildCardBody(List ids) { List entities = []; ids.forEach((id) { var data = _entitiesData[id]; @@ -185,15 +187,14 @@ class _MainPageState extends State { return entities; } - List buildEntitiesView() { - if ((_entitiesData != null) && (_uiStructure != null)) { + List buildSingleView(structure) { List result = []; if (_dataModelErrorMessage.length == 0) { - _uiStructure["standalone"].forEach((entityId) { - result.add(_buildEntityGroup([entityId], "")); + structure["standalone"].forEach((entityId) { + result.add(_buildCard([entityId], "")); }); - _uiStructure["groups"].forEach((group) { - result.add(_buildEntityGroup( + structure["groups"].forEach((group) { + result.add(_buildCard( group["children"], group["friendly_name"].toString())); }); } else { @@ -201,10 +202,30 @@ class _MainPageState extends State { //result.add(Text(_dataModelErrorMessage)); } return result; - } else { - //TODO - return []; + } + + List buildUIViews() { + List result = []; + if ((_entitiesData != null) && (_uiStructure != null)) { + _uiStructure.forEach((viewId, structure) { + result.add(ListView( + children: buildSingleView(structure), + )); + }); } + return result; + } + + List buildUIViewTabs() { + List result = []; + if ((_entitiesData != null) && (_uiStructure != null)) { + _uiStructure.forEach((viewId, structure) { + result.add( + Tab(icon: Icon(IconData(structure["iconCode"], fontFamily: 'Material Design Icons'))) + ); + }); + } + return result; } Widget _buildTitle() { @@ -223,55 +244,78 @@ class _MainPageState extends State { return titleRow; } - @override - Widget build(BuildContext context) { - // This method is rerun every time setState is called, for instance as done - // by the _incrementCounter method above. - // - // The Flutter framework has been optimized to make rerunning build methods - // fast, so that you can just rebuild anything that needs updating rather - // than having to individually change instances of widgets. - return new Scaffold( - appBar: new AppBar( - // Here we take the value from the MyHomePage object that was created by - // the App.build method, and use it to set our appbar title. - title: _buildTitle(), - ), - drawer: new Drawer( - child: ListView( - children: [ - new UserAccountsDrawerHeader( - accountName: Text("Edwin Home"), - accountEmail: Text("edwin-home.duckdns.org"), - currentAccountPicture: new CircleAvatar( - backgroundImage: new NetworkImage( - "https://edwin-home.duckdns.org:8123/static/icons/favicon-192x192.png"), - ), + Drawer _buildAppDrawer() { + return new Drawer( + child: ListView( + children: [ + new UserAccountsDrawerHeader( + accountName: Text("Edwin Home"), + accountEmail: Text("edwin-home.duckdns.org"), + currentAccountPicture: new CircleAvatar( + backgroundImage: new NetworkImage( + "https://edwin-home.duckdns.org:8123/static/icons/favicon-192x192.png"), ), - new ListTile( - leading: Icon(Icons.settings), - title: Text("Settings"), - onTap: () { - Navigator.pushNamed(context, '/settings'); - }, - ), - new AboutListTile( - applicationName: "Hass Client", - applicationVersion: "0.1", - applicationLegalese: "Keyboard Crumbs", - ) - ], - ), - ), - body: ListView(children: buildEntitiesView()), - floatingActionButton: new FloatingActionButton( - onPressed: _refreshData, - tooltip: 'Increment', - child: new Icon(Icons.refresh), + ), + new ListTile( + leading: Icon(Icons.settings), + title: Text("Settings"), + onTap: () { + Navigator.pushNamed(context, '/settings'); + }, + ), + new AboutListTile( + applicationName: "Hass Client", + applicationVersion: "0.1", + applicationLegalese: "Keyboard Crumbs", + ) + ], ), ); } + @override + Widget build(BuildContext context) { + // This method is rerun every time setState is called. + // + if (_entitiesData == null) { + return new Scaffold( + appBar: new AppBar( + title: _buildTitle() + ), + drawer: _buildAppDrawer(), + body: Text("Loading... or not...\n\nPlease, restart the app in case of three dots in header starts to freaking you out."), + floatingActionButton: new FloatingActionButton( + onPressed: _refreshData, + tooltip: 'Increment', + child: new Icon(Icons.refresh), + ), + ); + } else { + return DefaultTabController( + length: _uiViewsCount, + child: new Scaffold( + appBar: new AppBar( + // Here we take the value from the MyHomePage object that was created by + // the App.build method, and use it to set our appbar title. + title: _buildTitle(), + bottom: TabBar( + tabs: buildUIViewTabs() + ), + ), + drawer: _buildAppDrawer(), + body: TabBarView( + children: buildUIViews() + ), + floatingActionButton: new FloatingActionButton( + onPressed: _refreshData, + tooltip: 'Increment', + child: new Icon(Icons.refresh), + ), + ) + ); + } + } + @override void dispose() { //TODO