From 02c62f950666d2019e6e29d554f2eee18c20ddf8 Mon Sep 17 00:00:00 2001 From: gabriel Date: Sun, 24 May 2026 14:12:20 +0200 Subject: [PATCH 01/51] chore: remove ATC/OpenEpaperLink scripts and tests --- scripts/fetch_tag_types.py | 85 ------ scripts/generate_tag_types.py | 157 ----------- tests/scripts/test_sync_tag_types.py | 377 --------------------------- 3 files changed, 619 deletions(-) delete mode 100644 scripts/fetch_tag_types.py delete mode 100644 scripts/generate_tag_types.py delete mode 100644 tests/scripts/test_sync_tag_types.py diff --git a/scripts/fetch_tag_types.py b/scripts/fetch_tag_types.py deleted file mode 100644 index b891cc8..0000000 --- a/scripts/fetch_tag_types.py +++ /dev/null @@ -1,85 +0,0 @@ -#!/usr/bin/env python3 -"""Fetch tag type definitions from the OpenEPaperLink repository. - -Downloads all tag type JSON files from the OpenEPaperLink GitHub repository -and saves them as a consolidated JSON file for further processing. -""" - -import json -import re -import sys -import urllib.request - - -GITHUB_TREE_URL = ( - "https://github.com/OpenEPaperLink/OpenEPaperLink/tree/master/resources/tagtypes" -) -GITHUB_RAW_URL = ( - "https://raw.githubusercontent.com/OpenEPaperLink/OpenEPaperLink" - "/master/resources/tagtypes" -) - - -def fetch_file_list(): - """Fetch the list of tag type JSON files from the repository.""" - print("Fetching tag type files from OpenEPaperLink repository...") - headers = {"User-Agent": "Mozilla/5.0"} - req = urllib.request.Request(GITHUB_TREE_URL, headers=headers) - - with urllib.request.urlopen(req, timeout=30) as response: - html = response.read().decode("utf-8") - json_files = re.findall(r"([0-9a-fA-F]+\.json)", html) - json_files = sorted(set(json_files)) - print(f"Found {len(json_files)} tag type files") - return json_files - - -def fetch_tag_types(json_files): - """Fetch and parse all tag type definitions.""" - tag_types = {} - errors = [] - - for filename in json_files: - url = f"{GITHUB_RAW_URL}/{filename}" - try: - with urllib.request.urlopen(url, timeout=10) as response: - data = json.loads(response.read().decode("utf-8")) - type_id = int(filename.replace(".json", ""), 16) - - tag_types[type_id] = { - "version": data.get("version"), - "name": data.get("name"), - "width": data.get("width"), - "height": data.get("height"), - } - except Exception as e: - errors.append(f"Error fetching {filename}: {e}") - - if errors: - for error in errors: - print(error) - - print(f"Successfully fetched {len(tag_types)} tag type definitions") - return tag_types - - -def main(): - """Fetch tag type definitions and save to a JSON file.""" - output_file = sys.argv[1] if len(sys.argv) > 1 else "new_tag_types.json" - - try: - json_files = fetch_file_list() - except Exception as e: - print(f"Error fetching file list: {e}") - sys.exit(1) - - tag_types = fetch_tag_types(json_files) - - with open(output_file, "w") as f: - json.dump(tag_types, f, indent=2) - - print(f"Tag types saved to {output_file}") - - -if __name__ == "__main__": - main() diff --git a/scripts/generate_tag_types.py b/scripts/generate_tag_types.py deleted file mode 100644 index 07b7f60..0000000 --- a/scripts/generate_tag_types.py +++ /dev/null @@ -1,157 +0,0 @@ -#!/usr/bin/env python3 -"""Generate updated const.py from fetched tag type definitions. - -Reads a JSON file of tag type definitions (produced by fetch_tag_types.py), -compares them against the current fallback definitions in const.py, -and updates the file if there are changes. - -Sets GitHub Actions outputs for downstream workflow steps. -""" - -import json -import os -import re -import sys - - -CONST_PATH = "custom_components/opendisplay/const.py" -FALLBACK_PATTERN = re.compile( - r"(FALLBACK_TAG_DEFINITIONS = \{)\n(.*?)\n(\})", re.DOTALL -) -ENTRY_PATTERN = re.compile(r"\s+(\d+):") - - -def load_new_tag_types(input_file): - """Load new tag types from JSON, converting keys to integers.""" - with open(input_file, "r") as f: - raw = json.load(f) - return {int(k): v for k, v in raw.items()} - - -def parse_current_definitions(content): - """Extract current fallback definitions from const.py content.""" - match = FALLBACK_PATTERN.search(content) - if not match: - print("Error: Could not find FALLBACK_TAG_DEFINITIONS in const.py") - sys.exit(1) - - current_types = {} - for line in match.group(2).split("\n"): - m = ENTRY_PATTERN.match(line) - if m: - type_id = int(m.group(1)) - current_types[type_id] = line.strip() - - return current_types - - -def compute_changes(current_types, new_tag_types): - """Compute added, removed, and modified tag types.""" - added = [] - removed = [] - modified = [] - - for type_id in sorted(new_tag_types.keys()): - if type_id not in current_types: - added.append(type_id) - else: - new_line = f"{type_id}: {json.dumps(new_tag_types[type_id], ensure_ascii=False)}," - if new_line != current_types[type_id]: - modified.append(type_id) - - for type_id in sorted(current_types.keys()): - if type_id not in new_tag_types: - removed.append(type_id) - - return added, removed, modified - - -def generate_fallback_content(new_tag_types): - """Generate the new FALLBACK_TAG_DEFINITIONS dict content.""" - lines = [] - for type_id in sorted(new_tag_types.keys()): - type_data = new_tag_types[type_id] - line = f" {type_id}: {json.dumps(type_data, ensure_ascii=False)}," - lines.append(line) - return "\n".join(lines) - - -def update_tag_types_file(content, new_fallback): - """Replace FALLBACK_TAG_DEFINITIONS content in const.py.""" - match = FALLBACK_PATTERN.search(content) - if not match: - print("Error: Could not find FALLBACK_TAG_DEFINITIONS in const.py") - sys.exit(1) - - start = match.start(2) - end = match.end(2) - return content[:start] + new_fallback + content[end:] - - -def build_summary(added, removed, modified): - """Build a human-readable summary of changes.""" - summary = [] - if added: - ids = ", ".join(map(str, added[:5])) - suffix = "..." if len(added) > 5 else "" - summary.append(f"Added: {len(added)} types ({ids}{suffix})") - if removed: - ids = ", ".join(map(str, removed[:5])) - suffix = "..." if len(removed) > 5 else "" - summary.append(f"Removed: {len(removed)} types ({ids}{suffix})") - if modified: - ids = ", ".join(map(str, modified[:5])) - suffix = "..." if len(modified) > 5 else "" - summary.append(f"Modified: {len(modified)} types ({ids}{suffix})") - return summary - - -def set_github_output(changed, summary): - """Set GitHub Actions step outputs.""" - github_output = os.environ.get("GITHUB_OUTPUT") - if not github_output: - return - - with open(github_output, "a") as f: - f.write(f"changed={'true' if changed else 'false'}\n") - if summary: - f.write(f"summary={'|'.join(summary)}\n") - - -def main(): - """Generate updated const.py from fetched definitions.""" - input_file = sys.argv[1] if len(sys.argv) > 1 else "new_tag_types.json" - - new_tag_types = load_new_tag_types(input_file) - - with open(CONST_PATH, "r") as f: - content = f.read() - - current_types = parse_current_definitions(content) - - print(f"Current definitions: {len(current_types)} types") - print(f"New definitions: {len(new_tag_types)} types") - - added, removed, modified = compute_changes(current_types, new_tag_types) - changed = bool(added or removed or modified) - - new_fallback = generate_fallback_content(new_tag_types) - new_content = update_tag_types_file(content, new_fallback) - - with open(CONST_PATH, "w") as f: - f.write(new_content) - - summary = build_summary(added, removed, modified) - - if changed: - print("CHANGED=true") - print(f"SUMMARY={'|'.join(summary)}") - else: - print("CHANGED=false") - print("No changes detected") - - set_github_output(changed, summary) - - -if __name__ == "__main__": - main() diff --git a/tests/scripts/test_sync_tag_types.py b/tests/scripts/test_sync_tag_types.py deleted file mode 100644 index 71e4475..0000000 --- a/tests/scripts/test_sync_tag_types.py +++ /dev/null @@ -1,377 +0,0 @@ -"""Tests for the tag type sync scripts.""" - -import json -import os -import re -import textwrap -from unittest.mock import MagicMock, patch - -import pytest - -# Add scripts directory to path so we can import the modules -import sys - -REPO_ROOT = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) -sys.path.insert(0, os.path.join(REPO_ROOT, "scripts")) - -import fetch_tag_types -import generate_tag_types - - -# --------------------------------------------------------------------------- -# Fixtures -# --------------------------------------------------------------------------- - -SAMPLE_CONST_PY = textwrap.dedent("""\ - DOMAIN = "opendisplay" - - FALLBACK_TAG_DEFINITIONS = { - 0: {"version": 4, "name": "M2 1.54\\"", "width": 152, "height": 152}, - 1: {"version": 5, "name": "M2 2.9\\"", "width": 296, "height": 128}, - 240: {"version": 2, "name": "SLT\u2010EM007 Segmented", "width": 0, "height": 0}, - 250: {"version": 1, "name": "ConfigMode", "width": 0, "height": 0}, - } -""") - - -@pytest.fixture -def const_file(tmp_path): - """Write a minimal const.py and return its path.""" - p = tmp_path / "const.py" - p.write_text(SAMPLE_CONST_PY) - return p - - -@pytest.fixture -def new_types_json(tmp_path): - """Write a new_tag_types.json and return its path.""" - data = { - 0: {"version": 4, "name": 'M2 1.54"', "width": 152, "height": 152}, - 1: {"version": 5, "name": 'M2 2.9"', "width": 296, "height": 128}, - 240: {"version": 2, "name": "SLT\u2010EM007 Segmented", "width": 0, "height": 0}, - 250: {"version": 1, "name": "ConfigMode", "width": 0, "height": 0}, - } - p = tmp_path / "new_tag_types.json" - p.write_text(json.dumps(data, indent=2)) - return p - - -# --------------------------------------------------------------------------- -# Tests for generate_tag_types – load_new_tag_types -# --------------------------------------------------------------------------- - -class TestLoadNewTagTypes: - """Tests for loading and converting JSON tag types.""" - - def test_keys_are_integers(self, new_types_json): - """JSON string keys must be converted to integers.""" - result = generate_tag_types.load_new_tag_types(str(new_types_json)) - assert all(isinstance(k, int) for k in result.keys()) - - def test_values_preserved(self, new_types_json): - """Tag type data values must be preserved after loading.""" - result = generate_tag_types.load_new_tag_types(str(new_types_json)) - assert result[0]["name"] == 'M2 1.54"' - assert result[250]["width"] == 0 - - -# --------------------------------------------------------------------------- -# Tests for generate_tag_types – parse_current_definitions -# --------------------------------------------------------------------------- - -class TestParseCurrentDefinitions: - """Tests for parsing FALLBACK_TAG_DEFINITIONS from const.py.""" - - def test_parses_all_entries(self, const_file): - """Should parse all entries from the FALLBACK_TAG_DEFINITIONS block.""" - content = const_file.read_text() - result = generate_tag_types.parse_current_definitions(content) - assert len(result) == 4 - assert set(result.keys()) == {0, 1, 240, 250} - - def test_keys_are_integers(self, const_file): - """Parsed keys must be integers.""" - content = const_file.read_text() - result = generate_tag_types.parse_current_definitions(content) - assert all(isinstance(k, int) for k in result.keys()) - - def test_exits_on_missing_block(self): - """Should exit if FALLBACK_TAG_DEFINITIONS block is not found.""" - with pytest.raises(SystemExit): - generate_tag_types.parse_current_definitions("no such block here") - - -# --------------------------------------------------------------------------- -# Tests for generate_tag_types – compute_changes -# --------------------------------------------------------------------------- - -class TestComputeChanges: - """Tests for computing diffs between current and new definitions.""" - - def test_no_changes(self): - """Identical data should produce no changes.""" - current = { - 0: '0: {"version": 4, "name": "Tag0", "width": 100, "height": 100},', - } - new = {0: {"version": 4, "name": "Tag0", "width": 100, "height": 100}} - added, removed, modified = generate_tag_types.compute_changes(current, new) - assert added == [] - assert removed == [] - assert modified == [] - - def test_added(self): - """New type IDs should be detected as added.""" - current = {} - new = {5: {"version": 1, "name": "New", "width": 10, "height": 10}} - added, removed, modified = generate_tag_types.compute_changes(current, new) - assert added == [5] - assert removed == [] - - def test_removed(self): - """Missing type IDs should be detected as removed.""" - current = { - 5: '5: {"version": 1, "name": "Old", "width": 10, "height": 10},', - } - new = {} - added, removed, modified = generate_tag_types.compute_changes(current, new) - assert removed == [5] - assert added == [] - - def test_modified(self): - """Changed values should be detected as modified.""" - current = { - 0: '0: {"version": 1, "name": "Tag0", "width": 100, "height": 100},', - } - new = {0: {"version": 2, "name": "Tag0", "width": 100, "height": 100}} - added, removed, modified = generate_tag_types.compute_changes(current, new) - assert modified == [0] - - def test_sorting(self): - """Results should be sorted numerically, not lexicographically.""" - current = {} - new = { - 100: {"version": 1, "name": "A", "width": 1, "height": 1}, - 2: {"version": 1, "name": "B", "width": 1, "height": 1}, - 17: {"version": 1, "name": "C", "width": 1, "height": 1}, - } - added, _, _ = generate_tag_types.compute_changes(current, new) - assert added == [2, 17, 100] - - -# --------------------------------------------------------------------------- -# Tests for generate_tag_types – generate_fallback_content -# --------------------------------------------------------------------------- - -class TestGenerateFallbackContent: - """Tests for generating the FALLBACK_TAG_DEFINITIONS dict content.""" - - def test_format(self): - """Each line should have 4-space indent, type_id, JSON data, and trailing comma.""" - data = {0: {"version": 1, "name": "Tag", "width": 10, "height": 20}} - content = generate_tag_types.generate_fallback_content(data) - assert content.startswith(" 0:") - assert content.endswith(",") - - def test_sorted_numerically(self): - """Entries should be sorted by numeric type_id.""" - data = { - 100: {"version": 1, "name": "A", "width": 1, "height": 1}, - 2: {"version": 1, "name": "B", "width": 1, "height": 1}, - 17: {"version": 1, "name": "C", "width": 1, "height": 1}, - } - content = generate_tag_types.generate_fallback_content(data) - ids = [ - int(m.group(1)) - for line in content.split("\n") - if (m := re.match(r"\s+(\d+):", line)) - ] - assert ids == [2, 17, 100] - - def test_unicode_chars_preserved(self): - """Unicode characters should be preserved (not escaped) with ensure_ascii=False.""" - data = {240: {"version": 2, "name": "SLT\u2010EM007", "width": 0, "height": 0}} - content = generate_tag_types.generate_fallback_content(data) - # ensure_ascii=False preserves the actual Unicode character - assert "\u2010" in content - - -# --------------------------------------------------------------------------- -# Tests for generate_tag_types – update_tag_types_file -# --------------------------------------------------------------------------- - -class TestUpdateTagTypesFile: - """Tests for replacing FALLBACK_TAG_DEFINITIONS in file content.""" - - def test_replaces_content(self, const_file): - """The fallback block should be replaced with new content.""" - content = const_file.read_text() - new_fallback = ' 999: {"version": 1, "name": "New", "width": 1, "height": 1},' - result = generate_tag_types.update_tag_types_file(content, new_fallback) - assert "999:" in result - # Old entries removed - assert "250:" not in result - - def test_preserves_surrounding_code(self, const_file): - """Code around FALLBACK_TAG_DEFINITIONS should be unchanged.""" - content = const_file.read_text() - new_fallback = ' 999: {"version": 1, "name": "New", "width": 1, "height": 1},' - result = generate_tag_types.update_tag_types_file(content, new_fallback) - assert "DOMAIN" in result - - def test_unicode_in_replacement(self, const_file): - """Unicode escape sequences in replacement must not cause regex errors. - - This is the primary bug that was fixed: json.dumps() produces \\uXXXX - sequences which re.sub() would interpret as bad regex escapes. - """ - content = const_file.read_text() - # This would fail with re.sub() because \u2010 is a bad regex escape - new_fallback = ' 240: {"version": 2, "name": "SLT\\u2010EM007", "width": 0, "height": 0},' - result = generate_tag_types.update_tag_types_file(content, new_fallback) - assert "\\u2010" in result - - def test_exits_on_missing_block(self): - """Should exit if FALLBACK_TAG_DEFINITIONS block is not found.""" - with pytest.raises(SystemExit): - generate_tag_types.update_tag_types_file("no such block", "replacement") - - -# --------------------------------------------------------------------------- -# Tests for generate_tag_types – build_summary -# --------------------------------------------------------------------------- - -class TestBuildSummary: - """Tests for the human-readable change summary.""" - - def test_empty_on_no_changes(self): - assert generate_tag_types.build_summary([], [], []) == [] - - def test_added(self): - result = generate_tag_types.build_summary([1, 2], [], []) - assert len(result) == 1 - assert "Added: 2" in result[0] - - def test_truncated(self): - result = generate_tag_types.build_summary(list(range(10)), [], []) - assert "..." in result[0] - - -# --------------------------------------------------------------------------- -# Tests for generate_tag_types – set_github_output -# --------------------------------------------------------------------------- - -class TestSetGithubOutput: - """Tests for writing GitHub Actions outputs.""" - - def test_writes_changed(self, tmp_path): - output_file = tmp_path / "output.txt" - output_file.write_text("") - with patch.dict(os.environ, {"GITHUB_OUTPUT": str(output_file)}): - generate_tag_types.set_github_output(True, ["Added: 1 types (5)"]) - content = output_file.read_text() - assert "changed=true" in content - assert "summary=" in content - - def test_no_op_without_env(self, tmp_path): - """Should not crash when GITHUB_OUTPUT is not set.""" - with patch.dict(os.environ, {}, clear=True): - generate_tag_types.set_github_output(False, []) # should not raise - - -# --------------------------------------------------------------------------- -# Tests for generate_tag_types – full main() integration -# --------------------------------------------------------------------------- - -class TestMainIntegration: - """Integration tests for the full generate_tag_types.main() flow.""" - - def test_no_change_run(self, const_file, new_types_json, tmp_path): - """When data matches, output changed=false.""" - output_file = tmp_path / "output.txt" - output_file.write_text("") - with patch.object(generate_tag_types, "CONST_PATH", str(const_file)), \ - patch.dict(os.environ, {"GITHUB_OUTPUT": str(output_file)}), \ - patch("sys.argv", ["prog", str(new_types_json)]): - generate_tag_types.main() - assert "changed=false" in output_file.read_text() - - def test_added_type_run(self, const_file, tmp_path): - """When a new type is added, output changed=true and file is updated.""" - data = { - 0: {"version": 4, "name": 'M2 1.54"', "width": 152, "height": 152}, - 1: {"version": 5, "name": 'M2 2.9"', "width": 296, "height": 128}, - 240: {"version": 2, "name": "SLT\u2010EM007 Segmented", "width": 0, "height": 0}, - 250: {"version": 1, "name": "ConfigMode", "width": 0, "height": 0}, - 999: {"version": 1, "name": "Brand New", "width": 100, "height": 200}, - } - json_file = tmp_path / "new.json" - json_file.write_text(json.dumps(data, indent=2)) - - output_file = tmp_path / "output.txt" - output_file.write_text("") - with patch.object(generate_tag_types, "CONST_PATH", str(const_file)), \ - patch.dict(os.environ, {"GITHUB_OUTPUT": str(output_file)}), \ - patch("sys.argv", ["prog", str(json_file)]): - generate_tag_types.main() - assert "changed=true" in output_file.read_text() - updated = const_file.read_text() - assert "999:" in updated - assert "Brand New" in updated - - -# --------------------------------------------------------------------------- -# Tests for fetch_tag_types -# --------------------------------------------------------------------------- - -class TestFetchTagTypes: - """Tests for the fetch_tag_types module.""" - - def test_fetch_file_list(self): - """fetch_file_list should parse JSON filenames from HTML.""" - fake_html = '00.json 0A.json other.txt' - mock_response = MagicMock() - mock_response.read.return_value = fake_html.encode("utf-8") - mock_response.__enter__ = MagicMock(return_value=mock_response) - mock_response.__exit__ = MagicMock(return_value=False) - - with patch("urllib.request.urlopen", return_value=mock_response): - result = fetch_tag_types.fetch_file_list() - assert result == ["00.json", "0A.json"] - - def test_fetch_tag_types_parses_hex_ids(self): - """Filenames should be converted from hex to decimal type IDs.""" - fake_json = json.dumps({ - "version": 1, "name": "Test", "width": 100, "height": 50 - }).encode("utf-8") - - mock_response = MagicMock() - mock_response.read.return_value = fake_json - mock_response.__enter__ = MagicMock(return_value=mock_response) - mock_response.__exit__ = MagicMock(return_value=False) - - with patch("urllib.request.urlopen", return_value=mock_response): - result = fetch_tag_types.fetch_tag_types(["0A.json"]) - # 0x0A = 10 - assert 10 in result - assert result[10]["name"] == "Test" - - def test_fetch_tag_types_handles_errors(self): - """Errors fetching individual files should not crash the whole run.""" - with patch("urllib.request.urlopen", side_effect=Exception("Network error")): - result = fetch_tag_types.fetch_tag_types(["00.json"]) - assert result == {} - - def test_main_writes_json(self, tmp_path): - """main() should write fetched data to the output JSON file.""" - output = tmp_path / "out.json" - - with patch.object(fetch_tag_types, "fetch_file_list", return_value=["01.json"]), \ - patch.object(fetch_tag_types, "fetch_tag_types", return_value={ - 1: {"version": 1, "name": "X", "width": 10, "height": 10} - }), \ - patch("sys.argv", ["prog", str(output)]): - fetch_tag_types.main() - - data = json.loads(output.read_text()) - assert "1" in data # JSON keys are strings - assert data["1"]["name"] == "X" From 2ffb9ce4c3cd2a80ddc6c5e26e211d64ad67463f Mon Sep 17 00:00:00 2001 From: gabriel Date: Sun, 24 May 2026 14:12:50 +0200 Subject: [PATCH 02/51] feat: replace custom integration with core opendisplay integration --- custom_components/opendisplay/__init__.py | 893 +- custom_components/opendisplay/ble/__init__.py | 53 - .../opendisplay/ble/color_scheme.py | 112 - .../opendisplay/ble/connection.py | 247 - .../opendisplay/ble/exceptions.py | 26 - .../opendisplay/ble/image_processing.py | 276 - .../opendisplay/ble/image_upload.py | 952 - custom_components/opendisplay/ble/metadata.py | 217 - .../opendisplay/ble/operations.py | 148 - .../opendisplay/ble/protocol_atc.py | 216 - .../opendisplay/ble/protocol_base.py | 122 - .../opendisplay/ble/protocol_factory.py | 65 - .../opendisplay/ble/protocol_open_display.py | 485 - .../opendisplay/ble/tlv_parser.py | 758 - custom_components/opendisplay/button.py | 587 - custom_components/opendisplay/config_flow.py | 804 +- custom_components/opendisplay/const.py | 114 +- custom_components/opendisplay/coordinator.py | 1519 +- .../opendisplay/device_trigger.py | 183 - custom_components/opendisplay/diagnostics.py | 117 +- custom_components/opendisplay/entity.py | 228 +- custom_components/opendisplay/event.py | 91 + custom_components/opendisplay/g5_decoder.py | 696 - custom_components/opendisplay/icons.json | 240 +- custom_components/opendisplay/image.py | 296 - .../opendisplay/image_decompressor.py | 258 - .../opendisplay/imagegen/__init__.py | 23 - .../assets/materialdesignicons-webfont.ttf | Bin 1279992 -> 0 bytes .../materialdesignicons-webfont_meta.json | 118127 --------------- .../opendisplay/imagegen/assets/ppb.ttf | Bin 153944 -> 0 bytes .../opendisplay/imagegen/assets/rbm.ttf | Bin 168644 -> 0 bytes .../opendisplay/imagegen/colors.py | 70 - .../opendisplay/imagegen/coordinates.py | 110 - .../opendisplay/imagegen/core.py | 405 - .../opendisplay/imagegen/debug.py | 75 - .../opendisplay/imagegen/fonts.py | 277 - .../opendisplay/imagegen/icons.py | 244 - .../opendisplay/imagegen/media.py | 200 - .../opendisplay/imagegen/registry.py | 41 - .../opendisplay/imagegen/shapes.py | 417 - .../opendisplay/imagegen/text.py | 465 - .../opendisplay/imagegen/types.py | 78 - .../opendisplay/imagegen/visualizations.py | 952 - custom_components/opendisplay/light.py | 169 - custom_components/opendisplay/manifest.json | 45 +- custom_components/opendisplay/runtime_data.py | 21 - custom_components/opendisplay/select.py | 476 - custom_components/opendisplay/sensor.py | 783 +- custom_components/opendisplay/services.py | 660 +- custom_components/opendisplay/services.yaml | 356 +- custom_components/opendisplay/strings.json | 466 +- custom_components/opendisplay/switch.py | 142 - custom_components/opendisplay/tag_types.py | 649 - custom_components/opendisplay/text.py | 235 - .../opendisplay/translations/de.json | 480 - .../opendisplay/translations/en.json | 485 +- .../opendisplay/translations/pl.json | 563 - .../opendisplay/translations/pt.json | 377 - custom_components/opendisplay/update.py | 214 - custom_components/opendisplay/upload.py | 559 - custom_components/opendisplay/util.py | 181 - 61 files changed, 1163 insertions(+), 136885 deletions(-) delete mode 100644 custom_components/opendisplay/ble/__init__.py delete mode 100644 custom_components/opendisplay/ble/color_scheme.py delete mode 100644 custom_components/opendisplay/ble/connection.py delete mode 100644 custom_components/opendisplay/ble/exceptions.py delete mode 100644 custom_components/opendisplay/ble/image_processing.py delete mode 100644 custom_components/opendisplay/ble/image_upload.py delete mode 100644 custom_components/opendisplay/ble/metadata.py delete mode 100644 custom_components/opendisplay/ble/operations.py delete mode 100644 custom_components/opendisplay/ble/protocol_atc.py delete mode 100644 custom_components/opendisplay/ble/protocol_base.py delete mode 100644 custom_components/opendisplay/ble/protocol_factory.py delete mode 100644 custom_components/opendisplay/ble/protocol_open_display.py delete mode 100644 custom_components/opendisplay/ble/tlv_parser.py delete mode 100644 custom_components/opendisplay/button.py delete mode 100644 custom_components/opendisplay/device_trigger.py create mode 100644 custom_components/opendisplay/event.py delete mode 100644 custom_components/opendisplay/g5_decoder.py delete mode 100644 custom_components/opendisplay/image.py delete mode 100644 custom_components/opendisplay/image_decompressor.py delete mode 100644 custom_components/opendisplay/imagegen/__init__.py delete mode 100644 custom_components/opendisplay/imagegen/assets/materialdesignicons-webfont.ttf delete mode 100644 custom_components/opendisplay/imagegen/assets/materialdesignicons-webfont_meta.json delete mode 100644 custom_components/opendisplay/imagegen/assets/ppb.ttf delete mode 100644 custom_components/opendisplay/imagegen/assets/rbm.ttf delete mode 100644 custom_components/opendisplay/imagegen/colors.py delete mode 100644 custom_components/opendisplay/imagegen/coordinates.py delete mode 100644 custom_components/opendisplay/imagegen/core.py delete mode 100644 custom_components/opendisplay/imagegen/debug.py delete mode 100644 custom_components/opendisplay/imagegen/fonts.py delete mode 100644 custom_components/opendisplay/imagegen/icons.py delete mode 100644 custom_components/opendisplay/imagegen/media.py delete mode 100644 custom_components/opendisplay/imagegen/registry.py delete mode 100644 custom_components/opendisplay/imagegen/shapes.py delete mode 100644 custom_components/opendisplay/imagegen/text.py delete mode 100644 custom_components/opendisplay/imagegen/types.py delete mode 100644 custom_components/opendisplay/imagegen/visualizations.py delete mode 100644 custom_components/opendisplay/light.py delete mode 100644 custom_components/opendisplay/runtime_data.py delete mode 100644 custom_components/opendisplay/select.py delete mode 100644 custom_components/opendisplay/switch.py delete mode 100644 custom_components/opendisplay/tag_types.py delete mode 100644 custom_components/opendisplay/text.py delete mode 100644 custom_components/opendisplay/translations/de.json delete mode 100644 custom_components/opendisplay/translations/pl.json delete mode 100644 custom_components/opendisplay/translations/pt.json delete mode 100644 custom_components/opendisplay/update.py delete mode 100644 custom_components/opendisplay/upload.py delete mode 100644 custom_components/opendisplay/util.py diff --git a/custom_components/opendisplay/__init__.py b/custom_components/opendisplay/__init__.py index db94cbd..4fcc7c9 100644 --- a/custom_components/opendisplay/__init__.py +++ b/custom_components/opendisplay/__init__.py @@ -1,788 +1,167 @@ -import asyncio -import logging -import os -from typing import Final +"""Integration for OpenDisplay BLE e-paper displays.""" -from homeassistant.helpers import issue_registry as ir +import asyncio +import contextlib +from dataclasses import dataclass +from typing import TYPE_CHECKING + +from opendisplay import ( + AuthenticationFailedError, + AuthenticationRequiredError, + BLEConnectionError, + BLETimeoutError, + GlobalConfig, + OpenDisplayDevice, + OpenDisplayError, +) + +from homeassistant.components.bluetooth import async_ble_device_from_address from homeassistant.config_entries import ConfigEntry -from homeassistant.const import Platform, EVENT_HOMEASSISTANT_STARTED, CONF_HOST +from homeassistant.const import Platform from homeassistant.core import HomeAssistant -from homeassistant.exceptions import ConfigEntryNotReady -from homeassistant.helpers import entity_registry as er, device_registry as dr, storage -from homeassistant.const import __version__ as HA_VERSION +from homeassistant.exceptions import ConfigEntryAuthFailed, ConfigEntryNotReady +from homeassistant.helpers import config_validation as cv, device_registry as dr +from homeassistant.helpers.device_registry import CONNECTION_BLUETOOTH from homeassistant.helpers.typing import ConfigType -from .ble import BLEDeviceMetadata -from .const import DOMAIN -from .coordinator import Hub -from .runtime_data import OpenDisplayConfigEntry, OpenDisplayBLERuntimeData -from .services import async_setup_services -from .tag_types import get_tag_types_manager -from .util import is_ble_entry - -_LOGGER: Final = logging.getLogger(__name__) - -PLATFORMS = [ - Platform.SENSOR, - Platform.BUTTON, - Platform.IMAGE, - Platform.SELECT, - Platform.SWITCH, - Platform.TEXT, -] - -# BLE devices use a subset of platforms -BLE_PLATFORMS = [ - Platform.SENSOR, # Battery, RSSI, last seen - Platform.LIGHT, # LED control - Platform.BUTTON, # Clock mode controls - Platform.IMAGE, # Display content (captured from drawcustom) - Platform.UPDATE -] - - -async def async_migrate_camera_entities(hass: HomeAssistant, entry: ConfigEntry) -> list[str]: - """Migrate old camera entities to image entities. - - Finds and removes camera entities that match our unique ID pattern, - returns a list of removed entity IDs for notification. - - Returns: - list[str]: List of removed camera entity IDs - """ - entity_registry = er.async_get(hass) - removed_entities = [] - - # Find camera entities with OpenDisplay domain and content in unique_id - camera_entities = [] - for entity in entity_registry.entities.values(): - if entity.platform == DOMAIN and entity.domain == "camera" and entity.unique_id.endswith("_content"): - camera_entities.append(entity) - - for entity in camera_entities: - _LOGGER.info("Removing old camera entity: %s", entity.entity_id) - entity_registry.async_remove(entity.entity_id) - removed_entities.append(entity.entity_id) - - return removed_entities - -async def async_remove_clock_mode_buttons(hass: HomeAssistant, entry: ConfigEntry) -> list[str]: - """Remove deprecated clock mode button entities. - - Clock mode was a tech demo feature that is no longer supported. - This removes the old button entities from the entity registry. - - Returns: - list[str]: List of removed button entity IDs - """ - entity_registry = er.async_get(hass) - removed_entities = [] - - # Find clock mode button entities for this config entry - for entity in er.async_entries_for_config_entry(entity_registry, entry.entry_id): - if entity.unique_id and ("_set_clock_mode" in entity.unique_id or "_disable_clock_mode" in entity.unique_id): - _LOGGER.info("Removing deprecated clock mode button: %s", entity.entity_id) - entity_registry.async_remove(entity.entity_id) - removed_entities.append(entity.entity_id) - - return removed_entities +if TYPE_CHECKING: + from opendisplay.models import FirmwareVersion +from .const import CONF_ENCRYPTION_KEY, DOMAIN +from .coordinator import OpenDisplayCoordinator +from .services import async_setup_services -async def async_remove_invalid_ble_entities( - hass: HomeAssistant, - entry: ConfigEntry, - device_metadata: dict -) -> list[str]: - """Remove BLE entities that are invalid for current device config. +CONFIG_SCHEMA = cv.config_entry_only_config_schema(DOMAIN) - Checks device configuration and removes entities that shouldn't exist based on - current hardware/firmware capabilities: - - Battery sensors when power_mode == 2 (USB powered) - - Future: LED entities when LED config missing - - Future: Sensor entities based on sensor config +_BASE_PLATFORMS: list[Platform] = [] +_FLEX_PLATFORMS = [Platform.EVENT, Platform.SENSOR] - Args: - hass: Home Assistant instance - entry: Configuration entry - device_metadata: Current device metadata with OpenDisplay config - Returns: - list[str]: List of removed entity IDs - """ - entity_registry = er.async_get(hass) - removed_entities = [] - mac_address = entry.data.get("mac_address", "") +@dataclass +class OpenDisplayRuntimeData: + """Runtime data for an OpenDisplay config entry.""" - # Check power mode - remove battery sensors if not battery/solar powered - from .ble import BLEDeviceMetadata - metadata = BLEDeviceMetadata(device_metadata) - if metadata.power_mode not in (1, 3): # Not battery (1) or solar (3) - for entity in er.async_entries_for_config_entry(entity_registry, entry.entry_id): - if entity.unique_id and ( - f"opendisplay_ble_{mac_address}_battery_percentage" in entity.unique_id or - f"opendisplay_ble_{mac_address}_battery_voltage" in entity.unique_id - ): - _LOGGER.info("Removing battery sensor (power_mode=%s): %s", metadata.power_mode, entity.entity_id) - entity_registry.async_remove(entity.entity_id) - removed_entities.append(entity.entity_id) + coordinator: OpenDisplayCoordinator + firmware: FirmwareVersion + device_config: GlobalConfig + is_flex: bool + upload_task: asyncio.Task | None = None - # Future: Check LED config presence and remove LED entity if not present - # Future: Check sensor configs and remove/add sensor entities accordingly - return removed_entities +type OpenDisplayConfigEntry = ConfigEntry[OpenDisplayRuntimeData] -# async def async_migrate_entry(hass: HomeAssistant, config_entry: ConfigEntry) -> bool: -# """ -# Migrate old config entries to new schema version. -# -# Version 2 -> 3: Add device type and protocol type fields to BLE entries and fix boolean rotate buffer. -# -# Version 3 -> 4: Fix color support. -# -# Returns: -# bool: True if migration was successful, False otherwise. -# """ -# _LOGGER.debug( -# "Migrating config entry from version %s.%s", -# config_entry.version, -# config_entry.minor_version, -# ) -# if config_entry.version == 2: -# new_data = {**config_entry.data} -# -# # Check if this is a BLE entry -# if "mac_address" in config_entry.data: -# if "device_type" not in config_entry.data: -# new_data["device_type"] = "ble" -# _LOGGER.info( -# "Adding device_type='ble' to BLE entry %s", -# new_data.get("name", new_data.get("mac_address")) -# ) -# -# if "protocol_type" not in config_entry.data: -# new_data["protocol_type"] = "atc" -# _LOGGER.info( -# "Adding protocol_type='atc' to BLE entry %s", -# new_data.get("name", new_data.get("mac_address")) -# ) -# -# if "device_metadata" in new_data: -# device_metadata = new_data["device_metadata"] -# -# if "oepl_config" in device_metadata and "open_display_config" not in device_metadata: -# device_metadata = { -# **device_metadata, -# "open_display_config": device_metadata["oepl_config"], -# } -# new_data["device_metadata"] = device_metadata -# -# if "open_display_config" not in device_metadata and "rotatebuffer" in device_metadata: -# rotatebuffer_value = device_metadata["rotatebuffer"] -# -# if isinstance(rotatebuffer_value, bool): -# new_metadata = {**device_metadata, "rotatebuffer": 1} -# new_data["device_metadata"] = new_metadata -# -# _LOGGER.info( -# "Converting rotatebuffer from %s (bool) to %s (int) for BLE entry %s", -# rotatebuffer_value, -# new_metadata["rotatebuffer"], -# new_data.get("name", new_data.get("mac_address")) -# ) -# -# # Update config entry with migrated data and new version -# hass.config_entries.async_update_entry( -# config_entry, -# data=new_data, -# version=3, -# minor_version=0 -# ) -# _LOGGER.info("Successfully migrated config entry to version 3") -# -# if config_entry.version == 3: -# new_data = {**config_entry.data} -# -# # Only migrate BLE entries -# if "mac_address" in config_entry.data: -# device_metadata = dict(new_data.get("device_metadata", {})) -# -# if "oepl_config" in device_metadata and "open_display_config" not in device_metadata: -# device_metadata["open_display_config"] = device_metadata["oepl_config"] -# new_data["device_metadata"] = device_metadata -# -# # OpenDisplay: No migration needed - color scheme is already in open_display_config.displays[0] -# # ATC: Need to add color_scheme at root level -# -# if "open_display_config" not in device_metadata and "color_scheme" not in device_metadata: -# hw_type = device_metadata.get("hw_type", 0) -# tag_types_manager = await get_tag_types_manager(hass) -# -# if tag_types_manager.is_in_hw_map(hw_type): -# tag_type = await tag_types_manager.get_tag_info(hw_type) -# color_table = tag_type.color_table -# -# _LOGGER.info( -# "Migrating color support for BLE entry %s based on hw_type=%s with colors: %s", -# new_data.get("name", new_data.get("mac_address")), -# hw_type, -# color_table -# ) -# -# if 'yellow' in color_table and 'red' in color_table: -# color_scheme = 3 # BWRY -# elif 'yellow' in color_table: -# color_scheme = 2 # BWY -# elif 'red' in color_table: -# color_scheme = 1 # BWR -# else: -# color_scheme = 0 # BW -# -# _LOGGER.info( -# "Determined color_scheme=%s for BLE entry %s", -# color_scheme, -# new_data.get("name", new_data.get("mac_address")) -# ) -# else: -# # Fallback from old color_support string -# cs = device_metadata.get("color_support", "mono") -# color_scheme = {"red": 1, "yellow": 2, "bwry": 3}.get(cs, 0) -# _LOGGER.info( -# "Fallback color_scheme=%s for BLE entry %s from color_support='%s'", -# color_scheme, -# new_data.get("name", new_data.get("mac_address")), -# cs -# ) -# -# device_metadata["color_scheme"] = color_scheme -# new_data["device_metadata"] = device_metadata -# -# _LOGGER.info( -# "Adding color_scheme=%s to BLE entry %s", -# color_scheme, -# new_data.get("name", new_data.get("mac_address")) -# ) -# -# hass.config_entries.async_update_entry( -# config_entry, -# data=new_data, -# version=4 -# ) -# _LOGGER.info("Successfully migrated config entry to version 4") -# -# return True +def _get_encryption_key(entry: OpenDisplayConfigEntry) -> bytes | None: + """Return the encryption key bytes from entry data, or None.""" + raw = entry.data.get(CONF_ENCRYPTION_KEY) + if raw is None: + return None + if len(raw) != 32: + raise ConfigEntryAuthFailed( + "Stored OpenDisplay encryption key is invalid; reauthentication required" + ) + try: + return bytes.fromhex(raw) + except ValueError as err: + raise ConfigEntryAuthFailed( + "Stored OpenDisplay encryption key is invalid; reauthentication required" + ) from err async def async_setup(hass: HomeAssistant, config: ConfigType) -> bool: """Set up the OpenDisplay integration.""" - - # Services should be set up unconditionally - await async_setup_services(hass) + async_setup_services(hass) return True -async def async_setup_entry(hass: HomeAssistant, entry: OpenDisplayConfigEntry) -> bool: - """Set up OpenDisplay integration from a config entry. - - This is the main entry point for integration initialization, which handles both: - - AP-based entries (traditional WebSocket-based integration) - - BLE-based entries (direct Bluetooth communication) - - Args: - hass: Home Assistant instance - entry: Configuration Entry object with connection details - - Returns: - bool: True if setup was successful, False otherwise - """ - # Detect BLE vs AP entry type - is_ble_device = entry.data.get("device_type") == "ble" - - if is_ble_device: - # BLE device setup using simple callback approach - _LOGGER.debug("Setting up BLE device entry: %s", entry.data.get("name")) - - from homeassistant.components import bluetooth - from .ble import get_protocol_by_name - from datetime import datetime, timezone - mac_address = entry.data.get("mac_address") - name = entry.data.get("name") - device_metadata = entry.data.get("device_metadata", {}) - protocol_type = entry.data.get("protocol_type", "atc") # Default to ATC for backward compatibility - - # Get protocol handler for this device - protocol = get_protocol_by_name(protocol_type) - _LOGGER.debug("Setting up BLE device with protocol: %s (manufacturer ID: 0x%04X)", - protocol_type, protocol.manufacturer_id) - - # Store BLE device config in runtime_data for entity access - ble_data = OpenDisplayBLERuntimeData( - mac_address=mac_address, - name=name, - device_metadata=device_metadata, - protocol_type=protocol_type, - sensors={}, +async def async_setup_entry(hass: HomeAssistant, entry: OpenDisplayConfigEntry) -> bool: + """Set up OpenDisplay from a config entry.""" + address = entry.unique_id + if TYPE_CHECKING: + assert address is not None + + ble_device = async_ble_device_from_address(hass, address, connectable=True) + if ble_device is None: + raise ConfigEntryNotReady( + f"Could not find OpenDisplay device with address {address}" ) - entry.runtime_data = ble_data - - # Lightweight presence check - only checks cached advertisement data - if not bluetooth.async_address_present(hass, mac_address, connectable=False): - raise ConfigEntryNotReady( - translation_domain=DOMAIN, - translation_key="ble_device_not_detected", - translation_placeholders={"name": name, "mac_address": mac_address}, - ) - - if entry.data.get("send_welcome_image", False): - new_data = dict(entry.data) - new_data.pop("send_welcome_image", None) - hass.config_entries.async_update_entry(entry, data=new_data) - - hass.async_create_task( - _send_welcome_image( - hass, - entry.entry_id, - name, - ) - ) - - def _ble_device_found( - service_info: bluetooth.BluetoothServiceInfoBleak, - change: bluetooth.BluetoothChange, - ) -> None: - """Handle BLE advertising data updates. - - Uses protocol-specific parsing based on the device firmware type. - """ - # Only process the specific device - if service_info.address != mac_address: - return - - # Parse manufacturer data using protocol-specific parser - manufacturer_data = service_info.manufacturer_data.get(protocol.manufacturer_id) - if not manufacturer_data: - _LOGGER.debug( - "No manufacturer data for 0x%04X on %s (available: %s)", - protocol.manufacturer_id, - mac_address, - service_info.manufacturer_data.keys() - ) - return - - try: - advertising_data = protocol.parse_advertising_data(manufacturer_data) - if not advertising_data: - _LOGGER.debug("parse_advertising_data returned None for %s", mac_address) - return - except Exception as err: - _LOGGER.debug("Failed to parse advertising data for %s: %s", mac_address, err, exc_info=True) - return - - # Dynamically update device attributes (skip OpenDisplay fw to avoid incorrect value) - if advertising_data.fw_version and protocol_type != "open_display": - device_registry = dr.async_get(hass) - device_entry = device_registry.async_get_device( - identifiers={(DOMAIN, f"ble_{mac_address}")} - ) - new_fw_string = str(advertising_data.fw_version) - if device_entry and device_entry.sw_version != new_fw_string: - _LOGGER.debug( - "Device %s firmware updated from %s to %s", - mac_address, - device_entry.sw_version, - new_fw_string, - ) - device_registry.async_update_device( - device_entry.id, - sw_version=new_fw_string - ) - - # Build sensor data - sensor_data = { - "battery_percentage": advertising_data.battery_pct, - "battery_voltage": advertising_data.battery_mv if advertising_data.battery_mv > 0 else None, - "rssi": service_info.rssi, - "last_seen": datetime.now(timezone.utc), - "temperature": advertising_data.temperature, - } - - # Update all registered sensors - for sensor in ble_data.sensors.values(): - sensor.update_from_advertising_data(sensor_data) - - # Remove deprecated clock mode button entities - removed_clock_buttons = await async_remove_clock_mode_buttons(hass, entry) - if removed_clock_buttons: - _LOGGER.info("Removed deprecated clock mode buttons: %s", removed_clock_buttons) - # Remove invalid entities based on the current device config - removed_invalid = await async_remove_invalid_ble_entities(hass, entry, device_metadata) - if removed_invalid: - _LOGGER.info("Removed invalid BLE entities: %s", removed_invalid) + encryption_key = _get_encryption_key(entry) - # Set up BLE-specific platforms FIRST (before callback registration) - # This ensures sensor entities exist before any advertising callbacks fire - await hass.config_entries.async_forward_entry_setups(entry, BLE_PLATFORMS) - - # Register BLE advertising listener with protocol-specific manufacturer ID - # This must happen AFTER platforms are set up so sensors can receive updates - unregister_callback = bluetooth.async_register_callback( - hass, - _ble_device_found, - {"manufacturer_id": protocol.manufacturer_id}, - bluetooth.BluetoothScanningMode.ACTIVE, + try: + async with OpenDisplayDevice( + mac_address=address, ble_device=ble_device, encryption_key=encryption_key + ) as device: + fw = await device.read_firmware_version() + is_flex = device.is_flex + except (AuthenticationFailedError, AuthenticationRequiredError) as err: + raise ConfigEntryAuthFailed( + f"Encryption key rejected by OpenDisplay device: {err}" + ) from err + except (BLEConnectionError, BLETimeoutError, OpenDisplayError) as err: + raise ConfigEntryNotReady( + f"Failed to connect to OpenDisplay device: {err}" + ) from err + device_config = device.config + if TYPE_CHECKING: + assert device_config is not None + + coordinator = OpenDisplayCoordinator(hass, address) + + manufacturer = device_config.manufacturer + display = device_config.displays[0] + color_scheme_enum = display.color_scheme_enum + color_scheme = ( + str(color_scheme_enum) + if isinstance(color_scheme_enum, int) + else color_scheme_enum.name + ) + size = ( + f'{display.screen_diagonal_inches:.1f}"' + if display.screen_diagonal_inches is not None + else f"{display.pixel_width}x{display.pixel_height}" + ) + dr.async_get(hass).async_get_or_create( + config_entry_id=entry.entry_id, + connections={(CONNECTION_BLUETOOTH, address)}, + manufacturer=manufacturer.manufacturer_name, + model=f"{size} {color_scheme}", + sw_version=f"{fw['major']}.{fw['minor']}", + hw_version=( + f"{manufacturer.board_type_name or manufacturer.board_type}" + f" rev. {manufacturer.board_revision}" ) - - entry.async_on_unload(unregister_callback) - - else: - # Traditional AP setup - _LOGGER.debug("Setting up AP entry: %s", entry.data.get(CONF_HOST, "unknown")) - - hub = Hub(hass, entry) - - # Do basic setup without WebSocket connection - # Raises ConfigEntryNotReady if AP is unreachable - await hub.async_setup_initial() - - entry.runtime_data = hub - - removed_entities = await async_migrate_camera_entities(hass, entry) - if removed_entities: - # Inform users via repairs that camera entities were migrated and dashboards need updates - ir.async_create_issue( - hass, - DOMAIN, - f"camera_migration_{entry.entry_id}", - is_fixable=False, - severity=ir.IssueSeverity.WARNING, - translation_key="camera_migration_needed", - translation_placeholders={ - "count": str(len(removed_entities)), - "entities": ", ".join(removed_entities), - }, - ) - - await hass.config_entries.async_forward_entry_setups(entry, PLATFORMS) - - async def start_websocket(_): - """Start WebSocket connection after HA is fully started.""" - await hub.async_start_websocket() - - if hass.is_running: - # If HA is already running, start WebSocket immediately - await hub.async_start_websocket() - else: - # Otherwise wait for the started event - hass.bus.async_listen_once(EVENT_HOMEASSISTANT_STARTED, start_websocket) - - - # Listen for changes to options - entry.async_on_unload(entry.add_update_listener(async_update_options)) + if is_flex + else None, + configuration_url="https://opendisplay.org/firmware/config/" + if is_flex + else None, + ) + + entry.runtime_data = OpenDisplayRuntimeData( + coordinator=coordinator, + firmware=fw, + device_config=device_config, + is_flex=is_flex, + ) + + await hass.config_entries.async_forward_entry_setups( + entry, _FLEX_PLATFORMS if is_flex else _BASE_PLATFORMS + ) + entry.async_on_unload(coordinator.async_start()) return True -async def async_update_options(hass: HomeAssistant, entry: OpenDisplayConfigEntry) -> None: - """Handle updates to integration options. - - Called when the user updates integration options through the UI. - Only applies to AP-based entries (BLE devices don't have configurable options). - - Args: - hass: Home Assistant instance - entry: Updated configuration entry - """ - entry_data = entry.runtime_data - - # Only AP entries have hub with reload_config method - if is_ble_entry(entry_data): - # BLE devices don't have configurable options yet - return - - # Traditional AP entry - hub = entry_data - await hub.async_reload_config() - - -async def async_unload_entry(hass: HomeAssistant, entry: OpenDisplayConfigEntry) -> bool: - """Unload the integration when removed or restarted. - - Handles both BLE and AP entries with appropriate cleanup. - - Args: - hass: Home Assistant instance - entry: Configuration entry being unloaded - - Returns: - bool: True if unload was successful, False otherwise - """ - entry_data = entry.runtime_data - - # Determine if BLE or AP entry - is_ble_device = is_ble_entry(entry_data) - - if is_ble_device: - # BLE device cleanup - unload_ok = await hass.config_entries.async_unload_platforms(entry, BLE_PLATFORMS) - else: - # AP entry cleanup - hub = entry_data - unload_ok = await hass.config_entries.async_unload_platforms(entry, PLATFORMS) - - if unload_ok: - await hub.shutdown() - - return unload_ok - -async def async_remove_config_entry_device( - hass: HomeAssistant, config_entry: ConfigEntry, device_entry: dr.DeviceEntry +async def async_unload_entry( + hass: HomeAssistant, entry: OpenDisplayConfigEntry ) -> bool: - """Allow manual removal of stale BLE devices.""" - mac_address = None - for domain, ident in device_entry.identifiers: - if domain == DOMAIN and ident.startswith("ble_"): - mac_address = ident[4:] - break - - if not mac_address: - return True # Not a BLE device; let HA delete it. - - # Lean option: always allow removal so users can clean up. - return True - - -async def async_remove_entry(hass: HomeAssistant, entry: ConfigEntry) -> None: - """Handle complete removal of integration. - - Called when the integration is completely removed from Home Assistant - (not during restarts). Performs cleanup of persistent storage files. - - Args: - hass: Home Assistant instance - entry: Configuration entry being removed - """ - # Only remove shared storage files if this is the last config entry - remaining_entries = [ - config_entry for config_entry in hass.config_entries.async_entries(DOMAIN) - if config_entry.entry_id != entry.entry_id - ] - - if not remaining_entries: - # This was the last entry, safe to remove shared storage - await async_remove_storage_files(hass) - - -async def async_remove_storage_files(hass: HomeAssistant) -> None: - """Remove persistent storage files when removing integration. - - Cleans up files created by the integration: - - 1. Tag types file (open_display_tagtypes.json, legacy) - 2. Tag storage file (.storage/opendisplay_tags) - 3. Image directory (www/opendisplay) - - This prevents orphaned files when the integration is removed - and ensures a clean reinstallation if needed. - - Args: - hass: Home Assistant instance - """ - from .tag_types import reset_tag_types_manager - - storage_dir = hass.config.path(".storage") - - # Remove tag types file - tag_types_file = hass.config.path("open_display_tagtypes.json") - if await hass.async_add_executor_job(os.path.exists, tag_types_file): - try: - await hass.async_add_executor_job(os.remove, tag_types_file) - _LOGGER.debug("Removed tag types file") - except OSError as err: - _LOGGER.error("Error removing tag types file: %s", err) - - # Remove tag types storage entry - try: - await storage.async_remove_store(hass, "opendisplay_tagtypes") - await storage.async_remove_store(hass, "open_display_tagtypes") - _LOGGER.debug("Removed tag types storage file") - except Exception as err: - _LOGGER.error("Error removing tag types storage file: %s", err) - - # Remove tag storage file - tags_file = os.path.join(storage_dir, f"{DOMAIN}_tags") - if await hass.async_add_executor_job(os.path.exists, tags_file): - try: - await hass.async_add_executor_job(os.remove, tags_file) - _LOGGER.debug("Removed tag storage file") - except OSError as err: - _LOGGER.error("Error removing tag storage file: %s", err) - - # Remove image directory - image_dir = hass.config.path("www/opendisplay") - if await hass.async_add_executor_job(os.path.exists, image_dir): - try: - # Get file list in executor - files = await hass.async_add_executor_job(os.listdir, image_dir) - - # Remove each file in executor - for file in files: - file_path = os.path.join(image_dir, file) - await hass.async_add_executor_job(os.remove, file_path) - - # Remove directory in executor - await hass.async_add_executor_job(os.rmdir, image_dir) - _LOGGER.debug("Removed image directory") - except OSError as err: - _LOGGER.error("Error removing image directory: %s", err) - - # Reset the tag types manager singleton since its storage was deleted - reset_tag_types_manager() - _LOGGER.debug("Reset tag types manager singleton") - - - -async def _send_welcome_image( - hass: HomeAssistant, - entry_id: str, - device_name: str, -) -> None: - try: - for _ in range(10): - if hass.services.has_service(DOMAIN, "drawcustom"): - break - await asyncio.sleep(0.5) - else: - _LOGGER.debug("Welcome image: drawcustom service not available") - return - device_registry = dr.async_get(hass) - devices = [ - device - for device in device_registry.devices.values() - if entry_id in device.config_entries - ] - for _ in range(20): - devices = dr.async_entries_for_config_entry(device_registry, entry_id) - if devices: - device_id = devices[0].id - break - await asyncio.sleep(0.5) - - if not device_id: - _LOGGER.debug("Welcome image: No devices found for entry %s", entry_id) - return - - device_id = devices[0].id - - entry = hass.config_entries.async_get_entry(entry_id) - if not entry: - return - - device_metadata = entry.data.get("device_metadata", {}) - - metadata = BLEDeviceMetadata(device_metadata) - - width = metadata.width - height = metadata.height - color_scheme = metadata.color_scheme - - colors = list(color_scheme.palette.colors.keys()) - use_blue_logo = "blue" in colors - ha_logo_url = ( - "https://openepaperlink.org/HA_blue.png" - if use_blue_logo - else "https://openepaperlink.org/HA_black.png" - ) - od_logo_url = ( - "https://openepaperlink.org/OpenDisplay.png" - if use_blue_logo - else "https://openepaperlink.org/OpenDisplay_black.png" - ) - - title_y_pct = 10 - title_size = max(12, int(height * 0.08)) - logo_y_pct = 40 - logo_size = max(48, int(height * 0.25)) - ha_logo_size = max(32, int(logo_size * 0.8)) - color_box_y_pct = 80 - color_box_size = max(20, int(height * 0.12)) - - payload = [ - { - "type": "text", - "value": f"Connected to HA {HA_VERSION}", - "x": "50%", - "y": f"{title_y_pct}%", - "size": title_size, - "color": "black", - "anchor": "mt", - "font": "ppb.ttf", - }, - # Home Assistant logo (left side) - { - "type": "dlimg", - "url": ha_logo_url, - "x": int(width * 0.35 - ha_logo_size // 2), - "y": int(height * logo_y_pct / 100 - ha_logo_size // 2), - "xsize": ha_logo_size, - "ysize": ha_logo_size, - "resize_method": "contain", - }, - # Bluetooth icon (center) - { - "type": "icon", - "value": "mdi:bluetooth-connect", - "x": "50%", # Center - "y": f"{logo_y_pct}%", - "size": int(logo_size * 0.5), - "color": "black", - "anchor": "mm", - }, - # OpenDisplay logo (right side) - { - "type": "dlimg", - "url": od_logo_url, - "x": int(width * 0.65 - logo_size // 2), - "y": int(height * logo_y_pct / 100 - logo_size // 2), - "xsize": logo_size, - "ysize": logo_size, - "resize_method": "contain", - }, - ] - - num_colors = len(colors) - spacing = 5 - total_width = num_colors * color_box_size + (num_colors - 1) * spacing - start_x = (width - total_width) // 2 - box_y = int(height * color_box_y_pct / 100) - - for i, color in enumerate(colors): - box_x = start_x + i * (color_box_size + spacing) - payload.append({ - "type": "rectangle", - "x_start": box_x, - "y_start": box_y, - "x_end": box_x + color_box_size, - "y_end": box_y + color_box_size, - "fill": color, - "outline": "black", - "width": 1, - }) - - _LOGGER.debug("Sending welcome image to %s", device_name) - await hass.services.async_call( - DOMAIN, - "drawcustom", - { - "device_id": device_id, - "payload": payload, - "background": "white", - "rotate": 0, - "dither": 2, - "ttl": 60, - }, - blocking=False, - ) - - except Exception as err: - _LOGGER.debug("Welcome image failed: %s", err, exc_info=True) + """Unload a config entry.""" + if (task := entry.runtime_data.upload_task) and not task.done(): + task.cancel() + with contextlib.suppress(asyncio.CancelledError): + await task + + return await hass.config_entries.async_unload_platforms( + entry, _FLEX_PLATFORMS if entry.runtime_data.is_flex else _BASE_PLATFORMS + ) diff --git a/custom_components/opendisplay/ble/__init__.py b/custom_components/opendisplay/ble/__init__.py deleted file mode 100644 index f1b03f7..0000000 --- a/custom_components/opendisplay/ble/__init__.py +++ /dev/null @@ -1,53 +0,0 @@ -"""BLE protocol abstraction for OpenDisplay devices.""" -from .color_scheme import ColorScheme -# Re-export key classes and functions for backward compatibility -from .connection import BLEConnection -from .image_upload import BLEImageUploader -from .metadata import BLEDeviceMetadata -from .operations import ( - turn_led_on, - turn_led_off, - ping_device, -) -from .protocol_factory import ( - get_protocol_by_manufacturer_id, - get_protocol_by_name, - get_supported_manufacturer_ids, -) -from .protocol_base import AdvertisingData, DeviceCapabilities -from .exceptions import ( - BLEError, - BLEConnectionError, - BLEProtocolError, - BLETimeoutError, - UnsupportedProtocolError, - ConfigValidationError, -) - -__all__ = [ - # Connection - "BLEConnection", - # Image upload - "BLEImageUploader", - # Metadata - "BLEDeviceMetadata", - # Operations - "turn_led_on", - "turn_led_off", - "ping_device", - # Protocol factory - "get_protocol_by_manufacturer_id", - "get_protocol_by_name", - "get_supported_manufacturer_ids", - # Data structures - "AdvertisingData", - "DeviceCapabilities", - "ColorScheme", - # Exceptions - "BLEError", - "BLEConnectionError", - "BLEProtocolError", - "BLETimeoutError", - "UnsupportedProtocolError", - "ConfigValidationError", -] diff --git a/custom_components/opendisplay/ble/color_scheme.py b/custom_components/opendisplay/ble/color_scheme.py deleted file mode 100644 index 57a0432..0000000 --- a/custom_components/opendisplay/ble/color_scheme.py +++ /dev/null @@ -1,112 +0,0 @@ -from dataclasses import dataclass -from enum import Enum -from typing import Tuple, Dict - - -@dataclass(frozen=True) -class ColorPalette: - """Color palette for a display type.""" - colors: Dict[str, Tuple[int, int, int]] # name -> RGB tuple - accent: str - - -class ColorScheme(Enum): - """ - Display color scheme with associated palette. - - Usage: - scheme = ColorScheme.from_int(2) # Get BWY from firmware value - scheme.name # "BWY" - scheme.value # 2 - scheme.accent_color # "yellow" - scheme.palette.colors # {'black': ..., 'white': ..., 'yellow': ...} - """ - MONO = (0, ColorPalette( - colors={ - 'black': (0, 0, 0), - 'white': (255, 255, 255), - }, - accent='black' - )) - - BWR = (1, ColorPalette( - colors={ - 'black': (0, 0, 0), - 'white': (255, 255, 255), - 'red': (255, 0, 0), - }, - accent='red' - )) - - BWY = (2, ColorPalette( - colors={ - 'black': (0, 0, 0), - 'white': (255, 255, 255), - 'yellow': (255, 255, 0), - }, - accent='yellow' - )) - - BWRY = (3, ColorPalette( - colors={ - 'black': (0, 0, 0), - 'white': (255, 255, 255), - 'red': (255, 0, 0), - 'yellow': (255, 255, 0), - }, - accent='red' - )) - - BWGBRY = (4, ColorPalette( - colors={ - 'black': (0, 0, 0), - 'white': (255, 255, 255), - 'green': (0, 255, 0), - 'blue': (0, 0, 255), - 'red': (255, 0, 0), - 'yellow': (255, 255, 0), - }, - accent='red' - )) - - GRAYSCALE_4 = (5, ColorPalette( - colors={ - 'black': (0, 0, 0), - 'gray1': (85, 85, 85), - 'gray2': (170, 170, 170), - 'white': (255, 255, 255) - }, - accent='black' - )) - - def __init__(self, value: int, palette: ColorPalette): - self._value_ = value - self.palette = palette - - @classmethod - def from_int(cls, value: int) -> 'ColorScheme': - """Get ColorScheme from firmware int value.""" - for scheme in cls: - if scheme.value == value: - return scheme - return cls.MONO # Default fallback - - @property - def accent_color(self) -> str: - """Accent color name for this scheme.""" - return self.palette.accent - - @property - def has_red(self) -> bool: - """Check if red color is supported.""" - return 'red' in self.palette.colors - - @property - def has_yellow(self) -> bool: - """Check if yellow color is supported.""" - return 'yellow' in self.palette.colors - - @property - def is_multi_color(self) -> bool: - """Check if the scheme supports multiple colors.""" - return len(self.palette.colors) > 2 diff --git a/custom_components/opendisplay/ble/connection.py b/custom_components/opendisplay/ble/connection.py deleted file mode 100644 index 6bc4ed0..0000000 --- a/custom_components/opendisplay/ble/connection.py +++ /dev/null @@ -1,247 +0,0 @@ -"""BLE connection management.""" -import asyncio -import logging -from typing import TYPE_CHECKING - -from homeassistant.core import HomeAssistant -from homeassistant.components import bluetooth -from bleak import BleakClient -from bleak.exc import BleakError -from bleak_retry_connector import ( - BleakClientWithServiceCache, - BleakOutOfConnectionSlotsError, - establish_connection, -) - -from .exceptions import BLEConnectionError, BLEProtocolError, BLETimeoutError -from ..const import DOMAIN - - -if TYPE_CHECKING: - from .protocol_base import BLEProtocol - -_LOGGER = logging.getLogger(__name__) - -# Protocol initialization command for ATC protocol -CMD_INIT = bytes([0x01, 0x01]) - -INIT_DELAY_SECONDS = 2.0 - - -class BLEConnection: - """Context manager for BLE connections with protocol-specific service UUID. - - Manages BLE connection lifecycle including: - - Connection establishment with retry logic - - Service/characteristic resolution - - Notification handling - - Protocol initialization - - Graceful disconnection - """ - - def __init__(self, hass: HomeAssistant, mac_address: str, service_uuid: str, protocol: "BLEProtocol"): - """Initialize BLE connection manager. - - Args: - hass: Home Assistant instance - mac_address: Device MAC address - service_uuid: Protocol-specific BLE service UUID - protocol: Protocol instance for this device - """ - self.hass = hass - self.mac_address = mac_address - self.service_uuid = service_uuid - self.protocol = protocol - self.client: BleakClient | None = None - self.write_char = None - self._response_queue = asyncio.Queue() - self._notification_active = False - - async def __aenter__(self): - """Establish BLE connection and initialize protocol.""" - try: - device = bluetooth.async_ble_device_from_address( - self.hass, self.mac_address, connectable=True - ) - if not device: - raise BLEConnectionError( - translation_domain=DOMAIN, - translation_key="ble_device_not_found", - translation_placeholders={"mac_address": self.mac_address} - ) - - self.client = await establish_connection( - BleakClientWithServiceCache, - device, - f"BLE-{self.mac_address}", - self._disconnected_callback, - timeout=15.0, - ) - - # Resolve protocol-specific service characteristic - if not self._resolve_characteristic(): - await self.client.disconnect() - raise BLEConnectionError( - translation_domain=DOMAIN, - translation_key="ble_characteristic_not_resolved", - translation_placeholders={ "service_uuid": self.service_uuid} - ) - - # Enable notifications for protocol responses - await self.client.start_notify(self.write_char, self._notification_callback) - self._notification_active = True - - # Let protocol handle its own initialization requirements - await self.protocol.initialize_connection(self) - - return self - - except BleakOutOfConnectionSlotsError as e: - await self._cleanup() - raise BLEConnectionError( - translation_domain=DOMAIN, - translation_key="ble_slots_unavailable", - translation_placeholders={"mac_address": self.mac_address, "error": str(e)} - ) from e - - except (BleakError, asyncio.TimeoutError) as e: - await self._cleanup() - raise BLEConnectionError( - translation_domain=DOMAIN, - translation_key="ble_connection_failed", - translation_placeholders={"mac_address": self.mac_address, "error": str(e)} - ) from e - - async def __aexit__(self, exc_type, exc_val, exc_tb): - """Clean up BLE connection.""" - await self._cleanup() - - async def _cleanup(self): - """Clean up connection resources.""" - if self.client and self.client.is_connected: - if self._notification_active: - try: - await self.client.stop_notify(self.write_char) - except Exception: - _LOGGER.debug("Failed to stop notifications during cleanup") - finally: - self._notification_active = False - try: - await self.client.disconnect() - except Exception: - _LOGGER.debug("Failed to disconnect during cleanup") - - def _resolve_characteristic(self) -> bool: - """Resolve BLE characteristic for the protocol-specific service. - - Returns: - bool: True if characteristic was resolved successfully - """ - try: - if not self.client or not self.client.services: - return False - - # Find the protocol-specific service characteristic - char = self.client.services.get_characteristic(self.service_uuid) - if char: - self.write_char = char - _LOGGER.debug( - "Resolved characteristic for service %s on %s", - self.service_uuid, - self.mac_address, - ) - return True - - _LOGGER.error( - "Could not find characteristic for service %s on %s", - self.service_uuid, - self.mac_address, - ) - return False - - except Exception as e: - _LOGGER.error( - "Error resolving characteristic for %s: %s", self.mac_address, e - ) - return False - - def _notification_callback(self, sender, data: bytearray) -> None: - """Handle notification from device. - - Args: - sender: Notification sender - data: Notification data - """ - try: - self._response_queue.put_nowait(bytes(data)) - except asyncio.QueueFull: - _LOGGER.warning( - "Response queue full for %s, dropping notification", self.mac_address - ) - - async def _write_raw(self, data: bytes) -> None: - """Write raw data to device characteristic. - - Args: - data: Raw bytes to write - - Raises: - BLEProtocolError: If write characteristic is not available - """ - if not self.write_char: - raise BLEProtocolError( - translation_domain=DOMAIN, - translation_key="ble_write_char_missing", - ) - - await self.client.write_gatt_char(self.write_char, data, response=False) - - async def write_command_with_response( - self, command: bytes, timeout: float = 10.0 - ) -> bytes: - """Write command and wait for response. - - Args: - command: Command bytes to write - timeout: Response timeout in seconds - - Returns: - bytes: Response data from device - - Raises: - BLETimeoutError: If no response received within timeout - """ - # Clear any pending responses - while not self._response_queue.empty(): - try: - self._response_queue.get_nowait() - except asyncio.QueueEmpty: - break - - await self._write_raw(command) - - try: - response = await asyncio.wait_for(self._response_queue.get(), timeout=timeout) - return response - except asyncio.TimeoutError: - raise BLETimeoutError( - translation_domain=DOMAIN, - translation_key="ble_timeout", - translation_placeholders={"mac_address": self.mac_address, "timeout": timeout}, - ) from None - - async def write_command(self, data: bytes) -> None: - """Write command to device without expecting response. - - Args: - data: Command bytes to write - """ - await self._write_raw(data) - - def _disconnected_callback(self, client: BleakClient) -> None: - """Handle disconnection event. - - Args: - client: Disconnected BleakClient - """ - _LOGGER.debug("Device %s disconnected", self.mac_address) diff --git a/custom_components/opendisplay/ble/exceptions.py b/custom_components/opendisplay/ble/exceptions.py deleted file mode 100644 index 77c34a7..0000000 --- a/custom_components/opendisplay/ble/exceptions.py +++ /dev/null @@ -1,26 +0,0 @@ -"""BLE operation exceptions.""" -from homeassistant.exceptions import HomeAssistantError - - -class BLEError(HomeAssistantError): - """Base BLE operation error.""" - - -class BLEConnectionError(BLEError): - """Connection to device failed.""" - - -class BLEProtocolError(BLEError): - """Protocol communication error.""" - - -class BLETimeoutError(BLEError): - """Operation timed out.""" - - -class UnsupportedProtocolError(BLEError): - """Unknown manufacturer ID or unsupported firmware protocol.""" - - -class ConfigValidationError(BLEError): - """TLV config parsing or validation error.""" diff --git a/custom_components/opendisplay/ble/image_processing.py b/custom_components/opendisplay/ble/image_processing.py deleted file mode 100644 index a9d6b40..0000000 --- a/custom_components/opendisplay/ble/image_processing.py +++ /dev/null @@ -1,276 +0,0 @@ -import numpy as np -from PIL import Image - -from .color_scheme import ColorScheme - -QUANTIZE_CHUNK_PIXELS = 262_144 - - -def perceptual_color_distance(c1_rgb: tuple[int, int, int], c2_rgb: tuple[int, int, int]) -> float: - """ - Calculate weighted perceptual RGB distance with grayscale protection. - - Uses the formula from makeimage.cpp: 3×Δr² + 5.47×Δg² + 1.53×Δb² - This weights green heavily (human eyes are most sensitive to green). - - Grayscale protection prevents gray pixels from matching to colors, - which would cause unwanted color tinting in neutral areas. - - Args: - c1_rgb: Source pixel RGB tuple - c2_rgb: Palette color RGB tuple - - Returns: - Perceptual distance, or infinity if grayscale protection triggers - """ - - r1, g1, b1 = int(c1_rgb[0]), int(c1_rgb[1]), int(c1_rgb[2]) - r2, g2, b2 = int(c2_rgb[0]), int(c2_rgb[1]), int(c2_rgb[2]) - - # Grayscale protection: reject color matches for grayscale source pixels - # A pixel is considered grayscale if R, G, B are all within 20 of each other - is_source_gray = abs(r1 - g1) < 20 and abs(b1 - g1) < 20 - # A palette color is considered chromatic if any channel differs by >20 - is_target_color = abs(r2 - g2) > 20 or abs(b2 - g2) > 20 - - if is_source_gray and is_target_color: - return float('inf') - - # Perceptual weighting from makeimage.cpp - return 3.0 * (r1 - r2) ** 2 + 5.47 * (g1 - g2) ** 2 + 1.53 * (b1 - b2) ** 2 - - -def find_closest_color(pixel_rgb: tuple[int, int, int], palette: list[tuple[int, int, int]]) -> tuple[tuple[int, int, int], int]: - """ - Find the closest palette color using perceptual distance. - - Args: - pixel_rgb: Source pixel RGB tuple - palette: List of palette RGB tuples - - Returns: - Tuple of (closest_color_rgb, palette_index) - """ - - min_dist = float('inf') - closest = palette[0] - closest_idx = 0 - - for idx, color in enumerate(palette): - dist = perceptual_color_distance(pixel_rgb, color) - if dist < min_dist: - min_dist = dist - closest = color - closest_idx = idx - - return closest, closest_idx - - -def _palette_array(color_scheme: ColorScheme) -> np.ndarray: - """Return palette RGB values in display encoding order.""" - return np.array(list(color_scheme.palette.colors.values()), dtype=np.uint8) - - -def _has_only_palette_colors(image: Image.Image, color_scheme: ColorScheme) -> bool: - """Return true when all image pixels are exact colors from the display palette.""" - rgb_image = image if image.mode == 'RGB' else image.convert('RGB') - allowed = set(color_scheme.palette.colors.values()) - colors = rgb_image.getcolors(maxcolors=len(allowed)) - return colors is not None and all(rgb in allowed for _, rgb in colors) - - -def _quantize_pixels_to_palette( - pixels: np.ndarray, - palette: np.ndarray, - *, - chunk_pixels: int = QUANTIZE_CHUNK_PIXELS, -) -> np.ndarray: - """Map RGB pixels to their closest display palette color in bounded chunks.""" - flat = pixels.reshape(-1, 3).astype(np.int16, copy=False) - palette_i16 = palette.astype(np.int16) - target_is_color = ( - (np.abs(palette_i16[:, 0] - palette_i16[:, 1]) > 20) - | (np.abs(palette_i16[:, 2] - palette_i16[:, 1]) > 20) - ) - result = np.empty((flat.shape[0], 3), dtype=np.uint8) - - for start in range(0, flat.shape[0], chunk_pixels): - end = min(start + chunk_pixels, flat.shape[0]) - chunk = flat[start:end] - diff = chunk[:, None, :] - palette_i16[None, :, :] - dist = ( - 3.0 * (diff[:, :, 0].astype(np.float32) ** 2) - + 5.47 * (diff[:, :, 1].astype(np.float32) ** 2) - + 1.53 * (diff[:, :, 2].astype(np.float32) ** 2) - ) - source_is_gray = ( - (np.abs(chunk[:, 0] - chunk[:, 1]) < 20) - & (np.abs(chunk[:, 2] - chunk[:, 1]) < 20) - ) - if np.any(source_is_gray) and np.any(target_is_color): - dist[np.ix_(source_is_gray, target_is_color)] = np.inf - - result[start:end] = palette[np.argmin(dist, axis=1)] - - return result.reshape(pixels.shape) - - -def apply_direct_mapping(image: Image.Image, color_scheme: ColorScheme) -> Image.Image: - """ - Apply direct color mapping without dithering. - - Each pixel is mapped to its perceptually closest palette color. - Fast but can produce harsh banding on gradients. - - Args: - image: PIL Image in RGB mode - color_scheme: ColorScheme enum for palette - - Returns: - Quantized PIL Image - """ - if image.mode != 'RGB': - image = image.convert('RGB') - - if _has_only_palette_colors(image, color_scheme): - return image - - pixels = np.asarray(image) - result = _quantize_pixels_to_palette(pixels, _palette_array(color_scheme)) - return Image.fromarray(result, 'RGB') - -def apply_burkes_dithering(image: Image.Image, color_scheme: ColorScheme) -> Image.Image: - """ - Apply Burkes error diffusion dithering. - - Burkes dithering distributes quantization error to neighboring pixels, - creating smooth gradients. Best for photographs and images with gradients. - - Error diffusion pattern (Burkes): - X 8/32 4/32 - 2/32 4/32 8/32 4/32 2/32 - - Args: - image: PIL Image in RGB mode - color_scheme: ColorScheme enum for palette - - Returns: - Dithered PIL Image quantized to palette colors - """ - - # Convert to RGB if needed - if image.mode != 'RGB': - image = image.convert('RGB') - - # Get palette as list of RGB tuples - palette = list(color_scheme.palette.colors.values()) - - # Convert to float array for error accumulation - pixels = np.array(image, dtype=np.float32) - height, width = pixels.shape[:2] - - # Process each pixel - for y in range(height): - for x in range(width): - old_pixel = tuple(int(c) for c in np.clip(pixels[y, x], 0, 255)) - new_pixel, _ = find_closest_color(old_pixel, palette) - - # Calculate quantization error - error = np.array(old_pixel, dtype=np.float32) - np.array(new_pixel, dtype=np.float32) - - # Set the quantized pixel - pixels[y, x] = new_pixel - - # Distribute error using Burkes pattern - if x + 1 < width: - pixels[y, x + 1] += error * (8 / 32) - if x + 2 < width: - pixels[y, x + 2] += error * (4 / 32) - - if y + 1 < height: - if x - 2 >= 0: - pixels[y + 1, x - 2] += error * (2 / 32) - if x - 1 >= 0: - pixels[y + 1, x - 1] += error * (4 / 32) - pixels[y + 1, x] += error * (8 / 32) - if x + 1 < width: - pixels[y + 1, x + 1] += error * (4 / 32) - if x + 2 < width: - pixels[y + 1, x + 2] += error * (2 / 32) - - # Convert back to uint8 image - result = np.clip(pixels, 0, 255).astype(np.uint8) - return Image.fromarray(result, 'RGB') - - -def apply_ordered_dithering(image: Image.Image, color_scheme: ColorScheme) -> Image.Image: - """ - Apply ordered (Bayer) dithering with adaptive thresholds. - - Ordered dithering uses a fixed threshold pattern, creating regular - halftone-like patterns. Best for text, icons, and sharp edges. - - Uses a 4x4 Bayer matrix for threshold generation. - - Args: - image: PIL Image in RGB mode - color_scheme: ColorScheme enum for palette - - Returns: - Dithered PIL Image quantized to palette colors - """ - # Convert to RGB if needed - if image.mode != 'RGB': - image = image.convert('RGB') - - # 4x4 Bayer matrix (normalized to 0-1 range) - bayer_4x4 = np.array([ - [0, 8, 2, 10], - [12, 4, 14, 6], - [3, 11, 1, 9], - [15, 7, 13, 5] - ], dtype=np.float32) / 16.0 - - pixels = np.array(image, dtype=np.float32) - height, width = pixels.shape[:2] - - # Tile the Bayer matrix across the image - bayer_tiled = np.tile(bayer_4x4, (height // 4 + 1, width // 4 + 1))[:height, :width] - - # Apply threshold adjustment per channel - # Scale factor determines dithering intensity (32 is moderate) - scale = 32.0 - for c in range(3): - pixels[:, :, c] += (bayer_tiled - 0.5) * scale - - pixels = np.clip(pixels, 0, 255).astype(np.int16) - result = _quantize_pixels_to_palette(pixels, _palette_array(color_scheme)) - return Image.fromarray(result, 'RGB') - - -def process_image_for_device(image, color_scheme: int, dither: int = 2) -> Image.Image: - """ - Process image for BLE device display. - - Main entry point for image processing. Applies dithering and color - quantization based on device color scheme and dither mode. - - Args: - image: PIL Image to process - color_scheme: Color scheme int (0-5) matching ColorScheme enum values - dither: Dithering mode: - 0 = None (direct mapping) - 1 = Burkes error diffusion (best for photos) - 2 = Ordered/Bayer (best for text/icons, default) - - Returns: - Processed PIL Image with pixels quantized to palette colors - """ - scheme = ColorScheme.from_int(color_scheme) - - if dither == 1: - return apply_burkes_dithering(image, scheme) - elif dither == 2: - return apply_ordered_dithering(image, scheme) - else: - return apply_direct_mapping(image, scheme) diff --git a/custom_components/opendisplay/ble/image_upload.py b/custom_components/opendisplay/ble/image_upload.py deleted file mode 100644 index b239ae4..0000000 --- a/custom_components/opendisplay/ble/image_upload.py +++ /dev/null @@ -1,952 +0,0 @@ -"""Shared BLE image upload protocol (compatible with both ATC and OpenDisplay firmware).""" -import asyncio -import struct -import zlib -import logging -from enum import Enum -from time import perf_counter - -import numpy as np -from PIL import Image - -from .exceptions import BLEError -from .image_processing import process_image_for_device -from .metadata import BLEDeviceMetadata - -_LOGGER = logging.getLogger(__name__) - - -# BLE Protocol Sizes -BLE_BLOCK_SIZE = 4096 -BLE_MAX_PACKET_DATA_SIZE = 230 -DIRECT_WRITE_COMPRESSED_BUFFER_LIMIT = 50 * 1024 -DIRECT_WRITE_COMPRESSION_CHUNK_BYTES = 64 * 1024 - - -class BLEResponse(Enum): - """BLE upload response codes.""" - - BLOCK_REQUEST = "00C6" - BLOCK_PART_ACK = "00C4" - BLOCK_PART_CONTINUE = "00C5" - UPLOAD_COMPLETE = "00C7" - IMAGE_ALREADY_DISPLAYED = "00C8" - # Direct write responses - DIRECT_WRITE_START_ACK = "0070" - DIRECT_WRITE_START_ACK_ALT = "7000" # Alternative format - DIRECT_WRITE_DATA_ACK = "0071" - DIRECT_WRITE_DATA_ACK_ALT = "7100" # Alternative format - DIRECT_WRITE_END_ACK = "0072" - DIRECT_WRITE_END_ACK_ALT = "7200" # Alternative format - - -class BLECommand(Enum): - """BLE upload command codes.""" - - DATA_INFO = "0064" - BLOCK_PART = "0065" - # Direct write commands - DIRECT_WRITE_START = "0070" - DIRECT_WRITE_DATA = "0071" - DIRECT_WRITE_END = "0072" - - -class BLEDataType(Enum): - """BLE image data types.""" - - RAW_BW = 0x20 # Uncompressed monochrome - RAW_COLOR = 0x21 # Uncompressed color (BWR/BWY) - COMPRESSED = 0x30 # Compressed image - - -class RefreshMode(Enum): - """Epaper display refresh modes.""" - FULL = 0 - FAST = 1 - PARTIAL = 2 - PARTIAL2 = 3 - - -def _create_data_info( - checksum: int, - data_ver: int, - data_size: int, - data_type: int, - data_type_argument: int, - next_check_in: int, -) -> bytes: - """Create data info packet for image upload. - - Args: - checksum: Data checksum (usually 255 placeholder) - data_ver: CRC32 of image data - data_size: Image data size in bytes - data_type: Data type enum value (0x20, 0x21, 0x30) - data_type_argument: Additional argument (usually 0) - next_check_in: Next check-in time (usually 0) - - Returns: - bytes: Packed data info structure - """ - return struct.pack( - " bytearray: - """Create a block part packet for image upload. - - Args: - block_id: Block identifier - part_id: Part identifier within block - data: Packet data (max 230 bytes) - - Returns: - bytearray: Block part packet with checksum - - Raises: - ValueError: If data exceeds maximum size - """ - max_data_size = 230 - data_length = len(data) - if data_length > max_data_size: - raise ValueError("Data length exceeds maximum allowed size for a packet.") - - buffer = bytearray(3 + max_data_size) - buffer[1] = block_id & 0xFF - buffer[2] = part_id & 0xFF - buffer[3 : 3 + data_length] = data - buffer[0] = sum(buffer[1 : 3 + data_length]) & 0xFF - return buffer - - -def _convert_image_to_bytes( - image: Image.Image, - color_scheme: int = 0, - compressed: bool = False -) -> tuple[int, bytes]: - """ - Convert a PIL Image to device format. - - Expects image to be pre-quantized to exact palette colors (via dithering). - Uses exact color matching instead of luminance-based detection. - - Supports: - - Monochrome (1-bit) - - Color dual-plane (BWR/BWY/BWRY) - - Optional zlib compression - - Args: - image: PIL Image to convert (should be pre-quantized) - color_scheme: Color scheme int (0=mono, 1=BWR, 2=BWY, 3=BWRY) - compressed: Whether to compress the data - - Returns: - tuple: (data_type, pixel_array) - """ - pixel_array = np.array(image.convert("RGB")) - height, width, _ = pixel_array.shape - - # Get RGB channels - r = pixel_array[:, :, 0] - g = pixel_array[:, :, 1] - b = pixel_array[:, :, 2] - - # Exact color matching (image already quantized by dithering) - black_pixels = (r == 0) & (g == 0) & (b == 0) - # white_pixels = (r == 255) & (g == 255) & (b == 255) - red_pixels = (r == 255) & (g == 0) & (b == 0) - yellow_pixels = (r == 255) & (g == 255) & (b == 0) - - # Determine if multi-color mode - multi_color = color_scheme in (1, 2, 3) # BWR, BWY, or BWRY - - # Dual-plane encoding: - # Plane 1 (BW): 1 = black or yellow, 0 = white or red - # Plane 2 (color): 1 = red or yellow, 0 = black or white - bw_channel_bits = black_pixels | yellow_pixels - - byte_data = np.packbits(bw_channel_bits).tobytes() - bpp_array = bytearray(byte_data) - - if multi_color: - color_pixels = red_pixels | yellow_pixels - byte_data_color = np.packbits(color_pixels).tobytes() - bpp_array += byte_data_color - - if compressed: - buffer = bytearray(6) - buffer[0] = 6 - buffer[1] = width & 0xFF - buffer[2] = (width >> 8) & 0xFF - buffer[3] = height & 0xFF - buffer[4] = (height >> 8) & 0xFF - buffer[5] = 0x02 if multi_color else 0x01 - buffer += bpp_array - the_compressor = zlib.compressobj(wbits=12) - compressed_data = the_compressor.compress(buffer) - compressed_data += the_compressor.flush() - return ( - BLEDataType.COMPRESSED.value, - struct.pack(" str: - """Detect color from RGB values based on color scheme. - - Args: - r: Red component (0-255) - g: Green component (0-255) - b: Blue component (0-255) - color_scheme: Color scheme identifier - - Returns: - Color name: 'black', 'white', 'red', 'yellow', 'green', 'blue' - """ - if r < 128 and g < 128 and b < 128: - return 'black' - if r > 200 and g > 200 and b > 200: - return 'white' - - if color_scheme == 0: - return 'white' if (r + g + b) / 3 > 128 else 'black' - - if color_scheme in (1, 3, 4): - if r > 200 and g < 100 and b < 100: - return 'red' - - if color_scheme in (2, 3, 4): - if r > 200 and g > 200 and b < 100: - return 'yellow' - - if color_scheme == 4: - if r < 100 and g > 200 and b < 100: - return 'green' - if r < 100 and g < 100 and b > 200: - return 'blue' - - return 'white' if (r + g + b) / 3 > 128 else 'black' - - -def _direct_write_color_values(pixel_array: np.ndarray, color_scheme: int) -> np.ndarray: - """Return direct-write firmware color values using the same thresholds as _detect_color.""" - flat = pixel_array.reshape(-1, 3) - r = flat[:, 0] - g = flat[:, 1] - b = flat[:, 2] - average = (r.astype(np.uint16) + g.astype(np.uint16) + b.astype(np.uint16)) / 3.0 - - values = np.where(average > 128, 1, 0).astype(np.uint8) - values[(r < 128) & (g < 128) & (b < 128)] = 0 - values[(r > 200) & (g > 200) & (b > 200)] = 1 - - if color_scheme in (1, 3, 4): - values[(r > 200) & (g < 100) & (b < 100)] = 3 - - if color_scheme in (2, 3, 4): - values[(r > 200) & (g > 200) & (b < 100)] = 2 - - if color_scheme == 4: - values[(r < 100) & (g > 200) & (b < 100)] = 6 - values[(r < 100) & (g < 100) & (b > 200)] = 5 - - return values - - -def _encode_direct_write_1bpp(image: Image.Image) -> bytes: - """Encode image as 1BPP for direct write (monochrome). - - Args: - image: PIL Image to encode - - Returns: - bytes: 1BPP encoded data (white=1, black=0, NOT inverted) - """ - pixel_array = np.asarray(image.convert("RGB"), dtype=np.uint8).reshape(-1, 3) - gray = ( - pixel_array[:, 0].astype(np.uint16) - + pixel_array[:, 1].astype(np.uint16) - + pixel_array[:, 2].astype(np.uint16) - ) / 3.0 - return np.packbits(gray > 128).tobytes() - - -def _encode_direct_write_bitplanes(image: Image.Image, color_scheme: int) -> bytes: - """Encode image as bitplanes for direct write (BWR/BWY). - - Args: - image: PIL Image to encode - color_scheme: Color scheme (1=BWR, 2=BWY) - - Returns: - bytes: Plane 1 (B/W, NOT inverted) + Plane 2 (R/Y) - """ - pixel_array = np.asarray(image.convert("RGB"), dtype=np.uint8) - colors = _direct_write_color_values(pixel_array, color_scheme) - # Plane 1 is B/W: 1=white/red, 0=black/yellow. Plane 2 is color: 1=red/yellow. - plane1 = (colors == 1) | (colors == 3) - plane2 = (colors == 2) | (colors == 3) - return np.packbits(plane1).tobytes() + np.packbits(plane2).tobytes() - - -def _encode_direct_write_2bpp(image: Image.Image, color_scheme: int) -> bytes: - """Encode image as 2BPP for direct write (BWRY or 4 grayscale). - - Args: - image: PIL Image to encode - color_scheme: Color scheme (3=BWRY, 5=4 grayscale) - - Returns: - bytes: 2BPP encoded data (4 pixels per byte) - """ - pixel_array = np.asarray(image.convert("RGB"), dtype=np.uint8) - - if color_scheme == 5: - flat = pixel_array.reshape(-1, 3) - gray = ( - flat[:, 0].astype(np.uint16) - + flat[:, 1].astype(np.uint16) - + flat[:, 2].astype(np.uint16) - ) / 3.0 - # 4 grayscale: 00=black, 01=dark gray, 10=light gray, 11=white. - values = np.where(gray < 64, 0, np.where(gray < 128, 1, np.where(gray < 192, 2, 3))).astype(np.uint8) - else: - # BWRY: 00=black, 01=white, 10=yellow, 11=red. - colors = _direct_write_color_values(pixel_array, color_scheme) - values = np.zeros_like(colors) - values[colors == 1] = 1 - values[colors == 2] = 2 - values[colors == 3] = 3 - - pad = (-len(values)) % 4 - if pad: - values = np.pad(values, (0, pad)) - groups = values.reshape(-1, 4) - # Pack from MSB: pixel0 at bits 7-6, pixel1 at 5-4, pixel2 at 3-2, pixel3 at 1-0. - return ( - (groups[:, 0] << 6) - | (groups[:, 1] << 4) - | (groups[:, 2] << 2) - | groups[:, 3] - ).astype(np.uint8).tobytes() - - -def _encode_direct_write_4bpp(image: Image.Image) -> bytes: - """Encode image as 4BPP for direct write (6-color). - - Args: - image: PIL Image to encode - - Returns: - bytes: 4BPP encoded data (2 pixels per byte) - """ - pixel_array = np.asarray(image.convert("RGB"), dtype=np.uint8) - # Firmware expects: black=0, white=1, yellow=2, red=3, blue=5, green=6. - values = _direct_write_color_values(pixel_array, 4) - pad = (-len(values)) % 2 - if pad: - values = np.pad(values, (0, pad)) - pairs = values.reshape(-1, 2) - # Pack two pixels per byte: first pixel in the high nibble, second in the low nibble. - return ((pairs[:, 0] << 4) | pairs[:, 1]).astype(np.uint8).tobytes() - - -def _encode_direct_write(image: Image.Image, color_scheme: int) -> bytes: - """Encode image for direct write based on color scheme. - - Args: - image: PIL Image to encode - color_scheme: Color scheme (0=b/w, 1=bwr, 2=bwy, 3=bwry, 4=bwgbry, 5=bw4) - - Returns: - bytes: Encoded image data - """ - if color_scheme == 0: - return _encode_direct_write_1bpp(image) - elif color_scheme in (1, 2): - return _encode_direct_write_bitplanes(image, color_scheme) - elif color_scheme == 3: - return _encode_direct_write_2bpp(image, color_scheme) - elif color_scheme == 4: - return _encode_direct_write_4bpp(image) - elif color_scheme == 5: - return _encode_direct_write_2bpp(image, color_scheme) - else: - # Fallback to 1BPP - return _encode_direct_write_1bpp(image) - - -def _prepare_block_upload( - image: Image.Image, - metadata: BLEDeviceMetadata, - protocol_type: str, - dither: int, -) -> tuple[Image.Image, int, bytes, float]: - """Prepare block-based BLE upload bytes off the event loop.""" - # ATC stores rotated image memory client-side; OpenDisplay handles rotation firmware-side. - if protocol_type == "atc" and metadata.rotatebuffer == 1: - image = image.transpose(Image.Transpose.ROTATE_90) - _LOGGER.debug("Applied 90° ATC memory rotation: %dx%d", image.width, image.height) - - quantize_start = perf_counter() - processed_image = process_image_for_device( - image, - metadata.color_scheme.value, - dither, - ) - quantize_duration = perf_counter() - quantize_start - data_type, pixel_array = _convert_image_to_bytes( - processed_image, - metadata.color_scheme.value, - compressed=True, - ) - return processed_image, data_type, pixel_array, quantize_duration - - -def _prepare_direct_write_upload( - image: Image.Image, - metadata: BLEDeviceMetadata, - allow_compression: bool, - dither: int, -) -> tuple[Image.Image, bytes, list[bytes], int, int, bool, float]: - """Prepare direct-write BLE upload bytes off the event loop.""" - quantize_start = perf_counter() - processed_image = process_image_for_device( - image, - metadata.color_scheme.value, - dither, - ) - quantize_duration = perf_counter() - quantize_start - encoded_data = _encode_direct_write(processed_image, metadata.color_scheme.value) - compressed_data = ( - _compress_direct_write_if_fits(encoded_data, DIRECT_WRITE_COMPRESSED_BUFFER_LIMIT) - if allow_compression - else None - ) - - if compressed_data is not None: - data_to_send = compressed_data - uncompressed_size = len(encoded_data) - compressed = True - else: - data_to_send = encoded_data - uncompressed_size = 0 - compressed = False - - chunks = [ - data_to_send[i:i + BLE_MAX_PACKET_DATA_SIZE] - for i in range(0, len(data_to_send), BLE_MAX_PACKET_DATA_SIZE) - ] - return processed_image, data_to_send, chunks, uncompressed_size, len(encoded_data), compressed, quantize_duration - - -def _compress_direct_write_if_fits(data: bytes, max_size: int) -> bytes | None: - """Compress direct-write data, returning None once the compressed payload is too large.""" - compressor = zlib.compressobj(level=9) - data_view = memoryview(data) - compressed_parts = [] - compressed_size = 0 - - for start in range(0, len(data_view), DIRECT_WRITE_COMPRESSION_CHUNK_BYTES): - part = compressor.compress( - data_view[start:start + DIRECT_WRITE_COMPRESSION_CHUNK_BYTES] - ) - if part: - compressed_parts.append(part) - compressed_size += len(part) - if compressed_size >= max_size: - return None - - part = compressor.flush() - if part: - compressed_parts.append(part) - compressed_size += len(part) - if compressed_size >= max_size: - return None - - return b"".join(compressed_parts) - - -class BLEImageUploader: - """Handles BLE image upload with block-based protocol. - - This class is protocol-agnostic and works with both ATC and OpenDisplay firmware. - """ - - def __init__(self, connection, mac_address: str): - """Initialize image uploader. - - Args: - connection: Active BLEConnection instance - mac_address: Device MAC address - """ - self.connection = connection - self.mac_address = mac_address - self._img_array = b"" - self._img_array_len = 0 - self._packets = [] - self._packet_index = 0 - self._upload_complete = asyncio.Event() - self._upload_error = None - self._upload_task = None - # Direct write state - self._direct_write_chunks = [] - self._direct_write_chunk_index = 0 - self._direct_write_pending_acks = 0 - self._direct_write_compressed = False - self._direct_write_uncompressed_size = 0 - self.refresh_type: int = 0 - - async def _handle_response(self, data: bytes) -> bool: - """Handle upload responses from notification queue. - - Args: - data: Response data from device - - Returns: - bool: True if response was handled successfully - """ - if len(data) < 2: - return False - - response_code = data[:2].hex().upper() - _LOGGER.debug("Upload response for %s: %s", self.mac_address, response_code) - - try: - response_enum = BLEResponse(response_code) - match response_enum: - case BLEResponse.BLOCK_REQUEST: - _LOGGER.debug("Received block request") - block_id = data[11] - if len(data) >= 18: - requested_parts_hex = data[12:18].hex().upper() - _LOGGER.debug( - "Device requested block %d, parts bitmask: %s", - block_id, - requested_parts_hex, - ) - else: - _LOGGER.debug( - "Device requested block %d (partial block request data)", block_id - ) - await self._send_block_data(block_id) - return True - - case BLEResponse.BLOCK_PART_ACK: - _LOGGER.debug("Block part acknowledged") - await self._send_next_block_part() - return True - - case BLEResponse.BLOCK_PART_CONTINUE: - _LOGGER.debug("Block part acknowledged, continuing") - if self._packet_index >= len(self._packets): - _LOGGER.error("Packet index out of range") - return True - self._packet_index += 1 - await self._send_next_block_part() - return True - - case BLEResponse.UPLOAD_COMPLETE: - _LOGGER.debug("Image upload completed successfully") - self._upload_complete.set() - return True - - case BLEResponse.IMAGE_ALREADY_DISPLAYED: - _LOGGER.debug("Image already displayed") - self._upload_complete.set() - return True - - except ValueError: - return False # Unknown response code - - async def upload_image_block_based( - self, - image: Image.Image, - metadata: BLEDeviceMetadata, - protocol_type: str = "atc", - dither: int = 2, - render_duration: float | None = None, - ) -> tuple[bool, Image.Image | None]: - """Upload image using block-based protocol. - - Args: - image: Rendered image - metadata: Device metadata with dimensions and color support - protocol_type: Protocol type ("atc" or "open_display") - dither: 0=none, 1=ordered, 2=floyd-steinberg - render_duration: Time spent rendering the image before upload, in seconds - - Returns: - tuple: (success, processed_image) - processed_image is the dithered PIL Image - """ - try: - _LOGGER.debug( - "Block upload input for %s: %dx%d (protocol=%s, rotatebuffer=%d)", - self.mac_address, - image.width, - image.height, - protocol_type, - metadata.rotatebuffer, - ) - - processed_image, data_type, pixel_array, quantize_duration = await self.connection.hass.async_add_executor_job( - _prepare_block_upload, - image, - metadata, - protocol_type, - dither, - ) - - _LOGGER.debug( - "Upload for %s: DataType=0x%02x, DataLen=%d", - self.mac_address, - data_type, - len(pixel_array), - ) - _LOGGER.info( - "Starting BLE image upload to %s (%d bytes)", self.mac_address, len(pixel_array) - ) - - self._img_array = pixel_array - self._img_array_len = len(self._img_array) - - # Send data info to initiate upload - data_info = _create_data_info( - 255, zlib.crc32(self._img_array) & 0xFFFFFFF, self._img_array_len, data_type, 0, 0 - ) - send_refresh_start = perf_counter() - await self.connection._write_raw(bytes.fromhex(BLECommand.DATA_INFO.value) + data_info) - - # Wait for responses using request-response pattern - while not self._upload_complete.is_set(): - response = await self._wait_for_response() - if response and await self._handle_response(response): - continue - elif response is None: - # Timeout - this is a failure - _LOGGER.error("Upload failed for %s: timeout waiting for response", self.mac_address) - return False, None - - if self._upload_error: - raise BLEError(f"Upload failed: {self._upload_error}") - - # Only reach here if upload_complete was set by a success response - send_refresh_duration = perf_counter() - send_refresh_start - _LOGGER.info( - "BLE block upload completed for %s: render=%.3fs dither_quantize=%.3fs send_refresh=%.3fs bytes=%d data_type=0x%02x", - self.mac_address, - render_duration or 0.0, - quantize_duration, - send_refresh_duration, - len(pixel_array), - data_type, - ) - return True, processed_image - - except Exception as e: - _LOGGER.error("Image upload failed for %s: %s", self.mac_address, e) - return False, None - - async def _wait_for_response(self, timeout: float = 10.0) -> bytes | None: - """Wait for next upload response with timeout. - - Args: - timeout: Timeout in seconds - - Returns: - bytes: Response data or None if timeout - """ - try: - response = await asyncio.wait_for( - self.connection._response_queue.get(), timeout=timeout - ) - - # Basic validation only - if not response or len(response) < 2: - return None - - return response - - except asyncio.TimeoutError: - return None - - async def _send_block_data(self, block_id: int): - """Send block data for specified block ID. - - Args: - block_id: Block identifier to send - """ - _LOGGER.debug("Building block %d for %s", block_id, self.mac_address) - block_start = block_id * BLE_BLOCK_SIZE - block_end = block_start + BLE_BLOCK_SIZE - block_data = self._img_array[block_start:block_end] - - _LOGGER.debug( - "Sending block %d: %d bytes (offset %d-%d)", - block_id, - len(block_data), - block_start, - min(block_end, len(self._img_array)), - ) - - crc_block = sum(block_data) & 0xFFFF - buffer = bytearray(4) - buffer[0] = len(block_data) & 0xFF - buffer[1] = (len(block_data) >> 8) & 0xFF - buffer[2] = crc_block & 0xFF - buffer[3] = (crc_block >> 8) & 0xFF - block_data = buffer + block_data - - # Create packets - packet_count = (len(block_data) + BLE_MAX_PACKET_DATA_SIZE - 1) // BLE_MAX_PACKET_DATA_SIZE - self._packets = [] - for i in range(packet_count): - start = i * BLE_MAX_PACKET_DATA_SIZE - end = start + BLE_MAX_PACKET_DATA_SIZE - slice_data = block_data[start:end] - packet = _create_block_part(block_id, i, slice_data) - self._packets.append(packet) - - _LOGGER.debug("Created %d packets for block %d", len(self._packets), block_id) - self._packet_index = 0 - if self._packets: - await self._send_next_block_part() - - async def _send_next_block_part(self): - """Send next block part packet.""" - if not self._packets or self._packet_index >= len(self._packets): - _LOGGER.debug("No more packets to send") - return - - _LOGGER.debug("Sending packet %d/%d", self._packet_index + 1, len(self._packets)) - await self.connection._write_raw( - bytes.fromhex(BLECommand.BLOCK_PART.value) + self._packets[self._packet_index] - ) - - async def upload_direct_write( - self, - image: Image.Image, - metadata: BLEDeviceMetadata, - allow_compression: bool = False, - dither: int = 2, - refresh_type: int = 0, - render_duration: float | None = None, - ) -> tuple[bool, Image.Image | None]: - """Upload image using direct write protocol (OpenDisplay only). - - Args: - image: Rendered image - metadata: Device metadata with dimensions and color scheme - allow_compression: Whether zip compression may be used if the result fits - dither: 0=none, 1=ordered, 2=floyd-steinberg - refresh_type: Display refresh mode (0=full, 1=fast, 2=partial, 3=partial2) - render_duration: Time spent rendering the image before upload, in seconds - - Returns: - bool: True if upload succeeded, False otherwise - """ - # Reset upload state - self._upload_complete.clear() - self._upload_error = None - - self.refresh_type = refresh_type - - try: - _LOGGER.debug("Direct write: image size %dx%d", image.width, image.height) - - ( - processed_image, - data_to_send, - chunks, - uncompressed_size, - encoded_size, - compressed, - quantize_duration, - ) = await self.connection.hass.async_add_executor_job( - _prepare_direct_write_upload, - image, - metadata, - allow_compression, - dither, - ) - - if compressed: - _LOGGER.debug( - "Direct write compressed: %d bytes -> %d bytes", - encoded_size, - len(data_to_send) - ) - elif allow_compression: - _LOGGER.debug( - "Direct write compression skipped: compressed payload exceeded %d bytes", - DIRECT_WRITE_COMPRESSED_BUFFER_LIMIT, - ) - - _LOGGER.info( - "Starting direct write upload to %s (%d bytes%s, refresh type %d)", - self.mac_address, - len(data_to_send), - " compressed" if compressed else "", - refresh_type - ) - - # Initialize direct write state - self._direct_write_chunks = [] - self._direct_write_chunk_index = 0 - self._direct_write_pending_acks = 0 - self._direct_write_compressed = compressed - self._direct_write_uncompressed_size = uncompressed_size - self._direct_write_chunks = chunks - - _LOGGER.debug("Split into %d chunks", len(self._direct_write_chunks)) - - # Send start command - send_refresh_start = perf_counter() - if compressed: - # Compressed: send 4-byte header + initial data if it fits - header = struct.pack(" bool: - """Handle direct write responses. - - Args: - data: Response data from device - - Returns: - bool: True if response was handled successfully - """ - if len(data) < 2: - return False - - response_code = data[:2].hex().upper() - _LOGGER.debug("Direct write response for %s: %s", self.mac_address, response_code) - - try: - # Handle both formats: "0070" and "7000" - if response_code in ("0070", "7000"): - # Start ACK - _LOGGER.debug("Direct write start acknowledged") - self._direct_write_pending_acks = 0 - await self._send_next_direct_write_chunks() - return True - elif response_code in ("0071", "7100"): - # Data ACK - self._direct_write_pending_acks = max(0, self._direct_write_pending_acks - 1) - await self._send_next_direct_write_chunks() - return True - elif response_code in ("0072", "7200"): - # End ACK - _LOGGER.debug("Direct write end acknowledged") - self._upload_complete.set() - return True - elif response_code == "FFFF": - # Error - _LOGGER.error("Direct write error response (FFFF)") - self._upload_error = "Device returned error (FFFF)" - self._upload_complete.set() - return True - except Exception as e: - _LOGGER.error("Error handling direct write response: %s", e) - return False - - return False # Unknown response code - - async def _send_next_direct_write_chunks(self): - """Send next direct write data chunks with pipelining.""" - DIRECT_WRITE_PIPELINE_SIZE = 1 # Send up to 1 chunk without waiting for ACK - - while (self._direct_write_chunk_index < len(self._direct_write_chunks) and - self._direct_write_pending_acks < DIRECT_WRITE_PIPELINE_SIZE): - - chunk = self._direct_write_chunks[self._direct_write_chunk_index] - _LOGGER.debug( - "Sending direct write chunk %d/%d (%d bytes)", - self._direct_write_chunk_index + 1, - len(self._direct_write_chunks), - len(chunk) - ) - - await self.connection._write_raw( - bytes.fromhex(BLECommand.DIRECT_WRITE_DATA.value) + chunk - ) - - self._direct_write_chunk_index += 1 - self._direct_write_pending_acks += 1 - - # If all chunks sent and no pending ACKs, send end command - if (self._direct_write_chunk_index >= len(self._direct_write_chunks) and - self._direct_write_pending_acks == 0): - _LOGGER.debug("All chunks sent, ending direct write") - await self.connection._write_raw( - bytes.fromhex(BLECommand.DIRECT_WRITE_END.value) + bytes([self.refresh_type]) - ) diff --git a/custom_components/opendisplay/ble/metadata.py b/custom_components/opendisplay/ble/metadata.py deleted file mode 100644 index 1e3a3af..0000000 --- a/custom_components/opendisplay/ble/metadata.py +++ /dev/null @@ -1,217 +0,0 @@ -"""BLE Device Metadata Abstraction. - -Provides a clean interface for accessing device metadata that transparently -handles differences between ATC (flat structure) and OpenDisplay (nested config) formats. -""" -from __future__ import annotations - -from typing import Any - -from .color_scheme import ColorScheme - -class BLEDeviceMetadata: - """Abstraction for BLE device metadata. - - Wraps raw metadata dictionary and provides clean property-based access - to device capabilities, handling both ATC and OpenDisplay metadata formats. - - Args: - raw_metadata: Dictionary containing device metadata - """ - - def __init__(self, raw_metadata: dict[str, Any]) -> None: - """Initialize BLE device metadata wrapper. - - Args: - raw_metadata: Device metadata dictionary from config entry - """ - if "open_display_config" not in raw_metadata and "oepl_config" in raw_metadata: - self._metadata = {**raw_metadata, "open_display_config": raw_metadata["oepl_config"]} - else: - self._metadata = raw_metadata - self._is_open_display = "open_display_config" in self._metadata - - @property - def width(self) -> int: - """Get display width in pixels. - - Returns: - Display width, or 0 if not available - """ - if self._is_open_display: - displays = self._metadata["open_display_config"].get("displays", []) - return displays[0]["pixel_width"] if displays else 0 - return self._metadata.get("width", 0) - - @property - def height(self) -> int: - """Get display height in pixels. - - Returns: - Display height, or 0 if not available - """ - if self._is_open_display: - displays = self._metadata["open_display_config"].get("displays", []) - return displays[0]["pixel_height"] if displays else 0 - return self._metadata.get("height", 0) - - @property - def model_name(self) -> str: - """Get device model name. - - Returns: - Model name string, or "Unknown" if not available - """ - return self._metadata.get("model_name", "Unknown") - - @property - def fw_version(self) -> int | str: - """Get firmware version. - - Returns: - Firmware version number or string, or 0/"" if not available - """ - if self._is_open_display: - # Prefer explicit string/parsed version saved from interrogation - if "fw_version" in self._metadata: - return self._metadata.get("fw_version", "") - major = self._metadata.get("fw_version_major") - minor = self._metadata.get("fw_version_minor") - if major is not None and minor is not None: - return f"{major}.{minor}" - return self._metadata.get("fw_version", 0) - - def formatted_fw_version(self) -> str | None: - """Return firmware version formatted for display.""" - fw = self.fw_version - if fw in (None, ""): - return None - if isinstance(fw, int): - return f"0x{fw:04x}" - return str(fw) - - - @property - def rotatebuffer(self) -> int: - """Get rotation setting. - - For OpenDisplay devices, returns the rotation value from display config. - For ATC devices, returns the rotatebuffer flag. - - Returns: - Rotation value (0, 1, 2, or 3) or rotatebuffer flag (0 or 1) - """ - if self._is_open_display: - displays = self._metadata["open_display_config"].get("displays", []) - return displays[0].get("rotation", 0) if displays else 0 - return self._metadata.get("rotatebuffer", 0) - - @property - def hw_type(self) -> int: - """Get hardware type identifier. - - Returns: - Hardware type code, or 0 if not available - """ - if self._is_open_display: - displays = self._metadata["open_display_config"].get("displays", []) - return displays[0].get("open_display_tagtype", 0) if displays else 0 - return self._metadata.get("hw_type", 0) - - @property - def power_mode(self) -> int: - """Get power mode setting. - - Returns: - Power mode: 1=battery, 2=USB, 3=solar - ATC devices always return 1 (battery) - """ - if self._is_open_display: - power = self._metadata["open_display_config"].get("power") - if power: - return power.get("power_mode", 1) - return 1 # ATC devices always have batteries - - @property - def is_open_display(self) -> bool: - """Check if this is an OpenDisplay device. - - Returns: - True if OpenDisplay device, False if ATC device - """ - return self._is_open_display - - @property - def color_scheme(self) -> ColorScheme: - """ - Get ColorScheme enum for this device. - - ATC: Reads from root level device_metadata["color_scheme"] - - OpenDisplay: Reads from display config device_metadata["open_display_config"]["displays"][0]["color_scheme"] - """ - if self._is_open_display: - displays = self._metadata["open_display_config"].get("displays", []) - raw_scheme = displays[0].get("color_scheme", 0) if displays else 0 - else: - raw_scheme = self._metadata.get("color_scheme", 0) - return ColorScheme.from_int(raw_scheme) - - @property - def accent_color(self) -> str: - """Get accent color name. - - Returns: - Accent color name from color scheme palette - """ - return self.color_scheme.accent_color - - @property - def is_multi_color(self) -> bool: - """Check if device supports multiple colors. - - Returns: - True if color scheme has more than 2 colors, False otherwise - """ - return self.color_scheme.is_multi_color - - @property - def transmission_modes(self) -> int: - """Get supported transmission modes (bitfield). - - Bit flags: - - Bit 0 (0x01): raw transfer (block-based uncompressed) - - Bit 1 (0x02): zip compressed transfer (block-based compressed) - - Bit 3 (0x08): direct_write mode - - Returns: - Transmission modes bitfield, or 0 if not available - ATC devices return 0 (assume block-based only for backward compatibility) - """ - if self._is_open_display: - displays = self._metadata["open_display_config"].get("displays", []) - return displays[0].get("transmission_modes", 0) if displays else 0 - return 0 # ATC devices don't support direct_write - - @property - def supports_zip_compression(self) -> bool: - """Return true if the device advertises zip-compressed transfer support.""" - return (self.transmission_modes & 0x02) != 0 - - def get_best_upload_method(self) -> str: - """Determine the best upload method based on device capabilities. - - Priority order: - 1. direct_write: If direct_write (0x08) is supported - 2. block: Fallback to block-based upload (always supported) - - Returns: - Upload method string: "direct_write" or "block" - """ - modes = self.transmission_modes - has_direct_write = (modes & 0x08) != 0 - - if has_direct_write: - return "direct_write" - else: - return "block" diff --git a/custom_components/opendisplay/ble/operations.py b/custom_components/opendisplay/ble/operations.py deleted file mode 100644 index 191ab08..0000000 --- a/custom_components/opendisplay/ble/operations.py +++ /dev/null @@ -1,148 +0,0 @@ -"""BLE operations with decorator for automatic retry and locking.""" -import asyncio -import logging -from functools import wraps -from typing import Dict - -from homeassistant.core import HomeAssistant -from homeassistant.exceptions import HomeAssistantError -from bleak.exc import BleakError - -from .connection import BLEConnection -from .exceptions import BLEConnectionError -from ..const import DOMAIN - -_LOGGER = logging.getLogger(__name__) - -# Per-device async locks for preventing concurrent operations -_device_locks: Dict[str, asyncio.Lock] = {} - -# LED control commands (common to all protocols) -CMD_LED_ON = bytes.fromhex("000103") -CMD_LED_OFF = bytes.fromhex("000100") -CMD_LED_OFF_FINAL = bytes.fromhex("0000") - - -def ble_device_operation(func): - """Decorator for BLE operations with automatic connection, retry, and locking. - - Provides: - - Per-device async locking (prevents concurrent operations on same device) - - 3 retry attempts with exponential backoff (0.25s, 0.5s, 0.75s) - - Automatic connection creation with protocol-specific service UUID - - Error handling and logging - - The decorated function receives a BLEConnection as first argument. - Requires 'hass', 'mac_address', 'service_uuid', and 'protocol' in function arguments/kwargs. - """ - - @wraps(func) - async def wrapper(hass: HomeAssistant, mac_address: str, service_uuid: str, protocol, *args, **kwargs): - # Get or create lock for this device - lock = _device_locks.setdefault(mac_address, asyncio.Lock()) - - async with lock: - max_attempts = 3 - for attempt in range(max_attempts): - try: - # Create connection with protocol-specific service UUID - async with BLEConnection(hass, mac_address, service_uuid, protocol) as conn: - # Inject connection as first argument to decorated function - return await func(conn, *args, **kwargs) - - except BLEConnectionError as e: - # Check if it's a connection slots error - don't retry these - if "No available Bluetooth connection slots" in str(e): - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="ble_slots_unavailable", - translation_placeholders={"mac_address": mac_address, "error": str(e)}, - ) from e - - # For other connection errors, retry - if attempt == max_attempts - 1: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="ble_operation_failed", - translation_placeholders={ - "operation": func.__name__, - "attempts": max_attempts, - "error": str(e), - }, - ) from e - - backoff_time = 0.25 * (attempt + 1) - _LOGGER.warning( - "BLE operation %s failed on attempt %d: %s. Retrying in %.2f seconds...", - func.__name__, - attempt + 1, - e, - backoff_time, - ) - await asyncio.sleep(backoff_time) - - except BleakError as e: - if attempt == max_attempts - 1: - _LOGGER.error( - "BLE operation %s failed after %d attempts: %s", - func.__name__, - max_attempts, - e, - ) - raise - backoff_time = 0.25 * (attempt + 1) - _LOGGER.warning( - "BLE operation %s failed on attempt %d: %s. Retrying in %.2f seconds...", - func.__name__, - attempt + 1, - e, - backoff_time, - ) - await asyncio.sleep(backoff_time) - - return None - - return wrapper - - -@ble_device_operation -async def turn_led_on(conn: BLEConnection) -> bool: - """Turn on LED for specified device. - - Args: - conn: Active BLE connection - - Returns: - bool: True if command sent successfully - """ - await conn.write_command(CMD_LED_ON) - return True - - -@ble_device_operation -async def turn_led_off(conn: BLEConnection) -> bool: - """Turn off LED for specified device. - - Args: - conn: Active BLE connection - - Returns: - bool: True if command sent successfully - """ - await conn.write_command(CMD_LED_OFF) - await conn.write_command(CMD_LED_OFF_FINAL) # Required finalization command - return True - - -@ble_device_operation -async def ping_device(conn: BLEConnection) -> bool: - """Test device connectivity. - - Args: - conn: Active BLE connection - - Returns: - bool: True if device is reachable - """ - # If connection and initialization succeed, device is reachable - return True diff --git a/custom_components/opendisplay/ble/protocol_atc.py b/custom_components/opendisplay/ble/protocol_atc.py deleted file mode 100644 index 70de92a..0000000 --- a/custom_components/opendisplay/ble/protocol_atc.py +++ /dev/null @@ -1,216 +0,0 @@ -"""ATC firmware protocol implementation.""" -import struct -import logging -from typing import TYPE_CHECKING - -from .protocol_base import BLEProtocol, AdvertisingData, DeviceCapabilities -from .exceptions import BLEProtocolError -from ..const import DOMAIN - -if TYPE_CHECKING: - from .connection import BLEConnection - -_LOGGER = logging.getLogger(__name__) - -# ATC protocol constants -CMD_GET_DISPLAY_INFO = bytes([0x00, 0x05]) -BLE_MIN_RESPONSE_LENGTH = 33 - - -class ATCProtocol(BLEProtocol): - """ATC firmware protocol implementation. - - Supports the original ATC BLE firmware protocol with: - - Manufacturer ID: 0x1337 (4919) - - Service UUID: 00001337-0000-1000-8000-00805f9b34fb - - Interrogation: CMD_GET_DISPLAY_INFO (0x0005) - - Advertising: Version 1 (10 bytes) and Version 2 (11 bytes with temperature) - """ - - @property - def manufacturer_id(self) -> int: - """Bluetooth manufacturer ID for ATC firmware.""" - return 0x1337 # 4919 decimal - - @property - def service_uuid(self) -> str: - """BLE GATT service UUID for ATC firmware.""" - return "00001337-0000-1000-8000-00805f9b34fb" - - @property - def protocol_name(self) -> str: - """Protocol identifier.""" - return "atc" - - def parse_advertising_data(self, data: bytes) -> AdvertisingData: - """Parse ATC manufacturer data for device state updates. - - Supports two advertising formats: - - Version 1: 10 bytes (no temperature) - - Version 2: 11 bytes (with temperature) - - Args: - data: Manufacturer-specific advertising data - - Returns: - AdvertisingData: Parsed advertising information - - Raises: - ValueError: If data format is invalid - """ - if not data: - raise ValueError("Empty advertising data") - - try: - version = data[0] - - if version == 1: - if len(data) < 10: - raise ValueError(f"Version 1 requires 10 bytes, got {len(data)}") - - hw_type = int.from_bytes(data[1:3], "little") - fw_version = int.from_bytes(data[3:5], "little") - battery_mv = int.from_bytes(data[7:9], "little") - battery_pct = self._calculate_battery_percentage(battery_mv) - - return AdvertisingData( - battery_mv=battery_mv, - battery_pct=battery_pct, - temperature=None, # Not available in version 1 - hw_type=hw_type, - fw_version=fw_version, - version=version, - ) - - elif version == 2: - if len(data) < 11: - raise ValueError(f"Version 2 requires 11 bytes, got {len(data)}") - - hw_type = int.from_bytes(data[1:3], "little") - fw_version = int.from_bytes(data[3:5], "little") - battery_mv = int.from_bytes(data[7:9], "little") - battery_pct = self._calculate_battery_percentage(battery_mv) - temperature = struct.unpack(" DeviceCapabilities: - """Query device using CMD_GET_DISPLAY_INFO (0x0005). - - Connects to device and retrieves display specifications including: - - Display dimensions (width, height) - - Color support capabilities - - Buffer rotation requirement - - Args: - connection: Active BLE connection to device - - Returns: - DeviceCapabilities: Minimal device information - - Raises: - BLEProtocolError: If interrogation fails or response is invalid - """ - # Request display information using protocol command 0005 - response = await connection.write_command_with_response(CMD_GET_DISPLAY_INFO) - - _LOGGER.debug( - "ATC device interrogation for %s: received %d bytes", - connection.mac_address, - len(response), - ) - - # Verify response format: 00 05 + payload - if len(response) < BLE_MIN_RESPONSE_LENGTH: - raise BLEProtocolError( - translation_domain=DOMAIN, - translation_key="ble_protocol_invalid_response_length", - translation_placeholders={ - "length": str(len(response)), - "expected_length": str(BLE_MIN_RESPONSE_LENGTH) - } - ) - - # Verify command ID (should be 0x0005) - if response[0] != 0x00 or response[1] != 0x05: - raise BLEProtocolError( - translation_domain=DOMAIN, - translation_key="ble_protocol_invalid_command_id", - translation_placeholders={ - "command_id": f"{response[0]:02x}{response[1]:02x}" - } - ) - - # Skip command ID (first 2 bytes) and parse payload - payload = response[2:] - - if len(payload) < 31: - raise BLEProtocolError( - translation_domain=DOMAIN, - translation_key="ble_protocol_invalid_response_payload", - ) - - # Parse display specifications from 0005 response: - - # Offset 19: Width/Height inversion flag - wh_inverted = payload[19] == 1 - - # Offset 22-23: Height (uint16, little-endian) - height = struct.unpack("= 3: - color_scheme = 3 # BWRY - elif colors >= 2: - color_scheme = 1 # BWR (default for 2-color, refined later) - else: - color_scheme = 0 # MONO - - _LOGGER.debug( - "ATC device %s dimensions: %dx%d, colors=%d, inverted=%s", - connection.mac_address, - width, - height, - colors, - wh_inverted, - ) - - return DeviceCapabilities( - width=width if wh_inverted else height, - height=height if wh_inverted else width, - color_scheme=color_scheme, - rotatebuffer=1, # ATC devices always need 90° rotation - ) - - async def initialize_connection(self, connection: "BLEConnection") -> None: - """ATC protocol requires CMD_INIT command before use.""" - import asyncio - from .connection import CMD_INIT, INIT_DELAY_SECONDS - - _LOGGER.debug( - "Sending CMD_INIT to ATC device %s, waiting %ss", - connection.mac_address, - INIT_DELAY_SECONDS - ) - await connection.write_command(CMD_INIT) - await asyncio.sleep(INIT_DELAY_SECONDS) - diff --git a/custom_components/opendisplay/ble/protocol_base.py b/custom_components/opendisplay/ble/protocol_base.py deleted file mode 100644 index 081f281..0000000 --- a/custom_components/opendisplay/ble/protocol_base.py +++ /dev/null @@ -1,122 +0,0 @@ -"""Base protocol abstraction for BLE firmware types.""" -from abc import ABC, abstractmethod -from dataclasses import dataclass -from typing import TYPE_CHECKING - -if TYPE_CHECKING: - from .connection import BLEConnection - - -@dataclass -class AdvertisingData: - """Parsed BLE advertising data.""" - - battery_mv: int - battery_pct: int - temperature: float | None - hw_type: int - fw_version: int - version: int # Config/protocol version - - -@dataclass -class DeviceCapabilities: - """Minimal device information needed for Home Assistant setup.""" - - width: int - height: int - color_scheme: int # 0=MONO, 1=BWR, 2=BWY, 3=BWRY, 4=BWGBRY, 5=GRAYSCALE - rotatebuffer: int - - -class BLEProtocol(ABC): - """Abstract base class for BLE firmware protocols. - - Each firmware type (ATC, OpenDisplay) implements this interface to provide - protocol-specific behavior while sharing common infrastructure. - """ - - @staticmethod - def _calculate_battery_percentage(voltage_mv: int) -> int: - """Convert battery voltage (mV) to percentage estimate. - - Args: - voltage_mv: Battery voltage in millivolts - - Returns: - int: Battery percentage (0-100) - """ - if voltage_mv == 0: - return 0 # Unknown battery level - - voltage = voltage_mv / 1000.0 - min_voltage, max_voltage = 2.6, 3.2 # Battery voltage range - percentage = min( - 100, max(0, int((voltage - min_voltage) * 100 / (max_voltage - min_voltage))) - ) - return percentage - - @property - @abstractmethod - def manufacturer_id(self) -> int: - """Bluetooth manufacturer ID for device discovery.""" - - @property - @abstractmethod - def service_uuid(self) -> str: - """BLE GATT service UUID for communication.""" - - @property - @abstractmethod - def protocol_name(self) -> str: - """Protocol identifier: 'atc' or 'open_display'.""" - - @abstractmethod - def parse_advertising_data(self, data: bytes) -> AdvertisingData: - """Parse manufacturer-specific advertising data. - - Args: - data: Raw manufacturer-specific data from BLE advertisement - - Returns: - AdvertisingData: Parsed advertising information - - Raises: - ValueError: If data format is invalid - """ - - @abstractmethod - async def interrogate_device( - self, connection: "BLEConnection" - ) -> DeviceCapabilities: - """Query device capabilities during setup. - - Returns minimal information needed for Home Assistant entity creation. - - For OpenDisplay: Reads full config via 0x0040, extracts display dimensions. - For ATC: Uses legacy 0x0005 command. - - Args: - connection: Active BLE connection to device - - Returns: - DeviceCapabilities: Minimal device information - - Raises: - BLEError: If interrogation fails - ConfigValidationError: If device returns invalid data - """ - - async def initialize_connection(self, connection: "BLEConnection") -> None: - """Perform protocol-specific connection initialization. - - Called after BLE connection is established and notifications are enabled. - Protocols can override this to send initialization commands if needed. - - Args: - connection: Active BLE connection - - Default implementation does nothing - protocols requiring initialization - should override this method. - """ - pass # Default: no initialization needed diff --git a/custom_components/opendisplay/ble/protocol_factory.py b/custom_components/opendisplay/ble/protocol_factory.py deleted file mode 100644 index 03b434c..0000000 --- a/custom_components/opendisplay/ble/protocol_factory.py +++ /dev/null @@ -1,65 +0,0 @@ -"""Protocol factory for detecting and managing BLE firmware protocols.""" -from .protocol_base import BLEProtocol -from .protocol_atc import ATCProtocol -from .protocol_open_display import OpenDisplayProtocol -from .exceptions import UnsupportedProtocolError - - -# Singleton protocol instances -_PROTOCOLS: dict[int, BLEProtocol] = { - 0x1337: ATCProtocol(), # ATC firmware (4919 decimal) - 0x2446: OpenDisplayProtocol(), # OpenDisplay firmware (9286 decimal) -} - - -def get_protocol_by_manufacturer_id(mfg_id: int) -> BLEProtocol: - """Get protocol instance by Bluetooth manufacturer ID. - - Args: - mfg_id: Manufacturer ID from BLE advertisement - - Returns: - BLEProtocol: Protocol instance for the given manufacturer ID - - Raises: - UnsupportedProtocolError: If manufacturer ID is not supported - """ - protocol = _PROTOCOLS.get(mfg_id) - if not protocol: - supported_ids = [f"{mid:#06x} ({mid})" for mid in _PROTOCOLS.keys()] - raise UnsupportedProtocolError( - f"Unknown manufacturer ID: {mfg_id:#06x} ({mfg_id}). " - f"Supported IDs: {', '.join(supported_ids)}" - ) - return protocol - - -def get_protocol_by_name(name: str) -> BLEProtocol: - """Get protocol instance by protocol name. - - Args: - name: Protocol name ('atc' or 'open_display') - - Returns: - BLEProtocol: Protocol instance for the given name - - Raises: - UnsupportedProtocolError: If protocol name is not recognized - """ - for protocol in _PROTOCOLS.values(): - if protocol.protocol_name == name: - return protocol - - supported_names = [p.protocol_name for p in _PROTOCOLS.values()] - raise UnsupportedProtocolError( - f"Unknown protocol: '{name}'. Supported protocols: {', '.join(supported_names)}" - ) - - -def get_supported_manufacturer_ids() -> list[int]: - """Get list of supported manufacturer IDs for discovery. - - Returns: - list[int]: List of manufacturer IDs that can be auto-discovered - """ - return list(_PROTOCOLS.keys()) diff --git a/custom_components/opendisplay/ble/protocol_open_display.py b/custom_components/opendisplay/ble/protocol_open_display.py deleted file mode 100644 index 1556cdc..0000000 --- a/custom_components/opendisplay/ble/protocol_open_display.py +++ /dev/null @@ -1,485 +0,0 @@ -"""OpenDisplay firmware protocol implementation.""" -import logging -from typing import TYPE_CHECKING - -from .protocol_base import BLEProtocol, AdvertisingData, DeviceCapabilities -from .tlv_parser import ( - GlobalConfig, - describe_color_scheme, - extract_display_capabilities, - parse_tlv_config, -) -from .exceptions import ConfigValidationError -from ..const import DOMAIN - -if TYPE_CHECKING: - from .connection import BLEConnection - -_LOGGER = logging.getLogger(__name__) - -# OpenDisplay protocol constants -CMD_READ_CONFIG = bytes([0x00, 0x40]) -CMD_READ_FW_VERSION = bytes([0x00, 0x43]) - - -def _format_config_summary(config: GlobalConfig, mac_address: str) -> str: - """Format OpenDisplay configuration as human-readable debug output. - - Args: - config: Parsed OpenDisplay device configuration - mac_address: Device MAC address for reference - - Returns: - Multi-line formatted configuration summary - """ - lines = [f"\nOpenDisplay Configuration for {mac_address}:"] - - # Device Identity - lines.append(" Device:") - if config.system: - ic_names = {1: "nRF52840", 2: "ESP32-S3", 3: "ESP32-C3", 4: "ESP32-C6"} - ic_type = ic_names.get(config.system.ic_type, f"Unknown ({config.system.ic_type})") - lines.append(f" - IC Type: {ic_type}") - lines.append(f" - Communication Modes: 0x{config.system.communication_modes:02x}") - lines.append(f" - Device Flags: 0x{config.system.device_flags:02x}") - - if config.manufacturer: - lines.append(f" - Manufacturer ID: 0x{config.manufacturer.manufacturer_id:04x}") - lines.append(f" - Board Type: {config.manufacturer.board_type}") - lines.append(f" - Board Revision: {config.manufacturer.board_revision}") - - # Display Configuration (primary display) - if config.displays: - display = config.displays[0] # Primary display - lines.append(" Display (primary):") - - # Calculate diagonal size if physical dimensions available - size_info = f"{display.pixel_width}x{display.pixel_height} pixels" - if display.active_width_mm > 0 and display.active_height_mm > 0: - import math - diagonal_mm = math.sqrt(display.active_width_mm ** 2 + display.active_height_mm ** 2) - diagonal_inches = diagonal_mm / 25.4 - size_info += f" ({display.active_width_mm}x{display.active_height_mm}mm, {diagonal_inches:.1f}\")" - lines.append(f" - Dimensions: {size_info}") - - color_scheme = describe_color_scheme(display.color_scheme) - lines.append(f" - Color Scheme: {color_scheme}") - lines.append(f" - Rotation: {display.rotation}°") - lines.append(f" - Panel IC: {display.panel_ic_type}") - - if len(config.displays) > 1: - lines.append(f" - Additional Displays: {len(config.displays) - 1}") - - # Power Configuration - if config.power: - lines.append(" Power:") - lines.append(f" - Battery Capacity: {config.power.battery_capacity_mah} mAh") - lines.append(f" - Power Mode: {config.power.power_mode}") - - # Convert sleep timeout to human-readable format - sleep_sec = config.power.sleep_timeout_ms / 1000 - if sleep_sec >= 60: - lines.append(f" - Sleep Timeout: {sleep_sec / 60:.1f} minutes") - else: - lines.append(f" - Sleep Timeout: {sleep_sec:.1f} seconds") - - lines.append(f" - TX Power: {config.power.tx_power:+d} dBm") - lines.append(f" - Deep Sleep Current: {config.power.deep_sleep_current_ua} µA") - - # Optional Hardware Summary - hardware_summary = [] - if config.leds: - led_types = ", ".join([f"#{led.instance_number} type {led.led_type}" for led in config.leds]) - hardware_summary.append(f"LEDs: {len(config.leds)} ({led_types})") - - if config.sensors: - sensor_types = ", ".join([f"#{sensor.instance_number} type {sensor.sensor_type}" for sensor in config.sensors]) - hardware_summary.append(f"Sensors: {len(config.sensors)} ({sensor_types})") - - if config.buses: - bus_types = {0: "I2C", 1: "SPI"} - bus_list = ", ".join([f"#{bus.instance_number} {bus_types.get(bus.bus_type, 'Unknown')}" for bus in config.buses]) - hardware_summary.append(f"Buses: {len(config.buses)} ({bus_list})") - - if config.inputs: - hardware_summary.append(f"Digital Inputs: {len(config.inputs)}") - - if hardware_summary: - lines.append(" Optional Hardware:") - for hw in hardware_summary: - lines.append(f" - {hw}") - - return "\n".join(lines) - - -class OpenDisplayProtocol(BLEProtocol): - """OpenDisplay firmware protocol implementation. - - Supports the new OpenDisplay BLE firmware protocol with: - - Manufacturer ID: 0x2446 (9286) - - Service UUID: 00002446-0000-1000-8000-00805f9b34fb - - Interrogation: CMD_READ_CONFIG (0x0040) with TLV parsing - - Advertising: 13-byte format (sensor data currently placeholder) - - Complete TLV configuration system - """ - - def __init__(self): - """Initialize OpenDisplay protocol.""" - self._last_config: GlobalConfig | None = None - self._last_fw_version: dict | None = None - - @property - def manufacturer_id(self) -> int: - """Bluetooth manufacturer ID for OpenDisplay firmware.""" - return 0x2446 # 9286 decimal - - @property - def service_uuid(self) -> str: - """BLE GATT service UUID for OpenDisplay firmware.""" - return "00002446-0000-1000-8000-00805f9b34fb" - - @property - def protocol_name(self) -> str: - """Protocol identifier.""" - return "open_display" - - def parse_advertising_data(self, data: bytes) -> AdvertisingData: - """Parse OpenDisplay manufacturer data for device state updates. - - OpenDisplay firmware has two advertising formats: - - Legacy (11 bytes): Same layout as ATC (battery at 7-8, temp at 9) - - Current/v1 (14 bytes): Firmware 1.0+ (temp at 11, battery at 12-13) - - Args: - data: Manufacturer-specific advertising data - - Returns: - AdvertisingData: Parsed advertising information - - Raises: - ValueError: If data format is invalid - """ - if not data: - raise ValueError("Empty advertising data") - - # Minimum required: version(1) + hw_type(2) + fw_version(2) = 5 bytes - if len(data) < 5: - raise ValueError(f"OpenDisplay advertising requires at least 5 bytes, got {len(data)}") - - # Parse core fields - version = data[0] - hw_type = int.from_bytes(data[1:3], "little") - fw_version = int.from_bytes(data[3:5], "little") - - # Parse optional sensor data if present - battery_mv = 0 - battery_pct = 0 - temperature = None - - if len(data) >= 14: - # Current v1 format (Firmware 1.0+) - # Temperature at index 11: 0.5 C resolution, -40 C offset - temperature = (data[11] / 2.0) - 40.0 - - # Battery at index 12 and 13: 10mV resolution, 9-bit value - battery_mv = ((data[13] & 0x01) << 8 | data[12]) * 10 - if battery_mv > 0: - battery_pct = self._calculate_battery_percentage(battery_mv) - else: - # Legacy format: Battery voltage at bytes 7-8 (same as ATC) - if len(data) >= 9: - battery_mv = int.from_bytes(data[7:9], "little") - - if battery_mv > 0: - battery_pct = self._calculate_battery_percentage(battery_mv) - - # Temperature at byte 9 (signed int8, same as ATC) - if len(data) >= 10: - import struct - temperature = float(struct.unpack(" DeviceCapabilities: - """Query device during setup using CMD_READ_CONFIG (0x0040). - - Reads the complete device TLV configuration but returns only the - minimal display information needed for Home Assistant entity setup. - - This replaces the legacy 0x0005 command used by ATC firmware. - - The OpenDisplay firmware sends config data in chunks: - - Chunk 0: [cmd_echo:2][chunk_num:2][total_len:2][tlv_data:~94] - - Chunk N: [cmd_echo:2][chunk_num:2][tlv_data:~96] - - Args: - connection: Active BLE connection to device - - Returns: - DeviceCapabilities: Minimal device information for HA setup - - Raises: - ConfigValidationError: If config is invalid or missing display data - """ - import asyncio - - _LOGGER.debug("OpenDisplay device interrogation for %s", connection.mac_address) - - # Read first chunk - response = await connection.write_command_with_response(CMD_READ_CONFIG) - - _LOGGER.debug( - "OpenDisplay config response for %s: received %d bytes", - connection.mac_address, - len(response), - ) - - # Debug: log first 20 bytes to understand response format - _LOGGER.debug( - "OpenDisplay config first 20 bytes: %s", - response[:20].hex() if len(response) >= 20 else response.hex() - ) - - # Strip command echo (first 2 bytes are the command 0x0040 echoed back) - if len(response) >= 2 and response[0:2] == CMD_READ_CONFIG: - chunk_data = response[2:] - _LOGGER.debug("Stripped command echo, chunk data is %d bytes", len(chunk_data)) - else: - chunk_data = response - _LOGGER.warning("Expected command echo not found, using full response") - - # Parse chunk header - if len(chunk_data) < 4: - raise ConfigValidationError( - translation_domain=DOMAIN, - translation_key="opendisplay_config_chunk_short", - translation_placeholders={"length": str(len(chunk_data))} - ) - - chunk_num = int.from_bytes(chunk_data[0:2], "little") - _LOGGER.debug("Received chunk number: %d", chunk_num) - - if chunk_num != 0: - raise ConfigValidationError( - translation_domain=DOMAIN, - translation_key="opendisplay_expected_chunk_zero", - translation_placeholders={"chunk_num": str(chunk_num)} - ) - - # Parse total length from chunk 0 - total_length = int.from_bytes(chunk_data[2:4], "little") - _LOGGER.debug("Total config length: %d bytes", total_length) - - # Extract TLV data from chunk 0 (skip 4-byte chunk header) - tlv_data = bytearray(chunk_data[4:]) - _LOGGER.debug("Chunk 0 TLV data: %d bytes", len(tlv_data)) - - # Collect remaining chunks if needed - # Firmware sends all chunks automatically with 50ms delay between them - max_chunks = 10 # Safety limit to prevent infinite loops - current_chunk = 1 - - while len(tlv_data) < total_length and current_chunk < max_chunks: - _LOGGER.debug( - "Waiting for chunk %d (have %d of %d bytes)", - current_chunk, - len(tlv_data), - total_length, - ) - - try: - # Read next chunk from queue (firmware sends them automatically) - next_response = await asyncio.wait_for( - connection._response_queue.get(), timeout=2.0 - ) - except asyncio.TimeoutError: - _LOGGER.warning( - "Timeout waiting for chunk %d (have %d of %d bytes)", - current_chunk, - len(tlv_data), - total_length, - ) - break - - _LOGGER.debug("Received chunk response: %d bytes", len(next_response)) - - # Strip command echo from next chunk - if len(next_response) >= 2 and next_response[0:2] == CMD_READ_CONFIG: - next_chunk_data = next_response[2:] - else: - next_chunk_data = next_response - - # Parse chunk header - if len(next_chunk_data) >= 2: - next_chunk_num = int.from_bytes(next_chunk_data[0:2], "little") - _LOGGER.debug("Received chunk %d", next_chunk_num) - - if next_chunk_num != current_chunk: - _LOGGER.warning( - "Expected chunk %d, got chunk %d", - current_chunk, - next_chunk_num, - ) - - # Subsequent chunks don't have total_length, just chunk_num - tlv_data.extend(next_chunk_data[2:]) - _LOGGER.debug( - "Chunk %d TLV data: %d bytes (total: %d/%d)", - next_chunk_num, - len(next_chunk_data[2:]), - len(tlv_data), - total_length, - ) - - current_chunk += 1 - - _LOGGER.debug("Collected %d bytes of TLV data in %d chunks", len(tlv_data), current_chunk) - _LOGGER.debug("Complete TLV data (hex): %s", tlv_data.hex()) - - # Strip OpenDisplay config header: [length:2][version:1] - # The firmware sends: [length:2][version:1][packets...][crc:2] - if len(tlv_data) < 3: - raise ConfigValidationError( - translation_domain=DOMAIN, - translation_key="opendisplay_config_too_short", - translation_placeholders={"length": str(len(tlv_data))} - ) - - config_length = int.from_bytes(tlv_data[0:2], "little") - config_version = tlv_data[2] - - _LOGGER.debug( - "OpenDisplay config header: length=%d bytes, version=%d", - config_length, - config_version, - ) - - # Extract packet data (skip 3-byte header) - packet_data = tlv_data[3:] - - _LOGGER.debug("Packet data after stripping header: %d bytes", len(packet_data)) - - # Parse complete TLV config (OpenDisplay format: [packet_number:1][packet_id:1][fixed_data]) - try: - full_config = parse_tlv_config(bytes(packet_data)) - except ConfigValidationError as e: - _LOGGER.error("Failed to parse OpenDisplay config for %s: %s", connection.mac_address, e) - raise - - # Store for potential future use (optional - for config management features) - self._last_config = full_config - - # Log complete configuration in human-readable format - _LOGGER.debug(_format_config_summary(full_config, connection.mac_address)) - - _LOGGER.debug( - "OpenDisplay device %s config: %d displays, %d LEDs, %d sensors", - connection.mac_address, - len(full_config.displays), - len(full_config.leds), - len(full_config.sensors), - ) - - # Extract and return only what Home Assistant needs right now - return extract_display_capabilities(full_config) - - async def read_config(self, connection: "BLEConnection") -> GlobalConfig: - """Read complete device configuration (FUTURE - for config management service). - - This is different from interrogate_device(): - - interrogate_device(): Automatic during setup, returns 4 fields - - read_config(): Manual service call, returns everything - - Both send command 0x0040 but return different data structures. - - Args: - connection: Active BLE connection to device - - Returns: - GlobalConfig: Complete device configuration - - Raises: - ConfigValidationError: If config parsing fails - """ - response = await connection.write_command_with_response(CMD_READ_CONFIG) - - # Strip command echo (first 2 bytes are the command 0x0040 echoed back) - if len(response) >= 2 and response[0:2] == CMD_READ_CONFIG: - config_data = response[2:] - else: - config_data = response - - config = parse_tlv_config(config_data) - self._last_config = config - return config - - def get_last_config(self) -> GlobalConfig | None: - """Return last read config (for potential future features). - - Returns: - GlobalConfig: Last config read via interrogate_device() or read_config(), - or None if no config has been read yet - """ - return self._last_config - - async def read_firmware_version(self, connection: "BLEConnection") -> dict: - """Read firmware version using command 0x0043. - - Returns: - dict: Firmware version info with keys: major, minor, sha, version, raw - """ - response = await connection.write_command_with_response(CMD_READ_FW_VERSION) - - # Strip command echo if present - if response.startswith(CMD_READ_FW_VERSION): - payload = response[2:] - else: - payload = response - - if len(payload) < 2: - raise ConfigValidationError( - translation_domain=DOMAIN, - translation_key="opendisplay_fw_response_short", - translation_placeholders={"length": str(len(payload))} - ) - - major = payload[0] - minor = payload[1] - sha = "" - - if len(payload) >= 3: - sha_length = payload[2] - if sha_length > 0: - if len(payload) < 3 + sha_length: - raise ConfigValidationError( - translation_domain=DOMAIN, - translation_key="opendisplay_fw_version_format", - translation_placeholders={ "sha_length": str(sha_length)} - ) - sha_bytes = payload[3:3 + sha_length] - sha = bytes(sha_bytes).decode("ascii", errors="ignore") - - version_str = f"{major}.{minor}" - self._last_fw_version = { - "major": major, - "minor": minor, - "sha": sha, - "version": version_str, - "raw": (major << 8) | minor, - } - - _LOGGER.debug( - "OpenDisplay firmware version for %s: %s (sha=%s)", - connection.mac_address, - version_str, - sha[:8] if sha else "n/a", - ) - - return self._last_fw_version diff --git a/custom_components/opendisplay/ble/tlv_parser.py b/custom_components/opendisplay/ble/tlv_parser.py deleted file mode 100644 index e4a7d55..0000000 --- a/custom_components/opendisplay/ble/tlv_parser.py +++ /dev/null @@ -1,758 +0,0 @@ -"""TLV configuration parser for OpenDisplay BLE firmware. - -Parses the complete device configuration from 0x0040 (Read Config) response. -Based on structs.h from OpenDisplay_BLE firmware. -""" -import struct -import zlib -from dataclasses import asdict, dataclass, field -from typing import Any, ClassVar - -from .exceptions import ConfigValidationError -from .protocol_base import DeviceCapabilities -from .color_scheme import ColorScheme -from ..const import DOMAIN - -# TLV packet type constants -PACKET_TYPE_SYSTEM_CONFIG = 0x01 -PACKET_TYPE_MANUFACTURER_DATA = 0x02 -PACKET_TYPE_POWER_OPTION = 0x04 -PACKET_TYPE_DISPLAY_CONFIG = 0x20 -PACKET_TYPE_LED_CONFIG = 0x21 -PACKET_TYPE_SENSOR_DATA = 0x23 -PACKET_TYPE_DATA_BUS = 0x24 -PACKET_TYPE_BINARY_INPUTS = 0x25 - - -@dataclass -class SystemConfig: - """Packet type 0x01 - System configuration (22 bytes).""" - - SIZE: ClassVar[int] = 22 - - ic_type: int # IC type: 0=nRF52840, 1=ESP32-S3 - communication_modes: int # Supported communication modes (bitfield) - device_flags: int # Misc device flags (bitfield) - pwr_pin: int # Power pin number (0xFF = not present) - reserved: bytes # 17 reserved bytes - - @classmethod - def from_bytes(cls, data: bytes) -> "SystemConfig": - """Parse SystemConfig from bytes.""" - if len(data) < cls.SIZE: - raise ConfigValidationError( - translation_domain=DOMAIN, - translation_key="tlv_section_too_short", - translation_placeholders={"section": "SystemConfig", "expected": cls.SIZE, "actual": len(data)} - ) - ic_type, comm_modes, dev_flags, pwr_pin = struct.unpack_from(" "ManufacturerData": - """Parse ManufacturerData from bytes.""" - if len(data) < cls.SIZE: - raise ConfigValidationError( - translation_domain=DOMAIN, - translation_key="tlv_section_too_short", - translation_placeholders={"section": "ManufacturerData", "expected": cls.SIZE, "actual": len(data)} - ) - mfg_id, board_type, board_rev = struct.unpack_from(" "PowerOption": - """Parse PowerOption from bytes.""" - if len(data) < cls.SIZE: - raise ConfigValidationError( - translation_domain=DOMAIN, - translation_key="tlv_section_too_short", - translation_placeholders={"section": "PowerOption", "expected": cls.SIZE, "actual": len(data)} - ) - - # Battery capacity is 3 bytes (little-endian) - battery_capacity = int.from_bytes(data[1:4], byteorder="little") - - ( - power_mode, - sleep_timeout, - tx_power, - sleep_flags, - bat_sense_pin, - bat_sense_en_pin, - bat_sense_flags, - capacity_est, - voltage_scale, - deep_sleep_ua, - ) = struct.unpack_from(" "DisplayConfig": - """Parse DisplayConfig from bytes.""" - if len(data) < cls.SIZE: - raise ConfigValidationError( - translation_domain=DOMAIN, - translation_key="tlv_section_too_short", - translation_placeholders={"section": "DisplayConfig", "expected": cls.SIZE, "actual": len(data)} - ) - - ( - instance_num, - display_tech, - panel_ic, - pixel_w, - pixel_h, - active_w_mm, - active_h_mm, - tagtype, - rotation, - reset_pin, - busy_pin, - dc_pin, - cs_pin, - data_pin, - partial_update, - color_scheme, - trans_modes, - clk_pin, - ) = struct.unpack_from(" "LedConfig": - """Parse LedConfig from bytes.""" - if len(data) < cls.SIZE: - raise ConfigValidationError( - translation_domain=DOMAIN, - translation_key="tlv_section_too_short", - translation_placeholders={"section": "LedConfig", "expected": cls.SIZE, "actual": len(data)} - ) - - instance_num, led_type, led_1, led_2, led_3, led_4, led_flags = struct.unpack_from( - " "SensorData": - """Parse SensorData from bytes.""" - if len(data) < cls.SIZE: - raise ConfigValidationError( - translation_domain=DOMAIN, - translation_key="tlv_section_too_short", - translation_placeholders={"section": "SensorData", "expected": cls.SIZE, "actual": len(data)} - ) - - instance_num, sensor_type, bus_id = struct.unpack_from(" "DataBus": - """Parse DataBus from bytes.""" - if len(data) < cls.SIZE: - raise ConfigValidationError( - translation_domain=DOMAIN, - translation_key="tlv_section_too_short", - translation_placeholders={"section": "DataBus", "expected": cls.SIZE, "actual": len(data)} - ) - - ( - instance_num, - bus_type, - pin_1, - pin_2, - pin_3, - pin_4, - pin_5, - pin_6, - pin_7, - bus_speed, - bus_flags, - pullups, - pulldowns, - ) = struct.unpack_from(" "BinaryInputs": - """Parse BinaryInputs from bytes.""" - if len(data) < cls.SIZE: - raise ConfigValidationError( - translation_domain=DOMAIN, - translation_key="tlv_section_too_short", - translation_placeholders={"section": "BinaryInputs", "expected": cls.SIZE, "actual": len(data)} - ) - - instance_num, input_type, display_as = struct.unpack_from(" GlobalConfig: - """Parse complete TLV config from 0x0040 response. - - Auto-detects format: - - File format: [magic:4][version:4][crc32:4][data_len:4][TLV packets...] - - BLE format: [TLV packets...] (raw TLV data only) - - Each TLV packet: - [type:1][length:1][data:N] - - Args: - data: Raw config data from device - - Returns: - GlobalConfig: Parsed configuration structure - - Raises: - ConfigValidationError: If data is invalid or CRC check fails - """ - if len(data) < 2: - raise ConfigValidationError( - translation_domain=DOMAIN, - translation_key="tlv_data_too_short", - translation_placeholders={ "length": str(len(data))} - ) - - # Auto-detect format by checking for magic number - has_header = False - if len(data) >= 16: - potential_magic = struct.unpack_from(" len(data): - break # Not enough data for packet header - - _packet_number = data[offset] # Packet instance number (not used in parsing) - packet_id = data[offset + 1] - offset += 2 - - # Determine packet size based on packet ID (fixed sizes from structs.h) - packet_size = 0 - if packet_id == PACKET_TYPE_SYSTEM_CONFIG: - packet_size = SystemConfig.SIZE - elif packet_id == PACKET_TYPE_MANUFACTURER_DATA: - packet_size = ManufacturerData.SIZE - elif packet_id == PACKET_TYPE_POWER_OPTION: - packet_size = PowerOption.SIZE - elif packet_id == PACKET_TYPE_DISPLAY_CONFIG: - packet_size = DisplayConfig.SIZE - elif packet_id == PACKET_TYPE_LED_CONFIG: - packet_size = LedConfig.SIZE - elif packet_id == PACKET_TYPE_SENSOR_DATA: - packet_size = SensorData.SIZE - elif packet_id == PACKET_TYPE_DATA_BUS: - packet_size = DataBus.SIZE - elif packet_id == PACKET_TYPE_BINARY_INPUTS: - packet_size = BinaryInputs.SIZE - else: - raise ConfigValidationError( - translation_domain=DOMAIN, - translation_key="tlv_unknown_packet", - translation_placeholders={ - "packet_id": f"{packet_id:#04x}", - "offset": offset - 2 - } - ) - - if offset + packet_size > len(data): - raise ConfigValidationError( - translation_domain=DOMAIN, - translation_key="tlv_packet_too_short", - translation_placeholders={ - "packet_id": f"{packet_id:#04x}", - "packet_size": packet_size, - "remaining_bytes": len(data) - offset, - "offset": offset - } - ) - - packet_data = data[offset : offset + packet_size] - offset += packet_size - - # Parse based on packet ID - try: - if packet_id == PACKET_TYPE_SYSTEM_CONFIG: - config.system = SystemConfig.from_bytes(packet_data) - - elif packet_id == PACKET_TYPE_MANUFACTURER_DATA: - config.manufacturer = ManufacturerData.from_bytes(packet_data) - - elif packet_id == PACKET_TYPE_POWER_OPTION: - config.power = PowerOption.from_bytes(packet_data) - - elif packet_id == PACKET_TYPE_DISPLAY_CONFIG: - config.displays.append(DisplayConfig.from_bytes(packet_data)) - - elif packet_id == PACKET_TYPE_LED_CONFIG: - config.leds.append(LedConfig.from_bytes(packet_data)) - - elif packet_id == PACKET_TYPE_SENSOR_DATA: - config.sensors.append(SensorData.from_bytes(packet_data)) - - elif packet_id == PACKET_TYPE_DATA_BUS: - config.buses.append(DataBus.from_bytes(packet_data)) - - elif packet_id == PACKET_TYPE_BINARY_INPUTS: - config.inputs.append(BinaryInputs.from_bytes(packet_data)) - - # Silently ignore unknown packet types for forward compatibility - - except Exception as e: - raise ConfigValidationError( - translation_domain=DOMAIN, - translation_key="tlv_packet_parse_failed", - translation_placeholders={ - "packet_id": f"{packet_id:#04x}", - "offset": offset - 2, - "error": str(e) - } - ) from e - - return config - - -def _color_scheme_from_value(value: int) -> ColorScheme | None: - """Return ColorScheme enum for value or None if unknown.""" - for scheme in ColorScheme: - if scheme.value == value: - return scheme - return None - - -def describe_color_scheme(value: int) -> str: - """Convert color scheme int to human-readable description.""" - scheme = _color_scheme_from_value(value) - if scheme is None: - return f"Unknown ({value})" - - descriptions = { - ColorScheme.MONO: "Monochrome", - ColorScheme.BWR: "BWR (black/white/red)", - ColorScheme.BWY: "BWY (black/white/yellow)", - ColorScheme.BWRY: "BWRY (black/white/red/yellow)", - ColorScheme.BWGBRY: "BWGBRY (6-color)", - ColorScheme.GRAYSCALE_4: "Grayscale (4-level)", - } - return descriptions.get(scheme, scheme.name) - - -def extract_display_capabilities(config: GlobalConfig) -> DeviceCapabilities: - """Extract minimal display info from full config for interrogation. - - Used by OpenDisplayProtocol.interrogate_device() to return only what HA needs. - - Args: - config: Complete parsed configuration - - Returns: - DeviceCapabilities: Minimal device information for HA setup - - Raises: - ConfigValidationError: If no display configuration found - """ - if not config.displays: - raise ConfigValidationError( - translation_domain=DOMAIN, - translation_key="tlv_no_display_config" - ) - - # Use first display - display = config.displays[0] - - # Swap dimensions when rotation is 90/270 (consistent with ATC wh_inverted behavior) - if display.rotation in (90, 270): - return DeviceCapabilities( - width=display.pixel_height, # Swapped for portrait rotation - height=display.pixel_width, # Swapped for portrait rotation - color_scheme=display.color_scheme, - rotatebuffer=1, - ) - else: - return DeviceCapabilities( - width=display.pixel_width, - height=display.pixel_height, - color_scheme=display.color_scheme, - rotatebuffer=0, - ) - - -def generate_model_name(display: DisplayConfig) -> str: - """Generate human-readable model name from display configuration. - - Creates concise names based on physical dimensions and color capabilities. - Uses diagonal size in inches calculated from millimeter dimensions. - - Examples: - - "2.9\"" (monochrome 2.9" display) - - "7.5\" BWR" (7.5" color display) - - "800x480 BWR" (fallback when physical dimensions unavailable) - - Args: - display: DisplayConfig with physical and pixel dimensions - - Returns: - str: Human-readable model name - - Raises: - ConfigValidationError: If display dimensions are invalid - """ - import math - - # Validate pixel dimensions - if display.pixel_width <= 0 or display.pixel_height <= 0: - raise ConfigValidationError( - translation_domain=DOMAIN, - translation_key="tlv_invalid_dimensions", - translation_placeholders={ - "width": str(display.pixel_width), - "height": str(display.pixel_height) - } - ) - - # Calculate diagonal size from physical dimensions (mm) - if display.active_width_mm > 0 and display.active_height_mm > 0: - diagonal_mm = math.sqrt( - display.active_width_mm ** 2 + display.active_height_mm ** 2 - ) - diagonal_inches = diagonal_mm / 25.4 - size_str = f"{diagonal_inches:.1f}\"" - else: - # Fallback if physical dimensions not available - # Use pixel dimensions as identifier - size_str = f"{display.pixel_width}x{display.pixel_height}" - - # Add color capability suffix - scheme = _color_scheme_from_value(display.color_scheme) - if scheme is None: - color_suffix = f" color={display.color_scheme}" - elif scheme is ColorScheme.MONO: - color_suffix = " BW" - else: - color_suffix = f" {scheme.name}" - - # Build model name: "7.5\" BWR" or "800x480 BWR" - model_name = f"{size_str}{color_suffix}" - - return model_name - - -def encode_tlv_config(config: GlobalConfig) -> bytes: - """Encode GlobalConfig to TLV binary format (for future write support). - - NOT IMPLEMENTED YET - reserved for future config management features. - - Args: - config: Configuration to encode - - Returns: - bytes: Complete TLV config binary data - - Raises: - NotImplementedError: This function is not yet implemented - """ - raise NotImplementedError("Config encoding not yet implemented") - - -def config_to_dict(config: GlobalConfig) -> dict[str, Any]: - """Convert GlobalConfig to JSON-serializable dictionary. - - Converts the complete OpenDisplay configuration structure to a nested dictionary - that can be stored in Home Assistant config entries. Bytes fields are - converted to hex strings for serialization. - - Args: - config: GlobalConfig instance to convert - - Returns: - dict: JSON-serializable nested dictionary representation - """ - def _convert_bytes(obj: Any) -> Any: - """Recursively convert bytes objects to hex strings.""" - if isinstance(obj, bytes): - return obj.hex() - elif isinstance(obj, dict): - return {k: _convert_bytes(v) for k, v in obj.items()} - elif isinstance(obj, list): - return [_convert_bytes(item) for item in obj] - else: - return obj - - # Convert dataclass to dict, then convert all bytes fields - config_dict = asdict(config) - return _convert_bytes(config_dict) diff --git a/custom_components/opendisplay/button.py b/custom_components/opendisplay/button.py deleted file mode 100644 index ec2c4bd..0000000 --- a/custom_components/opendisplay/button.py +++ /dev/null @@ -1,587 +0,0 @@ -PARALLEL_UPDATES = 1 - -from dataclasses import dataclass - -from homeassistant.components.button import ButtonEntity, ButtonEntityDescription -from homeassistant.core import HomeAssistant -from homeassistant.exceptions import HomeAssistantError -from homeassistant.helpers.dispatcher import async_dispatcher_connect -from homeassistant.helpers.entity_platform import AddEntitiesCallback -from homeassistant.helpers.entity import EntityCategory -from homeassistant.helpers import device_registry as dr -from homeassistant.helpers import entity_registry as er -import logging - -from .ble import get_protocol_by_name -from .entity import OpenDisplayTagEntity, OpenDisplayAPEntity, OpenDisplayBLEEntity -from .runtime_data import OpenDisplayConfigEntry -from .tag_types import get_tag_types_manager -from .util import is_ble_entry -from .const import DOMAIN - -_LOGGER = logging.getLogger(__name__) - - -def _compare_configs(old: any, new: any, path: str = "") -> list[tuple[str, any, any]]: - """Recursively compare two configs and return a list of changes. - - Compares two configuration structures (dicts, lists, or values) and identifies - all fields that have changed between them. Handles nested structures by building - dot-notation paths (e.g., "power.power_mode") and list indices (e.g., "displays[0].width"). - - Args: - old: Old configuration value (dict, list, or primitive) - new: New configuration value (dict, list, or primitive) - path: Current path in the configuration tree (used for recursion) - - Returns: - List of tuples: (field_path, old_value, new_value) for each changed field - """ - changes = [] - - # Handle None cases - if old is None and new is None: - return changes - if old is None: - changes.append((path or "root", None, new)) - return changes - if new is None: - changes.append((path or "root", old, None)) - return changes - - # If types differ, treat as changed value - if type(old) is not type(new): - changes.append((path or "root", old, new)) - return changes - - # Handle dict comparison - if isinstance(old, dict) and isinstance(new, dict): - all_keys = set(old.keys()) | set(new.keys()) - for key in all_keys: - new_path = f"{path}.{key}" if path else key - - if key not in old: - # Key added - changes.append((new_path, None, new[key])) - elif key not in new: - # Key removed - changes.append((new_path, old[key], None)) - else: - # Key exists in both, recurse - changes.extend(_compare_configs(old[key], new[key], new_path)) - return changes - - # Handle list comparison - if isinstance(old, list) and isinstance(new, list): - max_len = max(len(old), len(new)) - for i in range(max_len): - new_path = f"{path}[{i}]" if path else f"[{i}]" - - if i >= len(old): - # Item added - changes.append((new_path, None, new[i])) - elif i >= len(new): - # Item removed - changes.append((new_path, old[i], None)) - else: - # Item exists in both, recurse - changes.extend(_compare_configs(old[i], new[i], new_path)) - return changes - - # Handle primitive values (str, int, float, bool, bytes) - if old != new: - changes.append((path or "root", old, new)) - - return changes - - -def _format_value(value: any) -> str: - """Format a configuration value for logging. - - Converts configuration values to human-readable strings for log output. - Handles special cases like None, bytes, and large nested structures. - - Args: - value: Configuration value to format - - Returns: - Formatted string representation of the value - """ - if value is None: - return "None" - if isinstance(value, bytes): - # Show hex for bytes, truncate if too long - hex_str = value.hex() - return f"0x{hex_str[:16]}..." if len(hex_str) > 16 else f"0x{hex_str}" - if isinstance(value, (dict, list)): - # For complex structures, show type and length - if isinstance(value, dict): - return f"{{...}} ({len(value)} keys)" - return f"[...] ({len(value)} items)" - # For primitives, just convert to string - return str(value) - - -async def async_setup_entry(hass: HomeAssistant, entry: OpenDisplayConfigEntry, - async_add_entities: AddEntitiesCallback) -> None: - """Set up button entities from a config entry. - - Creates button entities based on device type: - - For BLE devices: - - Set clock mode button - - Disable clock mode button - - For AP devices and tags: - - Clear pending updates button - - Force refresh button - - Reboot tag button - - Scan channels button - - Deep sleep button - - Reboot AP button - - Refresh tag types button - - Also sets up listeners for new tag discovery and blacklist updates - to dynamically add and remove buttons as needed. - - Args: - hass: Home Assistant instance - entry: Configuration entry - async_add_entities: Callback to register new entities - """ - entry_data = entry.runtime_data - - # Check if this is a BLE device - is_ble_device = is_ble_entry(entry_data) - - if is_ble_device: - # BLE device setup - create clock mode buttons - mac_address = entry_data.mac_address - name = entry_data.name - device_metadata = entry_data.device_metadata - protocol_type = entry_data.protocol_type # Default to ATC for backward compatibility - - ble_buttons = [] - - # Add refresh config button for OpenDisplay devices only - if protocol_type == "open_display": - ble_buttons.append( - RefreshConfigButton(mac_address, name, device_metadata, protocol_type, entry) - ) - - async_add_entities(ble_buttons) - return - - # AP device setup (original logic) - hub = entry_data - - # Track added tags to prevent duplicates - added_tags = set() - - async def async_add_tag_buttons(tag_mac: str) -> None: - """Add buttons for a newly discovered tag. - - Creates and registers button entities for a specific tag: - - - Clear pending updates button - - Force refresh button - - Reboot tag button - - Scan channels button - - Deep sleep button - - This function is called both during initial setup for existing - tags and dynamically when new tags are discovered. - - The function includes deduplication logic to prevent creating - multiple button sets for the same tag, and filtering to avoid - creating buttons for blacklisted tags. - - Args: - tag_mac: MAC address of the tag to create buttons for - """ - - # Skip if tag is blacklisted - if tag_mac in hub.get_blacklisted_tags(): - _LOGGER.debug("Skipping button creation for blacklisted tag: %s", tag_mac) - return - - if tag_mac in added_tags: - return - - added_tags.add(tag_mac) - new_buttons = [ - OpenDisplayTagButton(hass, tag_mac, hub, description) - for description in TAG_BUTTON_TYPES - ] - async_add_entities(new_buttons) - - # Add buttons for existing tags - for tag_mac in hub.tags: - await async_add_tag_buttons(tag_mac) - - # Add AP-level buttons - async_add_entities([ - RebootAPButton(hass, hub), - RefreshTagTypesButton(hass, hub), - ]) - - # Listen for new tag discoveries - entry.async_on_unload( - async_dispatcher_connect( - hass, - f"{DOMAIN}_tag_discovered", - async_add_tag_buttons - ) - ) - - # Listen for blacklist updates - async def handle_blacklist_update() -> None: - """Handle blacklist updates by removing buttons for blacklisted tags. - - When tags are added to the blacklist, this removes their - associated button entities and devices from Home Assistant. - - This ensures that blacklisted tags don't appear in the UI - and don't consume resources in Home Assistant. - """ - # Get all buttons registered for this entry - device_registry = dr.async_get(hass) - entity_registry = er.async_get(hass) - - # Track which devices need to be removed - devices_to_remove = set() - - # Find and remove entities for blacklisted tags - entities_to_remove = [] - for entity in entity_registry.entities.values(): - if entity.config_entry_id == entry.entry_id: - # Check if this entity belongs to a blacklisted tag - device = device_registry.async_get(entity.device_id) if entity.device_id else None - if device: - for identifier in device.identifiers: - if identifier[0] == DOMAIN and identifier[1] in hub.get_blacklisted_tags(): - entities_to_remove.append(entity.entity_id) - # Add device to removal list - devices_to_remove.add(device.id) - break - - # Remove the entities - for entity_id in entities_to_remove: - entity_registry.async_remove(entity_id) - _LOGGER.debug("Removed entity %s for blacklisted tag", entity_id) - - # Remove the devices - for device_id in devices_to_remove: - device_registry.async_remove_device(device_id) - _LOGGER.debug("Removed device %s for blacklisted tag", device_id) - - entry.async_on_unload( - async_dispatcher_connect( - hass, - f"{DOMAIN}_blacklist_update", - handle_blacklist_update - ) - ) - - -@dataclass(frozen=True, kw_only=True) -class OpenDisplayTagButtonDescription(ButtonEntityDescription): - """Describes an OpenDisplay tag button.""" - command: str - - -TAG_BUTTON_TYPES: tuple[OpenDisplayTagButtonDescription, ...] = ( - OpenDisplayTagButtonDescription( - key="clear_pending", - translation_key="clear_pending", - entity_category=EntityCategory.DIAGNOSTIC, - command="clear", - entity_registry_enabled_default=True - ), - OpenDisplayTagButtonDescription( - key="force_refresh", - translation_key="force_refresh", - entity_category=EntityCategory.DIAGNOSTIC, - command="refresh", - entity_registry_enabled_default=True - ), - OpenDisplayTagButtonDescription( - key="reboot_tag", - translation_key="reboot_tag", - entity_category=EntityCategory.DIAGNOSTIC, - command="reboot", - ), - OpenDisplayTagButtonDescription( - key="scan_channels", - translation_key="scan_channels", - entity_category=EntityCategory.DIAGNOSTIC, - command="scan", - ), - OpenDisplayTagButtonDescription( - key="deep_sleep", - translation_key="deep_sleep", - entity_category=EntityCategory.DIAGNOSTIC, - command="deepsleep", - ), -) - - -class OpenDisplayTagButton(OpenDisplayTagEntity, ButtonEntity): - """Generic tag button entity.""" - - entity_description: OpenDisplayTagButtonDescription - - def __init__(self, hass: HomeAssistant, tag_mac: str, hub, description: OpenDisplayTagButtonDescription) -> None: - """Initialize the button entity.""" - super().__init__(hub, tag_mac) - self.hass = hass - self._entity_id = f"{DOMAIN}.{tag_mac}" - self.entity_description = description - self._attr_unique_id = f"{tag_mac}_{description.key}" - - async def async_press(self) -> None: - """Handle the button press.""" - await self._hub.send_tag_cmd(self._entity_id, self.entity_description.command) - - -class RebootAPButton(OpenDisplayAPEntity, ButtonEntity): - """Button to reboot the Access Point.""" - - _attr_entity_registry_enabled_default = True - - def __init__(self, hass: HomeAssistant, hub) -> None: - """Initialize the button entity.""" - super().__init__(hub) - self.hass = hass - self._attr_translation_key = "reboot_ap" - self._attr_unique_id = f"{hub.entry.entry_id}_reboot_ap" - - async def async_press(self) -> None: - """Handle the button press.""" - await self._hub.reboot_ap() - - -class RefreshTagTypesButton(OpenDisplayAPEntity, ButtonEntity): - """Button to manually refresh tag types from GitHub.""" - - def __init__(self, hass: HomeAssistant, hub) -> None: - """Initialize the button entity.""" - super().__init__(hub) - self._hass = hass - self._attr_translation_key = "refresh_tag_types" - self._attr_unique_id = f"{hub.entry.entry_id}_refresh_tag_types" - self._attr_entity_category = EntityCategory.DIAGNOSTIC - - async def async_press(self) -> None: - """Handle the button press. - - Triggers a refresh of tag type definitions from GitHub - and displays a notification with the result. - - The refresh process: - - 1. Clears the cache timestamp to force a new GitHub fetch - 2. Calls the tag types manager to load the latest definitions - 3. Shows a notification with the number of tag types loaded - """ - manager = await get_tag_types_manager(self._hass) - # Force a refresh by clearing the last update timestamp - manager._last_update = None - await manager.ensure_types_loaded() - tag_types_len = len(manager.get_all_types()) - message = f"Successfully refreshed {tag_types_len} tag types from GitHub" - await self.hass.services.async_call( - "persistent_notification", - "create", - { - "title": "Tag Types Refreshed", - "message": message, - "notification_id": "tag_types_refresh_notification", - }, - ) - - -class RefreshConfigButton(OpenDisplayBLEEntity, ButtonEntity): - """ - Button to refresh OpenDisplay device configuration. - - Creates a button entity that re-interrogates an OpenDisplay device to fetch - updated configuration and update the device metadata in Home Assistant. - This is useful when the device configuration has been changed externally. - """ - - _attr_entity_registry_enabled_default = True - - def __init__(self, - mac_address: str, - name: str, - device_metadata: dict, - protocol_type: str, - entry: OpenDisplayConfigEntry - ) -> None: - """Initialize the button entity. - - Args: - mac_address: MAC address of the BLE device - name: Human-readable name for the device - device_metadata: Device metadata dictionary - protocol_type: BLE protocol type (should be "open_display") - entry: Configuration entry for the device - """ - super().__init__(mac_address, name, entry) - - self._device_metadata = device_metadata - self._entry_id = entry.entry_id - self._protocol_type = protocol_type - self._attr_translation_key = "refresh_config" - self._attr_unique_id = f"ble_{mac_address}_refresh_config" - self._attr_entity_category = EntityCategory.DIAGNOSTIC - - # Get protocol handler for service UUID - self._protocol = get_protocol_by_name(protocol_type) - self._service_uuid = self._protocol.service_uuid - - async def async_press(self) -> None: - """Re-interrogate device and update configuration.""" - from .ble import BLEConnection, get_protocol_by_name - from .ble.tlv_parser import config_to_dict, generate_model_name - from homeassistant.helpers import device_registry as dr - - _LOGGER.info("Refreshing configuration for OpenDisplay device %s", self._mac_address) - - try: - # Get protocol handler - protocol = get_protocol_by_name(self._protocol_type) - fw_info = None - - # Connect and interrogate device - async with BLEConnection(self.hass, self._mac_address, self._service_uuid, protocol) as conn: - capabilities = await protocol.interrogate_device(conn) - try: - fw_info = await protocol.read_firmware_version(conn) - except Exception as fw_err: - _LOGGER.warning( - "Failed to read firmware version for %s: %s", - self._mac_address, - fw_err, - ) - - if not capabilities: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="config_flow_invalid_config" - ) - - # Get updated config from protocol - config = protocol._last_config - - if not config: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="config_flow_missing_config" - ) - - # Store complete OpenDisplay config - new_metadata = { - "open_display_config": config_to_dict(config), - } - if fw_info: - new_metadata["fw_version"] = fw_info.get("version") - new_metadata["fw_version_raw"] = fw_info.get("raw") - if fw_info.get("sha"): - new_metadata["fw_sha"] = fw_info["sha"] - elif "fw_version" in self._device_metadata: - # Preserve the previously known firmware version if read fails - new_metadata["fw_version"] = self._device_metadata.get("fw_version") - if "fw_version_raw" in self._device_metadata: - new_metadata["fw_version_raw"] = self._device_metadata.get("fw_version_raw") - if "fw_sha" in self._device_metadata: - new_metadata["fw_sha"] = self._device_metadata.get("fw_sha") - - # Generate and store model name - if config.displays: - model_name = generate_model_name(config.displays[0]) - new_metadata["model_name"] = model_name - else: - model_name = self._device_metadata.get('model_name', 'Unknown') - new_metadata["model_name"] = model_name - - # Log configuration changes - old_config = self._device_metadata.get("open_display_config", {}) - new_config_data = new_metadata.get("open_display_config", {}) - - if old_config != new_config_data: - changes = _compare_configs(old_config, new_config_data) - - if changes: - # Build complete log message as multi-line string - log_lines = [f"Configuration changes for {self._mac_address}:"] - - # Group changes by top-level section - sections = {} - for field_path, old_val, new_val in changes: - section = field_path.split('.')[0].split('[')[0] - if section not in sections: - sections[section] = [] - sections[section].append((field_path, old_val, new_val)) - - # Build section change lines - for section in ["power", "displays", "leds", "sensors", "buses", "inputs", "system", - "manufacturer"]: - if section in sections: - log_lines.append(f" {section.title()}:") - for field_path, old_val, new_val in sections[section]: - # Format values for readability - old_str = _format_value(old_val) - new_str = _format_value(new_val) - log_lines.append(f" {field_path}: {old_str} → {new_str}") - - # Log complete message in a single statement - _LOGGER.info("\n".join(log_lines)) - else: - _LOGGER.info("No configuration changes for %s", self._mac_address) - - # Update config entry (persisted data) - self.hass.config_entries.async_update_entry( - self._entry, - data={**self._entry.data, "device_metadata": new_metadata} - ) - - # Update runtime_data so existing entities pick up new metadata - self._entry.runtime_data.device_metadata = new_metadata - self._device_metadata = new_metadata - - # Update device registry attributes - device_registry = dr.async_get(self.hass) - device = device_registry.async_get_device( - identifiers={(DOMAIN, f"ble_{self._mac_address}")} - ) - - if device: - sw_version = fw_info.get("version") if fw_info else device.sw_version - device_registry.async_update_device( - device.id, - hw_version=f"{capabilities.width}x{capabilities.height}", - model=model_name, - sw_version=str(sw_version) if sw_version else None, - ) - - # Remove entities that will become invalid with the new config - from . import async_remove_invalid_ble_entities - removed = await async_remove_invalid_ble_entities(self.hass, self._entry, new_metadata) - if removed: - _LOGGER.info("Removed invalid entities: %s", removed) - - # Reload integration to re-create entities based on the new config - _LOGGER.info("Reloading integration to apply config changes for %s", self._mac_address) - await self.hass.config_entries.async_reload(self._entry_id) - - _LOGGER.info("Successfully refreshed configuration for %s", self._mac_address) - - except Exception as e: - _LOGGER.error("Failed to refresh configuration for %s: %s", self._mac_address, e) - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="refresh_config_failed", - translation_placeholders={"error": str(e)}, - ) from e diff --git a/custom_components/opendisplay/config_flow.py b/custom_components/opendisplay/config_flow.py index 9c73192..bcd93e4 100644 --- a/custom_components/opendisplay/config_flow.py +++ b/custom_components/opendisplay/config_flow.py @@ -1,676 +1,240 @@ """Config flow for OpenDisplay integration.""" -from __future__ import annotations -from typing import Any, Final, Mapping -import asyncio +from collections.abc import Mapping +import logging +from typing import TYPE_CHECKING, Any -import aiohttp -import voluptuous as vol -from habluetooth.models import BluetoothServiceInfoBleak -from homeassistant import config_entries -from homeassistant.config_entries import ConfigEntry, OptionsFlow, ConfigFlowResult -from homeassistant.const import CONF_HOST -from homeassistant.core import callback -from homeassistant.data_entry_flow import FlowResult -from homeassistant.helpers.service_info.dhcp import DhcpServiceInfo -from homeassistant.helpers import selector -from homeassistant.helpers.aiohttp_client import async_get_clientsession -from homeassistant.helpers.selector import TextSelectorType - -from .const import DOMAIN -from .ble import ( - get_protocol_by_manufacturer_id, - BLEConnection, - UnsupportedProtocolError, - ConfigValidationError, +from opendisplay import ( + MANUFACTURER_ID, + AuthenticationFailedError, + AuthenticationRequiredError, BLEConnectionError, - BLEProtocolError, + OpenDisplayDevice, + OpenDisplayError, ) -from .tag_types import get_tag_types_manager, get_hw_string -from .util import is_ble_entry -import logging - -_LOGGER: Final = logging.getLogger(__name__) +import voluptuous as vol -STEP_USER_DATA_SCHEMA = vol.Schema( - { - vol.Required(CONF_HOST): str, - } +from homeassistant.components.bluetooth import ( + BluetoothServiceInfoBleak, + async_ble_device_from_address, + async_discovered_service_info, ) +from homeassistant.config_entries import ConfigFlow, ConfigFlowResult +from homeassistant.const import CONF_ADDRESS +from .const import CONF_ENCRYPTION_KEY, DOMAIN -def _format_ble_protocol_label(protocol_type: str) -> str: - """Return a user-facing label for a BLE protocol.""" - if protocol_type == "open_display": - return "OpenDisplay (OD)" - if protocol_type == "atc": - return "OEPL / ATC" - return protocol_type - +_LOGGER = logging.getLogger(__name__) -class ConfigFlow(config_entries.ConfigFlow, domain=DOMAIN): - """Handle a config flow for OpenDisplay. - Implements the flow for initial integration setup. - The flow validates that the provided AP host is reachable and responds - correctly before creating a configuration entry. +_ENCRYPTION_KEY_VALIDATOR = vol.All(str.strip, str.lower, vol.Match(r"^[0-9a-f]{32}$")) - The class stores connection state throughout the flow steps to maintain - context between user interactions. - """ - VERSION = 1 +class OpenDisplayConfigFlow(ConfigFlow, domain=DOMAIN): + """Handle a config flow for OpenDisplay.""" def __init__(self) -> None: - """Initialize flow.""" - self._host: str | None = None + """Initialize the config flow.""" self._discovery_info: BluetoothServiceInfoBleak | None = None - self._discovered_device: dict[str, Any] | None = {} - self._dhcp_discovery_info: DhcpServiceInfo | None = None + self._discovered_devices: dict[str, BluetoothServiceInfoBleak] = {} - def _bluetooth_description_placeholders( - self, - error: str | None = None, - ) -> dict[str, str]: - """Build placeholders for the Bluetooth confirmation dialog.""" - device = self._discovered_device - advertised_details = "" - if device["protocol_type"] == "atc": - battery = f"{device['battery_mv']/1000:.2f}V" if device["battery_mv"] > 0 else "Unknown" - fw_version = str(device["fw_version"]) if device["fw_version"] > 0 else "Unknown" - config_version = str(device["version"]) if device["version"] > 0 else "Unknown" - advertised_details = ( - f"\n- Battery: {battery}" - f"\n- Firmware: {fw_version}" - f"\n- Config Version: {config_version}" - ) + async def _async_test_connection( + self, address: str, encryption_key: bytes | None = None + ) -> None: + """Connect to the device and verify it responds.""" + ble_device = async_ble_device_from_address(self.hass, address, connectable=True) + if ble_device is None: + raise BLEConnectionError(f"Could not find connectable device for {address}") - placeholders = { - "name": device["name"], - "device_type": device["protocol_display"], - "address": device["address"], - "rssi": str(device["rssi"]), - "advertised_details": advertised_details, - } - if error is not None: - placeholders["error"] = error - return placeholders - - async def _validate_input(self, host: str) -> tuple[dict[str, str], str | None]: - """Validate the user input allows us to connect. - - Data has the keys from STEP_USER_DATA_SCHEMA with values provided by the user. - """ - errors = {} - - # Remove any http:// or https:// prefix - host = host.replace("http://", "").replace("https://", "") - # Remove any trailing slashes - host = host.rstrip("/") + async with OpenDisplayDevice( + mac_address=address, ble_device=ble_device, encryption_key=encryption_key + ) as device: + await device.read_firmware_version() + + async def async_step_bluetooth( + self, discovery_info: BluetoothServiceInfoBleak + ) -> ConfigFlowResult: + """Handle the Bluetooth discovery step.""" + await self.async_set_unique_id(discovery_info.address) + self._abort_if_unique_id_configured() + self._discovery_info = discovery_info + self.context["title_placeholders"] = {"name": discovery_info.name} try: - session = async_get_clientsession(self.hass) - async with asyncio.timeout(10): - async with session.get(f"http://{host}") as response: - if response.status != 200: - errors["base"] = "cannot_connect" - else: - # Store version info for later display - self._host = host - return {"title": f"OEPL AP ({host})"}, None + await self._async_test_connection(discovery_info.address) + except AuthenticationRequiredError: + return await self.async_step_encryption_key() + except OpenDisplayError: + return self.async_abort(reason="cannot_connect") + except Exception: + _LOGGER.exception("Unexpected error") + return self.async_abort(reason="unknown") - except asyncio.TimeoutError: - errors["base"] = "timeout" - except aiohttp.ClientError: - errors["base"] = "cannot_connect" - except Exception: # pylint: disable=broad-except - _LOGGER.exception("Unexpected exception") - errors["base"] = "unknown" + return await self.async_step_bluetooth_confirm() + + async def async_step_bluetooth_confirm( + self, user_input: dict[str, Any] | None = None + ) -> ConfigFlowResult: + """Confirm discovery.""" + assert self._discovery_info is not None + + if user_input is None: + self._set_confirm_only() + return self.async_show_form( + step_id="bluetooth_confirm", + description_placeholders=self.context["title_placeholders"], + ) - return {}, errors.get("base", "unknown") + return self.async_create_entry(title=self._discovery_info.name, data={}) async def async_step_user( - self, user_input: dict[str, Any] | None = None - ): - """Handle the initial step of the config flow. - - Presents a form for the user to enter the AP host address, - validates the connection, and creates a config entry if successful. - - Args: - user_input: User-provided configuration data, or None if the - form is being shown for the first time - - Returns: - FlowResult: Result of the flow step, either showing the form - again (with errors if applicable) or creating an entry - """ - # Check for existing AP hub entries immediately (before showing form) - for entry_id, entry_data in self.hass.data.get(DOMAIN, {}).items(): - if not is_ble_entry(entry_data): # This is an AP (Hub object) - return self.async_abort(reason="single_instance_allowed") - + self, user_input: dict[str, Any] | None = None + ) -> ConfigFlowResult: + """Handle the user step to pick discovered device.""" errors: dict[str, str] = {} if user_input is not None: - info, error = await self._validate_input(user_input[CONF_HOST]) - if not error: - await self.async_set_unique_id(self._host) - self._abort_if_unique_id_configured() + address = user_input[CONF_ADDRESS] + await self.async_set_unique_id(address, raise_on_progress=False) + self._abort_if_unique_id_configured() + try: + await self._async_test_connection(address) + except AuthenticationRequiredError: + self.context["title_placeholders"] = { + "name": self._discovered_devices[address].name + } + return await self.async_step_encryption_key() + except OpenDisplayError: + errors["base"] = "cannot_connect" + except Exception: + _LOGGER.exception("Unexpected error") + errors["base"] = "unknown" + else: return self.async_create_entry( - title=info["title"], - data={CONF_HOST: self._host} + title=self._discovered_devices[address].name, + data={}, ) - - errors["base"] = error + else: + current_addresses = self._async_current_ids(include_ignore=False) + for discovery_info in async_discovered_service_info(self.hass): + address = discovery_info.address + if address in current_addresses or address in self._discovered_devices: + continue + if MANUFACTURER_ID in discovery_info.manufacturer_data: + self._discovered_devices[address] = discovery_info + + if not self._discovered_devices: + return self.async_abort(reason="no_devices_found") return self.async_show_form( step_id="user", - data_schema=STEP_USER_DATA_SCHEMA, - errors=errors, - ) - - async def async_step_reconfigure( - self, user_input: dict[str, Any] | None = None - ): - """Handle reconfiguration of the AP host.""" - entry = self._get_reconfigure_entry() - - # BLE entries do not expose reconfiguration - if entry.data.get("device_type") == "ble": - return self.async_abort(reason="no_reconfigure_ble") - - errors: dict[str, str] = {} - - if user_input is not None: - info, error = await self._validate_input(user_input[CONF_HOST]) - if not error: - return self.async_update_reload_and_abort( - entry, - unique_id=self._host, - title=info.get("title"), - data_updates={CONF_HOST: self._host}, - ) - errors["base"] = error - - return self.async_show_form( - step_id="reconfigure", data_schema=vol.Schema( { - vol.Required( - CONF_HOST, - default=entry.data.get(CONF_HOST, ""), - ): str + vol.Required(CONF_ADDRESS): vol.In( + { + addr: f"{info.name} ({addr})" + for addr, info in self._discovered_devices.items() + } + ) } ), errors=errors, ) - async def async_step_bluetooth( - self, discovery_info: BluetoothServiceInfoBleak - ): - """Handle bluetooth discovery.""" - _LOGGER.debug("BLE Discovery - Name: '%s', Address: %s", - discovery_info.name, discovery_info.address) - - await self.async_set_unique_id(f"opendisplay_ble_{discovery_info.address}") - self._abort_if_unique_id_configured() - - self._discovery_info = discovery_info - - # Detect protocol from manufacturer data - manufacturer_id = None - manufacturer_data = b'' - - # Check for known manufacturer IDs (ATC: 4919, OpenDisplay: 9286) - for mfg_id, mfg_data in discovery_info.manufacturer_data.items(): - if mfg_id in (4919, 9286): - manufacturer_id = mfg_id - manufacturer_data = mfg_data - break - - if manufacturer_id is None: - _LOGGER.error("No supported manufacturer ID found in advertising data") - return self.async_abort(reason="unsupported_protocol") - - # Get protocol handler - try: - protocol = get_protocol_by_manufacturer_id(manufacturer_id) - _LOGGER.debug("Detected protocol: %s (manufacturer ID: 0x%04X)", - protocol.protocol_name, manufacturer_id) - except UnsupportedProtocolError: - _LOGGER.error("Unsupported manufacturer ID: 0x%04X", manufacturer_id) - return self.async_abort(reason="unsupported_protocol") - - # Parse advertising data using protocol-specific parser + async def _async_try_connection( + self, + address: str, + encryption_key: bytes | None, + errors: dict[str, str], + ) -> bool: + """Test connection, populate errors, and return True on success.""" try: - advertising_data = protocol.parse_advertising_data(manufacturer_data) - if not advertising_data: - raise ValueError("Failed to parse advertising data") - except Exception as e: - _LOGGER.error("Failed to parse advertising data: %s", e) - return self.async_abort(reason="invalid_advertising_data") - - device_name = discovery_info.name or f"OpenDisplay_BLE_{discovery_info.address[-8:].replace(':', '')}" - - self._discovered_device = { - "address": discovery_info.address, - "name": device_name, - "rssi": discovery_info.rssi, - "hw_type": advertising_data.hw_type, - "battery_mv": advertising_data.battery_mv, - "fw_version": advertising_data.fw_version, - "version": advertising_data.version, - "protocol_type": protocol.protocol_name, # Store protocol type - "protocol_display": _format_ble_protocol_label(protocol.protocol_name), - } - _LOGGER.debug("Discovered device info: %s", self._discovered_device) - - # Set discovery context for proper display in UI - self.context["title_placeholders"] = { - "name": self._discovered_device["name"], - } + await self._async_test_connection(address, encryption_key) + except AuthenticationFailedError, AuthenticationRequiredError: + errors[CONF_ENCRYPTION_KEY] = "invalid_auth" + except OpenDisplayError: + errors["base"] = "cannot_connect" + except Exception: + _LOGGER.exception("Unexpected error") + errors["base"] = "unknown" + else: + return True + return False - return await self.async_step_bluetooth_confirm() + async def async_step_encryption_key( + self, user_input: dict[str, Any] | None = None + ) -> ConfigFlowResult: + """Handle the encryption key step.""" + errors: dict[str, str] = {} + name: str = self.context["title_placeholders"]["name"] - async def async_step_bluetooth_confirm( - self, user_input: dict[str, Any] | None = None - ): - """Confirm discovery of Bluetooth device.""" if user_input is not None: - - # Perform device interrogation to get real metadata - _LOGGER.debug("Interrogating device %s for metadata", self._discovered_device["address"]) - try: - # Get protocol handler for this device - protocol = get_protocol_by_manufacturer_id( - 9286 if self._discovered_device["protocol_type"] == "open_display" else 4919 - ) - - # Interrogate device using protocol-specific method - fw_info: dict[str, Any] | None = None - - async with BLEConnection( - self.hass, - self._discovered_device["address"], - protocol.service_uuid, - protocol - ) as conn: - capabilities = await protocol.interrogate_device(conn) - # OpenDisplay devices expose firmware version via 0x0043 - if self._discovered_device["protocol_type"] == "open_display": - try: - fw_info = await protocol.read_firmware_version(conn) - except Exception as fw_err: - _LOGGER.warning( - "Failed to read firmware version for %s: %s", - self._discovered_device["address"], - fw_err, - ) - - _LOGGER.debug("Device capabilities: %s", capabilities) - - # Interrogation must succeed - no fallback - if not capabilities: - raise ConfigValidationError( - translation_domain=DOMAIN, - translation_key="config_flow_invalid_config" + key: str = _ENCRYPTION_KEY_VALIDATOR(user_input[CONF_ENCRYPTION_KEY]) + except vol.Invalid: + errors[CONF_ENCRYPTION_KEY] = "invalid_key_format" + else: + if TYPE_CHECKING: + assert self.unique_id is not None + if await self._async_try_connection( + self.unique_id, bytes.fromhex(key), errors + ): + return self.async_create_entry( + title=name, + data={CONF_ENCRYPTION_KEY: key}, ) - # Generate model name based on protocol type - hw_type = self._discovered_device["hw_type"] - - if self._discovered_device["protocol_type"] == "open_display": - # OpenDisplay devices: Store complete config, generate model name from DisplayConfig - from .ble.tlv_parser import config_to_dict, generate_model_name - - if hasattr(protocol, '_last_config') and protocol._last_config: - # Store complete OpenDisplay config for future use - device_metadata = { - "open_display_config": config_to_dict(protocol._last_config), - } - if fw_info: - device_metadata["fw_version"] = fw_info.get("version") - device_metadata["fw_version_raw"] = fw_info.get("raw") - if fw_info.get("sha"): - device_metadata["fw_sha"] = fw_info["sha"] - - # Generate model name from display config - if protocol._last_config.displays: - model_name = generate_model_name(protocol._last_config.displays[0]) - device_metadata["model_name"] = model_name - _LOGGER.debug("Generated model name from config: %s", model_name) - else: - _LOGGER.warning("OpenDisplay config has no display config") - else: - # Fallback if config unavailable (shouldn't happen for OpenDisplay) - model_name = get_hw_string(hw_type) if hw_type else "Unknown" - _LOGGER.warning("OpenDisplay config unavailable, using tagtypes fallback: %s", model_name) - # Store individual fields as fallback - device_metadata = { - "hw_type": hw_type, - "fw_version": self._discovered_device["fw_version"], - "width": capabilities.width, - "height": capabilities.height, - "rotatebuffer": capabilities.rotatebuffer, - "color_scheme": capabilities.color_scheme, - "model_name": model_name, - } - else: - # ATC devices: Use tagtypes.json lookup and store individual fields - # Try to get tag types manager, but don't fail if unavailable - tag_types_manager = None - try: - tag_types_manager = await get_tag_types_manager(self.hass) - _LOGGER.debug("Tag types manager loaded successfully") - except Exception as tag_err: - _LOGGER.warning( - "Could not load tag types during config flow, will use fallback values: %s", - tag_err - ) - - model_name = get_hw_string(hw_type) if hw_type else "Unknown" - _LOGGER.debug("Resolved hw_type %s to model: %s", hw_type, model_name) - - # Refine color_scheme using TagTypes db if available - if tag_types_manager and tag_types_manager.is_in_hw_map(hw_type): - tag_type = await tag_types_manager.get_tag_info(hw_type) - color_table = tag_type.color_table - - if 'yellow' in color_table and 'red' in color_table: - color_scheme = 3 # BWRY - elif 'yellow' in color_table: - color_scheme = 2 # BWY - elif 'red' in color_table: - color_scheme = 1 # BWR - else: - color_scheme = 0 # BW - else: - # Fallback to protocol detection - color_scheme = capabilities.color_scheme - if not tag_types_manager: - _LOGGER.info( - "Tag types not available, using protocol-detected color_scheme: %d", - color_scheme - ) - else: - _LOGGER.warning( - "hw_type %s not in TagTypes, using protocol color_scheme: %d", - hw_type, color_scheme - ) - - # Build device metadata from capabilities - device_metadata = { - "hw_type": hw_type, - "fw_version": self._discovered_device["fw_version"], - "width": capabilities.width, - "height": capabilities.height, - "rotatebuffer": capabilities.rotatebuffer, - "color_scheme": color_scheme, - "model_name": model_name, - } - - return self.async_create_entry( - title=self._discovered_device['name'], - data={ - "mac_address": self._discovered_device["address"], - "name": self._discovered_device["name"], - "device_metadata": device_metadata, - "device_type": "ble", - "protocol_type": self._discovered_device["protocol_type"], # Store protocol - "send_welcome_image": True, - } - ) - - except ConfigValidationError as e: - _LOGGER.error("Invalid device configuration: %s", e) - return self.async_show_form( - step_id="bluetooth_confirm", - errors={"base": "invalid_device_config"}, - description_placeholders=self._bluetooth_description_placeholders(), - ) - - except (BLEConnectionError, BLEProtocolError) as e: - _LOGGER.error("Error during device interrogation: %s", e) - return self.async_show_form( - step_id="bluetooth_confirm", - errors={"base": "interrogation_failed"}, - description_placeholders=self._bluetooth_description_placeholders(str(e)), - ) - - except Exception as e: - _LOGGER.error("Unexpected error during device interrogation: %s", e) - return self.async_show_form( - step_id="bluetooth_confirm", - errors={"base": "interrogation_failed"}, - description_placeholders=self._bluetooth_description_placeholders(str(e)), - ) - - # Build description placeholders from advertising data - description_placeholders = self._bluetooth_description_placeholders() - - return self.async_show_form( - step_id="bluetooth_confirm", - description_placeholders=description_placeholders, - ) - - async def async_step_dhcp( - self, discovery_info: DhcpServiceInfo - ): - """Handle DHCP discovery of OEPL AP.""" - _LOGGER.debug( - "DHCP Discovery - Hostname: '%s', IP: %s, MAC: %s", - discovery_info.hostname, - discovery_info.ip, - discovery_info.macaddress, - ) - - # Extract host IP from discovery info - host = discovery_info.ip - - # Check for existing AP entries in config entries - # AP entries have CONF_HOST in data, BLE entries have device_type - for entry in self._async_current_entries(): - if CONF_HOST in entry.data: - return self.async_abort(reason="single_instance_allowed") - - # Set unique_id to IP address (same as manual setup) - # This ensures DHCP and manual discoveries are treated as the same entry - await self.async_set_unique_id(host) - - # Check if this IP was already configured - self._abort_if_unique_id_configured() - - # Store discovery info for confirmation step - self._dhcp_discovery_info = discovery_info - self._host = host - - # Validate connectivity before showing confirmation - info, error = await self._validate_input(host) - - if error: - _LOGGER.warning( - "DHCP discovered AP at %s failed validation: %s", - host, - error, - ) - return self.async_abort(reason="cannot_connect") - - # Set discovery context for proper display in UI - self.context["title_placeholders"] = { - "name": f"OEPL AP ({host})", - } - - return await self.async_step_dhcp_confirm() - - async def async_step_dhcp_confirm( - self, user_input: dict[str, Any] | None = None - ): - """Confirm DHCP discovery of OEPL AP.""" - if user_input is not None: - # User confirmed - create the config entry - return self.async_create_entry( - title=f"OEPL AP ({self._host})", - data={CONF_HOST: self._host}, - ) - - # Build description placeholders for the confirmation form - description_placeholders = { - "hostname": self._dhcp_discovery_info.hostname, - "ip": self._host, - "mac": self._dhcp_discovery_info.macaddress, - } - return self.async_show_form( - step_id="dhcp_confirm", - description_placeholders=description_placeholders, + step_id="encryption_key", + data_schema=vol.Schema({vol.Required(CONF_ENCRYPTION_KEY): str}), + description_placeholders={"name": name}, + errors=errors, ) + async def async_step_reauth( + self, entry_data: Mapping[str, Any] + ) -> ConfigFlowResult: + """Handle re-authentication.""" + return await self.async_step_reauth_confirm() - @staticmethod - @callback - def async_get_options_flow(config_entry: ConfigEntry) -> OptionsFlow: - """Create the options flow handler. - - Returns an instance of the OptionsFlowHandler to manage the - integration's configuration options. - - Args: - config_entry: The current configuration entry - - Returns: - OptionsFlow: The options flow handler - """ - return OptionsFlowHandler() - -class OptionsFlowHandler(config_entries.OptionsFlow): - """Handle OpenDisplay integration options. - - Provides a UI for configuring integration options including: - - - Tag blacklisting to hide unwanted devices - - Button and NFC debounce intervals to prevent duplicate triggers - - Custom font directories for the image generation system - - The options flow fetches current tag data from the hub to - populate the selection fields with accurate information. - """ - - def __init__(self) -> None: - """Initialize options flow. - - The config_entry is now provided automatically by the base OptionsFlow class. - Option values will be extracted in async_step_init when needed. - """ - # Option values will be initialized when needed in async_step_init - self._blacklisted_tags = [] - self._button_debounce = 0.5 - self._nfc_debounce = 1.0 - self._custom_font_dirs = "" - - async def async_step_init(self, user_input=None): - """Manage OpenDisplay options. - - Presents a form with configuration options for the integration. - When submitted, updates the config entry with the new options. - - This step retrieves a list of available tags from the hub to - allow selection of tags to blacklist. - - Args: - user_input: User-provided input data, or None on first display - - Returns: - FlowResult: Flow result showing the form or saving options - """ - self._blacklisted_tags = self.config_entry.options.get("blacklisted_tags", []) - self._button_debounce = self.config_entry.options.get("button_debounce", 0.5) - self._nfc_debounce = self.config_entry.options.get("nfc_debounce", 1.0) - self._custom_font_dirs = self.config_entry.options.get("custom_font_dirs", "") - - # Check if this is a BLE device - entry_data = self.config_entry.runtime_data - is_ble_device = is_ble_entry(entry_data) - - if is_ble_device: - # BLE devices don't have configurable options - return self.async_abort(reason="no_options_ble") + async def async_step_reauth_confirm( + self, user_input: dict[str, Any] | None = None + ) -> ConfigFlowResult: + """Handle reauth confirmation.""" + reauth_entry = self._get_reauth_entry() + errors: dict[str, str] = {} if user_input is not None: - # Update blacklisted tags - return self.async_create_entry( - title="", - data={ - "blacklisted_tags": user_input.get("blacklisted_tags", []), - "button_debounce": user_input.get("button_debounce", 0.5), - "nfc_debounce": user_input.get("nfc_debounce", 1.0), - "custom_font_dirs": user_input.get("custom_font_dirs", ""), - } - ) - - # Get list of all known tags from the hub (AP devices only) - hub = entry_data - tags = [] - for tag_mac in hub.tags: - tag_data = hub.get_tag_data(tag_mac) - tag_name = tag_data.get("tag_name", tag_mac) - tags.append( - selector.SelectOptionDict( - value=tag_mac, - label=f"{tag_name} ({tag_mac})" - ) - ) + key: str | None = None + if user_input[CONF_ENCRYPTION_KEY].strip(): + try: + key = _ENCRYPTION_KEY_VALIDATOR(user_input[CONF_ENCRYPTION_KEY]) + except vol.Invalid: + errors[CONF_ENCRYPTION_KEY] = "invalid_key_format" + + if not errors: + address = reauth_entry.unique_id + if TYPE_CHECKING: + assert address is not None + if await self._async_try_connection( + address, bytes.fromhex(key) if key is not None else None, errors + ): + new_data = dict(reauth_entry.data) + if key is not None: + new_data[CONF_ENCRYPTION_KEY] = key + else: + new_data.pop(CONF_ENCRYPTION_KEY, None) + return self.async_update_reload_and_abort( + reauth_entry, + data=new_data, + ) return self.async_show_form( - step_id="init", - data_schema=vol.Schema({ - vol.Optional( - "blacklisted_tags", - default=self._blacklisted_tags, - ): selector.SelectSelector( - selector.SelectSelectorConfig( - options=tags, - multiple=True, - mode=selector.SelectSelectorMode.DROPDOWN - ) - ), - vol.Optional( - "button_debounce", - default=self._button_debounce, - ): selector.NumberSelector( - selector.NumberSelectorConfig( - min=0.0, - max=5.0, - step=0.1, - unit_of_measurement="s", - mode=selector.NumberSelectorMode.SLIDER - ) - ), - vol.Optional( - "nfc_debounce", - default=self._nfc_debounce, - ): selector.NumberSelector( - selector.NumberSelectorConfig( - min=0.0, - max=5.0, - step=0.1, - unit_of_measurement="s", - mode=selector.NumberSelectorMode.SLIDER - ) - ), - vol.Optional( - "custom_font_dirs", - default=self._custom_font_dirs, - description={ - "suggested_value": None - } - ): selector.TextSelector( - selector.TextSelectorConfig( - type=TextSelectorType.TEXT, - autocomplete="path" - ) - ), - }), + step_id="reauth_confirm", + data_schema=vol.Schema( + {vol.Optional(CONF_ENCRYPTION_KEY, default=""): str} + ), + description_placeholders={"name": reauth_entry.title}, + errors=errors, ) diff --git a/custom_components/opendisplay/const.py b/custom_components/opendisplay/const.py index 4f58b5d..664f7e8 100644 --- a/custom_components/opendisplay/const.py +++ b/custom_components/opendisplay/const.py @@ -1,112 +1,4 @@ -DOMAIN = "opendisplay" -SIGNAL_TAG_UPDATE = f"{DOMAIN}_tag_update" -SIGNAL_TAG_IMAGE_UPDATE = f"{DOMAIN}_tag_image_update" -SIGNAL_AP_UPDATE = f"{DOMAIN}_ap_update" -OPENDISPLAY_CONFIG_URL = "https://opendisplay.org/firmware/config/" -ATC_CONFIG_URL = "https://atc1441.github.io/ATC_BLE_OEPL_Image_Upload.html" +"""Constants for the OpenDisplay integration.""" -# Fallback tag type definitions -# These definitions are automatically synced from OpenEPaperLink repository -# See: https://github.com/OpenEPaperLink/OpenEPaperLink/tree/master/resources/tagtypes -FALLBACK_TAG_DEFINITIONS = { - 0: {"version": 4, "name": "M2 1.54\"", "width": 152, "height": 152}, - 1: {"version": 5, "name": "M2 2.9\"", "width": 296, "height": 128}, - 2: {"version": 5, "name": "M2 4.2\"", "width": 400, "height": 300}, - 3: {"version": 7, "name": "M2 2.2\"", "width": 212, "height": 104}, - 4: {"version": 4, "name": "M2 2.6\"", "width": 296, "height": 152}, - 5: {"version": 4, "name": "M2 7.4\"", "width": 640, "height": 384}, - 6: {"version": 4, "name": "Opticon 2.2\"", "width": 250, "height": 128}, - 7: {"version": 4, "name": "Opticon 2.9\"", "width": 296, "height": 128}, - 8: {"version": 2, "name": "Opticon 4.2\"", "width": 400, "height": 300}, - 9: {"version": 2, "name": "Opticon 7.5\"", "width": 640, "height": 384}, - 17: {"version": 3, "name": "M2 2.9\" (UC8151)", "width": 296, "height": 128}, - 18: {"version": 3, "name": "M2 4.2\" UC", "width": 400, "height": 300}, - 33: {"version": 2, "name": "ST‐GM29XXF 2.9\"", "width": 296, "height": 128}, - 34: {"version": 2, "name": "M2 2.7\"", "width": 264, "height": 176}, - 38: {"version": 1, "name": "M2 7.5\" BW", "width": 640, "height": 384}, - 39: {"version": 3, "name": "ST‐GM29MT1 2.9\"", "width": 296, "height": 128}, - 40: {"version": 2, "name": "M3 1.6\" BWRY", "width": 168, "height": 168}, - 41: {"version": 1, "name": "M3 2.4\" BWRY", "width": 296, "height": 168}, - 42: {"version": 1, "name": "M3 3.0\" BWRY", "width": 400, "height": 168}, - 43: {"version": 1, "name": "M3 2.9\" BWRY", "width": 384, "height": 168}, - 44: {"version": 1, "name": "M3 4.3\" BWRY", "width": 522, "height": 152}, - 45: {"version": 2, "name": "M3 12.2\"", "width": 960, "height": 768}, - 46: {"version": 5, "name": "M3 9.7\"", "width": 960, "height": 672}, - 47: {"version": 4, "name": "M3 4.3\"", "width": 522, "height": 152}, - 48: {"version": 2, "name": "M3 1.6\"", "width": 200, "height": 200}, - 49: {"version": 1, "name": "M3 2.2\"", "width": 296, "height": 160}, - 50: {"version": 1, "name": "M3 2.6\"", "width": 360, "height": 184}, - 51: {"version": 3, "name": "M3 2.9\"", "width": 384, "height": 168}, - 52: {"version": 2, "name": "M3 4.2\"", "width": 400, "height": 300}, - 53: {"version": 2, "name": "M3 6.0\"", "width": 600, "height": 448}, - 54: {"version": 5, "name": "M3 7.5\"", "width": 800, "height": 480}, - 55: {"version": 3, "name": "M3 11.6\"", "width": 960, "height": 640}, - 56: {"version": 1, "name": "M3 8.2\" BWRY", "width": 1024, "height": 576}, - 60: {"version": 4, "name": "M3 4.2\" BWY", "width": 400, "height": 300}, - 64: {"version": 1, "name": "M3 2.9\" BW", "width": 384, "height": 168}, - 65: {"version": 1, "name": "M3 5.85\"", "width": 792, "height": 272}, - 66: {"version": 1, "name": "M3 5.85\" BW", "width": 792, "height": 272}, - 67: {"version": 2, "name": "M3 1.3\" Peghook", "width": 144, "height": 200}, - 68: {"version": 2, "name": "M3 5.81\" BW", "width": 720, "height": 256}, - 69: {"version": 3, "name": "M3 2.2 Lite\"", "width": 250, "height": 128}, - 70: {"version": 1, "name": "M3 2.2\" BW", "width": 296, "height": 160}, - 71: {"version": 4, "name": "M3 2.7\"", "width": 300, "height": 200}, - 72: {"version": 1, "name": "M3 5.81\" BWR", "width": 720, "height": 256}, - 73: {"version": 2, "name": "M3 5.81\" V2 BWR", "width": 720, "height": 256}, - 74: {"version": 1, "name": "M3 1.6\" 200px BWRY", "width": 200, "height": 200}, - 75: {"version": 1, "name": "M3 2.2\" BWRY", "width": 296, "height": 160}, - 76: {"version": 1, "name": "M3 7.5\" BWRY", "width": 800, "height": 480}, - 77: {"version": 3, "name": "M3 11.6\" BWRY", "width": 960, "height": 640}, - 78: {"version": 2, "name": "M3 2.6\" BW", "width": 360, "height": 184}, - 79: {"version": 1, "name": "M3 2.6\" BWRY", "width": 360, "height": 184}, - 80: {"version": 4, "name": "HD150 5.83\" BWR", "width": 648, "height": 480}, - 83: {"version": 3, "name": "M3 3.5\" BWRY RTL", "width": 480, "height": 224}, - 84: {"version": 4, "name": "HS BW 2.13\"", "width": 256, "height": 128}, - 85: {"version": 5, "name": "HS BWR 2.13\"", "width": 256, "height": 128}, - 86: {"version": 6, "name": "HS BWR 2.66\"", "width": 296, "height": 152}, - 87: {"version": 3, "name": "TLSR BWR 1.54\"", "width": 200, "height": 200}, - 88: {"version": 3, "name": "TLSR BW 2.13\"", "width": 256, "height": 128}, - 89: {"version": 3, "name": "TLSR BWR 2.13\"", "width": 264, "height": 136}, - 90: {"version": 1, "name": "HS BW 2.13\" LowRes", "width": 212, "height": 104}, - 96: {"version": 6, "name": "HS BWY 3.5\"", "width": 384, "height": 184}, - 97: {"version": 4, "name": "HS BWR 3.5\"", "width": 384, "height": 184}, - 98: {"version": 4, "name": "HS BW 3.5\"", "width": 384, "height": 184}, - 99: {"version": 6, "name": "TLSR BWR 4.2\"", "width": 400, "height": 300}, - 102: {"version": 2, "name": "HS BWY 7,5\"", "width": 800, "height": 480}, - 103: {"version": 3, "name": "HS 2.00\" BWY", "width": 152, "height": 200}, - 104: {"version": 4, "name": "HS BWY 3.46\"", "width": 480, "height": 176}, - 105: {"version": 4, "name": "TLSR BW 2.13\"", "width": 250, "height": 136}, - 106: {"version": 1, "name": "HS BWR 5,83\"", "width": 648, "height": 480}, - 107: {"version": 3, "name": "HS BWRY 7,5\"", "width": 800, "height": 480}, - 108: {"version": 3, "name": "HS BWRY 2,00\"", "width": 152, "height": 200}, - 109: {"version": 3, "name": "HS BWRY 3,5\"", "width": 384, "height": 184}, - 110: {"version": 3, "name": "HS BWRY 2,9\"", "width": 296, "height": 128}, - 111: {"version": 2, "name": "HS BWRY 2,60\"", "width": 296, "height": 152}, - 112: {"version": 1, "name": "HS 2.9\" HighRes", "width": 384, "height": 168}, - 113: {"version": 1, "name": "HS 2.13\" BWR High Res", "width": 296, "height": 144}, - 128: {"version": 1, "name": "Chroma 7.4\"", "width": 640, "height": 384}, - 129: {"version": 2, "name": "Chroma Aeon 74 7.4\"", "width": 800, "height": 480}, - 130: {"version": 2, "name": "Chroma29 2.9\"", "width": 296, "height": 128}, - 131: {"version": 2, "name": "Chroma42 4.2\"", "width": 400, "height": 300}, - 144: {"version": 3, "name": "M3 4.2\" BWRY", "width": 400, "height": 300}, - 145: {"version": 1, "name": "M3 1.6\" 200px BWRY", "width": 200, "height": 200}, - 176: {"version": 5, "name": "Gicisky BLE EPD BW 2.13\"", "width": 250, "height": 128}, - 177: {"version": 5, "name": "Gicisky BLE EPD BWR 2.13\"", "width": 250, "height": 128}, - 178: {"version": 2, "name": "Gicisky BLE EPD BW 2.9\"", "width": 296, "height": 128}, - 179: {"version": 2, "name": "Gicisky BLE EPD BWR 2.9\"", "width": 296, "height": 128}, - 181: {"version": 2, "name": "Gicisky BLE EPD BWR 4.2\"", "width": 400, "height": 300}, - 186: {"version": 5, "name": "Gicisky BLE TFT 2.13\"", "width": 250, "height": 136}, - 189: {"version": 2, "name": "BLE EPD BWR 2.9\" Silabs", "width": 384, "height": 168}, - 190: {"version": 1, "name": "ATC MiThermometer BLE", "width": 6, "height": 8}, - 192: {"version": 2, "name": "BWRY example", "width": 360, "height": 184}, - 193: {"version": 1, "name": "ACeP 4.01", "width": 640, "height": 400}, - 194: {"version": 1, "name": "Spectra 7.3", "width": 800, "height": 480}, - 224: {"version": 2, "name": "TFT 320x172", "width": 320, "height": 172}, - 225: {"version": 2, "name": "TFT 160x80", "width": 160, "height": 80}, - 226: {"version": 1, "name": "LILYGO TPANEL 4\"", "width": 480, "height": 480}, - 227: {"version": 1, "name": "GDEM1085Z51 10.85\"", "width": 1360, "height": 480}, - 228: {"version": 1, "name": "BLE TFT 128x128", "width": 128, "height": 128}, - 229: {"version": 1, "name": "TFT 240x320", "width": 320, "height": 172}, - 240: {"version": 2, "name": "SLT‐EM007 Segmented", "width": 0, "height": 0}, - 250: {"version": 1, "name": "ConfigMode", "width": 0, "height": 0}, -} +DOMAIN = "opendisplay" +CONF_ENCRYPTION_KEY = "encryption_key" diff --git a/custom_components/opendisplay/coordinator.py b/custom_components/opendisplay/coordinator.py index a83408d..ab65f0e 100644 --- a/custom_components/opendisplay/coordinator.py +++ b/custom_components/opendisplay/coordinator.py @@ -1,1469 +1,88 @@ -import asyncio -import inspect -from datetime import datetime, timedelta, timezone -from typing import Final, Dict, Any, Callable, Awaitable +"""Passive BLE coordinator for OpenDisplay devices.""" -import json -import requests -import aiohttp -import async_timeout -import websockets -from homeassistant.config_entries import ConfigEntry -from homeassistant.const import EVENT_HOMEASSISTANT_STOP -from homeassistant.core import HomeAssistant, CALLBACK_TYPE -from homeassistant.exceptions import ConfigEntryNotReady, HomeAssistantError -from homeassistant.helpers.aiohttp_client import async_get_clientsession -from homeassistant.helpers.dispatcher import async_dispatcher_send -from homeassistant.helpers.storage import Store -from homeassistant.helpers import device_registry as dr -from homeassistant.helpers import entity_registry as er +from dataclasses import dataclass, field import logging -from .const import DOMAIN, SIGNAL_AP_UPDATE, SIGNAL_TAG_UPDATE, SIGNAL_TAG_IMAGE_UPDATE -from .tag_types import get_tag_types_manager, get_hw_string +from opendisplay import MANUFACTURER_ID, AdvertisementTracker, parse_advertisement +from opendisplay.models.advertisement import AdvertisementData, ButtonChangeEvent -_LOGGER: Final = logging.getLogger(__name__) +from homeassistant.components.bluetooth import ( + BluetoothChange, + BluetoothScanningMode, + BluetoothServiceInfoBleak, +) +from homeassistant.components.bluetooth.passive_update_coordinator import ( + PassiveBluetoothDataUpdateCoordinator, +) +from homeassistant.core import HomeAssistant, callback +_LOGGER: logging.Logger = logging.getLogger(__package__) -STORAGE_VERSION = 1 -STORAGE_KEY = f"{DOMAIN}_tags" -RECONNECT_INTERVAL = 30 -SAVE_DELAY = 10 -WEBSOCKET_TIMEOUT = 60 -CONNECTION_TIMEOUT = 10 +@dataclass +class OpenDisplayUpdate: + """Parsed advertisement data for one OpenDisplay device.""" + address: str + advertisement: AdvertisementData + button_events: list[ButtonChangeEvent] = field(default_factory=list) -class Hub: - """Central communication manager for OpenDisplay integration. +class OpenDisplayCoordinator(PassiveBluetoothDataUpdateCoordinator): + """Coordinator for passive BLE advertisement updates from an OpenDisplay device.""" - This class manages all interaction with the OEPL Access Point (AP), - including: - - - WebSocket connection for real-time updates - - Tag data management and state tracking - - AP configuration and status monitoring - - Event handling for tag interactions (buttons, NFC) - - Persistent storage of tag data - - The Hub maintains the primary state for all tags and the AP itself, - serving as the data source for all entities in the integration. - - It serves as a coordinator for all tag related updates, - but it does not make sense converting it to a DataUpdateCoordinator, - which would be pulling, not pushing. - - Attributes: - hass: Home Assistant instance - entry: Config entry containing connection details - host: Hostname or IP of the OEPL AP - online: Boolean indicating if the AP is currently connected - tags: List of known tag MAC addresses - ap_config: Dictionary of current AP configuration settings - ap_status: Dictionary of current AP status information - """ - def __init__(self, hass: HomeAssistant, entry: ConfigEntry) -> None: - """Handle WebSocket connection and process incoming messages. - - Manages the lifecycle of the WebSocket connection, including: - - - Establishing initial connection to the AP - - Processing incoming messages (tag updates, AP status, etc.) - - Handling connection errors and implementing reconnection logic - - Broadcasting connection state changes to entities - - This is a long-running task that continues until shutdown is triggered. - When connection errors occur, it implements a reconnection strategy - with a fixed interval defined by RECONNECT_INTERVAL. - - Raises: - No exceptions are raised as they are caught and logged internally. - """ - self.hass = hass - self.entry = entry - self.host = entry.data["host"] - self._ws_task: asyncio.Task | None = None - self._ws_client: websockets.WebSocketClientProtocol | None = None - self._cleanup_task: asyncio.Task | None = None - self._shutdown = asyncio.Event() - self._session = async_get_clientsession(hass) - self._shutdown_handler: CALLBACK_TYPE | None = None - self._shutdown = asyncio.Event() - self._store = Store[dict[str, any]]( - hass, STORAGE_VERSION, STORAGE_KEY, private=True, atomic_writes=True - ) - self._data: dict[str, dict] = {} - self._ap_data: dict[str, any] = {} - self.ap_config: dict[str, any] = {} - self._known_tags: set[str] = set() - self._last_record_count = None - self.ap_env = None - self.ap_model = "ESP32" - - self._unsub_callbacks: list[CALLBACK_TYPE] = [] - self.online = False - self._reconnect_task: asyncio.Task | None = None - self._tag_manager = None - self._tag_manager_ready = asyncio.Event() - self._blacklisted_tags = entry.options.get("blacklisted_tags", []) - self._last_button_press: Dict[str, datetime] = {} - self._button_debounce_interval = timedelta(seconds=0.5) - self._nfc_last_scan: Dict[str, datetime] = {} - self._nfc_debounce_interval = timedelta(seconds=1) - self._update_debounce_interval() - self._ap_cmd_sem = asyncio.Semaphore(1) - self._ap_cmd_cooldown = 0.5 - - def _update_debounce_interval(self) -> None: - """Update event debounce intervals from integration options. - - Reads the button_debounce and nfc_debounce values from the - integration's configuration options and updates the internal - debounce interval time deltas accordingly. - - This prevents rapid duplicate events from buttons or NFC scans - by setting minimum time intervals between consecutive events. - """ - button_debounce_seconds = self.entry.options.get("button_debounce", 0.5) - nfc_debounce_seconds = self.entry.options.get("nfc_debounce", 1.0) - self._button_debounce_interval = timedelta(seconds=button_debounce_seconds) - self._nfc_debounce_interval = timedelta(seconds=nfc_debounce_seconds) - - async def async_reload_config(self) -> None: - """Reload configuration from config entry. - - Updates hub settings based on changes to the config entry options: - - - Reloads the tag blacklist - - Updates debounce intervals for buttons and NFC - - This is called when the integration options are updated through - the configuration flow. - """ - await self.async_reload_blacklist() - self._update_debounce_interval() - - async def async_setup_initial(self) -> None: - """Set up hub without establishing a WebSocket connection. - - Performs the initial setup tasks: - - - Loads stored tag data from persistent storage - - Initializes the tag type manager - - Registers the shutdown handler - - Fetches AP info and loads tags from the AP - - This is called during integration setup before the platforms - are loaded, allowing entities to be created with initial state. - - Raises: - ConfigEntryNotReady: If AP is unreachable or tag loading fails - """ - # Load stored data - stored = await self._store.async_load() - if stored: - self._data = stored.get("tags", {}) - self._known_tags = set(self._data.keys()) - _LOGGER.debug("Restored %d tags from storage", len(self._known_tags)) - - # Initialize tag manager - self._tag_manager = await get_tag_types_manager(self.hass) - self._tag_manager_ready.set() - - # Register shutdown handler only once - if self._shutdown_handler is None: - self._shutdown_handler = self.hass.bus.async_listen_once( - EVENT_HOMEASSISTANT_STOP, - self._handle_shutdown - ) - - # Fetch AP info - raises on failure (timeout, connection error, HTTP error) - try: - await self.async_update_ap_info() - except (aiohttp.ClientError, asyncio.TimeoutError) as err: - raise ConfigEntryNotReady( - translation_domain=DOMAIN, - translation_key="ap_cannot_connect", - translation_placeholders={"host": self.host, "err": str(err)}, - ) from err - - # Load tags from AP - already has 10 retries built-in - # If this fails after retries, something is wrong with the AP - try: - await self.async_load_all_tags() - except Exception as err: - raise ConfigEntryNotReady( - translation_domain=DOMAIN, - translation_key="ap_failed_load_tags", - translation_placeholders={"host": self.host, "err": str(err)}, - ) from err - - async def async_start_websocket(self) -> bool: - """Start WebSocket connection to the AP. - - Establishes the WebSocket connection for real-time updates from the AP. - If a previous connection exists, it's cancelled before starting a new one. - - The method waits for the connection to be established or for the - CONNECTION_TIMEOUT to expire before returning. - - Returns: - bool: True if connection was successfully established, False otherwise - """ - if self._ws_task and not self._ws_task.done(): - self._ws_task.cancel() - try: - await self._ws_task - except asyncio.CancelledError: - pass - - # Clear the shutdown flag when starting - self._shutdown.clear() - - self._ws_task = self.hass.async_create_task( - self._websocket_handler(), - "opendisplay_websocket" + def __init__(self, hass: HomeAssistant, address: str) -> None: + """Initialize the coordinator.""" + super().__init__( + hass, + _LOGGER, + address, + BluetoothScanningMode.PASSIVE, + connectable=True, ) - - # Wait briefly to ensure connection is established - try: - async with async_timeout.timeout(CONNECTION_TIMEOUT): - while not self.online and not self._shutdown.is_set(): - await asyncio.sleep(0.1) - - if not self.online: - _LOGGER.error("Failed to establish WebSocket connection") - return False - - _LOGGER.info("WebSocket connection established successfully") - return True - - except asyncio.TimeoutError: - _LOGGER.error("Timeout while establishing WebSocket connection") - return False - - - async def _handle_shutdown(self, _) -> None: - """Handle Home Assistant shutdown event. - - Called when Home Assistant is shutting down, this method: - - - Triggers a clean shutdown of the Hub - - Clears the shutdown handler reference - - Args: - _: Event object (unused) - """ - _LOGGER.debug("Processing shutdown for OEPL hub") - await self.shutdown() - self._shutdown_handler = None - - async def shutdown(self) -> None: - """Shut down the hub and clean up resources. - - Performs a graceful shutdown of the hub: - - - Sets shutdown flag to prevent new connection attempts - - Cancels any active WebSocket connection task - - Removes event listeners and callbacks - - Updates connection status for dependent entities - - This should be called when unloading the integration. - """ - _LOGGER.debug("Shutting down OEPL hub") - - # Set shutdown flag first - self._shutdown.set() - - # Cancel WebSocket task - if self._ws_task and not self._ws_task.done(): - self._ws_task.cancel() - try: - await self._ws_task - except asyncio.CancelledError: - pass - - # Clean up other callbacks - while self._unsub_callbacks: - try: - unsub = self._unsub_callbacks.pop() - unsub() - except Exception as err: - _LOGGER.debug("Error cleaning up callback: %s", err) - - # Mark as offline - self.online = False - async_dispatcher_send(self.hass, f"{DOMAIN}_connection_status", False) - - _LOGGER.debug("OEPL hub shutdown complete") - - async def _websocket_handler(self) -> None: - """Handle WebSocket connection lifecycle and process messages. - - This is a long-running task that manages all aspects of the WebSocket - connection to the OEPL Access Point, including: - - - Establishing and maintaining the connection - - Processing incoming real-time messages from the AP - - Detecting connection failures and implementing reconnection logic - - Broadcasting connection state changes to dependent entities - - The handler implements error resilience through nested try/except blocks: - - - Outer block: Handles connection establishment and reconnection - - Inner block: Processes individual messages within an active connection - - When connection errors occur, the handler waits for RECONNECT_INTERVAL - seconds before attempting to reconnect, continuing until the hub - shutdown is signaled via the self._shutdown Event. - - Note: This method should be run as a background task and not awaited - directly, as it runs indefinitely until shutdown is triggered. - """ - while not self._shutdown.is_set(): - try: - ws_url = f"ws://{self.host}/ws" - async with self._session.ws_connect(ws_url, heartbeat=30) as ws: - self.online = True - _LOGGER.debug("Connected to websocket at %s", ws_url) - async_dispatcher_send(self.hass, f"{DOMAIN}_connection_status", True) - - # Run verification on each connection to catch deletions that happened while offline - await self._verify_and_cleanup_tags() - - while not self._shutdown.is_set(): - try: - msg = await ws.receive() - - if msg.type == aiohttp.WSMsgType.TEXT: - await self._handle_message(msg.data) - elif msg.type == aiohttp.WSMsgType.ERROR: - _LOGGER.info("WebSocket error: %s", ws) - break - elif msg.type == aiohttp.WSMsgType.CLOSING: - _LOGGER.debug("WebSocket closing") - break - elif msg.type == aiohttp.WSMsgType.CLOSED: - _LOGGER.debug("WebSocket closed") - break - except asyncio.CancelledError: - _LOGGER.debug("WebSocket task cancelled") - raise - except Exception as err: - _LOGGER.error("Error handling message: %s", err) - - except asyncio.CancelledError: - _LOGGER.debug("WebSocket connection cancelled") - raise - except aiohttp.ClientError as err: - self.online = False - _LOGGER.error("WebSocket connection error: %s", err) - async_dispatcher_send(self.hass, f"{DOMAIN}_connection_status", False) - except Exception as err: - self.online = False - _LOGGER.error("Unexpected WebSocket error: %s", err) - async_dispatcher_send(self.hass, f"{DOMAIN}_connection_status", False) - - if not self._shutdown.is_set(): - await asyncio.sleep(RECONNECT_INTERVAL) - - - def _schedule_reconnect(self) -> None: - """Schedule a WebSocket reconnection attempt. - - Creates a task to reconnect after RECONNECT_INTERVAL seconds. - If a reconnection task is already scheduled, it's cancelled first - to avoid multiple concurrent reconnection attempts. - """ - async def reconnect(): - await asyncio.sleep(RECONNECT_INTERVAL) - if not self._shutdown.is_set(): - self._ws_task = self.hass.async_create_task( - self._websocket_handler(), - f"{DOMAIN}_websocket", - ) - - if self._reconnect_task and not self._reconnect_task.done(): - self._reconnect_task.cancel() - - self._reconnect_task = self.hass.async_create_task( - reconnect(), - f"{DOMAIN}_reconnect", - ) - - async def _handle_message(self, message: str) -> None: - """Process an incoming WebSocket message from the AP. - - Parses the message JSON and routes it to the appropriate handler - based on the message type: - - - "sys" messages: AP system status updates - - "tags" messages: Individual tag status updates - - "logMsg" messages: Log information from the AP - - "errMsg" messages: Error notifications - - "apitem" messages: Configuration change notifications - - Args: - message: Raw WebSocket message string from the AP - - Raises: - No exceptions are raised as they are caught and logged internally. - """ - try: - data = json.loads("{" + message.split("{", 1)[-1]) - - if "sys" in data: - _LOGGER.debug("System message: %s", data["sys"]) - await self._handle_system_message(data["sys"]) - elif "tags" in data: - _LOGGER.debug("Tag message: %s", data["tags"][0]) - await self._handle_tag_message(data["tags"][0]) - elif "logMsg" in data: - _LOGGER.debug("OpenDisplay Log message: %s", data["logMsg"]) - await self._handle_log_message(data["logMsg"]) - elif "errMsg" in data and data["errMsg"] == "REBOOTING": - _LOGGER.debug("AP is rebooting") - self._ap_data["ap_state"] = "Offline" - async_dispatcher_send(self.hass, SIGNAL_AP_UPDATE) - self.online = False - async_dispatcher_send(self.hass, f"{DOMAIN}_connection_status", False) - - # Close WebSocket connection immediately - if self._ws_task and not self._ws_task.done(): - self._ws_task.cancel() - - # Schedule reconnection attempt after brief delay - async def delayed_reconnect(): - await asyncio.sleep(5) - if not self._shutdown.is_set(): - self._ws_task = self.hass.async_create_task( - self._websocket_handler(), - f"{DOMAIN}_websocket" - ) - - self.hass.async_create_task(delayed_reconnect(), f"{DOMAIN}_reconnect") - return - elif "apitem" in data: - # Check if this is actually a config change message - if data.get("apitem", {}).get("type") == "change": - await self._handle_ap_config_message(data) - else: - _LOGGER.debug("Ignoring non-change AP message") - else: - _LOGGER.debug("Unknown message type: %s", data) - - except json.JSONDecodeError: - _LOGGER.error("Failed to decode message: %s", message) - except Exception as err: - _LOGGER.exception("Error handling message: %s", err) - - async def _handle_system_message(self, sys_data: dict) -> None: - """Process a system message from the AP. - - Updates the AP status information based on system data, including: - - - IP address and Wi-Fi settings - - Memory usage (heap, database size) - - Tag counts and AP state - - Runtime information - - This method is called when the AP sends a "sys" WebSocket message, - which typically happens periodically or after state changes. - - Args: - sys_data: Dictionary containing AP system status information - """ - - # Preserve existing values for fields that are not in every message - current_low_batt = self._ap_data.get("low_battery_count", 0) - current_timeout = self._ap_data.get("timeout_count", 0) - - self._ap_data = { - "ip": self.host, - "sys_time": sys_data.get("currtime"), - "heap": sys_data.get("heap"), - "record_count": sys_data.get("recordcount"), - "db_size": sys_data.get("dbsize"), - "little_fs_free": sys_data.get("littlefsfree"), - "ps_ram_free": sys_data.get("psfree"), - "rssi": sys_data.get("rssi"), - "ap_state": self._get_ap_state_string(sys_data.get("apstate")), - "run_state": self._get_ap_run_state_string(sys_data.get("runstate")), - "temp": sys_data.get("temp"), - "wifi_status": sys_data.get("wifistatus"), - "wifi_ssid": sys_data.get("wifissid"), - "uptime": sys_data.get("uptime"), - "low_battery_count": sys_data.get("lowbattcount", current_low_batt), - "timeout_count": sys_data.get("timeoutcount", current_timeout), - } - - if "recordcount" in sys_data: - self._track_record_count_changes(sys_data.get("recordcount", 0)) - - async_dispatcher_send(self.hass, SIGNAL_AP_UPDATE) - - async def _handle_tag_message(self, tag_data: dict) -> None: - """Process a tag update message from the AP. - - Updates the stored information for a specific tag based on the - data received from the AP. This includes: - - - Tag status (battery, temperature, etc.) - - Scheduling information (next update, next check-in) - - Signal quality information (RSSI, LQI) - - Args: - tag_data: Dictionary containing tag properties from the AP - """ - tag_mac = tag_data.get("mac") - if not tag_mac: + self.data: OpenDisplayUpdate | None = None + self._tracker: AdvertisementTracker = AdvertisementTracker() + + @callback + def _async_handle_unavailable( + self, service_info: BluetoothServiceInfoBleak + ) -> None: + """Handle the device going unavailable.""" + if self._available: + _LOGGER.info("%s: Device is unavailable", service_info.address) + super()._async_handle_unavailable(service_info) + + @callback + def _async_handle_bluetooth_event( + self, + service_info: BluetoothServiceInfoBleak, + change: BluetoothChange, + ) -> None: + """Handle a Bluetooth advertisement event.""" + if not self._available: + _LOGGER.info("%s: Device is available again", service_info.address) + + if MANUFACTURER_ID not in service_info.manufacturer_data: + super()._async_handle_bluetooth_event(service_info, change) return - # Process tag data - is_new_tag = await self._process_tag_data(tag_mac, tag_data) - # Save to storage if this was a new tag - if is_new_tag: - await self._store.async_save({"tags": self._data}) - else: - # Schedule a save with a delay to avoid constant writes - # Will be implemented in the future - await self._store.async_save({"tags": self._data}) - - - async def _handle_log_message(self, log_msg: str) -> None: - """Process a log message from the AP. - - Parses log messages for specific events that require action: - - Block transfer requests: Updates the block_requests counter - - Transfer completion: Triggers image update notification - - Args: - log_msg: Raw log message string from the AP - """ - if "block request" in log_msg: - # Extract MAC address from block request message - # Example: "0000000000123456 block request /current/0000000000123456_452783.pending block 0" - parts = log_msg.split() - if len(parts) > 0: - tag_mac = parts[0].upper() - if tag_mac in self._data: - block_requests = self._data[tag_mac].get("block_requests", 0) + 1 - self._data[tag_mac]["block_requests"] = block_requests - # Notify of update - async_dispatcher_send(self.hass, f"{SIGNAL_TAG_UPDATE}_{tag_mac}") - if "reports xfer complete" in log_msg: - # Extract MAC address from block request message - parts = log_msg.split() - if len(parts) > 0: - tag_mac = parts[0].upper() - if tag_mac in self._data: - # Notify of update - async_dispatcher_send(self.hass, f"{SIGNAL_TAG_IMAGE_UPDATE}_{tag_mac}", True) - - async def _process_tag_data(self, tag_mac: str, tag_data: dict, is_initial_load: bool = False) -> bool: - """Process tag data and update internal state. - - Handles updates for a single tag, including: - - - Updating stored tag information - - Calculating runtime and update counters - - Managing tag discovery events - - Broadcasting update events to entities - - Triggering device events for buttons/NFC (with debouncing) - - Args: - tag_mac: MAC address of the tag - tag_data: Dictionary containing tag properties from the AP - is_initial_load: True if this is part of initial loading at startup, - which affects event triggering behavior - - Returns: - bool: True if this was a newly discovered tag, False for an update - - Raises: - No exceptions are raised as they are caught and logged internally. - """ - - # Skip blacklisted tags - if tag_mac in self._blacklisted_tags: - _LOGGER.debug("Ignoring blacklisted tag: %s", tag_mac) - return False - - # Check if this is a new tag - is_new_tag = tag_mac not in self._known_tags - - # Get existing data to calculate runtime and update counters - existing_data = self._data.get(tag_mac, {}) - - tag_name = tag_data.get("alias") or tag_mac - last_seen = tag_data.get("lastseen") - next_update = tag_data.get("nextupdate") - next_checkin = tag_data.get("nextcheckin") - lqi = tag_data.get("LQI") - rssi = tag_data.get("RSSI") - temperature = tag_data.get("temperature") - battery_mv = tag_data.get("batteryMv") - pending = tag_data.get("pending") - hw_type = tag_data.get("hwType") - hw_string = get_hw_string(hw_type) - width, height = self._tag_manager.get_hw_dimensions(hw_type) - content_mode = tag_data.get("contentMode") - wakeup_reason = self._get_wakeup_reason_string(tag_data.get("wakeupReason")) - capabilities = tag_data.get("capabilities") - hashv = tag_data.get("hash") - modecfgjson = tag_data.get("modecfgjson") - is_external = tag_data.get("isexternal") - rotate = tag_data.get("rotate") - lut = tag_data.get("lut") - channel = tag_data.get("ch") - version = tag_data.get("ver") - update_count = tag_data.get("updatecount") - - # Check if name has changed - old_name = existing_data.get("tag_name") - if old_name and old_name != tag_name: - _LOGGER.debug("Tag name changed from '%s' to '%s'", old_name, tag_name) - # Update device name in device registry - device_registry = dr.async_get(self.hass) - device = device_registry.async_get_device( - identifiers={(DOMAIN, tag_mac)} - ) - if device: - device_registry.async_update_device( - device.id, - name=tag_name - ) - - # Calculate runtime delta (only if this is not the initial load) - runtime_delta = 0 - runtime_total = existing_data.get("runtime", 0) - if not is_initial_load and existing_data: - runtime_delta = self._calculate_runtime_delta(tag_data, existing_data) - runtime_total += runtime_delta - - # Update boot count if this is a power-on event - boot_count = existing_data.get("boot_count", 1) - if not is_initial_load and wakeup_reason in [1, 252, 254]: # BOOT, FIRSTBOOT, WDT_RESET - boot_count += 1 - runtime_total = 0 # Reset runtime on boot - - # Update check-in counter - checkin_count = existing_data.get("checkin_count", 0) - if not is_initial_load: - checkin_count += 1 - - # Get existing block request count - block_requests = existing_data.get("block_requests", 0) - - # Update tag data - self._data[tag_mac] = { - "tag_mac": tag_mac, - "tag_name": tag_name, - "last_seen": last_seen, - "next_update": next_update, - "next_checkin": next_checkin, - "lqi": lqi, - "rssi": rssi, - "temperature": temperature, - "battery_mv": battery_mv, - "pending": pending, - "hw_type": hw_type, - "width": width, - "height": height, - "hw_string": hw_string, - "content_mode": self._get_content_mode_string(content_mode), - "wakeup_reason": wakeup_reason, - "capabilities": capabilities, - "hash": hashv, - "modecfgjson": modecfgjson, - "is_external": is_external, - "rotate": rotate, - "lut": lut, - "channel": channel, - "version": version, - "update_count": update_count, - "runtime": runtime_total, - "boot_count": boot_count, - "checkin_count": checkin_count, - "block_requests": block_requests, - } - - # Handle new tag discovery - if is_new_tag: - self._known_tags.add(tag_mac) - _LOGGER.debug("Discovered new tag: %s", tag_mac) - # Fire discovery event before saving - async_dispatcher_send(self.hass, f"{DOMAIN}_tag_discovered", tag_mac) - - # Fire state update event - async_dispatcher_send(self.hass, f"{SIGNAL_TAG_UPDATE}_{tag_mac}") - - # Handle wakeup event if needed and not initial load - wakeup_reason = tag_data.get("wakeupReason") - if not is_initial_load and wakeup_reason is not None: - reason_string = self._get_wakeup_reason_string(wakeup_reason) - - should_fire = True - current_time = datetime.now() - - # Apply debouncing based on event type - if reason_string in ["BUTTON1", "BUTTON2", "BUTTON3", "BUTTON4", "BUTTON5", "BUTTON6", "BUTTON7", "BUTTON8", "BUTTON9", "BUTTON10"]: - # Button debouncing - debounce_key = f"{tag_mac}_{reason_string}" - last_event = self._last_button_press.get(debounce_key) - if last_event and (current_time - last_event) <= self._button_debounce_interval: - should_fire = False - else: - self._last_button_press[debounce_key] = current_time - - elif reason_string == "NFC": - # NFC debouncing - debounce_key = f"{tag_mac}_NFC" - last_event = self._nfc_last_scan.get(debounce_key) - if last_event and (current_time - last_event) <= self._nfc_debounce_interval: - should_fire = False - else: - self._nfc_last_scan[debounce_key] = current_time - - if should_fire: - device_registry = dr.async_get(self.hass) - device = device_registry.async_get_device( - identifiers={(DOMAIN, tag_mac)} - ) - if device: - self.hass.bus.async_fire(f"{DOMAIN}_event", { - "device_id": device.id, - "type": reason_string - }) - - return is_new_tag - - async def _run_ap_command(self, func: Callable[[], Any | Awaitable[Any]]) -> Any: - async with self._ap_cmd_sem: - if self._ap_cmd_cooldown: - await asyncio.sleep(self._ap_cmd_cooldown) - # If it’s a coroutine function, await it; otherwise run in executor - if inspect.iscoroutinefunction(func): - return await func() - return await self.hass.async_add_executor_job(func) - - async def _ap_request(self, method: str, path: str, *, data=None, timeout=10, action: str) -> requests.Response: - url = f"http://{self.host}/{path.lstrip('/')}" - def call(): - return requests.request(method, url, data=data, timeout=timeout) try: - resp = await self._run_ap_command(call) - except requests.exceptions.Timeout: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="ap_timeout_action", - translation_placeholders={"action": action}, - ) from None - except requests.exceptions.RequestException as err: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="ap_network_error_action", - translation_placeholders={"action": action, "error": str(err)} - ) from err - if resp.status_code != 200: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="ap_failed_action_http", - translation_placeholders={"action": action, "status": resp.status_code, "text": resp.text}, + advertisement = parse_advertisement( + service_info.manufacturer_data[MANUFACTURER_ID] + ) + except ValueError as err: + _LOGGER.debug( + "%s: Failed to parse advertisement data: %s", + service_info.address, + err, + exc_info=True, ) - return resp - - async def set_led_pattern(self, entity_id: str, pattern: str) -> None: - mac = entity_id.split(".")[1].upper() - await self._ap_request("get", f"led_flash?mac={mac}&pattern={pattern}", action=f"update LED for {entity_id}") - _LOGGER.info("Updated LED pattern for %s", entity_id) - - async def send_tag_cmd(self, entity_id: str, cmd: str) -> bool: - mac = entity_id.split(".")[1].upper() - await self._ap_request("post", "tag_cmd", data={"mac": mac, "cmd": cmd}, action=f"send {cmd} to {entity_id}") - _LOGGER.info("Sent %s command to %s", cmd, entity_id) - return True - - async def reboot_ap(self) -> bool: - await self._ap_request("post", "reboot", action="reboot OEPL AP") - _LOGGER.info("Rebooted OEPL AP") - return True - - async def set_ap_config_item(self, key: str, value: str | int) -> bool: # TODO listen to apitem for changes? - if key in ("sleeptime1", "sleeptime2"): - data = {"sleeptime1": self.ap_config.get("sleeptime1", 0), - "sleeptime2": self.ap_config.get("sleeptime2", 0), key: value} else: - data = {key: value} - - await self._ap_request( - "post", - "save_apcfg", - data=data, - action=f"set AP config {key}", - ) - for k, v in data.items(): - self.ap_config[k] = v - _LOGGER.info("Set AP config %s = %s", key, value) - return True - - async def _fetch_all_tags_from_ap(self) -> dict: - """Fetch complete list of tags from the AP database. - - Retrieves all tag data using the AP's HTTP API, handling pagination - to ensure all tags are retrieved even when there are many tags. - - The API returns tags in batches, with a continuation token - to fetch the next batch until all tags have been retrieved. - - Returns: - dict: Dictionary mapping tag MAC addresses to their complete data - - Raises: - Exception: If HTTP requests fail or return unexpected data - """ - result = {} - position = 0 - retries_left = 10 - - while True: - url = f"http://{self.host}/get_db" - if position > 0: - url += f"?pos={position}" - - try: - response = await self.hass.async_add_executor_job( - lambda: requests.get(url, timeout=10) - ) - - if response.status_code != 200: - _LOGGER.error("Failed to fetch all tags from AP: %s", response.text) - retries_left -= 1 - if retries_left <= 0: - raise Exception(f"Failed to fetch tags after multiple retries: {response.text}") - await asyncio.sleep(1) - continue - - data = response.json() - - # Add tags to set - for tag in data.get("tags", []): - if "mac" in tag: - result[tag["mac"]] = tag - - # Check for pagination - if "continu" in data and data["continu"] > 0: - position = data["continu"] - else: - break - - except Exception as err: - _LOGGER.error("Failed to fetch all tags from AP: %s", str(err)) - retries_left -= 1 - if retries_left <= 0: - raise - await asyncio.sleep(1) - continue - - return result - - async def async_load_all_tags(self) -> None: - """Load all tags from the AP at startup. - - Fetches the complete list of tags from the AP's database and: - - - Processes each tag to update internal state - - Counts new and updated tags for logging purposes - - Saves updated data to persistent storage - - This provides a complete initial state for the integration - without waiting for individual tag check-ins. - - Raises: - Exception: If fetching or processing tags fails - """ - try: - _LOGGER.info("Loading existing tags from AP...") - - # Track the number of processed tags - new_tags_count = 0 - updated_tags_count = 0 - - # Get all tag data from AP - all_tags = await self._fetch_all_tags_from_ap() - - # Process each tag using the common helper function - for tag_mac, tag_data in all_tags.items(): - # Process tag with the initial load flag set - is_new = await self._process_tag_data(tag_mac, tag_data, is_initial_load=True) - - # Update counters - if is_new: - new_tags_count += 1 - else: - updated_tags_count += 1 - - # Save to persistent storage - await self._store.async_save({"tags": self._data}) - - if new_tags_count > 0 or updated_tags_count > 0: - _LOGGER.info("Loaded %d new tags and updated %d existing tags from AP", - new_tags_count, updated_tags_count) - - except Exception as err: - _LOGGER.error("Failed to load tags from AP: %s", err) - raise - - def _track_record_count_changes(self, new_record_count: int) -> None: - """Track changes in record count to detect tag deletions. - - When the AP's record count decreases, it indicates that one or more - tags have been deleted from the AP. This method detects such changes - and schedules a verification task to identify and remove deleted tags. - - Args: - new_record_count: New record count reported by the AP - """ - if self._last_record_count is not None and new_record_count < self._last_record_count: - # Record count has decreased, indicating a possible tag deletion - _LOGGER.info(f"AP record count decreased from {self._last_record_count} to {new_record_count}. Checking for deleted tags...") - - # Cancel existing cleanup task if any - if self._cleanup_task and not self._cleanup_task.done(): - self._cleanup_task.cancel() - - # Schedule cleanup task to verify and clean up any deleted tags - self._cleanup_task = self.hass.async_create_task( - self._verify_and_cleanup_tags(), - f"{DOMAIN}_tag_verification" + button_events = self._tracker.update(service_info.address, advertisement) + self.data = OpenDisplayUpdate( + address=service_info.address, + advertisement=advertisement, + button_events=button_events, ) - # Update the last known record count - self._last_record_count = new_record_count - - async def _verify_and_cleanup_tags(self) -> None: - """Verify which tags exist on the AP and clean up deleted ones. - - Checks if any locally known tags have been deleted from the AP - and removes them from: - - - Internal data structures - - Home Assistant device and entity registries - - Persistent storage - - This ensures Home Assistant's state matches the actual AP state - when tags are removed from the AP directly. - - Raises: - No exceptions are raised as they are caught and logged internally. - """ - try: - # Get current tags from AP - ap_tags = await self._fetch_all_tags_from_ap() - - # Map tags to mac addresses - ap_macs = set(ap_tags.keys()) - - ap_macs_upper = {mac.upper() for mac in ap_macs} - known_macs_upper = {mac.upper() for mac in self._known_tags} - - # Find locally known tags that are missing from the AP - deleted_tags = known_macs_upper - ap_macs_upper - - if deleted_tags: - _LOGGER.info(f"Detected {len(deleted_tags)} deleted tags from AP: {deleted_tags}") - - # Map back to original case if needed - for tag_mac in list(self._known_tags): # Create a copy for safe iteration - if tag_mac.upper() in deleted_tags: - await self._remove_tag(tag_mac) - - except Exception as err: - _LOGGER.error(f"Error while verifying AP tags: {err}") - - async def _remove_tag(self, tag_mac: str) -> None: - """Remove a tag from HA. - - Args: - tag_mac: The MAC address of the tag to remove. - """ - _LOGGER.info(f"Removing tag {tag_mac} as it no longer exists on the AP") - - # Remove from known tags and data - if tag_mac in self._known_tags: - self._known_tags.remove(tag_mac) - self._data.pop(tag_mac, None) - - # Notify that this tag has been removed - async_dispatcher_send(self.hass, f"{SIGNAL_TAG_UPDATE}_{tag_mac}") - - # Remove related devices and entities - device_registry = dr.async_get(self.hass) - entity_registry = er.async_get(self.hass) - - # Find and remove entities for this tag - entities_to_remove = [] - devices_to_remove = set() - - for entity in entity_registry.entities.values(): - if entity.config_entry_id == self.entry.entry_id: - device = device_registry.async_get(entity.device_id) if entity.device_id else None - if device: - for identifier in device.identifiers: - if identifier[0] == DOMAIN and identifier[1] == tag_mac: - entities_to_remove.append(entity.entity_id) - devices_to_remove.add(device.id) - break - - # Remove entities - for entity_id in entities_to_remove: - entity_registry.async_remove(entity_id) - _LOGGER.debug(f"Removed entity {entity_id} for deleted tag {tag_mac}") - - # Remove devices - for device_id in devices_to_remove: - device_registry.async_remove_device(device_id) - _LOGGER.debug(f"Removed device {device_id} for deleted tag {tag_mac}") - - # Update storage - await self._store.async_save({"tags": self._data}) - - async def async_reload_blacklist(self) -> None: - """Reload the tag blacklist from config entry options. - - Updates the blacklist based on current integration options and: - - - Removes blacklisted tags from active tracking - - Triggers entity and device removal for blacklisted tags - - Updates persistent storage to reflect changes - - This is called when the integration options are updated. - """ - entry = self.entry - old_blacklist = self._blacklisted_tags.copy() - self._blacklisted_tags = entry.options.get("blacklisted_tags", []) - - # Remove blacklisted tags from known tags and data - for tag_mac in self._blacklisted_tags: - if tag_mac in self._known_tags: - self._known_tags.remove(tag_mac) - self._data.pop(tag_mac, None) - # Notify that this tag's state has changed - async_dispatcher_send(self.hass, f"{SIGNAL_TAG_UPDATE}_{tag_mac}") - - # If the blacklist has changed, trigger cleanup - if set(old_blacklist) != set(self._blacklisted_tags): - # Trigger entity and device removal - async_dispatcher_send(self.hass, f"{DOMAIN}_blacklist_update") - - # Give Home Assistant time to process removals - await asyncio.sleep(0.1) - - # Force a state refresh for all remaining tags - for tag_mac in self._known_tags: - if tag_mac not in self._blacklisted_tags: - async_dispatcher_send(self.hass, f"{SIGNAL_TAG_UPDATE}_{tag_mac}") - - # Save updated data to storage - await self._store.async_save({ - "tags": self._data - }) - - async def _handle_ap_config_message(self,dict) -> None: - """Handle AP configuration updates. - - Fetches the current AP configuration via HTTP and updates the - internal configuration state. This triggers when the AP sends - a configuration change notification. - - The method uses a hash comparison to only trigger entity updates - when the configuration actually changes. - - Args: - message: The configuration message from the AP - """ - try: - if self._shutdown.is_set(): - return - - async with aiohttp.ClientSession() as session: - async with async_timeout.timeout(10): - async with session.get(f"http://{self.host}/get_ap_config") as response: - if response.status != 200: - _LOGGER.error("Failed to fetch AP config: HTTP %s", response.status) - return - - new_config = await response.json() - - # Compare with existing config - if not hasattr(self, '_last_config_hash'): - self._last_config_hash = None - - # Create hash of new config for comparison - new_hash = hash(frozenset(new_config.items())) - - if new_hash != self._last_config_hash: - self.ap_config = new_config - self._last_config_hash = new_hash - _LOGGER.debug("AP config updated: %s", self.ap_config) - async_dispatcher_send(self.hass, f"{DOMAIN}_ap_config_update") - else: - _LOGGER.debug("AP config unchanged, skipping update") - - except asyncio.TimeoutError: - _LOGGER.error("Timeout fetching AP config") - except Exception as err: - _LOGGER.error("Failed to fetch AP config: %s", err) - - @staticmethod - def _get_wakeup_reason_string(reason: int) -> str: - """Convert numeric wakeup reason code to human-readable string. - - Maps the numeric reasons received from the AP to descriptive strings: - - - 0: "TIMED" (normal timed wakeup) - - 1: "BOOT" (device boot) - - 2: "GPIO" (GPIO trigger) - - 3: "NFC" (NFC scan) - - 4: "BUTTON1" (button 1 pressed) - - 5: "BUTTON2" (button 2 pressed) - - 6: "BUTTON3" (button 3 pressed) - - 7: "BUTTON4" (button 4 pressed) - - 8: "BUTTON5" (button 5 pressed) - - 9: "BUTTON6" (button 6 pressed) - - 10: "BUTTON7" (button 7 pressed) - - 11: "BUTTON8" (button 8 pressed) - - 12: "BUTTON9" (button 9 pressed) - - 13: "BUTTON10" (button 10 pressed) - - 252: "FIRSTBOOT" (first boot) - - 253: "NETWORK_SCAN" (network scan) - - 254: "WDT_RESET" (watchdog reset) - - Args: - reason: Numeric wakeup reason code from the tag - - Returns: - str: Human-readable reason or "UNKNOWN_{code}" if not recognized - """ - reasons = { - 0: "TIMED", - 1: "BOOT", - 2: "GPIO", - 3: "NFC", - 4: "BUTTON1", - 5: "BUTTON2", - 6: "BUTTON3", - 7: "BUTTON4", - 8: "BUTTON5", - 9: "BUTTON6", - 10: "BUTTON7", - 11: "BUTTON8", - 12: "BUTTON9", - 13: "BUTTON10", - 252: "FIRSTBOOT", - 253: "NETWORK_SCAN", - 254: "WDT_RESET" - } - return reasons.get(reason, f"UNKNOWN_{reason}") - - @staticmethod - def _get_ap_state_string(state: int) -> str: - """Convert AP state code to human-readable string. - - Maps the numeric state codes received from the AP to descriptive strings: - - - 0: "Offline" - - 1: "Online" - - 2: "Flashing" - - 3: "Waiting for reset" - - etc. - - Args: - state: Numeric AP state code - - Returns: - str: Human-readable state or "Unknown: {code}" if not recognized - """ - states = { - 0: "Offline", - 1: "Online", - 2: "Flashing", - 3: "Waiting for reset", - 4: "Requires power cycle", - 5: "Failed", - 6: "Coming online", - 7: "No radio" - } - return states.get(state, f"Unknown: {state}") - - @staticmethod - def _get_ap_run_state_string(state: int) -> str: - """Convert AP run state code to human-readable string. - - Maps the numeric run state codes received from the AP to descriptive strings: - - - 0: "Stopped" - - 1: "Paused" - - 2: "Running" - - 3: "Initializing" - - The run state indicates the operational mode of the AP's tag update system. - - Args: - state: Numeric AP run state code - - Returns: - str: Human-readable run state or "Unknown: {state}" if not recognized - """ - states = { - 0: "Stopped", - 1: "Paused", - 2: "Running", - 3: "Initializing", - } - return states.get(state, f"Unknown: {state}") - - @staticmethod - def _get_content_mode_string(mode: int) -> str: - """Convert content mode code to human-readable string. - - Maps the numeric content mode codes to descriptive strings indicating - what type of content the tag is displaying: - - - 0: "Not configured" - - 1: "Current date" - - 7: "Image URL" - - 25: "Home Assistant" - - etc. - - Args: - mode: Numeric content mode code - - Returns: - str: Human-readable content mode or "Unknown: {mode}" if not recognized - """ - modes = { - 0: "Not configured", - 1: "Current date", - 2: "Count days", - 3: "Count hours", - 4: "Current weather", - 5: "Firmware update", - 7: "Image URL", - 8: "Weather forecast", - 9: "RSS Feed", - 10: "QR Code", - 11: "Google calendar", - 12: "Remote content", - 14: "Set NFC URL", - 15: "Custom LUT", - 16: "Buienradar", - 18: "Tag Config", - 19: "JSON template", - 20: "Display a copy", - 21: "AP Info", - 22: "Static image", - 23: "Image preload", - 24: "External image", - 25: "Home Assistant", - 26: "Timestamp", - 27: "Dayahead prices", - - - } - return modes.get(mode, f"Unknown: {mode}") - - @property - def tags(self) -> list[str]: - """Return list of known tag MAC addresses. - - Provides access to the current set of tracked tag MAC addresses, - excluding those that have been blacklisted. - - Returns: - list[str]: List of MAC addresses for all known, non-blacklisted tags - """ - return list(self._known_tags) - - def get_tag_data(self, tag_mac: str) -> dict: - """Get the current data for a specific tag. - - Retrieves the complete tag data dictionary for the specified - tag MAC address, containing all properties like battery level, - temperature, status, etc. - - Args: - tag_mac: MAC address of the tag - - Returns: - dict: Complete tag data dictionary or empty dict if tag not found - """ - return self._data.get(tag_mac, {}) - - def get_blacklisted_tags(self) -> list[str]: - """Return the list of blacklisted tag MAC addresses. - - Blacklisted tags are known to the AP but ignored by Home Assistant. - This is configured through the integration's options flow. - - Returns: - list[str]: List of blacklisted tag MAC addresses - """ - return self._blacklisted_tags - - @property - def ap_status(self) -> dict: - """Get current AP status information. - - Returns a copy of the current AP status dictionary containing: - - - Connection information (IP, Wi-Fi settings) - - System metrics (heap, database size) - - Operational state (uptime, run state) - - Tag statistics (record count, low battery count) - - Returns: - dict: Copy of the current AP status dictionary - """ - return self._ap_data.copy() - - async def async_update_ap_config(self) -> None: - """Force an update of AP configuration from the AP. - - Fetches the current AP configuration settings via HTTP and - updates the internal configuration state. This will trigger - updates for any entities that display configuration values. - - Raises: - HomeAssistantError: If the AP is offline or returns an error. - """ - await self._handle_ap_config_message({"apitem": {"type": "change"}}) - - @staticmethod - def _calculate_runtime_delta(new_data: dict, existing_data: dict) -> int: - """Calculate a tag's runtime delta between check-ins. - - Determines how much runtime to add based on the difference - between last_seen timestamps, taking into account: - - - Power cycles (resets runtime counter) - - Invalid intervals (exceeding max_valid_interval) - - Args: - new_data: New tag data received from AP - existing_data: Previously stored tag data - - Returns: - int: Runtime in seconds to add to the tag's total runtime, - or 0 if the interval is invalid or a power cycle occurred - """ - last_seen_old = existing_data.get("last_seen", 0) - last_seen_new = new_data.get("lastseen", 0) - - if last_seen_old == 0: - return 0 - - time_diff = last_seen_new - last_seen_old - max_valid_interval = 600 # 10 minutes - max expected interval between check-ins - - wake_reason = new_data.get("wakeupReason") - is_power_cycle = wake_reason in [1, 252, 254] # BOOT, FIRSTBOOT, WDT_RESET - - if is_power_cycle or time_diff > max_valid_interval: - return 0 - - return time_diff - - async def async_update_ap_info(self) -> None: - """Force update of AP configuration. - - Fetches the current configuration from the AP via HTTP - and updates the internal state. This will trigger updates - for any entities that display configuration values. - - This can be called manually to refresh configuration or - is triggered automatically when the AP sends a configuration - change notification. - - Raises: - aiohttp.ClientError: If connection fails or HTTP error occurs - asyncio.TimeoutError: If request times out - """ - async with async_timeout.timeout(10): - async with self._session.get(f"http://{self.host}/sysinfo") as response: - response.raise_for_status() # Raises ClientResponseError on non-2xx - - data = await response.json() - self.ap_env = data.get("env") - self.ap_model = self._format_ap_model(self.ap_env) - - @staticmethod - def _format_ap_model(ap_env: str) -> str: - """Format the build string to a user-friendly display name. - - Converts technical model identifiers received from the AP - into human-readable device model names for display in the UI. - - For example: - - - "OpenEPaper_Mini_AP_v4" becomes "Mini AP v4" - - "ESP32_S3_16_8_YELLOW_AP" becomes "Yellow AP" - - Args: - ap_env: The raw build environment string from the AP - - Returns: - str: Human-friendly model name if known, or the original - string if no mapping exists. Returns "ESP32" if input is empty. - """ - if not ap_env: - return "ESP32" - - model_mapping = { - "ESP32_S3_C6_NANO_AP": "Nano AP", - "OpenDisplay_Mini_AP_v4": "Mini AP v4", - "OpenDisplay_ESP32-PoE-ISO_AP": "PoE ISO AP", - "ESP32_S3_16_8_LILYGO_AP": "LilyGo T-Panel S3", - "OpenDisplay_AP_and_Flasher": "AP and Flasher", - "OpenDisplay_PoE_AP": "PoE AP", - "BLE_ONLY_AP": "BLE only AP", - "OpenDisplay_Nano_TLSR": "Nano TLSR AP", - "ESP32_S3_16_8_YELLOW_AP": "Yellow AP", - } - - if ap_env in model_mapping: - return model_mapping[ap_env] - - return ap_env - - def is_tag_online(self, tag_mac: str) -> bool: - """Check if a tag is online based on AP's timeout logic. - - Uses AP timeout formula: maxsleep * 60 + 300 seconds. - - Args: - tag_mac: MAC address of the tag. - - Returns: - True if the tag is online, False if timed out or not found. - """ - if tag_mac not in self.tags: - return False - - tag_data = self.get_tag_data(tag_mac) - last_seen = tag_data.get("last_seen", 0) - - if last_seen == 0: - return False - - modecfgjson = tag_data.get("modecfgjson") - maxsleep = 60 # Default - - if modecfgjson and isinstance(modecfgjson, dict): - maxsleep = modecfgjson.get("maxsleep", 60) - - timeout_threshold = (maxsleep * 60) + 300 - current_time = datetime.now(timezone.utc).timestamp() - - return (current_time - last_seen) < timeout_threshold + super()._async_handle_bluetooth_event(service_info, change) diff --git a/custom_components/opendisplay/device_trigger.py b/custom_components/opendisplay/device_trigger.py deleted file mode 100644 index 793dcca..0000000 --- a/custom_components/opendisplay/device_trigger.py +++ /dev/null @@ -1,183 +0,0 @@ -from __future__ import annotations - -from typing import Final - -import voluptuous as vol -import logging -from homeassistant.components.device_automation import DEVICE_TRIGGER_BASE_SCHEMA -from homeassistant.components.homeassistant.triggers import event as event_trigger -from homeassistant.const import ( - CONF_DEVICE_ID, - CONF_DOMAIN, - CONF_PLATFORM, - CONF_TYPE, -) -from homeassistant.helpers import device_registry as dr -from .const import DOMAIN - -_LOGGER: Final = logging.getLogger(__name__) - -TRIGGER_TYPES = {"GPIO", "NFC", "BUTTON1", "BUTTON2", "BUTTON3", "BUTTON4", "BUTTON5", "BUTTON6", "BUTTON7", "BUTTON8", "BUTTON9", "BUTTON10"} - -TRIGGER_SCHEMA = DEVICE_TRIGGER_BASE_SCHEMA.extend( - { - vol.Required(CONF_TYPE): vol.In(TRIGGER_TYPES), - } -) - - -async def async_get_triggers(hass, device_id): - """Return a list of triggers for OpenDisplay devices. - - Defines all the available triggers for a specific device. - This function is called by Home Assistant when setting up - automations to let users choose which triggers to use. - - All supported trigger types (BUTTON1, BUTTON2, BUTTON3, NFC, GPIO) are - presented for each device, regardless of hardware capability. - - TODO Tag specific triggers will be implemented later. - - Args: - hass: Home Assistant instance - device_id: ID of the device to get triggers for - - Returns: - list: List of trigger dictionaries, each defining a specific - trigger that can be used in automations - """ - # device_registry = dr.async_get(hass) - # device = device_registry.async_get(device_id) - triggers = [] - triggers.append({ - # Required fields of TRIGGER_BASE_SCHEMA - CONF_PLATFORM: "device", - CONF_DOMAIN: DOMAIN, - CONF_DEVICE_ID: device_id, - # Required fields of TRIGGER_SCHEMA - CONF_TYPE: "BUTTON1", - }) - triggers.append({ - # Required fields of TRIGGER_BASE_SCHEMA - CONF_PLATFORM: "device", - CONF_DOMAIN: DOMAIN, - CONF_DEVICE_ID: device_id, - # Required fields of TRIGGER_SCHEMA - CONF_TYPE: "BUTTON2", - }) - triggers.append({ - # Required fields of TRIGGER_BASE_SCHEMA - CONF_PLATFORM: "device", - CONF_DOMAIN: DOMAIN, - CONF_DEVICE_ID: device_id, - # Required fields of TRIGGER_SCHEMA - CONF_TYPE: "BUTTON3", - }) - triggers.append({ - # Required fields of TRIGGER_BASE_SCHEMA - CONF_PLATFORM: "device", - CONF_DOMAIN: DOMAIN, - CONF_DEVICE_ID: device_id, - # Required fields of TRIGGER_SCHEMA - CONF_TYPE: "BUTTON4", - }) - triggers.append({ - # Required fields of TRIGGER_BASE_SCHEMA - CONF_PLATFORM: "device", - CONF_DOMAIN: DOMAIN, - CONF_DEVICE_ID: device_id, - # Required fields of TRIGGER_SCHEMA - CONF_TYPE: "BUTTON5", - }) - triggers.append({ - # Required fields of TRIGGER_BASE_SCHEMA - CONF_PLATFORM: "device", - CONF_DOMAIN: DOMAIN, - CONF_DEVICE_ID: device_id, - # Required fields of TRIGGER_SCHEMA - CONF_TYPE: "BUTTON6", - }) - triggers.append({ - # Required fields of TRIGGER_BASE_SCHEMA - CONF_PLATFORM: "device", - CONF_DOMAIN: DOMAIN, - CONF_DEVICE_ID: device_id, - # Required fields of TRIGGER_SCHEMA - CONF_TYPE: "BUTTON7", - }) - triggers.append({ - # Required fields of TRIGGER_BASE_SCHEMA - CONF_PLATFORM: "device", - CONF_DOMAIN: DOMAIN, - CONF_DEVICE_ID: device_id, - # Required fields of TRIGGER_SCHEMA - CONF_TYPE: "BUTTON8", - }) - triggers.append({ - # Required fields of TRIGGER_BASE_SCHEMA - CONF_PLATFORM: "device", - CONF_DOMAIN: DOMAIN, - CONF_DEVICE_ID: device_id, - # Required fields of TRIGGER_SCHEMA - CONF_TYPE: "BUTTON9", - }) - triggers.append({ - # Required fields of TRIGGER_BASE_SCHEMA - CONF_PLATFORM: "device", - CONF_DOMAIN: DOMAIN, - CONF_DEVICE_ID: device_id, - # Required fields of TRIGGER_SCHEMA - CONF_TYPE: "BUTTON10", - }) - triggers.append({ - # Required fields of TRIGGER_BASE_SCHEMA - CONF_PLATFORM: "device", - CONF_DOMAIN: DOMAIN, - CONF_DEVICE_ID: device_id, - # Required fields of TRIGGER_SCHEMA - CONF_TYPE: "NFC", - }) - triggers.append({ - # Required fields of TRIGGER_BASE_SCHEMA - CONF_PLATFORM: "device", - CONF_DOMAIN: DOMAIN, - CONF_DEVICE_ID: device_id, - # Required fields of TRIGGER_SCHEMA - CONF_TYPE: "GPIO", - }) - return triggers - - -async def async_attach_trigger(hass, config, action, trigger_info): - """Attach a trigger to a specific OpenDisplay device. - - Sets up an event listener that will call the provided action - when the specified trigger event occurs. The trigger is implemented - as an event listener for the 'opendisplay_event' event type - with filtering for the specific device ID and trigger type. - - When a tag reports an event (e.g., button press), the hub converts - it to a Home Assistant event that this listener can respond to. - - Args: - hass: Home Assistant instance - config: Trigger configuration dictionary containing device_id and type - action: Action to perform when the trigger fires - trigger_info: Information about the trigger - - Returns: - function: A function that removes the listener when called - """ - event_config = event_trigger.TRIGGER_SCHEMA( - { - event_trigger.CONF_PLATFORM: "event", - event_trigger.CONF_EVENT_TYPE: "opendisplay_event", - event_trigger.CONF_EVENT_DATA: { - CONF_DEVICE_ID: config[CONF_DEVICE_ID], - CONF_TYPE: config[CONF_TYPE], - }, - } - ) - return await event_trigger.async_attach_trigger( - hass, event_config, action, trigger_info, platform_type="device" - ) diff --git a/custom_components/opendisplay/diagnostics.py b/custom_components/opendisplay/diagnostics.py index fdcce66..0fd89c3 100644 --- a/custom_components/opendisplay/diagnostics.py +++ b/custom_components/opendisplay/diagnostics.py @@ -1,111 +1,40 @@ """Diagnostics support for OpenDisplay.""" -from __future__ import annotations +import dataclasses from typing import Any from homeassistant.components.diagnostics import async_redact_data -from homeassistant.const import CONF_HOST from homeassistant.core import HomeAssistant -from .const import DOMAIN -from .coordinator import Hub -from .runtime_data import OpenDisplayConfigEntry, OpenDisplayBLERuntimeData +from . import OpenDisplayConfigEntry -# Sensitive fields to redact -TO_REDACT = { - CONF_HOST, # AP IP address - "wifi_ssid", # WiFi network name - "ip", # AP IP in status -} +TO_REDACT = {"ssid", "password", "server_url"} -# Partial redaction for MAC addresses (show last 4 chars) -def _clean_mac(mac: str) -> str: - return mac.replace(":", "").replace("-", "").upper() - - -def _redact_mac(mac: str) -> str: - if not mac: - return "**REDACTED**" - clean = _clean_mac(mac) - suffix = clean[-4:] if len(clean) >= 4 else clean - return f"**REDACTED**{suffix}" - - -def _redact_name_if_mac(name: str | None, mac: str) -> str | None: - if not name: - return name - if _clean_mac(name) == _clean_mac(mac): - return _redact_mac(mac) - return name - - -def _redact_tag_data(tags: dict[str, dict]) -> dict[str, dict]: - result = {} - for mac, data in tags.items(): - redacted_mac = _redact_mac(mac) - redacted_data = dict(data) - redacted_data["tag_mac"] = redacted_mac - if "tag_name" in redacted_data: - redacted_data["tag_name"] = _redact_name_if_mac(redacted_data["tag_name"], mac) - if "modecfgjson" in redacted_data: - redacted_data["modecfgjson"] = "**REDACTED**" - result[redacted_mac] = redacted_data - return result +def _asdict(obj: Any) -> Any: + """Recursively convert a dataclass to a dict, encoding bytes as hex strings.""" + if dataclasses.is_dataclass(obj) and not isinstance(obj, type): + return {f.name: _asdict(getattr(obj, f.name)) for f in dataclasses.fields(obj)} + if isinstance(obj, bytes): + return obj.hex() + if isinstance(obj, list): + return [_asdict(item) for item in obj] + return obj async def async_get_config_entry_diagnostics( - hass: HomeAssistant, entry: OpenDisplayConfigEntry + hass: HomeAssistant, entry: OpenDisplayConfigEntry ) -> dict[str, Any]: """Return diagnostics for a config entry.""" - - title = entry.title - host = entry.data.get(CONF_HOST) - if host and host in title: - title = title.replace(host, "**REDACTED**") - - # Common entry info - diag: dict[str, Any] = { - "config_entry": { - "title": title, - "version": entry.version, - "minor_version": entry.minor_version, - "data": async_redact_data(dict(entry.data), TO_REDACT), - "options": async_redact_data(dict(entry.options), TO_REDACT), + runtime = entry.runtime_data + fw = runtime.firmware + + return { + "firmware": { + "major": fw["major"], + "minor": fw["minor"], + "sha": fw["sha"], }, + "is_flex": runtime.is_flex, + "device_config": async_redact_data(_asdict(runtime.device_config), TO_REDACT), } - - runtime_data = entry.runtime_data - - if isinstance(runtime_data, Hub): - # AP-based entry - hub = runtime_data - diag["device_type"] = "ap" - diag["ap"] = { - "online": hub.online, - "model": hub.ap_model, - "environment": hub.ap_env, - "status": async_redact_data(hub.ap_status, TO_REDACT), - "config": async_redact_data(hub.ap_config, TO_REDACT), - } - diag["tags"] = { - "count": len(hub.tags), - "blacklisted_count": len(hub.get_blacklisted_tags()), - "data": _redact_tag_data({ - mac: hub.get_tag_data(mac) for mac in hub.tags - }), - } - - elif isinstance(runtime_data, OpenDisplayBLERuntimeData): - # BLE device entry - ble_data = runtime_data - diag["device_type"] = "ble" - diag["ble"] = { - "mac_address": _redact_mac(ble_data.mac_address), - "name": _redact_name_if_mac(ble_data.name, ble_data.mac_address), - "protocol_type": ble_data.protocol_type, - "device_metadata": ble_data.device_metadata, # Hardware specs (not sensitive) - "sensor_count": len(ble_data.sensors), - } - - return diag diff --git a/custom_components/opendisplay/entity.py b/custom_components/opendisplay/entity.py index 828b1ea..6220218 100644 --- a/custom_components/opendisplay/entity.py +++ b/custom_components/opendisplay/entity.py @@ -1,219 +1,29 @@ -from __future__ import annotations +"""Base entity for OpenDisplay devices.""" -from typing import TYPE_CHECKING +from homeassistant.components.bluetooth.passive_update_coordinator import ( + PassiveBluetoothCoordinatorEntity, +) +from homeassistant.helpers.device_registry import CONNECTION_BLUETOOTH, DeviceInfo +from homeassistant.helpers.entity import EntityDescription -from homeassistant.components import bluetooth -from homeassistant.core import callback -from homeassistant.helpers.dispatcher import async_dispatcher_connect -from homeassistant.helpers.entity import DeviceInfo, Entity -from .ble import BLEDeviceMetadata +from .coordinator import OpenDisplayCoordinator -from .const import DOMAIN, OPENDISPLAY_CONFIG_URL, ATC_CONFIG_URL -from .tag_types import get_hw_string, get_hw_dimensions -if TYPE_CHECKING: - from .coordinator import Hub - from .runtime_data import OpenDisplayConfigEntry +class OpenDisplayEntity(PassiveBluetoothCoordinatorEntity[OpenDisplayCoordinator]): + """Base class for all OpenDisplay entities.""" - -def _format_tag_firmware_version(firmware_version) -> str: - """Format AP tag firmware versions without raising on malformed data.""" - if firmware_version in (None, ""): - return "Unknown" - - firmware_version_str = str(firmware_version) - try: - return f"0x{int(firmware_version_str, 16):X}" - except ValueError: - return firmware_version_str - - -class OpenDisplayAPEntity(Entity): - """ - Base entity for AP-level entities (switch, select, text, AP sensors). - - Provides: - - device_info for AP device - - available property (hub.online) - - Signal registration for connection status updates - - Common callbacks for state updates - - Subclasses must set: - - _attr_unique_id - - _attr_translation_key - """ - _attr_has_entity_name = True - _attr_entity_registry_enabled_default = False - - def __init__(self, hub: Hub) -> None: - self._hub = hub - - @property - def device_info(self) -> DeviceInfo: - """Return device info for the AP.""" - return DeviceInfo( - identifiers={(DOMAIN, "ap")}, - name="OEPL AP", - model=self._hub.ap_model, - manufacturer="OpenEPaperLink", - configuration_url=f"http://{self._hub.host}" - ) - - @property - def available(self) -> bool: - """Return if the entity is available.""" - return self._hub.online - - async def async_added_to_hass(self) -> None: - """Register the connection status signal handler.""" - self.async_on_remove( - async_dispatcher_connect( - self.hass, - f"{DOMAIN}_connection_status", - self._handle_connection_status, - ) - ) - - @callback - def _handle_connection_status(self, is_online: bool) -> None: - """Handle connection status updates.""" - self.async_write_ha_state() - - @callback - def _handle_update(self) -> None: - """Handle data updates.""" - self.async_write_ha_state() - - -class OpenDisplayTagEntity(Entity): - """ - Base entity for tag-level entities (sensors, buttons, text, image). - - Provides: - - device_info for tag device - - available property (hub.online + tag online + not blacklisted) - - Signal registration for tag updates and connection status - - Common callbacks for state updates - - Subclasses must set: - - _attr_unique_id - - _attr_translation_key - """ - _attr_has_entity_name = True - _attr_entity_registry_enabled_default = False - - def __init__(self, hub: Hub, tag_mac: str) -> None: - """Initialize the tag entity.""" - self._hub = hub - self._tag_mac = tag_mac - - @property - def device_info(self) -> DeviceInfo: - """Return device info for the tag.""" - tag_data = self._hub.get_tag_data(self._tag_mac) - tag_name = tag_data.get("tag_name", self._tag_mac) - hw_type = tag_data.get("hw_type", 0) - hw_string = get_hw_string(hw_type) - width, height = get_hw_dimensions(hw_type) - firmware_version = tag_data.get("version") - - return DeviceInfo( - identifiers={(DOMAIN, self._tag_mac)}, - name=tag_name, - manufacturer="OpenEPaperLink", - model=hw_string, - via_device=(DOMAIN, "ap"), - sw_version=_format_tag_firmware_version(firmware_version), - serial_number=self._tag_mac, - hw_version=f"{width}x{height}", - ) - - @property - def available(self) -> bool: - """Return if the entity is available.""" - return ( - self._hub.online - and self._hub.is_tag_online(self._tag_mac) - and self._tag_mac not in self._hub.get_blacklisted_tags() - ) - - async def async_added_to_hass(self) -> None: - """Register update signal handlers.""" - self.async_on_remove( - async_dispatcher_connect( - self.hass, - f"{DOMAIN}_tag_update_{self._tag_mac}", - self._handle_update, - ) - ) - self.async_on_remove( - async_dispatcher_connect( - self.hass, - f"{DOMAIN}_connection_status", - self._handle_connection_status, - ) - ) - - @callback - def _handle_update(self) -> None: - """Handle tag data updates.""" - self.async_write_ha_state() - - @callback - def _handle_connection_status(self, is_online: bool) -> None: - """Handle connection status updates.""" - self.async_write_ha_state() - -class OpenDisplayBLEEntity(Entity): - """ - Base entity for BLE device entities (sensors, light, button, image). - - Provides: - - device_info for BLE device (using BLEDeviceMetadata) - - available property (bluetooth.async_address_present) - - Subclasses must set: - - _attr_unique_id - - _attr_translation_key - """ _attr_has_entity_name = True - _attr_entity_registry_enabled_default = False def __init__( - self, - mac_address: str, - name: str, - entry: OpenDisplayConfigEntry, + self, + coordinator: OpenDisplayCoordinator, + description: EntityDescription, ) -> None: - """Initialize the BLE entity.""" - self._mac_address = mac_address - self._name = name - self._entry = entry - - @property - def device_info(self) -> DeviceInfo: - """Return device info for the BLE device.""" + """Initialize the entity.""" + super().__init__(coordinator) + self.entity_description = description + self._attr_unique_id = f"{coordinator.address}-{description.key}" - current_metadata = self._entry.runtime_data.device_metadata - metadata = BLEDeviceMetadata(current_metadata) - - device_info = { - "identifiers": {(DOMAIN, f"ble_{self._mac_address}")}, - "name": self._name, - "manufacturer": "OpenDisplay", - "model": metadata.model_name, - "sw_version": metadata.formatted_fw_version(), - "hw_version": f"{metadata.width}x{metadata.height}" if metadata.width and metadata.height else None, - } - - if metadata.is_open_display: - device_info["configuration_url"] = OPENDISPLAY_CONFIG_URL - else: - device_info["configuration_url"] = ATC_CONFIG_URL - - return DeviceInfo(**device_info) - - @property - def available(self) -> bool: - """Return if the entity is available.""" - return bluetooth.async_address_present(self.hass, self._mac_address) + self._attr_device_info = DeviceInfo( + connections={(CONNECTION_BLUETOOTH, coordinator.address)}, + ) diff --git a/custom_components/opendisplay/event.py b/custom_components/opendisplay/event.py new file mode 100644 index 0000000..df3d05c --- /dev/null +++ b/custom_components/opendisplay/event.py @@ -0,0 +1,91 @@ +"""Event platform for OpenDisplay devices — button press/release events.""" + +from dataclasses import dataclass + +from homeassistant.components.event import ( + EventDeviceClass, + EventEntity, + EventEntityDescription, +) +from homeassistant.core import HomeAssistant, callback +from homeassistant.helpers import entity_registry as er +from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback + +from . import OpenDisplayConfigEntry +from .entity import OpenDisplayEntity + +PARALLEL_UPDATES = 0 + + +@dataclass(frozen=True, kw_only=True) +class OpenDisplayEventEntityDescription(EventEntityDescription): + """Describes an OpenDisplay button event entity.""" + + byte_index: int + button_id: int + + +async def async_setup_entry( + hass: HomeAssistant, + entry: OpenDisplayConfigEntry, + async_add_entities: AddConfigEntryEntitiesCallback, +) -> None: + """Set up OpenDisplay event entities from binary_inputs device config.""" + coordinator = entry.runtime_data.coordinator + + descriptions: list[OpenDisplayEventEntityDescription] = [] + button_number = 0 + for bi in entry.runtime_data.device_config.binary_inputs: + for button_id in range(8): # input_flags is a bitmask over 8 pin slots + if bi.input_flags & (1 << button_id): + button_number += 1 + descriptions.append( + OpenDisplayEventEntityDescription( + key=f"button_{bi.instance_number}_{button_id}", + translation_key="button", + translation_placeholders={"number": str(button_number)}, + device_class=EventDeviceClass.BUTTON, + event_types=["button_down", "button_up"], + byte_index=bi.button_data_byte_index, + button_id=button_id, + ) + ) + + active_unique_ids = {f"{coordinator.address}-{d.key}" for d in descriptions} + button_unique_id_prefix = f"{coordinator.address}-button_" + entity_registry = er.async_get(hass) + for entity_entry in er.async_entries_for_config_entry( + entity_registry, entry.entry_id + ): + if ( + entity_entry.domain == "event" + and entity_entry.unique_id.startswith(button_unique_id_prefix) + and entity_entry.unique_id not in active_unique_ids + ): + entity_registry.async_remove(entity_entry.entity_id) + + async_add_entities( + OpenDisplayEventEntity(coordinator, description) for description in descriptions + ) + + +class OpenDisplayEventEntity(OpenDisplayEntity, EventEntity): + """A button event entity for an OpenDisplay device.""" + + entity_description: OpenDisplayEventEntityDescription + _last_processed_data: object | None = None + + @callback + def _handle_coordinator_update(self) -> None: + """Fire events for button transitions reported by this coordinator update.""" + data = self.coordinator.data + if data is not None and data is not self._last_processed_data: + for event in data.button_events: + if ( + event.byte_index == self.entity_description.byte_index + and event.button_id == self.entity_description.button_id + and event.event_type in self.event_types + ): + self._trigger_event(event.event_type) + self._last_processed_data = data + self.async_write_ha_state() diff --git a/custom_components/opendisplay/g5_decoder.py b/custom_components/opendisplay/g5_decoder.py deleted file mode 100644 index dd00699..0000000 --- a/custom_components/opendisplay/g5_decoder.py +++ /dev/null @@ -1,696 +0,0 @@ -#!/usr/bin/env python3 -""" -G5 Image Decoder - Python port of JavaScript G5 decoder -A 1-bpp image decoder for OpenDisplay displays - -Original JavaScript version by Larry Bank, Nic Limper -Python port with complete image assembly pipeline -""" - -import ctypes -import numpy as np -from PIL import Image -from typing import Union, Tuple, Dict, Any -import json - - -# ============================================================================ -# Exception Classes -# ============================================================================ - -class G5DecoderError(Exception): - """Base exception for G5 decoder errors""" - pass - - -class G5InvalidParameterError(G5DecoderError): - """Invalid parameters provided to decoder""" - pass - - -class G5DecodeError(G5DecoderError): - """Error during G5 decoding process""" - pass - - -class G5UnsupportedFeatureError(G5DecoderError): - """Unsupported G5 feature encountered""" - pass - - -class G5DataOverflowError(G5DecoderError): - """Data overflow during decoding""" - pass - - -class G5MaxFlipsExceededError(G5DecoderError): - """Maximum flips exceeded during decoding""" - pass - - -# ============================================================================ -# Constants -# ============================================================================ - -# Return codes (matching JavaScript) -G5_SUCCESS = 0 -G5_INVALID_PARAMETER = 1 -G5_DECODE_ERROR = 2 -G5_UNSUPPORTED_FEATURE = 3 -G5_ENCODE_COMPLETE = 4 -G5_DECODE_COMPLETE = 5 -G5_NOT_INITIALIZED = 6 -G5_DATA_OVERFLOW = 7 -G5_MAX_FLIPS_EXCEEDED = 8 - -# Decoder configuration -MAX_IMAGE_FLIPS = 640 -REGISTER_WIDTH = 32 - -# Horizontal prefix bits -HORIZ_SHORT_SHORT = 0 -HORIZ_SHORT_LONG = 1 -HORIZ_LONG_SHORT = 2 -HORIZ_LONG_LONG = 3 - -# Code table for Group 4 (MMR) decoding -# Format: code, bit_length pairs -CODE_TABLE = [ - 0x90, 0, 0x40, 0, # trash, uncompressed mode - codes 0 and 1 - 3, 7, # V(-3) pos = 2 - 0x13, 7, # V(3) pos = 3 - 2, 6, 2, 6, # V(-2) pos = 4,5 - 0x12, 6, 0x12, 6, # V(2) pos = 6,7 - 0x30, 4, 0x30, 4, 0x30, 4, 0x30, 4, # pass pos = 8->F - 0x30, 4, 0x30, 4, 0x30, 4, 0x30, 4, - 0x20, 3, 0x20, 3, 0x20, 3, 0x20, 3, # horiz pos = 10->1F - 0x20, 3, 0x20, 3, 0x20, 3, 0x20, 3, - 0x20, 3, 0x20, 3, 0x20, 3, 0x20, 3, - 0x20, 3, 0x20, 3, 0x20, 3, 0x20, 3, # V(-1) pos = 20->2F - 1, 3, 1, 3, 1, 3, 1, 3, - 1, 3, 1, 3, 1, 3, 1, 3, - 1, 3, 1, 3, 1, 3, 1, 3, - 1, 3, 1, 3, 1, 3, 1, 3, - 0x11, 3, 0x11, 3, 0x11, 3, 0x11, 3, # V(1) pos = 30->3F - 0x11, 3, 0x11, 3, 0x11, 3, 0x11, 3, - 0x11, 3, 0x11, 3, 0x11, 3, 0x11, 3, - 0x11, 3, 0x11, 3, 0x11, 3, 0x11, 3 -] - - -# ============================================================================ -# Utility Functions -# ============================================================================ - -def read_motorola_long(data: bytes, offset: int) -> int: - """ - Read 32-bit big-endian integer from bytes, equivalent to TIFFMOTOLONG - Handles partial reads when near end of data - """ - value = 0 - for i in range(4): - if offset + i < len(data): - value |= data[offset + i] << (24 - i * 8) - return value - - -def parse_g5_header(data: bytes) -> Tuple[int, int, int, int]: - """ - Parse G5 header and return (header_size, width, height, compression_mode) - - Header format (matching JavaScript drawCanvas.js): - - data[0]: header size - - data[1:3]: width (data[2] << 8 | data[1]) - - data[3:5]: height (data[4] << 8 | data[3]) - - data[5]: compression mode (0-3) - """ - if len(data) < 6: - raise G5InvalidParameterError("Data too short for G5 header") - - header_size = data[0] - width = (data[2] << 8) | data[1] # Matching JavaScript: (data[2] << 8) | data[1] - height = (data[4] << 8) | data[3] # Matching JavaScript: (data[4] << 8) | data[3] - compression_mode = data[5] - - if compression_mode > 3: - raise G5UnsupportedFeatureError(f"Unsupported compression mode: {compression_mode}") - - # Note: compression mode 2 doubling is handled AFTER validation in process_g5() - return header_size, width, height, compression_mode - - -def validate_header_against_tagtype(width: int, height: int, tagtype: Dict[str, Any]) -> None: - """Validate parsed header against tagtype specifications""" - tagtype_width = tagtype.get('width', 0) - tagtype_height = tagtype.get('height', 0) - - width_valid = (width == tagtype_width or width == tagtype_height) - height_valid = (height == tagtype_width or height == tagtype_height) - - if not (width_valid and height_valid): - raise G5InvalidParameterError( - f"Header dimensions {width}x{height} don't match tagtype {tagtype_width}x{tagtype_height}" - ) - - -# ============================================================================ -# G5 Decoder Class -# ============================================================================ - -class G5Decoder: - """Main G5 decoder class with precise 32-bit arithmetic""" - - def __init__(self): - self.width = 0 - self.height = 0 - self.error = 0 - self.y = 0 - self.vlc_size = 0 - self.h_len = 0 - self.pitch = 0 - - # Use ctypes for precise 32-bit arithmetic - self.u32_accum = ctypes.c_uint32(0) - self.bit_off = ctypes.c_uint32(0) - self.bits = ctypes.c_uint32(0) - - # Buffer management - self.src_data: bytes = None - self.buf_index = 0 - - # Flip tracking arrays - self.cur_flips = np.zeros(MAX_IMAGE_FLIPS, dtype=np.int16) - self.ref_flips = np.zeros(MAX_IMAGE_FLIPS, dtype=np.int16) - - def init_decoder(self, width: int, height: int, data: bytes) -> int: - """Initialize decoder with image parameters""" - if not data or width < 1 or height < 1 or len(data) < 1: - return G5_INVALID_PARAMETER - - self.vlc_size = len(data) - self.src_data = data - self.bit_off = ctypes.c_uint32(0) - self.y = 0 - self.bits = ctypes.c_uint32(read_motorola_long(data, 0)) - self.width = width - self.height = height - - return G5_SUCCESS - - def decode_begin(self) -> None: - """Initialize internal structures for decoding""" - xsize = self.width - - # Seed current and reference lines with xsize for V(0) codes - # JavaScript: for (let i = 0; i < MAX_IMAGE_FLIPS - 2; i++) - for i in range(MAX_IMAGE_FLIPS - 2): - self.ref_flips[i] = xsize - self.cur_flips[i] = xsize - - # Prefill with 0x7fff to prevent walking off the end - self.cur_flips[MAX_IMAGE_FLIPS - 2] = 0x7fff - self.cur_flips[MAX_IMAGE_FLIPS - 1] = 0x7fff - self.ref_flips[MAX_IMAGE_FLIPS - 2] = 0x7fff - self.ref_flips[MAX_IMAGE_FLIPS - 1] = 0x7fff - - # Initialize buffer - self.buf_index = 0 - self.bits = ctypes.c_uint32(read_motorola_long(self.src_data, 0)) - self.bit_off = ctypes.c_uint32(0) - - # Calculate bits needed for long horizontal code (matching JavaScript) - # JavaScript: 32 - Math.clz32(width) = bit length needed to represent width - if self.width == 0: - self.h_len = 0 - else: - self.h_len = self.width.bit_length() - - def decode_line(self) -> int: - """Decode a single line of G5 data""" - a0 = -1 - cur_index = 0 - ref_index = 0 - xsize = self.width - h_len = self.h_len - h_mask = (1 << h_len) - 1 - - # Local copies - use Python ints for simpler arithmetic, wrap at the end - bits = self.bits.value - bit_off = self.bit_off.value - buf_index = self.buf_index - - while a0 < xsize: - # Refill buffer if needed - if bit_off > (REGISTER_WIDTH - 8): - buf_index += (bit_off >> 3) - bit_off &= 7 - if buf_index < len(self.src_data): - bits = read_motorola_long(self.src_data, buf_index) - - # Check for V(0) code (most significant bit after offset) - # JavaScript: ((ulBits << ulBitOff) & 0x80000000) !== 0 - # Ensure 32-bit arithmetic with proper wrapping - shifted_bits = (bits << bit_off) & 0xFFFFFFFF - test_bit = shifted_bits & 0x80000000 - if test_bit != 0: - # V(0) code - a0 = self.ref_flips[ref_index] - ref_index += 1 - self.cur_flips[cur_index] = a0 - cur_index += 1 - bit_off += 1 - else: - # Extract code from lookup table - # JavaScript: (ulBits >> (REGISTER_WIDTH - 8 - ulBitOff)) & 0xfe - l_bits = (bits >> (REGISTER_WIDTH - 8 - bit_off)) & 0xfe - s_code = CODE_TABLE[l_bits] - bit_off += CODE_TABLE[l_bits + 1] - - if s_code in [1, 2, 3]: # V(-1), V(-2), V(-3) - a0 = self.ref_flips[ref_index] - s_code - self.cur_flips[cur_index] = a0 - cur_index += 1 - if ref_index == 0: - ref_index += 2 - ref_index -= 1 - while a0 >= self.ref_flips[ref_index]: - ref_index += 2 - - elif s_code in [0x11, 0x12, 0x13]: # V(1), V(2), V(3) - a0 = self.ref_flips[ref_index] - ref_index += 1 - b1 = a0 - a0 += s_code & 7 - if b1 != xsize and a0 < xsize: - while a0 >= self.ref_flips[ref_index]: - ref_index += 2 - if a0 > xsize: - a0 = xsize - self.cur_flips[cur_index] = a0 - cur_index += 1 - - elif s_code == 0x20: # Horizontal codes - if bit_off > (REGISTER_WIDTH - 16): - buf_index += (bit_off >> 3) - bit_off &= 7 - if buf_index < len(self.src_data): - bits = read_motorola_long(self.src_data, buf_index) - - a0_p = max(0, a0) - l_bits = (bits >> ((REGISTER_WIDTH - 2) - bit_off)) & 0x3 - bit_off += 2 - - # Handle different horizontal code types - if l_bits == HORIZ_SHORT_SHORT: - tot_run = (bits >> ((REGISTER_WIDTH - 3) - bit_off)) & 0x7 - bit_off += 3 - tot_run1 = (bits >> ((REGISTER_WIDTH - 3) - bit_off)) & 0x7 - bit_off += 3 - elif l_bits == HORIZ_SHORT_LONG: - tot_run = (bits >> ((REGISTER_WIDTH - 3) - bit_off)) & 0x7 - bit_off += 3 - tot_run1 = (bits >> ((REGISTER_WIDTH - h_len) - bit_off)) & h_mask - bit_off += h_len - elif l_bits == HORIZ_LONG_SHORT: - tot_run = (bits >> ((REGISTER_WIDTH - h_len) - bit_off)) & h_mask - bit_off += h_len - tot_run1 = (bits >> ((REGISTER_WIDTH - 3) - bit_off)) & 0x7 - bit_off += 3 - else: # HORIZ_LONG_LONG - tot_run = (bits >> ((REGISTER_WIDTH - h_len) - bit_off)) & h_mask - bit_off += h_len - if bit_off > (REGISTER_WIDTH - 16): - buf_index += (bit_off >> 3) - bit_off &= 7 - if buf_index < len(self.src_data): - bits = read_motorola_long(self.src_data, buf_index) - tot_run1 = (bits >> ((REGISTER_WIDTH - h_len) - bit_off)) & h_mask - bit_off += h_len - - a0 = a0_p + tot_run - self.cur_flips[cur_index] = a0 - cur_index += 1 - a0 += tot_run1 - - if a0 < xsize: - while a0 >= self.ref_flips[ref_index]: - ref_index += 2 - self.cur_flips[cur_index] = a0 - cur_index += 1 - - elif s_code == 0x30: # Pass code - ref_index += 1 - a0 = self.ref_flips[ref_index] - ref_index += 1 - - else: # ERROR - self.error = G5_DECODE_ERROR - return self.error - - # Finalize line - self.cur_flips[cur_index] = xsize - self.cur_flips[cur_index + 1] = xsize - - # Update state - convert back to ctypes - self.bits = ctypes.c_uint32(bits & 0xFFFFFFFF) - self.bit_off = ctypes.c_uint32(bit_off) - self.buf_index = buf_index - - return self.error - - def draw_line(self, output_buffer: bytearray, line_offset: int) -> None: - """Draw decoded line to output buffer""" - xright = self.width - cur_index = 0 - - # Calculate line length in bytes - line_len = (xright + 7) >> 3 - - # Initialize line to white (0xff) - for i in range(line_len): - output_buffer[line_offset + i] = 0xff - - # Note: x is not incremented in the loop, like JavaScript - x = 0 - while x < xright: # This continues until break condition - start_x = self.cur_flips[cur_index] - cur_index += 1 - run = self.cur_flips[cur_index] - start_x - cur_index += 1 - - if start_x >= xright or run <= 0: - break - - # Calculate visible run - visible_x = max(0, start_x) - visible_run = min(xright, start_x + run) - visible_x - - if visible_run > 0: - start_byte = visible_x >> 3 - end_byte = (visible_x + visible_run) >> 3 - - l_bit = (0xff << (8 - (visible_x & 7))) & 0xff - r_bit = 0xff >> ((visible_x + visible_run) & 7) - - if end_byte == start_byte: - # Run fits in single byte - output_buffer[line_offset + start_byte] &= (l_bit | r_bit) - else: - # Mask left-most byte - output_buffer[line_offset + start_byte] &= l_bit - - # Set intermediate bytes to 0 - for i in range(start_byte + 1, end_byte): - output_buffer[line_offset + i] = 0x00 - - # Mask right-most byte if not fully aligned - if end_byte < line_len: - output_buffer[line_offset + end_byte] &= r_bit - - -# ============================================================================ -# Image Assembly Functions -# ============================================================================ - -def render_16bit_rgb565(data: bytes, width: int, height: int) -> Image.Image: - """Render 16-bit RGB565 format with scaling factors""" - is_16_bit = len(data) == width * height * 2 - img_array = np.zeros((height, width, 3), dtype=np.uint8) - - for i in range(min(width * height, len(data) // (2 if is_16_bit else 1))): - y, x = divmod(i, width) - - if is_16_bit: - data_index = i * 2 - rgb = (data[data_index] << 8) | data[data_index + 1] - - r = ((rgb >> 11) & 0x1F) << 3 - g = ((rgb >> 5) & 0x3F) << 2 - b = (rgb & 0x1F) << 3 - else: - rgb = data[i] - r = int((((rgb >> 5) & 0x07) << 5) * 1.13) - g = int((((rgb >> 2) & 0x07) << 5) * 1.13) - b = int(((rgb & 0x03) << 6) * 1.3) - - img_array[y, x] = [r, g, b] - - return Image.fromarray(img_array, 'RGB') - - -def render_indexed_color(data: bytes, width: int, height: int, bpp: int, colortable: Dict[str, Any]) -> Image.Image: - """Render 3-4 bit indexed color with bit-packed pixels""" - img_array = np.zeros((height, width, 3), dtype=np.uint8) - - # Convert colortable to list format for indexing - if isinstance(colortable, dict): - # Handle both string keys and direct color arrays - if 'white' in colortable: - # Named colors - color_list = [colortable.get('white', [255, 255, 255]), - colortable.get('black', [0, 0, 0]), - colortable.get('red', [255, 0, 0])] - else: - # Direct color arrays - color_list = list(colortable.values()) - else: - color_list = colortable - - pixel_index = 0 - bit_offset = 0 - - while bit_offset < len(data) * 8 and pixel_index < width * height: - byte_index = bit_offset >> 3 - start_bit = bit_offset & 7 - - # Extract pixel value - if byte_index + 1 < len(data): - word = (data[byte_index] << 8) | data[byte_index + 1] - else: - word = data[byte_index] << 8 - - pixel_value = (word >> (16 - bpp - start_bit)) & ((1 << bpp) - 1) - - # Map to color - if pixel_value < len(color_list): - color = color_list[pixel_value] - y, x = divmod(pixel_index, width) - img_array[y, x] = color[:3] - - pixel_index += 1 - bit_offset += bpp - - return Image.fromarray(img_array, 'RGB') - - -def render_monochrome_or_tricolor(data: bytes, width: int, height: int, bpp: int, colortable: Dict[str, Any]) -> Image.Image: - """Render 1-2 bit monochrome or tricolor (B/W/R) displays""" - img_array = np.zeros((height, width, 3), dtype=np.uint8) - - # Convert colortable to list format - if isinstance(colortable, dict): - if 'white' in colortable: - color_list = [colortable.get('white', [255, 255, 255]), - colortable.get('black', [0, 0, 0]), - colortable.get('red', [255, 0, 0])] - else: - color_list = list(colortable.values()) - else: - color_list = colortable - - # Detect dual-plane format - use DISPLAY dimensions like JavaScript - # JavaScript: (data.length >= (canvas.width * canvas.height / 8) * 2) - expected_size = (width * height) // 8 - offset_red = expected_size if len(data) >= expected_size * 2 else 0 - - # JavaScript: for (let i = 0; i < data.length; i++) - # But limit to canvas bounds like JavaScript imageData - for i in range(len(data)): - for j in range(8): - pixel_index = i * 8 + j - - # Bounds check - don't go beyond canvas - if pixel_index >= width * height: - continue - - y, x = divmod(pixel_index, width) - - if offset_red: - # Dual-plane: combine black and red planes - black_bit = 1 if (data[i] & (1 << (7 - j))) else 0 - red_bit = 1 if (data[i + offset_red] & (1 << (7 - j))) else 0 - pixel_value = black_bit | (red_bit << 1) - else: - # Single plane - pixel_value = 1 if (data[i] & (1 << (7 - j))) else 0 - - # Map to color - if pixel_value < len(color_list): - img_array[y, x] = color_list[pixel_value][:3] - - return Image.fromarray(img_array, 'RGB') - - - -def assemble_image_from_bitmap(bitmap_data: bytes, tagtype: Dict[str, Any]) -> Image.Image: - """ - Assemble final image from decoded bitmap data using tagtype specifications - Supports all rendering paths: 16-bit RGB565, 3-4 bit indexed, 1-2 bit B/W/R - """ - # JavaScript canvas dimension logic: - # [canvas.width, canvas.height] = [tagTypes[hwtype].width, tagTypes[hwtype].height] - canvas_width = tagtype['width'] - canvas_height = tagtype['height'] - - # if (tagTypes[hwtype].rotatebuffer % 2) [canvas.width, canvas.height] = [canvas.height, canvas.width] - rotatebuffer = tagtype.get('rotatebuffer', 0) - if rotatebuffer % 2: - canvas_width, canvas_height = canvas_height, canvas_width - - bpp = tagtype['bpp'] - colortable = tagtype.get('colortable', {}) - - if bpp == 16: - image = render_16bit_rgb565(bitmap_data, canvas_width, canvas_height) - elif bpp in [3, 4]: - image = render_indexed_color(bitmap_data, canvas_width, canvas_height, bpp, colortable) - else: # bpp in [1, 2] - image = render_monochrome_or_tricolor(bitmap_data, canvas_width, canvas_height, bpp, colortable) - - # Apply final rotation for display based on rotatebuffer - # JavaScript: if (doRotate == false && tagTypes[hwtype].rotatebuffer == 1) canvas.style.transform = 'rotate(90deg)' - if rotatebuffer == 1: - # 90 degrees clockwise (to the right) - image = image.transpose(Image.ROTATE_270) # PIL ROTATE_270 = 90° clockwise - elif rotatebuffer == 2: - # 180 degrees - image = image.transpose(Image.ROTATE_180) - elif rotatebuffer == 3: - # 270 degrees clockwise = 90 degrees counter-clockwise - image = image.transpose(Image.ROTATE_90) - - return image - - -# ============================================================================ -# Main Interface -# ============================================================================ - -def decode_g5_to_bitmap(data: bytes, width: int, height: int) -> bytes: - """Core G5 decoding function - returns raw bitmap bytes""" - decoder = G5Decoder() - - # Initialize decoder - init_result = decoder.init_decoder(width, height, data) - if init_result != G5_SUCCESS: - error_map = { - G5_INVALID_PARAMETER: G5InvalidParameterError("Invalid decoder parameters") - } - raise error_map.get(init_result, G5DecoderError(f"Decoder initialization failed: {init_result}")) - - # Begin decoding - decoder.decode_begin() - - # Calculate output buffer size (1 bit per pixel, padded to byte boundary) - bytes_per_line = (width + 7) // 8 - output_buffer = bytearray(height * bytes_per_line) - - # Decode each line - for y in range(height): - decoder.y = y - decode_result = decoder.decode_line() - - if decode_result != G5_SUCCESS: - raise G5DecodeError(f"Decoding error on line {y}: {decode_result}") - - decoder.draw_line(output_buffer, y * bytes_per_line) - - # Swap current and reference flip arrays - decoder.cur_flips, decoder.ref_flips = decoder.ref_flips, decoder.cur_flips - - return bytes(output_buffer) - - -def process_g5(data: bytes, tagtype: Dict[str, Any], output_format: str = 'pil') -> Union[Image.Image, bytes]: - """ - Main entry point for G5 decoding and image assembly - - Args: - data: Raw G5 compressed image data - tagtype: Tag type specification dictionary - output_format: 'pil' for PIL Image, 'bytes' for raw bitmap - - Returns: - PIL Image or raw bytes depending on output_format - """ - if not data or not tagtype: - raise G5InvalidParameterError("Data and tagtype must be provided") - - # Parse header - header_size, width, height, compression_mode = parse_g5_header(data) - - # Validate against tagtype (before doubling, matching JavaScript) - validate_header_against_tagtype(width, height, tagtype) - - # Apply compression mode 2 doubling AFTER validation (matching JavaScript) - if compression_mode == 2: - height *= 2 - - # Extract payload data (skip header) - payload_data = data[header_size:] - - # Decode G5 compressed data to bitmap - bitmap_data = decode_g5_to_bitmap(payload_data, width, height) - - if output_format == 'bytes': - return bitmap_data - elif output_format == 'pil': - # JavaScript uses tagtype dimensions for offsetRed calculation and display - return assemble_image_from_bitmap(bitmap_data, tagtype) - else: - raise G5InvalidParameterError(f"Unsupported output format: {output_format}") - - -def load_tagtype_from_file(filename: str) -> Dict[str, Any]: - """Load tagtype specification from JSON file""" - with open(filename, 'r') as f: - return json.load(f) - - -# ============================================================================ -# Testing/CLI Interface -# ============================================================================ - -def main(): - """Command-line interface for testing""" - import sys - - if len(sys.argv) != 3: - print("Usage: python g5_decoder.py ") - sys.exit(1) - - g5_file, tagtype_file = sys.argv[1], sys.argv[2] - - try: - # Load files - with open(g5_file, 'rb') as f: - g5_data = f.read() - - tagtype = load_tagtype_from_file(tagtype_file) - - # Process G5 image - image = process_g5(g5_data, tagtype) - - # Save result - output_file = f"{g5_file}_decoded.png" - image.save(output_file) - print(f"Decoded image saved as: {output_file}") - print(f"Image size: {image.size}") - - except Exception as e: - print(f"Error: {e}") - sys.exit(1) - - -if __name__ == "__main__": - main() \ No newline at end of file diff --git a/custom_components/opendisplay/icons.json b/custom_components/opendisplay/icons.json index 51a31b3..e3e394c 100644 --- a/custom_components/opendisplay/icons.json +++ b/custom_components/opendisplay/icons.json @@ -1,241 +1,7 @@ { "services": { - "dlimg": { - "service": "mdi:download" - }, - "lines4": { - "service": "mdi:text-long" - }, - "lines5": { - "service": "mdi:text-long" - }, - "drawcustom": { - "service": "mdi:code-braces-box" - }, - "setled": { - "service": "mdi:wall-sconce-flat-variant" - }, - "clear_pending": { - "service": "mdi:broom" - }, - "force_refresh": { - "service": "mdi:refresh" - }, - "reboot_tag": { - "service": "mdi:restart" - }, - "scan_channels": { - "service": "mdi:wifi" - }, - "reboot_ap": { - "service": "mdi:restart" - }, - "refresh_tag_types": { - "service": "mdi:refresh" - }, - "set_content_mode": { - "service": "mdi:format-text" - } - }, - "entity": { - "sensor": { - "ip": { - "default": "mdi:ip" - }, - "wifi_ssid": { - "default": "mdi:wifi-settings" - }, - "record_count": { - "default": "mdi:tag-multiple" - }, - "db_size": { - "default": "mdi:database-settings" - }, - "little_fs_free": { - "default": "mdi:database-outline" - }, - "ap_state": { - "default": "mdi:access-point" - }, - "run_state": { - "default": "mdi:cog" - }, - "wifi_rssi": { - "default": "mdi:wifi-strength-4" - }, - "heap": { - "default": "mdi:chip" - }, - "sys_time": { - "default": "mdi:clock-outline" - }, - "uptime": { - "default": "mdi:timer" - }, - "low_battery_tag_count": { - "default": "mdi:battery-alert" - }, - "timeout_tag_count": { - "default": "mdi:tag-off" - }, - "ps_ram_free": { - "default": "mdi:memory" - }, - "temperature": { - "default": "mdi:thermometer" - }, - "battery_voltage": { - "default": "mdi:battery" - }, - "battery_percentage": { - "default": "mdi:battery" - }, - "last_seen": { - "default": "mdi:history" - }, - "next_update": { - "default": "mdi:update" - }, - "next_checkin": { - "default": "mdi:clock-check" - }, - "lqi": { - "default": "mdi:signal-cellular-outline" - }, - "rssi": { - "default": "mdi:signal-distance-variant" - }, - "pending_updates": { - "default": "mdi:sync-circle" - }, - "content_mode": { - "default": "mdi:view-grid-outline" - }, - "wakeup_reason": { - "default": "mdi:power" - }, - "capabilities": { - "default": "mdi:list-box-outline" - }, - "update_count": { - "default": "mdi:counter" - }, - "width": { - "default": "mdi:arrow-expand-horizontal" - }, - "height": { - "default": "mdi:arrow-expand-vertical" - }, - "runtime": { - "default": "mdi:timer-outline" - }, - "boot_count": { - "default": "mdi:restart" - }, - "checkin_count": { - "default": "mdi:clock-check" - }, - "block_requests": { - "default": "mdi:transfer" - } - }, - "button": { - "clear_pending": { - "default": "mdi:broom" - }, - "force_refresh": { - "default": "mdi:refresh" - }, - "reboot_tag": { - "default": "mdi:restart" - }, - "scan_channels": { - "default": "mdi:wifi" - }, - "deep_sleep": { - "default": "mdi:sleep" - }, - "reboot_ap": { - "default": "mdi:restart" - }, - "refresh_tag_types": { - "default": "mdi:refresh" - }, - "refresh_config": { - "default": "mdi:refresh" - } - }, - "switch": { - "preview": { - "default": "mdi:eye" - }, - "ble": { - "default": "mdi:bluetooth" - }, - "nightlyreboot": { - "default": "mdi:restart" - }, - "showtimestamp": { - "default": "mdi:clock" - } - }, - "select": { - "channel": { - "default": "mdi:wifi" - }, - "led": { - "default": "mdi:brightness-5" - }, - "tft": { - "default": "mdi:brightness-5" - }, - "maxsleep": { - "default": "mdi:sleep" - }, - "lock": { - "default": "mdi:lock" - }, - "wifipower": { - "default": "mdi:wifi-strength-4" - }, - "language": { - "default": "mdi:translate" - }, - "discovery": { - "default": "mdi:access-point-network" - }, - "subghzchannel": { - "default": "mdi:antenna" - }, - "sleeptime1": { - "default": "mdi:sleep" - }, - "sleeptime2": { - "default": "mdi:sleep" - } - }, - "text": { - "alias": { - "default": "mdi:rename-box" - }, - "repo": { - "default": "mdi:source-repository" - } - }, - "light": { - "led": { - "default": "mdi:lightbulb" - } - }, - "image": { - "content": { - "default": "mdi:monitor" - } - }, - "update": { - "firmware": { - "default": "mdi:update" - } + "upload_image": { + "service": "mdi:image-move" } } -} \ No newline at end of file +} diff --git a/custom_components/opendisplay/image.py b/custom_components/opendisplay/image.py deleted file mode 100644 index 776b9f8..0000000 --- a/custom_components/opendisplay/image.py +++ /dev/null @@ -1,296 +0,0 @@ -from __future__ import annotations - -PARALLEL_UPDATES = 0 - -import logging -from datetime import datetime -from typing import Final -import requests - -from homeassistant.helpers.dispatcher import async_dispatcher_connect -from .util import is_ble_entry -from .entity import OpenDisplayTagEntity, OpenDisplayBLEEntity -from .runtime_data import OpenDisplayConfigEntry -from .const import DOMAIN, SIGNAL_TAG_IMAGE_UPDATE -from homeassistant.components.image import ImageEntity -from homeassistant.core import HomeAssistant, callback -from homeassistant.helpers.entity_platform import AddEntitiesCallback -from .image_decompressor import to_image -from .tag_types import TagType, get_tag_types_manager - -_LOGGER: Final = logging.getLogger(__name__) - -async def async_setup_entry( - hass: HomeAssistant, - entry: OpenDisplayConfigEntry, - async_add_entities: AddEntitiesCallback, -) -> bool: - """Set up the OpenDisplay image platform.""" - - entry_data = entry.runtime_data - - if is_ble_entry(entry_data): - mac_address = entry_data.mac_address - name = entry_data.name - device_metadata = entry_data.device_metadata - - image_entity = OpenDisplayBLEImage( - hass=hass, - mac_address=mac_address, - name=name, - device_metadata=device_metadata, - entry=entry, - ) - async_add_entities([image_entity], True) - return True - - hub = entry.runtime_data - - # Track added image entities to prevent duplicates - added_image_entities = set() - - async def async_add_image_entity(tag_mac: str) -> None: - - # Skip if image entity already exists - if tag_mac in added_image_entities: - return - - # Skip if tag is blacklisted - if tag_mac in hub.get_blacklisted_tags(): - _LOGGER.debug("Skipping image entity creation for blacklisted tag: %s", tag_mac) - return - - # Skip AP (it's not a tag) - if tag_mac == "ap": - return - - image_entity = ESLImage(hass, tag_mac, hub) - added_image_entities.add(tag_mac) - async_add_entities([image_entity], True) - - # Add image entity for existing tags - for tag_mac in hub.tags: - await async_add_image_entity(tag_mac) - - # Register callback for new tag discovery - entry.async_on_unload( - async_dispatcher_connect( - hass, - f"{DOMAIN}_tag_discovered", - async_add_image_entity - ) - ) - - # Register callback for blacklist updates - async def handle_blacklist_update() -> None: - """Handle updates to the tag blacklist. - - Processes changes to the blacklisted tags configuration by - removing image entities for tags that have been blacklisted. - - When a tag is added to the blacklist: - - 1. Its entry is removed from the 'added_image_entities' set - 2. Its corresponding image entity is removed from Home Assistant - 3. The image entity will automatically be excluded from future discoveries - - This ensures blacklisted tags don't appear in the UI and - don't consume resources with unnecessary image processing. - """ - for tag_mac in hub.get_blacklisted_tags(): - if tag_mac in added_image_entities: - added_image_entities.remove(tag_mac) - - entry.async_on_unload( - async_dispatcher_connect( - hass, - f"{DOMAIN}_blacklist_update", - handle_blacklist_update - ) - ) - - return True - -class ESLImage(OpenDisplayTagEntity, ImageEntity): - """Image entity class for OpenDisplay tags. - - Provides an image entity that shows the current content displayed - on a tag by fetching its raw image data from the AP and - converting it to a standard image format. - """ - - _attr_entity_registry_enabled_default = True - _attr_has_entity_name = True - - def __init__(self, hass: HomeAssistant, tag_mac: str, hub) -> None: - """Initialize the image entity.""" - ImageEntity.__init__(self, hass) - OpenDisplayTagEntity.__init__(self, hub, tag_mac) - self._attr_translation_key = "content" - self._attr_unique_id = f"{tag_mac}_display_content" - tag_data = hub.get_tag_data(tag_mac) - self._name = f"{tag_data.get('tag_name', tag_mac)}" - self._attr_content_type = "image/jpeg" - self._cached_image: bytes | None = None - self._last_updated: datetime | None = None - self._tag_type = None - self._last_error = None - - @property - def available(self) -> bool: - """Return if entity is available.""" - return ( - super().available - and self._tag_mac in self._hub.tags - ) - - @property - def image_last_updated(self) -> datetime | None: - """Return the last updated image timestamp.""" - return self._last_updated - - async def _fetch_raw_image(self) -> bytes | None: - """Fetch raw image data from AP.""" - url = f"http://{self._hub.host}/current/{self._tag_mac}.raw" - try: - result = await self.hass.async_add_executor_job(lambda: requests.get(url)) - if result.status_code == 200: - return result.content - if result.status_code == 404: - _LOGGER.debug("No image found for %s", self._tag_mac) - return None - _LOGGER.error("Failed to fetch image for %s: HTTP %d", self._tag_mac, result.status_code) - return None - except Exception as err: - _LOGGER.error("Error fetching image for %s: %s", self._tag_mac, str(err)) - return None - - async def _get_tag_def(self) -> TagType | None: - """Get tag definition for image decoding.""" - if self._tag_type is None: - try: - tag_data = self._hub.get_tag_data(self._tag_mac) - hw_type = tag_data.get("hw_type") - if hw_type is None: - return None - tag_manager = await get_tag_types_manager(self.hass) - tag_type = await tag_manager.get_tag_info(hw_type) - if tag_type is None: - return None - self._tag_type = tag_type - except Exception as err: - _LOGGER.error("Error getting tag definition for %s: %s", self._tag_mac, str(err)) - return None - return self._tag_type - - async def async_image(self) -> bytes | None: - """Return cached image bytes, fetching if needed.""" - if self._cached_image is None: - await self._refresh_image() - return self._cached_image - - async def _refresh_image(self) -> None: - """Refresh the cached image data.""" - try: - raw_data = await self._fetch_raw_image() - if raw_data: - tag_def = await self._get_tag_def() - if tag_def: - try: - jpeg_data = await self.hass.async_add_executor_job( - lambda: to_image(raw_data, tag_def) - ) - self._cached_image = jpeg_data - self._last_updated = datetime.now() - self.async_write_ha_state() - except Exception as err: - _LOGGER.error("Error decoding image for %s: %s", self._tag_mac, str(err)) - self._cached_image = None - else: - self._cached_image = None - except Exception as err: - _LOGGER.error("Error refreshing image for %s: %s", self._tag_mac, str(err)) - self._cached_image = None - - async def async_added_to_hass(self) -> None: - """Register callback when entity is added.""" - # Don't call super() - different signals are used for image updates - self.async_on_remove( - async_dispatcher_connect( - self.hass, - f"{SIGNAL_TAG_IMAGE_UPDATE}_{self._tag_mac}", - self._handle_tag_image_update - ) - ) - self.async_on_remove( - async_dispatcher_connect( - self.hass, - f"{DOMAIN}_connection_status", - self._handle_connection_status - ) - ) - - @callback - def _handle_tag_image_update(self, data) -> None: - """Handle tag image updates.""" - if isinstance(data, bytes): - self._cached_image = data - self._last_updated = datetime.now() - elif data: - self.hass.async_create_task(self._refresh_image()) - self.async_write_ha_state() - - -class OpenDisplayBLEImage(OpenDisplayBLEEntity, ImageEntity): - """Image entity for BLE OpenDisplay devices. - - Captures and displays the content generated by drawcustom service calls. - """ - - _attr_entity_registry_enabled_default = True - _attr_has_entity_name = True - - def __init__( - self, - hass: HomeAssistant, - mac_address: str, - name: str, - device_metadata: dict, - entry: OpenDisplayConfigEntry, - ): - """Initialize the BLE image entity.""" - ImageEntity.__init__(self, hass) - OpenDisplayBLEEntity.__init__(self, mac_address, name, entry) - self._device_metadata = device_metadata - self._attr_translation_key = "content" - self._attr_unique_id = f"opendisplay_ble_{mac_address}_display_content" - self._attr_content_type = "image/jpeg" - self._cached_image: bytes | None = None - self._last_updated: datetime | None = None - - @property - def image_last_updated(self) -> datetime | None: - """Return the last updated image timestamp.""" - return self._last_updated - - async def async_image(self) -> bytes | None: - """Return cached image bytes.""" - return self._cached_image - - async def async_added_to_hass(self) -> None: - """Register callback when entity is added.""" - self.async_on_remove( - async_dispatcher_connect( - self.hass, - f"{SIGNAL_TAG_IMAGE_UPDATE}_{self._mac_address}", - self._handle_image_update - ) - ) - - @callback - def _handle_image_update(self, data) -> None: - """Handle image data updates.""" - if isinstance(data, bytes): - self._cached_image = data - self._last_updated = datetime.now() - self.async_write_ha_state() diff --git a/custom_components/opendisplay/image_decompressor.py b/custom_components/opendisplay/image_decompressor.py deleted file mode 100644 index 873c2d3..0000000 --- a/custom_components/opendisplay/image_decompressor.py +++ /dev/null @@ -1,258 +0,0 @@ -"""Image decoder for OpenDisplay raw image format.""" -from __future__ import annotations - -import io -import logging -import zlib - -from PIL import Image - -from .tag_types import TagType -from .g5_decoder import parse_g5_header, process_g5 -_LOGGER = logging.getLogger(__name__) - - -def decode_esl_raw(data: bytes, tag_type: TagType) -> bytes: - """Decode an OpenDisplay raw file. - - Processes raw image data from the OEPL AP, handling: - - - G5 compression detection and decompression - - Zlib compression detection and decompression - - BWR/BWY dual-plane formats for 2-bit displays - - Packed pixel formats for higher color depths - - Buffer rotation settings from tag type - - The function detects the data format based on the tag type - information and header data, then processes accordingly. - - Args: - data: Raw image data bytes from the AP - tag_type: TagType object containing display specifications - - Returns: - bytes: Decoded raw bitmap data ready for rendering - - Raises: - Exception: For decompression errors or invalid data format - """ - _LOGGER.debug(f"decode_esl_raw received data (first 16 bytes): {data[:16].hex()}") - - # Check for G5 compression using our working decoder - if len(data) >= 6: - try: - header_size, width, height, compression_mode = parse_g5_header(data) - if compression_mode in [1, 2]: # Valid G5 compression modes - _LOGGER.debug(f"Found G5 compressed data: {width}x{height}, mode {compression_mode}") - tagtype_dict = { - 'width': tag_type.width, - 'height': tag_type.height, - 'bpp': tag_type.bpp, - 'rotatebuffer': tag_type.rotatebuffer, - 'colortable': tag_type.color_table - } - bitmap_data = process_g5(data, tagtype_dict, output_format='bytes') - return bitmap_data - except Exception as e: - _LOGGER.debug(f"Not G5 format: {e}") - # Fall through to other decompression methods - - _LOGGER.debug(f"Input size: {len(data)} bytes") - _LOGGER.debug(f"Tag type: {tag_type.name}") - _LOGGER.debug(f"Dimensions: {tag_type.width}x{tag_type.height}") - _LOGGER.debug(f"BPP: {tag_type.bpp}") - _LOGGER.debug(f"Rotate buffer: {tag_type.rotatebuffer}") - - # Calculate expected sizes - width = tag_type.height if tag_type.rotatebuffer % 2 else tag_type.width - height = tag_type.width if tag_type.rotatebuffer % 2 else tag_type.height - - if tag_type.bpp <= 2: # Traditional 1-2 bit plane-based format - bytes_per_row = (width + 7) // 8 - bytes_per_plane = bytes_per_row * height - total_size = bytes_per_plane * (2 if tag_type.bpp == 2 else 1) - else: # 3-4 bit packed format - bits_per_pixel = tag_type.bpp - bytes_per_row = (width * bits_per_pixel + 7) // 8 - total_size = bytes_per_row * height - - header_size = 6 - - _LOGGER.debug(f"Effective dimensions: {width}x{height}") - _LOGGER.debug(f"Bits per pixel: {tag_type.bpp}") - _LOGGER.debug(f"Expected total size: {total_size} bytes") - - # Check for compressed data - try: - if len(data) >= 4: - compressed_size = int.from_bytes(data[:4], byteorder='little') - if compressed_size > 0: # Compressed data - _LOGGER.debug(f"Found compressed data, size from header: {compressed_size}") - - compressed_data = data[4:] - _LOGGER.debug(f"Compressed data size: {len(compressed_data)} bytes") - - # Decompress data - decompressor = zlib.decompressobj(wbits=15) - decompressed_data = decompressor.decompress(compressed_data) - _LOGGER.debug(f"Decompressed size: {len(decompressed_data)} bytes") - - # Handle potential second block for BWY/BWR mode - if tag_type.bpp == 2 and decompressor.unused_data: - remaining_data = decompressor.unused_data - _LOGGER.debug(f"Found second compressed block: {len(remaining_data)} bytes") - second_decompressor = zlib.decompressobj(wbits=15) - second_block = second_decompressor.decompress(remaining_data) - - # Extract and combine planes - # header = decompressed_data[:header_size] - first_plane = decompressed_data[header_size:header_size + total_size // 2] - second_plane = second_block[header_size:header_size + total_size // 2] - data = first_plane + second_plane - else: - # Single block contains all data - data = decompressed_data[header_size:] - else: - _LOGGER.debug("Data appears to be uncompressed") - # For uncompressed data, pad if necessary - if len(data) < total_size: - _LOGGER.debug(f"Padding uncompressed data to {total_size} bytes") - data = data.ljust(total_size, b'\x00') - return data - - except Exception as e: - _LOGGER.debug(f"Processing failed: {e}") - _LOGGER.debug("Treating as raw data") - if len(data) < total_size: - _LOGGER.debug(f"Padding raw data to {total_size} bytes") - data = data.ljust(total_size, b'\x00') - - return data - - -def to_image(raw_data: bytes, tag_type: TagType) -> bytes: - """Convert decoded ESL raw data to JPEG image. - - Transforms the decoded raw bitmap data into a standard JPEG image - that can be displayed in Home Assistant or saved to disk. - - The conversion process: - - 1. Decodes the raw data using decode_esl_raw - 2. Creates a new PIL Image with appropriate dimensions - 3. Processes pixels based on the tag's color depth and format - 4. Applies rotation according to the tag's buffer rotation setting - 5. Converts to JPEG format - - The color mapping depends on the tag type's color table, - which defines the available colors for different bit values. - - Args: - raw_data: Raw image data from the AP - tag_type: TagType object with display specifications - - Returns: - bytes: JPEG image data - - Raises: - Exception: For image processing errors or invalid color format - """ - data = decode_esl_raw(raw_data, tag_type) - - # For 90/270 degree rotated displays, swap width/height before processing - native_width = tag_type.width - native_height = tag_type.height - if tag_type.rotatebuffer % 2: # 90 or 270 degrees - native_width, native_height = native_height, native_width - - _LOGGER.debug("\n=== Color Table Information ===") - _LOGGER.debug(f"Color table contents: {tag_type.color_table}") - - # Create initial image - img = Image.new('RGB', (native_width, native_height), 'white') - pixels = img.load() - - # Convert color table to RGB tuples - color_table = {k: tuple(v) for k, v in tag_type.color_table.items()} - - _LOGGER.debug(f"Available colors: {list(color_table.keys())}") - - # Process pixels based on color depth - if tag_type.bpp <= 2: # Traditional 1-2 bit plane-based format - bytes_per_row = (native_width + 7) // 8 - bytes_per_plane = bytes_per_row * native_height - - # Split into planes for 2bpp mode - black_plane = data[:bytes_per_plane] - color_plane = data[bytes_per_plane:bytes_per_plane * 2] if tag_type.bpp == 2 else None - - # Process pixels - for y in range(native_height): - row_offset = y * bytes_per_row - for x in range(native_width): - byte_offset = row_offset + (x // 8) - bit_mask = 0x80 >> (x % 8) - - black = bool(black_plane[byte_offset] & bit_mask) - color = bool(color_plane[byte_offset] & bit_mask) if color_plane else False - - if black and color: - pixels[x, y] = color_table['black'] # Overlap - elif black: - pixels[x, y] = color_table['black'] - elif color: - # Use first available color that's not black or white - color_key = next((k for k in color_table.keys() - if k not in ['black', 'white']), 'white') - pixels[x, y] = color_table[color_key] - else: - pixels[x, y] = color_table['white'] - - else: # 3-4 bit packed format - bits_per_pixel = tag_type.bpp - # pixels_per_byte = 8 // bits_per_pixel - bit_mask = (1 << bits_per_pixel) - 1 - bytes_per_row = (native_width * bits_per_pixel + 7) // 8 - - # Convert color table to list for indexed access - colors_list = list(color_table.values()) - - for y in range(native_height): - for x in range(native_width): - # Calculate byte and bit positions - bit_position = (x * bits_per_pixel) % 8 - byte_offset = (y * bytes_per_row) + (x * bits_per_pixel) // 8 - - if byte_offset < len(data): - # Extract the color index - if bit_position + bits_per_pixel <= 8: - # Color index is contained within a single byte - color_index = (data[byte_offset] >> (8 - bit_position - bits_per_pixel)) & bit_mask - else: - # Color index spans two bytes - first_byte = data[byte_offset] & ((1 << (8 - bit_position)) - 1) - bits_from_first = 8 - bit_position - bits_from_second = bits_per_pixel - bits_from_first - if byte_offset + 1 < len(data): - second_byte = data[byte_offset + 1] >> (8 - bits_from_second) - color_index = (first_byte << bits_from_second) | second_byte - else: - color_index = first_byte << bits_from_second - - # Set pixel color - if color_index < len(colors_list): - pixels[x, y] = colors_list[color_index] - - # Apply rotation - if tag_type.rotatebuffer == 1: # 90 degrees CCW - img = img.transpose(Image.Transpose.ROTATE_270) - elif tag_type.rotatebuffer == 2: # 180 degrees - img = img.transpose(Image.Transpose.ROTATE_180) - elif tag_type.rotatebuffer == 3: # 270 degrees CCW (90 CW) - img = img.transpose(Image.Transpose.ROTATE_90) - - # Convert to JPEG - output = io.BytesIO() - img.save(output, format='JPEG', quality=95) - output.seek(0) - return output.read() \ No newline at end of file diff --git a/custom_components/opendisplay/imagegen/__init__.py b/custom_components/opendisplay/imagegen/__init__.py deleted file mode 100644 index 716011b..0000000 --- a/custom_components/opendisplay/imagegen/__init__.py +++ /dev/null @@ -1,23 +0,0 @@ -"""ImageGen package for ESL image generation.""" -from .core import ImageGen -from .types import ElementType, DrawingContext, TextSegment -from .colors import ColorResolver, WHITE, BLACK, RED, YELLOW, HALF_BLACK, HALF_RED, HALF_YELLOW -from .coordinates import CoordinateParser -from .fonts import FontManager - -__all__ = [ - "ImageGen", - "ElementType", - "DrawingContext", - "TextSegment", - "ColorResolver", - "CoordinateParser", - "FontManager", - "WHITE", - "BLACK", - "RED", - "YELLOW", - "HALF_BLACK", - "HALF_RED", - "HALF_YELLOW", -] \ No newline at end of file diff --git a/custom_components/opendisplay/imagegen/assets/materialdesignicons-webfont.ttf b/custom_components/opendisplay/imagegen/assets/materialdesignicons-webfont.ttf deleted file mode 100644 index b00c684d3ef14be87f0badd2eecc88babc70fea0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1279992 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

Vz%BI5ISB4rq<#CQzu_v`(d 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

sI8*jO$Q`uC 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
92hx+iGRisP~?k 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%0D?jCv+4X?4%MwSw6i7fz| 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⩔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
  • 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 V1lyp_Rzbp^Bq<&)(0}{e{{tt+BMbll diff --git a/custom_components/opendisplay/imagegen/assets/materialdesignicons-webfont_meta.json b/custom_components/opendisplay/imagegen/assets/materialdesignicons-webfont_meta.json deleted file mode 100644 index b1f4390..0000000 --- a/custom_components/opendisplay/imagegen/assets/materialdesignicons-webfont_meta.json +++ /dev/null @@ -1,118127 +0,0 @@ -[ - { - "id": "CBFA6722-0EE6-49B4-B5C2-0B177A5523C2", - "baseIconId": "CBFA6722-0EE6-49B4-B5C2-0B177A5523C2", - "name": "ab-testing", - "codepoint": "F01C9", - "aliases": [], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Michael Richins" - }, - { - "id": "5B09B959-4A49-4674-9035-6CFD3D157C3F", - "baseIconId": "5B09B959-4A49-4674-9035-6CFD3D157C3F", - "name": "abacus", - "codepoint": "F16E0", - "aliases": [], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Colton Wiscombe" - }, - { - "id": "E20665F3-5354-46C2-9162-4202B20DCA05", - "baseIconId": "E20665F3-5354-46C2-9162-4202B20DCA05", - "name": "abjad-arabic", - "codepoint": "F1328", - "aliases": [ - "writing-system-arabic" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Haley Halcyon" - }, - { - "id": "FC508376-0233-498A-ABF8-B289241031FF", - "baseIconId": "FC508376-0233-498A-ABF8-B289241031FF", - "name": "abjad-hebrew", - "codepoint": "F1329", - "aliases": [ - "writing-system-hebrew" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Haley Halcyon" - }, - { - "id": "E211A028-22EA-4A78-9306-FC8FF8494D02", - "baseIconId": "E211A028-22EA-4A78-9306-FC8FF8494D02", - "name": "abugida-devanagari", - "codepoint": "F132A", - "aliases": [ - "writing-system-devanagari" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Haley Halcyon" - }, - { - "id": "F782C16A-0558-4347-AB62-3E4A8DD299AD", - "baseIconId": "F782C16A-0558-4347-AB62-3E4A8DD299AD", - "name": "abugida-thai", - "codepoint": "F132B", - "aliases": [ - "writing-system-thai" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Haley Halcyon" - }, - { - "id": "4F013652-22DE-48CF-886B-A0FB995E8B41", - "baseIconId": "4F013652-22DE-48CF-886B-A0FB995E8B41", - "name": "access-point", - "codepoint": "F0003", - "aliases": [ - "wireless" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "45F0D360-E817-4152-A66E-EF019E10ED47", - "baseIconId": "4F013652-22DE-48CF-886B-A0FB995E8B41", - "name": "access-point-check", - "codepoint": "F1538", - "aliases": [ - "access-point-success", - "access-point-tick" - ], - "styles": [ - "check" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "AAFAB208-B7D5-44A0-915F-761A83D295A3", - "baseIconId": "4F013652-22DE-48CF-886B-A0FB995E8B41", - "name": "access-point-minus", - "codepoint": "F1539", - "aliases": [], - "styles": [ - "minus" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "06048943-9EE5-4FE2-91D7-7DA162E55203", - "baseIconId": "4F013652-22DE-48CF-886B-A0FB995E8B41", - "name": "access-point-network", - "codepoint": "F0002", - "aliases": [], - "styles": [ - "network" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "6DC5A262-63FE-4C77-A66C-B323DF4F82BF", - "baseIconId": "4F013652-22DE-48CF-886B-A0FB995E8B41", - "name": "access-point-network-off", - "codepoint": "F0BE1", - "aliases": [], - "styles": [ - "network", - "off" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "ED942A44-4B13-47E6-A674-E376C338F671", - "baseIconId": "4F013652-22DE-48CF-886B-A0FB995E8B41", - "name": "access-point-off", - "codepoint": "F1511", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "41E38A13-4B9B-4260-81EA-1DB407986154", - "baseIconId": "4F013652-22DE-48CF-886B-A0FB995E8B41", - "name": "access-point-plus", - "codepoint": "F153A", - "aliases": [], - "styles": [ - "plus" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "2E102C4D-6301-46CA-A3D8-35270CE751C5", - "baseIconId": "4F013652-22DE-48CF-886B-A0FB995E8B41", - "name": "access-point-remove", - "codepoint": "F153B", - "aliases": [], - "styles": [ - "remove" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "E76EC23F-AB71-49B3-9173-841544527A20", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account", - "codepoint": "F0004", - "aliases": [ - "person", - "user" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User", - "Home Automation" - ], - "author": "Google" - }, - { - "id": "3D869F3A-8C3E-4ECB-829E-7785230FA680", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-alert", - "codepoint": "F0005", - "aliases": [ - "user-alert", - "account-warning", - "user-warning", - "person-alert", - "person-warning" - ], - "styles": [ - "alert" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User", - "Alert \/ Error" - ], - "author": "Austin Andrews" - }, - { - "id": "858CE593-C905-42C6-ABA5-99379EBD95AE", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-alert-outline", - "codepoint": "F0B50", - "aliases": [ - "user-alert-outline", - "account-warning-outline", - "user-warning-outline", - "person-warning-outline", - "person-alert-outline" - ], - "styles": [ - "alert", - "outline" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Account \/ User", - "Alert \/ Error" - ], - "author": "Coffeemate" - }, - { - "id": "785965F1-58C0-42F8-9433-9B6A3ACF1AE6", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-arrow-down", - "codepoint": "F1868", - "aliases": [ - "account-download" - ], - "styles": [ - "arrow" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Colton Wiscombe" - }, - { - "id": "8149AE23-C281-4BB3-8150-A5988CE17CD2", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-arrow-down-outline", - "codepoint": "F1869", - "aliases": [ - "account-download-outline" - ], - "styles": [ - "arrow", - "outline" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Colton Wiscombe" - }, - { - "id": "34EAE057-F0E4-476A-B988-9BD149263BDF", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-arrow-left", - "codepoint": "F0B51", - "aliases": [ - "user-arrow-left", - "person-arrow-left" - ], - "styles": [ - "arrow" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Coffeemate" - }, - { - "id": "D46BABF7-60F1-41B8-BE5E-5D52367FE58C", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-arrow-left-outline", - "codepoint": "F0B52", - "aliases": [ - "user-arrow-left-outline", - "person-arrow-left-outline" - ], - "styles": [ - "arrow", - "outline" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Coffeemate" - }, - { - "id": "6C4EDCE5-0741-4BF4-B16A-112892C6AB98", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-arrow-right", - "codepoint": "F0B53", - "aliases": [ - "user-arrow-right", - "person-arrow-right" - ], - "styles": [ - "arrow" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Coffeemate" - }, - { - "id": "7CB2DA6F-D0F6-4A7A-A761-E53B564744E8", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-arrow-right-outline", - "codepoint": "F0B54", - "aliases": [ - "user-arrow-right-outline", - "person-arrow-right-outline" - ], - "styles": [ - "arrow", - "outline" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Coffeemate" - }, - { - "id": "9F3DF21B-6A76-4916-BA8D-E9EF40D4A01F", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-arrow-up", - "codepoint": "F1867", - "aliases": [ - "account-upload" - ], - "styles": [ - "arrow" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Colton Wiscombe" - }, - { - "id": "A5BAE236-3B16-41B5-B779-435AD2A6DAEE", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-arrow-up-outline", - "codepoint": "F186A", - "aliases": [ - "account-upload-outline" - ], - "styles": [ - "arrow", - "outline" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Colton Wiscombe" - }, - { - "id": "67BA915E-B44A-434E-95D3-9BD94A174164", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-badge", - "codepoint": "F1B0A", - "aliases": [ - "account-online", - "user-online" - ], - "styles": [ - "badge" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Andrej Sharapov" - }, - { - "id": "897CF76D-01B6-47B8-B917-542077D94343", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-badge-outline", - "codepoint": "F1B0B", - "aliases": [ - "user-online-outline", - "account-online-outline" - ], - "styles": [ - "badge", - "outline" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Andrej Sharapov" - }, - { - "id": "474D0A31-E56A-4780-9417-DCF8D9A38830", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-box", - "codepoint": "F0006", - "aliases": [ - "selfie", - "user-box", - "person-box", - "contact" - ], - "styles": [ - "box" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "D612088F-9D2A-424A-9403-046993A3EB14", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-box-multiple", - "codepoint": "F0934", - "aliases": [ - "switch-account", - "user-box-multiple", - "account-boxes", - "user-boxes", - "person-box-multiple", - "person-boxes" - ], - "styles": [ - "box", - "multiple" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "31302999-CD15-4F1F-A5D2-374D90F15099", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-box-multiple-outline", - "codepoint": "F100A", - "aliases": [], - "styles": [ - "box", - "multiple", - "outline" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Irigoyen" - }, - { - "id": "537261C5-1AF6-478F-A8BA-4349865D9C1C", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-box-outline", - "codepoint": "F0007", - "aliases": [ - "selfie-outline", - "user-box-outline", - "portrait", - "contact-outline", - "person-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "31CE9FF1-9698-4ED6-8E9B-392840E55DDE", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-cancel", - "codepoint": "F12DF", - "aliases": [ - "user-cancel", - "user-block", - "person-cancel", - "person-block" - ], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Simran" - }, - { - "id": "D2CDB839-C734-46EA-A4DE-085CBF29DD0F", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-cancel-outline", - "codepoint": "F12E0", - "aliases": [ - "user-cancel-outline", - "user-block-outline", - "person-cancel-outline", - "person-block-outline" - ], - "styles": [ - "outline" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Simran" - }, - { - "id": "1A83D97E-DB88-4EAA-9EDB-28B4E68D77E7", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-card", - "codepoint": "F1BA4", - "aliases": [], - "styles": [], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Jeff Anders" - }, - { - "id": "47B6009B-B618-4A96-83FA-57D7D093952D", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-card-outline", - "codepoint": "F1BA5", - "aliases": [], - "styles": [], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Jeff Anders" - }, - { - "id": "E3270EE8-3F41-481F-9B15-E8925C62A83C", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-cash", - "codepoint": "F1097", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Account \/ User", - "Banking", - "Currency" - ], - "author": "Jacob Wright" - }, - { - "id": "582FFF95-D87F-4A58-A3C1-F1A352BF8F56", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-cash-outline", - "codepoint": "F1098", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Account \/ User", - "Banking", - "Currency" - ], - "author": "Jacob Wright" - }, - { - "id": "F3C76352-A033-4969-BBC4-99E2BEE84FAE", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-check", - "codepoint": "F0008", - "aliases": [ - "user-check", - "account-tick", - "user-tick", - "person-check", - "person-tick", - "how-to-reg", - "account-success" - ], - "styles": [ - "check" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "50F80B8D-C424-4FC1-9A2E-81715787C240", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-check-outline", - "codepoint": "F0BE2", - "aliases": [ - "account-tick-outline", - "user-check-outline", - "user-tick-outline", - "person-check-outline", - "person-tick-outline", - "how-to-reg-outline", - "account-success-outline" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "431A5DA2-1B7E-4B86-8EAE-BEE1099048A1", - "baseIconId": "431A5DA2-1B7E-4B86-8EAE-BEE1099048A1", - "name": "account-child", - "codepoint": "F0A89", - "aliases": [ - "user-child", - "person-child", - "guardian" - ], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "AF386BC9-683F-42B4-97DA-C256CF82C79F", - "baseIconId": "431A5DA2-1B7E-4B86-8EAE-BEE1099048A1", - "name": "account-child-circle", - "codepoint": "F0A8A", - "aliases": [ - "user-child-circle", - "person-child-circle", - "guardian-circle" - ], - "styles": [ - "circle" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "B8194820-B46C-41EB-921A-4DD7DDF9BE1F", - "baseIconId": "431A5DA2-1B7E-4B86-8EAE-BEE1099048A1", - "name": "account-child-outline", - "codepoint": "F10C8", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Sascha Wohlgemuth" - }, - { - "id": "1D7E8F31-998D-442A-80E6-EBB8DFA8CBA2", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-circle", - "codepoint": "F0009", - "aliases": [ - "user-circle", - "person-circle" - ], - "styles": [ - "circle" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "17CE7627-5016-43F9-B42D-AFAAFA0A0564", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-circle-outline", - "codepoint": "F0B55", - "aliases": [ - "user-circle-outline", - "person-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "E9851E02-790A-40FD-918A-BB1145051470", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-clock", - "codepoint": "F0B56", - "aliases": [ - "user-clock", - "account-pending", - "person-clock" - ], - "styles": [ - "clock" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Account \/ User", - "Date \/ Time" - ], - "author": "Coffeemate" - }, - { - "id": "AA800DB2-3369-412C-B881-0F99863D13F7", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-clock-outline", - "codepoint": "F0B57", - "aliases": [ - "user-clock-outline", - "account-pending-outline", - "person-clock-outline" - ], - "styles": [ - "clock", - "outline" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Account \/ User", - "Date \/ Time" - ], - "author": "Coffeemate" - }, - { - "id": "CA7B4B4E-B909-48F5-B93B-7A024D6A9AAA", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-cog", - "codepoint": "F1370", - "aliases": [ - "account-settings" - ], - "styles": [ - "variant" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Account \/ User", - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7B40CAE5-6B01-4E2E-8F23-60ECAB9DAC9F", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-cog-outline", - "codepoint": "F1371", - "aliases": [ - "account-settings-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Account \/ User", - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A6964E10-1CF0-41FA-BDCA-A77C9C6F30AF", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-convert", - "codepoint": "F000A", - "aliases": [ - "user-convert", - "person-convert" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Austin Andrews" - }, - { - "id": "BED42D20-9EEE-4297-81DC-A72F2F9D935D", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-convert-outline", - "codepoint": "F1301", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Simran" - }, - { - "id": "18963ABD-E908-4E3C-B8DA-D87916F269F7", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-cowboy-hat", - "codepoint": "F0E9B", - "aliases": [ - "rancher" - ], - "styles": [ - "variant" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Account \/ User", - "Agriculture" - ], - "author": "Augustin Ursu" - }, - { - "id": "E1C851E1-3BBD-4661-A6FA-C77AD370DC6A", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-cowboy-hat-outline", - "codepoint": "F17F3", - "aliases": [ - "rancher-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Account \/ User", - "Agriculture" - ], - "author": "Jeff Anders" - }, - { - "id": "5AE7D856-B33F-4C37-B7A3-F05DD4D345DD", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-credit-card", - "codepoint": "F1BA6", - "aliases": [ - "account-payment", - "cardholder" - ], - "styles": [], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Account \/ User", - "Banking" - ], - "author": "Jeff Anders" - }, - { - "id": "A19CDCEF-1CFD-4BFE-A323-F66C6EBF0FCE", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-credit-card-outline", - "codepoint": "F1BA7", - "aliases": [ - "account-payment-outline", - "cardholder-outline" - ], - "styles": [ - "outline" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Account \/ User", - "Banking" - ], - "author": "Jeff Anders" - }, - { - "id": "3696B7DF-3E12-44EF-B27F-E171AEB5241F", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-details", - "codepoint": "F0631", - "aliases": [ - "user-details", - "person-details" - ], - "styles": [ - "variant" - ], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Account \/ User", - "Settings" - ], - "author": "Google" - }, - { - "id": "B9137734-8DC1-41D1-9B34-CEDBB1742A39", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-details-outline", - "codepoint": "F1372", - "aliases": [ - "person-details-outline", - "user-details-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Account \/ User", - "Settings" - ], - "author": "Simran" - }, - { - "id": "66271DF7-FF11-4998-9C03-F096CE407E4C", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-edit", - "codepoint": "F06BC", - "aliases": [ - "user-edit", - "person-edit" - ], - "styles": [ - "edit" - ], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Account \/ User", - "Edit \/ Modify" - ], - "author": "Michael Richins" - }, - { - "id": "2374A15A-0DC7-458D-A8BD-766E55DFB0AF", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-edit-outline", - "codepoint": "F0FFB", - "aliases": [], - "styles": [ - "edit", - "outline" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Account \/ User", - "Edit \/ Modify" - ], - "author": "Michael Richins" - }, - { - "id": "5FFF2FB6-08B2-4860-ACCF-72D614641882", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-eye", - "codepoint": "F0420", - "aliases": [ - "account-view" - ], - "styles": [ - "eye" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Irigoyen" - }, - { - "id": "32388085-89F4-4C2C-BE98-1AEBED8F9B95", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-eye-outline", - "codepoint": "F127B", - "aliases": [ - "account-view-outline" - ], - "styles": [ - "eye", - "outline" - ], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Irigoyen" - }, - { - "id": "839928F4-21EA-472B-94A0-C7DFBD6C263A", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-filter", - "codepoint": "F0936", - "aliases": [ - "account-funnel", - "leads" - ], - "styles": [ - "variant" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Irigoyen" - }, - { - "id": "4C7A5C71-F3C9-4BD7-B123-C71BE81CAFB7", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-filter-outline", - "codepoint": "F0F9D", - "aliases": [ - "account-funnel-outline", - "leads-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7B8F1133-B47B-46C0-AAC0-FD87F06B038D", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-group", - "codepoint": "F0849", - "aliases": [ - "user-group", - "users-group", - "person-group", - "people-group", - "accounts-group" - ], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Account \/ User", - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "7DFB1292-669B-4769-A107-FA3359281270", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-group-outline", - "codepoint": "F0B58", - "aliases": [ - "user-group-outline", - "users-group-outline", - "person-group-outline", - "people-group-outline", - "accounts-group-outline" - ], - "styles": [ - "outline" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "GreenTurtwig" - }, - { - "id": "54665F14-32CD-41E3-B5C5-0E9ABDD3A317", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-hard-hat", - "codepoint": "F05B5", - "aliases": [ - "worker", - "construction" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Austin Andrews" - }, - { - "id": "5A21DE4E-D502-4D12-8B2A-58FB95BE0964", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-hard-hat-outline", - "codepoint": "F1A1F", - "aliases": [ - "worker-outline", - "construction-outline" - ], - "styles": [ - "outline" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Contributors" - }, - { - "id": "15C54239-5327-4962-95CD-721512C6B27F", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-heart", - "codepoint": "F0899", - "aliases": [ - "user-heart", - "person-heart" - ], - "styles": [ - "heart" - ], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Account \/ User", - "Medical \/ Hospital" - ], - "author": "Michael Irigoyen" - }, - { - "id": "66013F5C-F7FD-4974-AB80-E624C3E0A5E9", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-heart-outline", - "codepoint": "F0BE3", - "aliases": [ - "user-heart-outline", - "person-heart-outline" - ], - "styles": [ - "heart", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Account \/ User", - "Medical \/ Hospital" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E2BDD02C-EBDD-4394-9C2B-20279DBDF180", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-injury", - "codepoint": "F1815", - "aliases": [ - "account-disability", - "patient", - "person-injury" - ], - "styles": [ - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Medical \/ Hospital", - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "DB3273BF-116D-4AD9-8302-16CE79B64498", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-injury-outline", - "codepoint": "F1816", - "aliases": [ - "account-disability-outline", - "patient-outline", - "person-injury-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Account \/ User", - "Medical \/ Hospital" - ], - "author": "Google" - }, - { - "id": "645E04E6-A328-45DD-9B22-03E2296837B1", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-key", - "codepoint": "F000B", - "aliases": [ - "user-key", - "person-key" - ], - "styles": [ - "key" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "REJack" - }, - { - "id": "85086B0D-4678-4B8E-9824-308F59F09C0F", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-key-outline", - "codepoint": "F0BE4", - "aliases": [ - "user-key-outline", - "person-key-outline" - ], - "styles": [ - "key", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Irigoyen" - }, - { - "id": "BD94D7C7-DFDF-419F-862E-FB1AC3263967", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-lock", - "codepoint": "F115E", - "aliases": [ - "account-security", - "account-secure", - "user-lock", - "person-lock" - ], - "styles": [ - "lock" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Account \/ User", - "Lock" - ], - "author": "Michael Irigoyen" - }, - { - "id": "255D3923-5FE0-4BDD-AAF4-D71735D52E53", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-lock-open", - "codepoint": "F1960", - "aliases": [ - "account-unlocked", - "user-unlocked", - "user-lock-open" - ], - "styles": [ - "lock", - "variant" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Account \/ User", - "Lock" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0E6C1E1C-7F80-445A-92CB-230F04F09093", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-lock-open-outline", - "codepoint": "F1961", - "aliases": [ - "user-lock-open-outline", - "user-unlocked-outline", - "account-unlocked-outline" - ], - "styles": [ - "lock", - "outline", - "variant" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Account \/ User", - "Lock" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F0E25FF6-2E45-4F3D-B9E3-6F251A6B1651", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-lock-outline", - "codepoint": "F115F", - "aliases": [ - "account-security-outline", - "account-secure-outline", - "person-lock-outline", - "user-lock-outline" - ], - "styles": [ - "lock" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Account \/ User", - "Lock" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9CF96408-1A24-4040-AD04-011183CC9ABC", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-minus", - "codepoint": "F000D", - "aliases": [ - "user-minus", - "person-minus" - ], - "styles": [ - "minus" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "REJack" - }, - { - "id": "C03476FC-2655-4137-862E-28D714E93A50", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-minus-outline", - "codepoint": "F0AEC", - "aliases": [ - "user-minus-outline", - "person-minus-outline" - ], - "styles": [ - "minus", - "outline" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Peter Noble" - }, - { - "id": "A8C2EE6C-31B9-4D51-B941-8128FDD77A96", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-multiple", - "codepoint": "F000E", - "aliases": [ - "people", - "user-multiple", - "group", - "accounts", - "users", - "person-multiple" - ], - "styles": [ - "multiple" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "3B3E2DF7-1E21-476A-8473-7F1EAA514D1F", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-multiple-check", - "codepoint": "F08C5", - "aliases": [ - "user-multiple-check", - "account-multiple-tick", - "accounts-check", - "accounts-tick", - "users-check", - "users-tick", - "user-multiple-tick", - "person-multiple-check", - "person-multiple-tick", - "people-check", - "people-tick", - "account-multiple-success" - ], - "styles": [ - "check", - "multiple" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Roberto Graham" - }, - { - "id": "4391B451-368F-4E41-82C5-63A89A2CDE69", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-multiple-check-outline", - "codepoint": "F11FE", - "aliases": [ - "user-multiple-check-outline", - "account-multiple-tick-outline", - "accounts-check-outline", - "accounts-tick-outline", - "users-check-outline", - "users-tick-outline", - "user-multiple-tick-outline", - "person-multiple-check-outline", - "person-multiple-tick-outline", - "people-check-outline", - "people-tick-outline", - "account-multiple-success-outline" - ], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Richins" - }, - { - "id": "BD31FA9F-EC76-44E9-A9F3-A85F83045D78", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-multiple-minus", - "codepoint": "F05D3", - "aliases": [ - "user-multiple-minus", - "accounts-minus", - "users-minus", - "people-minus", - "person-multiple-minus" - ], - "styles": [ - "minus", - "multiple" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "45C692AD-F1E8-404C-BED2-9FD58F0690CD", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-multiple-minus-outline", - "codepoint": "F0BE5", - "aliases": [ - "accounts-minus-outline", - "people-minus-outline", - "user-multiple-minus-outline", - "users-minus-outline", - "person-multiple-minus-outline" - ], - "styles": [ - "minus", - "multiple", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "30C6B7FE-4496-4961-B36F-E0FBC4F2696E", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-multiple-outline", - "codepoint": "F000F", - "aliases": [ - "user-multiple-outline", - "people-outline", - "accounts-outline", - "users-outline" - ], - "styles": [ - "multiple", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "047F8AC1-524D-4077-BCEB-434FE1C50C8B", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-multiple-plus", - "codepoint": "F0010", - "aliases": [ - "user-multiple-plus", - "group-add", - "accounts-plus", - "users-plus", - "person-multiple-plus", - "people-plus", - "person-multiple-add", - "people-add", - "account-multiple-add", - "accounts-add", - "user-multiple-add", - "users-add", - "invite" - ], - "styles": [ - "multiple", - "plus" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "AFF0AB6B-616A-4C18-8E28-EE8067224EED", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-multiple-plus-outline", - "codepoint": "F0800", - "aliases": [ - "group-add-outline", - "user-multiple-plus-outline", - "accounts-plus-outline", - "users-plus-outline", - "person-multiple-plus-outline", - "people-plus-outline", - "person-multiple-add-outline", - "people-add-outline", - "account-multiple-add-outline", - "accounts-add-outline", - "user-multiple-add-outline", - "users-add-outline", - "invite" - ], - "styles": [ - "multiple", - "outline", - "plus" - ], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "998E10E4-B96A-4DB2-9793-3E1C31D42501", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-multiple-remove", - "codepoint": "F120A", - "aliases": [ - "user-multiple-remove", - "person-multiple-remove" - ], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Richins" - }, - { - "id": "618B092A-7228-4E70-A95C-7EB4EC1BA2FB", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-multiple-remove-outline", - "codepoint": "F120B", - "aliases": [ - "user-multiple-remove-outline", - "person-multiple-remove-outline" - ], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Richins" - }, - { - "id": "306F2F2C-4B76-40E9-9561-BC3AD271D6BA", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-music", - "codepoint": "F0803", - "aliases": [ - "artist" - ], - "styles": [ - "variant" - ], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "A8CC9CFF-A5DE-4FC8-A4AC-BCE153F767F8", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-music-outline", - "codepoint": "F0CE9", - "aliases": [ - "artist-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "GreenTurtwig" - }, - { - "id": "8F49C741-4ED8-4DD3-A22E-310C039EDDA6", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-network", - "codepoint": "F0011", - "aliases": [ - "user-network", - "person-network" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Austin Andrews" - }, - { - "id": "AF848CDB-6C2E-4920-9C30-9135EE7AEEFA", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-network-off", - "codepoint": "F1AF1", - "aliases": [], - "styles": [ - "network", - "off" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F3B94B38-61D9-4894-A615-8E36FEC40D47", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-network-off-outline", - "codepoint": "F1AF2", - "aliases": [], - "styles": [ - "network", - "off", - "outline" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2EEA7799-E0DA-4E9B-880E-B5975A6FC11F", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-network-outline", - "codepoint": "F0BE6", - "aliases": [ - "user-network-outline", - "person-network-outline" - ], - "styles": [ - "network", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2306EFC9-3375-4D03-A631-A32BD72075EC", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-off", - "codepoint": "F0012", - "aliases": [ - "user-off", - "person-off" - ], - "styles": [ - "off" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Simran" - }, - { - "id": "231E3EA7-A7EC-41A0-A594-032040488448", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-off-outline", - "codepoint": "F0BE7", - "aliases": [ - "user-off-outline", - "person-off-outline" - ], - "styles": [ - "off", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Austin Andrews" - }, - { - "id": "79ECAAC6-71DC-406C-A9B7-57C5F0BAA9E0", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-outline", - "codepoint": "F0013", - "aliases": [ - "user-outline", - "perm-identity", - "person-outline" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "66556BA4-6B65-4ED9-B813-AD33CA8C2CCF", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-plus", - "codepoint": "F0014", - "aliases": [ - "register", - "user-plus", - "person-add", - "account-add", - "person-plus", - "user-add", - "invite" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User", - "Home Automation" - ], - "author": "Google" - }, - { - "id": "1095C7C6-C264-4415-BD6D-A2078242477E", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-plus-outline", - "codepoint": "F0801", - "aliases": [ - "person-add-outline", - "register-outline", - "user-plus-outline", - "account-add-outline", - "person-plus-outline", - "user-add-outline", - "invite" - ], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "GreenTurtwig" - }, - { - "id": "163F4ADF-F6CC-42D0-AEED-DB61351C624C", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-question", - "codepoint": "F0B59", - "aliases": [ - "user-help", - "account-question-mark", - "account-help", - "user-question", - "person-question", - "person-help" - ], - "styles": [ - "question" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Coffeemate" - }, - { - "id": "C5217A29-708E-4340-AE2D-89A33F364A97", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-question-outline", - "codepoint": "F0B5A", - "aliases": [ - "account-question-mark-outline", - "user-help-outline", - "account-help-outline", - "user-question-outline", - "person-question-outline", - "person-help-outline" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Coffeemate" - }, - { - "id": "AD1CDB51-AAD9-411A-A81F-8D718A843FDE", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-reactivate", - "codepoint": "F152B", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "9CB5E1B3-D7AA-4BD2-9966-89CDAC0BF710", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-reactivate-outline", - "codepoint": "F152C", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "0A1FDBBB-9E1C-480E-BC1D-725778D0851B", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-remove", - "codepoint": "F0015", - "aliases": [ - "user-remove", - "person-remove" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "REJack" - }, - { - "id": "9F89EDE8-E95A-401D-9532-7F0DCD6AE321", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-remove-outline", - "codepoint": "F0AED", - "aliases": [ - "user-remove-outline", - "person-remove-outline" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Austin Andrews" - }, - { - "id": "BE45DEDF-3BBC-442F-9EDD-4A16570B91A0", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-school", - "codepoint": "F1A20", - "aliases": [ - "account-student", - "account-graduation" - ], - "styles": [], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Contributors" - }, - { - "id": "DB767D52-F1C9-4986-B785-98314B70B2FF", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-school-outline", - "codepoint": "F1A21", - "aliases": [ - "account-student-outline", - "account-graduation-outline" - ], - "styles": [ - "outline" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Contributors" - }, - { - "id": "48E9C474-C544-4868-9966-C3A8D7808FCA", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-search", - "codepoint": "F0016", - "aliases": [ - "user-search", - "person-search" - ], - "styles": [ - "search" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "GreenTurtwig" - }, - { - "id": "F6808872-4EB9-43AF-BD74-BDA6861E1862", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-search-outline", - "codepoint": "F0935", - "aliases": [ - "user-search-outline", - "person-search-outline" - ], - "styles": [ - "outline", - "search" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "GreenTurtwig" - }, - { - "id": "A975CEEA-FDFD-49A2-A618-E74A3FF87A63", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-settings", - "codepoint": "F0630", - "aliases": [ - "user-settings", - "person-settings" - ], - "styles": [ - "settings" - ], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Account \/ User", - "Settings" - ], - "author": "Austin Andrews" - }, - { - "id": "CA95C904-F98B-43D4-A896-DF5E174A0F72", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-settings-outline", - "codepoint": "F10C9", - "aliases": [], - "styles": [ - "outline", - "settings" - ], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Account \/ User", - "Settings" - ], - "author": "Sascha Wohlgemuth" - }, - { - "id": "1E04960E-FFFE-439D-A5FD-C51E7291DA6F", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-star", - "codepoint": "F0017", - "aliases": [ - "user-star", - "person-star", - "account-favorite" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "REJack" - }, - { - "id": "3B63C1BC-9FB2-4F41-86CF-93D6117585E9", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-star-outline", - "codepoint": "F0BE8", - "aliases": [ - "user-star-outline", - "person-star-outline" - ], - "styles": [ - "outline", - "star" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DF632613-259D-4C5E-9718-0EB3057290AF", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-supervisor", - "codepoint": "F0A8B", - "aliases": [ - "user-supervisor", - "person-supervisor" - ], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "741E5459-89DC-4045-B02E-3FB74F636143", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-supervisor-circle", - "codepoint": "F0A8C", - "aliases": [ - "user-supervisor-circle", - "person-supervisor-circle" - ], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "51B2A4EF-1F20-44EA-BC57-D1B3129C496C", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-supervisor-circle-outline", - "codepoint": "F14EC", - "aliases": [], - "styles": [ - "circle", - "outline" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "B640886A-F3F0-4FE4-AC74-4AE1407E264F", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-supervisor-outline", - "codepoint": "F112D", - "aliases": [], - "styles": [ - "multiple", - "outline" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Sascha Wohlgemuth" - }, - { - "id": "FC4F4C4D-83C2-493F-9606-CA80E44BFEF8", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-switch", - "codepoint": "F0019", - "aliases": [ - "user-switch", - "accounts-switch", - "users-switch", - "person-switch", - "people-switch" - ], - "styles": [ - "arrow", - "multiple" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Austin Andrews" - }, - { - "id": "82D545A0-9A8E-4363-A462-883526E48330", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-switch-outline", - "codepoint": "F04CB", - "aliases": [], - "styles": [ - "arrow", - "multiple", - "outline", - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Simran" - }, - { - "id": "85F768C4-8659-414E-8C96-F2E90EB36971", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-sync", - "codepoint": "F191B", - "aliases": [ - "account-cache" - ], - "styles": [ - "sync" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Irigoyen" - }, - { - "id": "4D5C282D-E452-4544-BD36-6EBF5DE7FD85", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-sync-outline", - "codepoint": "F191C", - "aliases": [ - "account-cache-outline" - ], - "styles": [ - "outline", - "sync" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Irigoyen" - }, - { - "id": "CD3C08D4-514C-4F3C-B3D7-EF6F74F79817", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-tag", - "codepoint": "F1C1B", - "aliases": [], - "styles": [], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Matthew Terry" - }, - { - "id": "253469B8-B07E-44ED-A834-1CA67428169E", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-tag-outline", - "codepoint": "F1C1C", - "aliases": [], - "styles": [ - "outline" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Matthew Terry" - }, - { - "id": "5EF0B9EA-FECB-409C-999C-FE1ECF0C8B01", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-tie", - "codepoint": "F0CE3", - "aliases": [ - "person-tie", - "user-tie" - ], - "styles": [ - "variant" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Account \/ User", - "People \/ Family" - ], - "author": "Michael Irigoyen" - }, - { - "id": "07487BB8-778A-4B30-8129-FC2780463D86", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-tie-hat", - "codepoint": "F1898", - "aliases": [ - "account-pilot" - ], - "styles": [ - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Account \/ User", - "Transportation + Flying" - ], - "author": "Michael Irigoyen" - }, - { - "id": "8097E3AA-0C0F-47BE-9700-DEAF4986E6AE", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-tie-hat-outline", - "codepoint": "F1899", - "aliases": [ - "account-pilot-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Account \/ User", - "Transportation + Flying" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0D809FB8-6A27-4972-B4E5-6A308963FD8B", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-tie-outline", - "codepoint": "F10CA", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Sascha Wohlgemuth" - }, - { - "id": "7EAF1288-141D-4C8E-91E6-891D04BAE32C", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-tie-voice", - "codepoint": "F1308", - "aliases": [], - "styles": [ - "variant" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F835F775-8FC4-4E85-9B26-7C95F8F45B05", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-tie-voice-off", - "codepoint": "F130A", - "aliases": [], - "styles": [ - "off", - "variant" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Irigoyen" - }, - { - "id": "6CDB4F0E-41EC-409E-A2E0-87785BDAC858", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-tie-voice-off-outline", - "codepoint": "F130B", - "aliases": [], - "styles": [ - "off", - "outline", - "variant" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5712C24C-E8EE-48CD-9E6F-9712AD2BA502", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-tie-voice-outline", - "codepoint": "F1309", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7D6F703D-10AF-459F-9349-69B6D05BD7CE", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-tie-woman", - "codepoint": "F1A8C", - "aliases": [ - "business-woman" - ], - "styles": [], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Account \/ User", - "People \/ Family" - ], - "author": "Simran" - }, - { - "id": "F1EEA910-2CD7-448A-A12F-A1BD0FDC6010", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-voice", - "codepoint": "F05CB", - "aliases": [ - "record-voice-over", - "speak", - "talk", - "speaking", - "talking" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "C90AED93-FCBD-4FDC-A15B-26CD066775BD", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-voice-off", - "codepoint": "F0ED4", - "aliases": [], - "styles": [ - "off", - "variant" - ], - "version": "3.7.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "C3712CBF-1E1C-4794-95B1-F77380FCEB7C", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-wrench", - "codepoint": "F189A", - "aliases": [ - "account-service" - ], - "styles": [ - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9AD54A3C-987A-4ED9-A416-7432C9540239", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "account-wrench-outline", - "codepoint": "F189B", - "aliases": [ - "account-service-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Irigoyen" - }, - { - "id": "3334E19F-962D-45B4-BE11-F009E1192165", - "baseIconId": "3334E19F-962D-45B4-BE11-F009E1192165", - "name": "adjust", - "codepoint": "F001A", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "F368D23C-0F09-44D6-8487-F3229BEB6F1C", - "baseIconId": "F368D23C-0F09-44D6-8487-F3229BEB6F1C", - "name": "advertisements", - "codepoint": "F192A", - "aliases": [ - "ads" - ], - "styles": [], - "version": "6.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "28583E81-1315-4397-8FC5-46325CF1FB94", - "baseIconId": "F368D23C-0F09-44D6-8487-F3229BEB6F1C", - "name": "advertisements-off", - "codepoint": "F192B", - "aliases": [ - "ads-off" - ], - "styles": [ - "off" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "FACEA69B-49F0-4588-BDEC-693965AD4649", - "baseIconId": "FACEA69B-49F0-4588-BDEC-693965AD4649", - "name": "air-conditioner", - "codepoint": "F001B", - "aliases": [ - "ac-unit" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation", - "Automotive" - ], - "author": "Simran" - }, - { - "id": "C9AF90F5-7CE7-4251-9BA2-3A614B4882AA", - "baseIconId": "C9AF90F5-7CE7-4251-9BA2-3A614B4882AA", - "name": "air-filter", - "codepoint": "F0D43", - "aliases": [ - "water-filter", - "filter" - ], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "41485B7B-F175-4627-90EB-640C9C60B27C", - "baseIconId": "41485B7B-F175-4627-90EB-640C9C60B27C", - "name": "air-horn", - "codepoint": "F0DAC", - "aliases": [], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "C35492EC-7A43-444E-86A1-B3E960A86950", - "baseIconId": "C35492EC-7A43-444E-86A1-B3E960A86950", - "name": "air-humidifier", - "codepoint": "F1099", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9B86205A-73F4-4DB6-9F2C-73654EDF4D52", - "baseIconId": "C35492EC-7A43-444E-86A1-B3E960A86950", - "name": "air-humidifier-off", - "codepoint": "F1466", - "aliases": [ - "air-dehumidifier" - ], - "styles": [ - "off" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C1621283-2EDC-43C5-9108-812DCAD0BC12", - "baseIconId": "C1621283-2EDC-43C5-9108-812DCAD0BC12", - "name": "air-purifier", - "codepoint": "F0D44", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "EFF08C2C-BF4C-4A0E-A261-9DEF2A92C8D6", - "baseIconId": "C1621283-2EDC-43C5-9108-812DCAD0BC12", - "name": "air-purifier-off", - "codepoint": "F1B57", - "aliases": [], - "styles": [ - "off" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Andrej Sharapov" - }, - { - "id": "26929F83-C254-41C2-8B0D-B4D95EACAD3E", - "baseIconId": "26929F83-C254-41C2-8B0D-B4D95EACAD3E", - "name": "airbag", - "codepoint": "F0BE9", - "aliases": [], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "3E1D81B2-7DF1-4AAF-9598-4995B8D8E5CC", - "baseIconId": "3E1D81B2-7DF1-4AAF-9598-4995B8D8E5CC", - "name": "airballoon", - "codepoint": "F001C", - "aliases": [ - "hot-air-balloon" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Other", - "Transportation + Flying" - ], - "author": "Austin Andrews" - }, - { - "id": "67E3294D-960F-4CD8-B4DB-3AAB13D6E17C", - "baseIconId": "3E1D81B2-7DF1-4AAF-9598-4995B8D8E5CC", - "name": "airballoon-outline", - "codepoint": "F100B", - "aliases": [ - "hot-air-balloon-outline" - ], - "styles": [ - "outline" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Transportation + Flying" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5AE3D483-1E1C-49DE-92FF-21C6B93FD52F", - "baseIconId": "5AE3D483-1E1C-49DE-92FF-21C6B93FD52F", - "name": "airplane", - "codepoint": "F001D", - "aliases": [ - "aeroplane", - "airplanemode-active", - "flight", - "local-airport", - "flight-mode", - "plane" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Flying", - "Navigation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "C0734996-651C-4CEE-A216-E1D03B2FA6F6", - "baseIconId": "5AE3D483-1E1C-49DE-92FF-21C6B93FD52F", - "name": "airplane-alert", - "codepoint": "F187A", - "aliases": [], - "styles": [ - "alert" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Transportation + Flying", - "Alert \/ Error" - ], - "author": "Colton Wiscombe" - }, - { - "id": "3771D65E-17FD-41E0-B8E7-D1136B28D672", - "baseIconId": "5AE3D483-1E1C-49DE-92FF-21C6B93FD52F", - "name": "airplane-check", - "codepoint": "F187B", - "aliases": [ - "airplace-success", - "airplane-tick" - ], - "styles": [ - "check" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Transportation + Flying" - ], - "author": "Colton Wiscombe" - }, - { - "id": "8C33AFFF-209E-41AC-A403-B1A46B321917", - "baseIconId": "5AE3D483-1E1C-49DE-92FF-21C6B93FD52F", - "name": "airplane-clock", - "codepoint": "F187C", - "aliases": [ - "airplane-schedule", - "airplane-time", - "airplane-date" - ], - "styles": [ - "clock" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Transportation + Flying", - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "BBFABE86-364F-44BA-861F-0EA4502F2E14", - "baseIconId": "5AE3D483-1E1C-49DE-92FF-21C6B93FD52F", - "name": "airplane-cog", - "codepoint": "F187D", - "aliases": [ - "airplane-settings" - ], - "styles": [ - "settings" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Transportation + Flying", - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "7B7C1A74-3C6D-4CF8-8F29-62F99BD9AC24", - "baseIconId": "5AE3D483-1E1C-49DE-92FF-21C6B93FD52F", - "name": "airplane-edit", - "codepoint": "F187E", - "aliases": [], - "styles": [ - "edit" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Transportation + Flying", - "Edit \/ Modify" - ], - "author": "Colton Wiscombe" - }, - { - "id": "634EE7E8-8280-4CF1-B642-0921E740B6DB", - "baseIconId": "5AE3D483-1E1C-49DE-92FF-21C6B93FD52F", - "name": "airplane-landing", - "codepoint": "F05D4", - "aliases": [ - "aeroplane-landing", - "flight-land", - "plane-landing" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Flying" - ], - "author": "Google" - }, - { - "id": "792432E4-3913-4118-80E9-C8F348DEFBA4", - "baseIconId": "5AE3D483-1E1C-49DE-92FF-21C6B93FD52F", - "name": "airplane-marker", - "codepoint": "F187F", - "aliases": [ - "airplane-location", - "airplane-gps" - ], - "styles": [ - "marker" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Transportation + Flying", - "Navigation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "B92E8598-1A85-4EC5-9082-2CF13684EB13", - "baseIconId": "5AE3D483-1E1C-49DE-92FF-21C6B93FD52F", - "name": "airplane-minus", - "codepoint": "F1880", - "aliases": [], - "styles": [ - "minus" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Transportation + Flying" - ], - "author": "Colton Wiscombe" - }, - { - "id": "D2D1D38E-ABE7-47B6-9405-DC6BDBA1C335", - "baseIconId": "5AE3D483-1E1C-49DE-92FF-21C6B93FD52F", - "name": "airplane-off", - "codepoint": "F001E", - "aliases": [ - "aeroplane-off", - "airplanemode-inactive", - "flight-mode-off", - "plane-off" - ], - "styles": [ - "off" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Flying" - ], - "author": "Colton Wiscombe" - }, - { - "id": "4D5B4816-F71A-4413-A065-A58F2A907656", - "baseIconId": "5AE3D483-1E1C-49DE-92FF-21C6B93FD52F", - "name": "airplane-plus", - "codepoint": "F1881", - "aliases": [], - "styles": [ - "plus" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Transportation + Flying" - ], - "author": "Colton Wiscombe" - }, - { - "id": "244A039A-5ABD-46F5-8E5E-8F6D84FC116C", - "baseIconId": "5AE3D483-1E1C-49DE-92FF-21C6B93FD52F", - "name": "airplane-remove", - "codepoint": "F1882", - "aliases": [], - "styles": [ - "remove" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Transportation + Flying" - ], - "author": "Colton Wiscombe" - }, - { - "id": "4DBDF7D5-FD3A-4CE2-BCC6-306A09694221", - "baseIconId": "5AE3D483-1E1C-49DE-92FF-21C6B93FD52F", - "name": "airplane-search", - "codepoint": "F1883", - "aliases": [ - "airplane-find" - ], - "styles": [ - "search" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Transportation + Flying" - ], - "author": "Colton Wiscombe" - }, - { - "id": "7B89A30A-F211-4B69-9629-9148A539D41D", - "baseIconId": "5AE3D483-1E1C-49DE-92FF-21C6B93FD52F", - "name": "airplane-settings", - "codepoint": "F1884", - "aliases": [], - "styles": [ - "settings" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Transportation + Flying", - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "2B9BB7A1-A94B-4D24-8308-5599504317C2", - "baseIconId": "5AE3D483-1E1C-49DE-92FF-21C6B93FD52F", - "name": "airplane-takeoff", - "codepoint": "F05D5", - "aliases": [ - "aeroplane-takeoff", - "flight-takeoff", - "plane-takeoff", - "airplane-take-off" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Flying" - ], - "author": "Google" - }, - { - "id": "62C9DAA4-6718-44A9-BCD3-2401D96BE1E7", - "baseIconId": "62C9DAA4-6718-44A9-BCD3-2401D96BE1E7", - "name": "airport", - "codepoint": "F084B", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Places", - "Transportation + Flying" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9A1AAF33-6F36-4987-9E8C-798E34D919A9", - "baseIconId": "9A1AAF33-6F36-4987-9E8C-798E34D919A9", - "name": "alarm", - "codepoint": "F0020", - "aliases": [ - "access-alarms", - "alarm-clock" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "02423F51-52A3-4F45-8373-05CA8E8D57B7", - "baseIconId": "02423F51-52A3-4F45-8373-05CA8E8D57B7", - "name": "alarm-bell", - "codepoint": "F078E", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Notification" - ], - "author": "Michael Richins" - }, - { - "id": "6DCCA48F-E413-4C45-BFE5-8E3C8BE61A4E", - "baseIconId": "9A1AAF33-6F36-4987-9E8C-798E34D919A9", - "name": "alarm-check", - "codepoint": "F0021", - "aliases": [ - "alarm-on", - "alarm-tick", - "alarm-clock-check", - "alarm-clock-tick", - "alarm-success" - ], - "styles": [ - "check" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "B6D88F9D-A85A-4943-A61C-7D33FB0EBF4F", - "baseIconId": "B6D88F9D-A85A-4943-A61C-7D33FB0EBF4F", - "name": "alarm-light", - "codepoint": "F078F", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "E328D226-0D09-402D-BCAA-A7630396F168", - "baseIconId": "B6D88F9D-A85A-4943-A61C-7D33FB0EBF4F", - "name": "alarm-light-off", - "codepoint": "F171E", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "70D649B6-0FA1-4465-A92C-BB362D4D5FAD", - "baseIconId": "B6D88F9D-A85A-4943-A61C-7D33FB0EBF4F", - "name": "alarm-light-off-outline", - "codepoint": "F171F", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F6F4DACD-B15B-49FD-8ACC-FAE0E994435A", - "baseIconId": "B6D88F9D-A85A-4943-A61C-7D33FB0EBF4F", - "name": "alarm-light-outline", - "codepoint": "F0BEA", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "67D410AB-495A-41BD-B9D8-20A7DFBBF623", - "baseIconId": "9A1AAF33-6F36-4987-9E8C-798E34D919A9", - "name": "alarm-multiple", - "codepoint": "F0022", - "aliases": [ - "alarms", - "alarm-clock-multiple", - "alarm-clocks" - ], - "styles": [ - "multiple" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Austin Andrews" - }, - { - "id": "2C35D0DC-0191-4DFF-AF19-066F88DE56FE", - "baseIconId": "9A1AAF33-6F36-4987-9E8C-798E34D919A9", - "name": "alarm-note", - "codepoint": "F0E71", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "2ECA27D9-8F96-4B03-A7BF-B74468CFCBF9", - "baseIconId": "9A1AAF33-6F36-4987-9E8C-798E34D919A9", - "name": "alarm-note-off", - "codepoint": "F0E72", - "aliases": [], - "styles": [ - "off", - "variant" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "DD224DD6-9A65-47AB-8838-90FE346A7768", - "baseIconId": "9A1AAF33-6F36-4987-9E8C-798E34D919A9", - "name": "alarm-off", - "codepoint": "F0023", - "aliases": [ - "alarm-clock-off" - ], - "styles": [ - "off" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "AB8BCA23-EA1C-4A27-B535-4F373F1451E6", - "baseIconId": "AB8BCA23-EA1C-4A27-B535-4F373F1451E6", - "name": "alarm-panel", - "codepoint": "F15C4", - "aliases": [], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "60F9887C-36C5-4E6A-B282-4BACB99120BC", - "baseIconId": "AB8BCA23-EA1C-4A27-B535-4F373F1451E6", - "name": "alarm-panel-outline", - "codepoint": "F15C5", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "6D93F44C-83F7-4446-A5CD-E4135C8644D7", - "baseIconId": "9A1AAF33-6F36-4987-9E8C-798E34D919A9", - "name": "alarm-plus", - "codepoint": "F0024", - "aliases": [ - "add-alarm", - "alarm-clock-plus", - "alarm-clock-add", - "alarm-add" - ], - "styles": [ - "plus" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "28F85724-265B-4C24-9975-DDDF788A99E5", - "baseIconId": "9A1AAF33-6F36-4987-9E8C-798E34D919A9", - "name": "alarm-snooze", - "codepoint": "F068E", - "aliases": [ - "alarm-clock-snooze" - ], - "styles": [ - "variant" - ], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "8529D611-F581-4808-95BE-271FB1A6C2FD", - "baseIconId": "8529D611-F581-4808-95BE-271FB1A6C2FD", - "name": "album", - "codepoint": "F0025", - "aliases": [ - "vinyl", - "record" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio", - "Music" - ], - "author": "Google" - }, - { - "id": "9FF7DF3F-D575-433B-9C9A-69C58363C186", - "baseIconId": "9FF7DF3F-D575-433B-9C9A-69C58363C186", - "name": "alert", - "codepoint": "F0026", - "aliases": [ - "warning", - "report-problem" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Google" - }, - { - "id": "7B5D47A1-5658-4169-94C7-0C41E7179DD2", - "baseIconId": "9FF7DF3F-D575-433B-9C9A-69C58363C186", - "name": "alert-box", - "codepoint": "F0027", - "aliases": [ - "warning-box" - ], - "styles": [ - "box" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Austin Andrews" - }, - { - "id": "D37BD379-9466-4E87-AD27-087CF72F076D", - "baseIconId": "9FF7DF3F-D575-433B-9C9A-69C58363C186", - "name": "alert-box-outline", - "codepoint": "F0CE4", - "aliases": [ - "warning-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Peter Noble" - }, - { - "id": "C7EDD5B7-95D4-4D83-A4E3-95D8A16A4887", - "baseIconId": "9FF7DF3F-D575-433B-9C9A-69C58363C186", - "name": "alert-circle", - "codepoint": "F0028", - "aliases": [ - "warning-circle", - "error" - ], - "styles": [ - "circle" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Google" - }, - { - "id": "68F19F47-B38B-4370-B299-4EE2BF2619A5", - "baseIconId": "9FF7DF3F-D575-433B-9C9A-69C58363C186", - "name": "alert-circle-check", - "codepoint": "F11ED", - "aliases": [ - "alert-circle-success" - ], - "styles": [ - "check", - "circle" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Austin Andrews" - }, - { - "id": "BB715CDA-DE45-4983-A33F-10C6141F4FEA", - "baseIconId": "9FF7DF3F-D575-433B-9C9A-69C58363C186", - "name": "alert-circle-check-outline", - "codepoint": "F11EE", - "aliases": [ - "alert-circle-success-outline" - ], - "styles": [ - "check", - "circle", - "outline" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Austin Andrews" - }, - { - "id": "0F4002B4-3C3D-43C4-939F-A998B2C59177", - "baseIconId": "9FF7DF3F-D575-433B-9C9A-69C58363C186", - "name": "alert-circle-outline", - "codepoint": "F05D6", - "aliases": [ - "warning-circle-outline", - "error-outline", - "git-issue" - ], - "styles": [ - "circle", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Google" - }, - { - "id": "B4866C08-2DAE-4B0A-8942-E057094B3C76", - "baseIconId": "9FF7DF3F-D575-433B-9C9A-69C58363C186", - "name": "alert-decagram", - "codepoint": "F06BD", - "aliases": [ - "new-releases", - "warning-decagram" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Google" - }, - { - "id": "B2984FA7-4B68-4191-8835-EB768C58DD10", - "baseIconId": "9FF7DF3F-D575-433B-9C9A-69C58363C186", - "name": "alert-decagram-outline", - "codepoint": "F0CE5", - "aliases": [ - "warning-decagram-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Peter Noble" - }, - { - "id": "233D24FC-6BAE-44C4-BE98-7178560C4A32", - "baseIconId": "9FF7DF3F-D575-433B-9C9A-69C58363C186", - "name": "alert-minus", - "codepoint": "F14BB", - "aliases": [], - "styles": [ - "minus" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "044D1C2C-2EA5-4058-A3B0-0550BD2E3170", - "baseIconId": "9FF7DF3F-D575-433B-9C9A-69C58363C186", - "name": "alert-minus-outline", - "codepoint": "F14BE", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Alessandro Rossignoli" - }, - { - "id": "9BC1A338-CD03-4D39-BE46-E9DE5EE51A2F", - "baseIconId": "9FF7DF3F-D575-433B-9C9A-69C58363C186", - "name": "alert-octagon", - "codepoint": "F0029", - "aliases": [ - "warning-octagon", - "report", - "stop-alert" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Google" - }, - { - "id": "90994A54-72AA-498F-8806-AAD466CC21BD", - "baseIconId": "9FF7DF3F-D575-433B-9C9A-69C58363C186", - "name": "alert-octagon-outline", - "codepoint": "F0CE6", - "aliases": [ - "warning-octagon-outline", - "stop-alert-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Peter Noble" - }, - { - "id": "124F37BE-27F6-4524-9655-A18D28E91CA6", - "baseIconId": "9FF7DF3F-D575-433B-9C9A-69C58363C186", - "name": "alert-octagram", - "codepoint": "F0767", - "aliases": [ - "warning-octagram" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Austin Andrews" - }, - { - "id": "2AD21B3E-77C1-4027-9AE9-7655246D9DFF", - "baseIconId": "9FF7DF3F-D575-433B-9C9A-69C58363C186", - "name": "alert-octagram-outline", - "codepoint": "F0CE7", - "aliases": [ - "warning-octagram-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Peter Noble" - }, - { - "id": "4E574535-954C-42F5-BE5B-DF3716DB7C5A", - "baseIconId": "9FF7DF3F-D575-433B-9C9A-69C58363C186", - "name": "alert-outline", - "codepoint": "F002A", - "aliases": [ - "warning-outline" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Simran" - }, - { - "id": "6D804890-36C6-43DC-B93D-B289A4C04D8F", - "baseIconId": "9FF7DF3F-D575-433B-9C9A-69C58363C186", - "name": "alert-plus", - "codepoint": "F14BA", - "aliases": [], - "styles": [ - "plus" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Austin Andrews" - }, - { - "id": "C5512AAF-943C-4025-8FAB-F14D896F2C14", - "baseIconId": "9FF7DF3F-D575-433B-9C9A-69C58363C186", - "name": "alert-plus-outline", - "codepoint": "F14BD", - "aliases": [], - "styles": [ - "outline", - "plus" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Alessandro Rossignoli" - }, - { - "id": "EF9A06FC-5167-4AE0-AB4E-FAD8C705E8C2", - "baseIconId": "9FF7DF3F-D575-433B-9C9A-69C58363C186", - "name": "alert-remove", - "codepoint": "F14BC", - "aliases": [], - "styles": [ - "remove" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "926FBBF9-9299-4E27-BB55-9CE300F50FDE", - "baseIconId": "9FF7DF3F-D575-433B-9C9A-69C58363C186", - "name": "alert-remove-outline", - "codepoint": "F14BF", - "aliases": [], - "styles": [ - "outline", - "remove" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C8354F93-0DA4-48B4-97B3-4BDE2C0046AB", - "baseIconId": "9FF7DF3F-D575-433B-9C9A-69C58363C186", - "name": "alert-rhombus", - "codepoint": "F11CE", - "aliases": [], - "styles": [ - "variant" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Michael Richins" - }, - { - "id": "C9724C30-FDBB-4A14-BC0B-59F0E6826DC3", - "baseIconId": "9FF7DF3F-D575-433B-9C9A-69C58363C186", - "name": "alert-rhombus-outline", - "codepoint": "F11CF", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Michael Richins" - }, - { - "id": "CD43AC33-8EE0-42BE-A7E0-3CCB31D8C5D3", - "baseIconId": "CD43AC33-8EE0-42BE-A7E0-3CCB31D8C5D3", - "name": "alien", - "codepoint": "F089A", - "aliases": [], - "styles": [], - "version": "2.2.43", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "F673BEC2-F616-4A5A-B33B-4CD776D80819", - "baseIconId": "CD43AC33-8EE0-42BE-A7E0-3CCB31D8C5D3", - "name": "alien-outline", - "codepoint": "F10CB", - "aliases": [], - "styles": [ - "outline" - ], - "version": "4.3.95", - "deprecated": false, - "tags": [], - "author": "Sascha Wohlgemuth" - }, - { - "id": "05901A9E-71D5-47D9-B5E1-DC55B687E8E0", - "baseIconId": "91ED2206-4D41-48DB-964F-5E3AC50F899D", - "name": "align-horizontal-center", - "codepoint": "F11C3", - "aliases": [ - "align-horizontal-centre" - ], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "B4B2B3EB-A8C5-48C3-8F82-4F295424B396", - "baseIconId": "91ED2206-4D41-48DB-964F-5E3AC50F899D", - "name": "align-horizontal-distribute", - "codepoint": "F1962", - "aliases": [], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "91ED2206-4D41-48DB-964F-5E3AC50F899D", - "baseIconId": "91ED2206-4D41-48DB-964F-5E3AC50F899D", - "name": "align-horizontal-left", - "codepoint": "F11C2", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "5FEBC8BB-061B-4D91-BD96-88285B5C2E23", - "baseIconId": "91ED2206-4D41-48DB-964F-5E3AC50F899D", - "name": "align-horizontal-right", - "codepoint": "F11C4", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "AA5D11B7-D45D-4505-938E-8BEF8C1A79F0", - "baseIconId": "91ED2206-4D41-48DB-964F-5E3AC50F899D", - "name": "align-vertical-bottom", - "codepoint": "F11C5", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "04AE9704-928E-4272-B7FA-BD2ABC38ABE0", - "baseIconId": "91ED2206-4D41-48DB-964F-5E3AC50F899D", - "name": "align-vertical-center", - "codepoint": "F11C6", - "aliases": [ - "align-vertical-centre" - ], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "CB64EDBD-09A0-4085-BD1E-0D84EAA56297", - "baseIconId": "91ED2206-4D41-48DB-964F-5E3AC50F899D", - "name": "align-vertical-distribute", - "codepoint": "F1963", - "aliases": [], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "9069B66B-C7CA-478D-BE02-BC9863E27FDB", - "baseIconId": "91ED2206-4D41-48DB-964F-5E3AC50F899D", - "name": "align-vertical-top", - "codepoint": "F11C7", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "5596E6E7-916E-4870-9346-5D46BC86C0D5", - "baseIconId": "5596E6E7-916E-4870-9346-5D46BC86C0D5", - "name": "all-inclusive", - "codepoint": "F06BE", - "aliases": [ - "infinity", - "forever" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "C8E30B1A-135A-4B8A-900C-D93FE1699720", - "baseIconId": "5596E6E7-916E-4870-9346-5D46BC86C0D5", - "name": "all-inclusive-box", - "codepoint": "F188D", - "aliases": [ - "infinity-box", - "forever-box" - ], - "styles": [ - "box" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "C3D587B3-D1F0-4C6F-9E4F-5FEE39AFFE33", - "baseIconId": "5596E6E7-916E-4870-9346-5D46BC86C0D5", - "name": "all-inclusive-box-outline", - "codepoint": "F188E", - "aliases": [ - "forever-box-outline", - "infinity-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "76B6381F-14CA-4453-8B28-184C508D003B", - "baseIconId": "35FBF26D-56C0-4699-A2A8-19BC2C37D6AF", - "name": "allergy", - "codepoint": "F1258", - "aliases": [ - "hand", - "rash", - "germ" - ], - "styles": [ - "variant" - ], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Michael Richins" - }, - { - "id": "0B93DD30-B279-4997-BD6D-AC86E29D34CA", - "baseIconId": "0B93DD30-B279-4997-BD6D-AC86E29D34CA", - "name": "alpha", - "codepoint": "F002B", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Austin Andrews" - }, - { - "id": "8A55BEB9-D57B-43DA-9905-7216E3EB7057", - "baseIconId": "8A55BEB9-D57B-43DA-9905-7216E3EB7057", - "name": "alpha-a", - "codepoint": "F0AEE", - "aliases": [ - "alphabet-a", - "letter-a" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "1AC5B76A-B93F-4F9B-851D-C3DAF9743046", - "baseIconId": "8A55BEB9-D57B-43DA-9905-7216E3EB7057", - "name": "alpha-a-box", - "codepoint": "F0B08", - "aliases": [ - "alphabet-a-box", - "letter-a-box" - ], - "styles": [ - "box" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "B501FBBD-91FA-4567-8D4A-BD933FECCE7B", - "baseIconId": "8A55BEB9-D57B-43DA-9905-7216E3EB7057", - "name": "alpha-a-box-outline", - "codepoint": "F0BEB", - "aliases": [ - "alphabet-a-box-outline", - "letter-a-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "71A79E36-29B9-4543-B386-399F950641E2", - "baseIconId": "8A55BEB9-D57B-43DA-9905-7216E3EB7057", - "name": "alpha-a-circle", - "codepoint": "F0BEC", - "aliases": [ - "alphabet-a-circle", - "letter-a-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "6BB0D642-F5B7-4903-977C-325FE1F068FF", - "baseIconId": "8A55BEB9-D57B-43DA-9905-7216E3EB7057", - "name": "alpha-a-circle-outline", - "codepoint": "F0BED", - "aliases": [ - "alphabet-a-circle-outline", - "letter-a-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "910DF87E-809E-40D6-886F-34E581899455", - "baseIconId": "910DF87E-809E-40D6-886F-34E581899455", - "name": "alpha-b", - "codepoint": "F0AEF", - "aliases": [ - "alphabet-b", - "letter-b" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "057EDDAB-65B4-495C-A473-71F759BC6FD9", - "baseIconId": "910DF87E-809E-40D6-886F-34E581899455", - "name": "alpha-b-box", - "codepoint": "F0B09", - "aliases": [ - "alphabet-b-box", - "letter-b-box" - ], - "styles": [ - "box" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "ACEAA38C-D83E-4812-AFF3-A063F0226825", - "baseIconId": "910DF87E-809E-40D6-886F-34E581899455", - "name": "alpha-b-box-outline", - "codepoint": "F0BEE", - "aliases": [ - "alphabet-b-box-outline", - "letter-b-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "433A1CBB-57A4-44DA-8B93-B65AF6E54B1D", - "baseIconId": "910DF87E-809E-40D6-886F-34E581899455", - "name": "alpha-b-circle", - "codepoint": "F0BEF", - "aliases": [ - "alphabet-b-circle", - "letter-b-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "5CBD1C34-B372-4DA7-9FF1-19DD9B3D9C3A", - "baseIconId": "910DF87E-809E-40D6-886F-34E581899455", - "name": "alpha-b-circle-outline", - "codepoint": "F0BF0", - "aliases": [ - "alphabet-b-circle-outline", - "letter-b-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "F5F53184-51BB-46A3-AB67-D799A1D15F7F", - "baseIconId": "F5F53184-51BB-46A3-AB67-D799A1D15F7F", - "name": "alpha-c", - "codepoint": "F0AF0", - "aliases": [ - "alphabet-c", - "letter-c" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "F7A4DF3D-18C8-4717-AD58-247CEFF7EDE3", - "baseIconId": "F5F53184-51BB-46A3-AB67-D799A1D15F7F", - "name": "alpha-c-box", - "codepoint": "F0B0A", - "aliases": [ - "alphabet-c-box", - "letter-c-box" - ], - "styles": [ - "box" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "9EB832F8-B389-47AA-ADDA-A2163E75DC20", - "baseIconId": "F5F53184-51BB-46A3-AB67-D799A1D15F7F", - "name": "alpha-c-box-outline", - "codepoint": "F0BF1", - "aliases": [ - "alphabet-c-box-outline", - "letter-c-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "19229F43-9ACD-477E-9A30-9D2731080026", - "baseIconId": "F5F53184-51BB-46A3-AB67-D799A1D15F7F", - "name": "alpha-c-circle", - "codepoint": "F0BF2", - "aliases": [ - "alphabet-c-circle", - "letter-c-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "23362597-17A2-4413-BE28-65B36F4591E7", - "baseIconId": "F5F53184-51BB-46A3-AB67-D799A1D15F7F", - "name": "alpha-c-circle-outline", - "codepoint": "F0BF3", - "aliases": [ - "alphabet-c-circle-outline", - "letter-c-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "0A79E0A4-CE86-431C-A152-57492815C31E", - "baseIconId": "0A79E0A4-CE86-431C-A152-57492815C31E", - "name": "alpha-d", - "codepoint": "F0AF1", - "aliases": [ - "alphabet-d", - "letter-d", - "drive" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Automotive", - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "5299B671-D7CF-4D68-B439-92E3056A104A", - "baseIconId": "0A79E0A4-CE86-431C-A152-57492815C31E", - "name": "alpha-d-box", - "codepoint": "F0B0B", - "aliases": [ - "alphabet-d-box", - "letter-d-box" - ], - "styles": [ - "box" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "5D512B06-6DF4-4BC7-A307-81512F828192", - "baseIconId": "0A79E0A4-CE86-431C-A152-57492815C31E", - "name": "alpha-d-box-outline", - "codepoint": "F0BF4", - "aliases": [ - "alphabet-d-box-outline", - "letter-d-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "758D2479-2950-4C5E-8FDC-C0FFA2EBE114", - "baseIconId": "0A79E0A4-CE86-431C-A152-57492815C31E", - "name": "alpha-d-circle", - "codepoint": "F0BF5", - "aliases": [ - "alphabet-d-circle", - "letter-d-circle" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "6B6C0FE9-544A-4098-A5B2-823160140EE7", - "baseIconId": "0A79E0A4-CE86-431C-A152-57492815C31E", - "name": "alpha-d-circle-outline", - "codepoint": "F0BF6", - "aliases": [ - "alphabet-d-circle-outline", - "letter-d-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "3B3F5AA2-8A97-4A66-BD4A-7AA105901B61", - "baseIconId": "3B3F5AA2-8A97-4A66-BD4A-7AA105901B61", - "name": "alpha-e", - "codepoint": "F0AF2", - "aliases": [ - "alphabet-e", - "letter-e" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "15C859D5-210D-4C8B-BB14-7A2B92ADB1C2", - "baseIconId": "3B3F5AA2-8A97-4A66-BD4A-7AA105901B61", - "name": "alpha-e-box", - "codepoint": "F0B0C", - "aliases": [ - "alphabet-e-box", - "letter-e-box" - ], - "styles": [ - "box" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "6C02F23D-4684-4018-9E47-624103B0653E", - "baseIconId": "3B3F5AA2-8A97-4A66-BD4A-7AA105901B61", - "name": "alpha-e-box-outline", - "codepoint": "F0BF7", - "aliases": [ - "alphabet-e-box-outline", - "letter-e-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "D1367C3A-1884-4A3E-A90F-0AAB3DDCACF1", - "baseIconId": "3B3F5AA2-8A97-4A66-BD4A-7AA105901B61", - "name": "alpha-e-circle", - "codepoint": "F0BF8", - "aliases": [ - "alphabet-e-circle", - "letter-e-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "CD51D79A-B691-4B46-BABF-6A419EE2716A", - "baseIconId": "3B3F5AA2-8A97-4A66-BD4A-7AA105901B61", - "name": "alpha-e-circle-outline", - "codepoint": "F0BF9", - "aliases": [ - "alphabet-e-circle-outline", - "letter-e-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "6E5FB32C-27B6-4ECE-8F88-65D8E29D1CD8", - "baseIconId": "6E5FB32C-27B6-4ECE-8F88-65D8E29D1CD8", - "name": "alpha-f", - "codepoint": "F0AF3", - "aliases": [ - "alphabet-f", - "letter-f" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "1E5D6AAB-6056-4CEE-88EC-87FBE2C84FF0", - "baseIconId": "6E5FB32C-27B6-4ECE-8F88-65D8E29D1CD8", - "name": "alpha-f-box", - "codepoint": "F0B0D", - "aliases": [ - "alphabet-f-box", - "letter-f-box" - ], - "styles": [ - "box" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "304C0008-2989-4DC9-8927-AE51F7B44F6C", - "baseIconId": "6E5FB32C-27B6-4ECE-8F88-65D8E29D1CD8", - "name": "alpha-f-box-outline", - "codepoint": "F0BFA", - "aliases": [ - "alphabet-f-box-outline", - "letter-f-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "317A9E55-62CC-4A55-B851-483EB546D022", - "baseIconId": "6E5FB32C-27B6-4ECE-8F88-65D8E29D1CD8", - "name": "alpha-f-circle", - "codepoint": "F0BFB", - "aliases": [ - "alphabet-f-circle", - "letter-f-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "46706811-B9CA-4F96-B201-63E658BE1F6D", - "baseIconId": "6E5FB32C-27B6-4ECE-8F88-65D8E29D1CD8", - "name": "alpha-f-circle-outline", - "codepoint": "F0BFC", - "aliases": [ - "alphabet-f-circle-outline", - "letter-f-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "4B7C3083-DFDF-402E-9D71-CABE04305297", - "baseIconId": "4B7C3083-DFDF-402E-9D71-CABE04305297", - "name": "alpha-g", - "codepoint": "F0AF4", - "aliases": [ - "alphabet-g", - "letter-g" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "A2781290-35AD-441F-B02C-15A0AB49B74D", - "baseIconId": "4B7C3083-DFDF-402E-9D71-CABE04305297", - "name": "alpha-g-box", - "codepoint": "F0B0E", - "aliases": [ - "alphabet-g-box", - "letter-g-box" - ], - "styles": [ - "box" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "D9ED1661-B57E-47E9-B727-F03BC035DE4D", - "baseIconId": "4B7C3083-DFDF-402E-9D71-CABE04305297", - "name": "alpha-g-box-outline", - "codepoint": "F0BFD", - "aliases": [ - "alphabet-g-box-outline", - "letter-g-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "5DB072AE-CE38-4FA8-A41D-0C7443DA3481", - "baseIconId": "4B7C3083-DFDF-402E-9D71-CABE04305297", - "name": "alpha-g-circle", - "codepoint": "F0BFE", - "aliases": [ - "alphabet-g-circle", - "letter-g-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "780BAB12-D647-4E55-BD56-487367D70FD0", - "baseIconId": "4B7C3083-DFDF-402E-9D71-CABE04305297", - "name": "alpha-g-circle-outline", - "codepoint": "F0BFF", - "aliases": [ - "alphabet-g-circle-outline", - "letter-g-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "99A5A78F-6759-4C02-A5D2-DA8FA3DDBBA9", - "baseIconId": "99A5A78F-6759-4C02-A5D2-DA8FA3DDBBA9", - "name": "alpha-h", - "codepoint": "F0AF5", - "aliases": [ - "alphabet-h", - "letter-h" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "180E5F6A-8C7E-4B29-92C1-94C97D1266B9", - "baseIconId": "99A5A78F-6759-4C02-A5D2-DA8FA3DDBBA9", - "name": "alpha-h-box", - "codepoint": "F0B0F", - "aliases": [ - "alphabet-h-box", - "letter-h-box" - ], - "styles": [ - "box" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "7568D810-145E-41E7-8447-E2257339D5D8", - "baseIconId": "99A5A78F-6759-4C02-A5D2-DA8FA3DDBBA9", - "name": "alpha-h-box-outline", - "codepoint": "F0C00", - "aliases": [ - "alphabet-h-box-outline", - "letter-h-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "FC1C719F-CE44-4B8A-A2A8-5DE6E02405D2", - "baseIconId": "99A5A78F-6759-4C02-A5D2-DA8FA3DDBBA9", - "name": "alpha-h-circle", - "codepoint": "F0C01", - "aliases": [ - "alphabet-h-circle", - "letter-h-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "29BA4374-825B-46E4-8E81-FC027000A16F", - "baseIconId": "99A5A78F-6759-4C02-A5D2-DA8FA3DDBBA9", - "name": "alpha-h-circle-outline", - "codepoint": "F0C02", - "aliases": [ - "alphabet-h-circle-outline", - "letter-h-circle-outline", - "helipad" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "C34618B6-174E-42C7-AD23-B65FCAC93D74", - "baseIconId": "C34618B6-174E-42C7-AD23-B65FCAC93D74", - "name": "alpha-i", - "codepoint": "F0AF6", - "aliases": [ - "alphabet-i", - "letter-i", - "roman-numeral-1" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "4D933A0E-88F5-4712-8BA1-0E60290A6623", - "baseIconId": "C34618B6-174E-42C7-AD23-B65FCAC93D74", - "name": "alpha-i-box", - "codepoint": "F0B10", - "aliases": [ - "alphabet-i-box", - "letter-i-box" - ], - "styles": [ - "box" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "E7CF351D-BC47-44AC-BA3E-D61F99D11026", - "baseIconId": "C34618B6-174E-42C7-AD23-B65FCAC93D74", - "name": "alpha-i-box-outline", - "codepoint": "F0C03", - "aliases": [ - "alphabet-i-box-outline", - "letter-i-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "0CAD67D2-EFF3-442E-91D6-1C27D759C1DD", - "baseIconId": "C34618B6-174E-42C7-AD23-B65FCAC93D74", - "name": "alpha-i-circle", - "codepoint": "F0C04", - "aliases": [ - "alphabet-i-circle", - "letter-i-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "4AAE84B4-CF3E-4736-A420-DD188452F819", - "baseIconId": "C34618B6-174E-42C7-AD23-B65FCAC93D74", - "name": "alpha-i-circle-outline", - "codepoint": "F0C05", - "aliases": [ - "alphabet-i-circle-outline", - "letter-i-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "C964FFC4-AA90-4AF6-B604-352082207789", - "baseIconId": "C964FFC4-AA90-4AF6-B604-352082207789", - "name": "alpha-j", - "codepoint": "F0AF7", - "aliases": [ - "alphabet-j", - "letter-j" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "1472FB12-4CBA-476C-8F57-E1CB5E4213A6", - "baseIconId": "C964FFC4-AA90-4AF6-B604-352082207789", - "name": "alpha-j-box", - "codepoint": "F0B11", - "aliases": [ - "alphabet-j-box", - "letter-j-box" - ], - "styles": [ - "box" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "52E82BF4-8023-49C2-A4CB-AF3A88B43D1A", - "baseIconId": "C964FFC4-AA90-4AF6-B604-352082207789", - "name": "alpha-j-box-outline", - "codepoint": "F0C06", - "aliases": [ - "alphabet-j-box-outline", - "letter-j-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "90C7D800-47CA-4E5E-860D-8AAB0F6C51DC", - "baseIconId": "C964FFC4-AA90-4AF6-B604-352082207789", - "name": "alpha-j-circle", - "codepoint": "F0C07", - "aliases": [ - "alphabet-j-circle", - "letter-j-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "0A0B3839-C0D3-422A-B688-E59F4927AA6F", - "baseIconId": "C964FFC4-AA90-4AF6-B604-352082207789", - "name": "alpha-j-circle-outline", - "codepoint": "F0C08", - "aliases": [ - "alphabet-j-circle-outline", - "letter-j-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "358C06F7-7E39-4023-A9FC-2C02F275B84B", - "baseIconId": "358C06F7-7E39-4023-A9FC-2C02F275B84B", - "name": "alpha-k", - "codepoint": "F0AF8", - "aliases": [ - "alphabet-k", - "letter-k" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "EF778205-36FD-4C55-BDFB-0373983C95D4", - "baseIconId": "358C06F7-7E39-4023-A9FC-2C02F275B84B", - "name": "alpha-k-box", - "codepoint": "F0B12", - "aliases": [ - "alphabet-k-box", - "letter-k-box" - ], - "styles": [ - "box" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "FD913715-7C1E-4E80-9A44-34992AADB3E6", - "baseIconId": "358C06F7-7E39-4023-A9FC-2C02F275B84B", - "name": "alpha-k-box-outline", - "codepoint": "F0C09", - "aliases": [ - "alphabet-k-box-outline", - "letter-k-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "1F260841-CE76-48D8-BACE-8935459D850E", - "baseIconId": "358C06F7-7E39-4023-A9FC-2C02F275B84B", - "name": "alpha-k-circle", - "codepoint": "F0C0A", - "aliases": [ - "alphabet-k-circle", - "letter-k-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "F4E2D505-4C0D-4184-9F62-FDD7A450F6E7", - "baseIconId": "358C06F7-7E39-4023-A9FC-2C02F275B84B", - "name": "alpha-k-circle-outline", - "codepoint": "F0C0B", - "aliases": [ - "alphabet-k-circle-outline", - "letter-k-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "C4CFE00B-0978-482B-8E9E-F1DD4B21B45B", - "baseIconId": "C4CFE00B-0978-482B-8E9E-F1DD4B21B45B", - "name": "alpha-l", - "codepoint": "F0AF9", - "aliases": [ - "alphabet-l", - "letter-l" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "7E7BF31C-C3FA-4744-B214-FF8D15753ED5", - "baseIconId": "C4CFE00B-0978-482B-8E9E-F1DD4B21B45B", - "name": "alpha-l-box", - "codepoint": "F0B13", - "aliases": [ - "alphabet-l-box", - "letter-l-box" - ], - "styles": [ - "box" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "C0044FE0-893A-4429-A57F-9C58DFBE36CC", - "baseIconId": "C4CFE00B-0978-482B-8E9E-F1DD4B21B45B", - "name": "alpha-l-box-outline", - "codepoint": "F0C0C", - "aliases": [ - "alphabet-l-box-outline", - "letter-l-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "B1456398-80C2-4D10-B7D3-A79BE026E457", - "baseIconId": "C4CFE00B-0978-482B-8E9E-F1DD4B21B45B", - "name": "alpha-l-circle", - "codepoint": "F0C0D", - "aliases": [ - "alphabet-l-circle", - "letter-l-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "F62EB8C2-6037-474B-8D48-FD635163D3A6", - "baseIconId": "C4CFE00B-0978-482B-8E9E-F1DD4B21B45B", - "name": "alpha-l-circle-outline", - "codepoint": "F0C0E", - "aliases": [ - "alphabet-l-circle-outline", - "letter-l-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "31B62839-D838-41FE-86B8-313070BBB0A9", - "baseIconId": "31B62839-D838-41FE-86B8-313070BBB0A9", - "name": "alpha-m", - "codepoint": "F0AFA", - "aliases": [ - "alphabet-m", - "letter-m" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "AB678336-D11A-4426-92A8-AA520A4F282B", - "baseIconId": "31B62839-D838-41FE-86B8-313070BBB0A9", - "name": "alpha-m-box", - "codepoint": "F0B14", - "aliases": [ - "alphabet-m-box", - "letter-m-box" - ], - "styles": [ - "box" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "147229CF-1402-4406-8E94-B83CC64248E2", - "baseIconId": "31B62839-D838-41FE-86B8-313070BBB0A9", - "name": "alpha-m-box-outline", - "codepoint": "F0C0F", - "aliases": [ - "alphabet-m-box-outline", - "letter-m-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "88D09175-8E63-4542-BBE7-6B8D7EC16EBE", - "baseIconId": "31B62839-D838-41FE-86B8-313070BBB0A9", - "name": "alpha-m-circle", - "codepoint": "F0C10", - "aliases": [ - "alphabet-m-circle", - "letter-m-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "F85ABB66-FEE7-46ED-9DE3-AB3B24597863", - "baseIconId": "31B62839-D838-41FE-86B8-313070BBB0A9", - "name": "alpha-m-circle-outline", - "codepoint": "F0C11", - "aliases": [ - "alphabet-m-circle-outline", - "letter-m-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "528E55D8-A774-4678-9D76-42EEFDF5FE3E", - "baseIconId": "528E55D8-A774-4678-9D76-42EEFDF5FE3E", - "name": "alpha-n", - "codepoint": "F0AFB", - "aliases": [ - "alphabet-n", - "letter-n", - "neutral" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Automotive", - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "8A547BE1-B4F5-4080-824D-998618AF2542", - "baseIconId": "528E55D8-A774-4678-9D76-42EEFDF5FE3E", - "name": "alpha-n-box", - "codepoint": "F0B15", - "aliases": [ - "alphabet-n-box", - "letter-n-box" - ], - "styles": [ - "box" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "DF0B3005-5E38-4E53-9025-981EFA45D8FD", - "baseIconId": "528E55D8-A774-4678-9D76-42EEFDF5FE3E", - "name": "alpha-n-box-outline", - "codepoint": "F0C12", - "aliases": [ - "alphabet-n-box-outline", - "letter-n-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "929903C6-6867-4884-8A02-7D72F1C44F2D", - "baseIconId": "528E55D8-A774-4678-9D76-42EEFDF5FE3E", - "name": "alpha-n-circle", - "codepoint": "F0C13", - "aliases": [ - "alphabet-n-circle", - "letter-n-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "8DA6710E-B31C-42C1-BB43-1B903D4B5CA5", - "baseIconId": "528E55D8-A774-4678-9D76-42EEFDF5FE3E", - "name": "alpha-n-circle-outline", - "codepoint": "F0C14", - "aliases": [ - "alphabet-n-circle-outline", - "letter-n-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "67F8B291-3AA9-4C70-AEAB-0150A40909FB", - "baseIconId": "67F8B291-3AA9-4C70-AEAB-0150A40909FB", - "name": "alpha-o", - "codepoint": "F0AFC", - "aliases": [ - "alphabet-o", - "letter-o" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "53B24801-62B0-46AC-9474-90DCA470E506", - "baseIconId": "67F8B291-3AA9-4C70-AEAB-0150A40909FB", - "name": "alpha-o-box", - "codepoint": "F0B16", - "aliases": [ - "alphabet-o-box", - "letter-o-box" - ], - "styles": [ - "box" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "9563FB80-4D77-4800-B7DF-CCFDD00A49DD", - "baseIconId": "67F8B291-3AA9-4C70-AEAB-0150A40909FB", - "name": "alpha-o-box-outline", - "codepoint": "F0C15", - "aliases": [ - "alphabet-o-box-outline", - "letter-o-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "5DB486E7-89A5-45A6-8926-007B37DBC7D9", - "baseIconId": "67F8B291-3AA9-4C70-AEAB-0150A40909FB", - "name": "alpha-o-circle", - "codepoint": "F0C16", - "aliases": [ - "alphabet-o-circle", - "letter-o-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "485D936E-F9F7-4D89-A2CC-2C11268EAC1A", - "baseIconId": "67F8B291-3AA9-4C70-AEAB-0150A40909FB", - "name": "alpha-o-circle-outline", - "codepoint": "F0C17", - "aliases": [ - "alphabet-o-circle-outline", - "letter-o-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "750E27F3-36FF-423A-8AAD-F2FE833D9028", - "baseIconId": "750E27F3-36FF-423A-8AAD-F2FE833D9028", - "name": "alpha-p", - "codepoint": "F0AFD", - "aliases": [ - "alphabet-p", - "letter-p", - "park" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Automotive", - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "A2775802-5936-4F9A-9E7F-54D2EA8CC0E9", - "baseIconId": "750E27F3-36FF-423A-8AAD-F2FE833D9028", - "name": "alpha-p-box", - "codepoint": "F0B17", - "aliases": [ - "alphabet-p-box", - "letter-p-box" - ], - "styles": [ - "box" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "B9B61AA9-C657-4C73-8C75-2A01C08672A6", - "baseIconId": "750E27F3-36FF-423A-8AAD-F2FE833D9028", - "name": "alpha-p-box-outline", - "codepoint": "F0C18", - "aliases": [ - "alphabet-p-box-outline", - "letter-p-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "172BAE9F-C813-407E-A1D0-CBB548C3F9D8", - "baseIconId": "750E27F3-36FF-423A-8AAD-F2FE833D9028", - "name": "alpha-p-circle", - "codepoint": "F0C19", - "aliases": [ - "alphabet-p-circle", - "letter-p-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "5FF2B25B-8414-4FC9-BBEB-5D51901FB709", - "baseIconId": "750E27F3-36FF-423A-8AAD-F2FE833D9028", - "name": "alpha-p-circle-outline", - "codepoint": "F0C1A", - "aliases": [ - "alphabet-p-circle-outline", - "letter-p-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "7DAD6E06-5D6E-4827-A20E-526F2F5AF4C9", - "baseIconId": "7DAD6E06-5D6E-4827-A20E-526F2F5AF4C9", - "name": "alpha-q", - "codepoint": "F0AFE", - "aliases": [ - "alphabet-q", - "letter-q" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "4B916C98-B981-4822-90D2-3EADCAE01FA3", - "baseIconId": "7DAD6E06-5D6E-4827-A20E-526F2F5AF4C9", - "name": "alpha-q-box", - "codepoint": "F0B18", - "aliases": [ - "alphabet-q-box", - "letter-q-box" - ], - "styles": [ - "box" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "C30942DA-E2FB-41A1-A0A5-3FB004E8FC67", - "baseIconId": "7DAD6E06-5D6E-4827-A20E-526F2F5AF4C9", - "name": "alpha-q-box-outline", - "codepoint": "F0C1B", - "aliases": [ - "alphabet-q-box-outline", - "letter-q-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "03AA79A3-ADEF-4B0E-8023-455FAD721515", - "baseIconId": "7DAD6E06-5D6E-4827-A20E-526F2F5AF4C9", - "name": "alpha-q-circle", - "codepoint": "F0C1C", - "aliases": [ - "alphabet-q-circle", - "letter-q-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "43F96FE9-53D0-4C4E-AEC3-773656C97E41", - "baseIconId": "7DAD6E06-5D6E-4827-A20E-526F2F5AF4C9", - "name": "alpha-q-circle-outline", - "codepoint": "F0C1D", - "aliases": [ - "alphabet-q-circle-outline", - "letter-q-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "A1C326AD-B2A8-4A9A-98AA-B657C101EB2F", - "baseIconId": "A1C326AD-B2A8-4A9A-98AA-B657C101EB2F", - "name": "alpha-r", - "codepoint": "F0AFF", - "aliases": [ - "alphabet-r", - "letter-r", - "reverse" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Automotive", - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "0089397E-6983-4161-9D06-77F3598119DD", - "baseIconId": "A1C326AD-B2A8-4A9A-98AA-B657C101EB2F", - "name": "alpha-r-box", - "codepoint": "F0B19", - "aliases": [ - "alphabet-r-box", - "letter-r-box" - ], - "styles": [ - "box" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "206DB27B-1F78-481F-8E8E-1A78F8221EF7", - "baseIconId": "A1C326AD-B2A8-4A9A-98AA-B657C101EB2F", - "name": "alpha-r-box-outline", - "codepoint": "F0C1E", - "aliases": [ - "alphabet-r-box-outline", - "letter-r-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "A0CA4573-5B82-4760-BB23-7D1413DE7257", - "baseIconId": "A1C326AD-B2A8-4A9A-98AA-B657C101EB2F", - "name": "alpha-r-circle", - "codepoint": "F0C1F", - "aliases": [ - "alphabet-r-circle", - "letter-r-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "3EFEFA7D-EE69-4813-93AB-096C148CC74B", - "baseIconId": "A1C326AD-B2A8-4A9A-98AA-B657C101EB2F", - "name": "alpha-r-circle-outline", - "codepoint": "F0C20", - "aliases": [ - "alphabet-r-circle-outline", - "letter-r-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "5E4ECB99-9DA0-419C-AADE-F2F7AE91FF6A", - "baseIconId": "5E4ECB99-9DA0-419C-AADE-F2F7AE91FF6A", - "name": "alpha-s", - "codepoint": "F0B00", - "aliases": [ - "alphabet-s", - "letter-s" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "2BC531B2-987E-411F-B3AE-3686F24F3B05", - "baseIconId": "5E4ECB99-9DA0-419C-AADE-F2F7AE91FF6A", - "name": "alpha-s-box", - "codepoint": "F0B1A", - "aliases": [ - "alphabet-s-box", - "letter-s-box" - ], - "styles": [ - "box" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "839A6E89-0555-4B05-BADA-B0D0C665E885", - "baseIconId": "5E4ECB99-9DA0-419C-AADE-F2F7AE91FF6A", - "name": "alpha-s-box-outline", - "codepoint": "F0C21", - "aliases": [ - "alphabet-s-box-outline", - "letter-s-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "2F13C710-300C-4287-9320-C84024C1002D", - "baseIconId": "5E4ECB99-9DA0-419C-AADE-F2F7AE91FF6A", - "name": "alpha-s-circle", - "codepoint": "F0C22", - "aliases": [ - "alphabet-s-circle", - "letter-s-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "17018533-C274-4E75-86DB-2D0DB1F4B45E", - "baseIconId": "5E4ECB99-9DA0-419C-AADE-F2F7AE91FF6A", - "name": "alpha-s-circle-outline", - "codepoint": "F0C23", - "aliases": [ - "alphabet-s-circle-outline", - "letter-s-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "DEAF6AD9-9AB9-4B59-B47D-830357A4B665", - "baseIconId": "DEAF6AD9-9AB9-4B59-B47D-830357A4B665", - "name": "alpha-t", - "codepoint": "F0B01", - "aliases": [ - "alphabet-t", - "letter-t" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "3FDF524A-6293-4401-BEDE-7768370743CE", - "baseIconId": "DEAF6AD9-9AB9-4B59-B47D-830357A4B665", - "name": "alpha-t-box", - "codepoint": "F0B1B", - "aliases": [ - "alphabet-t-box", - "letter-t-box" - ], - "styles": [ - "box" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "5AB643B8-7A4C-470B-9C0C-3A3E1E730623", - "baseIconId": "DEAF6AD9-9AB9-4B59-B47D-830357A4B665", - "name": "alpha-t-box-outline", - "codepoint": "F0C24", - "aliases": [ - "alphabet-t-box-outline", - "letter-t-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "6A41607E-FD2D-49EB-B6A5-67472ECF381E", - "baseIconId": "DEAF6AD9-9AB9-4B59-B47D-830357A4B665", - "name": "alpha-t-circle", - "codepoint": "F0C25", - "aliases": [ - "alphabet-t-circle", - "letter-t-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "63897F2D-C1BC-46D0-96D8-82CCC8AB8E9C", - "baseIconId": "DEAF6AD9-9AB9-4B59-B47D-830357A4B665", - "name": "alpha-t-circle-outline", - "codepoint": "F0C26", - "aliases": [ - "alphabet-t-circle-outline", - "letter-t-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "7404138B-11FC-441F-9F64-2CADF3EED84F", - "baseIconId": "7404138B-11FC-441F-9F64-2CADF3EED84F", - "name": "alpha-u", - "codepoint": "F0B02", - "aliases": [ - "alphabet-u", - "letter-u" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "B383312A-D001-4F27-95D9-9C705B7529E7", - "baseIconId": "7404138B-11FC-441F-9F64-2CADF3EED84F", - "name": "alpha-u-box", - "codepoint": "F0B1C", - "aliases": [ - "alphabet-u-box", - "letter-u-box" - ], - "styles": [ - "box" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "CAA94F37-3C12-4A17-A0CF-F093E39F5463", - "baseIconId": "7404138B-11FC-441F-9F64-2CADF3EED84F", - "name": "alpha-u-box-outline", - "codepoint": "F0C27", - "aliases": [ - "alphabet-u-box-outline", - "letter-u-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "C47AD771-D938-41ED-B07A-28499959E3BF", - "baseIconId": "7404138B-11FC-441F-9F64-2CADF3EED84F", - "name": "alpha-u-circle", - "codepoint": "F0C28", - "aliases": [ - "alphabet-u-circle", - "letter-u-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "12B388EE-036B-45AF-8390-122E6BA125CF", - "baseIconId": "7404138B-11FC-441F-9F64-2CADF3EED84F", - "name": "alpha-u-circle-outline", - "codepoint": "F0C29", - "aliases": [ - "alphabet-u-circle-outline", - "letter-u-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "6A261917-D952-4EFD-B8A4-9A91BCF67DE1", - "baseIconId": "6A261917-D952-4EFD-B8A4-9A91BCF67DE1", - "name": "alpha-v", - "codepoint": "F0B03", - "aliases": [ - "alphabet-v", - "letter-v", - "roman-numeral-5" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "C3B68231-EFA7-4988-BED2-9C158A812AC4", - "baseIconId": "6A261917-D952-4EFD-B8A4-9A91BCF67DE1", - "name": "alpha-v-box", - "codepoint": "F0B1D", - "aliases": [ - "alphabet-v-box", - "letter-v-box" - ], - "styles": [ - "box" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "784EF15E-8476-47B9-BACA-D440F60A371E", - "baseIconId": "6A261917-D952-4EFD-B8A4-9A91BCF67DE1", - "name": "alpha-v-box-outline", - "codepoint": "F0C2A", - "aliases": [ - "alphabet-v-box-outline", - "letter-v-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "C97A782B-26C7-4732-804F-D7D5BE126D5D", - "baseIconId": "6A261917-D952-4EFD-B8A4-9A91BCF67DE1", - "name": "alpha-v-circle", - "codepoint": "F0C2B", - "aliases": [ - "alphabet-v-circle", - "letter-v-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "F6CE363B-41A6-411A-9FDE-D36E24013012", - "baseIconId": "6A261917-D952-4EFD-B8A4-9A91BCF67DE1", - "name": "alpha-v-circle-outline", - "codepoint": "F0C2C", - "aliases": [ - "alphabet-v-circle-outline", - "letter-v-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "DFACCE73-8433-472E-AAB6-6471BBFDC82C", - "baseIconId": "DFACCE73-8433-472E-AAB6-6471BBFDC82C", - "name": "alpha-w", - "codepoint": "F0B04", - "aliases": [ - "alphabet-w", - "letter-w" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "E63E39FF-8E9F-470F-9CDD-55B2703E620A", - "baseIconId": "DFACCE73-8433-472E-AAB6-6471BBFDC82C", - "name": "alpha-w-box", - "codepoint": "F0B1E", - "aliases": [ - "alphabet-w-box", - "letter-w-box" - ], - "styles": [ - "box" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "B844FAFE-5491-4441-9C3E-23F2AB148E10", - "baseIconId": "DFACCE73-8433-472E-AAB6-6471BBFDC82C", - "name": "alpha-w-box-outline", - "codepoint": "F0C2D", - "aliases": [ - "alphabet-w-box-outline", - "letter-w-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "8718E128-006E-4009-A718-A104B4C8E3A4", - "baseIconId": "DFACCE73-8433-472E-AAB6-6471BBFDC82C", - "name": "alpha-w-circle", - "codepoint": "F0C2E", - "aliases": [ - "alphabet-w-circle", - "letter-w-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "24152C0F-8019-42D1-B4F2-3917388A8987", - "baseIconId": "DFACCE73-8433-472E-AAB6-6471BBFDC82C", - "name": "alpha-w-circle-outline", - "codepoint": "F0C2F", - "aliases": [ - "alphabet-w-circle-outline", - "letter-w-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "44344AAE-07D8-455B-AA2E-68474E8829FE", - "baseIconId": "44344AAE-07D8-455B-AA2E-68474E8829FE", - "name": "alpha-x", - "codepoint": "F0B05", - "aliases": [ - "alphabet-x", - "letter-x", - "roman-numeral-10" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "25BBD26F-C8D4-4E4D-899C-57D910EECA55", - "baseIconId": "44344AAE-07D8-455B-AA2E-68474E8829FE", - "name": "alpha-x-box", - "codepoint": "F0B1F", - "aliases": [ - "alphabet-x-box", - "letter-x-box" - ], - "styles": [ - "box" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "98537673-0A9D-4982-A0E0-BFD69A0C1401", - "baseIconId": "44344AAE-07D8-455B-AA2E-68474E8829FE", - "name": "alpha-x-box-outline", - "codepoint": "F0C30", - "aliases": [ - "alphabet-x-box-outline", - "letter-x-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "BF0C5599-EFCE-44ED-AD08-3CE99DFC9802", - "baseIconId": "44344AAE-07D8-455B-AA2E-68474E8829FE", - "name": "alpha-x-circle", - "codepoint": "F0C31", - "aliases": [ - "alphabet-x-circle", - "letter-x-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "8B9761E9-9101-4850-8DCA-D8B63193A20B", - "baseIconId": "44344AAE-07D8-455B-AA2E-68474E8829FE", - "name": "alpha-x-circle-outline", - "codepoint": "F0C32", - "aliases": [ - "alphabet-x-circle-outline", - "letter-x-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "CD6A13CC-DA14-42AD-A4A0-2A99EA3E5E3D", - "baseIconId": "CD6A13CC-DA14-42AD-A4A0-2A99EA3E5E3D", - "name": "alpha-y", - "codepoint": "F0B06", - "aliases": [ - "alphabet-y", - "letter-y" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "00418BEF-11B7-4644-8F57-3CBB7D8F9760", - "baseIconId": "CD6A13CC-DA14-42AD-A4A0-2A99EA3E5E3D", - "name": "alpha-y-box", - "codepoint": "F0B20", - "aliases": [ - "alphabet-y-box", - "letter-y-box" - ], - "styles": [ - "box" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "929FF46B-C6B6-4973-BB7E-44C232F149AC", - "baseIconId": "CD6A13CC-DA14-42AD-A4A0-2A99EA3E5E3D", - "name": "alpha-y-box-outline", - "codepoint": "F0C33", - "aliases": [ - "alphabet-y-box-outline", - "letter-y-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "07D04396-8CE9-47A0-80BF-9D7055655F81", - "baseIconId": "CD6A13CC-DA14-42AD-A4A0-2A99EA3E5E3D", - "name": "alpha-y-circle", - "codepoint": "F0C34", - "aliases": [ - "alphabet-y-circle", - "letter-y-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "94DF1C7C-7FDE-4AD8-B6F9-B23C3C4DA478", - "baseIconId": "CD6A13CC-DA14-42AD-A4A0-2A99EA3E5E3D", - "name": "alpha-y-circle-outline", - "codepoint": "F0C35", - "aliases": [ - "alphabet-y-circle-outline", - "letter-y-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "E82C7336-9ECE-4BA9-84BA-AA229FBF4E37", - "baseIconId": "E82C7336-9ECE-4BA9-84BA-AA229FBF4E37", - "name": "alpha-z", - "codepoint": "F0B07", - "aliases": [ - "alphabet-z", - "letter-z" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "175F93C9-39AA-4076-A997-B1984D5CE960", - "baseIconId": "E82C7336-9ECE-4BA9-84BA-AA229FBF4E37", - "name": "alpha-z-box", - "codepoint": "F0B21", - "aliases": [ - "alphabet-z-box", - "letter-z-box" - ], - "styles": [ - "box" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "EB6335C7-9EA1-4EB3-BCA5-2DF54F8B50C8", - "baseIconId": "E82C7336-9ECE-4BA9-84BA-AA229FBF4E37", - "name": "alpha-z-box-outline", - "codepoint": "F0C36", - "aliases": [ - "alphabet-z-box-outline", - "letter-z-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "1F60D37E-2D88-48D1-A291-D3F59D171E55", - "baseIconId": "E82C7336-9ECE-4BA9-84BA-AA229FBF4E37", - "name": "alpha-z-circle", - "codepoint": "F0C37", - "aliases": [ - "alphabet-z-circle", - "letter-z-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "63AF9496-BE67-43F7-9DE4-341E0EDC0C62", - "baseIconId": "E82C7336-9ECE-4BA9-84BA-AA229FBF4E37", - "name": "alpha-z-circle-outline", - "codepoint": "F0C38", - "aliases": [ - "alphabet-z-circle-outline", - "letter-z-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "68AC0195-57C1-4759-8814-FA18DFE0351B", - "baseIconId": "68AC0195-57C1-4759-8814-FA18DFE0351B", - "name": "alphabet-aurebesh", - "codepoint": "F132C", - "aliases": [ - "writing-system-aurebesh" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Haley Halcyon" - }, - { - "id": "197B613F-AF17-41DE-B2A6-7FCB8D86C366", - "baseIconId": "197B613F-AF17-41DE-B2A6-7FCB8D86C366", - "name": "alphabet-cyrillic", - "codepoint": "F132D", - "aliases": [ - "writing-system-cyrillic" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Haley Halcyon" - }, - { - "id": "5E1EDFBD-2E67-41E1-8E23-F835614DBBD9", - "baseIconId": "5E1EDFBD-2E67-41E1-8E23-F835614DBBD9", - "name": "alphabet-greek", - "codepoint": "F132E", - "aliases": [ - "writing-system-greek" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Haley Halcyon" - }, - { - "id": "07851190-1E8F-43D3-A5BF-01A120C0A3FB", - "baseIconId": "07851190-1E8F-43D3-A5BF-01A120C0A3FB", - "name": "alphabet-latin", - "codepoint": "F132F", - "aliases": [ - "writing-system-latin" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Haley Halcyon" - }, - { - "id": "169593B8-F579-4167-B49C-5F353BBABB00", - "baseIconId": "169593B8-F579-4167-B49C-5F353BBABB00", - "name": "alphabet-piqad", - "codepoint": "F1330", - "aliases": [ - "writing-system-piqad" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Haley Halcyon" - }, - { - "id": "48C4C59F-80F3-454B-94B2-1951506F38C1", - "baseIconId": "48C4C59F-80F3-454B-94B2-1951506F38C1", - "name": "alphabet-tengwar", - "codepoint": "F1337", - "aliases": [ - "writing-system-tengwar" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Haley Halcyon" - }, - { - "id": "EAD8BAC5-EE7C-4553-9316-F45094CF9C7A", - "baseIconId": "EAD8BAC5-EE7C-4553-9316-F45094CF9C7A", - "name": "alphabetical", - "codepoint": "F002C", - "aliases": [ - "letters", - "a-b-c", - "abc" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Austin Andrews" - }, - { - "id": "5C6F0A6B-362A-4EBF-9E0C-57E7405429AE", - "baseIconId": "EAD8BAC5-EE7C-4553-9316-F45094CF9C7A", - "name": "alphabetical-off", - "codepoint": "F100C", - "aliases": [ - "letters-off", - "abc-off", - "a-b-c-off" - ], - "styles": [ - "off" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Michael Richins" - }, - { - "id": "87F9C7D3-2B22-45A0-A1A8-1060ECA2B0DD", - "baseIconId": "EAD8BAC5-EE7C-4553-9316-F45094CF9C7A", - "name": "alphabetical-variant", - "codepoint": "F100D", - "aliases": [ - "letters", - "abc", - "a-b-c" - ], - "styles": [ - "variant" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Michael Richins" - }, - { - "id": "5C408382-5124-4A1E-9603-C510614D4C63", - "baseIconId": "EAD8BAC5-EE7C-4553-9316-F45094CF9C7A", - "name": "alphabetical-variant-off", - "codepoint": "F100E", - "aliases": [ - "letters-off", - "abc-off", - "a-b-c-off" - ], - "styles": [ - "off", - "variant" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Michael Richins" - }, - { - "id": "1F7A2F31-3549-4F3C-A95E-E7356033A601", - "baseIconId": "1F7A2F31-3549-4F3C-A95E-E7356033A601", - "name": "altimeter", - "codepoint": "F05D7", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "B0DB559B-A9D4-473A-AF6D-C72559CCC9D9", - "baseIconId": "A0B91DEA-DB9A-4737-B2F4-26B805B88648", - "name": "ambulance", - "codepoint": "F002F", - "aliases": [], - "styles": [ - "plus" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Medical \/ Hospital" - ], - "author": "Austin Andrews" - }, - { - "id": "0F3F828D-7F80-4571-A5B5-296FAC62FFB9", - "baseIconId": "AED3CA58-6CAA-45AF-9791-F61AC32DAFBA", - "name": "ammunition", - "codepoint": "F0CE8", - "aliases": [ - "bullets" - ], - "styles": [ - "multiple" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "CC5AC69B-0EAA-454A-8757-4F670F478952", - "baseIconId": "CC5AC69B-0EAA-454A-8757-4F670F478952", - "name": "ampersand", - "codepoint": "F0A8D", - "aliases": [ - "and" - ], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "4A952C8C-7A6F-4028-A974-48E4DCE299CF", - "baseIconId": "4A952C8C-7A6F-4028-A974-48E4DCE299CF", - "name": "amplifier", - "codepoint": "F0030", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation", - "Music" - ], - "author": "Christopher Schreiner" - }, - { - "id": "E2914725-030B-4979-BCDE-87FCD4435F7F", - "baseIconId": "4A952C8C-7A6F-4028-A974-48E4DCE299CF", - "name": "amplifier-off", - "codepoint": "F11B5", - "aliases": [], - "styles": [ - "off" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "8A3C8CCE-D798-446B-A283-90129AD847C9", - "baseIconId": "8A3C8CCE-D798-446B-A283-90129AD847C9", - "name": "anchor", - "codepoint": "F0031", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Water" - ], - "author": "Google" - }, - { - "id": "4633B767-FF29-411D-8C04-69057C6B65B2", - "baseIconId": "4633B767-FF29-411D-8C04-69057C6B65B2", - "name": "android", - "codepoint": "F0032", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "B156B15D-86F9-40E0-8B8E-421F78BE5509", - "baseIconId": "B156B15D-86F9-40E0-8B8E-421F78BE5509", - "name": "android-studio", - "codepoint": "F0034", - "aliases": [ - "math-compass-variant" - ], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "B4A236B3-E14B-4A64-8EDD-A48128013388", - "baseIconId": "77550809-9FBB-4283-BA57-7C48AB2B86C0", - "name": "angle-acute", - "codepoint": "F0937", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Haley Halcyon" - }, - { - "id": "7A6B88D9-B385-4A6B-84C8-8280456944E4", - "baseIconId": "77550809-9FBB-4283-BA57-7C48AB2B86C0", - "name": "angle-obtuse", - "codepoint": "F0938", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Haley Halcyon" - }, - { - "id": "77550809-9FBB-4283-BA57-7C48AB2B86C0", - "baseIconId": "77550809-9FBB-4283-BA57-7C48AB2B86C0", - "name": "angle-right", - "codepoint": "F0939", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Haley Halcyon" - }, - { - "id": "549F8173-7E91-411F-9ECF-D04D2B64B386", - "baseIconId": "549F8173-7E91-411F-9ECF-D04D2B64B386", - "name": "angular", - "codepoint": "F06B2", - "aliases": [], - "styles": [], - "version": "1.7.22", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Developer \/ Languages" - ], - "author": "Contributors" - }, - { - "id": "8A82CBEA-C1B3-40C2-96C2-DED8D83DA446", - "baseIconId": "549F8173-7E91-411F-9ECF-D04D2B64B386", - "name": "angularjs", - "codepoint": "F06BF", - "aliases": [], - "styles": [ - "outline" - ], - "version": "1.8.36", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Developer \/ Languages" - ], - "author": "Contributors" - }, - { - "id": "4FE8F135-8FF9-427B-8857-122FBB0A300A", - "baseIconId": "4FE8F135-8FF9-427B-8857-122FBB0A300A", - "name": "animation", - "codepoint": "F05D8", - "aliases": [ - "auto-awesome-motion" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "5DCFE57B-82CA-401A-A797-3C12F1BF4080", - "baseIconId": "4FE8F135-8FF9-427B-8857-122FBB0A300A", - "name": "animation-outline", - "codepoint": "F0A8F", - "aliases": [], - "styles": [ - "outline" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "093AE881-42E2-46B9-B833-894DDC2FE368", - "baseIconId": "4FE8F135-8FF9-427B-8857-122FBB0A300A", - "name": "animation-play", - "codepoint": "F093A", - "aliases": [], - "styles": [ - "variant" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "423AD280-5A46-49AF-B4C7-20C5E1640002", - "baseIconId": "4FE8F135-8FF9-427B-8857-122FBB0A300A", - "name": "animation-play-outline", - "codepoint": "F0A90", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "34EEAB55-08C0-4C84-A580-CAF1FA926D94", - "baseIconId": "34EEAB55-08C0-4C84-A580-CAF1FA926D94", - "name": "ansible", - "codepoint": "F109A", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "B6F97155-147F-4D03-9C71-7668E5EA2712", - "baseIconId": "B6F97155-147F-4D03-9C71-7668E5EA2712", - "name": "antenna", - "codepoint": "F1119", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "C72FF17B-D0E1-4641-9802-B6BA993D5910", - "baseIconId": "C72FF17B-D0E1-4641-9802-B6BA993D5910", - "name": "anvil", - "codepoint": "F089B", - "aliases": [], - "styles": [], - "version": "2.2.43", - "deprecated": false, - "tags": [], - "author": "Nick" - }, - { - "id": "B94C01C7-0851-4FD4-AEFD-CCD63F65C093", - "baseIconId": "B94C01C7-0851-4FD4-AEFD-CCD63F65C093", - "name": "apache-kafka", - "codepoint": "F100F", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Developer \/ Languages" - ], - "author": "Contributors" - }, - { - "id": "ABE80259-E64D-4BF4-BC6E-1D8FFA16636F", - "baseIconId": "ABE80259-E64D-4BF4-BC6E-1D8FFA16636F", - "name": "api", - "codepoint": "F109B", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Google" - }, - { - "id": "22B88F3A-28F4-41FA-A63B-721699E2A8B2", - "baseIconId": "ABE80259-E64D-4BF4-BC6E-1D8FFA16636F", - "name": "api-off", - "codepoint": "F1257", - "aliases": [], - "styles": [ - "off" - ], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "sergiocarlotto" - }, - { - "id": "2829275C-A01C-42CD-A195-447629791D04", - "baseIconId": "2829275C-A01C-42CD-A195-447629791D04", - "name": "apple", - "codepoint": "F0035", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "FAEC5B00-46A8-49AD-87DA-765891B9E387", - "baseIconId": "FAEC5B00-46A8-49AD-87DA-765891B9E387", - "name": "apple-finder", - "codepoint": "F0036", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "BDB8AF3D-28BD-4FF2-AED0-36108C1B0543", - "baseIconId": "BDB8AF3D-28BD-4FF2-AED0-36108C1B0543", - "name": "apple-icloud", - "codepoint": "F0038", - "aliases": [ - "apple-mobileme" - ], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "9B0B7248-3416-4D43-9CE1-13D70949EAA1", - "baseIconId": "9B0B7248-3416-4D43-9CE1-13D70949EAA1", - "name": "apple-ios", - "codepoint": "F0037", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "070FF4A9-7726-4682-8ABD-AC1800B8D83E", - "baseIconId": "5AF5B660-DDD5-446A-8AC9-102776DBBBC9", - "name": "apple-keyboard-caps", - "codepoint": "F0632", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "03043022-A59D-4E31-B385-E6D94D3D9B92", - "baseIconId": "03043022-A59D-4E31-B385-E6D94D3D9B92", - "name": "apple-keyboard-command", - "codepoint": "F0633", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "F24769F6-25C3-4244-8C64-13A514E7CAAD", - "baseIconId": "F24769F6-25C3-4244-8C64-13A514E7CAAD", - "name": "apple-keyboard-control", - "codepoint": "F0634", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "C06A94E2-9606-484B-BC0D-D0B9A2FBA76F", - "baseIconId": "C06A94E2-9606-484B-BC0D-D0B9A2FBA76F", - "name": "apple-keyboard-option", - "codepoint": "F0635", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "5AF5B660-DDD5-446A-8AC9-102776DBBBC9", - "baseIconId": "5AF5B660-DDD5-446A-8AC9-102776DBBBC9", - "name": "apple-keyboard-shift", - "codepoint": "F0636", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "F79DE68B-BB98-41F7-9B5D-69C8926AB9B0", - "baseIconId": "F79DE68B-BB98-41F7-9B5D-69C8926AB9B0", - "name": "apple-safari", - "codepoint": "F0039", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "DD3492E1-1F83-4E41-8BA9-9E6A1380D235", - "baseIconId": "DD3492E1-1F83-4E41-8BA9-9E6A1380D235", - "name": "application", - "codepoint": "F08C6", - "aliases": [ - "iframe" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "B5216901-ECCB-41B3-8F35-BFA701ECDDBC", - "baseIconId": "DD3492E1-1F83-4E41-8BA9-9E6A1380D235", - "name": "application-array", - "codepoint": "F10F5", - "aliases": [ - "iframe-array" - ], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D07A9442-941E-47BB-8B31-F2EB41DE069E", - "baseIconId": "DD3492E1-1F83-4E41-8BA9-9E6A1380D235", - "name": "application-array-outline", - "codepoint": "F10F6", - "aliases": [ - "iframe-array-outline" - ], - "styles": [ - "outline" - ], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Michael Irigoyen" - }, - { - "id": "6453ED46-EC58-4FE8-94C3-1AC170E42152", - "baseIconId": "DD3492E1-1F83-4E41-8BA9-9E6A1380D235", - "name": "application-braces", - "codepoint": "F10F7", - "aliases": [ - "iframe-braces" - ], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Michael Irigoyen" - }, - { - "id": "3727A772-B282-4785-B291-A7C7EBCB25A8", - "baseIconId": "DD3492E1-1F83-4E41-8BA9-9E6A1380D235", - "name": "application-braces-outline", - "codepoint": "F10F8", - "aliases": [ - "iframe-braces-outline" - ], - "styles": [ - "outline" - ], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Michael Irigoyen" - }, - { - "id": "86A1CD17-B112-46F8-A076-424D528A25AA", - "baseIconId": "DD3492E1-1F83-4E41-8BA9-9E6A1380D235", - "name": "application-brackets", - "codepoint": "F0C8B", - "aliases": [ - "iframe-brackets" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Michael Richins" - }, - { - "id": "87F83807-58BE-49C5-981B-CBDFD8EABE4A", - "baseIconId": "DD3492E1-1F83-4E41-8BA9-9E6A1380D235", - "name": "application-brackets-outline", - "codepoint": "F0C8C", - "aliases": [ - "iframe-brackets-outline" - ], - "styles": [ - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Michael Richins" - }, - { - "id": "38278159-AC2C-433A-9335-95B05C1F6F56", - "baseIconId": "DD3492E1-1F83-4E41-8BA9-9E6A1380D235", - "name": "application-cog", - "codepoint": "F0675", - "aliases": [ - "iframe-cog" - ], - "styles": [ - "variant" - ], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A3B1663D-87F0-4E57-BAF4-5CB9D0CC6B17", - "baseIconId": "DD3492E1-1F83-4E41-8BA9-9E6A1380D235", - "name": "application-cog-outline", - "codepoint": "F1577", - "aliases": [ - "application-settings", - "iframe-cog-outline" - ], - "styles": [ - "outline" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "AAF23976-7C9D-4AFA-BE25-CCD225A95EEA", - "baseIconId": "DD3492E1-1F83-4E41-8BA9-9E6A1380D235", - "name": "application-edit", - "codepoint": "F00AE", - "aliases": [ - "iframe-edit" - ], - "styles": [ - "edit" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Michael Irigoyen" - }, - { - "id": "FBD11E2A-7F1F-4CE2-B17D-B3623D4FEA43", - "baseIconId": "DD3492E1-1F83-4E41-8BA9-9E6A1380D235", - "name": "application-edit-outline", - "codepoint": "F0619", - "aliases": [ - "iframe-edit-outline" - ], - "styles": [ - "edit", - "outline" - ], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Michael Irigoyen" - }, - { - "id": "19852AF4-396B-4BA7-B9A1-3E412D49290A", - "baseIconId": "DD3492E1-1F83-4E41-8BA9-9E6A1380D235", - "name": "application-export", - "codepoint": "F0DAD", - "aliases": [ - "iframe-export-outline" - ], - "styles": [ - "arrow", - "outline" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "0870BDBC-060F-49E5-B72C-CA06949643AF", - "baseIconId": "DD3492E1-1F83-4E41-8BA9-9E6A1380D235", - "name": "application-import", - "codepoint": "F0DAE", - "aliases": [ - "iframe-import-outline" - ], - "styles": [ - "arrow", - "outline" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "55C0C50F-9F4D-44C4-A84B-C79F645A8604", - "baseIconId": "DD3492E1-1F83-4E41-8BA9-9E6A1380D235", - "name": "application-outline", - "codepoint": "F0614", - "aliases": [ - "web-asset", - "iframe-outline" - ], - "styles": [ - "outline" - ], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "2A524868-FBD4-442F-8E4C-413A1C8DDDEE", - "baseIconId": "DD3492E1-1F83-4E41-8BA9-9E6A1380D235", - "name": "application-parentheses", - "codepoint": "F10F9", - "aliases": [ - "iframe-parentheses" - ], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9FA63D08-5057-4AA3-9FD0-367B8AE55352", - "baseIconId": "DD3492E1-1F83-4E41-8BA9-9E6A1380D235", - "name": "application-parentheses-outline", - "codepoint": "F10FA", - "aliases": [ - "iframe-parentheses-outline" - ], - "styles": [ - "outline" - ], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0AA8EAC5-6700-47B6-A38B-0E58CFA0CFE7", - "baseIconId": "DD3492E1-1F83-4E41-8BA9-9E6A1380D235", - "name": "application-settings", - "codepoint": "F0B60", - "aliases": [ - "iframe-settings" - ], - "styles": [ - "settings" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "EB7E0628-A5CC-4E23-9AD1-CC35CC4E3722", - "baseIconId": "DD3492E1-1F83-4E41-8BA9-9E6A1380D235", - "name": "application-settings-outline", - "codepoint": "F1555", - "aliases": [ - "iframe-settings-outline" - ], - "styles": [ - "outline", - "settings" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "CoreyVidal" - }, - { - "id": "A42EE2E1-D139-426F-9B59-C21E8C185DA7", - "baseIconId": "DD3492E1-1F83-4E41-8BA9-9E6A1380D235", - "name": "application-variable", - "codepoint": "F10FB", - "aliases": [ - "iframe-variable" - ], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DF02C215-E96B-40CA-B372-9767965F11D3", - "baseIconId": "DD3492E1-1F83-4E41-8BA9-9E6A1380D235", - "name": "application-variable-outline", - "codepoint": "F10FC", - "aliases": [ - "iframe-variable-outline" - ], - "styles": [ - "outline" - ], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B5A9F91C-21A0-415A-AC77-B4318137C32D", - "baseIconId": "B5A9F91C-21A0-415A-AC77-B4318137C32D", - "name": "approximately-equal", - "codepoint": "F0F9E", - "aliases": [], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Irigoyen" - }, - { - "id": "8EE13AEC-B8FF-4E25-9D5B-8447B0310133", - "baseIconId": "B5A9F91C-21A0-415A-AC77-B4318137C32D", - "name": "approximately-equal-box", - "codepoint": "F0F9F", - "aliases": [], - "styles": [ - "box" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7F5B9650-26E7-4A88-A6D1-2C338778651D", - "baseIconId": "7F5B9650-26E7-4A88-A6D1-2C338778651D", - "name": "apps", - "codepoint": "F003B", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "3EEC66E4-C03F-4701-B151-1C8048D19505", - "baseIconId": "7F5B9650-26E7-4A88-A6D1-2C338778651D", - "name": "apps-box", - "codepoint": "F0D46", - "aliases": [], - "styles": [ - "box" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "B7F8E18D-C18D-4EA1-BABE-BE0E48BDCF2D", - "baseIconId": "B7F8E18D-C18D-4EA1-BABE-BE0E48BDCF2D", - "name": "arch", - "codepoint": "F08C7", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "9C2AD144-9997-4169-983C-879DCCD62760", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive", - "codepoint": "F003C", - "aliases": [ - "box" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "41367FBC-DCE3-4202-AF33-3AD576C3FD7C", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-alert", - "codepoint": "F14FD", - "aliases": [ - "box-alert" - ], - "styles": [ - "alert" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Austin Andrews" - }, - { - "id": "1D17B03B-9147-4067-8F5E-88773D68289E", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-alert-outline", - "codepoint": "F14FE", - "aliases": [ - "box-alert-outline" - ], - "styles": [ - "alert", - "outline" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Austin Andrews" - }, - { - "id": "237B205E-C03C-424A-93F9-8C771FE01A38", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-arrow-down", - "codepoint": "F1259", - "aliases": [ - "box-arrow-down", - "this-side-down" - ], - "styles": [ - "arrow" - ], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "frankgrinaert" - }, - { - "id": "133BA980-E797-4DB3-9C92-F59AC3DB3399", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-arrow-down-outline", - "codepoint": "F125A", - "aliases": [ - "box-arrow-down", - "this-side-down-outline" - ], - "styles": [ - "arrow", - "outline" - ], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "frankgrinaert" - }, - { - "id": "43E8F715-D3DB-4CAA-9355-88E22C7E4D28", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-arrow-up", - "codepoint": "F125B", - "aliases": [ - "box-arrow-up", - "this-side-up" - ], - "styles": [ - "arrow" - ], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "frankgrinaert" - }, - { - "id": "643EF8E3-148D-4858-85C6-A965822B74CF", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-arrow-up-outline", - "codepoint": "F125C", - "aliases": [ - "box-arrow-up-outline", - "this-side-up-outline" - ], - "styles": [ - "arrow", - "outline" - ], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "frankgrinaert" - }, - { - "id": "656CE7E5-1C31-4428-A609-703A2AA39DA7", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-cancel", - "codepoint": "F174B", - "aliases": [ - "box-cancel" - ], - "styles": [ - "cancel" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "2D1FAE99-E9DD-480C-B144-8B7FC7AB99C4", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-cancel-outline", - "codepoint": "F174C", - "aliases": [ - "box-cancel-outline" - ], - "styles": [ - "cancel", - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "03F9B9A5-04B8-4A24-AE38-87BE165BBE35", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-check", - "codepoint": "F174D", - "aliases": [ - "box-check", - "archive-success", - "box-success" - ], - "styles": [ - "check" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "F5A70DE2-BC31-4FCA-AE8E-5295D2F5DB7B", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-check-outline", - "codepoint": "F174E", - "aliases": [ - "box-check-outline", - "archive-success-outline", - "box-success-outline" - ], - "styles": [ - "check", - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "8DBB6350-60C3-4433-9805-C8AB712950C4", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-clock", - "codepoint": "F174F", - "aliases": [ - "box-clock", - "box-time", - "archive-time" - ], - "styles": [ - "clock" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "0087686D-DB93-46D3-AD96-C8BA2F17E0D6", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-clock-outline", - "codepoint": "F1750", - "aliases": [ - "box-clock-outline", - "box-time-outline", - "archive-time-outline" - ], - "styles": [ - "clock", - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "3B5F3441-7A3E-4CF1-933B-F5FCF801CB8E", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-cog", - "codepoint": "F1751", - "aliases": [ - "box-cog" - ], - "styles": [ - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "FD6CA806-C4D6-4D5E-AA3B-4292EE225734", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-cog-outline", - "codepoint": "F1752", - "aliases": [ - "box-cog-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "6FC882E2-B34D-47ED-8E18-6CD197A0D709", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-edit", - "codepoint": "F1753", - "aliases": [ - "box-edit" - ], - "styles": [ - "edit" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Colton Wiscombe" - }, - { - "id": "18D5853A-26A8-416D-9029-9F216DA3316B", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-edit-outline", - "codepoint": "F1754", - "aliases": [ - "box-edit-outline" - ], - "styles": [ - "edit", - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Colton Wiscombe" - }, - { - "id": "82B3AAAD-92D1-4524-98F4-F29AFB1A5BFA", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-eye", - "codepoint": "F1755", - "aliases": [ - "archive-view", - "box-eye", - "box-view" - ], - "styles": [ - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "A61C4171-FA5D-4273-A1F5-72CC6506BE70", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-eye-outline", - "codepoint": "F1756", - "aliases": [ - "archive-view-outline", - "box-eye-outline", - "box-view-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "52016536-6E90-4C85-891F-5A9183313497", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-lock", - "codepoint": "F1757", - "aliases": [ - "box-lock" - ], - "styles": [ - "lock" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "DE180687-AD0B-4DE0-8156-EC22729FE7C3", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-lock-open", - "codepoint": "F1758", - "aliases": [ - "box-lock-open" - ], - "styles": [ - "lock" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "5128174B-10F3-4057-96AE-4DD993B4317F", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-lock-open-outline", - "codepoint": "F1759", - "aliases": [ - "box-lock-open-outline" - ], - "styles": [ - "lock", - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "E5F9A56B-CB7E-4EEC-B03A-571F9704E32E", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-lock-outline", - "codepoint": "F175A", - "aliases": [ - "box-lock-outline" - ], - "styles": [ - "lock", - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "FDC11926-2947-4451-A7CE-2466D7CB8E07", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-marker", - "codepoint": "F175B", - "aliases": [ - "archive-location", - "box-marker", - "box-location" - ], - "styles": [ - "marker" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "8639E3F6-3A01-47DF-9787-F80E273C99A2", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-marker-outline", - "codepoint": "F175C", - "aliases": [ - "archive-location-outline", - "box-marker-outline", - "box-location-outline" - ], - "styles": [ - "marker", - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "0C3AB42B-5B81-46D3-A4BB-DB367FC99B3F", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-minus", - "codepoint": "F175D", - "aliases": [ - "box-minus" - ], - "styles": [ - "minus" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "F0B3A03C-4591-4F17-8FD7-CD65BC990596", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-minus-outline", - "codepoint": "F175E", - "aliases": [ - "box-minus-outline" - ], - "styles": [ - "minus", - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "30D759AA-6F1F-463A-9768-8D92F607207F", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-music", - "codepoint": "F175F", - "aliases": [ - "box-music" - ], - "styles": [ - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Colton Wiscombe" - }, - { - "id": "B039CC1C-A987-4383-874C-587493FD807D", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-music-outline", - "codepoint": "F1760", - "aliases": [ - "box-music-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Colton Wiscombe" - }, - { - "id": "C99E212A-CA2F-4E72-B727-B3B87C17B6B2", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-off", - "codepoint": "F1761", - "aliases": [ - "box-off" - ], - "styles": [ - "off" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "6E4F081A-2C98-4B93-B617-F1077839E94E", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-off-outline", - "codepoint": "F1762", - "aliases": [ - "box-off-outline" - ], - "styles": [ - "off", - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "4B8AAB0C-9EB8-44D9-B1DF-C2EE6ACB91BE", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-outline", - "codepoint": "F120E", - "aliases": [ - "box-outline" - ], - "styles": [ - "outline" - ], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "James Coyle" - }, - { - "id": "FA4EDA1A-8E9B-47EA-9436-B75CF8BB5B21", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-plus", - "codepoint": "F1763", - "aliases": [ - "archive-add", - "box-plus", - "box-add" - ], - "styles": [ - "plus" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "C2898E88-9D7F-44D1-A653-539A4B5481EC", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-plus-outline", - "codepoint": "F1764", - "aliases": [ - "archive-add-outline", - "box-plus-outline", - "box-add-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "8BFF742C-7BD5-46C0-B280-0813A2431850", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-refresh", - "codepoint": "F1765", - "aliases": [ - "box-refresh" - ], - "styles": [ - "refresh" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "AFCA7BDE-7A75-4C5E-BC61-32662E4B011C", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-refresh-outline", - "codepoint": "F1766", - "aliases": [ - "box-refresh-outline" - ], - "styles": [ - "outline", - "refresh" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "F856A6DD-E894-4B78-BE97-4239C01CECF7", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-remove", - "codepoint": "F1767", - "aliases": [ - "box-remove" - ], - "styles": [ - "remove" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "68E7CD1A-7530-4710-8A10-D9D1CF5EFB7F", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-remove-outline", - "codepoint": "F1768", - "aliases": [ - "box-remove-outline" - ], - "styles": [ - "outline", - "remove" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "28C866C2-139E-4AF4-8E3D-F23CFE556B59", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-search", - "codepoint": "F1769", - "aliases": [ - "box-search" - ], - "styles": [ - "search" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "6705AD82-194D-411F-8822-EC3DA2379582", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-search-outline", - "codepoint": "F176A", - "aliases": [ - "box-search-outline" - ], - "styles": [ - "outline", - "search" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "1F72C97E-9F21-4096-B59B-CD23519B1367", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-settings", - "codepoint": "F176B", - "aliases": [ - "box-settings" - ], - "styles": [ - "settings" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "E07DE8F7-F3D7-4FCB-95EC-5D6C52CAFE32", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-settings-outline", - "codepoint": "F176C", - "aliases": [ - "box-settings-outline" - ], - "styles": [ - "outline", - "settings" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "08484938-1011-46B2-9756-2C227B9BCAAC", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-star", - "codepoint": "F176D", - "aliases": [ - "archive-favorite", - "box-star", - "box-favorite" - ], - "styles": [ - "star" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "05768C3B-09EA-40A8-AC27-F13F734FBB4A", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-star-outline", - "codepoint": "F176E", - "aliases": [ - "archive-favorite-outline", - "box-star-outline", - "box-favorite-outline" - ], - "styles": [ - "outline", - "star" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "BCB51994-105E-404E-96D2-1242AEB13CDB", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-sync", - "codepoint": "F176F", - "aliases": [ - "box-sync" - ], - "styles": [ - "sync" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "BB297982-E355-4AEE-9D17-CD57BDB0625A", - "baseIconId": "9C2AD144-9997-4169-983C-879DCCD62760", - "name": "archive-sync-outline", - "codepoint": "F1770", - "aliases": [ - "box-sync-outline" - ], - "styles": [ - "outline", - "sync" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "F7613EF8-368F-4AA6-B833-7246A01C3961", - "baseIconId": "F7613EF8-368F-4AA6-B833-7246A01C3961", - "name": "arm-flex", - "codepoint": "F0FD7", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [], - "author": "yuanruili" - }, - { - "id": "D64BE31F-BA1D-48E0-B747-A1422392EC2D", - "baseIconId": "F7613EF8-368F-4AA6-B833-7246A01C3961", - "name": "arm-flex-outline", - "codepoint": "F0FD6", - "aliases": [], - "styles": [ - "outline" - ], - "version": "4.2.95", - "deprecated": false, - "tags": [], - "author": "yuanruili" - }, - { - "id": "7F57A003-5F4E-46CF-9099-51B8D05381F8", - "baseIconId": "679C0678-9688-49FD-BA71-BED740A09267", - "name": "arrange-bring-forward", - "codepoint": "F003D", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrange", - "Geographic Information System" - ], - "author": "Austin Andrews" - }, - { - "id": "679C0678-9688-49FD-BA71-BED740A09267", - "baseIconId": "679C0678-9688-49FD-BA71-BED740A09267", - "name": "arrange-bring-to-front", - "codepoint": "F003E", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrange", - "Geographic Information System" - ], - "author": "Austin Andrews" - }, - { - "id": "677B1C90-BB0B-4F73-8EEA-D6E8FA709A6D", - "baseIconId": "679C0678-9688-49FD-BA71-BED740A09267", - "name": "arrange-send-backward", - "codepoint": "F003F", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrange", - "Geographic Information System" - ], - "author": "Austin Andrews" - }, - { - "id": "86145497-4CAA-41D6-A14E-0DD3FEE7721E", - "baseIconId": "679C0678-9688-49FD-BA71-BED740A09267", - "name": "arrange-send-to-back", - "codepoint": "F0040", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrange", - "Geographic Information System" - ], - "author": "Austin Andrews" - }, - { - "id": "5540E986-54E7-4FBF-A62F-9937B9E4F78D", - "baseIconId": "5540E986-54E7-4FBF-A62F-9937B9E4F78D", - "name": "arrow-all", - "codepoint": "F0041", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "25DD11B1-DE14-49E3-A54F-B01DCC45798D", - "baseIconId": "25DD11B1-DE14-49E3-A54F-B01DCC45798D", - "name": "arrow-bottom-left", - "codepoint": "F0042", - "aliases": [ - "arrow-down-left" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "2EB5C181-D681-49D8-8D2D-C57840531E7F", - "baseIconId": "25DD11B1-DE14-49E3-A54F-B01DCC45798D", - "name": "arrow-bottom-left-bold-box", - "codepoint": "F1964", - "aliases": [], - "styles": [ - "bold", - "box" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "EDB8949D-3883-4491-BD88-C3D7C8BA2A3E", - "baseIconId": "25DD11B1-DE14-49E3-A54F-B01DCC45798D", - "name": "arrow-bottom-left-bold-box-outline", - "codepoint": "F1965", - "aliases": [], - "styles": [ - "bold", - "box", - "outline" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B34E6142-64AF-43FE-A565-2FAEEA35B800", - "baseIconId": "25DD11B1-DE14-49E3-A54F-B01DCC45798D", - "name": "arrow-bottom-left-bold-outline", - "codepoint": "F09B7", - "aliases": [ - "arrow-down-left-bold-outline" - ], - "styles": [ - "bold", - "outline" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "73858F0F-F08D-4D54-A3C1-54E794E9C097", - "baseIconId": "25DD11B1-DE14-49E3-A54F-B01DCC45798D", - "name": "arrow-bottom-left-thick", - "codepoint": "F09B8", - "aliases": [ - "arrow-down-left-thick", - "arrow-bottom-left-bold", - "arrow-down-left-bold" - ], - "styles": [ - "thick" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "33169DB7-00C0-42E0-8C2D-2F50902FA15F", - "baseIconId": "25DD11B1-DE14-49E3-A54F-B01DCC45798D", - "name": "arrow-bottom-left-thin", - "codepoint": "F19B6", - "aliases": [], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Matt Stayner" - }, - { - "id": "D2582EA8-570A-4CB9-81A0-5DB3308BF6BD", - "baseIconId": "25DD11B1-DE14-49E3-A54F-B01DCC45798D", - "name": "arrow-bottom-left-thin-circle-outline", - "codepoint": "F1596", - "aliases": [], - "styles": [ - "circle", - "outline" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "F7CB7031-655F-43BE-9165-F6C2CEC047B4", - "baseIconId": "F7CB7031-655F-43BE-9165-F6C2CEC047B4", - "name": "arrow-bottom-right", - "codepoint": "F0043", - "aliases": [ - "arrow-down-right" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "0A3C9B3E-5A92-45A9-AE11-63B0512981FB", - "baseIconId": "F7CB7031-655F-43BE-9165-F6C2CEC047B4", - "name": "arrow-bottom-right-bold-box", - "codepoint": "F1966", - "aliases": [], - "styles": [ - "bold", - "box" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C7024F9B-C057-444C-828C-5881C59183AE", - "baseIconId": "F7CB7031-655F-43BE-9165-F6C2CEC047B4", - "name": "arrow-bottom-right-bold-box-outline", - "codepoint": "F1967", - "aliases": [], - "styles": [ - "bold", - "box", - "outline" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "ABD34714-B566-4EDF-B876-93BFB6D254CB", - "baseIconId": "F7CB7031-655F-43BE-9165-F6C2CEC047B4", - "name": "arrow-bottom-right-bold-outline", - "codepoint": "F09B9", - "aliases": [ - "arrow-down-right-bold-outline" - ], - "styles": [ - "bold", - "outline" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "01AD77CD-8F92-4E32-A752-387203BC9FF8", - "baseIconId": "F7CB7031-655F-43BE-9165-F6C2CEC047B4", - "name": "arrow-bottom-right-thick", - "codepoint": "F09BA", - "aliases": [ - "arrow-down-right-thick", - "arrow-bottom-right-bold", - "arrow-down-right-bold" - ], - "styles": [ - "thick" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "38BFAB4E-F7D3-45AE-BD45-39385BB23EE2", - "baseIconId": "F7CB7031-655F-43BE-9165-F6C2CEC047B4", - "name": "arrow-bottom-right-thin", - "codepoint": "F19B7", - "aliases": [], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Matt Stayner" - }, - { - "id": "26479C31-47EF-4EDA-B11E-323B136B7A6B", - "baseIconId": "F7CB7031-655F-43BE-9165-F6C2CEC047B4", - "name": "arrow-bottom-right-thin-circle-outline", - "codepoint": "F1595", - "aliases": [], - "styles": [ - "circle", - "outline" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "86BB43B4-910B-4174-8455-661875054171", - "baseIconId": "86BB43B4-910B-4174-8455-661875054171", - "name": "arrow-collapse", - "codepoint": "F0615", - "aliases": [ - "arrow-compress" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "54364780-8F31-4B23-8085-ABE21EA55926", - "baseIconId": "86BB43B4-910B-4174-8455-661875054171", - "name": "arrow-collapse-all", - "codepoint": "F0044", - "aliases": [ - "arrow-compress-all" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "9989309E-22E1-46F6-B710-6717D1C5EA11", - "baseIconId": "3821BF79-5857-47BE-84E3-A100B7247535", - "name": "arrow-collapse-down", - "codepoint": "F0792", - "aliases": [ - "arrow-compress-down" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Richins" - }, - { - "id": "56953ABE-D834-4DC6-A44B-87A3BF1181BA", - "baseIconId": "7234382E-CB5D-4EB3-8BA2-0C50BC2171DB", - "name": "arrow-collapse-horizontal", - "codepoint": "F084C", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "9F794864-D790-48F3-A8B4-31AEC3BB17FD", - "baseIconId": "C21995A9-094F-4EA8-9127-BA0506B240A6", - "name": "arrow-collapse-left", - "codepoint": "F0793", - "aliases": [ - "arrow-compress-left" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Richins" - }, - { - "id": "FFED25A5-FD40-4274-9EE3-6B26F5C03584", - "baseIconId": "05F25B05-A6D6-4863-8B21-6969E10329CF", - "name": "arrow-collapse-right", - "codepoint": "F0794", - "aliases": [ - "arrow-compress-right" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Richins" - }, - { - "id": "1E02D94D-6931-4CB8-8836-5276B076D811", - "baseIconId": "3AF49B97-A909-4961-9FBB-82C60D7CC773", - "name": "arrow-collapse-up", - "codepoint": "F0795", - "aliases": [ - "arrow-compress-up" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Richins" - }, - { - "id": "1D7700E7-2963-479F-81E1-910E2566894F", - "baseIconId": "7234382E-CB5D-4EB3-8BA2-0C50BC2171DB", - "name": "arrow-collapse-vertical", - "codepoint": "F084D", - "aliases": [ - "compress" - ], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "61D65F86-CEB6-4CCC-8B88-00A4D0AD37C4", - "baseIconId": "61D65F86-CEB6-4CCC-8B88-00A4D0AD37C4", - "name": "arrow-decision", - "codepoint": "F09BB", - "aliases": [ - "proxy" - ], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Richins" - }, - { - "id": "B115DB5B-AAF9-4C39-BC44-9E573E3154A1", - "baseIconId": "61D65F86-CEB6-4CCC-8B88-00A4D0AD37C4", - "name": "arrow-decision-auto", - "codepoint": "F09BC", - "aliases": [ - "proxy-auto" - ], - "styles": [ - "variant" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "FA34CDF8-9B5D-40D2-97D5-00F41438A185", - "baseIconId": "61D65F86-CEB6-4CCC-8B88-00A4D0AD37C4", - "name": "arrow-decision-auto-outline", - "codepoint": "F09BD", - "aliases": [ - "proxy-auto-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "7731818A-2C14-4B22-8758-9C7604BA6F3B", - "baseIconId": "61D65F86-CEB6-4CCC-8B88-00A4D0AD37C4", - "name": "arrow-decision-outline", - "codepoint": "F09BE", - "aliases": [ - "proxy-outline" - ], - "styles": [ - "outline" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Richins" - }, - { - "id": "3821BF79-5857-47BE-84E3-A100B7247535", - "baseIconId": "3821BF79-5857-47BE-84E3-A100B7247535", - "name": "arrow-down", - "codepoint": "F0045", - "aliases": [ - "arrow-downward", - "arrow-bottom" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "CA8684F7-5654-4AE0-9840-9C3AD9611D19", - "baseIconId": "3821BF79-5857-47BE-84E3-A100B7247535", - "name": "arrow-down-bold", - "codepoint": "F072E", - "aliases": [ - "arrow-bottom-bold" - ], - "styles": [ - "bold" - ], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "545DF72E-705C-46AC-BABE-94F6C304CFAB", - "baseIconId": "3821BF79-5857-47BE-84E3-A100B7247535", - "name": "arrow-down-bold-box", - "codepoint": "F072F", - "aliases": [ - "arrow-bottom-bold-box" - ], - "styles": [ - "bold", - "box" - ], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "2D68AA5F-ACA1-45AA-873B-AD077377E698", - "baseIconId": "3821BF79-5857-47BE-84E3-A100B7247535", - "name": "arrow-down-bold-box-outline", - "codepoint": "F0730", - "aliases": [ - "arrow-bottom-bold-box-outline" - ], - "styles": [ - "bold", - "box", - "outline" - ], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "E4AFC38F-01B3-452D-BDD7-A08EA66D53FA", - "baseIconId": "3821BF79-5857-47BE-84E3-A100B7247535", - "name": "arrow-down-bold-circle", - "codepoint": "F0047", - "aliases": [ - "arrow-bottom-bold-circle" - ], - "styles": [ - "bold", - "circle" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "1DA60E82-C1F0-449C-8157-7014A7C9E749", - "baseIconId": "3821BF79-5857-47BE-84E3-A100B7247535", - "name": "arrow-down-bold-circle-outline", - "codepoint": "F0048", - "aliases": [ - "arrow-bottom-bold-circle-outline" - ], - "styles": [ - "bold", - "circle", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "1F47DB52-28B0-40B7-836F-F6F2C58F2412", - "baseIconId": "3821BF79-5857-47BE-84E3-A100B7247535", - "name": "arrow-down-bold-hexagon-outline", - "codepoint": "F0049", - "aliases": [ - "arrow-bottom-bold-hexagon-outline" - ], - "styles": [ - "bold", - "outline", - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "517A69FA-E66C-469C-908F-E0CD723EBE8A", - "baseIconId": "3821BF79-5857-47BE-84E3-A100B7247535", - "name": "arrow-down-bold-outline", - "codepoint": "F09BF", - "aliases": [ - "arrow-bottom-bold-outline" - ], - "styles": [ - "bold", - "outline" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "04449961-F211-4FB7-BD87-EDA5F828B41D", - "baseIconId": "3821BF79-5857-47BE-84E3-A100B7247535", - "name": "arrow-down-box", - "codepoint": "F06C0", - "aliases": [ - "arrow-bottom-box" - ], - "styles": [ - "box" - ], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "51D021A8-C3E1-477C-8BBF-DD4B84549515", - "baseIconId": "3821BF79-5857-47BE-84E3-A100B7247535", - "name": "arrow-down-circle", - "codepoint": "F0CDB", - "aliases": [ - "arrow-bottom-circle" - ], - "styles": [ - "circle" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "E7EF8487-25AE-4CD6-8D04-4F90C60B3DCC", - "baseIconId": "3821BF79-5857-47BE-84E3-A100B7247535", - "name": "arrow-down-circle-outline", - "codepoint": "F0CDC", - "aliases": [ - "arrow-bottom-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "34BD0C0B-AF54-4BFC-A539-35D67612C4AC", - "baseIconId": "3821BF79-5857-47BE-84E3-A100B7247535", - "name": "arrow-down-drop-circle", - "codepoint": "F004A", - "aliases": [ - "arrow-drop-down-circle", - "arrow-bottom-drop-circle" - ], - "styles": [ - "circle", - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "65BE2EE5-23A5-49F8-A7A2-AEDD25C9C661", - "baseIconId": "3821BF79-5857-47BE-84E3-A100B7247535", - "name": "arrow-down-drop-circle-outline", - "codepoint": "F004B", - "aliases": [ - "arrow-bottom-drop-circle-outline" - ], - "styles": [ - "circle", - "outline", - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "366A6689-1806-4A63-942C-C7CB82AD6C9C", - "baseIconId": "366A6689-1806-4A63-942C-C7CB82AD6C9C", - "name": "arrow-down-left", - "codepoint": "F17A1", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Colton Wiscombe" - }, - { - "id": "ADB762F4-4A0D-46D2-8B63-979B496DD373", - "baseIconId": "366A6689-1806-4A63-942C-C7CB82AD6C9C", - "name": "arrow-down-left-bold", - "codepoint": "F17A2", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Colton Wiscombe" - }, - { - "id": "28795CBE-011D-440C-9D9C-A1D50C4121B7", - "baseIconId": "28795CBE-011D-440C-9D9C-A1D50C4121B7", - "name": "arrow-down-right", - "codepoint": "F17A3", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Colton Wiscombe" - }, - { - "id": "2104E4B3-3A34-44AE-B073-B041FDFE5D41", - "baseIconId": "28795CBE-011D-440C-9D9C-A1D50C4121B7", - "name": "arrow-down-right-bold", - "codepoint": "F17A4", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Colton Wiscombe" - }, - { - "id": "E345145F-AD51-4B6F-8F7B-EC22C34E4E89", - "baseIconId": "3821BF79-5857-47BE-84E3-A100B7247535", - "name": "arrow-down-thick", - "codepoint": "F0046", - "aliases": [ - "arrow-bottom-thick", - "arrow-down-bold", - "arrow-bottom-bold" - ], - "styles": [ - "thick" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "3419199D-CEAB-4084-AB62-A2EA908D40EB", - "baseIconId": "3821BF79-5857-47BE-84E3-A100B7247535", - "name": "arrow-down-thin", - "codepoint": "F19B3", - "aliases": [], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Matt Stayner" - }, - { - "id": "6BDA2640-A009-416F-95F8-EE91CB931B66", - "baseIconId": "3821BF79-5857-47BE-84E3-A100B7247535", - "name": "arrow-down-thin-circle-outline", - "codepoint": "F1599", - "aliases": [], - "styles": [ - "circle", - "outline" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "F75C0670-7074-4756-BF30-7840D1C47E09", - "baseIconId": "86BB43B4-910B-4174-8455-661875054171", - "name": "arrow-expand", - "codepoint": "F0616", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "14842517-5BC4-49B6-86F2-8D6DC8870786", - "baseIconId": "86BB43B4-910B-4174-8455-661875054171", - "name": "arrow-expand-all", - "codepoint": "F004C", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow", - "Geographic Information System" - ], - "author": "Austin Andrews" - }, - { - "id": "2338FC6A-1234-4A1F-AF6D-CFD45C92A2DF", - "baseIconId": "3821BF79-5857-47BE-84E3-A100B7247535", - "name": "arrow-expand-down", - "codepoint": "F0796", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Richins" - }, - { - "id": "B48C3976-1304-4E32-9D69-0062A48018FB", - "baseIconId": "D6011A13-DCCB-4DF7-B5A8-335A404C6B71", - "name": "arrow-expand-horizontal", - "codepoint": "F084E", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "FDF3C8E5-7AD6-4428-90EC-9426E56B5478", - "baseIconId": "C21995A9-094F-4EA8-9127-BA0506B240A6", - "name": "arrow-expand-left", - "codepoint": "F0797", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Richins" - }, - { - "id": "FF7885EC-2A34-4149-A4F8-626135606D7F", - "baseIconId": "05F25B05-A6D6-4863-8B21-6969E10329CF", - "name": "arrow-expand-right", - "codepoint": "F0798", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Richins" - }, - { - "id": "C13A62FF-DCC7-40DA-9326-C7FA77E4610F", - "baseIconId": "3AF49B97-A909-4961-9FBB-82C60D7CC773", - "name": "arrow-expand-up", - "codepoint": "F0799", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Richins" - }, - { - "id": "3B6EC96B-24CB-4CCE-AE9F-AA1787987C63", - "baseIconId": "DF1BCEA6-C202-477E-A3CF-2054D93E5F2A", - "name": "arrow-expand-vertical", - "codepoint": "F084F", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "AE7BA87E-D5CF-415E-8641-ADE156760E93", - "baseIconId": "D6011A13-DCCB-4DF7-B5A8-335A404C6B71", - "name": "arrow-horizontal-lock", - "codepoint": "F115B", - "aliases": [ - "scroll-horizontal-lock" - ], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Lock", - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C21995A9-094F-4EA8-9127-BA0506B240A6", - "baseIconId": "C21995A9-094F-4EA8-9127-BA0506B240A6", - "name": "arrow-left", - "codepoint": "F004D", - "aliases": [ - "arrow-back" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "E990CF7B-A7D8-444E-99FE-24930ABF2FA6", - "baseIconId": "C21995A9-094F-4EA8-9127-BA0506B240A6", - "name": "arrow-left-bold", - "codepoint": "F0731", - "aliases": [], - "styles": [ - "bold" - ], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Arrow", - "Automotive" - ], - "author": "Austin Andrews" - }, - { - "id": "B7333E10-D6D6-4F86-A163-3A486C0B839D", - "baseIconId": "C21995A9-094F-4EA8-9127-BA0506B240A6", - "name": "arrow-left-bold-box", - "codepoint": "F0732", - "aliases": [], - "styles": [ - "bold", - "box" - ], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "E95F06DD-DD66-4CD1-AAAC-AAA870CE6AC7", - "baseIconId": "C21995A9-094F-4EA8-9127-BA0506B240A6", - "name": "arrow-left-bold-box-outline", - "codepoint": "F0733", - "aliases": [], - "styles": [ - "bold", - "box", - "outline" - ], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "D40EF576-5116-4176-9F9D-C9E491517321", - "baseIconId": "C21995A9-094F-4EA8-9127-BA0506B240A6", - "name": "arrow-left-bold-circle", - "codepoint": "F004F", - "aliases": [], - "styles": [ - "box", - "circle" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "E5ED912C-8075-477C-B62B-60184A436F2C", - "baseIconId": "C21995A9-094F-4EA8-9127-BA0506B240A6", - "name": "arrow-left-bold-circle-outline", - "codepoint": "F0050", - "aliases": [], - "styles": [ - "bold", - "circle", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "5B274371-4B53-4E82-9CE3-42EADBDCCF92", - "baseIconId": "C21995A9-094F-4EA8-9127-BA0506B240A6", - "name": "arrow-left-bold-hexagon-outline", - "codepoint": "F0051", - "aliases": [], - "styles": [ - "bold", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "F88B9364-AE49-4AF6-A891-E20068064832", - "baseIconId": "C21995A9-094F-4EA8-9127-BA0506B240A6", - "name": "arrow-left-bold-outline", - "codepoint": "F09C0", - "aliases": [], - "styles": [ - "bold", - "outline" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Arrow", - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "94A5B560-135A-48EE-AF4D-89E19600F072", - "baseIconId": "94A5B560-135A-48EE-AF4D-89E19600F072", - "name": "arrow-left-bottom", - "codepoint": "F17A5", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "F1A75B07-42E2-4C15-A17C-264E9E18D12B", - "baseIconId": "94A5B560-135A-48EE-AF4D-89E19600F072", - "name": "arrow-left-bottom-bold", - "codepoint": "F17A6", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "67481609-631A-45C8-AB97-679B3D95F9FB", - "baseIconId": "C21995A9-094F-4EA8-9127-BA0506B240A6", - "name": "arrow-left-box", - "codepoint": "F06C1", - "aliases": [], - "styles": [ - "box" - ], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "57F5D624-D5B0-4F19-AFAB-676F822C87DC", - "baseIconId": "C21995A9-094F-4EA8-9127-BA0506B240A6", - "name": "arrow-left-circle", - "codepoint": "F0CDD", - "aliases": [ - "arrow-back-circle" - ], - "styles": [ - "circle" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "DEE2CC7E-5349-49CE-9700-6EF0D935A2E6", - "baseIconId": "C21995A9-094F-4EA8-9127-BA0506B240A6", - "name": "arrow-left-circle-outline", - "codepoint": "F0CDE", - "aliases": [], - "styles": [ - "circle", - "outline" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "199C908D-09C4-47C6-968A-74582AC4AF26", - "baseIconId": "C21995A9-094F-4EA8-9127-BA0506B240A6", - "name": "arrow-left-drop-circle", - "codepoint": "F0052", - "aliases": [], - "styles": [ - "circle" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "37B06F58-3BD0-413F-B86D-2EFD008B3D69", - "baseIconId": "C21995A9-094F-4EA8-9127-BA0506B240A6", - "name": "arrow-left-drop-circle-outline", - "codepoint": "F0053", - "aliases": [], - "styles": [ - "circle", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "D6011A13-DCCB-4DF7-B5A8-335A404C6B71", - "baseIconId": "D6011A13-DCCB-4DF7-B5A8-335A404C6B71", - "name": "arrow-left-right", - "codepoint": "F0E73", - "aliases": [], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "ginlime" - }, - { - "id": "917B10C1-CFB6-4066-9977-0FA6DD835C0E", - "baseIconId": "D6011A13-DCCB-4DF7-B5A8-335A404C6B71", - "name": "arrow-left-right-bold", - "codepoint": "F0E74", - "aliases": [], - "styles": [ - "bold" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "341A3007-7214-4634-924D-1FFEA455AD5E", - "baseIconId": "D6011A13-DCCB-4DF7-B5A8-335A404C6B71", - "name": "arrow-left-right-bold-outline", - "codepoint": "F09C1", - "aliases": [], - "styles": [ - "bold", - "outline" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "FA880DCB-AC6F-4C9C-9B6D-6E8236272C31", - "baseIconId": "C21995A9-094F-4EA8-9127-BA0506B240A6", - "name": "arrow-left-thick", - "codepoint": "F004E", - "aliases": [ - "arrow-left-bold" - ], - "styles": [ - "thick" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "B3A70192-FB1E-4CC9-AA89-44AD6C921BCE", - "baseIconId": "C21995A9-094F-4EA8-9127-BA0506B240A6", - "name": "arrow-left-thin", - "codepoint": "F19B1", - "aliases": [], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Matt Stayner" - }, - { - "id": "B0495FDB-2123-4D72-9D15-F44ED6FBF8CD", - "baseIconId": "C21995A9-094F-4EA8-9127-BA0506B240A6", - "name": "arrow-left-thin-circle-outline", - "codepoint": "F159A", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "4FB19260-E56B-411D-B0A6-22D15C3299A3", - "baseIconId": "4FB19260-E56B-411D-B0A6-22D15C3299A3", - "name": "arrow-left-top", - "codepoint": "F17A7", - "aliases": [ - "turn-left" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "1239A338-77EE-47E5-A50B-2BC667AD7BB1", - "baseIconId": "4FB19260-E56B-411D-B0A6-22D15C3299A3", - "name": "arrow-left-top-bold", - "codepoint": "F17A8", - "aliases": [ - "turn-left-bold" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "8EF4AC1A-24B5-42C7-9D6B-5F35227788E4", - "baseIconId": "8EF4AC1A-24B5-42C7-9D6B-5F35227788E4", - "name": "arrow-oscillating", - "codepoint": "F1C91", - "aliases": [], - "styles": [], - "version": "7.3.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Matthias de Baat" - }, - { - "id": "40B085E6-3993-403C-9F55-B61AEBDBA17A", - "baseIconId": "8EF4AC1A-24B5-42C7-9D6B-5F35227788E4", - "name": "arrow-oscillating-off", - "codepoint": "F1C92", - "aliases": [], - "styles": [ - "off" - ], - "version": "7.3.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Matthias de Baat" - }, - { - "id": "A673515F-F8A6-41DC-9CB2-05C315FBDA53", - "baseIconId": "A673515F-F8A6-41DC-9CB2-05C315FBDA53", - "name": "arrow-projectile", - "codepoint": "F1840", - "aliases": [], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG", - "Sport" - ], - "author": "Colton Wiscombe" - }, - { - "id": "F3A249F5-9D86-4A3E-A197-C8C410C3721B", - "baseIconId": "A673515F-F8A6-41DC-9CB2-05C315FBDA53", - "name": "arrow-projectile-multiple", - "codepoint": "F183F", - "aliases": [], - "styles": [ - "multiple" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG", - "Sport" - ], - "author": "Colton Wiscombe" - }, - { - "id": "05F25B05-A6D6-4863-8B21-6969E10329CF", - "baseIconId": "05F25B05-A6D6-4863-8B21-6969E10329CF", - "name": "arrow-right", - "codepoint": "F0054", - "aliases": [ - "arrow-forward" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "8C7A25B6-878E-4BDB-A5B7-2927257E1B7D", - "baseIconId": "05F25B05-A6D6-4863-8B21-6969E10329CF", - "name": "arrow-right-bold", - "codepoint": "F0734", - "aliases": [], - "styles": [ - "bold" - ], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Arrow", - "Automotive" - ], - "author": "Austin Andrews" - }, - { - "id": "7225998A-DEF1-40C6-A05C-FA4119A643D9", - "baseIconId": "05F25B05-A6D6-4863-8B21-6969E10329CF", - "name": "arrow-right-bold-box", - "codepoint": "F0735", - "aliases": [], - "styles": [ - "bold", - "box" - ], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "1830D607-FDD5-4CC1-8D74-2A92C16B9E51", - "baseIconId": "05F25B05-A6D6-4863-8B21-6969E10329CF", - "name": "arrow-right-bold-box-outline", - "codepoint": "F0736", - "aliases": [], - "styles": [ - "bold", - "box", - "outline" - ], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "AF178779-F8E7-4F77-A9D1-A4675713C440", - "baseIconId": "05F25B05-A6D6-4863-8B21-6969E10329CF", - "name": "arrow-right-bold-circle", - "codepoint": "F0056", - "aliases": [], - "styles": [ - "bold", - "circle" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "8B60DF03-2440-4D73-98DE-A8666666864E", - "baseIconId": "05F25B05-A6D6-4863-8B21-6969E10329CF", - "name": "arrow-right-bold-circle-outline", - "codepoint": "F0057", - "aliases": [], - "styles": [ - "bold", - "circle", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "1EAE1304-ED67-4607-A5C3-833B9CF7D943", - "baseIconId": "05F25B05-A6D6-4863-8B21-6969E10329CF", - "name": "arrow-right-bold-hexagon-outline", - "codepoint": "F0058", - "aliases": [], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "86D895A6-8B2C-4757-A2CC-C506B402C2BB", - "baseIconId": "05F25B05-A6D6-4863-8B21-6969E10329CF", - "name": "arrow-right-bold-outline", - "codepoint": "F09C2", - "aliases": [], - "styles": [ - "bold", - "outline" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Arrow", - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C46163EC-EF8C-4352-939E-FA980174E6B7", - "baseIconId": "C46163EC-EF8C-4352-939E-FA980174E6B7", - "name": "arrow-right-bottom", - "codepoint": "F17A9", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "CBE2124B-2BE8-4891-9637-FC0E603E61F9", - "baseIconId": "C46163EC-EF8C-4352-939E-FA980174E6B7", - "name": "arrow-right-bottom-bold", - "codepoint": "F17AA", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "8BA08E5C-7ED5-49E2-BDDE-1F1425C9FE1A", - "baseIconId": "05F25B05-A6D6-4863-8B21-6969E10329CF", - "name": "arrow-right-box", - "codepoint": "F06C2", - "aliases": [], - "styles": [ - "box" - ], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "DF8E13FB-5C26-4C43-A6DC-F01185A97E42", - "baseIconId": "05F25B05-A6D6-4863-8B21-6969E10329CF", - "name": "arrow-right-circle", - "codepoint": "F0CDF", - "aliases": [ - "arrow-forward-circle" - ], - "styles": [ - "circle" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "A0626F15-BC40-422F-B978-EEDFB5543961", - "baseIconId": "05F25B05-A6D6-4863-8B21-6969E10329CF", - "name": "arrow-right-circle-outline", - "codepoint": "F0CE0", - "aliases": [], - "styles": [ - "circle", - "outline" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "39AEA4FF-B65C-4368-B582-98108E3F9F06", - "baseIconId": "05F25B05-A6D6-4863-8B21-6969E10329CF", - "name": "arrow-right-drop-circle", - "codepoint": "F0059", - "aliases": [], - "styles": [ - "circle" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "1E7109A9-3178-4B5E-87A9-CD1054B38BE9", - "baseIconId": "05F25B05-A6D6-4863-8B21-6969E10329CF", - "name": "arrow-right-drop-circle-outline", - "codepoint": "F005A", - "aliases": [], - "styles": [ - "circle", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "9F7385FB-733C-4C1F-AC88-684BE98F381B", - "baseIconId": "05F25B05-A6D6-4863-8B21-6969E10329CF", - "name": "arrow-right-thick", - "codepoint": "F0055", - "aliases": [ - "arrow-right-bold" - ], - "styles": [ - "thick" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "61B5D6E3-5706-401F-8D18-3145A446C543", - "baseIconId": "05F25B05-A6D6-4863-8B21-6969E10329CF", - "name": "arrow-right-thin", - "codepoint": "F19B0", - "aliases": [], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Matt Stayner" - }, - { - "id": "5ADB8DD0-2F9D-4F1B-ABC9-093579E960A0", - "baseIconId": "05F25B05-A6D6-4863-8B21-6969E10329CF", - "name": "arrow-right-thin-circle-outline", - "codepoint": "F1598", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "0FD8FA03-2B86-4B8E-8650-075591AC024C", - "baseIconId": "0FD8FA03-2B86-4B8E-8650-075591AC024C", - "name": "arrow-right-top", - "codepoint": "F17AB", - "aliases": [ - "turn-right" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "45C175E3-90FF-4F10-B6E2-6A08B0F70FAA", - "baseIconId": "0FD8FA03-2B86-4B8E-8650-075591AC024C", - "name": "arrow-right-top-bold", - "codepoint": "F17AC", - "aliases": [ - "turn-right-bold" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "ED7981BC-0B25-4657-BB7C-FB14A3D91D99", - "baseIconId": "7234382E-CB5D-4EB3-8BA2-0C50BC2171DB", - "name": "arrow-split-horizontal", - "codepoint": "F093B", - "aliases": [ - "resize-vertical", - "resize" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Richins" - }, - { - "id": "7234382E-CB5D-4EB3-8BA2-0C50BC2171DB", - "baseIconId": "7234382E-CB5D-4EB3-8BA2-0C50BC2171DB", - "name": "arrow-split-vertical", - "codepoint": "F093C", - "aliases": [ - "resize-horizontal", - "resize" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Richins" - }, - { - "id": "DD1AC44D-81B8-42EF-8714-7E7D29F2BC3F", - "baseIconId": "DD1AC44D-81B8-42EF-8714-7E7D29F2BC3F", - "name": "arrow-top-left", - "codepoint": "F005B", - "aliases": [ - "arrow-up-left" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "3D49377B-0A47-4029-B384-F74C68234D41", - "baseIconId": "DD1AC44D-81B8-42EF-8714-7E7D29F2BC3F", - "name": "arrow-top-left-bold-box", - "codepoint": "F1968", - "aliases": [], - "styles": [ - "bold", - "box" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "63353DF0-B961-42CD-88D6-FA40887FD3DC", - "baseIconId": "DD1AC44D-81B8-42EF-8714-7E7D29F2BC3F", - "name": "arrow-top-left-bold-box-outline", - "codepoint": "F1969", - "aliases": [], - "styles": [ - "bold", - "box", - "outline" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "4D43349E-EF13-4BB1-9684-0CEDE55DE9DE", - "baseIconId": "DD1AC44D-81B8-42EF-8714-7E7D29F2BC3F", - "name": "arrow-top-left-bold-outline", - "codepoint": "F09C3", - "aliases": [ - "arrow-up-left-bold-outline" - ], - "styles": [ - "bold", - "outline" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "3F3EFD86-07D4-495B-9E20-66826FF54E1D", - "baseIconId": "3F3EFD86-07D4-495B-9E20-66826FF54E1D", - "name": "arrow-top-left-bottom-right", - "codepoint": "F0E75", - "aliases": [], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "ginlime" - }, - { - "id": "D6AFEFE4-0E22-4197-B094-53E9528FFF0A", - "baseIconId": "3F3EFD86-07D4-495B-9E20-66826FF54E1D", - "name": "arrow-top-left-bottom-right-bold", - "codepoint": "F0E76", - "aliases": [], - "styles": [ - "bold" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "D1D2B0DA-2EAD-451B-A9D9-B4C52E16FEDC", - "baseIconId": "DD1AC44D-81B8-42EF-8714-7E7D29F2BC3F", - "name": "arrow-top-left-thick", - "codepoint": "F09C4", - "aliases": [ - "arrow-up-left-thick", - "arrow-top-left-bold", - "arrow-up-left-bold" - ], - "styles": [ - "thick" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E88C3E97-A92F-4222-B649-01ABFB105FAF", - "baseIconId": "DD1AC44D-81B8-42EF-8714-7E7D29F2BC3F", - "name": "arrow-top-left-thin", - "codepoint": "F19B5", - "aliases": [], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Matt Stayner" - }, - { - "id": "A3FB09A5-28B7-4A90-AA48-E6D0AA5031EB", - "baseIconId": "DD1AC44D-81B8-42EF-8714-7E7D29F2BC3F", - "name": "arrow-top-left-thin-circle-outline", - "codepoint": "F1593", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "27AB7B33-64F3-49A5-8082-CA7B465152A9", - "baseIconId": "27AB7B33-64F3-49A5-8082-CA7B465152A9", - "name": "arrow-top-right", - "codepoint": "F005C", - "aliases": [ - "arrow-up-right" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "249364CD-93CE-4A11-9556-65579FA8910F", - "baseIconId": "27AB7B33-64F3-49A5-8082-CA7B465152A9", - "name": "arrow-top-right-bold-box", - "codepoint": "F196A", - "aliases": [], - "styles": [ - "bold", - "box" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7E8DD1EB-A1B7-48A5-B0B7-AF201BE6769E", - "baseIconId": "27AB7B33-64F3-49A5-8082-CA7B465152A9", - "name": "arrow-top-right-bold-box-outline", - "codepoint": "F196B", - "aliases": [], - "styles": [ - "bold", - "box", - "outline" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D6A6FF61-6566-4C1D-BBCC-30E00B0655DD", - "baseIconId": "27AB7B33-64F3-49A5-8082-CA7B465152A9", - "name": "arrow-top-right-bold-outline", - "codepoint": "F09C5", - "aliases": [ - "arrow-up-right-bold-outline" - ], - "styles": [ - "bold", - "outline" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "6B94201F-4E9F-486E-B3A6-484A6C266E55", - "baseIconId": "6B94201F-4E9F-486E-B3A6-484A6C266E55", - "name": "arrow-top-right-bottom-left", - "codepoint": "F0E77", - "aliases": [], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "ginlime" - }, - { - "id": "815927F0-0D89-4D10-B336-2B918B321994", - "baseIconId": "6B94201F-4E9F-486E-B3A6-484A6C266E55", - "name": "arrow-top-right-bottom-left-bold", - "codepoint": "F0E78", - "aliases": [], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "37C83BAE-6330-4E45-A976-3E2642997035", - "baseIconId": "27AB7B33-64F3-49A5-8082-CA7B465152A9", - "name": "arrow-top-right-thick", - "codepoint": "F09C6", - "aliases": [ - "arrow-up-right-thick", - "arrow-top-right-bold", - "arrow-up-right-bold" - ], - "styles": [ - "thick" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "500822ED-8EE6-427C-A4CE-AE56A4CB4C61", - "baseIconId": "27AB7B33-64F3-49A5-8082-CA7B465152A9", - "name": "arrow-top-right-thin", - "codepoint": "F19B4", - "aliases": [], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Matt Stayner" - }, - { - "id": "83068FC2-BF4B-4B99-956D-46EC07F6738F", - "baseIconId": "27AB7B33-64F3-49A5-8082-CA7B465152A9", - "name": "arrow-top-right-thin-circle-outline", - "codepoint": "F1594", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "D16AF4C4-90FC-42AB-8847-7F04DFDC6DF4", - "baseIconId": "D16AF4C4-90FC-42AB-8847-7F04DFDC6DF4", - "name": "arrow-u-down-left", - "codepoint": "F17AD", - "aliases": [ - "u-turn-left" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "EE6C5398-B666-4BE6-9728-AF35B5C77BA9", - "baseIconId": "D16AF4C4-90FC-42AB-8847-7F04DFDC6DF4", - "name": "arrow-u-down-left-bold", - "codepoint": "F17AE", - "aliases": [ - "u-turn-left-bold" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "C2A75394-FCF6-4BFB-868F-3FC14C48B6FC", - "baseIconId": "C2A75394-FCF6-4BFB-868F-3FC14C48B6FC", - "name": "arrow-u-down-right", - "codepoint": "F17AF", - "aliases": [ - "u-turn-right" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "0B6ECB18-2663-4365-BBD1-3FE6A0A2A45C", - "baseIconId": "C2A75394-FCF6-4BFB-868F-3FC14C48B6FC", - "name": "arrow-u-down-right-bold", - "codepoint": "F17B0", - "aliases": [ - "u-turn-right-bold" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "1130F0DA-3590-4221-BB00-33BED5B6EF10", - "baseIconId": "1130F0DA-3590-4221-BB00-33BED5B6EF10", - "name": "arrow-u-left-bottom", - "codepoint": "F17B1", - "aliases": [ - "undo" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "8793E254-1126-4A01-937C-C1827F173538", - "baseIconId": "1130F0DA-3590-4221-BB00-33BED5B6EF10", - "name": "arrow-u-left-bottom-bold", - "codepoint": "F17B2", - "aliases": [ - "undo" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "CA98908E-09FA-4F06-80AF-57851BF95AD3", - "baseIconId": "CA98908E-09FA-4F06-80AF-57851BF95AD3", - "name": "arrow-u-left-top", - "codepoint": "F17B3", - "aliases": [ - "undo" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "A249FE80-1743-4D6F-BF99-3311DB7B299B", - "baseIconId": "CA98908E-09FA-4F06-80AF-57851BF95AD3", - "name": "arrow-u-left-top-bold", - "codepoint": "F17B4", - "aliases": [ - "undo" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "4D16B4CD-BA9A-4B92-AF88-7CD0154655B2", - "baseIconId": "4D16B4CD-BA9A-4B92-AF88-7CD0154655B2", - "name": "arrow-u-right-bottom", - "codepoint": "F17B5", - "aliases": [ - "redo" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "FF7E431E-FEA7-4953-AC5F-877269DE3B16", - "baseIconId": "4D16B4CD-BA9A-4B92-AF88-7CD0154655B2", - "name": "arrow-u-right-bottom-bold", - "codepoint": "F17B6", - "aliases": [ - "redo" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "78232953-CC68-48A1-A4A5-DC64B46216BC", - "baseIconId": "78232953-CC68-48A1-A4A5-DC64B46216BC", - "name": "arrow-u-right-top", - "codepoint": "F17B7", - "aliases": [ - "redo" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "31D886C9-7CC3-4E48-B829-D7870D11641C", - "baseIconId": "78232953-CC68-48A1-A4A5-DC64B46216BC", - "name": "arrow-u-right-top-bold", - "codepoint": "F17B8", - "aliases": [ - "redo" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "A5C0B876-8E0A-4792-A2EF-101CB41C989B", - "baseIconId": "A5C0B876-8E0A-4792-A2EF-101CB41C989B", - "name": "arrow-u-up-left", - "codepoint": "F17B9", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "EDF2047D-119E-4FD0-A936-67B372A4905F", - "baseIconId": "A5C0B876-8E0A-4792-A2EF-101CB41C989B", - "name": "arrow-u-up-left-bold", - "codepoint": "F17BA", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "B743ECCA-F8DA-4F54-BF8F-8558F370AECB", - "baseIconId": "B743ECCA-F8DA-4F54-BF8F-8558F370AECB", - "name": "arrow-u-up-right", - "codepoint": "F17BB", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "EFF50AE6-BF7E-4BF5-AA67-F8BBE9B10588", - "baseIconId": "B743ECCA-F8DA-4F54-BF8F-8558F370AECB", - "name": "arrow-u-up-right-bold", - "codepoint": "F17BC", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "3AF49B97-A909-4961-9FBB-82C60D7CC773", - "baseIconId": "3AF49B97-A909-4961-9FBB-82C60D7CC773", - "name": "arrow-up", - "codepoint": "F005D", - "aliases": [ - "arrow-upward", - "arrow-top" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "36199A40-CCCB-44B9-A6B0-73F7315E5716", - "baseIconId": "3AF49B97-A909-4961-9FBB-82C60D7CC773", - "name": "arrow-up-bold", - "codepoint": "F0737", - "aliases": [ - "arrow-top-bold" - ], - "styles": [ - "bold" - ], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "062452EE-7669-4C36-85E6-A85BBA735348", - "baseIconId": "3AF49B97-A909-4961-9FBB-82C60D7CC773", - "name": "arrow-up-bold-box", - "codepoint": "F0738", - "aliases": [ - "arrow-top-bold-box" - ], - "styles": [ - "bold", - "box" - ], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "5386BD1B-8959-4312-8739-5B08021F319D", - "baseIconId": "3AF49B97-A909-4961-9FBB-82C60D7CC773", - "name": "arrow-up-bold-box-outline", - "codepoint": "F0739", - "aliases": [ - "arrow-top-bold-box-outline" - ], - "styles": [ - "bold", - "box", - "outline" - ], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "D6719240-C87E-4185-B694-1EA5FFC94F4E", - "baseIconId": "3AF49B97-A909-4961-9FBB-82C60D7CC773", - "name": "arrow-up-bold-circle", - "codepoint": "F005F", - "aliases": [ - "arrow-top-bold-circle" - ], - "styles": [ - "bold", - "circle" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "3337B267-94EC-426B-ABC9-5842F75B13B1", - "baseIconId": "3AF49B97-A909-4961-9FBB-82C60D7CC773", - "name": "arrow-up-bold-circle-outline", - "codepoint": "F0060", - "aliases": [ - "arrow-top-bold-circle-outline" - ], - "styles": [ - "bold", - "circle", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "7C3BD067-49AB-41C8-9091-FBD2D533045E", - "baseIconId": "3AF49B97-A909-4961-9FBB-82C60D7CC773", - "name": "arrow-up-bold-hexagon-outline", - "codepoint": "F0061", - "aliases": [ - "arrow-top-bold-hexagon-outline" - ], - "styles": [ - "bold", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "664AA4B5-DD9C-40AD-A69E-3CD314025AD3", - "baseIconId": "3AF49B97-A909-4961-9FBB-82C60D7CC773", - "name": "arrow-up-bold-outline", - "codepoint": "F09C7", - "aliases": [ - "arrow-top-bold-outline" - ], - "styles": [ - "bold", - "outline" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "82958DF7-5F5F-4470-BFB4-4389937B4D29", - "baseIconId": "3AF49B97-A909-4961-9FBB-82C60D7CC773", - "name": "arrow-up-box", - "codepoint": "F06C3", - "aliases": [], - "styles": [ - "box" - ], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "208441AD-DDC5-4EC8-A48D-746DB5AE3CFD", - "baseIconId": "3AF49B97-A909-4961-9FBB-82C60D7CC773", - "name": "arrow-up-circle", - "codepoint": "F0CE1", - "aliases": [ - "arrow-top-circle" - ], - "styles": [ - "circle" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "D41B6302-5A2E-4B55-93A4-E30E07F761C1", - "baseIconId": "3AF49B97-A909-4961-9FBB-82C60D7CC773", - "name": "arrow-up-circle-outline", - "codepoint": "F0CE2", - "aliases": [ - "arrow-top-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "DF1BCEA6-C202-477E-A3CF-2054D93E5F2A", - "baseIconId": "DF1BCEA6-C202-477E-A3CF-2054D93E5F2A", - "name": "arrow-up-down", - "codepoint": "F0E79", - "aliases": [], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "ginlime" - }, - { - "id": "478A5E36-5EC0-4DC5-B663-AFB1F84C83A9", - "baseIconId": "DF1BCEA6-C202-477E-A3CF-2054D93E5F2A", - "name": "arrow-up-down-bold", - "codepoint": "F0E7A", - "aliases": [], - "styles": [ - "bold" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "1F1BE05B-E67A-4646-A8B3-08423BD58673", - "baseIconId": "DF1BCEA6-C202-477E-A3CF-2054D93E5F2A", - "name": "arrow-up-down-bold-outline", - "codepoint": "F09C8", - "aliases": [], - "styles": [ - "bold", - "outline" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "73B211DB-05CF-4025-B035-AD03454C47A6", - "baseIconId": "3AF49B97-A909-4961-9FBB-82C60D7CC773", - "name": "arrow-up-drop-circle", - "codepoint": "F0062", - "aliases": [ - "arrow-top-drop-circle" - ], - "styles": [ - "circle" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "42277E7D-D87A-4DE9-982B-37E6A8AE4E70", - "baseIconId": "3AF49B97-A909-4961-9FBB-82C60D7CC773", - "name": "arrow-up-drop-circle-outline", - "codepoint": "F0063", - "aliases": [ - "arrow-top-drop-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "7FBBA0AD-B8E1-4C13-8BD7-B37D28135DD2", - "baseIconId": "7FBBA0AD-B8E1-4C13-8BD7-B37D28135DD2", - "name": "arrow-up-left", - "codepoint": "F17BD", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "DDA1FF1D-BD25-4698-8D9B-7F0E6B71C274", - "baseIconId": "7FBBA0AD-B8E1-4C13-8BD7-B37D28135DD2", - "name": "arrow-up-left-bold", - "codepoint": "F17BE", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "5C5BEA1F-BAA5-4F6A-AE84-F3EAD16C936C", - "baseIconId": "5C5BEA1F-BAA5-4F6A-AE84-F3EAD16C936C", - "name": "arrow-up-right", - "codepoint": "F17BF", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "491E8E53-19DC-4736-AA7F-F95AEB0F1696", - "baseIconId": "5C5BEA1F-BAA5-4F6A-AE84-F3EAD16C936C", - "name": "arrow-up-right-bold", - "codepoint": "F17C0", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "4EDBF232-461F-4F4C-82BB-64A89BA08405", - "baseIconId": "3AF49B97-A909-4961-9FBB-82C60D7CC773", - "name": "arrow-up-thick", - "codepoint": "F005E", - "aliases": [ - "arrow-top-thick", - "arrow-up-bold", - "arrow-top-bold" - ], - "styles": [ - "thick" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "62E619DA-599C-486F-AD85-9B5BAB4F5A92", - "baseIconId": "3AF49B97-A909-4961-9FBB-82C60D7CC773", - "name": "arrow-up-thin", - "codepoint": "F19B2", - "aliases": [], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Matt Stayner" - }, - { - "id": "9733F983-7DD1-4230-B792-413D46E0B422", - "baseIconId": "3AF49B97-A909-4961-9FBB-82C60D7CC773", - "name": "arrow-up-thin-circle-outline", - "codepoint": "F1597", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "8B00DF03-0754-4D7F-B0C9-8CF21D42989F", - "baseIconId": "DF1BCEA6-C202-477E-A3CF-2054D93E5F2A", - "name": "arrow-vertical-lock", - "codepoint": "F115C", - "aliases": [ - "scroll-vertical-lock" - ], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Lock", - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "11D80B18-006C-4929-8CEA-29D2C8BED5B7", - "baseIconId": "11D80B18-006C-4929-8CEA-29D2C8BED5B7", - "name": "artboard", - "codepoint": "F1B9A", - "aliases": [ - "canvas", - "frame" - ], - "styles": [], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Drawing \/ Art" - ], - "author": "Sintija" - }, - { - "id": "548CCDA7-0E99-4568-9997-2ECFD33392BB", - "baseIconId": "548CCDA7-0E99-4568-9997-2ECFD33392BB", - "name": "artstation", - "codepoint": "F0B5B", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "AE294E7D-3AC0-4C7D-AFAF-8DDA0AB5BF52", - "baseIconId": "AE294E7D-3AC0-4C7D-AFAF-8DDA0AB5BF52", - "name": "aspect-ratio", - "codepoint": "F0A24", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "0C612FE5-D7CC-44F3-945A-4BD15A7E39BA", - "baseIconId": "0C612FE5-D7CC-44F3-945A-4BD15A7E39BA", - "name": "assistant", - "codepoint": "F0064", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "E8C373FE-4258-4341-B52A-E33D9A484968", - "baseIconId": "E8C373FE-4258-4341-B52A-E33D9A484968", - "name": "asterisk", - "codepoint": "F06C4", - "aliases": [ - "required" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "1A9A6BE7-2B58-458C-9DA5-3CCA65D67414", - "baseIconId": "E8C373FE-4258-4341-B52A-E33D9A484968", - "name": "asterisk-circle-outline", - "codepoint": "F1A27", - "aliases": [ - "required-circle" - ], - "styles": [ - "circle", - "outline" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [], - "author": "mocking-mike" - }, - { - "id": "9FC24609-9C8B-4DBA-A473-F5EFAFCC90DF", - "baseIconId": "9FC24609-9C8B-4DBA-A473-F5EFAFCC90DF", - "name": "at", - "codepoint": "F0065", - "aliases": [ - "alternate-email" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "25806C84-E41E-43A7-93AF-EA4ABACA982E", - "baseIconId": "25806C84-E41E-43A7-93AF-EA4ABACA982E", - "name": "atlassian", - "codepoint": "F0804", - "aliases": [], - "styles": [], - "version": "2.1.19", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "A35ABE08-C956-4177-935C-1E1FB835772D", - "baseIconId": "A35ABE08-C956-4177-935C-1E1FB835772D", - "name": "atm", - "codepoint": "F0D47", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "C366C8B8-44FB-481E-88F2-AE0C3B1E8C74", - "baseIconId": "C366C8B8-44FB-481E-88F2-AE0C3B1E8C74", - "name": "atom", - "codepoint": "F0768", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Roberto Graham" - }, - { - "id": "AD030F55-7B31-45F9-94F7-738CC84B2009", - "baseIconId": "C366C8B8-44FB-481E-88F2-AE0C3B1E8C74", - "name": "atom-variant", - "codepoint": "F0E7B", - "aliases": [ - "orbit" - ], - "styles": [ - "variant" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "E3C20B38-A6D3-4EF0-817D-863B25E555BA", - "baseIconId": "E3C20B38-A6D3-4EF0-817D-863B25E555BA", - "name": "attachment", - "codepoint": "F0066", - "aliases": [ - "paperclip-horizontal" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "8B6BEB96-8C6B-4271-B87F-A568DF587900", - "baseIconId": "E3C20B38-A6D3-4EF0-817D-863B25E555BA", - "name": "attachment-check", - "codepoint": "F1AC1", - "aliases": [ - "attachment-tick", - "paperclip-check", - "paperclip-tick" - ], - "styles": [ - "check" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "08E6060D-0A4F-4A3C-867E-192E737972C6", - "baseIconId": "E3C20B38-A6D3-4EF0-817D-863B25E555BA", - "name": "attachment-lock", - "codepoint": "F19C4", - "aliases": [ - "paperclip-lock" - ], - "styles": [ - "lock" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Simran" - }, - { - "id": "2FE2F795-05F3-416B-8B74-ABC795E644EF", - "baseIconId": "E3C20B38-A6D3-4EF0-817D-863B25E555BA", - "name": "attachment-minus", - "codepoint": "F1AC2", - "aliases": [ - "paperclip-minus", - "paperclip-subtract", - "attachment-subtract" - ], - "styles": [ - "minus" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "B9845DE1-0804-459F-8333-A741EEDACC29", - "baseIconId": "E3C20B38-A6D3-4EF0-817D-863B25E555BA", - "name": "attachment-off", - "codepoint": "F1AC3", - "aliases": [ - "paperclip-off" - ], - "styles": [ - "off" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "F0017157-A798-401D-9B19-464C1BB25EA4", - "baseIconId": "E3C20B38-A6D3-4EF0-817D-863B25E555BA", - "name": "attachment-plus", - "codepoint": "F1AC4", - "aliases": [ - "paperclip-plus", - "paperclip-add", - "attachment-add" - ], - "styles": [ - "plus" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "E6D6388D-6764-49ED-8DA7-6F4D27646237", - "baseIconId": "E3C20B38-A6D3-4EF0-817D-863B25E555BA", - "name": "attachment-remove", - "codepoint": "F1AC5", - "aliases": [ - "paperclip-remove" - ], - "styles": [ - "remove" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "0086E21E-2ABC-4983-8BA7-C9C31B55D6B9", - "baseIconId": "0086E21E-2ABC-4983-8BA7-C9C31B55D6B9", - "name": "atv", - "codepoint": "F1B70", - "aliases": [ - "quad", - "trike", - "two-wheeler", - "all-terrain-vehicle" - ], - "styles": [], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Transportation + Other", - "Sport" - ], - "author": "Google" - }, - { - "id": "2CB292B6-3835-44B4-857B-5231B87B5968", - "baseIconId": "2CB292B6-3835-44B4-857B-5231B87B5968", - "name": "audio-input-rca", - "codepoint": "F186B", - "aliases": [], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Audio" - ], - "author": "GreenTurtwig" - }, - { - "id": "45243722-DE4F-4339-878C-4990A62A1990", - "baseIconId": "45243722-DE4F-4339-878C-4990A62A1990", - "name": "audio-input-stereo-minijack", - "codepoint": "F186C", - "aliases": [], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Audio" - ], - "author": "GreenTurtwig" - }, - { - "id": "030EBE1B-EB48-4332-9E3D-BA6EF9C0AF79", - "baseIconId": "030EBE1B-EB48-4332-9E3D-BA6EF9C0AF79", - "name": "audio-input-xlr", - "codepoint": "F186D", - "aliases": [], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Audio" - ], - "author": "GreenTurtwig" - }, - { - "id": "79CBF0E5-365C-466B-B162-2EBD1531F182", - "baseIconId": "79CBF0E5-365C-466B-B162-2EBD1531F182", - "name": "audio-video", - "codepoint": "F093D", - "aliases": [ - "av-receiver" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Home Automation", - "Audio" - ], - "author": "Michael Richins" - }, - { - "id": "09FB4D77-A411-4CBF-9E88-21807D804CB3", - "baseIconId": "79CBF0E5-365C-466B-B162-2EBD1531F182", - "name": "audio-video-off", - "codepoint": "F11B6", - "aliases": [ - "av-receiver-off" - ], - "styles": [ - "off" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Audio" - ], - "author": "Michael Irigoyen" - }, - { - "id": "FC29D627-D661-4F31-9BEC-2F4BE355DFE7", - "baseIconId": "FC29D627-D661-4F31-9BEC-2F4BE355DFE7", - "name": "augmented-reality", - "codepoint": "F0850", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "3ED13D0F-1EC7-4EBF-99F4-B686272A00AC", - "baseIconId": "3ED13D0F-1EC7-4EBF-99F4-B686272A00AC", - "name": "aurora", - "codepoint": "F1BB9", - "aliases": [ - "aurora-borealis", - "aurora-australis", - "northern-lights", - "southern-lights", - "polar-lights" - ], - "styles": [], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Science", - "Weather" - ], - "author": "Jeff Anders" - }, - { - "id": "2EAC4201-2055-4755-84A9-958FDDF7732B", - "baseIconId": "2EAC4201-2055-4755-84A9-958FDDF7732B", - "name": "auto-download", - "codepoint": "F137E", - "aliases": [], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "FAAFAACC-4E0D-4688-B583-FC88A782A9B6", - "baseIconId": "FAAFAACC-4E0D-4688-B583-FC88A782A9B6", - "name": "auto-fix", - "codepoint": "F0068", - "aliases": [ - "magic", - "wand", - "auto-fix-high" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "A3A6B130-A579-48CB-8850-C5E5425A77AE", - "baseIconId": "A3A6B130-A579-48CB-8850-C5E5425A77AE", - "name": "auto-mode", - "codepoint": "F1C20", - "aliases": [], - "styles": [], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "3DEAD47C-90B3-485E-943C-CE2D70C85154", - "baseIconId": "3DEAD47C-90B3-485E-943C-CE2D70C85154", - "name": "auto-upload", - "codepoint": "F0069", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "00598C19-1255-479D-914A-1AADFDBC4868", - "baseIconId": "00598C19-1255-479D-914A-1AADFDBC4868", - "name": "autorenew", - "codepoint": "F006A", - "aliases": [ - "clockwise-arrows", - "circular-arrows", - "circle-arrows", - "sync" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "E140F6DB-8C47-4F0F-9293-0D8EE1106B64", - "baseIconId": "00598C19-1255-479D-914A-1AADFDBC4868", - "name": "autorenew-off", - "codepoint": "F19E7", - "aliases": [ - "clockwise-arrows-off", - "circular-arrows-off", - "circle-arrows-off", - "sync-off" - ], - "styles": [ - "off" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Colton Wiscombe" - }, - { - "id": "A118E3CD-FF18-48FD-B26C-B4A48641E4C5", - "baseIconId": "A118E3CD-FF18-48FD-B26C-B4A48641E4C5", - "name": "av-timer", - "codepoint": "F006B", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "8A405D94-6047-4B9B-BB52-24BD1416441F", - "baseIconId": "8A405D94-6047-4B9B-BB52-24BD1416441F", - "name": "awning", - "codepoint": "F1B87", - "aliases": [ - "marquise", - "sun-shade" - ], - "styles": [], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Jeff Anders" - }, - { - "id": "D2598CD1-6354-4499-9E67-EEF50D9B5226", - "baseIconId": "8A405D94-6047-4B9B-BB52-24BD1416441F", - "name": "awning-outline", - "codepoint": "F1B88", - "aliases": [ - "marquise-outline", - "sun-shade-outline" - ], - "styles": [ - "outline" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Jeff Anders" - }, - { - "id": "851E2C6C-16AE-4C0F-B99A-AB6BE37C4F55", - "baseIconId": "851E2C6C-16AE-4C0F-B99A-AB6BE37C4F55", - "name": "aws", - "codepoint": "F0E0F", - "aliases": [], - "styles": [], - "version": "3.6.95", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "B6119C36-82C4-4C6F-98D5-B339A73C837E", - "baseIconId": "B6119C36-82C4-4C6F-98D5-B339A73C837E", - "name": "axe", - "codepoint": "F08C8", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Nick" - }, - { - "id": "C2FB1086-E609-4BD6-BF91-F703CDE00209", - "baseIconId": "C2FB1086-E609-4BD6-BF91-F703CDE00209", - "name": "axe-battle", - "codepoint": "F1842", - "aliases": [], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Colton Wiscombe" - }, - { - "id": "78DCA9F5-C22C-407A-ABC1-15510C2F977A", - "baseIconId": "3D0AC996-0A31-4D68-AD38-A8507967B269", - "name": "axis", - "codepoint": "F0D48", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "3D0AC996-0A31-4D68-AD38-A8507967B269", - "baseIconId": "3D0AC996-0A31-4D68-AD38-A8507967B269", - "name": "axis-arrow", - "codepoint": "F0D49", - "aliases": [ - "accelerometer", - "gyro" - ], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "FCB87FD8-4522-47AF-AC10-2DF8A59F632D", - "baseIconId": "3D0AC996-0A31-4D68-AD38-A8507967B269", - "name": "axis-arrow-info", - "codepoint": "F140E", - "aliases": [], - "styles": [], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "1EE0C03F-9BCA-4AB4-92C3-209EA92FA54F", - "baseIconId": "3D0AC996-0A31-4D68-AD38-A8507967B269", - "name": "axis-arrow-lock", - "codepoint": "F0D4A", - "aliases": [], - "styles": [ - "lock" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Lock", - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "D2BAA555-22F2-447F-89F1-95D11AE09126", - "baseIconId": "3D0AC996-0A31-4D68-AD38-A8507967B269", - "name": "axis-lock", - "codepoint": "F0D4B", - "aliases": [], - "styles": [ - "lock" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Austin Andrews" - }, - { - "id": "933B83F8-4F97-436F-89E0-574315FF1E2E", - "baseIconId": "3D0AC996-0A31-4D68-AD38-A8507967B269", - "name": "axis-x-arrow", - "codepoint": "F0D4C", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "E113D418-BFDB-44FE-A809-61072FEAEF39", - "baseIconId": "3D0AC996-0A31-4D68-AD38-A8507967B269", - "name": "axis-x-arrow-lock", - "codepoint": "F0D4D", - "aliases": [], - "styles": [ - "lock" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Lock", - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "7EE23AE2-F41C-4CDA-9B52-B8A432CA7E20", - "baseIconId": "7EE23AE2-F41C-4CDA-9B52-B8A432CA7E20", - "name": "axis-x-rotate-clockwise", - "codepoint": "F0D4E", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "B500E4B0-397A-4BA2-926F-5B8BDF10632F", - "baseIconId": "7EE23AE2-F41C-4CDA-9B52-B8A432CA7E20", - "name": "axis-x-rotate-counterclockwise", - "codepoint": "F0D4F", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "6620039A-2405-48BB-9619-143BAF7CF8DD", - "baseIconId": "3D0AC996-0A31-4D68-AD38-A8507967B269", - "name": "axis-x-y-arrow-lock", - "codepoint": "F0D50", - "aliases": [], - "styles": [ - "lock" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Lock", - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "F12198D8-62C4-4E6A-A201-5D33DB690736", - "baseIconId": "3D0AC996-0A31-4D68-AD38-A8507967B269", - "name": "axis-y-arrow", - "codepoint": "F0D51", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "4C02BFA9-8AF8-4FC3-AAC7-F4D4AEF9BE06", - "baseIconId": "3D0AC996-0A31-4D68-AD38-A8507967B269", - "name": "axis-y-arrow-lock", - "codepoint": "F0D52", - "aliases": [], - "styles": [ - "lock" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Lock", - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "6A8E42CA-4236-496C-9C0A-81FADCDA6506", - "baseIconId": "7EE23AE2-F41C-4CDA-9B52-B8A432CA7E20", - "name": "axis-y-rotate-clockwise", - "codepoint": "F0D53", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "70E8F92A-9AAA-44CB-AB76-527463DE2D06", - "baseIconId": "7EE23AE2-F41C-4CDA-9B52-B8A432CA7E20", - "name": "axis-y-rotate-counterclockwise", - "codepoint": "F0D54", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "2BAA5FEA-713E-44D6-A44F-B36C92BB7F60", - "baseIconId": "3D0AC996-0A31-4D68-AD38-A8507967B269", - "name": "axis-z-arrow", - "codepoint": "F0D55", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "870F3E6C-6957-498E-AC62-BAE40C9FA7EA", - "baseIconId": "3D0AC996-0A31-4D68-AD38-A8507967B269", - "name": "axis-z-arrow-lock", - "codepoint": "F0D56", - "aliases": [], - "styles": [ - "lock" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Lock", - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "D3A59461-2A63-4C62-B528-564252BBAB29", - "baseIconId": "7EE23AE2-F41C-4CDA-9B52-B8A432CA7E20", - "name": "axis-z-rotate-clockwise", - "codepoint": "F0D57", - "aliases": [ - "vertical-rotate-clockwise" - ], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "DB0819A2-5E99-483B-BBC8-AEAD0DE9D196", - "baseIconId": "7EE23AE2-F41C-4CDA-9B52-B8A432CA7E20", - "name": "axis-z-rotate-counterclockwise", - "codepoint": "F0D58", - "aliases": [ - "vertical-rotate-counterclockwise" - ], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "3F7EAFAC-7A39-4051-B58D-2CBA6687110C", - "baseIconId": "3F7EAFAC-7A39-4051-B58D-2CBA6687110C", - "name": "babel", - "codepoint": "F0A25", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "2CD51EFC-51B6-4323-B1EA-429EB58BFF7F", - "baseIconId": "2CD51EFC-51B6-4323-B1EA-429EB58BFF7F", - "name": "baby", - "codepoint": "F006C", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "B3497A75-EE3B-4A8A-8F27-39A458423659", - "baseIconId": "B3497A75-EE3B-4A8A-8F27-39A458423659", - "name": "baby-bottle", - "codepoint": "F0F39", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Michael Richins" - }, - { - "id": "5E06191D-D9AC-412E-B21B-C3AF1F28D76F", - "baseIconId": "B3497A75-EE3B-4A8A-8F27-39A458423659", - "name": "baby-bottle-outline", - "codepoint": "F0F3A", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Michael Richins" - }, - { - "id": "46AF3844-1F3F-43B5-A93B-424EC83BCADB", - "baseIconId": "46AF3844-1F3F-43B5-A93B-424EC83BCADB", - "name": "baby-buggy", - "codepoint": "F13E0", - "aliases": [ - "stroller", - "pram", - "carriage" - ], - "styles": [], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Moma Design Studio" - }, - { - "id": "9E57CC9C-C471-4A84-A750-D4BE9C94D989", - "baseIconId": "46AF3844-1F3F-43B5-A93B-424EC83BCADB", - "name": "baby-buggy-off", - "codepoint": "F1AF3", - "aliases": [], - "styles": [ - "off" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Michael Irigoyen" - }, - { - "id": "FA711E97-6083-45AA-9C92-FCCDABC57D37", - "baseIconId": "FA711E97-6083-45AA-9C92-FCCDABC57D37", - "name": "baby-carriage", - "codepoint": "F068F", - "aliases": [ - "child-friendly", - "stroller", - "pram", - "buggy" - ], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "D495FD84-4476-4E2E-B099-4E0A07AA9D90", - "baseIconId": "FA711E97-6083-45AA-9C92-FCCDABC57D37", - "name": "baby-carriage-off", - "codepoint": "F0FA0", - "aliases": [ - "child-friendly-off", - "stroller-off", - "pram-off", - "buggy-off" - ], - "styles": [ - "off" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Michael Richins" - }, - { - "id": "78A84DE8-3ED5-4F81-991B-8EAE452908D3", - "baseIconId": "78A84DE8-3ED5-4F81-991B-8EAE452908D3", - "name": "baby-face", - "codepoint": "F0E7C", - "aliases": [ - "emoji-baby", - "emoticon-baby" - ], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "24C6F5BD-6965-4CDB-B3AC-02CA82F24216", - "baseIconId": "78A84DE8-3ED5-4F81-991B-8EAE452908D3", - "name": "baby-face-outline", - "codepoint": "F0E7D", - "aliases": [ - "emoji-baby-outline", - "emoticon-baby-outline" - ], - "styles": [ - "outline" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "5A5BC824-220B-4998-883A-0E57FB2AB75F", - "baseIconId": "5A5BC824-220B-4998-883A-0E57FB2AB75F", - "name": "backburger", - "codepoint": "F006D", - "aliases": [ - "hamburger-menu-back" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "2AAC06E6-8ABD-418B-B9A4-8554B62D7C04", - "baseIconId": "2AAC06E6-8ABD-418B-B9A4-8554B62D7C04", - "name": "backspace", - "codepoint": "F006E", - "aliases": [ - "erase", - "clear" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "7CD351DA-560B-42B5-86F3-7F782EA70FEA", - "baseIconId": "2AAC06E6-8ABD-418B-B9A4-8554B62D7C04", - "name": "backspace-outline", - "codepoint": "F0B5C", - "aliases": [ - "erase-outline", - "clear-outline" - ], - "styles": [ - "outline" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "49AA61F3-2E3D-4EEA-BFB1-32D59C6906F0", - "baseIconId": "49AA61F3-2E3D-4EEA-BFB1-32D59C6906F0", - "name": "backspace-reverse", - "codepoint": "F0E7E", - "aliases": [ - "clear-reverse", - "erase-reverse" - ], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "287700E2-130D-484B-B56D-0162BE6DEEEE", - "baseIconId": "49AA61F3-2E3D-4EEA-BFB1-32D59C6906F0", - "name": "backspace-reverse-outline", - "codepoint": "F0E7F", - "aliases": [ - "clear-reverse-outline", - "erase-reverse-outline" - ], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "36F8C2B4-C82C-4546-AFFC-601ECA54A603", - "baseIconId": "36F8C2B4-C82C-4546-AFFC-601ECA54A603", - "name": "backup-restore", - "codepoint": "F006F", - "aliases": [ - "settings-backup-restore" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "059B29E7-34BA-402E-B06A-B9EBF021FA8B", - "baseIconId": "059B29E7-34BA-402E-B06A-B9EBF021FA8B", - "name": "bacteria", - "codepoint": "F0ED5", - "aliases": [], - "styles": [], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Science", - "Medical \/ Hospital" - ], - "author": "Michael Irigoyen" - }, - { - "id": "548C05E8-98DD-4D5C-8308-FA997A2C9016", - "baseIconId": "059B29E7-34BA-402E-B06A-B9EBF021FA8B", - "name": "bacteria-outline", - "codepoint": "F0ED6", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Science", - "Medical \/ Hospital" - ], - "author": "Michael Irigoyen" - }, - { - "id": "AE2E869B-B420-4505-9EE0-EE3751478D64", - "baseIconId": "AE2E869B-B420-4505-9EE0-EE3751478D64", - "name": "badge-account", - "codepoint": "F0DA7", - "aliases": [ - "user-badge", - "person-badge" - ], - "styles": [ - "variant" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Richins" - }, - { - "id": "610A9983-6737-4876-B1E2-09C22D3888D9", - "baseIconId": "AE2E869B-B420-4505-9EE0-EE3751478D64", - "name": "badge-account-alert", - "codepoint": "F0DA8", - "aliases": [ - "user-badge-alert", - "person-badge-alert", - "account-badge-warning", - "user-badge-warning", - "person-badge-warning" - ], - "styles": [ - "alert", - "variant" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Account \/ User", - "Alert \/ Error" - ], - "author": "Michael Richins" - }, - { - "id": "3F5E356C-AD32-46E2-835F-ECFC043C73AD", - "baseIconId": "AE2E869B-B420-4505-9EE0-EE3751478D64", - "name": "badge-account-alert-outline", - "codepoint": "F0DA9", - "aliases": [ - "user-badge-alert-outline", - "person-badge-alert-outline", - "account-badge-warning-outline", - "user-badge-warning-outline", - "person-badge-warning-outline" - ], - "styles": [ - "alert", - "outline", - "variant" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Account \/ User", - "Alert \/ Error" - ], - "author": "Michael Richins" - }, - { - "id": "99CC4A89-E39E-460D-B199-227045E4A57D", - "baseIconId": "99CC4A89-E39E-460D-B199-227045E4A57D", - "name": "badge-account-horizontal", - "codepoint": "F0E0D", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "089F503E-00BF-4103-9475-B0E3955CE09D", - "baseIconId": "99CC4A89-E39E-460D-B199-227045E4A57D", - "name": "badge-account-horizontal-outline", - "codepoint": "F0E0E", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "37856000-4337-42D9-B273-9C9656E9CFCD", - "baseIconId": "AE2E869B-B420-4505-9EE0-EE3751478D64", - "name": "badge-account-outline", - "codepoint": "F0DAA", - "aliases": [ - "user-badge-outline", - "person-badge-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Richins" - }, - { - "id": "AF478988-12FA-460A-AE5B-01536D6D5B97", - "baseIconId": "AF478988-12FA-460A-AE5B-01536D6D5B97", - "name": "badminton", - "codepoint": "F0851", - "aliases": [ - "shuttlecock" - ], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Nick" - }, - { - "id": "0B935A7D-05EB-4687-8E4B-BC075AA2FA85", - "baseIconId": "0B935A7D-05EB-4687-8E4B-BC075AA2FA85", - "name": "bag-carry-on", - "codepoint": "F0F3B", - "aliases": [ - "carry-on-luggage" - ], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Transportation + Flying" - ], - "author": "Google" - }, - { - "id": "57DD596E-AFB6-46D2-8415-2DED40839B11", - "baseIconId": "0B935A7D-05EB-4687-8E4B-BC075AA2FA85", - "name": "bag-carry-on-check", - "codepoint": "F0D65", - "aliases": [ - "carry-on-bag-tick", - "carry-on-bag-check" - ], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Transportation + Flying" - ], - "author": "Google" - }, - { - "id": "F11D5411-E08A-483D-B04C-A75B523C717C", - "baseIconId": "0B935A7D-05EB-4687-8E4B-BC075AA2FA85", - "name": "bag-carry-on-off", - "codepoint": "F0F3C", - "aliases": [ - "carry-on-luggage-off" - ], - "styles": [ - "off" - ], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Transportation + Flying" - ], - "author": "Google" - }, - { - "id": "2D40D813-D1C8-4190-8010-012467F9E48F", - "baseIconId": "2D40D813-D1C8-4190-8010-012467F9E48F", - "name": "bag-checked", - "codepoint": "F0F3D", - "aliases": [ - "luggage" - ], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Transportation + Flying" - ], - "author": "Google" - }, - { - "id": "FB55F27F-9D0D-4EA7-ACD7-22C85E799248", - "baseIconId": "FB55F27F-9D0D-4EA7-ACD7-22C85E799248", - "name": "bag-personal", - "codepoint": "F0E10", - "aliases": [ - "backpack" - ], - "styles": [], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Transportation + Flying" - ], - "author": "Michael Richins" - }, - { - "id": "9B14800C-E104-4A89-9773-B220CA30A403", - "baseIconId": "FB55F27F-9D0D-4EA7-ACD7-22C85E799248", - "name": "bag-personal-off", - "codepoint": "F0E11", - "aliases": [ - "backpack-off" - ], - "styles": [ - "off" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Transportation + Flying" - ], - "author": "Michael Richins" - }, - { - "id": "822DE3FA-6BBB-4DF9-B586-A63CA5162EF1", - "baseIconId": "FB55F27F-9D0D-4EA7-ACD7-22C85E799248", - "name": "bag-personal-off-outline", - "codepoint": "F0E12", - "aliases": [ - "backpack-off-outline" - ], - "styles": [ - "off", - "outline" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Transportation + Flying" - ], - "author": "Michael Richins" - }, - { - "id": "E95F21EF-993D-462F-BA6E-21F7665BC34C", - "baseIconId": "FB55F27F-9D0D-4EA7-ACD7-22C85E799248", - "name": "bag-personal-outline", - "codepoint": "F0E13", - "aliases": [ - "backpack-outline" - ], - "styles": [ - "outline" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Transportation + Flying" - ], - "author": "Michael Richins" - }, - { - "id": "254FBC4D-1BB7-425B-8FB3-A9BB08106C82", - "baseIconId": "FB55F27F-9D0D-4EA7-ACD7-22C85E799248", - "name": "bag-personal-plus", - "codepoint": "F1CA4", - "aliases": [ - "bag-personal-add", - "backpack-add", - "backpack-plus" - ], - "styles": [ - "plus" - ], - "version": "7.3.96", - "deprecated": false, - "tags": [], - "author": "Matthew Terry" - }, - { - "id": "A34CE341-A59D-45C8-9F26-F4A9837915FF", - "baseIconId": "FB55F27F-9D0D-4EA7-ACD7-22C85E799248", - "name": "bag-personal-plus-outline", - "codepoint": "F1CA5", - "aliases": [ - "backpack-plus-outline", - "backpack-add-outline", - "bag-personal-add-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "7.3.96", - "deprecated": false, - "tags": [], - "author": "Matthew Terry" - }, - { - "id": "59865159-47DA-4B5F-8F5D-5E73D32BD4EA", - "baseIconId": "FB55F27F-9D0D-4EA7-ACD7-22C85E799248", - "name": "bag-personal-tag", - "codepoint": "F1B0C", - "aliases": [ - "property-tag" - ], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Matthew Terry" - }, - { - "id": "49BAA4CB-38E1-4792-93ED-8298AFB304A1", - "baseIconId": "FB55F27F-9D0D-4EA7-ACD7-22C85E799248", - "name": "bag-personal-tag-outline", - "codepoint": "F1B0D", - "aliases": [ - "property-tag-outline" - ], - "styles": [ - "outline" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Matthew Terry" - }, - { - "id": "0DBD5DC4-4D5B-48B9-951C-249BB05C3E7E", - "baseIconId": "0DBD5DC4-4D5B-48B9-951C-249BB05C3E7E", - "name": "bag-suitcase", - "codepoint": "F158B", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Transportation + Flying" - ], - "author": "Google" - }, - { - "id": "44E2AE1A-79ED-43C0-9A29-B18DFCB9B915", - "baseIconId": "0DBD5DC4-4D5B-48B9-951C-249BB05C3E7E", - "name": "bag-suitcase-off", - "codepoint": "F158D", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Transportation + Flying" - ], - "author": "Google" - }, - { - "id": "E89335F8-3A20-489F-A974-FF591F8A147E", - "baseIconId": "0DBD5DC4-4D5B-48B9-951C-249BB05C3E7E", - "name": "bag-suitcase-off-outline", - "codepoint": "F158E", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Transportation + Flying" - ], - "author": "Google" - }, - { - "id": "4977C376-1E6B-41F4-92F4-3410E9699F2D", - "baseIconId": "0DBD5DC4-4D5B-48B9-951C-249BB05C3E7E", - "name": "bag-suitcase-outline", - "codepoint": "F158C", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Transportation + Flying" - ], - "author": "Google" - }, - { - "id": "B6469241-E347-42D8-BF71-8DF29F1CA897", - "baseIconId": "B6469241-E347-42D8-BF71-8DF29F1CA897", - "name": "baguette", - "codepoint": "F0F3E", - "aliases": [ - "bread", - "bakery", - "french-baguette", - "loaf" - ], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Nick" - }, - { - "id": "005E0382-9004-4606-AA2A-07E27AF1E77E", - "baseIconId": "005E0382-9004-4606-AA2A-07E27AF1E77E", - "name": "balcony", - "codepoint": "F1817", - "aliases": [ - "terrace", - "patio", - "veranda" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "31D1D255-3E73-41A8-93E2-12DF16DA0C40", - "baseIconId": "31D1D255-3E73-41A8-93E2-12DF16DA0C40", - "name": "balloon", - "codepoint": "F0A26", - "aliases": [ - "party-balloon" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Holiday" - ], - "author": "Michael Richins" - }, - { - "id": "27AB71F3-1EFD-484F-8E63-C1E4C694E392", - "baseIconId": "27AB71F3-1EFD-484F-8E63-C1E4C694E392", - "name": "ballot", - "codepoint": "F09C9", - "aliases": [ - "vote" - ], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "B9CDE0FA-F96A-413C-9BFD-DAB4DBC3DDE3", - "baseIconId": "27AB71F3-1EFD-484F-8E63-C1E4C694E392", - "name": "ballot-outline", - "codepoint": "F09CA", - "aliases": [ - "vote-outline" - ], - "styles": [ - "outline" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "D0C76005-3272-4189-A061-E344D9BAB0C6", - "baseIconId": "27AB71F3-1EFD-484F-8E63-C1E4C694E392", - "name": "ballot-recount", - "codepoint": "F0C39", - "aliases": [ - "vote-recount" - ], - "styles": [ - "variant" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "0B0AD153-4696-4ED2-9AE1-309926B23287", - "baseIconId": "27AB71F3-1EFD-484F-8E63-C1E4C694E392", - "name": "ballot-recount-outline", - "codepoint": "F0C3A", - "aliases": [ - "vote-recount-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "6CDF527A-26C1-4175-A56B-5D65FD5E46E2", - "baseIconId": "6CDF527A-26C1-4175-A56B-5D65FD5E46E2", - "name": "bandage", - "codepoint": "F0DAF", - "aliases": [ - "band-aid", - "plaster" - ], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "FE08919F-CFFC-4A25-994C-CEDEB299908B", - "baseIconId": "FE08919F-CFFC-4A25-994C-CEDEB299908B", - "name": "bank", - "codepoint": "F0070", - "aliases": [ - "account-balance", - "museum" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Banking", - "Places" - ], - "author": "Google" - }, - { - "id": "1642BE6C-C1B6-49EA-833D-BB5E20BC1C69", - "baseIconId": "FE08919F-CFFC-4A25-994C-CEDEB299908B", - "name": "bank-check", - "codepoint": "F1655", - "aliases": [], - "styles": [ - "check" - ], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Colton Wiscombe" - }, - { - "id": "B8F96A7D-408E-4AB0-A137-E89DD4EC743E", - "baseIconId": "FE08919F-CFFC-4A25-994C-CEDEB299908B", - "name": "bank-circle", - "codepoint": "F1C03", - "aliases": [], - "styles": [ - "circle" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Jeff Anders" - }, - { - "id": "43EACF91-9449-480F-9F4B-C3EECD964C4D", - "baseIconId": "FE08919F-CFFC-4A25-994C-CEDEB299908B", - "name": "bank-circle-outline", - "codepoint": "F1C04", - "aliases": [], - "styles": [ - "circle", - "outline" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Jeff Anders" - }, - { - "id": "DAC4946E-1A07-44B4-977F-E51D740DA5FB", - "baseIconId": "FE08919F-CFFC-4A25-994C-CEDEB299908B", - "name": "bank-minus", - "codepoint": "F0DB0", - "aliases": [], - "styles": [ - "minus" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Austin Andrews" - }, - { - "id": "9379EA96-CBC9-4A84-BF1A-18A80E7BDBE2", - "baseIconId": "FE08919F-CFFC-4A25-994C-CEDEB299908B", - "name": "bank-off", - "codepoint": "F1656", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Colton Wiscombe" - }, - { - "id": "4590ED1A-1E67-42F4-8D4B-E2B39E5EFC63", - "baseIconId": "FE08919F-CFFC-4A25-994C-CEDEB299908B", - "name": "bank-off-outline", - "codepoint": "F1657", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Colton Wiscombe" - }, - { - "id": "952ADDE3-5EC1-4AB1-80F1-9FA7AA14AD74", - "baseIconId": "FE08919F-CFFC-4A25-994C-CEDEB299908B", - "name": "bank-outline", - "codepoint": "F0E80", - "aliases": [ - "museum-outline" - ], - "styles": [ - "outline" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Google" - }, - { - "id": "DCB74822-6C93-473B-88B4-1818CFDE2B69", - "baseIconId": "FE08919F-CFFC-4A25-994C-CEDEB299908B", - "name": "bank-plus", - "codepoint": "F0DB1", - "aliases": [ - "bank-add" - ], - "styles": [ - "plus" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Rosemary Stanley" - }, - { - "id": "14C747D0-C356-403D-862F-09A2F30276E7", - "baseIconId": "FE08919F-CFFC-4A25-994C-CEDEB299908B", - "name": "bank-remove", - "codepoint": "F0DB2", - "aliases": [], - "styles": [ - "remove" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Austin Andrews" - }, - { - "id": "5692748F-52FC-41F9-97B2-D0F251F4619D", - "baseIconId": "FE08919F-CFFC-4A25-994C-CEDEB299908B", - "name": "bank-transfer", - "codepoint": "F0A27", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "SarinManS" - }, - { - "id": "F8E6FE4D-8CE9-41A5-A26A-FEC3A572DA3F", - "baseIconId": "FE08919F-CFFC-4A25-994C-CEDEB299908B", - "name": "bank-transfer-in", - "codepoint": "F0A28", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "SarinManS" - }, - { - "id": "02A1C3B5-91EE-43B9-9BDB-3EF67F540722", - "baseIconId": "FE08919F-CFFC-4A25-994C-CEDEB299908B", - "name": "bank-transfer-out", - "codepoint": "F0A29", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "SarinManS" - }, - { - "id": "5231CD58-9C30-40A8-993C-A24C6B70F6B8", - "baseIconId": "5231CD58-9C30-40A8-993C-A24C6B70F6B8", - "name": "barcode", - "codepoint": "F0071", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "AF7144E7-5004-4685-A100-78425F035F51", - "baseIconId": "5231CD58-9C30-40A8-993C-A24C6B70F6B8", - "name": "barcode-off", - "codepoint": "F1236", - "aliases": [], - "styles": [ - "off" - ], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "40365CB0-4664-4648-8C51-2E6E20A0D096", - "baseIconId": "5231CD58-9C30-40A8-993C-A24C6B70F6B8", - "name": "barcode-scan", - "codepoint": "F0072", - "aliases": [ - "barcode-scanner" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "5126A5A7-ECBC-49FC-BBC6-1703DCACF5E4", - "baseIconId": "5126A5A7-ECBC-49FC-BBC6-1703DCACF5E4", - "name": "barley", - "codepoint": "F0073", - "aliases": [ - "grain", - "wheat", - "gluten" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Agriculture", - "Food \/ Drink" - ], - "author": "Austin Andrews" - }, - { - "id": "6627D247-B25C-48F3-925D-BF282D7B4295", - "baseIconId": "5126A5A7-ECBC-49FC-BBC6-1703DCACF5E4", - "name": "barley-off", - "codepoint": "F0B5D", - "aliases": [ - "gluten-free", - "grain-off", - "wheat-off" - ], - "styles": [ - "off" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Agriculture" - ], - "author": "Simran" - }, - { - "id": "678BDE48-30CE-4897-BA06-9991001FA842", - "baseIconId": "678BDE48-30CE-4897-BA06-9991001FA842", - "name": "barn", - "codepoint": "F0B5E", - "aliases": [ - "farm" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Agriculture" - ], - "author": "SarinManS" - }, - { - "id": "CD3098D2-892F-49F5-9FA7-1A5FDC53A15C", - "baseIconId": "CD3098D2-892F-49F5-9FA7-1A5FDC53A15C", - "name": "barrel", - "codepoint": "F0074", - "aliases": [ - "oil-barrel", - "energy", - "fossil-fuel" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "DBEE4FC0-D708-4293-B06B-E46FAC217031", - "baseIconId": "CD3098D2-892F-49F5-9FA7-1A5FDC53A15C", - "name": "barrel-outline", - "codepoint": "F1A28", - "aliases": [ - "oil-barrel-outline", - "fossil-fuel-outline", - "energy-outline" - ], - "styles": [ - "outline" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "EDAC5CB7-39B3-4DAD-89ED-38D7EA914211", - "baseIconId": "EDAC5CB7-39B3-4DAD-89ED-38D7EA914211", - "name": "baseball", - "codepoint": "F0852", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Nick" - }, - { - "id": "20D31EB1-5C7F-4597-9B42-80E08E0192F8", - "baseIconId": "20D31EB1-5C7F-4597-9B42-80E08E0192F8", - "name": "baseball-bat", - "codepoint": "F0853", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Nick" - }, - { - "id": "360632A2-1E37-4A89-BC24-166CF4824357", - "baseIconId": "360632A2-1E37-4A89-BC24-166CF4824357", - "name": "baseball-diamond", - "codepoint": "F15EC", - "aliases": [], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Michael Irigoyen" - }, - { - "id": "55F744E2-2059-41A4-B909-748029558069", - "baseIconId": "360632A2-1E37-4A89-BC24-166CF4824357", - "name": "baseball-diamond-outline", - "codepoint": "F15ED", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Michael Irigoyen" - }, - { - "id": "8A7385DC-1143-489D-8AE3-E525EED95222", - "baseIconId": "EDAC5CB7-39B3-4DAD-89ED-38D7EA914211", - "name": "baseball-outline", - "codepoint": "F1C5A", - "aliases": [], - "styles": [ - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Jeff Anders" - }, - { - "id": "53BA6F8E-FC99-4B2A-8497-EA732C1880E4", - "baseIconId": "53BA6F8E-FC99-4B2A-8497-EA732C1880E4", - "name": "bash", - "codepoint": "F1183", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Michael Richins" - }, - { - "id": "4E334FE9-DF93-469A-B7D7-AC88BBF25D84", - "baseIconId": "4E334FE9-DF93-469A-B7D7-AC88BBF25D84", - "name": "basket", - "codepoint": "F0076", - "aliases": [ - "shopping-basket", - "skip" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Google" - }, - { - "id": "22A624ED-8F58-41BC-B82D-C1750626AA18", - "baseIconId": "4E334FE9-DF93-469A-B7D7-AC88BBF25D84", - "name": "basket-check", - "codepoint": "F18E5", - "aliases": [], - "styles": [ - "check" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Michael Irigoyen" - }, - { - "id": "6B0573EB-F745-409B-B065-C492537579C6", - "baseIconId": "4E334FE9-DF93-469A-B7D7-AC88BBF25D84", - "name": "basket-check-outline", - "codepoint": "F18E6", - "aliases": [], - "styles": [ - "check", - "outline" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9B7DC550-62F9-4FB0-9B21-0379AA925A19", - "baseIconId": "4E334FE9-DF93-469A-B7D7-AC88BBF25D84", - "name": "basket-fill", - "codepoint": "F0077", - "aliases": [ - "skip-fill" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Austin Andrews" - }, - { - "id": "C41B2071-6BBF-458A-B73A-409D231A9F4D", - "baseIconId": "4E334FE9-DF93-469A-B7D7-AC88BBF25D84", - "name": "basket-minus", - "codepoint": "F1523", - "aliases": [ - "shopping-basket-minus", - "skip-minus" - ], - "styles": [ - "minus" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Michael Irigoyen" - }, - { - "id": "8F4899A8-07F0-4C00-90EE-1509BE7A0D4C", - "baseIconId": "4E334FE9-DF93-469A-B7D7-AC88BBF25D84", - "name": "basket-minus-outline", - "codepoint": "F1524", - "aliases": [ - "shopping-basket-minus-outline", - "skip-minus-outline" - ], - "styles": [ - "minus", - "outline" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Michael Irigoyen" - }, - { - "id": "FC2C74AA-57B1-4E13-A499-AA81CBE6670A", - "baseIconId": "4E334FE9-DF93-469A-B7D7-AC88BBF25D84", - "name": "basket-off", - "codepoint": "F1525", - "aliases": [ - "shopping-basket-off", - "skip-off" - ], - "styles": [ - "off" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2D28FB7D-8AEA-4ED6-BB7D-DA76EC3DA4EB", - "baseIconId": "4E334FE9-DF93-469A-B7D7-AC88BBF25D84", - "name": "basket-off-outline", - "codepoint": "F1526", - "aliases": [ - "shopping-basket-off-outline", - "skip-off-outline" - ], - "styles": [ - "off", - "outline" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A9AC5A33-FD7D-49C8-9C5E-C41335F6E833", - "baseIconId": "4E334FE9-DF93-469A-B7D7-AC88BBF25D84", - "name": "basket-outline", - "codepoint": "F1181", - "aliases": [ - "shopping-basket-outline", - "skip-outline" - ], - "styles": [ - "outline" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Google" - }, - { - "id": "3B02F0C6-F80B-479B-ABA7-CFBDBA843EB4", - "baseIconId": "4E334FE9-DF93-469A-B7D7-AC88BBF25D84", - "name": "basket-plus", - "codepoint": "F1527", - "aliases": [ - "shopping-basket-plus", - "skip-plus" - ], - "styles": [ - "plus" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DC1E93FF-94C4-4B14-9152-ADDE374A44BB", - "baseIconId": "4E334FE9-DF93-469A-B7D7-AC88BBF25D84", - "name": "basket-plus-outline", - "codepoint": "F1528", - "aliases": [ - "shopping-basket-plus-outline", - "skip-plus-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C730C431-5377-4B0E-933B-5307E736B75A", - "baseIconId": "4E334FE9-DF93-469A-B7D7-AC88BBF25D84", - "name": "basket-remove", - "codepoint": "F1529", - "aliases": [ - "shopping-basket-remove", - "skip-remove" - ], - "styles": [ - "remove" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Michael Irigoyen" - }, - { - "id": "8DB42CB2-5A41-489E-BC04-1DFADF917DE6", - "baseIconId": "4E334FE9-DF93-469A-B7D7-AC88BBF25D84", - "name": "basket-remove-outline", - "codepoint": "F152A", - "aliases": [ - "shopping-basket-remove-outline", - "skip-remove-outline" - ], - "styles": [ - "outline", - "remove" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D46B98B3-4045-4EAD-A26E-659195B5CC65", - "baseIconId": "4E334FE9-DF93-469A-B7D7-AC88BBF25D84", - "name": "basket-unfill", - "codepoint": "F0078", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Austin Andrews" - }, - { - "id": "FD797202-9EF1-407E-A290-97C014B8F37E", - "baseIconId": "FD797202-9EF1-407E-A290-97C014B8F37E", - "name": "basketball", - "codepoint": "F0806", - "aliases": [ - "youtube-sports" - ], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Google" - }, - { - "id": "7792E2EB-0A99-44CF-AEBE-6683490594B0", - "baseIconId": "7792E2EB-0A99-44CF-AEBE-6683490594B0", - "name": "basketball-hoop", - "codepoint": "F0C3B", - "aliases": [], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Michael Richins" - }, - { - "id": "3310ED1D-3E70-48C0-AE7B-14BB42E0CD16", - "baseIconId": "7792E2EB-0A99-44CF-AEBE-6683490594B0", - "name": "basketball-hoop-outline", - "codepoint": "F0C3C", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Michael Richins" - }, - { - "id": "06925257-791B-4F7F-9A8F-A2D958EE8784", - "baseIconId": "06925257-791B-4F7F-9A8F-A2D958EE8784", - "name": "bat", - "codepoint": "F0B5F", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Holiday", - "Animal" - ], - "author": "Austin Andrews" - }, - { - "id": "4DB5FCB7-2D9E-4612-8087-4F78B0053305", - "baseIconId": "4DB5FCB7-2D9E-4612-8087-4F78B0053305", - "name": "bathtub", - "codepoint": "F1818", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "EE0AF53A-2C79-48C3-842C-4AD04DB14D84", - "baseIconId": "4DB5FCB7-2D9E-4612-8087-4F78B0053305", - "name": "bathtub-outline", - "codepoint": "F1819", - "aliases": [], - "styles": [ - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "C12D919F-7D0D-4355-8109-912BA37154B5", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery", - "codepoint": "F0079", - "aliases": [ - "battery-full", - "battery-std", - "battery-100" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation", - "Automotive" - ], - "author": "Google" - }, - { - "id": "D753B56C-E806-4F17-B2A0-EBC4B4B78D19", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-10", - "codepoint": "F007A", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation", - "Automotive" - ], - "author": "Google" - }, - { - "id": "9C8DAC10-97C6-476E-8122-25D7709F7AF6", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-10-bluetooth", - "codepoint": "F093E", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "GreenTurtwig" - }, - { - "id": "95AEB324-9D57-4D27-B463-0C8077C04E24", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-20", - "codepoint": "F007B", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation", - "Automotive" - ], - "author": "Google" - }, - { - "id": "9BA1E9FB-BB6A-447E-9F35-615CCC81CD81", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-20-bluetooth", - "codepoint": "F093F", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "GreenTurtwig" - }, - { - "id": "970E1F42-4594-42CD-BB4E-6F5CBDBF5D21", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-30", - "codepoint": "F007C", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation", - "Automotive" - ], - "author": "Google" - }, - { - "id": "6128BD10-A4CD-440E-BF98-151777783110", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-30-bluetooth", - "codepoint": "F0940", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "GreenTurtwig" - }, - { - "id": "EE290FAF-A1D6-4A0D-8BBA-8DD2455AFB82", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-40", - "codepoint": "F007D", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation", - "Automotive" - ], - "author": "Google" - }, - { - "id": "058D5094-AB60-4412-8C71-6CF4A56784A6", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-40-bluetooth", - "codepoint": "F0941", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "GreenTurtwig" - }, - { - "id": "A79598F9-7FDF-46A2-9F8D-1DBD6BAB1A1D", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-50", - "codepoint": "F007E", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation", - "Automotive" - ], - "author": "Google" - }, - { - "id": "313BE145-A7FB-4620-915C-4B2298C70EA1", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-50-bluetooth", - "codepoint": "F0942", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "GreenTurtwig" - }, - { - "id": "B6EB700B-9288-474C-9A5C-C269680BFC5F", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-60", - "codepoint": "F007F", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation", - "Automotive" - ], - "author": "Google" - }, - { - "id": "B422BB57-AC2D-43C2-B7A0-67160D90519E", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-60-bluetooth", - "codepoint": "F0943", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "GreenTurtwig" - }, - { - "id": "5DC968CB-1DC2-42B1-96E2-80AC6B23BB9C", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-70", - "codepoint": "F0080", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation", - "Automotive" - ], - "author": "Google" - }, - { - "id": "426481A7-5387-4385-9D2D-BEB1BCF5900D", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-70-bluetooth", - "codepoint": "F0944", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "GreenTurtwig" - }, - { - "id": "54485D0C-49B3-424D-8283-4CE90E16F88D", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-80", - "codepoint": "F0081", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation", - "Automotive" - ], - "author": "Google" - }, - { - "id": "176EE56B-73A9-44C7-94FF-90C11A48127E", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-80-bluetooth", - "codepoint": "F0945", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "GreenTurtwig" - }, - { - "id": "58205285-7EAA-400A-A8E5-A9373E7D986A", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-90", - "codepoint": "F0082", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation", - "Automotive" - ], - "author": "Google" - }, - { - "id": "AEB32E6B-7E3D-4C3A-AE1A-96C63868E208", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-90-bluetooth", - "codepoint": "F0946", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "GreenTurtwig" - }, - { - "id": "ABFAD078-0E10-4293-94AD-16871B75E51F", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-alert", - "codepoint": "F0083", - "aliases": [ - "battery-warning" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation", - "Alert \/ Error" - ], - "author": "Google" - }, - { - "id": "7C1C81FB-9E38-4220-B225-460056043383", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-alert-bluetooth", - "codepoint": "F0947", - "aliases": [ - "battery-warning-bluetooth" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Alert \/ Error", - "Battery" - ], - "author": "GreenTurtwig" - }, - { - "id": "DD0191F8-8AE0-4D80-A29C-AB7451DAE464", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-alert-variant", - "codepoint": "F10CC", - "aliases": [], - "styles": [ - "alert" - ], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Battery", - "Alert \/ Error" - ], - "author": "Austin Andrews" - }, - { - "id": "C384D39D-C672-454D-964E-8AEF06C2381F", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-alert-variant-outline", - "codepoint": "F10CD", - "aliases": [], - "styles": [ - "alert", - "outline" - ], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Battery", - "Alert \/ Error" - ], - "author": "Austin Andrews" - }, - { - "id": "E57A937E-29A3-4FE5-8B47-6E678F3D0539", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-arrow-down", - "codepoint": "F17DE", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "3CD83E68-9EEE-4DB8-B6D9-CCC8123BA198", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-arrow-down-outline", - "codepoint": "F17DF", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "DA4F5288-0BD2-4D9F-A49D-8E40E9893789", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-arrow-up", - "codepoint": "F17E0", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "D81D0F0F-E856-4F7A-BB00-B4462105D5DB", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-arrow-up-outline", - "codepoint": "F17E1", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "3DB7EA89-8F0C-40DA-B45A-E5B588F2CC01", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-bluetooth", - "codepoint": "F0948", - "aliases": [ - "battery-bluetooth-100", - "battery-bluetooth-full" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "GreenTurtwig" - }, - { - "id": "910BCFA6-ED67-48A5-97EB-BA61969629E9", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-bluetooth-variant", - "codepoint": "F0949", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "GreenTurtwig" - }, - { - "id": "F365ACF3-9453-4516-B592-AECD72AB7433", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-charging", - "codepoint": "F0084", - "aliases": [ - "battery-charging-full" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation", - "Automotive" - ], - "author": "Google" - }, - { - "id": "EBDD7C45-CE9F-4503-9CE4-0682E4E8E6BF", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-charging-10", - "codepoint": "F089C", - "aliases": [], - "styles": [], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Automotive", - "Battery" - ], - "author": "Google" - }, - { - "id": "C1379E5C-2335-4C37-9A73-EE54D6747512", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-charging-100", - "codepoint": "F0085", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation", - "Automotive" - ], - "author": "Google" - }, - { - "id": "3E25E8BE-5097-4414-A7E4-9CDF02CD4F84", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-charging-20", - "codepoint": "F0086", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation", - "Automotive" - ], - "author": "Google" - }, - { - "id": "04D00269-7E8F-40D1-BFC4-36A01720260B", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-charging-30", - "codepoint": "F0087", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation", - "Automotive" - ], - "author": "Google" - }, - { - "id": "D40803B3-43CB-4680-A7BD-56CC83ED54B8", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-charging-40", - "codepoint": "F0088", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation", - "Automotive" - ], - "author": "Google" - }, - { - "id": "1681D3BD-4990-4571-87B0-1C846DC8D600", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-charging-50", - "codepoint": "F089D", - "aliases": [], - "styles": [], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Automotive", - "Battery" - ], - "author": "Google" - }, - { - "id": "23E8809B-FB62-4573-83CF-9C33E980FD41", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-charging-60", - "codepoint": "F0089", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation", - "Automotive" - ], - "author": "Google" - }, - { - "id": "C8C75ED1-4B80-42A7-B590-DA3BE7567E86", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-charging-70", - "codepoint": "F089E", - "aliases": [], - "styles": [], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Automotive", - "Battery" - ], - "author": "Google" - }, - { - "id": "20455031-CCDD-40F8-A7A4-5E1F9E55F20E", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-charging-80", - "codepoint": "F008A", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation", - "Automotive" - ], - "author": "Google" - }, - { - "id": "0EC45F7B-7A0A-43AD-ABD3-10E4209659C0", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-charging-90", - "codepoint": "F008B", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation", - "Automotive" - ], - "author": "Google" - }, - { - "id": "2BD37CBE-629C-41E8-8631-CD438C1E7704", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-charging-high", - "codepoint": "F12A6", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C0158CBD-1F8D-491B-9825-9DB96D901908", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-charging-low", - "codepoint": "F12A4", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "Michael Irigoyen" - }, - { - "id": "FD7F7486-1E30-44A5-A4B2-C908372835CD", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-charging-medium", - "codepoint": "F12A5", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A057A8D0-A442-4948-B2BF-63CECE073AF5", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-charging-outline", - "codepoint": "F089F", - "aliases": [], - "styles": [], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Automotive", - "Battery" - ], - "author": "Google" - }, - { - "id": "60EEA5B6-8070-482D-ABE3-54A9D2A80875", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-charging-wireless", - "codepoint": "F0807", - "aliases": [ - "battery-charging-wireless-full", - "battery-charging-wireless-100" - ], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "5D2990D5-D3D4-4E8F-AED8-B90CE6164068", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-charging-wireless-10", - "codepoint": "F0808", - "aliases": [], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "5C194C6F-8CFE-4F1A-AFD3-11D7E8CB89B4", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-charging-wireless-20", - "codepoint": "F0809", - "aliases": [], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "567818F9-23C0-41C4-A3BD-2BA37F8BFF29", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-charging-wireless-30", - "codepoint": "F080A", - "aliases": [], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "1ABBC4EA-32D6-4FBA-AA00-E19707123AE5", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-charging-wireless-40", - "codepoint": "F080B", - "aliases": [], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "9BC0DBFF-A3F6-4061-B6E1-685880D6B653", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-charging-wireless-50", - "codepoint": "F080C", - "aliases": [], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "F09D15A6-1E87-488C-9F75-24EC677E72FF", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-charging-wireless-60", - "codepoint": "F080D", - "aliases": [], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "45966E8F-2801-4ED6-970F-12D9FD6C6290", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-charging-wireless-70", - "codepoint": "F080E", - "aliases": [], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "EB5E0801-60FA-4DD3-8709-2A6F0AC9C3ED", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-charging-wireless-80", - "codepoint": "F080F", - "aliases": [], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "E8C0AC60-D7AB-4FA3-9596-CE002E798180", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-charging-wireless-90", - "codepoint": "F0810", - "aliases": [], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "F835E187-444F-43B8-A057-9915F1388A87", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-charging-wireless-alert", - "codepoint": "F0811", - "aliases": [ - "battery-charging-wireless-warning" - ], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation", - "Alert \/ Error" - ], - "author": "Michael Richins" - }, - { - "id": "4AFDE54E-1A6D-4F7F-BD0D-AB67FB0F12CC", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-charging-wireless-outline", - "codepoint": "F0812", - "aliases": [ - "battery-charging-wireless-empty", - "battery-charging-wireless-0" - ], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "0D73145E-B849-4DA8-AC86-8DA3840ACC38", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-check", - "codepoint": "F17E2", - "aliases": [], - "styles": [ - "check" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "75AE3FD5-ADC3-41FD-BC86-882A771C396A", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-check-outline", - "codepoint": "F17E3", - "aliases": [], - "styles": [ - "check", - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "11C7A5CA-DA77-453A-BAA8-6345949394C7", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-clock", - "codepoint": "F19E5", - "aliases": [ - "battery-full-clock", - "battery-100-clock" - ], - "styles": [ - "clock" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation", - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "5756A4F3-FBED-4F81-8B97-AF391EC4D893", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-clock-outline", - "codepoint": "F19E6", - "aliases": [ - "batter-0-clock", - "battery-empty-clock" - ], - "styles": [ - "clock", - "outline" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation", - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "DEE88AFA-DFF3-4100-8475-EB5EB72CCFCB", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-heart", - "codepoint": "F120F", - "aliases": [], - "styles": [ - "heart" - ], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "Michael Richins" - }, - { - "id": "0D342AE3-0BE6-40C3-BAF9-D519508C4546", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-heart-outline", - "codepoint": "F1210", - "aliases": [], - "styles": [ - "heart", - "outline" - ], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "Michael Richins" - }, - { - "id": "2DE04585-054B-4E09-AC31-33E28DD80942", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-heart-variant", - "codepoint": "F1211", - "aliases": [], - "styles": [ - "heart" - ], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "Michael Richins" - }, - { - "id": "253E4BDF-CE79-459D-B06D-915B34A12227", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-high", - "codepoint": "F12A3", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "Austin Andrews" - }, - { - "id": "F24949D4-ED65-4517-8AA1-71160F05D0F8", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-lock", - "codepoint": "F179C", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Battery", - "Lock" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "20BE6E36-64DD-49BD-BA06-F90480EF33A5", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-lock-open", - "codepoint": "F179D", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Battery", - "Lock" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "4BDC283A-A6B7-4B2B-A18A-2B25410AF35C", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-low", - "codepoint": "F12A1", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "Austin Andrews" - }, - { - "id": "59FF99D5-138F-4D6B-90B2-4782A4B3F8EB", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-medium", - "codepoint": "F12A2", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "Austin Andrews" - }, - { - "id": "C34C0934-799C-40A5-8AD4-CE7A417C170B", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-minus", - "codepoint": "F17E4", - "aliases": [], - "styles": [ - "minus" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "BDFA54F2-D16E-441C-A039-3E6DB60EE182", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-minus-outline", - "codepoint": "F17E5", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "15E0E37E-564A-40D5-9D4A-948C932C8E52", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-minus-variant", - "codepoint": "F008C", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "447DBB2A-31ED-4856-A7A2-A61BF0780C7B", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-negative", - "codepoint": "F008D", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "C0939A88-BF53-4323-A12F-E6A92F7BE327", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-off", - "codepoint": "F125D", - "aliases": [], - "styles": [ - "off" - ], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "Michael Richins" - }, - { - "id": "66A0E28A-53F2-4E22-B14A-BADBE10E0CA9", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-off-outline", - "codepoint": "F125E", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "Michael Richins" - }, - { - "id": "925B02B4-CA05-4545-A4E3-421F8412DA37", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-outline", - "codepoint": "F008E", - "aliases": [ - "battery-0", - "battery-empty" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation", - "Automotive" - ], - "author": "Google" - }, - { - "id": "07911E7E-BA7E-49FD-90B1-7B8D273D9278", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-plus", - "codepoint": "F17E6", - "aliases": [], - "styles": [ - "plus" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "E9A097FD-0484-4E92-BC8F-2726EF5CAB5B", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-plus-outline", - "codepoint": "F17E7", - "aliases": [], - "styles": [ - "outline", - "plus" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "A4BD7F0D-E95C-413C-B853-435A53854844", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-plus-variant", - "codepoint": "F008F", - "aliases": [ - "battery-saver", - "battery-add" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "195F51E4-5B02-4BE3-B407-4B7FC1445F18", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-positive", - "codepoint": "F0090", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "C0E3D38A-A3B2-4010-8B9B-9CB97F67FE50", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-remove", - "codepoint": "F17E8", - "aliases": [], - "styles": [ - "remove" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "FC6E9489-07CC-4D0D-B93C-44E0E257A365", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-remove-outline", - "codepoint": "F17E9", - "aliases": [], - "styles": [ - "outline", - "remove" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "A78E1E92-F129-4050-AA6F-B308D171A2DC", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-sync", - "codepoint": "F1834", - "aliases": [ - "battery-saver", - "battery-recycle", - "battery-eco" - ], - "styles": [ - "sync" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5250464D-70A3-4BC2-8969-878E57526CDF", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-sync-outline", - "codepoint": "F1835", - "aliases": [ - "battery-saver-outline", - "battery-eco-outline", - "battery-recycle-outline" - ], - "styles": [ - "outline", - "sync" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "Michael Irigoyen" - }, - { - "id": "80257130-A38B-4BC1-B194-2EB16048D763", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-unknown", - "codepoint": "F0091", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Battery", - "Home Automation" - ], - "author": "Google" - }, - { - "id": "B30963B2-893D-43F8-9EFD-918DCB654B75", - "baseIconId": "C12D919F-7D0D-4355-8109-912BA37154B5", - "name": "battery-unknown-bluetooth", - "codepoint": "F094A", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "GreenTurtwig" - }, - { - "id": "FB1FEB37-FA9B-40BF-A7EC-B4A1690E6B77", - "baseIconId": "FB1FEB37-FA9B-40BF-A7EC-B4A1690E6B77", - "name": "beach", - "codepoint": "F0092", - "aliases": [ - "parasol" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Places" - ], - "author": "Austin Andrews" - }, - { - "id": "AC08F348-ACA6-440E-A28D-FCC9BFC85E27", - "baseIconId": "AC08F348-ACA6-440E-A28D-FCC9BFC85E27", - "name": "beaker", - "codepoint": "F0CEA", - "aliases": [], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Michael Irigoyen" - }, - { - "id": "22743DE0-B662-44CD-8707-91ABF624D0E3", - "baseIconId": "AC08F348-ACA6-440E-A28D-FCC9BFC85E27", - "name": "beaker-alert", - "codepoint": "F1229", - "aliases": [], - "styles": [ - "alert" - ], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Alert \/ Error", - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "327C0F93-7EBD-4B24-A31C-285F6FC14DF3", - "baseIconId": "AC08F348-ACA6-440E-A28D-FCC9BFC85E27", - "name": "beaker-alert-outline", - "codepoint": "F122A", - "aliases": [], - "styles": [ - "alert", - "outline" - ], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Alert \/ Error", - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "252089E7-6AA1-400C-99DF-B8F2090BE78A", - "baseIconId": "AC08F348-ACA6-440E-A28D-FCC9BFC85E27", - "name": "beaker-check", - "codepoint": "F122B", - "aliases": [], - "styles": [ - "check" - ], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "23EFC5EC-7DAE-46FC-8E1C-488CF2EFFEB3", - "baseIconId": "AC08F348-ACA6-440E-A28D-FCC9BFC85E27", - "name": "beaker-check-outline", - "codepoint": "F122C", - "aliases": [], - "styles": [ - "check", - "outline" - ], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "FC008372-099E-45EB-BD51-13D1CA45A9BF", - "baseIconId": "AC08F348-ACA6-440E-A28D-FCC9BFC85E27", - "name": "beaker-minus", - "codepoint": "F122D", - "aliases": [], - "styles": [ - "minus" - ], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "15C31E14-F9D4-49E7-A9FA-266E3C2C7F1B", - "baseIconId": "AC08F348-ACA6-440E-A28D-FCC9BFC85E27", - "name": "beaker-minus-outline", - "codepoint": "F122E", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "95E06F22-3EA5-448F-B260-E555C1DCD18E", - "baseIconId": "AC08F348-ACA6-440E-A28D-FCC9BFC85E27", - "name": "beaker-outline", - "codepoint": "F0690", - "aliases": [], - "styles": [ - "outline" - ], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Simran" - }, - { - "id": "CDF9CCFD-BDE5-4BBF-94DA-BF61466906A6", - "baseIconId": "AC08F348-ACA6-440E-A28D-FCC9BFC85E27", - "name": "beaker-plus", - "codepoint": "F122F", - "aliases": [], - "styles": [ - "plus" - ], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "210E9002-74BB-44CB-9D93-7CC8EE95D519", - "baseIconId": "AC08F348-ACA6-440E-A28D-FCC9BFC85E27", - "name": "beaker-plus-outline", - "codepoint": "F1230", - "aliases": [], - "styles": [ - "outline", - "plus" - ], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "21A03544-7009-4069-8BF0-17168DF93ED9", - "baseIconId": "AC08F348-ACA6-440E-A28D-FCC9BFC85E27", - "name": "beaker-question", - "codepoint": "F1231", - "aliases": [], - "styles": [ - "question" - ], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "3C151400-745C-44BE-A94E-A2F5365C7DD6", - "baseIconId": "AC08F348-ACA6-440E-A28D-FCC9BFC85E27", - "name": "beaker-question-outline", - "codepoint": "F1232", - "aliases": [], - "styles": [ - "outline", - "question" - ], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "0F41805A-67FE-4ADB-A398-B22032BF0C89", - "baseIconId": "AC08F348-ACA6-440E-A28D-FCC9BFC85E27", - "name": "beaker-remove", - "codepoint": "F1233", - "aliases": [], - "styles": [ - "remove" - ], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "DF5AF4E0-65C2-492A-AEDD-0297AE36BA2B", - "baseIconId": "AC08F348-ACA6-440E-A28D-FCC9BFC85E27", - "name": "beaker-remove-outline", - "codepoint": "F1234", - "aliases": [], - "styles": [ - "outline", - "remove" - ], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "EA62EF73-ACC7-4E54-87EF-D5E1683BE58F", - "baseIconId": "EA62EF73-ACC7-4E54-87EF-D5E1683BE58F", - "name": "bed", - "codepoint": "F02E3", - "aliases": [ - "hotel", - "guest-room" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation", - "Holiday" - ], - "author": "Google" - }, - { - "id": "91A8F1FF-F40E-44EC-A96B-776517F69769", - "baseIconId": "EA62EF73-ACC7-4E54-87EF-D5E1683BE58F", - "name": "bed-clock", - "codepoint": "F1B94", - "aliases": [ - "bed-schedule", - "bed-time", - "sleep-schedule", - "sleep-time" - ], - "styles": [ - "clock" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "76E0CC3D-3FF4-421A-A7F0-0F38C68C92A2", - "baseIconId": "D6763D57-A47E-4BFA-A493-5F25C164FB2F", - "name": "bed-double", - "codepoint": "F0FD4", - "aliases": [ - "bedroom" - ], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Holiday" - ], - "author": "Michael Richins" - }, - { - "id": "6061EF08-3805-4F30-88A1-0DC3419E6989", - "baseIconId": "D6763D57-A47E-4BFA-A493-5F25C164FB2F", - "name": "bed-double-outline", - "codepoint": "F0FD3", - "aliases": [ - "bedroom-outline" - ], - "styles": [ - "outline" - ], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Holiday" - ], - "author": "Google" - }, - { - "id": "15DC169E-459C-4EDB-BF8F-3E1D4F34B2BF", - "baseIconId": "EA62EF73-ACC7-4E54-87EF-D5E1683BE58F", - "name": "bed-empty", - "codepoint": "F08A0", - "aliases": [], - "styles": [], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Home Automation", - "Holiday" - ], - "author": "GreenTurtwig" - }, - { - "id": "D6763D57-A47E-4BFA-A493-5F25C164FB2F", - "baseIconId": "D6763D57-A47E-4BFA-A493-5F25C164FB2F", - "name": "bed-king", - "codepoint": "F0FD2", - "aliases": [ - "bedroom" - ], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Holiday" - ], - "author": "Google" - }, - { - "id": "E84472BF-7730-4700-B468-E5096FD65531", - "baseIconId": "D6763D57-A47E-4BFA-A493-5F25C164FB2F", - "name": "bed-king-outline", - "codepoint": "F0FD1", - "aliases": [ - "bedroom-outline" - ], - "styles": [ - "outline" - ], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Holiday" - ], - "author": "Michael Richins" - }, - { - "id": "860292B0-C722-4829-9E30-AACF00D09C8C", - "baseIconId": "EA62EF73-ACC7-4E54-87EF-D5E1683BE58F", - "name": "bed-outline", - "codepoint": "F0099", - "aliases": [ - "hotel-outline", - "guest-room-outline" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation", - "Holiday" - ], - "author": "Google" - }, - { - "id": "0DB69F3A-8C9B-48D0-8D37-5A1CF6B03B68", - "baseIconId": "D6763D57-A47E-4BFA-A493-5F25C164FB2F", - "name": "bed-queen", - "codepoint": "F0FD0", - "aliases": [ - "bedroom" - ], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Holiday" - ], - "author": "Michael Richins" - }, - { - "id": "DC8A5BF4-BEA0-4D7D-B364-4765854CD4CE", - "baseIconId": "D6763D57-A47E-4BFA-A493-5F25C164FB2F", - "name": "bed-queen-outline", - "codepoint": "F0FDB", - "aliases": [ - "bedroom-outline" - ], - "styles": [ - "outline" - ], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Holiday" - ], - "author": "Michael Richins" - }, - { - "id": "A9C924A7-EAA8-42FC-963A-C74E36448A1B", - "baseIconId": "D6763D57-A47E-4BFA-A493-5F25C164FB2F", - "name": "bed-single", - "codepoint": "F106D", - "aliases": [ - "bedroom" - ], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Holiday" - ], - "author": "Simran" - }, - { - "id": "C9FEB434-571C-41C6-A0E5-1FA68368ACC3", - "baseIconId": "D6763D57-A47E-4BFA-A493-5F25C164FB2F", - "name": "bed-single-outline", - "codepoint": "F106E", - "aliases": [ - "bedroom-outline" - ], - "styles": [ - "outline" - ], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Holiday" - ], - "author": "Simran" - }, - { - "id": "8B580447-CD93-41E8-BDB0-F37DAE420D3A", - "baseIconId": "8B580447-CD93-41E8-BDB0-F37DAE420D3A", - "name": "bee", - "codepoint": "F0FA1", - "aliases": [ - "fly", - "insect" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Nature", - "Agriculture", - "Animal" - ], - "author": "Google" - }, - { - "id": "ED379BAE-ED56-474D-87C3-8B43D5207766", - "baseIconId": "8B580447-CD93-41E8-BDB0-F37DAE420D3A", - "name": "bee-flower", - "codepoint": "F0FA2", - "aliases": [ - "fly-flower", - "nature" - ], - "styles": [ - "variant" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Nature", - "Agriculture" - ], - "author": "Google" - }, - { - "id": "47006F8F-3A47-4D8A-9224-CF1F823E1B35", - "baseIconId": "667E2F2C-B896-48EF-B5F9-EF9436A8BE4B", - "name": "beehive-off-outline", - "codepoint": "F13ED", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Nature", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "667E2F2C-B896-48EF-B5F9-EF9436A8BE4B", - "baseIconId": "667E2F2C-B896-48EF-B5F9-EF9436A8BE4B", - "name": "beehive-outline", - "codepoint": "F10CE", - "aliases": [ - "honey-outline" - ], - "styles": [ - "outline" - ], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Nature", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "520FBDF0-4EB1-4413-89F9-AB4E3518FA38", - "baseIconId": "520FBDF0-4EB1-4413-89F9-AB4E3518FA38", - "name": "beekeeper", - "codepoint": "F14E2", - "aliases": [ - "apiarists", - "apiculturists", - "honey-farmer" - ], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Nature", - "Agriculture" - ], - "author": "guenth39" - }, - { - "id": "9D9A73D2-0780-4141-95A3-CDFE21E6D4D6", - "baseIconId": "9D9A73D2-0780-4141-95A3-CDFE21E6D4D6", - "name": "beer", - "codepoint": "F0098", - "aliases": [ - "pint", - "pub", - "bar", - "drink", - "cup-full" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Austin Andrews" - }, - { - "id": "524E1789-7B3A-4BAD-9D04-2E8FD838DCFB", - "baseIconId": "9D9A73D2-0780-4141-95A3-CDFE21E6D4D6", - "name": "beer-outline", - "codepoint": "F130C", - "aliases": [ - "drink-outline", - "cup-full-outline", - "pint-outline", - "pub-outline", - "bar-outline" - ], - "styles": [ - "outline" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Simran" - }, - { - "id": "45fea174-07db-11e4-bf19-842b2b6cfe1b", - "baseIconId": "45fea174-07db-11e4-bf19-842b2b6cfe1b", - "name": "bell", - "codepoint": "F009A", - "aliases": [ - "notifications" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Notification", - "Home Automation", - "Music" - ], - "author": "Google" - }, - { - "id": "376D7457-2DC3-463A-B4D9-4F170E0B19FB", - "baseIconId": "45fea174-07db-11e4-bf19-842b2b6cfe1b", - "name": "bell-alert", - "codepoint": "F0D59", - "aliases": [ - "bell-warning" - ], - "styles": [ - "alert" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Alert \/ Error", - "Notification" - ], - "author": "Simran" - }, - { - "id": "2E15CEB7-FC9C-4822-94CF-D84F99824F3C", - "baseIconId": "45fea174-07db-11e4-bf19-842b2b6cfe1b", - "name": "bell-alert-outline", - "codepoint": "F0E81", - "aliases": [], - "styles": [ - "alert", - "outline" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Alert \/ Error", - "Notification" - ], - "author": "Simran" - }, - { - "id": "9DA90BB6-B525-47A8-879F-66EC572FE31B", - "baseIconId": "45fea174-07db-11e4-bf19-842b2b6cfe1b", - "name": "bell-badge", - "codepoint": "F116B", - "aliases": [ - "bell-notification" - ], - "styles": [ - "badge" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Notification" - ], - "author": "Michael Irigoyen" - }, - { - "id": "42F0733E-F36F-491B-ADC9-AC8ABAF2C0B7", - "baseIconId": "45fea174-07db-11e4-bf19-842b2b6cfe1b", - "name": "bell-badge-outline", - "codepoint": "F0178", - "aliases": [ - "bell-notification-outline" - ], - "styles": [ - "badge", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Notification" - ], - "author": "Michael Irigoyen" - }, - { - "id": "61CFFDEC-BE16-404E-8ECA-F911F8105C7C", - "baseIconId": "45fea174-07db-11e4-bf19-842b2b6cfe1b", - "name": "bell-cancel", - "codepoint": "F13E7", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Notification" - ], - "author": "Simran" - }, - { - "id": "5CA70271-00B4-4412-B082-FED05EFF165A", - "baseIconId": "45fea174-07db-11e4-bf19-842b2b6cfe1b", - "name": "bell-cancel-outline", - "codepoint": "F13E8", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Notification" - ], - "author": "Simran" - }, - { - "id": "A00A7DBE-44BB-4843-B740-FAAB76357B03", - "baseIconId": "45fea174-07db-11e4-bf19-842b2b6cfe1b", - "name": "bell-check", - "codepoint": "F11E5", - "aliases": [], - "styles": [ - "check" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Notification" - ], - "author": "GreenTurtwig" - }, - { - "id": "510AFFA1-DEEE-4A0B-B596-611969C5934D", - "baseIconId": "45fea174-07db-11e4-bf19-842b2b6cfe1b", - "name": "bell-check-outline", - "codepoint": "F11E6", - "aliases": [], - "styles": [ - "check", - "outline" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Notification" - ], - "author": "GreenTurtwig" - }, - { - "id": "D811F01E-BDFB-496F-866C-70533A343B57", - "baseIconId": "45fea174-07db-11e4-bf19-842b2b6cfe1b", - "name": "bell-circle", - "codepoint": "F0D5A", - "aliases": [], - "styles": [ - "circle" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Notification" - ], - "author": "Google" - }, - { - "id": "204DDC9C-1546-44DF-829D-2EA5AA299804", - "baseIconId": "45fea174-07db-11e4-bf19-842b2b6cfe1b", - "name": "bell-circle-outline", - "codepoint": "F0D5B", - "aliases": [], - "styles": [ - "circle", - "outline" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Notification" - ], - "author": "Google" - }, - { - "id": "8191437C-298C-4A5F-8EC3-A2DA4584BF0D", - "baseIconId": "45fea174-07db-11e4-bf19-842b2b6cfe1b", - "name": "bell-cog", - "codepoint": "F1A29", - "aliases": [ - "bell-settings", - "notification-settings" - ], - "styles": [ - "cog" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Notification", - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "51BF300C-2921-4364-B362-56E4D81DA629", - "baseIconId": "45fea174-07db-11e4-bf19-842b2b6cfe1b", - "name": "bell-cog-outline", - "codepoint": "F1A2A", - "aliases": [ - "bell-settings-outline", - "notification-settings-outline" - ], - "styles": [ - "cog", - "outline" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Notification", - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "C25507E4-8865-47BF-A6AB-D97978AB4397", - "baseIconId": "45fea174-07db-11e4-bf19-842b2b6cfe1b", - "name": "bell-minus", - "codepoint": "F13E9", - "aliases": [], - "styles": [ - "minus" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Notification" - ], - "author": "Simran" - }, - { - "id": "7344702F-0680-4095-BF7E-D9AFDE650703", - "baseIconId": "45fea174-07db-11e4-bf19-842b2b6cfe1b", - "name": "bell-minus-outline", - "codepoint": "F13EA", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Notification" - ], - "author": "Simran" - }, - { - "id": "69686D8F-75FE-4091-9061-88DB64D95C01", - "baseIconId": "45fea174-07db-11e4-bf19-842b2b6cfe1b", - "name": "bell-off", - "codepoint": "F009B", - "aliases": [ - "notifications-off" - ], - "styles": [ - "off" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Notification" - ], - "author": "Google" - }, - { - "id": "6C0FD819-5174-4CCA-8A63-2CEE9F6EE71E", - "baseIconId": "45fea174-07db-11e4-bf19-842b2b6cfe1b", - "name": "bell-off-outline", - "codepoint": "F0A91", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Notification" - ], - "author": "Google" - }, - { - "id": "70A190E9-6F1D-40DB-81D4-C9516949DF0B", - "baseIconId": "45fea174-07db-11e4-bf19-842b2b6cfe1b", - "name": "bell-outline", - "codepoint": "F009C", - "aliases": [ - "notifications-none" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Notification", - "Music", - "Home Automation" - ], - "author": "Google" - }, - { - "id": "FC07FF46-2FD1-4E4E-8D35-BADDEEB5F531", - "baseIconId": "45fea174-07db-11e4-bf19-842b2b6cfe1b", - "name": "bell-plus", - "codepoint": "F009D", - "aliases": [ - "add-alert", - "bell-add" - ], - "styles": [ - "plus" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Notification" - ], - "author": "Simran" - }, - { - "id": "45FB036D-61D0-4390-9F15-480121F2CE3B", - "baseIconId": "45fea174-07db-11e4-bf19-842b2b6cfe1b", - "name": "bell-plus-outline", - "codepoint": "F0A92", - "aliases": [ - "bell-add-outline", - "add-alert-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Notification" - ], - "author": "Simran" - }, - { - "id": "16A7DF47-4674-4439-9E33-ADE491DFC806", - "baseIconId": "45fea174-07db-11e4-bf19-842b2b6cfe1b", - "name": "bell-remove", - "codepoint": "F13EB", - "aliases": [], - "styles": [ - "remove" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Notification" - ], - "author": "Simran" - }, - { - "id": "BFCC1A57-A94F-4104-BCBF-980E9D8B2B6C", - "baseIconId": "45fea174-07db-11e4-bf19-842b2b6cfe1b", - "name": "bell-remove-outline", - "codepoint": "F13EC", - "aliases": [], - "styles": [ - "outline", - "remove" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Notification" - ], - "author": "Simran" - }, - { - "id": "CD75C484-B1AD-492B-8CAA-9F002398C3CA", - "baseIconId": "45fea174-07db-11e4-bf19-842b2b6cfe1b", - "name": "bell-ring", - "codepoint": "F009E", - "aliases": [ - "notifications-active" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Notification" - ], - "author": "Google" - }, - { - "id": "EE7DADC1-CF66-4922-B0C9-9B8F753514F9", - "baseIconId": "45fea174-07db-11e4-bf19-842b2b6cfe1b", - "name": "bell-ring-outline", - "codepoint": "F009F", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Notification" - ], - "author": "Google" - }, - { - "id": "43BD9E91-2044-4B80-AF87-2FC810C42A1B", - "baseIconId": "45fea174-07db-11e4-bf19-842b2b6cfe1b", - "name": "bell-sleep", - "codepoint": "F00A0", - "aliases": [ - "notifications-paused" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Notification" - ], - "author": "Google" - }, - { - "id": "91193FC6-AF35-46FD-A05E-6AA99D6EA99F", - "baseIconId": "45fea174-07db-11e4-bf19-842b2b6cfe1b", - "name": "bell-sleep-outline", - "codepoint": "F0A93", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Notification" - ], - "author": "Google" - }, - { - "id": "0A408C8A-FD39-4160-9547-3A7895BCE942", - "baseIconId": "0A408C8A-FD39-4160-9547-3A7895BCE942", - "name": "bench", - "codepoint": "F1C21", - "aliases": [], - "styles": [], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "FA105BDA-FD31-4A8E-86AD-1C02073B05B7", - "baseIconId": "0A408C8A-FD39-4160-9547-3A7895BCE942", - "name": "bench-back", - "codepoint": "F1C22", - "aliases": [], - "styles": [], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "4F83A19F-BAB5-4894-AC5A-B288AFD592DC", - "baseIconId": "4F83A19F-BAB5-4894-AC5A-B288AFD592DC", - "name": "beta", - "codepoint": "F00A1", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Austin Andrews" - }, - { - "id": "5FA9C13A-087C-452E-966F-4C2FCE336C68", - "baseIconId": "5FA9C13A-087C-452E-966F-4C2FCE336C68", - "name": "betamax", - "codepoint": "F09CB", - "aliases": [], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "7E88D677-5560-4DF1-A3D0-FC2814BF6612", - "baseIconId": "7E88D677-5560-4DF1-A3D0-FC2814BF6612", - "name": "biathlon", - "codepoint": "F0E14", - "aliases": [ - "human-biathlon" - ], - "styles": [], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Sport", - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "90DDBB60-0BBB-4DFA-9626-32D4D1FB34C5", - "baseIconId": "90DDBB60-0BBB-4DFA-9626-32D4D1FB34C5", - "name": "bicycle", - "codepoint": "F109C", - "aliases": [ - "bike", - "cycling" - ], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Transportation + Other", - "Sport" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "CF4876E1-DEBA-4C41-B5B7-4C90C3EF68F4", - "baseIconId": "90DDBB60-0BBB-4DFA-9626-32D4D1FB34C5", - "name": "bicycle-basket", - "codepoint": "F1235", - "aliases": [ - "bike-basket" - ], - "styles": [ - "variant" - ], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Transportation + Other", - "Sport" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "63EFAAFD-2EB5-4600-930D-33CEDDC182A5", - "baseIconId": "90DDBB60-0BBB-4DFA-9626-32D4D1FB34C5", - "name": "bicycle-cargo", - "codepoint": "F189C", - "aliases": [ - "bike-cargo" - ], - "styles": [ - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Transportation + Other", - "Sport" - ], - "author": "Teodor Sandu" - }, - { - "id": "3923C397-5A00-472A-8FDC-FBBAAF3FA323", - "baseIconId": "90DDBB60-0BBB-4DFA-9626-32D4D1FB34C5", - "name": "bicycle-electric", - "codepoint": "F15B4", - "aliases": [ - "bike-electric" - ], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A7A362D7-385E-4026-A43F-BBF13E8D4B37", - "baseIconId": "90DDBB60-0BBB-4DFA-9626-32D4D1FB34C5", - "name": "bicycle-penny-farthing", - "codepoint": "F15E9", - "aliases": [ - "bicycle-high-wheel", - "bicycle-antique" - ], - "styles": [ - "variant" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Transportation + Other", - "Sport" - ], - "author": "Colton Wiscombe" - }, - { - "id": "627C7FF1-BCAD-4741-966E-7CED73B35DC2", - "baseIconId": "627C7FF1-BCAD-4741-966E-7CED73B35DC2", - "name": "bike", - "codepoint": "F00A3", - "aliases": [ - "bicycle", - "cycling", - "directions-bike" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Other", - "Sport" - ], - "author": "Google" - }, - { - "id": "2C312B6E-73D4-4A98-A701-D49E31F95E7B", - "baseIconId": "627C7FF1-BCAD-4741-966E-7CED73B35DC2", - "name": "bike-fast", - "codepoint": "F111F", - "aliases": [ - "velocity" - ], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Transportation + Other", - "Sport" - ], - "author": "GreenTurtwig" - }, - { - "id": "31FF4583-E8CF-45E3-9F21-F75022605846", - "baseIconId": "31FF4583-E8CF-45E3-9F21-F75022605846", - "name": "bike-pedal", - "codepoint": "F1C23", - "aliases": [ - "bike-pedal-flat" - ], - "styles": [], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Transportation + Other", - "Sport" - ], - "author": "Jeff Anders" - }, - { - "id": "25F25042-2064-4655-A19C-F9761ABF0EC7", - "baseIconId": "31FF4583-E8CF-45E3-9F21-F75022605846", - "name": "bike-pedal-clipless", - "codepoint": "F1C24", - "aliases": [], - "styles": [], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Transportation + Other", - "Sport" - ], - "author": "Jeff Anders" - }, - { - "id": "E609D6B1-16E0-43BA-9674-6F2E5924504E", - "baseIconId": "31FF4583-E8CF-45E3-9F21-F75022605846", - "name": "bike-pedal-mountain", - "codepoint": "F1C25", - "aliases": [], - "styles": [], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Transportation + Other", - "Sport" - ], - "author": "Jeff Anders" - }, - { - "id": "645C4EDB-9339-4784-8AE9-BD60F8460CAE", - "baseIconId": "645C4EDB-9339-4784-8AE9-BD60F8460CAE", - "name": "billboard", - "codepoint": "F1010", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "6FFE2C93-4350-4706-9694-1674F96855EA", - "baseIconId": "6FFE2C93-4350-4706-9694-1674F96855EA", - "name": "billiards", - "codepoint": "F0B61", - "aliases": [ - "pool", - "eight-ball" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Michael Richins" - }, - { - "id": "2ED0EE4C-D928-41C6-8D5D-3AA3A2DF7AF6", - "baseIconId": "2ED0EE4C-D928-41C6-8D5D-3AA3A2DF7AF6", - "name": "billiards-rack", - "codepoint": "F0B62", - "aliases": [ - "pool-table", - "pool-rack", - "snooker-rack", - "pool-triangle", - "billiards-triangle", - "snooker-triangle" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Michael Richins" - }, - { - "id": "75806AA4-294B-4A0A-8BDB-FC4CABCA1768", - "baseIconId": "75806AA4-294B-4A0A-8BDB-FC4CABCA1768", - "name": "binoculars", - "codepoint": "F00A5", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "F5D76655-0F6E-4FF2-AC74-CC3A235B7FC6", - "baseIconId": "F5D76655-0F6E-4FF2-AC74-CC3A235B7FC6", - "name": "bio", - "codepoint": "F00A6", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "96BDE572-9D10-47D0-919F-68EB6CD3DFA9", - "baseIconId": "96BDE572-9D10-47D0-919F-68EB6CD3DFA9", - "name": "biohazard", - "codepoint": "F00A7", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Yasmina Lembachar" - }, - { - "id": "18622D72-42B2-4919-BDB5-DCC77310045B", - "baseIconId": "18622D72-42B2-4919-BDB5-DCC77310045B", - "name": "bird", - "codepoint": "F15C6", - "aliases": [], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B48BB714-F66F-4D86-9864-051DB90AE197", - "baseIconId": "B48BB714-F66F-4D86-9864-051DB90AE197", - "name": "bitbucket", - "codepoint": "F00A8", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "9C8A35A5-86B5-4B10-BEE9-93CDFAF15B9C", - "baseIconId": "9C8A35A5-86B5-4B10-BEE9-93CDFAF15B9C", - "name": "bitcoin", - "codepoint": "F0813", - "aliases": [], - "styles": [], - "version": "2.1.19", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Banking", - "Currency" - ], - "author": "Contributors" - }, - { - "id": "1F233821-5ED4-4CB3-8933-9A16C05D7AC9", - "baseIconId": "1F233821-5ED4-4CB3-8933-9A16C05D7AC9", - "name": "black-mesa", - "codepoint": "F00A9", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Gaming \/ RPG" - ], - "author": "Contributors" - }, - { - "id": "AC980D29-7F19-4356-970E-A147CFEB64E3", - "baseIconId": "AC980D29-7F19-4356-970E-A147CFEB64E3", - "name": "blender", - "codepoint": "F0CEB", - "aliases": [ - "food-processor" - ], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Home Automation" - ], - "author": "Google" - }, - { - "id": "C8C79C9B-59FC-417E-9516-E5351594A994", - "baseIconId": "AC980D29-7F19-4356-970E-A147CFEB64E3", - "name": "blender-outline", - "codepoint": "F181A", - "aliases": [ - "food-processor-outline" - ], - "styles": [ - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Food \/ Drink" - ], - "author": "Google" - }, - { - "id": "F365BC90-C8EC-4A5C-99FB-C2ED27B5593A", - "baseIconId": "F365BC90-C8EC-4A5C-99FB-C2ED27B5593A", - "name": "blender-software", - "codepoint": "F00AB", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "926ACBEB-C5F6-4EF4-829E-E0B05501DDD6", - "baseIconId": "926ACBEB-C5F6-4EF4-829E-E0B05501DDD6", - "name": "blinds", - "codepoint": "F00AC", - "aliases": [ - "roller-shade-closed", - "window-closed" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "2E6100FD-8F6C-423C-BC18-372F8D57DC59", - "baseIconId": "2E6100FD-8F6C-423C-BC18-372F8D57DC59", - "name": "blinds-horizontal", - "codepoint": "F1A2B", - "aliases": [ - "blinds-open", - "mini-blinds", - "window-open" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "18949103-543E-4756-83E4-394E60DD1036", - "baseIconId": "2E6100FD-8F6C-423C-BC18-372F8D57DC59", - "name": "blinds-horizontal-closed", - "codepoint": "F1A2C", - "aliases": [ - "mini-blinds", - "window-closed" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "5DCCF3FA-F418-4052-9B93-6FA85C2659F5", - "baseIconId": "926ACBEB-C5F6-4EF4-829E-E0B05501DDD6", - "name": "blinds-open", - "codepoint": "F1011", - "aliases": [ - "roller-shade-open", - "window-open" - ], - "styles": [ - "variant" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "idevo89" - }, - { - "id": "F57CEB13-5A41-498C-BCF5-D7036E7B1122", - "baseIconId": "F57CEB13-5A41-498C-BCF5-D7036E7B1122", - "name": "blinds-vertical", - "codepoint": "F1A2D", - "aliases": [ - "window" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "293F404C-5568-4F17-A6EB-0750931EE2B6", - "baseIconId": "F57CEB13-5A41-498C-BCF5-D7036E7B1122", - "name": "blinds-vertical-closed", - "codepoint": "F1A2E", - "aliases": [ - "window-closed" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "5832B598-DAAA-4497-B995-CF940A1C7F20", - "baseIconId": "5832B598-DAAA-4497-B995-CF940A1C7F20", - "name": "block-helper", - "codepoint": "F00AD", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "FA540210-0F58-4D2A-86BA-E202B520C8DA", - "baseIconId": "FA540210-0F58-4D2A-86BA-E202B520C8DA", - "name": "blood-bag", - "codepoint": "F0CEC", - "aliases": [], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7CBB03E7-EAC6-44C2-8C28-A78728F8BB7B", - "baseIconId": "7CBB03E7-EAC6-44C2-8C28-A78728F8BB7B", - "name": "bluetooth", - "codepoint": "F00AF", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Contributors" - }, - { - "id": "6639774A-9027-4D20-AE57-24C78EF41141", - "baseIconId": "7CBB03E7-EAC6-44C2-8C28-A78728F8BB7B", - "name": "bluetooth-audio", - "codepoint": "F00B0", - "aliases": [ - "bluetooth-searching" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio" - ], - "author": "Google" - }, - { - "id": "1E123F41-EA93-4085-8446-88F50C501A6F", - "baseIconId": "7CBB03E7-EAC6-44C2-8C28-A78728F8BB7B", - "name": "bluetooth-connect", - "codepoint": "F00B1", - "aliases": [ - "bluetooth-connected" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "CEB015C9-455E-4551-A898-7A992658CF72", - "baseIconId": "7CBB03E7-EAC6-44C2-8C28-A78728F8BB7B", - "name": "bluetooth-off", - "codepoint": "F00B2", - "aliases": [ - "bluetooth-disabled" - ], - "styles": [ - "off" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "E5DEA4AB-58E1-45CF-81EF-1A98594C5884", - "baseIconId": "7CBB03E7-EAC6-44C2-8C28-A78728F8BB7B", - "name": "bluetooth-settings", - "codepoint": "F00B3", - "aliases": [ - "settings-bluetooth" - ], - "styles": [ - "settings" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Google" - }, - { - "id": "A0D9FDB0-B6D8-43F9-A418-01B78336C84C", - "baseIconId": "7CBB03E7-EAC6-44C2-8C28-A78728F8BB7B", - "name": "bluetooth-transfer", - "codepoint": "F00B4", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "FAFCB184-2AAD-4E83-924F-1C37F1EDF956", - "baseIconId": "FAFCB184-2AAD-4E83-924F-1C37F1EDF956", - "name": "blur", - "codepoint": "F00B5", - "aliases": [ - "blur-on" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "B23B281D-C753-468E-A0D1-79C2963346C8", - "baseIconId": "FAFCB184-2AAD-4E83-924F-1C37F1EDF956", - "name": "blur-linear", - "codepoint": "F00B6", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "4F541CC2-7659-4230-A307-6E5D515C529B", - "baseIconId": "FAFCB184-2AAD-4E83-924F-1C37F1EDF956", - "name": "blur-off", - "codepoint": "F00B7", - "aliases": [], - "styles": [ - "off" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "29F42A3B-BCD5-45BA-9B87-35F97FE9438D", - "baseIconId": "FAFCB184-2AAD-4E83-924F-1C37F1EDF956", - "name": "blur-radial", - "codepoint": "F00B8", - "aliases": [ - "blur-circular" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "4371183D-0D2B-4512-8069-93834BC85DE7", - "baseIconId": "744539B5-EC00-481D-9A78-274A157CF130", - "name": "bolt", - "codepoint": "F0DB3", - "aliases": [], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7DC40C3F-3733-48AF-94C7-5454FB849A49", - "baseIconId": "7DC40C3F-3733-48AF-94C7-5454FB849A49", - "name": "bomb", - "codepoint": "F0691", - "aliases": [], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "DEC98F6C-E85D-400C-87CD-6AE692583838", - "baseIconId": "7DC40C3F-3733-48AF-94C7-5454FB849A49", - "name": "bomb-off", - "codepoint": "F06C5", - "aliases": [], - "styles": [ - "off" - ], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Roberto Graham" - }, - { - "id": "7FCD9594-B235-45D5-8504-A41F251FD50E", - "baseIconId": "7FCD9594-B235-45D5-8504-A41F251FD50E", - "name": "bone", - "codepoint": "F00B9", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Animal", - "Holiday" - ], - "author": "Austin Andrews" - }, - { - "id": "2ECDAB32-FFDA-4E29-9465-D932794C53EF", - "baseIconId": "7FCD9594-B235-45D5-8504-A41F251FD50E", - "name": "bone-off", - "codepoint": "F19E0", - "aliases": [], - "styles": [ - "off" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Animal", - "Holiday" - ], - "author": "Simran" - }, - { - "id": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book", - "codepoint": "F00BA", - "aliases": [ - "git-repository" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "D4247A9D-BD96-40AC-8C4E-A9A255DF5160", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-account", - "codepoint": "F13AD", - "aliases": [], - "styles": [ - "account" - ], - "version": "5.0.45", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Richins" - }, - { - "id": "C9126B03-23E9-457D-9249-ADB88EA6F0E4", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-account-outline", - "codepoint": "F13AE", - "aliases": [], - "styles": [ - "account", - "outline" - ], - "version": "5.0.45", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Richins" - }, - { - "id": "08CE9E71-4426-4186-8573-7B2EDFE28F7D", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-alert", - "codepoint": "F167C", - "aliases": [], - "styles": [ - "alert" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Colton Wiscombe" - }, - { - "id": "6DDFDD69-EBA5-4BFB-A44F-6B84A7B3A4BC", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-alert-outline", - "codepoint": "F167D", - "aliases": [], - "styles": [ - "alert", - "outline" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Colton Wiscombe" - }, - { - "id": "250BF541-072A-4773-8BC2-B1943DF1EDBB", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-alphabet", - "codepoint": "F061D", - "aliases": [ - "dictionary" - ], - "styles": [ - "variant" - ], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Christopher Schreiner" - }, - { - "id": "7B6400CF-D8CF-418B-A400-CDCA1D58E813", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-arrow-down", - "codepoint": "F167E", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "7B9920BE-2895-4D38-A981-5E416D76403A", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-arrow-down-outline", - "codepoint": "F167F", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "5D776E4B-7F6C-4385-A892-964B3F800F30", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-arrow-left", - "codepoint": "F1680", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "1730A6B3-D405-4F4B-A12D-0957B5B268D7", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-arrow-left-outline", - "codepoint": "F1681", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "2780AAEC-BE71-4C4A-8C02-7BCDBE521D74", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-arrow-right", - "codepoint": "F1682", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "CCBCE4D7-2799-433B-AF47-A5105E45779A", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-arrow-right-outline", - "codepoint": "F1683", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "E724EA9A-002E-4A3E-9275-690258105F1D", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-arrow-up", - "codepoint": "F1684", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "D3DE3980-8DF9-4FED-B08D-F04B5610B84D", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-arrow-up-outline", - "codepoint": "F1685", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "8D3C8531-8EAD-43FC-9139-B1A9D2BEB63D", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-cancel", - "codepoint": "F1686", - "aliases": [], - "styles": [ - "cancel" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "FA64FF4E-C720-4635-90EF-D4A913168329", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-cancel-outline", - "codepoint": "F1687", - "aliases": [], - "styles": [ - "cancel", - "outline" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "ADF6BB0F-12F3-498F-B31A-07F6BFFFDF9D", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-check", - "codepoint": "F14F3", - "aliases": [], - "styles": [ - "check" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "32A94643-61F6-4F21-BB4D-68932CB98FB4", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-check-outline", - "codepoint": "F14F4", - "aliases": [], - "styles": [ - "check", - "outline" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "97CCD006-4DE0-4AEE-BB95-D9EBCCDE8012", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-clock", - "codepoint": "F1688", - "aliases": [ - "book-schedule", - "book-time" - ], - "styles": [ - "clock" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "EFEC2FA7-18B1-4753-88C4-E2531FA96DD5", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-clock-outline", - "codepoint": "F1689", - "aliases": [ - "book-schedule", - "book-time" - ], - "styles": [ - "clock", - "outline" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "36C20B8A-AA61-49D5-9500-16917BBDF388", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-cog", - "codepoint": "F168A", - "aliases": [ - "book-settings" - ], - "styles": [ - "cog" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "B63BFA22-6A8E-48FD-8BDB-E82BB550411D", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-cog-outline", - "codepoint": "F168B", - "aliases": [ - "book-settings-outline" - ], - "styles": [ - "cog", - "outline" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "CC30F9D0-3076-4189-A00D-F570D5B0C5D1", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-cross", - "codepoint": "F00A2", - "aliases": [ - "bible" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Religion" - ], - "author": "Christopher Schreiner" - }, - { - "id": "CF11FAB5-CEE6-4F8D-9E64-67285419FF62", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-edit", - "codepoint": "F168C", - "aliases": [], - "styles": [ - "edit" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Colton Wiscombe" - }, - { - "id": "615E9F0E-F80A-4806-8023-F3B5E47A0F07", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-edit-outline", - "codepoint": "F168D", - "aliases": [], - "styles": [ - "edit", - "outline" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Colton Wiscombe" - }, - { - "id": "B115D616-1428-4D6B-84D7-643900FBEF77", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-education", - "codepoint": "F16C9", - "aliases": [], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "2C5308E6-760F-4CD8-A2CF-DD3B5434B0A0", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-education-outline", - "codepoint": "F16CA", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "4A830C97-1A09-495F-91A5-8F02571C54C6", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-heart", - "codepoint": "F1A1D", - "aliases": [ - "book-favorite", - "book-love" - ], - "styles": [], - "version": "6.6.96", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "72206137-0CFE-4A3C-BA21-16EB71D39821", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-heart-outline", - "codepoint": "F1A1E", - "aliases": [ - "book-favorite-outline", - "book-love-outline" - ], - "styles": [ - "outline" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "4A6A20D1-3F8E-440A-BFB1-38CFB3FB3EC6", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-information-variant", - "codepoint": "F106F", - "aliases": [ - "encyclopedia" - ], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [], - "author": "Terren" - }, - { - "id": "121AF367-3AE5-48D1-9868-8DC60342D4A0", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-lock", - "codepoint": "F079A", - "aliases": [ - "book-secure" - ], - "styles": [ - "lock" - ], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Michael Richins" - }, - { - "id": "90B49606-B4FF-4D4B-AE05-4769659094CE", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-lock-open", - "codepoint": "F079B", - "aliases": [ - "book-unsecure" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Michael Richins" - }, - { - "id": "F4804DDA-AD18-4DAF-A916-F0F6DC23F0A5", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-lock-open-outline", - "codepoint": "F168E", - "aliases": [], - "styles": [ - "lock", - "outline" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "2E088838-572B-45AC-B250-1C86900B787E", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-lock-outline", - "codepoint": "F168F", - "aliases": [ - "book-secure-outline" - ], - "styles": [ - "lock", - "outline" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "D5DCE615-BCFA-4922-8F95-5CEA756FD378", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-marker", - "codepoint": "F1690", - "aliases": [ - "book-location" - ], - "styles": [ - "marker" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "69EBC2C1-A3D3-42E6-9868-3E97DD6DD301", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-marker-outline", - "codepoint": "F1691", - "aliases": [ - "book-location-outline" - ], - "styles": [ - "marker", - "outline" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "7367B5F0-8155-4F3D-9C7E-BFDF677442D8", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-minus", - "codepoint": "F05D9", - "aliases": [], - "styles": [ - "minus" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "6B536CF6-98D8-44A5-9094-43C1BE41EC91", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-minus-multiple", - "codepoint": "F0A94", - "aliases": [ - "books-minus" - ], - "styles": [ - "minus", - "multiple" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Perth Totty" - }, - { - "id": "2AF5ACED-6980-4A66-B010-629C3E371315", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-minus-multiple-outline", - "codepoint": "F090B", - "aliases": [], - "styles": [ - "minus", - "multiple", - "outline" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "402AE77A-79CC-42EF-9FB7-7D11D2C949DA", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-minus-outline", - "codepoint": "F1692", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "637C4988-5432-4F5E-ADD5-EBDC397D0622", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-multiple", - "codepoint": "F00BB", - "aliases": [ - "books" - ], - "styles": [ - "multiple" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "B58005AE-8DFA-4C34-AC4D-C14DEF3D35C2", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-multiple-outline", - "codepoint": "F0436", - "aliases": [], - "styles": [ - "multiple", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "10BCB9E5-2E1F-4CD0-871F-B36FA0595004", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-music", - "codepoint": "F0067", - "aliases": [ - "audio-book" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio", - "Music" - ], - "author": "Austin Andrews" - }, - { - "id": "22B56C5C-000D-49DB-9D8A-DDD312662DFB", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-music-outline", - "codepoint": "F1693", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Colton Wiscombe" - }, - { - "id": "52463F43-10D2-41DC-B4EB-45DDE9A4E655", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-off", - "codepoint": "F1694", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "C9B4D51E-AA3F-49D4-9603-CC5CA33EB28A", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-off-outline", - "codepoint": "F1695", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "7EFAD89C-D84E-41F0-A8A4-F72AC8DB470C", - "baseIconId": "7EFAD89C-D84E-41F0-A8A4-F72AC8DB470C", - "name": "book-open", - "codepoint": "F00BD", - "aliases": [ - "chrome-reader-mode" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "08C8BAF9-6B91-458D-BE03-F6A7AABEA2AB", - "baseIconId": "7EFAD89C-D84E-41F0-A8A4-F72AC8DB470C", - "name": "book-open-blank-variant", - "codepoint": "F00BE", - "aliases": [ - "import-contacts" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "BA5E15E3-923B-464B-ACEA-F2958F6782F7", - "baseIconId": "7EFAD89C-D84E-41F0-A8A4-F72AC8DB470C", - "name": "book-open-outline", - "codepoint": "F0B63", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "113421A1-241F-4479-B22B-5F56EFD63D4C", - "baseIconId": "7EFAD89C-D84E-41F0-A8A4-F72AC8DB470C", - "name": "book-open-page-variant", - "codepoint": "F05DA", - "aliases": [ - "auto-stories" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "3653D788-AC33-42D4-ADE4-F91A1C373973", - "baseIconId": "7EFAD89C-D84E-41F0-A8A4-F72AC8DB470C", - "name": "book-open-page-variant-outline", - "codepoint": "F15D6", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "E5928511-4156-4086-B58D-A2B235A3F824", - "baseIconId": "7EFAD89C-D84E-41F0-A8A4-F72AC8DB470C", - "name": "book-open-variant", - "codepoint": "F14F7", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "D1558D49-BCE0-4539-9560-DB05153356AF", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-outline", - "codepoint": "F0B64", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "89E22D2B-FF72-4242-BEE1-7865F974CF51", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-play", - "codepoint": "F0E82", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "8A87B5DD-D8DF-43A8-BFDD-D127E6F48792", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-play-outline", - "codepoint": "F0E83", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "3C49BDB2-C3A3-4E0C-9314-19FE66414A5B", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-plus", - "codepoint": "F05DB", - "aliases": [ - "book-add" - ], - "styles": [ - "plus" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "9A754066-7A7A-4362-9530-C8500B178DED", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-plus-multiple", - "codepoint": "F0A95", - "aliases": [ - "books-plus", - "book-multiple-add", - "books-add" - ], - "styles": [ - "multiple", - "plus" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Perth Totty" - }, - { - "id": "129A1ABB-F616-4750-8814-018A12FE9D88", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-plus-multiple-outline", - "codepoint": "F0ADE", - "aliases": [], - "styles": [ - "multiple", - "outline", - "plus" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "58B6134A-73CF-4E0E-AB85-DCBFB6B6766B", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-plus-outline", - "codepoint": "F1696", - "aliases": [], - "styles": [ - "outline", - "plus" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "CFAA64B9-8047-4713-AD53-574A398F187F", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-refresh", - "codepoint": "F1697", - "aliases": [], - "styles": [ - "refresh" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "7F62E9BE-F358-4CF8-B3DB-938805F83089", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-refresh-outline", - "codepoint": "F1698", - "aliases": [], - "styles": [ - "outline", - "refresh" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "DAB52460-1820-4BD0-9695-67EBF9E84167", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-remove", - "codepoint": "F0A97", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Perth Totty" - }, - { - "id": "414C568C-94B4-4EC3-9D81-22F747B9D0FC", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-remove-multiple", - "codepoint": "F0A96", - "aliases": [ - "books-remove" - ], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Perth Totty" - }, - { - "id": "32DEB304-15CC-4B30-832E-A1377A57EC47", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-remove-multiple-outline", - "codepoint": "F04CA", - "aliases": [], - "styles": [ - "multiple", - "outline", - "remove" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "CDCF29D7-CED3-45DB-BBC8-ACEA8262738C", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-remove-outline", - "codepoint": "F1699", - "aliases": [], - "styles": [ - "outline", - "remove" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "AE0D918C-8BC9-4D85-B445-62039AD16FB2", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-search", - "codepoint": "F0E84", - "aliases": [], - "styles": [ - "search" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "62AB37D9-3483-4F21-BD4C-44214B668599", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-search-outline", - "codepoint": "F0E85", - "aliases": [], - "styles": [ - "outline", - "search" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "E48C6D20-C8BC-43A0-9F90-A9FBADAB3454", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-settings", - "codepoint": "F169A", - "aliases": [], - "styles": [ - "settings" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "E090B509-20FE-405D-9811-221E533F79F3", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-settings-outline", - "codepoint": "F169B", - "aliases": [], - "styles": [ - "outline", - "settings" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "ACB38262-FB32-456E-AE84-6BCE160F56C4", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-sync", - "codepoint": "F169C", - "aliases": [], - "styles": [ - "sync" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "8C2A47E9-6B8B-4504-A1C7-37EDFD9DC979", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-sync-outline", - "codepoint": "F16C8", - "aliases": [], - "styles": [ - "sync" - ], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "1B9F45CE-CA39-4ACF-8961-4B4B56D6F94A", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "book-variant", - "codepoint": "F00BF", - "aliases": [ - "class" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "690787DD-F7B0-4D32-A668-32657D3A3AE8", - "baseIconId": "690787DD-F7B0-4D32-A668-32657D3A3AE8", - "name": "bookmark", - "codepoint": "F00C0", - "aliases": [ - "turned-in" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "BBEAE49B-BA87-4375-A642-83196A4999F6", - "baseIconId": "BBEAE49B-BA87-4375-A642-83196A4999F6", - "name": "bookmark-box", - "codepoint": "F1B75", - "aliases": [], - "styles": [ - "box" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "84C06231-55E7-4450-B88D-964B33FCACDA", - "baseIconId": "84C06231-55E7-4450-B88D-964B33FCACDA", - "name": "bookmark-box-multiple", - "codepoint": "F196C", - "aliases": [ - "collections-bookmark", - "library-bookmark" - ], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "1F563201-43D7-4CDA-8DB5-5F82A438965D", - "baseIconId": "84C06231-55E7-4450-B88D-964B33FCACDA", - "name": "bookmark-box-multiple-outline", - "codepoint": "F196D", - "aliases": [ - "collections-bookmark-outline", - "library-bookmark-outline" - ], - "styles": [ - "outline" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "93A0AE0D-58F7-4A60-8A24-A0E131A036E2", - "baseIconId": "93A0AE0D-58F7-4A60-8A24-A0E131A036E2", - "name": "bookmark-box-outline", - "codepoint": "F1B76", - "aliases": [], - "styles": [ - "box", - "outline" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "65F155F1-7A9F-49AF-B570-FD6D24553CE5", - "baseIconId": "690787DD-F7B0-4D32-A668-32657D3A3AE8", - "name": "bookmark-check", - "codepoint": "F00C1", - "aliases": [ - "bookmark-tick", - "bookmark-success" - ], - "styles": [ - "check" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "EFBBDF1F-1497-4BA3-AE93-614B2BB496F7", - "baseIconId": "690787DD-F7B0-4D32-A668-32657D3A3AE8", - "name": "bookmark-check-outline", - "codepoint": "F137B", - "aliases": [ - "bookmark-success-outline" - ], - "styles": [ - "check", - "outline" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "AB2B19C4-5114-4D8A-A2EB-4E112B43F383", - "baseIconId": "690787DD-F7B0-4D32-A668-32657D3A3AE8", - "name": "bookmark-minus", - "codepoint": "F09CC", - "aliases": [], - "styles": [ - "minus" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "491E1C5C-650E-41BB-9D44-8F8F2474B657", - "baseIconId": "690787DD-F7B0-4D32-A668-32657D3A3AE8", - "name": "bookmark-minus-outline", - "codepoint": "F09CD", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "28FFD085-27EC-47A7-88A7-989BECA3DDE0", - "baseIconId": "690787DD-F7B0-4D32-A668-32657D3A3AE8", - "name": "bookmark-multiple", - "codepoint": "F0E15", - "aliases": [], - "styles": [ - "multiple" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "4C37E778-2438-4F54-8D08-5B25A7659FB7", - "baseIconId": "690787DD-F7B0-4D32-A668-32657D3A3AE8", - "name": "bookmark-multiple-outline", - "codepoint": "F0E16", - "aliases": [], - "styles": [ - "multiple", - "outline" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "DF4ECEB8-EF5C-4ACC-BC7D-B4FEEE75D17D", - "baseIconId": "690787DD-F7B0-4D32-A668-32657D3A3AE8", - "name": "bookmark-music", - "codepoint": "F00C2", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Austin Andrews" - }, - { - "id": "140B0E5A-4F75-4C53-A9D5-867E4DC020E7", - "baseIconId": "690787DD-F7B0-4D32-A668-32657D3A3AE8", - "name": "bookmark-music-outline", - "codepoint": "F1379", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Simran" - }, - { - "id": "CE74B9A9-5962-4127-ACBE-A1AD4F130A2F", - "baseIconId": "690787DD-F7B0-4D32-A668-32657D3A3AE8", - "name": "bookmark-off", - "codepoint": "F09CE", - "aliases": [], - "styles": [ - "off" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "998B6488-F375-4297-9941-6D8ADC4E7F3C", - "baseIconId": "690787DD-F7B0-4D32-A668-32657D3A3AE8", - "name": "bookmark-off-outline", - "codepoint": "F09CF", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "0EB6BB85-4BE2-4608-BABF-2EF135D420A7", - "baseIconId": "690787DD-F7B0-4D32-A668-32657D3A3AE8", - "name": "bookmark-outline", - "codepoint": "F00C3", - "aliases": [ - "bookmark-border", - "turned-in-not" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "596822BD-8373-402C-9D27-C341405F55F9", - "baseIconId": "690787DD-F7B0-4D32-A668-32657D3A3AE8", - "name": "bookmark-plus", - "codepoint": "F00C5", - "aliases": [ - "bookmark-add" - ], - "styles": [ - "plus" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "DB2B7624-66CB-4E7E-A65F-4CEE8870C6CC", - "baseIconId": "690787DD-F7B0-4D32-A668-32657D3A3AE8", - "name": "bookmark-plus-outline", - "codepoint": "F00C4", - "aliases": [ - "bookmark-add-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "89594C9C-18ED-45EA-A3AC-A91B570D1541", - "baseIconId": "690787DD-F7B0-4D32-A668-32657D3A3AE8", - "name": "bookmark-remove", - "codepoint": "F00C6", - "aliases": [], - "styles": [ - "remove" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "0634B479-2104-4AF4-B442-2E5C407EBEE1", - "baseIconId": "690787DD-F7B0-4D32-A668-32657D3A3AE8", - "name": "bookmark-remove-outline", - "codepoint": "F137A", - "aliases": [], - "styles": [ - "outline", - "remove" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "562F5DDE-E65C-4ACC-98B7-54C0D5406AED", - "baseIconId": "562F5DDE-E65C-4ACC-98B7-54C0D5406AED", - "name": "bookshelf", - "codepoint": "F125F", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Thomas de Saint-Exup\u00e9ry" - }, - { - "id": "D24517D5-27A6-4BE4-B9C8-C575A1431310", - "baseIconId": "D24517D5-27A6-4BE4-B9C8-C575A1431310", - "name": "boom-gate", - "codepoint": "F0E86", - "aliases": [ - "boom-arm", - "boom-barrier", - "arm-barrier", - "barrier", - "automatic-gate" - ], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "2C3B8F49-7A38-49EE-8288-FDA6AC188727", - "baseIconId": "D24517D5-27A6-4BE4-B9C8-C575A1431310", - "name": "boom-gate-alert", - "codepoint": "F0E87", - "aliases": [ - "boom-arm-alert", - "boom-barrier-alert", - "arm-barrier-alert", - "barrier-alert", - "automatic-gate-alert" - ], - "styles": [ - "alert" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Alert \/ Error", - "Transportation + Road" - ], - "author": "Michael Richins" - }, - { - "id": "B138EF8B-B8ED-4792-9967-D4FB4C8E8A98", - "baseIconId": "D24517D5-27A6-4BE4-B9C8-C575A1431310", - "name": "boom-gate-alert-outline", - "codepoint": "F0E88", - "aliases": [ - "boom-arm-alert-outline", - "boom-barrier-alert-outline", - "arm-barrier-alert-outline", - "barrier-alert-outline", - "automatic-gate-alert-outline" - ], - "styles": [ - "alert", - "outline" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Alert \/ Error", - "Transportation + Road" - ], - "author": "Michael Richins" - }, - { - "id": "D9BD19B7-12DD-4557-9DDA-998688CA3CB5", - "baseIconId": "D24517D5-27A6-4BE4-B9C8-C575A1431310", - "name": "boom-gate-arrow-down", - "codepoint": "F0E89", - "aliases": [ - "boom-arm-down", - "boom-barrier-down", - "arm-barrier-down", - "barrier-down", - "automatic-gate-down" - ], - "styles": [ - "arrow", - "bold" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Michael Richins" - }, - { - "id": "F0ED697E-DAA8-4530-8403-C614C8EBCE3B", - "baseIconId": "D24517D5-27A6-4BE4-B9C8-C575A1431310", - "name": "boom-gate-arrow-down-outline", - "codepoint": "F0E8A", - "aliases": [ - "boom-arm-down-outline", - "boom-barrier-down-outline", - "arm-barrier-down-outline", - "barrier-down-outline", - "automatic-gate-down-outline" - ], - "styles": [ - "arrow", - "outline" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Michael Richins" - }, - { - "id": "F9ADF5B2-435F-4820-8790-EAA72D6D5C75", - "baseIconId": "D24517D5-27A6-4BE4-B9C8-C575A1431310", - "name": "boom-gate-arrow-up", - "codepoint": "F0E8C", - "aliases": [ - "boom-arm-up", - "boom-barrier-up", - "arm-barrier-up", - "barrier-up", - "automatic-gate-up" - ], - "styles": [ - "arrow", - "bold" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Michael Richins" - }, - { - "id": "24E7CECC-7FAC-4FE4-8EAE-B727489040E8", - "baseIconId": "D24517D5-27A6-4BE4-B9C8-C575A1431310", - "name": "boom-gate-arrow-up-outline", - "codepoint": "F0E8D", - "aliases": [ - "boom-arm-up-outline", - "boom-barrier-up-outline", - "arm-barrier-up-outline", - "barrier-up-outline", - "automatic-gate-up-outline" - ], - "styles": [ - "arrow", - "outline" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Michael Richins" - }, - { - "id": "EF1F53B3-DA99-4410-9A20-E12C42FC2461", - "baseIconId": "D24517D5-27A6-4BE4-B9C8-C575A1431310", - "name": "boom-gate-outline", - "codepoint": "F0E8B", - "aliases": [ - "boom-arm-outline", - "boom-barrier-outline", - "arm-barrier-outline", - "barrier-outline", - "automatic-gate-outline" - ], - "styles": [ - "outline" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "615182F4-7F56-403E-8FDA-7DE1A2041F93", - "baseIconId": "D24517D5-27A6-4BE4-B9C8-C575A1431310", - "name": "boom-gate-up", - "codepoint": "F17F9", - "aliases": [ - "boom-arm-up", - "boom-barrier-up", - "arm-barrier-up", - "barrier-up", - "automatic-gate-up" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C42EF32C-0E5A-498E-A633-A2E9C739F514", - "baseIconId": "D24517D5-27A6-4BE4-B9C8-C575A1431310", - "name": "boom-gate-up-outline", - "codepoint": "F17FA", - "aliases": [ - "boom-arm-up-outline", - "boom-barrier-up-outline", - "arm-barrier-up-outline", - "barrier-up-outline", - "automatic-gate-up-outline" - ], - "styles": [ - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DAA06443-AE25-4881-BC62-8033C4420B8E", - "baseIconId": "DAA06443-AE25-4881-BC62-8033C4420B8E", - "name": "boombox", - "codepoint": "F05DC", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "090EBF34-3104-4D3C-B3C8-819C332A43E1", - "baseIconId": "090EBF34-3104-4D3C-B3C8-819C332A43E1", - "name": "boomerang", - "codepoint": "F10CF", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9DAC7258-AB2D-49E4-98A9-E84A5E3E474B", - "baseIconId": "9DAC7258-AB2D-49E4-98A9-E84A5E3E474B", - "name": "bootstrap", - "codepoint": "F06C6", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Developer \/ Languages" - ], - "author": "Contributors" - }, - { - "id": "A3D0E8B6-96B3-4281-B31C-0DDFD729903B", - "baseIconId": "5A750E96-F9A0-4C38-B601-8BA770E89E01", - "name": "border-all", - "codepoint": "F00C7", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "AD3DDFBC-21FE-4D6E-AE09-E9EB7D289459", - "baseIconId": "5A750E96-F9A0-4C38-B601-8BA770E89E01", - "name": "border-all-variant", - "codepoint": "F08A1", - "aliases": [], - "styles": [ - "variant" - ], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "9441B8BD-25C8-4F46-AFD4-6B2DA0C4A599", - "baseIconId": "5A750E96-F9A0-4C38-B601-8BA770E89E01", - "name": "border-bottom", - "codepoint": "F00C8", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "29792687-63C3-41A6-8182-CF829969BD48", - "baseIconId": "5A750E96-F9A0-4C38-B601-8BA770E89E01", - "name": "border-bottom-variant", - "codepoint": "F08A2", - "aliases": [], - "styles": [ - "variant" - ], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "CCD99C36-5D88-4696-8193-56F11C4B20A7", - "baseIconId": "CCD99C36-5D88-4696-8193-56F11C4B20A7", - "name": "border-color", - "codepoint": "F00C9", - "aliases": [ - "border-colour" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Color", - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "0F804E73-90EF-4175-984D-603698F0AF09", - "baseIconId": "5A750E96-F9A0-4C38-B601-8BA770E89E01", - "name": "border-horizontal", - "codepoint": "F00CA", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "F7471447-8501-40A6-9FFB-AB353B55AA89", - "baseIconId": "5A750E96-F9A0-4C38-B601-8BA770E89E01", - "name": "border-inside", - "codepoint": "F00CB", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "6B8A1379-9497-4B1B-A8CF-51CB1AD67757", - "baseIconId": "5A750E96-F9A0-4C38-B601-8BA770E89E01", - "name": "border-left", - "codepoint": "F00CC", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "063FAD96-7055-4D1E-8E50-B9288BB9D0B0", - "baseIconId": "5A750E96-F9A0-4C38-B601-8BA770E89E01", - "name": "border-left-variant", - "codepoint": "F08A3", - "aliases": [], - "styles": [ - "variant" - ], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "F6333BD9-AC00-428D-B8A8-FA3B9187487F", - "baseIconId": "5A750E96-F9A0-4C38-B601-8BA770E89E01", - "name": "border-none", - "codepoint": "F00CD", - "aliases": [ - "border-clear" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "C8EC415C-81DE-4399-AEAB-FE102959F619", - "baseIconId": "5A750E96-F9A0-4C38-B601-8BA770E89E01", - "name": "border-none-variant", - "codepoint": "F08A4", - "aliases": [], - "styles": [ - "variant" - ], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "F8EA9B00-82F1-4DE8-B8B5-0A71B934C44D", - "baseIconId": "5A750E96-F9A0-4C38-B601-8BA770E89E01", - "name": "border-outside", - "codepoint": "F00CE", - "aliases": [ - "border-outer" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "3BF9D4F8-DD9D-4D5E-A1B4-A1AA22172E47", - "baseIconId": "3BF9D4F8-DD9D-4D5E-A1B4-A1AA22172E47", - "name": "border-radius", - "codepoint": "F1AF4", - "aliases": [ - "border-round-corners" - ], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Sintija" - }, - { - "id": "BC67506B-CAE4-4EDA-B0C8-614436AFDCBF", - "baseIconId": "5A750E96-F9A0-4C38-B601-8BA770E89E01", - "name": "border-right", - "codepoint": "F00CF", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "6284DA6C-DB95-4747-BB40-DE69D5970C5B", - "baseIconId": "5A750E96-F9A0-4C38-B601-8BA770E89E01", - "name": "border-right-variant", - "codepoint": "F08A5", - "aliases": [], - "styles": [ - "variant" - ], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "5A750E96-F9A0-4C38-B601-8BA770E89E01", - "baseIconId": "5A750E96-F9A0-4C38-B601-8BA770E89E01", - "name": "border-style", - "codepoint": "F00D0", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "AE703F65-F8D5-43B9-9B6B-B5966260E799", - "baseIconId": "5A750E96-F9A0-4C38-B601-8BA770E89E01", - "name": "border-top", - "codepoint": "F00D1", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "E9426CB0-FC83-40AA-B429-F55AD3F72E47", - "baseIconId": "5A750E96-F9A0-4C38-B601-8BA770E89E01", - "name": "border-top-variant", - "codepoint": "F08A6", - "aliases": [], - "styles": [ - "variant" - ], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "540E7940-BA85-4EED-BEAB-C50CEF348D50", - "baseIconId": "5A750E96-F9A0-4C38-B601-8BA770E89E01", - "name": "border-vertical", - "codepoint": "F00D2", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "D938FAC2-CC48-431D-8019-FA41677470DD", - "baseIconId": "D938FAC2-CC48-431D-8019-FA41677470DD", - "name": "bottle-soda", - "codepoint": "F1070", - "aliases": [ - "bottle-coke", - "bottle-pop" - ], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Michael Richins" - }, - { - "id": "E62A084A-2136-4FD3-8803-A72DE26D60CB", - "baseIconId": "D938FAC2-CC48-431D-8019-FA41677470DD", - "name": "bottle-soda-classic", - "codepoint": "F1071", - "aliases": [ - "bottle-coke-classic", - "bottle-pop-classic" - ], - "styles": [ - "variant" - ], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Michael Richins" - }, - { - "id": "7682F8D6-3FFD-4591-BFC5-44BF9166FB49", - "baseIconId": "D938FAC2-CC48-431D-8019-FA41677470DD", - "name": "bottle-soda-classic-outline", - "codepoint": "F1363", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "54C4C95B-E05C-4992-8365-96586E864FF9", - "baseIconId": "D938FAC2-CC48-431D-8019-FA41677470DD", - "name": "bottle-soda-outline", - "codepoint": "F1072", - "aliases": [ - "bottle-coke-outline", - "bottle-pop-outline" - ], - "styles": [ - "outline" - ], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Michael Richins" - }, - { - "id": "4FEF379F-2EBC-49EA-87B8-068B695A67B6", - "baseIconId": "4FEF379F-2EBC-49EA-87B8-068B695A67B6", - "name": "bottle-tonic", - "codepoint": "F112E", - "aliases": [ - "flask" - ], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Michael Irigoyen" - }, - { - "id": "44193E2D-1EAB-4BA1-9D32-C7E149F53E89", - "baseIconId": "4FEF379F-2EBC-49EA-87B8-068B695A67B6", - "name": "bottle-tonic-outline", - "codepoint": "F112F", - "aliases": [ - "flask-outline" - ], - "styles": [ - "outline" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9524D285-4F39-4FEA-9EC1-9F4B6ACB6615", - "baseIconId": "4FEF379F-2EBC-49EA-87B8-068B695A67B6", - "name": "bottle-tonic-plus", - "codepoint": "F1130", - "aliases": [ - "health-potion" - ], - "styles": [ - "plus" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "8508B85B-4238-4FC5-90F8-3C7E5612174B", - "baseIconId": "4FEF379F-2EBC-49EA-87B8-068B695A67B6", - "name": "bottle-tonic-plus-outline", - "codepoint": "F1131", - "aliases": [ - "health-potion-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "CE430764-D7C8-4DC8-97F4-DF1473B2C52C", - "baseIconId": "4FEF379F-2EBC-49EA-87B8-068B695A67B6", - "name": "bottle-tonic-skull", - "codepoint": "F1132", - "aliases": [ - "poison", - "moonshine" - ], - "styles": [ - "variant" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG", - "Holiday" - ], - "author": "Michael Irigoyen" - }, - { - "id": "24EF4783-9CDC-402E-9F8D-28CCDB50F216", - "baseIconId": "4FEF379F-2EBC-49EA-87B8-068B695A67B6", - "name": "bottle-tonic-skull-outline", - "codepoint": "F1133", - "aliases": [ - "poison-outline", - "moonshine-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG", - "Holiday" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E27EBD86-D80B-473B-BEAB-A22005475F38", - "baseIconId": "D938FAC2-CC48-431D-8019-FA41677470DD", - "name": "bottle-wine", - "codepoint": "F0854", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "James Coyle" - }, - { - "id": "B04C5F90-A3FB-4A60-B773-25AE19D293C7", - "baseIconId": "D938FAC2-CC48-431D-8019-FA41677470DD", - "name": "bottle-wine-outline", - "codepoint": "F1310", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Simran" - }, - { - "id": "3B0FFEAC-477B-436C-A964-F537EC6ADF94", - "baseIconId": "3B0FFEAC-477B-436C-A964-F537EC6ADF94", - "name": "bow-arrow", - "codepoint": "F1841", - "aliases": [], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG", - "Sport" - ], - "author": "Colton Wiscombe" - }, - { - "id": "741B300C-06EF-459D-BB3E-95DB8E21194E", - "baseIconId": "741B300C-06EF-459D-BB3E-95DB8E21194E", - "name": "bow-tie", - "codepoint": "F0678", - "aliases": [], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Clothing" - ], - "author": "Thomas Hunsaker" - }, - { - "id": "84EB4644-EC38-431B-B55B-12363EB63765", - "baseIconId": "84EB4644-EC38-431B-B55B-12363EB63765", - "name": "bowl", - "codepoint": "F028E", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "95E70948-C85D-41AC-887C-62752FBA7B6B", - "baseIconId": "84EB4644-EC38-431B-B55B-12363EB63765", - "name": "bowl-mix", - "codepoint": "F0617", - "aliases": [ - "mixing-bowl" - ], - "styles": [ - "variant" - ], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Austin Andrews" - }, - { - "id": "3C547C40-FF5E-4BB6-B45E-2B26AD990B20", - "baseIconId": "84EB4644-EC38-431B-B55B-12363EB63765", - "name": "bowl-mix-outline", - "codepoint": "F02E4", - "aliases": [ - "mixing-bowl-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Simran" - }, - { - "id": "D0021FC3-865F-45B4-8542-4937DC2952E2", - "baseIconId": "84EB4644-EC38-431B-B55B-12363EB63765", - "name": "bowl-outline", - "codepoint": "F02A9", - "aliases": [], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0CAB5DF9-E4A7-418D-B317-E792FF2DF8D1", - "baseIconId": "0CAB5DF9-E4A7-418D-B317-E792FF2DF8D1", - "name": "bowling", - "codepoint": "F00D3", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Austin Andrews" - }, - { - "id": "1E6B8A9E-921F-4695-B1CA-0A87AC157E88", - "baseIconId": "1E6B8A9E-921F-4695-B1CA-0A87AC157E88", - "name": "box", - "codepoint": "F00D4", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "A4C51C21-DEB0-4247-AEA3-B5F454641BDC", - "baseIconId": "A4C51C21-DEB0-4247-AEA3-B5F454641BDC", - "name": "box-cutter", - "codepoint": "F00D5", - "aliases": [ - "stanley-knife" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Simran" - }, - { - "id": "0E77ABEB-007D-4458-BEB9-F2C4607ECFC7", - "baseIconId": "A4C51C21-DEB0-4247-AEA3-B5F454641BDC", - "name": "box-cutter-off", - "codepoint": "F0B4A", - "aliases": [], - "styles": [ - "off" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [], - "author": "nilsfast" - }, - { - "id": "9DBE04CB-C425-4556-9046-15CBD88C866B", - "baseIconId": "9DBE04CB-C425-4556-9046-15CBD88C866B", - "name": "box-shadow", - "codepoint": "F0637", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "C36FCD4A-D073-4BCA-96D1-90CD81E4C080", - "baseIconId": "C36FCD4A-D073-4BCA-96D1-90CD81E4C080", - "name": "boxing-glove", - "codepoint": "F0B65", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Michael Irigoyen" - }, - { - "id": "3B62C43D-F1BC-45AB-AB68-B1B854009FD8", - "baseIconId": "3B62C43D-F1BC-45AB-AB68-B1B854009FD8", - "name": "braille", - "codepoint": "F09D0", - "aliases": [ - "touch-reading", - "hand-reading" - ], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "8EC09BCA-7C35-4FAB-9000-4A7795CC0930", - "baseIconId": "8EC09BCA-7C35-4FAB-9000-4A7795CC0930", - "name": "brain", - "codepoint": "F09D1", - "aliases": [], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Michael Richins" - }, - { - "id": "ED0E86DB-C4A5-477B-82BF-FC5849EE0B9C", - "baseIconId": "ED0E86DB-C4A5-477B-82BF-FC5849EE0B9C", - "name": "bread-slice", - "codepoint": "F0CEE", - "aliases": [], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Nick" - }, - { - "id": "FAC52832-EA67-4ABF-9841-7D3DD07C6EFF", - "baseIconId": "ED0E86DB-C4A5-477B-82BF-FC5849EE0B9C", - "name": "bread-slice-outline", - "codepoint": "F0CEF", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Nick" - }, - { - "id": "9FD9D8F0-D777-4B33-9CF7-E32FD8C25655", - "baseIconId": "9FD9D8F0-D777-4B33-9CF7-E32FD8C25655", - "name": "bridge", - "codepoint": "F0618", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Places" - ], - "author": "Austin Andrews" - }, - { - "id": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase", - "codepoint": "F00D6", - "aliases": [ - "work" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "B0F37881-7339-4CBC-9DB5-833EDCB6B049", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-account", - "codepoint": "F0CF0", - "aliases": [ - "briefcase-person", - "briefcase-user" - ], - "styles": [ - "account" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F92EB0E4-257F-4200-A18E-0F0C02C8DB51", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-account-outline", - "codepoint": "F0CF1", - "aliases": [ - "briefcase-person-outline", - "briefcase-user-outline" - ], - "styles": [ - "account", - "outline" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Irigoyen" - }, - { - "id": "6DB6F4EA-1ACC-481A-8EC5-3D9FA65408BE", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-arrow-left-right", - "codepoint": "F1A8D", - "aliases": [ - "briefcase-transfer", - "briefcase-exchange", - "briefcase-swap" - ], - "styles": [], - "version": "6.8.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "FA334ED0-09E4-4FB3-AF2A-20715D19A1E5", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-arrow-left-right-outline", - "codepoint": "F1A8E", - "aliases": [ - "briefcase-exchange-outline", - "briefcase-transfer-outline", - "briefcase-swap-outline" - ], - "styles": [], - "version": "6.8.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "2F146073-D872-47E2-BB41-404CFDF65D89", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-arrow-up-down", - "codepoint": "F1A8F", - "aliases": [ - "briefcase-exchange", - "briefcase-transfer", - "briefcase-swap" - ], - "styles": [], - "version": "6.8.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "8C3B52BE-A1AC-4D59-B88C-D50B6C088827", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-arrow-up-down-outline", - "codepoint": "F1A90", - "aliases": [ - "briefcase-exchange-outline", - "briefcase-transfer-outline", - "briefcase-swap-outline" - ], - "styles": [], - "version": "6.8.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "4182182E-F79B-4153-B652-2A4B4AC231E1", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-check", - "codepoint": "F00D7", - "aliases": [ - "briefcase-tick" - ], - "styles": [ - "check" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "3889AEB1-7257-4D20-ACD4-78CB27879639", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-check-outline", - "codepoint": "F131E", - "aliases": [], - "styles": [ - "check", - "outline" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "1BC68384-3EB0-4296-A3B2-9F348DD7AF1E", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-clock", - "codepoint": "F10D0", - "aliases": [], - "styles": [ - "clock" - ], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Richins" - }, - { - "id": "EBE7A5FD-4D46-4A78-BA72-816546ABB880", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-clock-outline", - "codepoint": "F10D1", - "aliases": [], - "styles": [ - "clock", - "outline" - ], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Richins" - }, - { - "id": "D4705E48-0920-451E-BFF3-2DA1BBA5C21D", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-download", - "codepoint": "F00D8", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "DD87CBA1-4687-45A7-B470-EC75EC4C0D32", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-download-outline", - "codepoint": "F0C3D", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "485F9428-A4BF-422D-A624-61AB07D37890", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-edit", - "codepoint": "F0A98", - "aliases": [], - "styles": [ - "edit" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "theminanaji" - }, - { - "id": "EE4B8481-FF0C-44BC-9D23-64DFDF499F73", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-edit-outline", - "codepoint": "F0C3E", - "aliases": [], - "styles": [ - "edit", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Michael Irigoyen" - }, - { - "id": "15362BD1-6DB7-4334-B6CF-35A61D7EE2A0", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-eye", - "codepoint": "F17D9", - "aliases": [ - "briefcase-view" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "6C1979BB-3BFD-4466-9934-945FAB608E90", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-eye-outline", - "codepoint": "F17DA", - "aliases": [ - "briefcase-view-outline" - ], - "styles": [ - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Andrej Sharapov" - }, - { - "id": "5999899F-7FE5-44EF-87F4-DD1E2F9556B3", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-minus", - "codepoint": "F0A2A", - "aliases": [], - "styles": [ - "minus" - ], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "C185E5E9-F652-41C2-9FBA-6673FE7CEB10", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-minus-outline", - "codepoint": "F0C3F", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "2059EB01-3552-45CF-A2A1-64DA37F124D0", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-off", - "codepoint": "F1658", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "EE25B28C-2F16-4BE0-95BB-8328DF0F0CA2", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-off-outline", - "codepoint": "F1659", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "1E7F3689-287C-40DC-B0DD-CF65987E9B53", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-outline", - "codepoint": "F0814", - "aliases": [ - "work-outline" - ], - "styles": [ - "outline" - ], - "version": "2.1.19", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "C08C7899-5B7E-4E6F-9861-C319CFABA7DC", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-plus", - "codepoint": "F0A2B", - "aliases": [ - "briefcase-add" - ], - "styles": [ - "plus" - ], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "CA6D7ED5-38E6-4B63-915A-431CDDA27062", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-plus-outline", - "codepoint": "F0C40", - "aliases": [ - "briefcase-add-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "9B02F5A1-D171-49A4-91DB-5F47E03D7B65", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-remove", - "codepoint": "F0A2C", - "aliases": [], - "styles": [ - "remove" - ], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "1754B039-7D56-4722-BEE1-8A8BA735FCD5", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-remove-outline", - "codepoint": "F0C41", - "aliases": [], - "styles": [ - "outline", - "remove" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "E6071C37-85E7-45F7-868D-A12234D0B979", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-search", - "codepoint": "F0A2D", - "aliases": [], - "styles": [ - "search" - ], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "62511811-5FA9-4E69-8513-62828BE493DF", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-search-outline", - "codepoint": "F0C42", - "aliases": [], - "styles": [ - "outline", - "search" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "3D48B9FF-A060-47DA-809E-32D5ED68CA64", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-upload", - "codepoint": "F00D9", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "AE06D41B-19EB-4E10-92DE-2A285163F034", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-upload-outline", - "codepoint": "F0C43", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "1BB4FAD5-B3AE-47FD-95C4-B1713FE05FF2", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-variant", - "codepoint": "F1494", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "2C5F52C7-AC1B-417F-8035-DB25264DA0A4", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-variant-off", - "codepoint": "F165A", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "E89FB55E-396B-4E43-BC41-512B597CF474", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-variant-off-outline", - "codepoint": "F165B", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "5280D1B7-9418-4673-BB9E-6AB3BD640C92", - "baseIconId": "15A9F4A5-3EB6-443C-8283-547A077CB0C4", - "name": "briefcase-variant-outline", - "codepoint": "F1495", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "B3FF12D1-1C76-4E1D-BAD0-468E424BADA7", - "baseIconId": "B3FF12D1-1C76-4E1D-BAD0-468E424BADA7", - "name": "brightness-1", - "codepoint": "F00DA", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "FAEBEE4C-295C-475F-AE7D-11CFA4688017", - "baseIconId": "B3FF12D1-1C76-4E1D-BAD0-468E424BADA7", - "name": "brightness-2", - "codepoint": "F00DB", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "825E1BB2-1E01-4E6E-9CF0-04412FDECDA6", - "baseIconId": "B3FF12D1-1C76-4E1D-BAD0-468E424BADA7", - "name": "brightness-3", - "codepoint": "F00DC", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "10EC7F50-BDC1-45C4-A6D2-2CB5FB4DE902", - "baseIconId": "34818392-81EE-4210-8F86-9C448596C912", - "name": "brightness-4", - "codepoint": "F00DD", - "aliases": [ - "theme-light-dark" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "17314413-99ED-480C-B739-8572B6AE5477", - "baseIconId": "34818392-81EE-4210-8F86-9C448596C912", - "name": "brightness-5", - "codepoint": "F00DE", - "aliases": [ - "brightness-low" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "34818392-81EE-4210-8F86-9C448596C912", - "baseIconId": "34818392-81EE-4210-8F86-9C448596C912", - "name": "brightness-6", - "codepoint": "F00DF", - "aliases": [ - "brightness-medium", - "theme-light-dark" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "014CCAA3-4B30-4C3D-921C-078A078A5198", - "baseIconId": "34818392-81EE-4210-8F86-9C448596C912", - "name": "brightness-7", - "codepoint": "F00E0", - "aliases": [ - "brightness-high" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "6E47CC3B-6D95-4311-A8DD-7B50AC24781C", - "baseIconId": "34818392-81EE-4210-8F86-9C448596C912", - "name": "brightness-auto", - "codepoint": "F00E1", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "CBC38577-44FC-45B5-9454-3D04AA9CEAE3", - "baseIconId": "34818392-81EE-4210-8F86-9C448596C912", - "name": "brightness-percent", - "codepoint": "F0CF2", - "aliases": [ - "discount", - "sale" - ], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F5E24182-366C-4D23-BA0E-8D2E25B88230", - "baseIconId": "F5E24182-366C-4D23-BA0E-8D2E25B88230", - "name": "broadcast", - "codepoint": "F1720", - "aliases": [ - "signal" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Google" - }, - { - "id": "E1851914-B294-4FC0-A94B-C5C8D0F52DCB", - "baseIconId": "F5E24182-366C-4D23-BA0E-8D2E25B88230", - "name": "broadcast-off", - "codepoint": "F1721", - "aliases": [ - "signal-off" - ], - "styles": [ - "off" - ], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Google" - }, - { - "id": "8159ED8F-4D1C-4845-8297-0FE41260D199", - "baseIconId": "8159ED8F-4D1C-4845-8297-0FE41260D199", - "name": "broom", - "codepoint": "F00E2", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "B5C72984-BCCF-4729-A7D3-2A07D5794014", - "baseIconId": "B5C72984-BCCF-4729-A7D3-2A07D5794014", - "name": "brush", - "codepoint": "F00E3", - "aliases": [ - "paintbrush" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Drawing \/ Art" - ], - "author": "Google" - }, - { - "id": "9A11CA67-107C-4D0A-A244-34E60B1915A0", - "baseIconId": "B5C72984-BCCF-4729-A7D3-2A07D5794014", - "name": "brush-off", - "codepoint": "F1771", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Teodor Sandu" - }, - { - "id": "0C2A4D14-A68C-444C-B01C-70CBD6DE0A69", - "baseIconId": "B5C72984-BCCF-4729-A7D3-2A07D5794014", - "name": "brush-outline", - "codepoint": "F1A0D", - "aliases": [ - "paintbrush-outline" - ], - "styles": [ - "outline" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Drawing \/ Art" - ], - "author": "Google" - }, - { - "id": "8B433DEE-0DAC-4C0E-80A0-068A00269BEE", - "baseIconId": "B5C72984-BCCF-4729-A7D3-2A07D5794014", - "name": "brush-variant", - "codepoint": "F1813", - "aliases": [ - "paintbrush" - ], - "styles": [ - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Drawing \/ Art" - ], - "author": "Google" - }, - { - "id": "1024F530-CFE4-4869-BAA4-062593D42DC9", - "baseIconId": "1024F530-CFE4-4869-BAA4-062593D42DC9", - "name": "bucket", - "codepoint": "F1415", - "aliases": [], - "styles": [], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "1A620C83-4D7F-4175-998B-E3460C77510D", - "baseIconId": "1024F530-CFE4-4869-BAA4-062593D42DC9", - "name": "bucket-outline", - "codepoint": "F1416", - "aliases": [], - "styles": [], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "B68F24D9-0E45-4729-9DB9-46E0D73589F2", - "baseIconId": "B68F24D9-0E45-4729-9DB9-46E0D73589F2", - "name": "buffet", - "codepoint": "F0578", - "aliases": [ - "sideboard" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "nilsfast" - }, - { - "id": "09A131FB-EE06-49B8-80C3-49B294BCA612", - "baseIconId": "09A131FB-EE06-49B8-80C3-49B294BCA612", - "name": "bug", - "codepoint": "F00E4", - "aliases": [ - "bug-report" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Nature", - "Animal" - ], - "author": "Google" - }, - { - "id": "3EDC1018-2B2B-4B3A-AE65-3C74678C807B", - "baseIconId": "09A131FB-EE06-49B8-80C3-49B294BCA612", - "name": "bug-check", - "codepoint": "F0A2E", - "aliases": [ - "bug-tick" - ], - "styles": [ - "check" - ], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Michael Richins" - }, - { - "id": "1DF96664-B3AE-4028-BB22-C9DE9273A641", - "baseIconId": "09A131FB-EE06-49B8-80C3-49B294BCA612", - "name": "bug-check-outline", - "codepoint": "F0A2F", - "aliases": [ - "bug-tick-outline" - ], - "styles": [ - "check", - "outline" - ], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Michael Richins" - }, - { - "id": "CDBE2126-E455-498B-B5CC-945A42F78B0D", - "baseIconId": "09A131FB-EE06-49B8-80C3-49B294BCA612", - "name": "bug-outline", - "codepoint": "F0A30", - "aliases": [], - "styles": [ - "outline" - ], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Nature", - "Animal" - ], - "author": "Google" - }, - { - "id": "49752F69-A574-46AF-A02C-88E6CE5FB41B", - "baseIconId": "09A131FB-EE06-49B8-80C3-49B294BCA612", - "name": "bug-pause", - "codepoint": "F1AF5", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "3DB48B1D-904F-4348-9C30-016841242026", - "baseIconId": "09A131FB-EE06-49B8-80C3-49B294BCA612", - "name": "bug-pause-outline", - "codepoint": "F1AF6", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "2F0E44DF-D6F1-487A-9427-BBAA20E7B43D", - "baseIconId": "09A131FB-EE06-49B8-80C3-49B294BCA612", - "name": "bug-play", - "codepoint": "F1AF7", - "aliases": [ - "bug-start" - ], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "7084E94D-43E2-4718-BFF1-B568182C1F65", - "baseIconId": "09A131FB-EE06-49B8-80C3-49B294BCA612", - "name": "bug-play-outline", - "codepoint": "F1AF8", - "aliases": [], - "styles": [ - "outline" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "285762ED-0B89-40E5-92A7-04B8C38E29C8", - "baseIconId": "09A131FB-EE06-49B8-80C3-49B294BCA612", - "name": "bug-stop", - "codepoint": "F1AF9", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "A88E0967-B37B-4785-AA7F-0D9F95856375", - "baseIconId": "09A131FB-EE06-49B8-80C3-49B294BCA612", - "name": "bug-stop-outline", - "codepoint": "F1AFA", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "CBC37A12-44AA-4CA8-976A-F26ED26849D4", - "baseIconId": "CBC37A12-44AA-4CA8-976A-F26ED26849D4", - "name": "bugle", - "codepoint": "F0DB4", - "aliases": [ - "car-horn" - ], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Automotive", - "Music" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5CCE8821-5952-49CA-A3C2-53AB5E50CA19", - "baseIconId": "5CCE8821-5952-49CA-A3C2-53AB5E50CA19", - "name": "bulkhead-light", - "codepoint": "F1A2F", - "aliases": [], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "76D6F847-8DC7-41CB-B88C-9407CC2B18AA", - "baseIconId": "CB49A868-3317-4445-BFED-13CB6533000E", - "name": "bulldozer", - "codepoint": "F0B22", - "aliases": [], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Louistwee" - }, - { - "id": "AED3CA58-6CAA-45AF-9791-F61AC32DAFBA", - "baseIconId": "AED3CA58-6CAA-45AF-9791-F61AC32DAFBA", - "name": "bullet", - "codepoint": "F0CF3", - "aliases": [], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "094C9BF2-9EEE-434C-9CA9-8280FBDFBEF7", - "baseIconId": "094C9BF2-9EEE-434C-9CA9-8280FBDFBEF7", - "name": "bulletin-board", - "codepoint": "F00E5", - "aliases": [ - "notice-board" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "A5D2E199-03A1-4C23-9C63-954D63DEBEB4", - "baseIconId": "A5D2E199-03A1-4C23-9C63-954D63DEBEB4", - "name": "bullhorn", - "codepoint": "F00E6", - "aliases": [ - "announcement", - "megaphone", - "loudspeaker" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "B48B1E77-750E-4A16-9154-12D25E572A9D", - "baseIconId": "A5D2E199-03A1-4C23-9C63-954D63DEBEB4", - "name": "bullhorn-outline", - "codepoint": "F0B23", - "aliases": [ - "announcement-outline", - "megaphone-outline", - "loudspeaker-outline" - ], - "styles": [ - "outline" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "ED822193-44D0-481D-B373-F99518240597", - "baseIconId": "A5D2E199-03A1-4C23-9C63-954D63DEBEB4", - "name": "bullhorn-variant", - "codepoint": "F196E", - "aliases": [ - "announcement", - "megaphone", - "loudspeaker" - ], - "styles": [ - "variant" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [], - "author": "nlsve" - }, - { - "id": "D38A39A0-E788-49D7-802B-BE2BF5BB2274", - "baseIconId": "A5D2E199-03A1-4C23-9C63-954D63DEBEB4", - "name": "bullhorn-variant-outline", - "codepoint": "F196F", - "aliases": [ - "announcement-outline", - "megaphone-outline", - "loudspeaker-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [], - "author": "nlsve" - }, - { - "id": "ED26BD4D-ACDB-45DC-A0DA-18ECA3B2008E", - "baseIconId": "ED26BD4D-ACDB-45DC-A0DA-18ECA3B2008E", - "name": "bullseye", - "codepoint": "F05DD", - "aliases": [ - "target" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Simran" - }, - { - "id": "FAC8D1F3-C466-41F3-B3BF-A08519BBC909", - "baseIconId": "ED26BD4D-ACDB-45DC-A0DA-18ECA3B2008E", - "name": "bullseye-arrow", - "codepoint": "F08C9", - "aliases": [ - "target-arrow" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Simran" - }, - { - "id": "103BB26D-356A-4F6D-9F98-787CEC908FAD", - "baseIconId": "103BB26D-356A-4F6D-9F98-787CEC908FAD", - "name": "bulma", - "codepoint": "F12E7", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "8428337D-0DED-4E4D-8F89-326FCAD97884", - "baseIconId": "8428337D-0DED-4E4D-8F89-326FCAD97884", - "name": "bunk-bed", - "codepoint": "F1302", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "D3DFF539-E101-40B2-BA6D-B62327AFE6AC", - "baseIconId": "8428337D-0DED-4E4D-8F89-326FCAD97884", - "name": "bunk-bed-outline", - "codepoint": "F0097", - "aliases": [], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "F6516F38-B29E-4CC9-A7E2-706817121D45", - "baseIconId": "F6516F38-B29E-4CC9-A7E2-706817121D45", - "name": "bus", - "codepoint": "F00E7", - "aliases": [ - "directions-bus" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Navigation", - "Transportation + Road" - ], - "author": "Google" - }, - { - "id": "85DD64A3-9215-41F0-9C94-92C180D7BA05", - "baseIconId": "F6516F38-B29E-4CC9-A7E2-706817121D45", - "name": "bus-alert", - "codepoint": "F0A99", - "aliases": [ - "bus-warning" - ], - "styles": [ - "alert" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Alert \/ Error", - "Transportation + Road" - ], - "author": "Google" - }, - { - "id": "44D15383-D6D2-46CC-A977-7921DA98C7E8", - "baseIconId": "CB49A868-3317-4445-BFED-13CB6533000E", - "name": "bus-articulated-end", - "codepoint": "F079C", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "GreenTurtwig" - }, - { - "id": "5C34E429-3B80-46CD-8DC8-44D5D9769682", - "baseIconId": "CB49A868-3317-4445-BFED-13CB6533000E", - "name": "bus-articulated-front", - "codepoint": "F079D", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "GreenTurtwig" - }, - { - "id": "B37694EA-F48B-4F48-ACF1-0E48FB334473", - "baseIconId": "F6516F38-B29E-4CC9-A7E2-706817121D45", - "name": "bus-clock", - "codepoint": "F08CA", - "aliases": [ - "departure-board" - ], - "styles": [ - "clock" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Transportation + Road" - ], - "author": "Google" - }, - { - "id": "1F4327A8-1E93-4490-B992-C9D04DFFB144", - "baseIconId": "CB49A868-3317-4445-BFED-13CB6533000E", - "name": "bus-double-decker", - "codepoint": "F079E", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "GreenTurtwig" - }, - { - "id": "67F98777-D4FA-454C-96D6-835BD7A1D2D5", - "baseIconId": "F6516F38-B29E-4CC9-A7E2-706817121D45", - "name": "bus-electric", - "codepoint": "F191D", - "aliases": [], - "styles": [ - "variant" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Michael Irigoyen" - }, - { - "id": "42DCF950-C2F2-4989-8E0B-ACF16326A6A7", - "baseIconId": "F6516F38-B29E-4CC9-A7E2-706817121D45", - "name": "bus-marker", - "codepoint": "F1212", - "aliases": [ - "bus-location", - "bus-stop" - ], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "Michael Richins" - }, - { - "id": "E007EC1E-915B-4A12-89A0-8F7249AEF9FC", - "baseIconId": "F6516F38-B29E-4CC9-A7E2-706817121D45", - "name": "bus-multiple", - "codepoint": "F0F3F", - "aliases": [ - "fleet" - ], - "styles": [ - "multiple" - ], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Michael Richins" - }, - { - "id": "774EC563-DF29-498C-8270-ABB051396687", - "baseIconId": "CB49A868-3317-4445-BFED-13CB6533000E", - "name": "bus-school", - "codepoint": "F079F", - "aliases": [ - "education" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "GreenTurtwig" - }, - { - "id": "D944705B-8F7B-441F-8753-6E51E4378D7D", - "baseIconId": "CB49A868-3317-4445-BFED-13CB6533000E", - "name": "bus-side", - "codepoint": "F07A0", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "GreenTurtwig" - }, - { - "id": "79F04208-0844-4987-9CFA-8870EBB6CD1D", - "baseIconId": "79F04208-0844-4987-9CFA-8870EBB6CD1D", - "name": "bus-stop", - "codepoint": "F1012", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Navigation" - ], - "author": "Michael Richins" - }, - { - "id": "E299AA19-1C5F-4D7F-B101-0FBFC05A7130", - "baseIconId": "79F04208-0844-4987-9CFA-8870EBB6CD1D", - "name": "bus-stop-covered", - "codepoint": "F1013", - "aliases": [], - "styles": [ - "variant" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Navigation" - ], - "author": "Michael Richins" - }, - { - "id": "E1CA2856-1C0E-4487-BAF3-C64A4EA94C45", - "baseIconId": "79F04208-0844-4987-9CFA-8870EBB6CD1D", - "name": "bus-stop-uncovered", - "codepoint": "F1014", - "aliases": [], - "styles": [ - "variant" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Navigation" - ], - "author": "Michael Richins" - }, - { - "id": "CC37A3EE-B084-4CD4-AF41-1E5C6D83D839", - "baseIconId": "CC37A3EE-B084-4CD4-AF41-1E5C6D83D839", - "name": "butterfly", - "codepoint": "F1589", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Nature", - "Animal" - ], - "author": "Nicolas Gres" - }, - { - "id": "6BD6BDCD-0C73-40DF-9A9B-127C1DDFF467", - "baseIconId": "CC37A3EE-B084-4CD4-AF41-1E5C6D83D839", - "name": "butterfly-outline", - "codepoint": "F158A", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Nature", - "Animal" - ], - "author": "Nicolas Gres" - }, - { - "id": "D9990C98-4D95-4E98-9289-3582ABC30351", - "baseIconId": "D9990C98-4D95-4E98-9289-3582ABC30351", - "name": "button-cursor", - "codepoint": "F1B4F", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Andrej Sharapov" - }, - { - "id": "ECCE41F5-955D-49FD-BE39-855E1B9D2044", - "baseIconId": "ECCE41F5-955D-49FD-BE39-855E1B9D2044", - "name": "button-pointer", - "codepoint": "F1B50", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Andrej Sharapov" - }, - { - "id": "5243C745-48FC-4DE9-83F8-138464C7D0D8", - "baseIconId": "5243C745-48FC-4DE9-83F8-138464C7D0D8", - "name": "cabin-a-frame", - "codepoint": "F188C", - "aliases": [], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Jeff Anders" - }, - { - "id": "1D18C000-0A31-4A28-BA96-B47103D727DD", - "baseIconId": "1D18C000-0A31-4A28-BA96-B47103D727DD", - "name": "cable-data", - "codepoint": "F1394", - "aliases": [], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "7DFE345F-A336-43BC-89BE-18FE3C902BFC", - "baseIconId": "7DFE345F-A336-43BC-89BE-18FE3C902BFC", - "name": "cached", - "codepoint": "F00E8", - "aliases": [ - "counterclockwise-arrows", - "circular-arrows", - "circle-arrows", - "sync" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "C7CDAEB3-FE9D-4A53-937B-F778CEA157E0", - "baseIconId": "C7CDAEB3-FE9D-4A53-937B-F778CEA157E0", - "name": "cactus", - "codepoint": "F0DB5", - "aliases": [], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Nature" - ], - "author": "Andrew Nenakhov" - }, - { - "id": "E5BFDCE4-1033-4062-9677-94B95E028B6E", - "baseIconId": "E5BFDCE4-1033-4062-9677-94B95E028B6E", - "name": "cake", - "codepoint": "F00E9", - "aliases": [ - "birthday-cake" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Holiday", - "Food \/ Drink" - ], - "author": "Google" - }, - { - "id": "934C9B6C-0DA5-4D71-9283-C960ED537D02", - "baseIconId": "E5BFDCE4-1033-4062-9677-94B95E028B6E", - "name": "cake-layered", - "codepoint": "F00EA", - "aliases": [ - "birthday-cake" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Holiday", - "Food \/ Drink" - ], - "author": "Google" - }, - { - "id": "2F9E87A6-B7DB-48B1-9528-C8A941FBC3AF", - "baseIconId": "E5BFDCE4-1033-4062-9677-94B95E028B6E", - "name": "cake-variant", - "codepoint": "F00EB", - "aliases": [ - "birthday-cake" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Holiday", - "Food \/ Drink" - ], - "author": "Google" - }, - { - "id": "0819B4B2-9D58-438F-943E-E628A3D5BF52", - "baseIconId": "E5BFDCE4-1033-4062-9677-94B95E028B6E", - "name": "cake-variant-outline", - "codepoint": "F17F0", - "aliases": [ - "birthday-cake-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Holiday", - "Food \/ Drink" - ], - "author": "Google" - }, - { - "id": "3E9895C8-BCCB-464C-ACF1-CCA86113DA37", - "baseIconId": "3E9895C8-BCCB-464C-ACF1-CCA86113DA37", - "name": "calculator", - "codepoint": "F00EC", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Austin Andrews" - }, - { - "id": "FB05A4AF-E47A-4F82-BFFE-7C1F587839B6", - "baseIconId": "3E9895C8-BCCB-464C-ACF1-CCA86113DA37", - "name": "calculator-variant", - "codepoint": "F0A9A", - "aliases": [], - "styles": [ - "variant" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Google" - }, - { - "id": "87123F5D-C9AC-43B3-9E97-10EE3F9C1158", - "baseIconId": "3E9895C8-BCCB-464C-ACF1-CCA86113DA37", - "name": "calculator-variant-outline", - "codepoint": "F15A6", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Google" - }, - { - "id": "23C8742A-612C-4C55-B184-2A0ABB387746", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar", - "codepoint": "F00ED", - "aliases": [ - "event", - "insert-invitation" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "CD7D41D2-4BD2-4482-85C2-314A283EB57F", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-account", - "codepoint": "F0ED7", - "aliases": [ - "calendar-user" - ], - "styles": [ - "account" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Account \/ User" - ], - "author": "Michael Richins" - }, - { - "id": "B852A287-2C5E-4468-9A83-6B5E0ABD1219", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-account-outline", - "codepoint": "F0ED8", - "aliases": [ - "calendar-user-outline" - ], - "styles": [ - "account", - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Account \/ User" - ], - "author": "Michael Richins" - }, - { - "id": "38F5B0F1-FAC2-4389-9CE0-BDDEBEC868F4", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-alert", - "codepoint": "F0A31", - "aliases": [ - "event-alert", - "calendar-warning" - ], - "styles": [ - "alert" - ], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Alert \/ Error" - ], - "author": "Simran" - }, - { - "id": "6721AEBE-3E28-460D-A11A-0298B1163384", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-alert-outline", - "codepoint": "F1B62", - "aliases": [], - "styles": [ - "alert", - "outline" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9FB11BA5-47F5-40B8-9BD2-259FEA4E0A6E", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-arrow-left", - "codepoint": "F1134", - "aliases": [ - "reschedule" - ], - "styles": [ - "arrow" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Terren" - }, - { - "id": "571CF297-7E85-4808-A76A-72952F1A4976", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-arrow-right", - "codepoint": "F1135", - "aliases": [ - "reschedule" - ], - "styles": [ - "arrow" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Terren" - }, - { - "id": "69D7BB19-D394-4C73-AC78-672AC78FD0A0", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-badge", - "codepoint": "F1B9D", - "aliases": [], - "styles": [ - "badge" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "8E92EA84-88B1-4A46-BA36-E82CF91FE9D6", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-badge-outline", - "codepoint": "F1B9E", - "aliases": [], - "styles": [ - "badge", - "outline" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "57984F1A-6CA5-4928-B221-466C0CC11562", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-blank", - "codepoint": "F00EE", - "aliases": [ - "calendar-today" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Austin Andrews" - }, - { - "id": "BD09D9F0-FF38-4D14-8798-2CB5091CABE1", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-blank-multiple", - "codepoint": "F1073", - "aliases": [], - "styles": [ - "multiple", - "variant" - ], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "James Coyle" - }, - { - "id": "9A461143-6DF3-49CB-A238-24CFE7181183", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-blank-outline", - "codepoint": "F0B66", - "aliases": [ - "event-blank-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "62008F88-6B17-4277-9155-B596476629A1", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-check", - "codepoint": "F00EF", - "aliases": [ - "event-available", - "calendar-task", - "calendar-tick", - "event-tick", - "event-check" - ], - "styles": [ - "check" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "62AD0407-3DB5-48B0-8A26-3C5A07C78582", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-check-outline", - "codepoint": "F0C44", - "aliases": [ - "event-available-outline", - "event-check-outline", - "event-tick-outline", - "calendar-task-outline", - "calendar-tick-outline" - ], - "styles": [ - "check", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "921F6084-24E6-4D62-8BF9-9258D8FADE8E", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-clock", - "codepoint": "F00F0", - "aliases": [ - "event-clock", - "event-time", - "calendar-time" - ], - "styles": [ - "clock" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Austin Andrews" - }, - { - "id": "9101C5D4-90CA-4C18-B66E-611B3B0A3877", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-clock-outline", - "codepoint": "F16E1", - "aliases": [], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "GreenTurtwig" - }, - { - "id": "D40760C0-3030-4ADC-AF91-6646565212FC", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-collapse-horizontal", - "codepoint": "F189D", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Austin Andrews" - }, - { - "id": "1E0BDF03-34A2-4082-A718-7B69944CCCFF", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-collapse-horizontal-outline", - "codepoint": "F1B63", - "aliases": [], - "styles": [ - "outline" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A5F0BBFB-DA5E-4068-B2D5-3C0F3EB26B14", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-cursor", - "codepoint": "F157B", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5DCA7EB2-7A5E-4F58-9A0A-39CCD6737215", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-cursor-outline", - "codepoint": "F1B64", - "aliases": [], - "styles": [ - "variant" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2976EA1B-60A3-46FB-97E2-95BB74B0DD22", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-edit", - "codepoint": "F08A7", - "aliases": [ - "event-edit" - ], - "styles": [ - "edit" - ], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Edit \/ Modify" - ], - "author": "Michael Richins" - }, - { - "id": "600D756C-664E-4213-B29F-F884E0DE0AE0", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-edit-outline", - "codepoint": "F1B65", - "aliases": [], - "styles": [ - "edit", - "outline" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Edit \/ Modify" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5837A731-F9AE-433E-AB31-12EE3D2D13D1", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-end", - "codepoint": "F166C", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Austin Andrews" - }, - { - "id": "80F02E2F-3A1A-4A99-9C80-00A3DF4E518F", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-end-outline", - "codepoint": "F1B66", - "aliases": [], - "styles": [ - "outline" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "61805380-C5C2-4A69-A0BC-356A642F7188", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-expand-horizontal", - "codepoint": "F189E", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Austin Andrews" - }, - { - "id": "FE6C3F26-1FE6-4681-BCFD-D9D78E9DE636", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-expand-horizontal-outline", - "codepoint": "F1B67", - "aliases": [], - "styles": [ - "outline" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "14692438-9215-4003-AF95-04AA7C27DA48", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-export", - "codepoint": "F0B24", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Richins" - }, - { - "id": "F6BD858F-4E31-45D6-AC2F-6E2C42843D29", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-export-outline", - "codepoint": "F1B68", - "aliases": [], - "styles": [ - "outline" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "56F3CE33-D13F-43F3-B626-2728FF09D778", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-filter", - "codepoint": "F1A32", - "aliases": [], - "styles": [ - "variant" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Andrej Sharapov" - }, - { - "id": "0EE2D0EE-8A23-4A80-98AC-0AEE15333062", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-filter-outline", - "codepoint": "F1A33", - "aliases": [ - "event-week-end-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Andrej Sharapov" - }, - { - "id": "EF6AC5FE-7E6E-47AC-B5D8-E802CBB94E3B", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-heart", - "codepoint": "F09D2", - "aliases": [ - "event-heart" - ], - "styles": [ - "heart" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Austin Andrews" - }, - { - "id": "754FE282-68CE-4E9E-BDFB-22C24815C06E", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-heart-outline", - "codepoint": "F1B69", - "aliases": [], - "styles": [ - "heart" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "04EEB2AA-AB71-4124-8AC4-FA65985AF37E", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-import", - "codepoint": "F0B25", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Richins" - }, - { - "id": "A3C7C111-C3C4-456D-B631-649D9D99E714", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-import-outline", - "codepoint": "F1B6A", - "aliases": [], - "styles": [ - "outline" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "8189159C-0869-4B40-809C-ECE7C33A2EC0", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-lock", - "codepoint": "F1641", - "aliases": [], - "styles": [ - "lock" - ], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "2A1D736B-88EB-4E0A-8FEE-69112C3578AA", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-lock-open", - "codepoint": "F1B5B", - "aliases": [], - "styles": [ - "lock" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Lock", - "Date \/ Time" - ], - "author": "Andrej Sharapov" - }, - { - "id": "ABB53620-E8DA-4C49-BE82-4052B617AA75", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-lock-open-outline", - "codepoint": "F1B5C", - "aliases": [], - "styles": [ - "lock", - "outline" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Lock", - "Date \/ Time" - ], - "author": "Andrej Sharapov" - }, - { - "id": "38B4A077-A3EA-4AF2-8553-9888BA25589F", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-lock-outline", - "codepoint": "F1642", - "aliases": [], - "styles": [ - "lock", - "outline" - ], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "12439778-1F4B-4498-8716-5BE128D194E1", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-minus", - "codepoint": "F0D5C", - "aliases": [ - "event-minus" - ], - "styles": [ - "minus" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "ButchMonkey" - }, - { - "id": "CF434321-1488-401F-B090-67822ABAB9D8", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-minus-outline", - "codepoint": "F1B6B", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "73BD287F-15E4-46D3-997F-0F2A9E641EE9", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-month", - "codepoint": "F0E17", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Terren" - }, - { - "id": "80D8D5AB-B9A9-4A26-8E9A-A2D4DBDD77AC", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-month-outline", - "codepoint": "F0E18", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Terren" - }, - { - "id": "F4851A5B-6F19-4C18-9A13-4BF2617FF0E0", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-multiple", - "codepoint": "F00F1", - "aliases": [ - "event-multiple", - "calendars", - "events" - ], - "styles": [ - "multiple" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Austin Andrews" - }, - { - "id": "7329D294-805D-4843-AB03-B87C661C296A", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-multiple-check", - "codepoint": "F00F2", - "aliases": [ - "event-multiple-check", - "calendar-multiple-tick", - "calendars-check", - "calendars-tick", - "event-multiple-tick", - "events-check", - "events-tick" - ], - "styles": [ - "check", - "multiple" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Austin Andrews" - }, - { - "id": "EFABC8FA-93A2-43FB-A9C3-B03F1324B2E2", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-multiselect", - "codepoint": "F0A32", - "aliases": [], - "styles": [ - "variant" - ], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Austin Andrews" - }, - { - "id": "10FF1625-E2D7-4E57-B339-8FB1801B0ECD", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-multiselect-outline", - "codepoint": "F1B55", - "aliases": [], - "styles": [ - "outline" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Andrej Sharapov" - }, - { - "id": "3703C79F-7F34-41D6-A12F-6247144FEB02", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-outline", - "codepoint": "F0B67", - "aliases": [ - "event-outline" - ], - "styles": [ - "outline" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "34AFE807-D724-4A5A-A3FE-910928179BE8", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-plus", - "codepoint": "F00F3", - "aliases": [ - "event-plus", - "calendar-add", - "event-add" - ], - "styles": [ - "plus" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Austin Andrews" - }, - { - "id": "52E522A1-E89B-47DE-8C27-EC85140AA13A", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-plus-outline", - "codepoint": "F1B6C", - "aliases": [], - "styles": [ - "outline", - "plus" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1A7293FC-E6E7-4C86-8919-32D0C5F60B08", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-question", - "codepoint": "F0692", - "aliases": [ - "calendar-rsvp", - "event-question", - "calendar-help" - ], - "styles": [ - "question" - ], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Simran" - }, - { - "id": "38D715EB-E9A7-48E9-A283-0F09D440AD9F", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-question-outline", - "codepoint": "F1B6D", - "aliases": [ - "calendar-help-outline" - ], - "styles": [ - "outline", - "question" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "740D7A91-7492-4922-96C7-A719E2BCD62A", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-range", - "codepoint": "F0679", - "aliases": [ - "date-range", - "calendar-week", - "event-range" - ], - "styles": [ - "variant" - ], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "CD7FA7FC-1BB0-4DB6-82C6-DF13E5A55EB2", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-range-outline", - "codepoint": "F0B68", - "aliases": [ - "event-range-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "4147C0BC-E3AE-4324-AA38-D2EC7A7AAD5E", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-refresh", - "codepoint": "F01E1", - "aliases": [ - "calendar-repeat" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "BC0BD74D-06D4-458A-B0CE-90B96A2ADCBF", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-refresh-outline", - "codepoint": "F0203", - "aliases": [ - "calendar-repeat-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2FAF3098-4BD1-4C70-94A8-F75E1EA54F49", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-remove", - "codepoint": "F00F4", - "aliases": [ - "event-busy", - "event-remove" - ], - "styles": [ - "remove" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "10475FB2-142C-48FF-AB95-B93CF2680208", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-remove-outline", - "codepoint": "F0C45", - "aliases": [ - "event-busy-outline", - "event-remove-outline" - ], - "styles": [ - "outline", - "remove" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "1C61A1FD-56B6-41F1-B677-84D32425225A", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-search", - "codepoint": "F094C", - "aliases": [ - "event-search" - ], - "styles": [ - "search" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "GreenTurtwig" - }, - { - "id": "D6113F31-EAA4-4050-AC56-8FC216173F89", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-search-outline", - "codepoint": "F1B6E", - "aliases": [], - "styles": [ - "outline", - "search" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "96505BCC-D522-45A6-A642-85F1B4248FAA", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-star", - "codepoint": "F09D3", - "aliases": [ - "event-star", - "calendar-favorite" - ], - "styles": [ - "star" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Richins" - }, - { - "id": "AC50F06A-D098-4FE2-87CB-E5B82FB077EF", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-star-four-points", - "codepoint": "F1C1F", - "aliases": [ - "calendar-auto", - "event-star-four-points", - "event-auto" - ], - "styles": [ - "star" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Jeff Anders" - }, - { - "id": "2F59B304-E3CE-4857-9EF8-B75BC591E3E8", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-star-outline", - "codepoint": "F1B53", - "aliases": [], - "styles": [ - "outline", - "star" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Andrej Sharapov" - }, - { - "id": "D88F139B-9D00-462D-8AA5-C23A5A02FCC6", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-start", - "codepoint": "F166D", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Austin Andrews" - }, - { - "id": "BE59CDE6-84BE-4489-BAD7-E5B9FE7FE3B2", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-start-outline", - "codepoint": "F1B6F", - "aliases": [], - "styles": [ - "outline" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7343C074-F974-4083-89C5-3C2BABF4E3C9", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-sync", - "codepoint": "F0E8E", - "aliases": [ - "calendar-repeat" - ], - "styles": [ - "variant" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Richins" - }, - { - "id": "24C0F48E-A354-4835-A2D4-B1E348ACF5D5", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-sync-outline", - "codepoint": "F0E8F", - "aliases": [ - "calendar-repeat-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Richins" - }, - { - "id": "1A873476-B82D-4E23-BF19-897F0A0C0B93", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-text", - "codepoint": "F00F5", - "aliases": [ - "event-note", - "event-text" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "F49AE0DB-5AAF-4574-BF4C-121E99A95BEF", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-text-outline", - "codepoint": "F0C46", - "aliases": [ - "event-text-outline", - "event-note-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "A566BA98-D35A-443F-AD31-0D31EF0B85EC", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-today", - "codepoint": "F00F6", - "aliases": [ - "calendar-day" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "9ACB9882-BE7B-44A3-AFCC-FDA2A5061EF1", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-today-outline", - "codepoint": "F1A30", - "aliases": [ - "calendar-day-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F2D23B1E-EA12-4EF5-9365-E698D1CD1319", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-week", - "codepoint": "F0A33", - "aliases": [ - "event-week" - ], - "styles": [ - "variant" - ], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Simran" - }, - { - "id": "7C244D7F-9332-4C73-AF3D-1DE3F6E365ED", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-week-begin", - "codepoint": "F0A34", - "aliases": [ - "event-week-begin" - ], - "styles": [ - "variant" - ], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Simran" - }, - { - "id": "420E6A80-6C58-48A6-A8A8-8119D53633D7", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-week-begin-outline", - "codepoint": "F1A31", - "aliases": [ - "event-week-begin-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9B0A106E-1157-40C2-9A68-97E1BA92A658", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-week-outline", - "codepoint": "F1A34", - "aliases": [ - "event-week-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E873A542-F4E7-44F4-B7CD-19474188D5BC", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-weekend", - "codepoint": "F0ED9", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Crissov" - }, - { - "id": "3E8B49C8-08CA-4D96-BC1B-EB21909E0311", - "baseIconId": "23C8742A-612C-4C55-B184-2A0ABB387746", - "name": "calendar-weekend-outline", - "codepoint": "F0EDA", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Crissov" - }, - { - "id": "B5ACE913-DBF1-4E73-BFE5-BB86F0EBF76E", - "baseIconId": "CA2546B9-70B0-4E1A-B646-17163B0C76E4", - "name": "call-made", - "codepoint": "F00F7", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Arrow" - ], - "author": "Google" - }, - { - "id": "8BEE5A5E-EC0A-4FC5-96BE-7F8C2A2EE52F", - "baseIconId": "CA2546B9-70B0-4E1A-B646-17163B0C76E4", - "name": "call-merge", - "codepoint": "F00F8", - "aliases": [ - "merge-type" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Arrow" - ], - "author": "Google" - }, - { - "id": "CA2546B9-70B0-4E1A-B646-17163B0C76E4", - "baseIconId": "CA2546B9-70B0-4E1A-B646-17163B0C76E4", - "name": "call-missed", - "codepoint": "F00F9", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Arrow" - ], - "author": "Google" - }, - { - "id": "008CD0E5-C47B-44FB-AF43-A1221C527056", - "baseIconId": "CA2546B9-70B0-4E1A-B646-17163B0C76E4", - "name": "call-received", - "codepoint": "F00FA", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Arrow" - ], - "author": "Google" - }, - { - "id": "790BCBB6-8B08-4AEC-A322-99F584BB394B", - "baseIconId": "CA2546B9-70B0-4E1A-B646-17163B0C76E4", - "name": "call-split", - "codepoint": "F00FB", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Arrow" - ], - "author": "Google" - }, - { - "id": "89EE8EAB-CA5B-40C5-B114-1EC5248634BF", - "baseIconId": "89EE8EAB-CA5B-40C5-B114-1EC5248634BF", - "name": "camcorder", - "codepoint": "F00FC", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Austin Andrews" - }, - { - "id": "BE1C767B-C032-487C-AB85-E2E960C9A89D", - "baseIconId": "89EE8EAB-CA5B-40C5-B114-1EC5248634BF", - "name": "camcorder-off", - "codepoint": "F00FF", - "aliases": [], - "styles": [ - "off" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Michael Irigoyen" - }, - { - "id": "236D9E8E-E38C-4EA9-9539-0E8B1447003A", - "baseIconId": "236D9E8E-E38C-4EA9-9539-0E8B1447003A", - "name": "camera", - "codepoint": "F0100", - "aliases": [ - "photography", - "camera-alt", - "local-see", - "photo-camera" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography", - "Home Automation" - ], - "author": "Google" - }, - { - "id": "E6F67D5D-0EED-450C-B39F-75D37E9B63CA", - "baseIconId": "236D9E8E-E38C-4EA9-9539-0E8B1447003A", - "name": "camera-account", - "codepoint": "F08CB", - "aliases": [ - "camera-user" - ], - "styles": [ - "account" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Account \/ User", - "Photography" - ], - "author": "Google" - }, - { - "id": "4FCD7DBE-6B4C-41DB-BDD8-40ED820EC7F1", - "baseIconId": "4FCD7DBE-6B4C-41DB-BDD8-40ED820EC7F1", - "name": "camera-burst", - "codepoint": "F0693", - "aliases": [ - "burst-mode" - ], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "28AACAD9-8E72-41FA-B736-55A4AFDAD6FF", - "baseIconId": "28AACAD9-8E72-41FA-B736-55A4AFDAD6FF", - "name": "camera-control", - "codepoint": "F0B69", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "8A2FFEED-01B4-44C0-A82A-2E03D8C2A447", - "baseIconId": "236D9E8E-E38C-4EA9-9539-0E8B1447003A", - "name": "camera-document", - "codepoint": "F1871", - "aliases": [ - "overhead-projector" - ], - "styles": [ - "variant" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "snis" - }, - { - "id": "E18549B4-97EC-49C7-A870-5CA1FBDD86EA", - "baseIconId": "236D9E8E-E38C-4EA9-9539-0E8B1447003A", - "name": "camera-document-off", - "codepoint": "F1872", - "aliases": [ - "overhead-projector-off" - ], - "styles": [ - "off", - "variant" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "snis" - }, - { - "id": "45456446-14D9-49F2-8842-93BAF8233F47", - "baseIconId": "236D9E8E-E38C-4EA9-9539-0E8B1447003A", - "name": "camera-enhance", - "codepoint": "F0101", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "5D466962-4E59-4103-8556-25032439677A", - "baseIconId": "236D9E8E-E38C-4EA9-9539-0E8B1447003A", - "name": "camera-enhance-outline", - "codepoint": "F0B6A", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "D4175840-8B51-4C1E-AFF2-A8142F5CCF2E", - "baseIconId": "236D9E8E-E38C-4EA9-9539-0E8B1447003A", - "name": "camera-flip", - "codepoint": "F15D9", - "aliases": [ - "camera-sync", - "camera-refresh" - ], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A40CFB47-3650-42BF-874C-C5BF09641708", - "baseIconId": "236D9E8E-E38C-4EA9-9539-0E8B1447003A", - "name": "camera-flip-outline", - "codepoint": "F15DA", - "aliases": [ - "camera-sync-outline", - "camera-refresh-outline" - ], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Michael Irigoyen" - }, - { - "id": "574F4B2D-70FE-41E3-AFB4-EC1E2AB897AB", - "baseIconId": "574F4B2D-70FE-41E3-AFB4-EC1E2AB897AB", - "name": "camera-front", - "codepoint": "F0102", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "2C6477B5-AA9E-4EDD-A73A-79F2ED5E5F2A", - "baseIconId": "2C6477B5-AA9E-4EDD-A73A-79F2ED5E5F2A", - "name": "camera-front-variant", - "codepoint": "F0103", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "B4EDBFFC-CF00-45F3-93A7-6ADD45108FEE", - "baseIconId": "B4EDBFFC-CF00-45F3-93A7-6ADD45108FEE", - "name": "camera-gopro", - "codepoint": "F07A1", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Photography", - "Device \/ Tech" - ], - "author": "Michael Richins" - }, - { - "id": "3399CF92-5E35-4C1A-A796-FB641666AB63", - "baseIconId": "236D9E8E-E38C-4EA9-9539-0E8B1447003A", - "name": "camera-image", - "codepoint": "F08CC", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "E011977B-432E-470C-A4F6-9C7A4F8BB519", - "baseIconId": "E011977B-432E-470C-A4F6-9C7A4F8BB519", - "name": "camera-iris", - "codepoint": "F0104", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "46E0AE7F-ECCB-4EAC-BADC-176B2A1FD338", - "baseIconId": "236D9E8E-E38C-4EA9-9539-0E8B1447003A", - "name": "camera-lock", - "codepoint": "F1A14", - "aliases": [], - "styles": [ - "lock" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Photography", - "Lock" - ], - "author": "Austin Andrews" - }, - { - "id": "2CB53F43-4731-40F1-993B-90F7D92A4789", - "baseIconId": "236D9E8E-E38C-4EA9-9539-0E8B1447003A", - "name": "camera-lock-open", - "codepoint": "F1C0D", - "aliases": [], - "styles": [ - "lock" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Michael Irigoyen" - }, - { - "id": "26438E72-F4E7-4C38-B373-0661EC4C1616", - "baseIconId": "236D9E8E-E38C-4EA9-9539-0E8B1447003A", - "name": "camera-lock-open-outline", - "codepoint": "F1C0E", - "aliases": [], - "styles": [ - "lock", - "outline" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Michael Irigoyen" - }, - { - "id": "662A0A34-3FEC-47DB-BD66-608D95F912EF", - "baseIconId": "236D9E8E-E38C-4EA9-9539-0E8B1447003A", - "name": "camera-lock-outline", - "codepoint": "F1A15", - "aliases": [], - "styles": [ - "lock", - "outline" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Photography", - "Lock" - ], - "author": "Austin Andrews" - }, - { - "id": "304F1239-9ADE-4371-AFA5-AD2BC3343D24", - "baseIconId": "236D9E8E-E38C-4EA9-9539-0E8B1447003A", - "name": "camera-marker", - "codepoint": "F19A7", - "aliases": [ - "camera-location" - ], - "styles": [ - "marker" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Photography", - "Navigation" - ], - "author": "Simran" - }, - { - "id": "FC72F661-E548-4755-9919-B9960175B831", - "baseIconId": "236D9E8E-E38C-4EA9-9539-0E8B1447003A", - "name": "camera-marker-outline", - "codepoint": "F19A8", - "aliases": [ - "camera-location-outline" - ], - "styles": [ - "marker", - "outline" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Photography", - "Navigation" - ], - "author": "Simran" - }, - { - "id": "D178034B-0B93-40F5-BBF1-D28B25A86647", - "baseIconId": "D178034B-0B93-40F5-BBF1-D28B25A86647", - "name": "camera-metering-center", - "codepoint": "F07A2", - "aliases": [ - "camera-metering-centre" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Andy Martinez" - }, - { - "id": "700D143A-8347-4A79-9EF8-844E1B436524", - "baseIconId": "700D143A-8347-4A79-9EF8-844E1B436524", - "name": "camera-metering-matrix", - "codepoint": "F07A3", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Andy Martinez" - }, - { - "id": "EA33D5EE-5E13-4D82-A552-C3B16772926F", - "baseIconId": "EA33D5EE-5E13-4D82-A552-C3B16772926F", - "name": "camera-metering-partial", - "codepoint": "F07A4", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Andy Martinez" - }, - { - "id": "C1313085-6C7F-4D60-A278-A39361B57DA9", - "baseIconId": "C1313085-6C7F-4D60-A278-A39361B57DA9", - "name": "camera-metering-spot", - "codepoint": "F07A5", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Andy Martinez" - }, - { - "id": "461A25B1-59F6-49F1-A917-BED92315AA63", - "baseIconId": "236D9E8E-E38C-4EA9-9539-0E8B1447003A", - "name": "camera-off", - "codepoint": "F05DF", - "aliases": [], - "styles": [ - "off" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Austin Andrews" - }, - { - "id": "F90640B1-1F16-41D0-98CF-B4C342BB5E61", - "baseIconId": "236D9E8E-E38C-4EA9-9539-0E8B1447003A", - "name": "camera-off-outline", - "codepoint": "F19BF", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Colton Wiscombe" - }, - { - "id": "5ABA45CF-038B-4665-BC3B-7D34CEF3882E", - "baseIconId": "236D9E8E-E38C-4EA9-9539-0E8B1447003A", - "name": "camera-outline", - "codepoint": "F0D5D", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "B58A0D5C-B137-42DD-A43B-8DD296D7684A", - "baseIconId": "236D9E8E-E38C-4EA9-9539-0E8B1447003A", - "name": "camera-party-mode", - "codepoint": "F0105", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "262BE971-8B8E-4DAC-8897-A841E5EBEB27", - "baseIconId": "236D9E8E-E38C-4EA9-9539-0E8B1447003A", - "name": "camera-plus", - "codepoint": "F0EDB", - "aliases": [], - "styles": [ - "plus" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "AD12EDBC-2323-410D-B0F2-F84ED6AEC170", - "baseIconId": "236D9E8E-E38C-4EA9-9539-0E8B1447003A", - "name": "camera-plus-outline", - "codepoint": "F0EDC", - "aliases": [], - "styles": [ - "outline", - "plus" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "B4CA0FB9-D119-426C-9043-16D90F5086B8", - "baseIconId": "B4CA0FB9-D119-426C-9043-16D90F5086B8", - "name": "camera-rear", - "codepoint": "F0106", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "B7DB5F20-5D64-4096-959F-60BB040B320F", - "baseIconId": "B7DB5F20-5D64-4096-959F-60BB040B320F", - "name": "camera-rear-variant", - "codepoint": "F0107", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "CA03F06D-AD3C-4D69-B6A4-721668AB111C", - "baseIconId": "236D9E8E-E38C-4EA9-9539-0E8B1447003A", - "name": "camera-retake", - "codepoint": "F0E19", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Michael Richins" - }, - { - "id": "0C602606-75CC-4D76-B79B-6550127ED464", - "baseIconId": "236D9E8E-E38C-4EA9-9539-0E8B1447003A", - "name": "camera-retake-outline", - "codepoint": "F0E1A", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Michael Richins" - }, - { - "id": "68BB6884-5CEA-4B2A-8F22-46B6A98CDA75", - "baseIconId": "236D9E8E-E38C-4EA9-9539-0E8B1447003A", - "name": "camera-switch", - "codepoint": "F0108", - "aliases": [ - "switch-camera" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "CABA2832-65F9-4196-9681-51C5E2C1CFB2", - "baseIconId": "236D9E8E-E38C-4EA9-9539-0E8B1447003A", - "name": "camera-switch-outline", - "codepoint": "F084A", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "6A8FC2AF-724C-46A2-9F04-C34E7D658679", - "baseIconId": "6A8FC2AF-724C-46A2-9F04-C34E7D658679", - "name": "camera-timer", - "codepoint": "F0109", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Photography" - ], - "author": "Austin Andrews" - }, - { - "id": "5125EF68-0BAB-4C17-BA18-022EAAAE36D5", - "baseIconId": "236D9E8E-E38C-4EA9-9539-0E8B1447003A", - "name": "camera-wireless", - "codepoint": "F0DB6", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "A8BB090E-25FC-4517-A1C9-B2AA1ABD8AFA", - "baseIconId": "236D9E8E-E38C-4EA9-9539-0E8B1447003A", - "name": "camera-wireless-outline", - "codepoint": "F0DB7", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "E5958680-B397-40E1-BDB0-49B05339C973", - "baseIconId": "E5958680-B397-40E1-BDB0-49B05339C973", - "name": "campfire", - "codepoint": "F0EDD", - "aliases": [], - "styles": [], - "version": "3.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "02F70DD2-E16E-43FD-9C2A-267C965E3919", - "baseIconId": "02F70DD2-E16E-43FD-9C2A-267C965E3919", - "name": "cancel", - "codepoint": "F073A", - "aliases": [ - "prohibited", - "ban", - "do-not-disturb-alt", - "denied", - "block", - "forbid", - "no", - "clear" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "1D56356A-1601-41FC-9D98-67736772260B", - "baseIconId": "1D56356A-1601-41FC-9D98-67736772260B", - "name": "candelabra", - "codepoint": "F17D2", - "aliases": [ - "candle", - "candelabrum" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Holiday" - ], - "author": "Colton Wiscombe" - }, - { - "id": "CF2B4CE1-69FF-472B-BE94-620D71F5A42F", - "baseIconId": "CF2B4CE1-69FF-472B-BE94-620D71F5A42F", - "name": "candelabra-fire", - "codepoint": "F17D3", - "aliases": [ - "candelabrum-fire", - "candelabrum-flame", - "candelabra-flame", - "candle-fire", - "candle-flame" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Holiday" - ], - "author": "Colton Wiscombe" - }, - { - "id": "4FB0AA38-406A-4877-8B0C-15C7ED95F22C", - "baseIconId": "4FB0AA38-406A-4877-8B0C-15C7ED95F22C", - "name": "candle", - "codepoint": "F05E2", - "aliases": [ - "candle-flame", - "candle-fire" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Holiday", - "Home Automation" - ], - "author": "Google" - }, - { - "id": "AC3D0F93-E7EB-42DE-BBFE-FEBAE7966B35", - "baseIconId": "AC3D0F93-E7EB-42DE-BBFE-FEBAE7966B35", - "name": "candy", - "codepoint": "F1970", - "aliases": [ - "treat", - "chocolate" - ], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9C3124FB-E9F8-468A-9D51-2CAD3342BEE7", - "baseIconId": "AC3D0F93-E7EB-42DE-BBFE-FEBAE7966B35", - "name": "candy-off", - "codepoint": "F1971", - "aliases": [ - "chocolate-off", - "treat-off" - ], - "styles": [ - "off" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7BA63C38-546A-47FE-8FA7-D3E744B2C96E", - "baseIconId": "AC3D0F93-E7EB-42DE-BBFE-FEBAE7966B35", - "name": "candy-off-outline", - "codepoint": "F1972", - "aliases": [ - "chocolate-off-outline", - "treat-off-outline", - "navi-off" - ], - "styles": [ - "off", - "outline" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B2A0C20C-2A90-4A9F-8C95-179D2ED89002", - "baseIconId": "AC3D0F93-E7EB-42DE-BBFE-FEBAE7966B35", - "name": "candy-outline", - "codepoint": "F1973", - "aliases": [ - "chocolate-outline", - "treat-outline", - "navi", - "hey-listen", - "fairy" - ], - "styles": [ - "outline" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "8CAC723B-0FF5-493B-A3A2-5772FDE46A0F", - "baseIconId": "8CAC723B-0FF5-493B-A3A2-5772FDE46A0F", - "name": "candycane", - "codepoint": "F010A", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Holiday", - "Food \/ Drink" - ], - "author": "Austin Andrews" - }, - { - "id": "4C2DC909-0C3F-431F-A37B-5B66C9F33E37", - "baseIconId": "4C2DC909-0C3F-431F-A37B-5B66C9F33E37", - "name": "cannabis", - "codepoint": "F07A6", - "aliases": [ - "weed", - "pot", - "marijuana" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Nature", - "Medical \/ Hospital" - ], - "author": "Austin Andrews" - }, - { - "id": "1DA6A01B-2804-4C68-A60E-20DBBB6938E5", - "baseIconId": "4C2DC909-0C3F-431F-A37B-5B66C9F33E37", - "name": "cannabis-off", - "codepoint": "F166E", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "74D4E706-53B2-4349-95B2-026B3057D9B2", - "baseIconId": "74D4E706-53B2-4349-95B2-026B3057D9B2", - "name": "caps-lock", - "codepoint": "F0A9B", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Michael Irigoyen" - }, - { - "id": "FCF4FF57-4547-4C11-A20A-3D26252780EC", - "baseIconId": "FCF4FF57-4547-4C11-A20A-3D26252780EC", - "name": "car", - "codepoint": "F010B", - "aliases": [ - "directions-car", - "drive-eta", - "time-to-leave" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Navigation", - "Automotive" - ], - "author": "Google" - }, - { - "id": "02A38C46-7F26-4A95-9025-33181E528B1C", - "baseIconId": "FCF4FF57-4547-4C11-A20A-3D26252780EC", - "name": "car-2-plus", - "codepoint": "F1015", - "aliases": [ - "hov-lane", - "high-occupancy-vehicle-lane", - "carpool-lane" - ], - "styles": [ - "variant" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9E971816-54E0-4C43-A6BB-AD821E17DC30", - "baseIconId": "FCF4FF57-4547-4C11-A20A-3D26252780EC", - "name": "car-3-plus", - "codepoint": "F1016", - "aliases": [ - "hov-lane", - "high-occupancy-vehicle-lane", - "carpool-lane" - ], - "styles": [ - "variant" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F647E77D-3416-4DFD-8E9C-0BB1A1FDA6A8", - "baseIconId": "FCF4FF57-4547-4C11-A20A-3D26252780EC", - "name": "car-arrow-left", - "codepoint": "F13B2", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "5.0.45", - "deprecated": false, - "tags": [ - "Automotive", - "Transportation + Road" - ], - "author": "Michael Irigoyen" - }, - { - "id": "04AA17AE-F0E4-4B44-9440-812E1F875884", - "baseIconId": "FCF4FF57-4547-4C11-A20A-3D26252780EC", - "name": "car-arrow-right", - "codepoint": "F13B3", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "5.0.45", - "deprecated": false, - "tags": [ - "Automotive", - "Transportation + Road" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E41B22B2-CAC1-4D56-877B-2DC4E5E4BEC2", - "baseIconId": "FCF4FF57-4547-4C11-A20A-3D26252780EC", - "name": "car-back", - "codepoint": "F0E1B", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Automotive", - "Transportation + Road" - ], - "author": "Michael Richins" - }, - { - "id": "4AF128D8-1E70-4396-BB5A-F96A7D0F9BCB", - "baseIconId": "4AF128D8-1E70-4396-BB5A-F96A7D0F9BCB", - "name": "car-battery", - "codepoint": "F010C", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Battery", - "Automotive" - ], - "author": "Simran" - }, - { - "id": "170D1972-AFA7-417C-BCC4-B07689D8B6F4", - "baseIconId": "843DC5E8-723D-44A1-A959-A49C662712D1", - "name": "car-brake-abs", - "codepoint": "F0C47", - "aliases": [ - "anti-lock-brake-system", - "anti-lock-braking-system" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "843DC5E8-723D-44A1-A959-A49C662712D1", - "baseIconId": "843DC5E8-723D-44A1-A959-A49C662712D1", - "name": "car-brake-alert", - "codepoint": "F0C48", - "aliases": [ - "car-parking-brake", - "car-handbrake", - "car-hand-brake", - "car-emergency-brake", - "car-brake-warning" - ], - "styles": [ - "alert" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Automotive", - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "4FBEBCCE-0C62-45B7-AD52-06CD18B8927C", - "baseIconId": "843DC5E8-723D-44A1-A959-A49C662712D1", - "name": "car-brake-fluid-level", - "codepoint": "F1909", - "aliases": [], - "styles": [], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "4F3D37E3-F34C-4720-BC92-1173A85F88FC", - "baseIconId": "843DC5E8-723D-44A1-A959-A49C662712D1", - "name": "car-brake-hold", - "codepoint": "F0D5E", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A7AFFF81-AC39-478A-AF75-E33E20A44D09", - "baseIconId": "843DC5E8-723D-44A1-A959-A49C662712D1", - "name": "car-brake-low-pressure", - "codepoint": "F190A", - "aliases": [], - "styles": [], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "CBCA05E4-718D-4727-8A1B-EDA815D00AE1", - "baseIconId": "843DC5E8-723D-44A1-A959-A49C662712D1", - "name": "car-brake-parking", - "codepoint": "F0D5F", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "8627DD5D-1BE6-4FBB-81A6-7D40ED3C1E69", - "baseIconId": "843DC5E8-723D-44A1-A959-A49C662712D1", - "name": "car-brake-retarder", - "codepoint": "F1017", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "663F3528-508B-49EE-8437-9B2E757E7AAD", - "baseIconId": "843DC5E8-723D-44A1-A959-A49C662712D1", - "name": "car-brake-temperature", - "codepoint": "F190B", - "aliases": [], - "styles": [], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7858E89E-A9E6-490D-ABCF-42591D9BBA5C", - "baseIconId": "843DC5E8-723D-44A1-A959-A49C662712D1", - "name": "car-brake-worn-linings", - "codepoint": "F190C", - "aliases": [], - "styles": [], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "6A83FE13-CCAF-473E-B660-F2AD8EE561AD", - "baseIconId": "6A83FE13-CCAF-473E-B660-F2AD8EE561AD", - "name": "car-child-seat", - "codepoint": "F0FA3", - "aliases": [], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Automotive", - "People \/ Family" - ], - "author": "Michael Irigoyen" - }, - { - "id": "3AB7B60B-344F-4F2B-AFAD-7DB7BA167E68", - "baseIconId": "FCF4FF57-4547-4C11-A20A-3D26252780EC", - "name": "car-clock", - "codepoint": "F1974", - "aliases": [], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "862F1CFE-643B-44BB-9B46-33BF1C75CEE2", - "baseIconId": "862F1CFE-643B-44BB-9B46-33BF1C75CEE2", - "name": "car-clutch", - "codepoint": "F1018", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B854CD8C-6731-4C70-917F-9033015E94F4", - "baseIconId": "FCF4FF57-4547-4C11-A20A-3D26252780EC", - "name": "car-cog", - "codepoint": "F13CC", - "aliases": [ - "car-settings" - ], - "styles": [ - "settings", - "variant" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Automotive", - "Settings", - "Transportation + Road" - ], - "author": "Simran" - }, - { - "id": "8C8468C7-8A41-42A1-8C33-4AAE55FF9E2A", - "baseIconId": "FCF4FF57-4547-4C11-A20A-3D26252780EC", - "name": "car-connected", - "codepoint": "F010D", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Automotive" - ], - "author": "Simran" - }, - { - "id": "D7E88B5B-B6F3-4C55-AE93-39A78593B351", - "baseIconId": "CB49A868-3317-4445-BFED-13CB6533000E", - "name": "car-convertible", - "codepoint": "F07A7", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Automotive" - ], - "author": "GreenTurtwig" - }, - { - "id": "1DA47513-FB2A-4A20-926F-3D2E90D40F26", - "baseIconId": "1DA47513-FB2A-4A20-926F-3D2E90D40F26", - "name": "car-coolant-level", - "codepoint": "F1019", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7FCD959A-B0AA-43AD-B448-5B51A1A2C023", - "baseIconId": "7FCD959A-B0AA-43AD-B448-5B51A1A2C023", - "name": "car-cruise-control", - "codepoint": "F0D60", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1B289520-CE81-4385-88B3-923CB0FD6233", - "baseIconId": "1B289520-CE81-4385-88B3-923CB0FD6233", - "name": "car-defrost-front", - "codepoint": "F0D61", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "8B6938C0-6C97-41A4-A22F-83D6A9F1AC3F", - "baseIconId": "1B289520-CE81-4385-88B3-923CB0FD6233", - "name": "car-defrost-rear", - "codepoint": "F0D62", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "AA43B04E-7C56-4DFB-83FC-081E3A4A3F48", - "baseIconId": "AA43B04E-7C56-4DFB-83FC-081E3A4A3F48", - "name": "car-door", - "codepoint": "F0B6B", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Austin Andrews" - }, - { - "id": "76A1EC75-D6D2-465E-89F7-EBE2AF145C4C", - "baseIconId": "AA43B04E-7C56-4DFB-83FC-081E3A4A3F48", - "name": "car-door-lock", - "codepoint": "F109D", - "aliases": [], - "styles": [ - "lock" - ], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Automotive", - "Lock" - ], - "author": "Michael Richins" - }, - { - "id": "9558FFAF-0865-47B4-BC3D-32E34266E2F0", - "baseIconId": "AA43B04E-7C56-4DFB-83FC-081E3A4A3F48", - "name": "car-door-lock-open", - "codepoint": "F1C81", - "aliases": [], - "styles": [ - "lock" - ], - "version": "7.3.96", - "deprecated": false, - "tags": [ - "Automotive", - "Lock" - ], - "author": "Michael Richins" - }, - { - "id": "48583637-1477-451A-8E75-765EC4EB0585", - "baseIconId": "FCF4FF57-4547-4C11-A20A-3D26252780EC", - "name": "car-electric", - "codepoint": "F0B6C", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Automotive" - ], - "author": "Google" - }, - { - "id": "D97919E2-BB44-4ABE-86AB-68CD49AC4BE7", - "baseIconId": "FCF4FF57-4547-4C11-A20A-3D26252780EC", - "name": "car-electric-outline", - "codepoint": "F15B5", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Automotive" - ], - "author": "Google" - }, - { - "id": "355D6842-8858-4C79-B684-0E0F5E03801D", - "baseIconId": "FCF4FF57-4547-4C11-A20A-3D26252780EC", - "name": "car-emergency", - "codepoint": "F160F", - "aliases": [ - "car-police" - ], - "styles": [ - "variant" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Automotive" - ], - "author": "GreenTurtwig" - }, - { - "id": "5BF118F1-1115-4928-8755-34AF926CF13D", - "baseIconId": "843DC5E8-723D-44A1-A959-A49C662712D1", - "name": "car-esp", - "codepoint": "F0C49", - "aliases": [ - "electronic-stability-program" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "90BBBADD-0FCD-4147-9D6E-5DAFCACF2B0B", - "baseIconId": "CB49A868-3317-4445-BFED-13CB6533000E", - "name": "car-estate", - "codepoint": "F07A8", - "aliases": [ - "car-suv", - "car-sports-utility-vehicle" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Automotive" - ], - "author": "GreenTurtwig" - }, - { - "id": "21A2527E-9AC0-4FFA-84CB-246608BEB91D", - "baseIconId": "CB49A868-3317-4445-BFED-13CB6533000E", - "name": "car-hatchback", - "codepoint": "F07A9", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Automotive" - ], - "author": "GreenTurtwig" - }, - { - "id": "6C179C94-30C5-4DD8-B80E-9FFF69ABE0E1", - "baseIconId": "FCF4FF57-4547-4C11-A20A-3D26252780EC", - "name": "car-info", - "codepoint": "F11BE", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Richins" - }, - { - "id": "3B659932-957C-4DD8-81CF-7ECABC572BFC", - "baseIconId": "FCF4FF57-4547-4C11-A20A-3D26252780EC", - "name": "car-key", - "codepoint": "F0B6D", - "aliases": [ - "car-rental", - "rent-a-car" - ], - "styles": [ - "key" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Automotive" - ], - "author": "GreenTurtwig" - }, - { - "id": "10F38BAD-F9E1-4715-9BE9-3784C788D59A", - "baseIconId": "10F38BAD-F9E1-4715-9BE9-3784C788D59A", - "name": "car-lifted-pickup", - "codepoint": "F152D", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Automotive", - "Agriculture" - ], - "author": "Austin Andrews" - }, - { - "id": "311C671E-9503-485D-8C7D-359E2A3A6D36", - "baseIconId": "7EF72FB8-3767-495E-9F80-888F6924B856", - "name": "car-light-alert", - "codepoint": "F190D", - "aliases": [], - "styles": [ - "alert" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Alert \/ Error", - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DA708BEF-4826-49CF-8872-C42996C9616F", - "baseIconId": "DA708BEF-4826-49CF-8872-C42996C9616F", - "name": "car-light-dimmed", - "codepoint": "F0C4A", - "aliases": [ - "head-light-dimmed", - "low-beam" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "3DAC6713-744B-485F-A985-7E2A16F14D6A", - "baseIconId": "DA708BEF-4826-49CF-8872-C42996C9616F", - "name": "car-light-fog", - "codepoint": "F0C4B", - "aliases": [ - "head-light-fog" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7EF72FB8-3767-495E-9F80-888F6924B856", - "baseIconId": "DA708BEF-4826-49CF-8872-C42996C9616F", - "name": "car-light-high", - "codepoint": "F0C4C", - "aliases": [ - "head-light-high", - "high-beam" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "43758944-946B-4883-A77C-F6F28F175920", - "baseIconId": "CB49A868-3317-4445-BFED-13CB6533000E", - "name": "car-limousine", - "codepoint": "F08CD", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Automotive" - ], - "author": "GreenTurtwig" - }, - { - "id": "B31CB4B0-9987-4F99-8409-FA4601E34064", - "baseIconId": "FCF4FF57-4547-4C11-A20A-3D26252780EC", - "name": "car-multiple", - "codepoint": "F0B6E", - "aliases": [], - "styles": [ - "multiple" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Automotive" - ], - "author": "Michael Richins" - }, - { - "id": "5426595C-DCD3-4CFE-990E-775C80BDCDC6", - "baseIconId": "FCF4FF57-4547-4C11-A20A-3D26252780EC", - "name": "car-off", - "codepoint": "F0E1C", - "aliases": [], - "styles": [ - "off" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Richins" - }, - { - "id": "8EDBF463-60A3-4F49-9198-B52F8E6FB68B", - "baseIconId": "FCF4FF57-4547-4C11-A20A-3D26252780EC", - "name": "car-outline", - "codepoint": "F14ED", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Google" - }, - { - "id": "03116932-7E19-45C7-9E34-02308FCDD7F4", - "baseIconId": "DA708BEF-4826-49CF-8872-C42996C9616F", - "name": "car-parking-lights", - "codepoint": "F0D63", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "76BB371D-335C-4F53-A439-2A681778C6BC", - "baseIconId": "CB49A868-3317-4445-BFED-13CB6533000E", - "name": "car-pickup", - "codepoint": "F07AA", - "aliases": [ - "truck-pickup" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Automotive", - "Agriculture" - ], - "author": "GreenTurtwig" - }, - { - "id": "6BF272B9-40CF-45E8-8CE4-8E186BFE95BF", - "baseIconId": "FCF4FF57-4547-4C11-A20A-3D26252780EC", - "name": "car-search", - "codepoint": "F1B8D", - "aliases": [ - "car-find" - ], - "styles": [ - "search" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "tetzla" - }, - { - "id": "B64ACFFE-836E-4F68-8D1B-3F6FCC263602", - "baseIconId": "FCF4FF57-4547-4C11-A20A-3D26252780EC", - "name": "car-search-outline", - "codepoint": "F1B8E", - "aliases": [ - "car-find-outline" - ], - "styles": [ - "outline", - "search" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "tetzla" - }, - { - "id": "F0D6A2CA-711D-440E-B4A2-586C071E1192", - "baseIconId": "F0D6A2CA-711D-440E-B4A2-586C071E1192", - "name": "car-seat", - "codepoint": "F0FA4", - "aliases": [], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "3B08983F-F281-48F5-8A34-383591971006", - "baseIconId": "F0D6A2CA-711D-440E-B4A2-586C071E1192", - "name": "car-seat-cooler", - "codepoint": "F0FA5", - "aliases": [], - "styles": [ - "variant" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "300D30D3-28E2-4D45-A31D-9FF1E92AC5BE", - "baseIconId": "F0D6A2CA-711D-440E-B4A2-586C071E1192", - "name": "car-seat-heater", - "codepoint": "F0FA6", - "aliases": [], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "611D7DCF-0792-430C-AB3E-27DB222A197D", - "baseIconId": "FCF4FF57-4547-4C11-A20A-3D26252780EC", - "name": "car-select", - "codepoint": "F1879", - "aliases": [ - "car-location" - ], - "styles": [ - "variant" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Jeff Anders" - }, - { - "id": "4ED4D6FD-9E30-4D99-9FD0-11B316BACB96", - "baseIconId": "FCF4FF57-4547-4C11-A20A-3D26252780EC", - "name": "car-settings", - "codepoint": "F13CD", - "aliases": [], - "styles": [ - "settings" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Automotive", - "Settings" - ], - "author": "Simran" - }, - { - "id": "DF11B72C-D029-49BB-9657-6A267CC1DEA4", - "baseIconId": "DF11B72C-D029-49BB-9657-6A267CC1DEA4", - "name": "car-shift-pattern", - "codepoint": "F0F40", - "aliases": [ - "car-transmission", - "car-manual-transmission" - ], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Colton Wiscombe" - }, - { - "id": "CB49A868-3317-4445-BFED-13CB6533000E", - "baseIconId": "CB49A868-3317-4445-BFED-13CB6533000E", - "name": "car-side", - "codepoint": "F07AB", - "aliases": [ - "car-saloon" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Automotive" - ], - "author": "GreenTurtwig" - }, - { - "id": "69EE759D-1F0E-414B-A014-5EB611D6286E", - "baseIconId": "69EE759D-1F0E-414B-A014-5EB611D6286E", - "name": "car-speed-limiter", - "codepoint": "F190E", - "aliases": [], - "styles": [], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "97F5ED58-F2AB-40AC-A882-4A90DB5D2018", - "baseIconId": "CB49A868-3317-4445-BFED-13CB6533000E", - "name": "car-sports", - "codepoint": "F07AC", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Sport", - "Automotive" - ], - "author": "GreenTurtwig" - }, - { - "id": "93700192-0A90-4FC4-944C-894F29BB478F", - "baseIconId": "93700192-0A90-4FC4-944C-894F29BB478F", - "name": "car-tire-alert", - "codepoint": "F0C4D", - "aliases": [ - "car-tyre-alert", - "car-tyre-warning", - "car-tire-warning" - ], - "styles": [ - "alert" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Automotive", - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D9DC5111-14E6-4585-A79B-489FC04C1CE3", - "baseIconId": "D9DC5111-14E6-4585-A79B-489FC04C1CE3", - "name": "car-traction-control", - "codepoint": "F0D64", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1D1E80DE-A3A0-4487-9A94-7C9C3F5E0A59", - "baseIconId": "1D1E80DE-A3A0-4487-9A94-7C9C3F5E0A59", - "name": "car-turbocharger", - "codepoint": "F101A", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "95E617D7-9A48-458E-96C5-A8CBBEF3A852", - "baseIconId": "FCF4FF57-4547-4C11-A20A-3D26252780EC", - "name": "car-wash", - "codepoint": "F010E", - "aliases": [ - "local-car-wash" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Places", - "Automotive" - ], - "author": "Google" - }, - { - "id": "6E8AA995-39A0-44C4-A0FF-3BC1CA7787DE", - "baseIconId": "6E8AA995-39A0-44C4-A0FF-3BC1CA7787DE", - "name": "car-windshield", - "codepoint": "F101B", - "aliases": [ - "car-front-glass" - ], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Richins" - }, - { - "id": "55F7CDA2-F41C-42C4-8154-1F8B1C603F25", - "baseIconId": "6E8AA995-39A0-44C4-A0FF-3BC1CA7787DE", - "name": "car-windshield-outline", - "codepoint": "F101C", - "aliases": [ - "car-front-glass-outline" - ], - "styles": [ - "outline" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Richins" - }, - { - "id": "E0C3B158-D502-4354-94AC-994A48BD90FE", - "baseIconId": "FCF4FF57-4547-4C11-A20A-3D26252780EC", - "name": "car-wireless", - "codepoint": "F1878", - "aliases": [ - "car-autonomous", - "car-self-driving", - "car-smart" - ], - "styles": [ - "variant" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "34DABCA7-B5EF-42DD-9731-ABAA7F3DD322", - "baseIconId": "FCF4FF57-4547-4C11-A20A-3D26252780EC", - "name": "car-wrench", - "codepoint": "F1814", - "aliases": [ - "car-repair", - "mechanic" - ], - "styles": [ - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Automotive", - "Hardware \/ Tools" - ], - "author": "Colton Wiscombe" - }, - { - "id": "077EABE1-1DBC-4AC9-AA0E-B45386391968", - "baseIconId": "077EABE1-1DBC-4AC9-AA0E-B45386391968", - "name": "carabiner", - "codepoint": "F14C0", - "aliases": [ - "karabiner", - "rock-climbing" - ], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Google" - }, - { - "id": "2E5B9249-0FFB-48D0-8A61-2019FD9ED32F", - "baseIconId": "CB49A868-3317-4445-BFED-13CB6533000E", - "name": "caravan", - "codepoint": "F07AD", - "aliases": [ - "holiday", - "camping" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Home Automation", - "Automotive" - ], - "author": "GreenTurtwig" - }, - { - "id": "AB226798-9B8A-4929-8880-6665C1114776", - "baseIconId": "AB226798-9B8A-4929-8880-6665C1114776", - "name": "card", - "codepoint": "F0B6F", - "aliases": [ - "button" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Rynco Li" - }, - { - "id": "4ACD18FB-87D4-46F1-9231-8BD0A91867A9", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "card-account-details", - "codepoint": "F05D2", - "aliases": [ - "identification-card", - "user-card-details", - "id-card", - "person-card-details", - "drivers-license", - "business-card" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Christopher Schreiner" - }, - { - "id": "6BD2BC65-C99A-42FB-A37E-85F5E8C91D32", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "card-account-details-outline", - "codepoint": "F0DAB", - "aliases": [ - "identification-card-outline", - "user-card-details-outline", - "id-card-outline", - "person-card-details-outline", - "drivers-license-outline", - "business-card-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Richins" - }, - { - "id": "951C68F1-876F-440E-A4D9-B724BB6D6181", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "card-account-details-star", - "codepoint": "F02A3", - "aliases": [ - "card-account-details-favorite" - ], - "styles": [ - "star" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Richins" - }, - { - "id": "97C9CAC2-9F94-40EA-9A08-1A9BDD208743", - "baseIconId": "E76EC23F-AB71-49B3-9173-841544527A20", - "name": "card-account-details-star-outline", - "codepoint": "F06DB", - "aliases": [ - "card-account-details-favorite-outline" - ], - "styles": [ - "outline", - "star" - ], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Richins" - }, - { - "id": "81840940-8672-42C0-B657-15E94B3638D6", - "baseIconId": "AB226798-9B8A-4929-8880-6665C1114776", - "name": "card-account-mail", - "codepoint": "F018E", - "aliases": [ - "contact-mail" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "F43579AB-0098-44B4-910C-3B24193C3B79", - "baseIconId": "AB226798-9B8A-4929-8880-6665C1114776", - "name": "card-account-mail-outline", - "codepoint": "F0E98", - "aliases": [ - "contact-mail-outline" - ], - "styles": [ - "outline" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "D992EB08-7BDB-4D44-B3C1-A123F80C17FA", - "baseIconId": "AB226798-9B8A-4929-8880-6665C1114776", - "name": "card-account-phone", - "codepoint": "F0E99", - "aliases": [ - "contact-phone" - ], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "ABC0498A-9F66-489B-A78E-91B3415EE3E4", - "baseIconId": "AB226798-9B8A-4929-8880-6665C1114776", - "name": "card-account-phone-outline", - "codepoint": "F0E9A", - "aliases": [ - "contact-phone-outline" - ], - "styles": [ - "outline" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "BFFB5C41-DA26-4980-8B25-1DCB21B4673E", - "baseIconId": "AB226798-9B8A-4929-8880-6665C1114776", - "name": "card-bulleted", - "codepoint": "F0B70", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Rynco Li" - }, - { - "id": "487C3E75-13DF-4C18-98E4-55CB048367EA", - "baseIconId": "AB226798-9B8A-4929-8880-6665C1114776", - "name": "card-bulleted-off", - "codepoint": "F0B71", - "aliases": [], - "styles": [ - "off" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Rynco Li" - }, - { - "id": "A6845501-AB5C-4511-863D-25E6E0F4F74C", - "baseIconId": "AB226798-9B8A-4929-8880-6665C1114776", - "name": "card-bulleted-off-outline", - "codepoint": "F0B72", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Rynco Li" - }, - { - "id": "5A5D5F82-1BBA-4661-A4B7-6AC29484EBB3", - "baseIconId": "AB226798-9B8A-4929-8880-6665C1114776", - "name": "card-bulleted-outline", - "codepoint": "F0B73", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Rynco Li" - }, - { - "id": "A8645D1A-6D02-401F-82F6-2564C6EC20D8", - "baseIconId": "AB226798-9B8A-4929-8880-6665C1114776", - "name": "card-bulleted-settings", - "codepoint": "F0B74", - "aliases": [], - "styles": [ - "settings" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Rynco Li" - }, - { - "id": "5C008C35-201B-4DDB-A37B-6E513C9304F2", - "baseIconId": "AB226798-9B8A-4929-8880-6665C1114776", - "name": "card-bulleted-settings-outline", - "codepoint": "F0B75", - "aliases": [], - "styles": [ - "outline", - "settings" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Rynco Li" - }, - { - "id": "7538FC94-FD58-41FD-9585-1F6B6A0AA784", - "baseIconId": "AB226798-9B8A-4929-8880-6665C1114776", - "name": "card-minus", - "codepoint": "F1600", - "aliases": [], - "styles": [ - "minus" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "DBAC0B3F-A11E-4BFF-B5A5-802C28802CFC", - "baseIconId": "AB226798-9B8A-4929-8880-6665C1114776", - "name": "card-minus-outline", - "codepoint": "F1601", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "CCB6A7E7-E036-462A-80BB-8EBFBADD61CB", - "baseIconId": "AB226798-9B8A-4929-8880-6665C1114776", - "name": "card-multiple", - "codepoint": "F17F1", - "aliases": [], - "styles": [ - "multiple" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "5A952723-5033-43DA-B1A8-A9DD1A5B3DB6", - "baseIconId": "AB226798-9B8A-4929-8880-6665C1114776", - "name": "card-multiple-outline", - "codepoint": "F17F2", - "aliases": [], - "styles": [ - "multiple", - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "B426A851-795C-4627-9F65-EF585020DE63", - "baseIconId": "AB226798-9B8A-4929-8880-6665C1114776", - "name": "card-off", - "codepoint": "F1602", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "DD1C1DF5-C30E-421A-9FA7-AC8F0D021B95", - "baseIconId": "AB226798-9B8A-4929-8880-6665C1114776", - "name": "card-off-outline", - "codepoint": "F1603", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "EB9242D1-9D25-4141-A1A0-06636EC84541", - "baseIconId": "AB226798-9B8A-4929-8880-6665C1114776", - "name": "card-outline", - "codepoint": "F0B76", - "aliases": [ - "button-outline" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Rynco Li" - }, - { - "id": "3B4FC4CD-DB60-407A-B230-C6CA593977DD", - "baseIconId": "AB226798-9B8A-4929-8880-6665C1114776", - "name": "card-plus", - "codepoint": "F11FF", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "DD8BE7C3-7AE2-420C-8DA2-B3AA4EEC5614", - "baseIconId": "AB226798-9B8A-4929-8880-6665C1114776", - "name": "card-plus-outline", - "codepoint": "F1200", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "6902F560-9012-4F0B-8E93-6B0B7641C019", - "baseIconId": "AB226798-9B8A-4929-8880-6665C1114776", - "name": "card-remove", - "codepoint": "F1604", - "aliases": [], - "styles": [ - "remove" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "84C0BF2A-B9FB-4E01-9961-A4146CB9BCC3", - "baseIconId": "AB226798-9B8A-4929-8880-6665C1114776", - "name": "card-remove-outline", - "codepoint": "F1605", - "aliases": [], - "styles": [ - "outline", - "remove" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "2A09F869-B221-4ABC-B803-16560B7BA900", - "baseIconId": "AB226798-9B8A-4929-8880-6665C1114776", - "name": "card-search", - "codepoint": "F1074", - "aliases": [ - "pageview" - ], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "3EE58157-57AF-420D-9F5B-C545BCE7D395", - "baseIconId": "AB226798-9B8A-4929-8880-6665C1114776", - "name": "card-search-outline", - "codepoint": "F1075", - "aliases": [ - "pageview-outline" - ], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "EF0C4465-ACEB-44FA-BA7F-A0422E4481F6", - "baseIconId": "AB226798-9B8A-4929-8880-6665C1114776", - "name": "card-text", - "codepoint": "F0B77", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Rynco Li" - }, - { - "id": "45A9D669-8244-476D-A148-21EAB63F819B", - "baseIconId": "AB226798-9B8A-4929-8880-6665C1114776", - "name": "card-text-outline", - "codepoint": "F0B78", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Rynco Li" - }, - { - "id": "7E04A92C-1DC5-4A5F-84B0-57A50545EBE4", - "baseIconId": "7E04A92C-1DC5-4A5F-84B0-57A50545EBE4", - "name": "cards", - "codepoint": "F0638", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Simran" - }, - { - "id": "FD5114FD-37CB-4346-BC73-58E1EED49CF3", - "baseIconId": "FD5114FD-37CB-4346-BC73-58E1EED49CF3", - "name": "cards-club", - "codepoint": "F08CE", - "aliases": [ - "suit-clubs", - "poker-club" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Nick" - }, - { - "id": "6F2A121B-8E9C-43C3-8566-5AA696997778", - "baseIconId": "FD5114FD-37CB-4346-BC73-58E1EED49CF3", - "name": "cards-club-outline", - "codepoint": "F189F", - "aliases": [], - "styles": [], - "version": "6.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "0934FB0D-8585-4064-989F-054E52D16FDB", - "baseIconId": "0934FB0D-8585-4064-989F-054E52D16FDB", - "name": "cards-diamond", - "codepoint": "F08CF", - "aliases": [ - "suit-diamonds", - "hov-lane", - "high-occupancy-vehicle-lane", - "carpool-lane", - "poker-diamond" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Gaming \/ RPG", - "Transportation + Road" - ], - "author": "Nick" - }, - { - "id": "529FA74E-39AF-4AF4-BAD3-637FDFBD53AE", - "baseIconId": "0934FB0D-8585-4064-989F-054E52D16FDB", - "name": "cards-diamond-outline", - "codepoint": "F101D", - "aliases": [ - "hov-lane-outline", - "high-occupancy-vehicle-lane-outline", - "carpool-lane-outline", - "poker-diamond-outline" - ], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Michael Richins" - }, - { - "id": "152E7662-6FDD-478C-A945-68F6B04CB073", - "baseIconId": "152E7662-6FDD-478C-A945-68F6B04CB073", - "name": "cards-heart", - "codepoint": "F08D0", - "aliases": [ - "suit-hearts", - "poker-heart" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Nick" - }, - { - "id": "BA1E8534-7828-4FE0-A0D3-E016FA76CE8C", - "baseIconId": "152E7662-6FDD-478C-A945-68F6B04CB073", - "name": "cards-heart-outline", - "codepoint": "F18A0", - "aliases": [], - "styles": [], - "version": "6.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "BB07EFB4-5078-47BA-B441-93D4957AF7F9", - "baseIconId": "7E04A92C-1DC5-4A5F-84B0-57A50545EBE4", - "name": "cards-outline", - "codepoint": "F0639", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Simran" - }, - { - "id": "F3847846-75CC-462A-A4E7-74A2AF93AC5A", - "baseIconId": "7E04A92C-1DC5-4A5F-84B0-57A50545EBE4", - "name": "cards-playing", - "codepoint": "F18A1", - "aliases": [], - "styles": [ - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "CCBA1AB3-8133-4FB0-BB19-DE8D42AD1ADD", - "baseIconId": "FD5114FD-37CB-4346-BC73-58E1EED49CF3", - "name": "cards-playing-club", - "codepoint": "F18A2", - "aliases": [], - "styles": [ - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "GreenTurtwig" - }, - { - "id": "52FA2B41-3111-4D72-800A-91E9665CDA06", - "baseIconId": "FD5114FD-37CB-4346-BC73-58E1EED49CF3", - "name": "cards-playing-club-multiple", - "codepoint": "F18A3", - "aliases": [], - "styles": [ - "multiple", - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "GreenTurtwig" - }, - { - "id": "2521E853-62E5-4CDD-9EE9-8F43FC2FB8EB", - "baseIconId": "FD5114FD-37CB-4346-BC73-58E1EED49CF3", - "name": "cards-playing-club-multiple-outline", - "codepoint": "F18A4", - "aliases": [], - "styles": [ - "multiple", - "outline", - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "GreenTurtwig" - }, - { - "id": "BDB29BCE-FA8C-4CFB-8B23-A0DC648BC203", - "baseIconId": "FD5114FD-37CB-4346-BC73-58E1EED49CF3", - "name": "cards-playing-club-outline", - "codepoint": "F18A5", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "GreenTurtwig" - }, - { - "id": "AF3E53EC-69B3-470E-820E-F106CF69D453", - "baseIconId": "0934FB0D-8585-4064-989F-054E52D16FDB", - "name": "cards-playing-diamond", - "codepoint": "F18A6", - "aliases": [], - "styles": [ - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "GreenTurtwig" - }, - { - "id": "FB787ECA-1A04-48A9-8438-F3EC3475D81C", - "baseIconId": "0934FB0D-8585-4064-989F-054E52D16FDB", - "name": "cards-playing-diamond-multiple", - "codepoint": "F18A7", - "aliases": [], - "styles": [ - "multiple", - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "GreenTurtwig" - }, - { - "id": "84440A36-7850-44EB-A269-B58893D0FEDC", - "baseIconId": "0934FB0D-8585-4064-989F-054E52D16FDB", - "name": "cards-playing-diamond-multiple-outline", - "codepoint": "F18A8", - "aliases": [], - "styles": [ - "multiple", - "outline", - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "GreenTurtwig" - }, - { - "id": "546D65EC-4458-49DA-AC96-54D8DB955FCA", - "baseIconId": "0934FB0D-8585-4064-989F-054E52D16FDB", - "name": "cards-playing-diamond-outline", - "codepoint": "F18A9", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "GreenTurtwig" - }, - { - "id": "638C8BA0-9D3F-46FF-98F2-2A732D4116F4", - "baseIconId": "152E7662-6FDD-478C-A945-68F6B04CB073", - "name": "cards-playing-heart", - "codepoint": "F18AA", - "aliases": [], - "styles": [ - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "GreenTurtwig" - }, - { - "id": "53152CB4-487D-4D6C-8E52-E5A1B3F38289", - "baseIconId": "152E7662-6FDD-478C-A945-68F6B04CB073", - "name": "cards-playing-heart-multiple", - "codepoint": "F18AB", - "aliases": [], - "styles": [ - "multiple", - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "GreenTurtwig" - }, - { - "id": "74B2938C-1AC3-4022-AAF2-3983F3EECE7D", - "baseIconId": "152E7662-6FDD-478C-A945-68F6B04CB073", - "name": "cards-playing-heart-multiple-outline", - "codepoint": "F18AC", - "aliases": [], - "styles": [ - "multiple", - "outline", - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "GreenTurtwig" - }, - { - "id": "7951C9AF-05E8-4A77-B682-AD1F5D1C04B8", - "baseIconId": "152E7662-6FDD-478C-A945-68F6B04CB073", - "name": "cards-playing-heart-outline", - "codepoint": "F18AD", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "GreenTurtwig" - }, - { - "id": "C388C342-49AA-4577-A968-12BD804E5A8E", - "baseIconId": "7E04A92C-1DC5-4A5F-84B0-57A50545EBE4", - "name": "cards-playing-outline", - "codepoint": "F063A", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Simran" - }, - { - "id": "E3254FE1-D955-4E3D-AD8E-385E5F307BA1", - "baseIconId": "B2DEB97A-B08E-4E10-8E24-A4AF2CF98C74", - "name": "cards-playing-spade", - "codepoint": "F18AE", - "aliases": [], - "styles": [ - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "GreenTurtwig" - }, - { - "id": "46EAB9B6-C359-4D80-AA5E-96A05E42F63B", - "baseIconId": "B2DEB97A-B08E-4E10-8E24-A4AF2CF98C74", - "name": "cards-playing-spade-multiple", - "codepoint": "F18AF", - "aliases": [], - "styles": [ - "multiple", - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "GreenTurtwig" - }, - { - "id": "FECC9B9C-2115-4613-926B-C22A16ABCFE8", - "baseIconId": "B2DEB97A-B08E-4E10-8E24-A4AF2CF98C74", - "name": "cards-playing-spade-multiple-outline", - "codepoint": "F18B0", - "aliases": [], - "styles": [ - "multiple", - "outline", - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "GreenTurtwig" - }, - { - "id": "A10D94B9-210F-453F-B9C7-65175CDD81B1", - "baseIconId": "B2DEB97A-B08E-4E10-8E24-A4AF2CF98C74", - "name": "cards-playing-spade-outline", - "codepoint": "F18B1", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "GreenTurtwig" - }, - { - "id": "B2DEB97A-B08E-4E10-8E24-A4AF2CF98C74", - "baseIconId": "B2DEB97A-B08E-4E10-8E24-A4AF2CF98C74", - "name": "cards-spade", - "codepoint": "F08D1", - "aliases": [ - "suit-spades", - "poker-spade" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Nick" - }, - { - "id": "2A12FA98-57B3-43FC-A927-384419B791EF", - "baseIconId": "B2DEB97A-B08E-4E10-8E24-A4AF2CF98C74", - "name": "cards-spade-outline", - "codepoint": "F18B2", - "aliases": [], - "styles": [ - "outline" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A000BD20-147F-43FB-AD99-08AE6BA2E80B", - "baseIconId": "A000BD20-147F-43FB-AD99-08AE6BA2E80B", - "name": "cards-variant", - "codepoint": "F06C7", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Case Sandberg" - }, - { - "id": "6BD10A61-9A45-4A5A-ABEF-404135975917", - "baseIconId": "6BD10A61-9A45-4A5A-ABEF-404135975917", - "name": "carrot", - "codepoint": "F010F", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Agriculture", - "Food \/ Drink" - ], - "author": "Austin Andrews" - }, - { - "id": "97563623-CF1C-43AE-87D8-DF54802D442B", - "baseIconId": "97563623-CF1C-43AE-87D8-DF54802D442B", - "name": "cart", - "codepoint": "F0110", - "aliases": [ - "trolley", - "local-grocery-store", - "shopping-cart" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Google" - }, - { - "id": "0DCB3032-271E-4522-ABEE-386F49E6B4ED", - "baseIconId": "97563623-CF1C-43AE-87D8-DF54802D442B", - "name": "cart-arrow-down", - "codepoint": "F0D66", - "aliases": [ - "shopping-cart-arrow-down", - "trolley-arrow-down" - ], - "styles": [ - "arrow" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Simran" - }, - { - "id": "31173BE4-3D5E-45EB-BD45-3D19E86AF6B2", - "baseIconId": "97563623-CF1C-43AE-87D8-DF54802D442B", - "name": "cart-arrow-right", - "codepoint": "F0C4E", - "aliases": [ - "trolley-arrow-right", - "shopping-cart-arrow-right" - ], - "styles": [ - "arrow" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Michael Richins" - }, - { - "id": "8ED82219-BC37-41C0-9012-E316AB7BD809", - "baseIconId": "97563623-CF1C-43AE-87D8-DF54802D442B", - "name": "cart-arrow-up", - "codepoint": "F0D67", - "aliases": [ - "shopping-cart-arrow-up", - "trolley-arrow-up" - ], - "styles": [ - "arrow" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Simran" - }, - { - "id": "549C956B-9A3A-489B-BBC3-F9FF7AF0EB14", - "baseIconId": "97563623-CF1C-43AE-87D8-DF54802D442B", - "name": "cart-check", - "codepoint": "F15EA", - "aliases": [], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Colton Wiscombe" - }, - { - "id": "CB11E82A-C290-44A7-B9FC-88F47CEF5BC5", - "baseIconId": "97563623-CF1C-43AE-87D8-DF54802D442B", - "name": "cart-heart", - "codepoint": "F18E0", - "aliases": [ - "cart-favorite", - "shopping-favorite" - ], - "styles": [ - "heart" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D4AF47D5-214B-4856-8450-0ED7C524991D", - "baseIconId": "97563623-CF1C-43AE-87D8-DF54802D442B", - "name": "cart-minus", - "codepoint": "F0D68", - "aliases": [ - "shopping-cart-minus", - "trolley-minus" - ], - "styles": [ - "minus" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Simran" - }, - { - "id": "05455801-C523-420A-A961-868ABA3DF636", - "baseIconId": "97563623-CF1C-43AE-87D8-DF54802D442B", - "name": "cart-off", - "codepoint": "F066B", - "aliases": [ - "trolley-off", - "remove-shopping-cart", - "shopping-cart-off" - ], - "styles": [ - "off" - ], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Google" - }, - { - "id": "F290ABB0-4CD2-4C45-B543-E3AEBA1FE358", - "baseIconId": "97563623-CF1C-43AE-87D8-DF54802D442B", - "name": "cart-outline", - "codepoint": "F0111", - "aliases": [ - "trolley-outline", - "shopping-cart-outline" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Google" - }, - { - "id": "0E548E6D-946B-4BBE-97FA-2021E2DFF61D", - "baseIconId": "97563623-CF1C-43AE-87D8-DF54802D442B", - "name": "cart-percent", - "codepoint": "F1BAE", - "aliases": [ - "cart-discount", - "cart-sale", - "trolley-percent" - ], - "styles": [ - "variant" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2BF13245-A7BF-49EC-8EB0-CA10F7AF11B2", - "baseIconId": "97563623-CF1C-43AE-87D8-DF54802D442B", - "name": "cart-plus", - "codepoint": "F0112", - "aliases": [ - "trolley-plus", - "add-shopping-cart", - "shopping-cart-plus", - "cart-add", - "trolley-add", - "shopping-cart-add" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Google" - }, - { - "id": "DCB745AA-0ECB-4584-88DA-52CC447555A0", - "baseIconId": "97563623-CF1C-43AE-87D8-DF54802D442B", - "name": "cart-remove", - "codepoint": "F0D69", - "aliases": [ - "trolley-remove", - "shopping-cart-remove" - ], - "styles": [ - "remove" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Simran" - }, - { - "id": "E7E79B59-68A1-4629-9353-A2E64A4A18B4", - "baseIconId": "97563623-CF1C-43AE-87D8-DF54802D442B", - "name": "cart-variant", - "codepoint": "F15EB", - "aliases": [], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Colton Wiscombe" - }, - { - "id": "250BE86F-4D41-4F22-AECD-DD8A2533DA62", - "baseIconId": "250BE86F-4D41-4F22-AECD-DD8A2533DA62", - "name": "case-sensitive-alt", - "codepoint": "F0113", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Doug C. Hardester" - }, - { - "id": "59956D81-BF6B-4DCA-ABAD-A890412F22F1", - "baseIconId": "59956D81-BF6B-4DCA-ABAD-A890412F22F1", - "name": "cash", - "codepoint": "F0114", - "aliases": [ - "money" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Currency", - "Banking", - "Shopping" - ], - "author": "Austin Andrews" - }, - { - "id": "18E513D3-5D34-4A4B-B600-D7173CB30DDA", - "baseIconId": "59956D81-BF6B-4DCA-ABAD-A890412F22F1", - "name": "cash-100", - "codepoint": "F0115", - "aliases": [ - "money-100" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Google" - }, - { - "id": "4AF1798E-6400-40B9-8DAB-4482C07C62E9", - "baseIconId": "59956D81-BF6B-4DCA-ABAD-A890412F22F1", - "name": "cash-check", - "codepoint": "F14EE", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Lucas Crivellari Macieira" - }, - { - "id": "D9D0A7DF-0450-4F67-9F50-D46733A1DF3B", - "baseIconId": "59956D81-BF6B-4DCA-ABAD-A890412F22F1", - "name": "cash-clock", - "codepoint": "F1A91", - "aliases": [ - "cash-schedule", - "payment-schedule", - "payment-clock", - "auto-pay" - ], - "styles": [ - "clock" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Banking", - "Currency", - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A10E9739-AA80-4671-B744-ECB9934BB7E4", - "baseIconId": "59956D81-BF6B-4DCA-ABAD-A890412F22F1", - "name": "cash-fast", - "codepoint": "F185C", - "aliases": [ - "instant-deposit", - "instant-transfer", - "instant-cash" - ], - "styles": [ - "variant" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Jeff Anders" - }, - { - "id": "03BA1D57-6374-41F7-A781-C0615B91178B", - "baseIconId": "59956D81-BF6B-4DCA-ABAD-A890412F22F1", - "name": "cash-lock", - "codepoint": "F14EA", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Lock", - "Currency", - "Banking" - ], - "author": "Austin Andrews" - }, - { - "id": "C9CB2DC9-3F57-4D99-81D8-154F348746E5", - "baseIconId": "59956D81-BF6B-4DCA-ABAD-A890412F22F1", - "name": "cash-lock-open", - "codepoint": "F14EB", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Lock", - "Currency", - "Banking" - ], - "author": "Austin Andrews" - }, - { - "id": "080E0DBC-A7E4-40C0-A126-9CE83BDE2FDF", - "baseIconId": "59956D81-BF6B-4DCA-ABAD-A890412F22F1", - "name": "cash-marker", - "codepoint": "F0DB8", - "aliases": [ - "cod", - "cash-on-delivery", - "cash-location" - ], - "styles": [ - "variant" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Banking", - "Currency", - "Navigation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "20240E77-778A-4B82-9975-585C647AE81C", - "baseIconId": "59956D81-BF6B-4DCA-ABAD-A890412F22F1", - "name": "cash-minus", - "codepoint": "F1260", - "aliases": [], - "styles": [ - "minus" - ], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "sergiocarlotto" - }, - { - "id": "80D4170E-FDA3-40D0-9B05-1020D5FCA817", - "baseIconId": "59956D81-BF6B-4DCA-ABAD-A890412F22F1", - "name": "cash-multiple", - "codepoint": "F0116", - "aliases": [ - "money" - ], - "styles": [ - "multiple" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Austin Andrews" - }, - { - "id": "429B4063-AAA8-4F02-B861-84FC3E00571D", - "baseIconId": "59956D81-BF6B-4DCA-ABAD-A890412F22F1", - "name": "cash-off", - "codepoint": "F1C79", - "aliases": [], - "styles": [ - "off" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Andrej Sharapov" - }, - { - "id": "C2E340E3-EA0A-4726-B595-6149C8C662B8", - "baseIconId": "59956D81-BF6B-4DCA-ABAD-A890412F22F1", - "name": "cash-plus", - "codepoint": "F1261", - "aliases": [], - "styles": [ - "plus" - ], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "sergiocarlotto" - }, - { - "id": "EADBBD96-B2BD-4C31-969E-BFBA6DF519B1", - "baseIconId": "59956D81-BF6B-4DCA-ABAD-A890412F22F1", - "name": "cash-refund", - "codepoint": "F0A9C", - "aliases": [ - "cash-return", - "cash-chargeback" - ], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Banking", - "Currency" - ], - "author": "Michael Richins" - }, - { - "id": "6B63F864-415A-4679-9126-363E5254B175", - "baseIconId": "6B63F864-415A-4679-9126-363E5254B175", - "name": "cash-register", - "codepoint": "F0CF4", - "aliases": [ - "till" - ], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Shopping", - "Banking" - ], - "author": "TheManuz" - }, - { - "id": "C4DA23E6-9BE6-490B-83FB-B39A3E22E9E1", - "baseIconId": "59956D81-BF6B-4DCA-ABAD-A890412F22F1", - "name": "cash-remove", - "codepoint": "F1262", - "aliases": [], - "styles": [ - "remove" - ], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Austin Andrews" - }, - { - "id": "6F96F219-FD7D-4EB5-B341-777F00AF6EBB", - "baseIconId": "59956D81-BF6B-4DCA-ABAD-A890412F22F1", - "name": "cash-sync", - "codepoint": "F1A92", - "aliases": [ - "auto-pay", - "recurring-payment", - "scheduled-payment", - "cash-cycle" - ], - "styles": [], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Banking", - "Currency" - ], - "author": "Michael Irigoyen" - }, - { - "id": "EF35081A-EABF-4C6B-B858-7F2177B60F95", - "baseIconId": "EF35081A-EABF-4C6B-B858-7F2177B60F95", - "name": "cassette", - "codepoint": "F09D4", - "aliases": [ - "tape" - ], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "GreenTurtwig" - }, - { - "id": "996A1644-29FB-4221-9225-FD5CF8AAD5CE", - "baseIconId": "996A1644-29FB-4221-9225-FD5CF8AAD5CE", - "name": "cast", - "codepoint": "F0118", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "E464AD1F-6036-43F9-9D9F-22390B2CBECB", - "baseIconId": "996A1644-29FB-4221-9225-FD5CF8AAD5CE", - "name": "cast-audio", - "codepoint": "F101E", - "aliases": [ - "cast-speaker" - ], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Audio" - ], - "author": "Kinetic Screen" - }, - { - "id": "38E64DD7-18F9-4D85-9D62-023BDA44F642", - "baseIconId": "38E64DD7-18F9-4D85-9D62-023BDA44F642", - "name": "cast-audio-variant", - "codepoint": "F1749", - "aliases": [ - "apple-airplay" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "80EC7FF6-03C0-4D61-8858-D2D94426D2DE", - "baseIconId": "996A1644-29FB-4221-9225-FD5CF8AAD5CE", - "name": "cast-connected", - "codepoint": "F0119", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "31B2064A-79C9-44A7-8C5E-0490162A7864", - "baseIconId": "996A1644-29FB-4221-9225-FD5CF8AAD5CE", - "name": "cast-education", - "codepoint": "F0E1D", - "aliases": [ - "cast-school", - "school-online", - "cast-tutorial" - ], - "styles": [ - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "F6AC6C9C-C82B-48C0-84AB-BEE76FC7BB5B", - "baseIconId": "996A1644-29FB-4221-9225-FD5CF8AAD5CE", - "name": "cast-off", - "codepoint": "F078A", - "aliases": [], - "styles": [ - "off" - ], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "CD5DD59A-965F-455E-912B-9535BFD134E0", - "baseIconId": "996A1644-29FB-4221-9225-FD5CF8AAD5CE", - "name": "cast-variant", - "codepoint": "F001F", - "aliases": [ - "apple", - "airplay" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "53FF9F06-A3F7-4B04-9D54-207FE8B56B8E", - "baseIconId": "53FF9F06-A3F7-4B04-9D54-207FE8B56B8E", - "name": "castle", - "codepoint": "F011A", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Places" - ], - "author": "Austin Andrews" - }, - { - "id": "5D3A753E-1FA9-42F4-8A71-E686A36D1CB6", - "baseIconId": "5D3A753E-1FA9-42F4-8A71-E686A36D1CB6", - "name": "cat", - "codepoint": "F011B", - "aliases": [ - "emoji-cat", - "emoticon-cat" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Animal", - "Holiday" - ], - "author": "Austin Andrews" - }, - { - "id": "04FF8A0D-0B5F-426B-ABAF-001EAC16559F", - "baseIconId": "04FF8A0D-0B5F-426B-ABAF-001EAC16559F", - "name": "cctv", - "codepoint": "F07AE", - "aliases": [ - "closed-circuit-television", - "security-camera" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Roberto Graham" - }, - { - "id": "4B6324CC-D2F7-4CDA-B05F-AC05CA7E238D", - "baseIconId": "04FF8A0D-0B5F-426B-ABAF-001EAC16559F", - "name": "cctv-off", - "codepoint": "F185F", - "aliases": [ - "closed-circuit-television-off", - "security-camera-off" - ], - "styles": [ - "off" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "580D06BE-1E88-47D7-9DEE-D1929637B0E3", - "baseIconId": "580D06BE-1E88-47D7-9DEE-D1929637B0E3", - "name": "ceiling-fan", - "codepoint": "F1797", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "nilsfast" - }, - { - "id": "326FF6B4-E497-4C9C-8EA5-D3FEACF0B2AE", - "baseIconId": "580D06BE-1E88-47D7-9DEE-D1929637B0E3", - "name": "ceiling-fan-light", - "codepoint": "F1798", - "aliases": [ - "ceiling-fan-on" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "nilsfast" - }, - { - "id": "C45A21A3-671C-4B1A-B405-D625ECA93C11", - "baseIconId": "C45A21A3-671C-4B1A-B405-D625ECA93C11", - "name": "ceiling-light", - "codepoint": "F0769", - "aliases": [ - "ceiling-lamp" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "95F3D89F-8AE6-4B86-BFE7-7D6A27018E7D", - "baseIconId": "C45A21A3-671C-4B1A-B405-D625ECA93C11", - "name": "ceiling-light-multiple", - "codepoint": "F18DD", - "aliases": [ - "ceiling-lamp-multiple" - ], - "styles": [], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "11968A7F-D159-497F-9D97-A25CACD6AE8D", - "baseIconId": "C45A21A3-671C-4B1A-B405-D625ECA93C11", - "name": "ceiling-light-multiple-outline", - "codepoint": "F18DE", - "aliases": [ - "ceiling-lamp-multiple-outline" - ], - "styles": [], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DD107169-7A9D-452F-8DE9-2736B6FB7851", - "baseIconId": "C45A21A3-671C-4B1A-B405-D625ECA93C11", - "name": "ceiling-light-outline", - "codepoint": "F17C7", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Teodor Sandu" - }, - { - "id": "8898488F-1BE6-40A0-84B7-1C0832AA4754", - "baseIconId": "8898488F-1BE6-40A0-84B7-1C0832AA4754", - "name": "cellphone", - "codepoint": "F011C", - "aliases": [ - "mobile-phone", - "smartphone", - "stay-current-portrait", - "stay-primary-portrait" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Device \/ Tech" - ], - "author": "Google" - }, - { - "id": "04D5C9C6-6CE4-4D2E-A759-07933F9B7932", - "baseIconId": "8898488F-1BE6-40A0-84B7-1C0832AA4754", - "name": "cellphone-arrow-down", - "codepoint": "F09D5", - "aliases": [ - "cellphone-system-update", - "mobile-phone-arrow-down", - "smartphone-arrow-down" - ], - "styles": [ - "arrow" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Device \/ Tech" - ], - "author": "Google" - }, - { - "id": "AF03DF0A-3E57-412D-B72E-67938C4FD599", - "baseIconId": "8898488F-1BE6-40A0-84B7-1C0832AA4754", - "name": "cellphone-arrow-down-variant", - "codepoint": "F19C5", - "aliases": [ - "cellphone-download" - ], - "styles": [ - "arrow", - "variant" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E22A55C0-983F-499E-8B43-4A66DB278B4E", - "baseIconId": "E22A55C0-983F-499E-8B43-4A66DB278B4E", - "name": "cellphone-basic", - "codepoint": "F011E", - "aliases": [ - "mobile-phone-basic" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Device \/ Tech" - ], - "author": "Simran" - }, - { - "id": "FE245F0F-24CE-497E-BA73-19936BD14716", - "baseIconId": "8898488F-1BE6-40A0-84B7-1C0832AA4754", - "name": "cellphone-charging", - "codepoint": "F1397", - "aliases": [], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Moma Design Studio" - }, - { - "id": "0F2A2942-A58B-428B-B641-8AF2FF3A845B", - "baseIconId": "8898488F-1BE6-40A0-84B7-1C0832AA4754", - "name": "cellphone-check", - "codepoint": "F17FD", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Michael Irigoyen" - }, - { - "id": "134C82D3-528D-46FA-9107-7F3D5AD8FBC3", - "baseIconId": "8898488F-1BE6-40A0-84B7-1C0832AA4754", - "name": "cellphone-cog", - "codepoint": "F0951", - "aliases": [ - "phonelink-setup", - "mobile-phone-settings-variant", - "smartphone-settings-variant" - ], - "styles": [ - "variant" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Settings", - "Cellphone \/ Phone", - "Device \/ Tech" - ], - "author": "Google" - }, - { - "id": "4FBBF196-CF97-436B-A3E6-A08D695E6986", - "baseIconId": "8898488F-1BE6-40A0-84B7-1C0832AA4754", - "name": "cellphone-dock", - "codepoint": "F011F", - "aliases": [ - "mobile-phone-dock", - "smartphone-dock" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Device \/ Tech" - ], - "author": "Google" - }, - { - "id": "5B692392-DA8F-40F2-948F-D81832ABA465", - "baseIconId": "8898488F-1BE6-40A0-84B7-1C0832AA4754", - "name": "cellphone-information", - "codepoint": "F0F41", - "aliases": [ - "mobile-phone-information", - "smartphone-information" - ], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "29BA2DA3-CED6-4D52-92EF-D9152F63B7AB", - "baseIconId": "8898488F-1BE6-40A0-84B7-1C0832AA4754", - "name": "cellphone-key", - "codepoint": "F094E", - "aliases": [ - "mobile-phone-key", - "smartphone-key" - ], - "styles": [ - "key" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Device \/ Tech" - ], - "author": "GreenTurtwig" - }, - { - "id": "E29A590D-51B8-471B-B23B-E0A41046EDA6", - "baseIconId": "E29A590D-51B8-471B-B23B-E0A41046EDA6", - "name": "cellphone-link", - "codepoint": "F0121", - "aliases": [ - "mobile-phone-link", - "smartphone-link", - "devices" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Device \/ Tech" - ], - "author": "Google" - }, - { - "id": "7E4265ED-151D-45CE-BDD2-08B6028B6006", - "baseIconId": "E29A590D-51B8-471B-B23B-E0A41046EDA6", - "name": "cellphone-link-off", - "codepoint": "F0122", - "aliases": [ - "mobile-phone-link-off", - "smartphone-link-off", - "phonelink-off" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Device \/ Tech" - ], - "author": "Google" - }, - { - "id": "2261E999-4B3A-4540-BB30-B4C130137916", - "baseIconId": "8898488F-1BE6-40A0-84B7-1C0832AA4754", - "name": "cellphone-lock", - "codepoint": "F094F", - "aliases": [ - "phonelink-lock", - "mobile-phone-lock", - "smartphone-lock" - ], - "styles": [ - "lock" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Lock", - "Device \/ Tech" - ], - "author": "Google" - }, - { - "id": "487DEBB1-A270-44B5-A2B9-D7E11F32C0CC", - "baseIconId": "8898488F-1BE6-40A0-84B7-1C0832AA4754", - "name": "cellphone-marker", - "codepoint": "F183A", - "aliases": [ - "cellphone-location", - "cellphone-map", - "find-my-phone", - "cellphone-gps" - ], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Navigation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "4C511E7E-D658-493D-B34B-B73A4DEE8FF9", - "baseIconId": "8898488F-1BE6-40A0-84B7-1C0832AA4754", - "name": "cellphone-message", - "codepoint": "F08D3", - "aliases": [ - "mobile-phone-message", - "smartphone-message" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Device \/ Tech" - ], - "author": "Austin Andrews" - }, - { - "id": "039B41EB-85E3-458B-9C51-AADE4C4071FE", - "baseIconId": "8898488F-1BE6-40A0-84B7-1C0832AA4754", - "name": "cellphone-message-off", - "codepoint": "F10D2", - "aliases": [], - "styles": [ - "off" - ], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Terren" - }, - { - "id": "A4EFE1A4-034F-473F-9076-D8DFF6167067", - "baseIconId": "8898488F-1BE6-40A0-84B7-1C0832AA4754", - "name": "cellphone-nfc", - "codepoint": "F0E90", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Automotive", - "Cellphone \/ Phone", - "Device \/ Tech" - ], - "author": "Google" - }, - { - "id": "E036E842-B41C-410B-BF8A-85B10A7E26D0", - "baseIconId": "8898488F-1BE6-40A0-84B7-1C0832AA4754", - "name": "cellphone-nfc-off", - "codepoint": "F12D8", - "aliases": [], - "styles": [ - "off" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2AD1736A-2142-4E3D-BA70-9CF8584C366D", - "baseIconId": "8898488F-1BE6-40A0-84B7-1C0832AA4754", - "name": "cellphone-off", - "codepoint": "F0950", - "aliases": [ - "mobile-phone-off", - "smartphone-off", - "mobile-off" - ], - "styles": [ - "off" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Device \/ Tech" - ], - "author": "Google" - }, - { - "id": "B89607FB-8199-48B0-AF59-E048CAEB210B", - "baseIconId": "8898488F-1BE6-40A0-84B7-1C0832AA4754", - "name": "cellphone-play", - "codepoint": "F101F", - "aliases": [], - "styles": [ - "variant" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "EC642A5A-34A2-4E29-85F1-60ACAA546FB1", - "baseIconId": "8898488F-1BE6-40A0-84B7-1C0832AA4754", - "name": "cellphone-remove", - "codepoint": "F094D", - "aliases": [ - "phonelink-erase", - "mobile-phone-erase", - "smartphone-erase", - "cellphone-erase" - ], - "styles": [ - "remove" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Device \/ Tech" - ], - "author": "Michael Irigoyen" - }, - { - "id": "84F994FA-DF0C-4A5A-88F6-8A2AD1DC1189", - "baseIconId": "8898488F-1BE6-40A0-84B7-1C0832AA4754", - "name": "cellphone-screenshot", - "codepoint": "F0A35", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Device \/ Tech" - ], - "author": "Google" - }, - { - "id": "E7458A8C-66F2-41D7-81AE-4B2B961DFE1A", - "baseIconId": "8898488F-1BE6-40A0-84B7-1C0832AA4754", - "name": "cellphone-settings", - "codepoint": "F0123", - "aliases": [ - "mobile-phone-settings", - "smartphone-settings", - "settings-cell" - ], - "styles": [ - "settings" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Settings", - "Device \/ Tech" - ], - "author": "Google" - }, - { - "id": "F5D685BD-7BA8-4F4C-8701-06F1B1E57064", - "baseIconId": "8898488F-1BE6-40A0-84B7-1C0832AA4754", - "name": "cellphone-sound", - "codepoint": "F0952", - "aliases": [ - "phonelink-ring", - "mobile-phone-sound", - "smartphone-sound" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Device \/ Tech" - ], - "author": "Google" - }, - { - "id": "D89FFCD9-0592-4760-98C9-5EDDA77826F5", - "baseIconId": "8898488F-1BE6-40A0-84B7-1C0832AA4754", - "name": "cellphone-text", - "codepoint": "F08D2", - "aliases": [ - "mobile-phone-text", - "smartphone-text" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Device \/ Tech" - ], - "author": "Austin Andrews" - }, - { - "id": "071CA76A-0ED5-42CD-9BE9-46AFA9D5459E", - "baseIconId": "8898488F-1BE6-40A0-84B7-1C0832AA4754", - "name": "cellphone-wireless", - "codepoint": "F0815", - "aliases": [ - "mobile-phone-wireless", - "smartphone-wireless" - ], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Device \/ Tech" - ], - "author": "Austin Andrews" - }, - { - "id": "BAC7F15C-844C-4FEB-A4C0-2CDF80738979", - "baseIconId": "BAC7F15C-844C-4FEB-A4C0-2CDF80738979", - "name": "centos", - "codepoint": "F111A", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "2DBEB397-D80B-445D-A11E-7B8362CFBEF4", - "baseIconId": "2DBEB397-D80B-445D-A11E-7B8362CFBEF4", - "name": "certificate", - "codepoint": "F0124", - "aliases": [ - "diploma", - "seal" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "6F755EB5-B2E1-413A-A919-3F0DCE69E48A", - "baseIconId": "2DBEB397-D80B-445D-A11E-7B8362CFBEF4", - "name": "certificate-outline", - "codepoint": "F1188", - "aliases": [ - "diploma-outline", - "seal-outline" - ], - "styles": [ - "outline" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "822CF3D7-FEB4-4988-A037-0866756D4ADE", - "baseIconId": "822CF3D7-FEB4-4988-A037-0866756D4ADE", - "name": "chair-rolling", - "codepoint": "F0F48", - "aliases": [ - "office-chair", - "study-chair" - ], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "47FCC651-522C-4786-B518-91A03A721A90", - "baseIconId": "47FCC651-522C-4786-B518-91A03A721A90", - "name": "chair-school", - "codepoint": "F0125", - "aliases": [ - "desk", - "education", - "learn" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "C0F0A8D1-34A5-462C-B417-733507042380", - "baseIconId": "C0F0A8D1-34A5-462C-B417-733507042380", - "name": "chandelier", - "codepoint": "F1793", - "aliases": [ - "ceiling-light", - "girandole", - "candelabra-lamp", - "suspended-light" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B5589411-20E7-4552-BEC5-A394068B23A7", - "baseIconId": "B5589411-20E7-4552-BEC5-A394068B23A7", - "name": "charity", - "codepoint": "F0C4F", - "aliases": [ - "super-chat-for-good" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "2306EC7A-612C-4847-83D6-495CECA5AA5D", - "baseIconId": "B5589411-20E7-4552-BEC5-A394068B23A7", - "name": "charity-search", - "codepoint": "F1C82", - "aliases": [], - "styles": [ - "search" - ], - "version": "7.3.96", - "deprecated": false, - "tags": [], - "author": "Ryan Donahue" - }, - { - "id": "98939E5B-1528-4A2F-B35A-C37C60C75D93", - "baseIconId": "98939E5B-1528-4A2F-B35A-C37C60C75D93", - "name": "chart-arc", - "codepoint": "F0126", - "aliases": [ - "report-arc", - "widget-arc" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Austin Andrews" - }, - { - "id": "00654F5E-1B8B-4BD7-933B-0BD65B2C9BAC", - "baseIconId": "00654F5E-1B8B-4BD7-933B-0BD65B2C9BAC", - "name": "chart-areaspline", - "codepoint": "F0127", - "aliases": [ - "report-areaspline", - "widget-areaspline", - "graph-areaspline" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Austin Andrews" - }, - { - "id": "C55BFF6F-469B-4D28-835B-537BED8DE99D", - "baseIconId": "00654F5E-1B8B-4BD7-933B-0BD65B2C9BAC", - "name": "chart-areaspline-variant", - "codepoint": "F0E91", - "aliases": [ - "report-areaspline-variant", - "widget-areaspline-variant", - "graph-areaspline-variant" - ], - "styles": [ - "variant" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Richins" - }, - { - "id": "85D4DC49-5359-4867-A5D1-52C44699387F", - "baseIconId": "85D4DC49-5359-4867-A5D1-52C44699387F", - "name": "chart-bar", - "codepoint": "F0128", - "aliases": [ - "report-bar", - "widget-bar", - "graph-bar" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Austin Andrews" - }, - { - "id": "FAA40519-5517-44DF-AF2E-30D07874BEB7", - "baseIconId": "85D4DC49-5359-4867-A5D1-52C44699387F", - "name": "chart-bar-stacked", - "codepoint": "F076A", - "aliases": [ - "report-bar-stacked", - "widget-bar-stacked", - "graph-bar-stacked" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Austin Andrews" - }, - { - "id": "35760CC7-EBA2-4445-B88B-7E8224535BB7", - "baseIconId": "35760CC7-EBA2-4445-B88B-7E8224535BB7", - "name": "chart-bell-curve", - "codepoint": "F0C50", - "aliases": [ - "report-bell-curve", - "widget-bell-curve", - "graph-bell-curve" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D4E38BC9-5A85-4890-B3DD-92F3D263E26E", - "baseIconId": "35760CC7-EBA2-4445-B88B-7E8224535BB7", - "name": "chart-bell-curve-cumulative", - "codepoint": "F0FA7", - "aliases": [ - "report-bell-curve-cumulative", - "widget-bell-curve-cumulative", - "graph-bell-curve-cumulative" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Irigoyen" - }, - { - "id": "381420B2-B2EE-4E9F-9DEA-EA0C1F92A226", - "baseIconId": "381420B2-B2EE-4E9F-9DEA-EA0C1F92A226", - "name": "chart-box", - "codepoint": "F154D", - "aliases": [ - "poll-box", - "report-box", - "widget-box", - "graph-box" - ], - "styles": [ - "box" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Google" - }, - { - "id": "4115E465-01E5-4F3F-929A-81C239289B21", - "baseIconId": "381420B2-B2EE-4E9F-9DEA-EA0C1F92A226", - "name": "chart-box-outline", - "codepoint": "F154E", - "aliases": [ - "poll-box-outline", - "report-box-outline", - "widget-box-outline", - "graph-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Google" - }, - { - "id": "2F2AA4D1-DB33-4B54-8052-2A2EFCE59168", - "baseIconId": "381420B2-B2EE-4E9F-9DEA-EA0C1F92A226", - "name": "chart-box-plus-outline", - "codepoint": "F154F", - "aliases": [ - "report-box-plus-outline", - "widget-box-plus-outline", - "graph-box-plus-outline" - ], - "styles": [ - "box", - "outline", - "plus" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Google" - }, - { - "id": "9D79A433-CF5A-45A2-971F-4FBF72DB9821", - "baseIconId": "9D79A433-CF5A-45A2-971F-4FBF72DB9821", - "name": "chart-bubble", - "codepoint": "F05E3", - "aliases": [ - "bubble-chart", - "report-bubble", - "widget-bubble" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Google" - }, - { - "id": "C7BED6AB-8D91-42EC-A22F-D4B922B0EB14", - "baseIconId": "C7BED6AB-8D91-42EC-A22F-D4B922B0EB14", - "name": "chart-donut", - "codepoint": "F07AF", - "aliases": [ - "chart-doughnut", - "data-usage", - "report-donut", - "widget-donut" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Google" - }, - { - "id": "FE9CBE2A-4D6F-4A1F-B817-26607BB9561B", - "baseIconId": "C7BED6AB-8D91-42EC-A22F-D4B922B0EB14", - "name": "chart-donut-variant", - "codepoint": "F07B0", - "aliases": [ - "chart-doughnut-variant", - "report-donut-variant", - "widget-donut-variant" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Austin Andrews" - }, - { - "id": "A2839B3A-760A-4061-80CA-41B3FA5817E0", - "baseIconId": "A2839B3A-760A-4061-80CA-41B3FA5817E0", - "name": "chart-gantt", - "codepoint": "F066C", - "aliases": [ - "report-gantt", - "timeline", - "widget-gantt", - "roadmap" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Austin Andrews" - }, - { - "id": "8DCC14D7-057F-4DA4-89B2-B26D6B6F0C00", - "baseIconId": "8DCC14D7-057F-4DA4-89B2-B26D6B6F0C00", - "name": "chart-histogram", - "codepoint": "F0129", - "aliases": [ - "report-histogram", - "widget-histogram", - "graph-histogram" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Austin Andrews" - }, - { - "id": "D996574D-5B42-47C5-91D6-F86555C2FBC5", - "baseIconId": "D996574D-5B42-47C5-91D6-F86555C2FBC5", - "name": "chart-line", - "codepoint": "F012A", - "aliases": [ - "report-line", - "widget-line", - "graph-line" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Austin Andrews" - }, - { - "id": "B53C0CF7-F923-409F-91C3-420513E44231", - "baseIconId": "D996574D-5B42-47C5-91D6-F86555C2FBC5", - "name": "chart-line-stacked", - "codepoint": "F076B", - "aliases": [ - "report-line-stacked", - "widget-line-stacked", - "graph-line-stacked" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Haley Halcyon" - }, - { - "id": "2FAF8E0B-5AB4-4914-A0A1-CECFFAF85427", - "baseIconId": "D996574D-5B42-47C5-91D6-F86555C2FBC5", - "name": "chart-line-variant", - "codepoint": "F07B1", - "aliases": [ - "show-chart", - "report-line-variant", - "widget-line-variant", - "graph-line-variant" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Google" - }, - { - "id": "746FB7AE-B8AC-4356-8B79-D95F54B410D7", - "baseIconId": "746FB7AE-B8AC-4356-8B79-D95F54B410D7", - "name": "chart-multiline", - "codepoint": "F08D4", - "aliases": [ - "report-multiline", - "widget-multiline", - "graph-multiline" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Google" - }, - { - "id": "42E3BF4B-FFE9-449F-AFEE-66F565602A9B", - "baseIconId": "42E3BF4B-FFE9-449F-AFEE-66F565602A9B", - "name": "chart-multiple", - "codepoint": "F1213", - "aliases": [ - "report-multiple", - "widget-multiple", - "graph-multiple" - ], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Richins" - }, - { - "id": "9C6B53C5-698B-4428-9738-A6700BF8698C", - "baseIconId": "9C6B53C5-698B-4428-9738-A6700BF8698C", - "name": "chart-pie", - "codepoint": "F012B", - "aliases": [ - "report-pie", - "widget-pie", - "graph-pie" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Google" - }, - { - "id": "B7CE40ED-002C-475A-ADAC-8110FE260F65", - "baseIconId": "B7CE40ED-002C-475A-ADAC-8110FE260F65", - "name": "chart-pie-outline", - "codepoint": "F1BDF", - "aliases": [ - "report-pie-outline", - "widget-pie-outline", - "graph-pie-outline" - ], - "styles": [ - "outline" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Google" - }, - { - "id": "42A6B073-CC7E-4539-9313-E60FAE81BC70", - "baseIconId": "42A6B073-CC7E-4539-9313-E60FAE81BC70", - "name": "chart-ppf", - "codepoint": "F1380", - "aliases": [ - "chart-production-possibility-frontier", - "report-ppf", - "widget-ppf", - "graph-ppf" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Simran" - }, - { - "id": "D0F312B5-8B3B-4E68-BF0B-691D4F129749", - "baseIconId": "D0F312B5-8B3B-4E68-BF0B-691D4F129749", - "name": "chart-sankey", - "codepoint": "F11DF", - "aliases": [ - "chart-snakey", - "report-sankey", - "widget-sankey", - "graph-sankey" - ], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Richins" - }, - { - "id": "5FA4943E-5956-4668-ADDD-984914DD745C", - "baseIconId": "D0F312B5-8B3B-4E68-BF0B-691D4F129749", - "name": "chart-sankey-variant", - "codepoint": "F11E0", - "aliases": [ - "chart-snakey-variant", - "report-sankey-variant", - "widget-sankey-variant", - "graph-sankey-variant" - ], - "styles": [ - "variant" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Richins" - }, - { - "id": "C268C5A5-0D35-4963-9151-61D2C442015B", - "baseIconId": "C268C5A5-0D35-4963-9151-61D2C442015B", - "name": "chart-scatter-plot", - "codepoint": "F0E92", - "aliases": [ - "report-scatter-plot", - "widget-scatter-plot", - "graph-scatter-plot" - ], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Irigoyen" - }, - { - "id": "852E3EF2-942E-42C5-87BB-E1193EBD3E0C", - "baseIconId": "C268C5A5-0D35-4963-9151-61D2C442015B", - "name": "chart-scatter-plot-hexbin", - "codepoint": "F066D", - "aliases": [ - "chart-scatterplot-hexbin", - "report-scatter-plot-hexbin", - "widget-scatter-plot-hexbin", - "graph-scatter-plot-hexbin" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Austin Andrews" - }, - { - "id": "922A0C03-C46D-45E7-8B44-9D53F1292360", - "baseIconId": "922A0C03-C46D-45E7-8B44-9D53F1292360", - "name": "chart-timeline", - "codepoint": "F066E", - "aliases": [ - "report-timeline", - "widget-timeline", - "graph-timeline", - "roadmap" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Austin Andrews" - }, - { - "id": "F41D980A-439A-4F1B-A3B7-850EB1A70416", - "baseIconId": "922A0C03-C46D-45E7-8B44-9D53F1292360", - "name": "chart-timeline-variant", - "codepoint": "F0E93", - "aliases": [ - "report-timeline-variant", - "widget-timeline-variant", - "graph-timeline-variant", - "report-line", - "widget-line", - "graph-line" - ], - "styles": [ - "variant" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Google" - }, - { - "id": "F2256261-8218-48B2-BACA-9E23E42EEC15", - "baseIconId": "F41D980A-439A-4F1B-A3B7-850EB1A70416", - "name": "chart-timeline-variant-shimmer", - "codepoint": "F15B6", - "aliases": [ - "report-timeline-variant-shimmer", - "widget-timeline-variant-shimmer", - "graph-timeline-variant-shimmer", - "report-line-shimmer", - "widget-line-shimmer", - "graph-line-shimmer" - ], - "styles": [ - "variant" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Google" - }, - { - "id": "B7E7AEAC-4A67-4C0F-8A4C-C0955AE5F655", - "baseIconId": "B7E7AEAC-4A67-4C0F-8A4C-C0955AE5F655", - "name": "chart-tree", - "codepoint": "F0E94", - "aliases": [ - "report-tree", - "widget-tree" - ], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Google" - }, - { - "id": "ABA3B2FE-7270-466B-86F6-00A87B947F6F", - "baseIconId": "ABA3B2FE-7270-466B-86F6-00A87B947F6F", - "name": "chart-waterfall", - "codepoint": "F1918", - "aliases": [], - "styles": [], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7FF15164-E575-4024-ABAC-A183179F0217", - "baseIconId": "7FF15164-E575-4024-ABAC-A183179F0217", - "name": "chat", - "codepoint": "F0B79", - "aliases": [ - "message", - "message-bubble", - "speak" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "7E35E8CF-E958-43D7-9B28-072E3161618A", - "baseIconId": "7FF15164-E575-4024-ABAC-A183179F0217", - "name": "chat-alert", - "codepoint": "F0B7A", - "aliases": [ - "chat-warning" - ], - "styles": [ - "alert" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Austin Andrews" - }, - { - "id": "C0C2065A-8B0C-4DE2-AD4E-D909080FFB42", - "baseIconId": "7FF15164-E575-4024-ABAC-A183179F0217", - "name": "chat-alert-outline", - "codepoint": "F12C9", - "aliases": [], - "styles": [ - "alert", - "outline" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "45A636B1-89B7-45B8-B68A-65DB813B7927", - "baseIconId": "7FF15164-E575-4024-ABAC-A183179F0217", - "name": "chat-minus", - "codepoint": "F1410", - "aliases": [], - "styles": [ - "minus" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "69E4B1D9-C479-47CB-8354-A61FCCC51A0B", - "baseIconId": "7FF15164-E575-4024-ABAC-A183179F0217", - "name": "chat-minus-outline", - "codepoint": "F1413", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "E6394813-3C45-4D08-A207-9008A2E5CECB", - "baseIconId": "7FF15164-E575-4024-ABAC-A183179F0217", - "name": "chat-outline", - "codepoint": "F0EDE", - "aliases": [ - "message-outline", - "message-bubble-outline", - "speak-outline" - ], - "styles": [ - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "25FEEB21-3351-4743-994B-1DA08DEAB2B7", - "baseIconId": "7FF15164-E575-4024-ABAC-A183179F0217", - "name": "chat-plus", - "codepoint": "F140F", - "aliases": [], - "styles": [ - "plus" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "F9BDF971-6385-4B8F-98AD-B3FE8D376855", - "baseIconId": "7FF15164-E575-4024-ABAC-A183179F0217", - "name": "chat-plus-outline", - "codepoint": "F1412", - "aliases": [], - "styles": [ - "outline", - "plus" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "95003FC4-C655-4687-AF82-660A49B95978", - "baseIconId": "7FF15164-E575-4024-ABAC-A183179F0217", - "name": "chat-processing", - "codepoint": "F0B7B", - "aliases": [ - "chat-typing" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "F753E08E-F7C9-4BAF-8647-9328D56D1837", - "baseIconId": "7FF15164-E575-4024-ABAC-A183179F0217", - "name": "chat-processing-outline", - "codepoint": "F12CA", - "aliases": [ - "chat-typing-outline" - ], - "styles": [ - "outline" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "8B7833C6-EB36-4F0C-A554-AF7189A7AB34", - "baseIconId": "7FF15164-E575-4024-ABAC-A183179F0217", - "name": "chat-question", - "codepoint": "F1738", - "aliases": [ - "chat-help" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "7EC5A46D-1E6A-475C-A76F-19F9F4B9CD90", - "baseIconId": "7FF15164-E575-4024-ABAC-A183179F0217", - "name": "chat-question-outline", - "codepoint": "F1739", - "aliases": [ - "chat-help-outline" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "3C021F95-3463-45CD-9908-A0D84B2793FB", - "baseIconId": "7FF15164-E575-4024-ABAC-A183179F0217", - "name": "chat-remove", - "codepoint": "F1411", - "aliases": [], - "styles": [ - "remove" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "4D147E9B-52BB-446B-8355-0CEA377C0631", - "baseIconId": "7FF15164-E575-4024-ABAC-A183179F0217", - "name": "chat-remove-outline", - "codepoint": "F1414", - "aliases": [], - "styles": [ - "outline", - "remove" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "4B555315-27A3-4DD2-8A85-0F05260CDA33", - "baseIconId": "7FF15164-E575-4024-ABAC-A183179F0217", - "name": "chat-sleep", - "codepoint": "F12D1", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "ABE1573F-24A9-4AC1-9ADB-6A9A32FB10AA", - "baseIconId": "7FF15164-E575-4024-ABAC-A183179F0217", - "name": "chat-sleep-outline", - "codepoint": "F12D2", - "aliases": [], - "styles": [ - "outline" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "F789CE44-7EA3-4E97-88FB-BEC22EB2030C", - "baseIconId": "F789CE44-7EA3-4E97-88FB-BEC22EB2030C", - "name": "check", - "codepoint": "F012C", - "aliases": [ - "tick", - "done", - "success" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Google" - }, - { - "id": "48BA3B7B-1EF7-4160-A0BB-54EBCF999A13", - "baseIconId": "F789CE44-7EA3-4E97-88FB-BEC22EB2030C", - "name": "check-all", - "codepoint": "F012D", - "aliases": [ - "tick-all", - "done-all", - "check-multiple", - "checks", - "ticks" - ], - "styles": [ - "multiple" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "2070D6C6-EC09-4507-BE0A-07BFFFAF6DFB", - "baseIconId": "F789CE44-7EA3-4E97-88FB-BEC22EB2030C", - "name": "check-bold", - "codepoint": "F0E1E", - "aliases": [ - "check-thick", - "success-thick", - "success-bold" - ], - "styles": [ - "bold" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "93D7B6DC-17D2-4A2B-B787-79E2E8BEF304", - "baseIconId": "F789CE44-7EA3-4E97-88FB-BEC22EB2030C", - "name": "check-circle", - "codepoint": "F05E0", - "aliases": [ - "tick-circle", - "success-circle" - ], - "styles": [ - "circle" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Google" - }, - { - "id": "F609EE7E-AAB4-4CE7-A002-D0F7ECF89609", - "baseIconId": "F789CE44-7EA3-4E97-88FB-BEC22EB2030C", - "name": "check-circle-outline", - "codepoint": "F05E1", - "aliases": [ - "tick-circle-outline", - "success-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Google" - }, - { - "id": "64E327CF-3FCB-4742-AB82-789B2C27D31B", - "baseIconId": "F789CE44-7EA3-4E97-88FB-BEC22EB2030C", - "name": "check-decagram", - "codepoint": "F0791", - "aliases": [ - "verified", - "decagram-check", - "approve", - "approval", - "tick-decagram" - ], - "styles": [ - "variant" - ], - "version": "2.0.46", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "1CAE9177-18C6-497A-B6B9-900C00A14D0E", - "baseIconId": "F789CE44-7EA3-4E97-88FB-BEC22EB2030C", - "name": "check-decagram-outline", - "codepoint": "F1740", - "aliases": [ - "approve", - "approval", - "verified" - ], - "styles": [ - "outline", - "variant" - ], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "F1CE2683-FE3F-4AA1-89A2-A935D6FD403C", - "baseIconId": "F789CE44-7EA3-4E97-88FB-BEC22EB2030C", - "name": "check-network", - "codepoint": "F0C53", - "aliases": [ - "tick-network" - ], - "styles": [ - "network" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "98A3D662-2D11-40DB-8557-E1DD0E877091", - "baseIconId": "F789CE44-7EA3-4E97-88FB-BEC22EB2030C", - "name": "check-network-outline", - "codepoint": "F0C54", - "aliases": [ - "tick-network-outline" - ], - "styles": [ - "network", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "38BFE155-0352-4907-A578-B5D0D7F5B78D", - "baseIconId": "F789CE44-7EA3-4E97-88FB-BEC22EB2030C", - "name": "check-outline", - "codepoint": "F0855", - "aliases": [ - "done-outline", - "tick-outline", - "sucess-outline" - ], - "styles": [ - "outline" - ], - "version": "2.1.99", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "862B14E6-BA7A-4736-8047-1C836B2F4EC1", - "baseIconId": "F789CE44-7EA3-4E97-88FB-BEC22EB2030C", - "name": "check-underline", - "codepoint": "F0E1F", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "4B7477D9-418A-40E7-811A-50DFFEA14A03", - "baseIconId": "F789CE44-7EA3-4E97-88FB-BEC22EB2030C", - "name": "check-underline-circle", - "codepoint": "F0E20", - "aliases": [], - "styles": [ - "circle", - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "8C448942-B521-4C50-B8AD-0233EF30B12C", - "baseIconId": "F789CE44-7EA3-4E97-88FB-BEC22EB2030C", - "name": "check-underline-circle-outline", - "codepoint": "F0E21", - "aliases": [], - "styles": [ - "circle", - "outline", - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "F35E17AA-A0E8-4AEE-9504-6DC07F3ACEAD", - "baseIconId": "F35E17AA-A0E8-4AEE-9504-6DC07F3ACEAD", - "name": "checkbook", - "codepoint": "F0A9D", - "aliases": [ - "chequebook", - "cheque-book" - ], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Google" - }, - { - "id": "E1AF54E0-A2C9-41D4-89E0-62CD301F4B71", - "baseIconId": "F35E17AA-A0E8-4AEE-9504-6DC07F3ACEAD", - "name": "checkbook-arrow-left", - "codepoint": "F1C1D", - "aliases": [ - "chequebook-arrow-left" - ], - "styles": [ - "arrow" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Jeff Anders" - }, - { - "id": "1EE03F8D-8B51-464B-84DE-6079644BA583", - "baseIconId": "F35E17AA-A0E8-4AEE-9504-6DC07F3ACEAD", - "name": "checkbook-arrow-right", - "codepoint": "F1C1E", - "aliases": [ - "chequebook-arrow-right" - ], - "styles": [ - "arrow" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Jeff Anders" - }, - { - "id": "2B75FE22-5209-4DF8-B16A-B6F74272337B", - "baseIconId": "2B75FE22-5209-4DF8-B16A-B6F74272337B", - "name": "checkbox-blank", - "codepoint": "F012E", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Google" - }, - { - "id": "22ECB099-6A57-4DA8-9E42-0E3D8000C003", - "baseIconId": "2B75FE22-5209-4DF8-B16A-B6F74272337B", - "name": "checkbox-blank-badge", - "codepoint": "F1176", - "aliases": [ - "checkbox-blank-notification", - "app-notification", - "app-badge" - ], - "styles": [ - "badge" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Notification", - "Form" - ], - "author": "Michael Irigoyen" - }, - { - "id": "219B8956-E48B-4D11-9257-422E563955DB", - "baseIconId": "2B75FE22-5209-4DF8-B16A-B6F74272337B", - "name": "checkbox-blank-badge-outline", - "codepoint": "F0117", - "aliases": [ - "checkbox-blank-notification-outline", - "app-notification-outline", - "app-badge-outline" - ], - "styles": [ - "badge", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Notification", - "Form" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F031DE59-CC30-47BF-B689-BC993893B03A", - "baseIconId": "F031DE59-CC30-47BF-B689-BC993893B03A", - "name": "checkbox-blank-circle", - "codepoint": "F012F", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Google" - }, - { - "id": "7C094780-770D-44B6-981C-C701784192D6", - "baseIconId": "F031DE59-CC30-47BF-B689-BC993893B03A", - "name": "checkbox-blank-circle-outline", - "codepoint": "F0130", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Google" - }, - { - "id": "8F505717-7778-4909-81E9-0714F01B44AF", - "baseIconId": "2B75FE22-5209-4DF8-B16A-B6F74272337B", - "name": "checkbox-blank-off", - "codepoint": "F12EC", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Michael Irigoyen" - }, - { - "id": "06F6526C-6D2A-45F5-A5DF-46860DE27EAC", - "baseIconId": "2B75FE22-5209-4DF8-B16A-B6F74272337B", - "name": "checkbox-blank-off-outline", - "codepoint": "F12ED", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C7D0E43D-6393-429B-BDCE-B522419B7B3D", - "baseIconId": "2B75FE22-5209-4DF8-B16A-B6F74272337B", - "name": "checkbox-blank-outline", - "codepoint": "F0131", - "aliases": [ - "check-box-outline-blank", - "maximize" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Google" - }, - { - "id": "EFD12742-D508-4531-A9A4-EDCF3148C748", - "baseIconId": "2B75FE22-5209-4DF8-B16A-B6F74272337B", - "name": "checkbox-intermediate", - "codepoint": "F0856", - "aliases": [ - "checkbox-indeterminate" - ], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Michael Richins" - }, - { - "id": "409261FA-D055-4E16-88A0-94C31667F218", - "baseIconId": "2B75FE22-5209-4DF8-B16A-B6F74272337B", - "name": "checkbox-intermediate-variant", - "codepoint": "F1B54", - "aliases": [ - "checkbox-indeterminate-variant" - ], - "styles": [ - "variant" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Andy Giesen" - }, - { - "id": "C3E50D88-07AB-491F-B21E-9AA11A1E5886", - "baseIconId": "2B75FE22-5209-4DF8-B16A-B6F74272337B", - "name": "checkbox-marked", - "codepoint": "F0132", - "aliases": [ - "check-box" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Google" - }, - { - "id": "4336ADDD-7A8E-46E7-A886-3873CCCFD3DA", - "baseIconId": "F031DE59-CC30-47BF-B689-BC993893B03A", - "name": "checkbox-marked-circle", - "codepoint": "F0133", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Google" - }, - { - "id": "F55DDDD9-41D3-477B-A513-DD6CF2487E0B", - "baseIconId": "F031DE59-CC30-47BF-B689-BC993893B03A", - "name": "checkbox-marked-circle-auto-outline", - "codepoint": "F1C26", - "aliases": [ - "task-auto", - "todo-auto" - ], - "styles": [], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Jeff Anders" - }, - { - "id": "53428253-C1B2-47CD-BBC8-7069E7697FEF", - "baseIconId": "F031DE59-CC30-47BF-B689-BC993893B03A", - "name": "checkbox-marked-circle-minus-outline", - "codepoint": "F1C27", - "aliases": [ - "todo-minus", - "task-minus" - ], - "styles": [ - "minus", - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Jeff Anders" - }, - { - "id": "7DC53566-5640-4124-A2C2-5070D7FBA591", - "baseIconId": "F031DE59-CC30-47BF-B689-BC993893B03A", - "name": "checkbox-marked-circle-outline", - "codepoint": "F0134", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Google" - }, - { - "id": "488DC51C-ABAF-4017-885B-84D3BBDE4B42", - "baseIconId": "F031DE59-CC30-47BF-B689-BC993893B03A", - "name": "checkbox-marked-circle-plus-outline", - "codepoint": "F1927", - "aliases": [ - "task-plus", - "task-add", - "todo-plus", - "todo-add" - ], - "styles": [ - "outline", - "plus" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Teodor Sandu" - }, - { - "id": "AB384DA7-C0DA-4A68-96EA-FC54BF0EDED1", - "baseIconId": "2B75FE22-5209-4DF8-B16A-B6F74272337B", - "name": "checkbox-marked-outline", - "codepoint": "F0135", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Google" - }, - { - "id": "2B01AE9D-AFA4-4CDA-82BD-21076D27C006", - "baseIconId": "2B75FE22-5209-4DF8-B16A-B6F74272337B", - "name": "checkbox-multiple-blank", - "codepoint": "F0136", - "aliases": [ - "checkboxes-blank" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Austin Andrews" - }, - { - "id": "0AE5C836-2A43-4706-81C5-5053A73B9CAA", - "baseIconId": "F031DE59-CC30-47BF-B689-BC993893B03A", - "name": "checkbox-multiple-blank-circle", - "codepoint": "F063B", - "aliases": [ - "checkboxes-blank-circle" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Simran" - }, - { - "id": "CCBAD6F8-5D3D-420A-94AF-CC85AA12397E", - "baseIconId": "F031DE59-CC30-47BF-B689-BC993893B03A", - "name": "checkbox-multiple-blank-circle-outline", - "codepoint": "F063C", - "aliases": [ - "checkboxes-blank-circle-outline" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Simran" - }, - { - "id": "CA74F33C-3AEE-4EA9-93B4-643099DFD92D", - "baseIconId": "2B75FE22-5209-4DF8-B16A-B6F74272337B", - "name": "checkbox-multiple-blank-outline", - "codepoint": "F0137", - "aliases": [ - "checkboxes-blank-outline" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Austin Andrews" - }, - { - "id": "4F160BFE-433B-49D1-B2DC-E7F71AF7070B", - "baseIconId": "2B75FE22-5209-4DF8-B16A-B6F74272337B", - "name": "checkbox-multiple-marked", - "codepoint": "F0138", - "aliases": [ - "checkboxes-marked" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Austin Andrews" - }, - { - "id": "85C35F15-1AC0-407B-BCBF-AD79B6E6DDEA", - "baseIconId": "F031DE59-CC30-47BF-B689-BC993893B03A", - "name": "checkbox-multiple-marked-circle", - "codepoint": "F063D", - "aliases": [ - "checkboxes-marked-circle" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Simran" - }, - { - "id": "5158D0E3-0E77-4CC3-A9A4-727825812D00", - "baseIconId": "F031DE59-CC30-47BF-B689-BC993893B03A", - "name": "checkbox-multiple-marked-circle-outline", - "codepoint": "F063E", - "aliases": [ - "checkboxes-marked-circle-outline" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Simran" - }, - { - "id": "16BECBE7-BD8E-4301-B5CB-5EE534FBDAD3", - "baseIconId": "2B75FE22-5209-4DF8-B16A-B6F74272337B", - "name": "checkbox-multiple-marked-outline", - "codepoint": "F0139", - "aliases": [ - "checkboxes-marked-outline" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Austin Andrews" - }, - { - "id": "E0A0FF12-A5AD-40E3-B286-8958154F0537", - "baseIconId": "F789CE44-7EA3-4E97-88FB-BEC22EB2030C", - "name": "checkbox-multiple-outline", - "codepoint": "F0C51", - "aliases": [ - "check-boxes-outline", - "tick-box-multiple-outline" - ], - "styles": [ - "box", - "multiple", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Michael Richins" - }, - { - "id": "EA5B8CC8-FFD6-4128-AC25-DEDCF1097A34", - "baseIconId": "F789CE44-7EA3-4E97-88FB-BEC22EB2030C", - "name": "checkbox-outline", - "codepoint": "F0C52", - "aliases": [], - "styles": [ - "box", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Michael Richins" - }, - { - "id": "A5F7D4AF-C7A3-4F38-B21B-B9F3E68770DE", - "baseIconId": "A5F7D4AF-C7A3-4F38-B21B-B9F3E68770DE", - "name": "checkerboard", - "codepoint": "F013A", - "aliases": [ - "raster" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Gaming \/ RPG", - "Geographic Information System" - ], - "author": "Austin Andrews" - }, - { - "id": "925C7A7F-E7D0-4260-B131-D96FF2F7B8DB", - "baseIconId": "A5F7D4AF-C7A3-4F38-B21B-B9F3E68770DE", - "name": "checkerboard-minus", - "codepoint": "F1202", - "aliases": [ - "raster-minus" - ], - "styles": [ - "minus" - ], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Geographic Information System" - ], - "author": "Michael Irigoyen" - }, - { - "id": "020A5F88-EE7B-4FE7-ADC7-999A0ADB16EE", - "baseIconId": "A5F7D4AF-C7A3-4F38-B21B-B9F3E68770DE", - "name": "checkerboard-plus", - "codepoint": "F1201", - "aliases": [ - "raster-plus" - ], - "styles": [ - "plus" - ], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Geographic Information System" - ], - "author": "Michael Irigoyen" - }, - { - "id": "CDCAA6DE-0885-474F-992F-6A7F46563A15", - "baseIconId": "A5F7D4AF-C7A3-4F38-B21B-B9F3E68770DE", - "name": "checkerboard-remove", - "codepoint": "F1203", - "aliases": [ - "raster-remove" - ], - "styles": [ - "remove" - ], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Geographic Information System" - ], - "author": "Michael Irigoyen" - }, - { - "id": "618E3DC0-F776-4CFF-BE9F-D6A23D580F5B", - "baseIconId": "618E3DC0-F776-4CFF-BE9F-D6A23D580F5B", - "name": "cheese", - "codepoint": "F12B9", - "aliases": [ - "swiss-cheese" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Thomas de Saint-Exup\u00e9ry" - }, - { - "id": "7EF3B22A-CA40-400B-AA25-00B9A6777651", - "baseIconId": "618E3DC0-F776-4CFF-BE9F-D6A23D580F5B", - "name": "cheese-off", - "codepoint": "F13EE", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E22BD22B-9748-4CA8-A748-B5598B08A7DE", - "baseIconId": "E22BD22B-9748-4CA8-A748-B5598B08A7DE", - "name": "chef-hat", - "codepoint": "F0B7C", - "aliases": [ - "toque", - "cook" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Clothing" - ], - "author": "Simran" - }, - { - "id": "7916D1CB-2F73-4C27-8A6B-B14D593F8F59", - "baseIconId": "7916D1CB-2F73-4C27-8A6B-B14D593F8F59", - "name": "chemical-weapon", - "codepoint": "F013B", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "3B0E25CE-ADB0-4601-BFBD-87C7B6D63E7F", - "baseIconId": "3B0E25CE-ADB0-4601-BFBD-87C7B6D63E7F", - "name": "chess-bishop", - "codepoint": "F085C", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Richins" - }, - { - "id": "073FDF74-5305-45AB-8AC3-42A0FE6BBF9C", - "baseIconId": "073FDF74-5305-45AB-8AC3-42A0FE6BBF9C", - "name": "chess-king", - "codepoint": "F0857", - "aliases": [ - "crown", - "royalty" - ], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Richins" - }, - { - "id": "99D5E230-2040-4811-BEF1-17B867DA5F75", - "baseIconId": "99D5E230-2040-4811-BEF1-17B867DA5F75", - "name": "chess-knight", - "codepoint": "F0858", - "aliases": [ - "chess-horse" - ], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Richins" - }, - { - "id": "EDF049A9-1170-411B-923E-D19BD5EADB92", - "baseIconId": "EDF049A9-1170-411B-923E-D19BD5EADB92", - "name": "chess-pawn", - "codepoint": "F0859", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Richins" - }, - { - "id": "0B9D0593-D546-4DDD-AEB1-289943FB12AE", - "baseIconId": "0B9D0593-D546-4DDD-AEB1-289943FB12AE", - "name": "chess-queen", - "codepoint": "F085A", - "aliases": [ - "crown", - "royalty" - ], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Richins" - }, - { - "id": "D1FA251F-4332-4BA9-8742-F194C0B0BF28", - "baseIconId": "D1FA251F-4332-4BA9-8742-F194C0B0BF28", - "name": "chess-rook", - "codepoint": "F085B", - "aliases": [ - "chess-castle", - "chess-tower" - ], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Richins" - }, - { - "id": "74ACC301-AA62-492B-92C1-8021BDD89A02", - "baseIconId": "84FE90C1-076D-4EA1-B56F-4C2582A39AC3", - "name": "chevron-double-down", - "codepoint": "F013C", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "76350FC3-7629-4247-9D09-8AB9AF9BC6CF", - "baseIconId": "CF5607F2-4106-4D47-8FE6-B8F5A16E6D98", - "name": "chevron-double-left", - "codepoint": "F013D", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "E4B5D36C-A663-4D53-BE18-09393497556F", - "baseIconId": "A6D25AD4-462B-4185-B739-FBFCD3ACF3C3", - "name": "chevron-double-right", - "codepoint": "F013E", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "53D302C9-3A0D-4104-967E-21D174E3C0B2", - "baseIconId": "AECCC94F-C38A-4A97-879E-ACD09F89169A", - "name": "chevron-double-up", - "codepoint": "F013F", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "84FE90C1-076D-4EA1-B56F-4C2582A39AC3", - "baseIconId": "84FE90C1-076D-4EA1-B56F-4C2582A39AC3", - "name": "chevron-down", - "codepoint": "F0140", - "aliases": [ - "expand-more", - "keyboard-arrow-down" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "E2EFD734-594F-40ED-A263-3DFBB8E1B381", - "baseIconId": "84FE90C1-076D-4EA1-B56F-4C2582A39AC3", - "name": "chevron-down-box", - "codepoint": "F09D6", - "aliases": [], - "styles": [ - "box" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Form", - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D299D24D-E65D-4A1F-953B-0AC936D25C58", - "baseIconId": "84FE90C1-076D-4EA1-B56F-4C2582A39AC3", - "name": "chevron-down-box-outline", - "codepoint": "F09D7", - "aliases": [], - "styles": [ - "box", - "outline" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Form", - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F312962F-0720-4145-89EA-6E3E9D60131D", - "baseIconId": "84FE90C1-076D-4EA1-B56F-4C2582A39AC3", - "name": "chevron-down-circle", - "codepoint": "F0B26", - "aliases": [], - "styles": [ - "circle" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "SarinManS" - }, - { - "id": "3968656C-5ADA-44B4-AFAD-9437B1363C5D", - "baseIconId": "84FE90C1-076D-4EA1-B56F-4C2582A39AC3", - "name": "chevron-down-circle-outline", - "codepoint": "F0B27", - "aliases": [], - "styles": [ - "circle", - "outline" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "SarinManS" - }, - { - "id": "CF5607F2-4106-4D47-8FE6-B8F5A16E6D98", - "baseIconId": "CF5607F2-4106-4D47-8FE6-B8F5A16E6D98", - "name": "chevron-left", - "codepoint": "F0141", - "aliases": [ - "keyboard-arrow-left", - "navigate-before" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "7DC0F3E7-2E3F-49BD-874D-B17250FBA187", - "baseIconId": "CF5607F2-4106-4D47-8FE6-B8F5A16E6D98", - "name": "chevron-left-box", - "codepoint": "F09D8", - "aliases": [], - "styles": [ - "box" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "22B3AE2E-C625-4325-8FBE-A98AC004CEE6", - "baseIconId": "CF5607F2-4106-4D47-8FE6-B8F5A16E6D98", - "name": "chevron-left-box-outline", - "codepoint": "F09D9", - "aliases": [], - "styles": [ - "box", - "outline" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "842FCAE6-0FE2-495D-980C-1ABA85257C77", - "baseIconId": "CF5607F2-4106-4D47-8FE6-B8F5A16E6D98", - "name": "chevron-left-circle", - "codepoint": "F0B28", - "aliases": [], - "styles": [ - "circle" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "SarinManS" - }, - { - "id": "DDBD357B-6E94-483F-9A09-0E2131FA8533", - "baseIconId": "CF5607F2-4106-4D47-8FE6-B8F5A16E6D98", - "name": "chevron-left-circle-outline", - "codepoint": "F0B29", - "aliases": [], - "styles": [ - "circle", - "outline" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "SarinManS" - }, - { - "id": "A6D25AD4-462B-4185-B739-FBFCD3ACF3C3", - "baseIconId": "A6D25AD4-462B-4185-B739-FBFCD3ACF3C3", - "name": "chevron-right", - "codepoint": "F0142", - "aliases": [ - "keyboard-arrow-right", - "navigate-next" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "D9C230F8-C44C-4CE7-8DEF-891A531A1619", - "baseIconId": "A6D25AD4-462B-4185-B739-FBFCD3ACF3C3", - "name": "chevron-right-box", - "codepoint": "F09DA", - "aliases": [], - "styles": [ - "box" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E96D0BE5-31CA-4C47-B91A-B8FB9FCB5D15", - "baseIconId": "A6D25AD4-462B-4185-B739-FBFCD3ACF3C3", - "name": "chevron-right-box-outline", - "codepoint": "F09DB", - "aliases": [], - "styles": [ - "box", - "outline" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A0F96469-2C19-48B6-A054-3F48656CE24F", - "baseIconId": "A6D25AD4-462B-4185-B739-FBFCD3ACF3C3", - "name": "chevron-right-circle", - "codepoint": "F0B2A", - "aliases": [], - "styles": [ - "circle" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "SarinManS" - }, - { - "id": "9AA7CA11-776D-413A-A08F-9E21AF0F963B", - "baseIconId": "A6D25AD4-462B-4185-B739-FBFCD3ACF3C3", - "name": "chevron-right-circle-outline", - "codepoint": "F0B2B", - "aliases": [], - "styles": [ - "circle", - "outline" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "SarinManS" - }, - { - "id": "D922FD44-139A-4DEE-92A6-1BFCA39C8461", - "baseIconId": "84FE90C1-076D-4EA1-B56F-4C2582A39AC3", - "name": "chevron-triple-down", - "codepoint": "F0DB9", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "09E1A31D-448C-42D3-A220-2ACBD0D8B211", - "baseIconId": "CF5607F2-4106-4D47-8FE6-B8F5A16E6D98", - "name": "chevron-triple-left", - "codepoint": "F0DBA", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "F80C6B02-D422-44FE-9199-B9E12EF523C8", - "baseIconId": "A6D25AD4-462B-4185-B739-FBFCD3ACF3C3", - "name": "chevron-triple-right", - "codepoint": "F0DBB", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "C04D4C82-E95C-45E1-8582-89A24536026F", - "baseIconId": "AECCC94F-C38A-4A97-879E-ACD09F89169A", - "name": "chevron-triple-up", - "codepoint": "F0DBC", - "aliases": [ - "rank" - ], - "styles": [ - "variant" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "AECCC94F-C38A-4A97-879E-ACD09F89169A", - "baseIconId": "AECCC94F-C38A-4A97-879E-ACD09F89169A", - "name": "chevron-up", - "codepoint": "F0143", - "aliases": [ - "expand-less", - "keyboard-arrow-up", - "caret" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow", - "Math" - ], - "author": "Google" - }, - { - "id": "C721C684-43CC-4B3B-B91A-A574D5215FF3", - "baseIconId": "AECCC94F-C38A-4A97-879E-ACD09F89169A", - "name": "chevron-up-box", - "codepoint": "F09DC", - "aliases": [], - "styles": [ - "box" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7660602A-34FB-4A1A-818B-A086CA1783BD", - "baseIconId": "AECCC94F-C38A-4A97-879E-ACD09F89169A", - "name": "chevron-up-box-outline", - "codepoint": "F09DD", - "aliases": [], - "styles": [ - "box", - "outline" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "981C36F0-6F33-4A92-B20E-66E70BF474FA", - "baseIconId": "AECCC94F-C38A-4A97-879E-ACD09F89169A", - "name": "chevron-up-circle", - "codepoint": "F0B2C", - "aliases": [], - "styles": [ - "circle" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "SarinManS" - }, - { - "id": "625319CF-2277-486A-9FB6-902F3F3FE212", - "baseIconId": "AECCC94F-C38A-4A97-879E-ACD09F89169A", - "name": "chevron-up-circle-outline", - "codepoint": "F0B2D", - "aliases": [], - "styles": [ - "circle", - "outline" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "SarinManS" - }, - { - "id": "E39C0619-71BD-4EE7-932C-2025F7174550", - "baseIconId": "3CE5B420-F103-47EA-800C-A4D145B89508", - "name": "chili-alert", - "codepoint": "F17EA", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Colton Wiscombe" - }, - { - "id": "783609FD-2EDD-4273-9524-6FB6CAD6697B", - "baseIconId": "3CE5B420-F103-47EA-800C-A4D145B89508", - "name": "chili-alert-outline", - "codepoint": "F17EB", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Colton Wiscombe" - }, - { - "id": "E868226C-7BE8-4A22-8A9A-8E040004016A", - "baseIconId": "3CE5B420-F103-47EA-800C-A4D145B89508", - "name": "chili-hot", - "codepoint": "F07B2", - "aliases": [ - "chilli-hot", - "pepper", - "spicy" - ], - "styles": [ - "multiple" - ], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Andy Martinez" - }, - { - "id": "AB432B2A-F29D-4F6D-B6E3-46C19C544B40", - "baseIconId": "3CE5B420-F103-47EA-800C-A4D145B89508", - "name": "chili-hot-outline", - "codepoint": "F17EC", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "C9DA0BF5-09DD-46A9-AE62-1612B26F0BB1", - "baseIconId": "3CE5B420-F103-47EA-800C-A4D145B89508", - "name": "chili-medium", - "codepoint": "F07B3", - "aliases": [ - "chilli-medium", - "pepper", - "spicy" - ], - "styles": [ - "multiple" - ], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Andy Martinez" - }, - { - "id": "6C57AD0C-11EA-4710-87D4-462B94821A4C", - "baseIconId": "3CE5B420-F103-47EA-800C-A4D145B89508", - "name": "chili-medium-outline", - "codepoint": "F17ED", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "3CE5B420-F103-47EA-800C-A4D145B89508", - "baseIconId": "3CE5B420-F103-47EA-800C-A4D145B89508", - "name": "chili-mild", - "codepoint": "F07B4", - "aliases": [ - "chilli-mild", - "pepper", - "spicy" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Agriculture" - ], - "author": "Andy Martinez" - }, - { - "id": "21ECB1D3-C620-4FEF-A6A9-4210D859DE1F", - "baseIconId": "3CE5B420-F103-47EA-800C-A4D145B89508", - "name": "chili-mild-outline", - "codepoint": "F17EE", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "F92E010E-F45D-44CE-8F13-F6419010B0D2", - "baseIconId": "3CE5B420-F103-47EA-800C-A4D145B89508", - "name": "chili-off", - "codepoint": "F1467", - "aliases": [ - "chilli-off", - "pepper-off", - "spicy-off" - ], - "styles": [ - "off" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "64F2DC11-3647-4EEC-AADF-3EAE1AA47B65", - "baseIconId": "3CE5B420-F103-47EA-800C-A4D145B89508", - "name": "chili-off-outline", - "codepoint": "F17EF", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "A535271B-1114-44AD-9D9D-1984905026FF", - "baseIconId": "A535271B-1114-44AD-9D9D-1984905026FF", - "name": "chip", - "codepoint": "F061A", - "aliases": [ - "integrated-circuit" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "82E4FDFE-C9C8-4087-ABCC-DF51F760379A", - "baseIconId": "82E4FDFE-C9C8-4087-ABCC-DF51F760379A", - "name": "church", - "codepoint": "F0144", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Religion", - "Places" - ], - "author": "Google" - }, - { - "id": "4430C123-70EA-4AC2-BEC4-5919786D4EBC", - "baseIconId": "82E4FDFE-C9C8-4087-ABCC-DF51F760379A", - "name": "church-outline", - "codepoint": "F1B02", - "aliases": [], - "styles": [ - "outline" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Places", - "Religion" - ], - "author": "Google" - }, - { - "id": "4E50E8E9-4283-4B08-9AB2-6283088898BB", - "baseIconId": "4E50E8E9-4283-4B08-9AB2-6283088898BB", - "name": "cigar", - "codepoint": "F1189", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "BC451ECE-B21F-43F6-AE1C-D9E3614E4406", - "baseIconId": "4E50E8E9-4283-4B08-9AB2-6283088898BB", - "name": "cigar-off", - "codepoint": "F141B", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "59803983-F6CE-4D40-B83C-36D42C9464A9", - "baseIconId": "59803983-F6CE-4D40-B83C-36D42C9464A9", - "name": "circle", - "codepoint": "F0765", - "aliases": [ - "lens" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Austin Andrews" - }, - { - "id": "3E57AA64-D7C2-4C4E-BE87-58A6D775BC21", - "baseIconId": "59803983-F6CE-4D40-B83C-36D42C9464A9", - "name": "circle-box", - "codepoint": "F15DC", - "aliases": [], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "4A709F16-7813-44DA-AB19-EBEBB4A6718A", - "baseIconId": "59803983-F6CE-4D40-B83C-36D42C9464A9", - "name": "circle-box-outline", - "codepoint": "F15DD", - "aliases": [], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "02A447DB-D9DB-4568-B839-841F1401FD31", - "baseIconId": "59803983-F6CE-4D40-B83C-36D42C9464A9", - "name": "circle-double", - "codepoint": "F0E95", - "aliases": [], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "ginlime" - }, - { - "id": "7C0E615F-A0DC-4689-A094-4E59D27675B3", - "baseIconId": "59803983-F6CE-4D40-B83C-36D42C9464A9", - "name": "circle-edit-outline", - "codepoint": "F08D5", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Google" - }, - { - "id": "6262A121-B53E-4429-8E8E-F05A6820EDC7", - "baseIconId": "59803983-F6CE-4D40-B83C-36D42C9464A9", - "name": "circle-expand", - "codepoint": "F0E96", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "901AA3C4-B9A4-4764-ABA4-FD51FA6D68ED", - "baseIconId": "59803983-F6CE-4D40-B83C-36D42C9464A9", - "name": "circle-half", - "codepoint": "F1395", - "aliases": [ - "brightness-half" - ], - "styles": [ - "variant" - ], - "version": "5.0.45", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Simran" - }, - { - "id": "D066B111-84BC-4682-864B-CAFEE4A93F66", - "baseIconId": "59803983-F6CE-4D40-B83C-36D42C9464A9", - "name": "circle-half-full", - "codepoint": "F1396", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.0.45", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Simran" - }, - { - "id": "AB8D0574-712C-4403-A5A5-51E16C081605", - "baseIconId": "59803983-F6CE-4D40-B83C-36D42C9464A9", - "name": "circle-medium", - "codepoint": "F09DE", - "aliases": [], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "C05A4C2F-8128-474F-B204-D782A332CB73", - "baseIconId": "59803983-F6CE-4D40-B83C-36D42C9464A9", - "name": "circle-multiple", - "codepoint": "F0B38", - "aliases": [ - "coins" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Michael Richins" - }, - { - "id": "BAD0A147-6CA0-4BCF-88DF-8E8A4C247B0E", - "baseIconId": "59803983-F6CE-4D40-B83C-36D42C9464A9", - "name": "circle-multiple-outline", - "codepoint": "F0695", - "aliases": [ - "toll", - "coins-outline" - ], - "styles": [ - "outline" - ], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Google" - }, - { - "id": "5DC46127-B07A-4E2B-B3BA-A98C0D2942F4", - "baseIconId": "59803983-F6CE-4D40-B83C-36D42C9464A9", - "name": "circle-off-outline", - "codepoint": "F10D3", - "aliases": [ - "null-off" - ], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "912F4CEF-F852-49C4-B9BB-A6504988C11E", - "baseIconId": "59803983-F6CE-4D40-B83C-36D42C9464A9", - "name": "circle-opacity", - "codepoint": "F1853", - "aliases": [ - "circle-transparent" - ], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Shape", - "Drawing \/ Art" - ], - "author": "Michael Irigoyen" - }, - { - "id": "00E1BEF8-DD84-4DCE-BE3C-8AA411DCE5FD", - "baseIconId": "59803983-F6CE-4D40-B83C-36D42C9464A9", - "name": "circle-outline", - "codepoint": "F0766", - "aliases": [ - "null" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Austin Andrews" - }, - { - "id": "40F6544B-8BBE-44AD-85A2-FDFA1AD8091E", - "baseIconId": "40F6544B-8BBE-44AD-85A2-FDFA1AD8091E", - "name": "circle-slice-1", - "codepoint": "F0A9E", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "SarinManS" - }, - { - "id": "520A592A-21BB-4D8C-835F-BEF1EF0B73D0", - "baseIconId": "520A592A-21BB-4D8C-835F-BEF1EF0B73D0", - "name": "circle-slice-2", - "codepoint": "F0A9F", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "SarinManS" - }, - { - "id": "FE0AA2ED-07F6-4BC4-876E-1FA6BA283130", - "baseIconId": "FE0AA2ED-07F6-4BC4-876E-1FA6BA283130", - "name": "circle-slice-3", - "codepoint": "F0AA0", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "SarinManS" - }, - { - "id": "12C46927-0235-4A3A-965B-287879A4C2E3", - "baseIconId": "12C46927-0235-4A3A-965B-287879A4C2E3", - "name": "circle-slice-4", - "codepoint": "F0AA1", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "SarinManS" - }, - { - "id": "4AA85ADE-6180-453B-A62E-2819E92E779A", - "baseIconId": "4AA85ADE-6180-453B-A62E-2819E92E779A", - "name": "circle-slice-5", - "codepoint": "F0AA2", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "SarinManS" - }, - { - "id": "658050F8-5C9A-4C5C-BE99-8EB492524586", - "baseIconId": "658050F8-5C9A-4C5C-BE99-8EB492524586", - "name": "circle-slice-6", - "codepoint": "F0AA3", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "SarinManS" - }, - { - "id": "A051B0B2-A0CB-4E51-87F8-242EA4A4777F", - "baseIconId": "A051B0B2-A0CB-4E51-87F8-242EA4A4777F", - "name": "circle-slice-7", - "codepoint": "F0AA4", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "SarinManS" - }, - { - "id": "CB0FC186-2B53-4802-A9DB-98CF07B78CF1", - "baseIconId": "CB0FC186-2B53-4802-A9DB-98CF07B78CF1", - "name": "circle-slice-8", - "codepoint": "F0AA5", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "SarinManS" - }, - { - "id": "0EA34D8C-1A02-4A92-8293-991702ABD065", - "baseIconId": "59803983-F6CE-4D40-B83C-36D42C9464A9", - "name": "circle-small", - "codepoint": "F09DF", - "aliases": [ - "bullet", - "multiplication", - "dot" - ], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Irigoyen" - }, - { - "id": "4CC37629-C3B9-4F3B-BA36-4B93A3CDE297", - "baseIconId": "4CC37629-C3B9-4F3B-BA36-4B93A3CDE297", - "name": "circular-saw", - "codepoint": "F0E22", - "aliases": [], - "styles": [], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Augustin Ursu" - }, - { - "id": "5A5AC571-1818-45D0-8259-A9177DBED615", - "baseIconId": "5A5AC571-1818-45D0-8259-A9177DBED615", - "name": "city", - "codepoint": "F0146", - "aliases": [ - "location-city" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Places" - ], - "author": "Google" - }, - { - "id": "830F6E98-B337-4E3C-A990-AA44622F4E78", - "baseIconId": "5A5AC571-1818-45D0-8259-A9177DBED615", - "name": "city-switch", - "codepoint": "F1C28", - "aliases": [ - "city-swap" - ], - "styles": [], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Places" - ], - "author": "Jeff Anders" - }, - { - "id": "2F6976DF-1008-496D-802D-917F6EA5F7DB", - "baseIconId": "5A5AC571-1818-45D0-8259-A9177DBED615", - "name": "city-variant", - "codepoint": "F0A36", - "aliases": [], - "styles": [ - "variant" - ], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Places" - ], - "author": "Michael Richins" - }, - { - "id": "1DECCCEC-93F2-4BD8-BEFD-370D5020DCDB", - "baseIconId": "5A5AC571-1818-45D0-8259-A9177DBED615", - "name": "city-variant-outline", - "codepoint": "F0A37", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Places" - ], - "author": "Michael Richins" - }, - { - "id": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard", - "codepoint": "F0147", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "C45D118E-4FFA-42E5-A18B-B8A7B58BF42F", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-account", - "codepoint": "F0148", - "aliases": [ - "clipboard-user", - "assignment-ind", - "clipboard-person" - ], - "styles": [ - "account" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "80D8F0AA-0B3A-47ED-B342-8681E0DD7450", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-account-outline", - "codepoint": "F0C55", - "aliases": [ - "clipboard-user-outline", - "clipboard-person-outline", - "assignment-ind-outline" - ], - "styles": [ - "account", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "James Coyle" - }, - { - "id": "57AC4C5E-B2AB-42B5-9826-BCFEACCB2E7C", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-alert", - "codepoint": "F0149", - "aliases": [ - "clipboard-warning", - "assignment-late" - ], - "styles": [ - "alert" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Google" - }, - { - "id": "321F2AC5-C710-4AD5-A493-279435DF0074", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-alert-outline", - "codepoint": "F0CF7", - "aliases": [ - "clipboard-warning-outline" - ], - "styles": [ - "alert", - "outline" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "James Coyle" - }, - { - "id": "863E0318-495E-437A-B22B-3C1274D108E6", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-arrow-down", - "codepoint": "F014A", - "aliases": [ - "assignment-returned", - "clipboard-arrow-bottom" - ], - "styles": [ - "arrow" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "0FB11B14-8890-432D-A4B0-7D359DE681D8", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-arrow-down-outline", - "codepoint": "F0C56", - "aliases": [ - "assignment-returned-outline", - "clipboard-arrow-bottom-outline" - ], - "styles": [ - "arrow", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "1D6DD9E5-61EA-40E6-A19A-EF4BA71B0FC0", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-arrow-left", - "codepoint": "F014B", - "aliases": [ - "assignment-return" - ], - "styles": [ - "arrow" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "38CF4CD8-7203-4E66-BAD3-A3A7B4900BD4", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-arrow-left-outline", - "codepoint": "F0CF8", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [], - "author": "James Coyle" - }, - { - "id": "4BD76170-F83F-4145-982F-3F1EBAD22D59", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-arrow-right", - "codepoint": "F0CF9", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [], - "author": "James Coyle" - }, - { - "id": "7DB95067-893D-4472-8D74-79E521AE0DD1", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-arrow-right-outline", - "codepoint": "F0CFA", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [], - "author": "James Coyle" - }, - { - "id": "5F084570-4F64-4A94-A762-602350ACEDAA", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-arrow-up", - "codepoint": "F0C57", - "aliases": [ - "clipboard-arrow-top" - ], - "styles": [ - "arrow" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "James Coyle" - }, - { - "id": "15ED4DA3-08C5-4913-9FEB-A88CEED7DDE9", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-arrow-up-outline", - "codepoint": "F0C58", - "aliases": [ - "clipboard-arrow-top-outline" - ], - "styles": [ - "arrow", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "James Coyle" - }, - { - "id": "2FA574EF-C285-465F-A254-868506FA4273", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-check", - "codepoint": "F014E", - "aliases": [ - "assignment-turned-in", - "clipboard-tick" - ], - "styles": [ - "check" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "6DBE3F30-C444-443C-A515-75657C468338", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-check-multiple", - "codepoint": "F1263", - "aliases": [], - "styles": [ - "check", - "multiple" - ], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "frankgrinaert" - }, - { - "id": "2FB7020B-64CC-4CA8-A46E-0D3E5B65A697", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-check-multiple-outline", - "codepoint": "F1264", - "aliases": [], - "styles": [ - "check", - "multiple", - "outline" - ], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "frankgrinaert" - }, - { - "id": "6A0DFB73-2DBF-4D3C-8C6B-2B4758B11782", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-check-outline", - "codepoint": "F08A8", - "aliases": [ - "clipboard-tick-outline" - ], - "styles": [ - "check", - "outline" - ], - "version": "2.2.43", - "deprecated": false, - "tags": [], - "author": "James Coyle" - }, - { - "id": "E276DDBC-9E61-4CE3-8168-6E896E6ADD98", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-clock", - "codepoint": "F16E2", - "aliases": [], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "D9132053-ADBE-417D-A00B-207B8F1C85A7", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-clock-outline", - "codepoint": "F16E3", - "aliases": [], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "BA08B631-B169-4C0F-A99B-BBECC9F18CAA", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-edit", - "codepoint": "F14E5", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Alison Moura" - }, - { - "id": "E316EB8B-FF99-4B85-AE09-C7E5A9656738", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-edit-outline", - "codepoint": "F14E6", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Alison Moura" - }, - { - "id": "CE6923D5-218F-4817-B904-E03A842CE696", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-file", - "codepoint": "F1265", - "aliases": [], - "styles": [ - "variant" - ], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "frankgrinaert" - }, - { - "id": "B9BE1636-2925-4AA2-B21A-1EE197FA7774", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-file-outline", - "codepoint": "F1266", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "frankgrinaert" - }, - { - "id": "5A450EF8-D2F0-4F32-8D10-A606DD847E19", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-flow", - "codepoint": "F06C8", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "5EA9A77D-401F-48C8-B804-EE8B9A7CB229", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-flow-outline", - "codepoint": "F1117", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "4.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "754100C6-667F-49AD-A5C5-0FF2AD94C6DF", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-list", - "codepoint": "F10D4", - "aliases": [], - "styles": [ - "variant" - ], - "version": "4.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "9169E4CD-137E-4743-96A7-80B5764630FF", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-list-outline", - "codepoint": "F10D5", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "4.3.95", - "deprecated": false, - "tags": [], - "author": "kevin-hens" - }, - { - "id": "7C5309A2-5DA1-4393-8846-0CF5CB43BF88", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-minus", - "codepoint": "F1618", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "F83888C2-F7CF-423E-9101-2D9A49A6597B", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-minus-outline", - "codepoint": "F1619", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "8CD0EB09-AC6D-43C7-8DD6-4F2FD9A1DBC5", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-multiple", - "codepoint": "F1267", - "aliases": [], - "styles": [ - "multiple" - ], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "frankgrinaert" - }, - { - "id": "81D9B376-8054-4DB5-BA79-274E4B3EF79D", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-multiple-outline", - "codepoint": "F1268", - "aliases": [], - "styles": [ - "multiple", - "outline" - ], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "frankgrinaert" - }, - { - "id": "376FB5C9-DF1A-455B-9824-5D0A3CE61481", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-off", - "codepoint": "F161A", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "86166B5D-05DD-423B-B10E-E67010AEBE58", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-off-outline", - "codepoint": "F161B", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "54F34575-7348-4032-B072-EC8F9A6C843D", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-outline", - "codepoint": "F014C", - "aliases": [], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "F0E26160-95CF-4270-8FD2-134391B88CA8", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-play", - "codepoint": "F0C59", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "E78AF95D-A3B1-483C-9F46-B503AEF6B4C0", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-play-multiple", - "codepoint": "F1269", - "aliases": [], - "styles": [ - "multiple", - "variant" - ], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "frankgrinaert" - }, - { - "id": "2FCD745F-4980-4CAA-A51D-94574CAB1DA4", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-play-multiple-outline", - "codepoint": "F126A", - "aliases": [], - "styles": [ - "multiple", - "outline", - "variant" - ], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "frankgrinaert" - }, - { - "id": "B2D48D43-940B-4758-A9E1-00E13202B239", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-play-outline", - "codepoint": "F0C5A", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "A5AA9DEA-AAAE-4C79-965F-6828F823E2CD", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-plus", - "codepoint": "F0751", - "aliases": [ - "clipboard-add" - ], - "styles": [ - "plus" - ], - "version": "1.9.32", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "4662F629-FEF3-4F7A-A901-56FF827CF051", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-plus-outline", - "codepoint": "F131F", - "aliases": [], - "styles": [ - "outline", - "plus" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "8E3D93CC-DE0A-4828-AC9A-9A6CFD932978", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-pulse", - "codepoint": "F085D", - "aliases": [ - "clipboard-vitals" - ], - "styles": [ - "variant" - ], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Simran" - }, - { - "id": "8D6CA1DD-35D6-4E8E-BDA0-6192728A24C4", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-pulse-outline", - "codepoint": "F085E", - "aliases": [ - "clipboard-vitals-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Simran" - }, - { - "id": "474C3746-90C6-456C-9B18-6101FFC8075B", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-remove", - "codepoint": "F161C", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "57C00F9A-7204-402F-9AF9-908A02C23681", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-remove-outline", - "codepoint": "F161D", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "785666E6-8CB0-4875-A289-1A9329614E69", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-search", - "codepoint": "F161E", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "9D8E08D1-6F72-4729-AF64-ED099D109B7D", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-search-outline", - "codepoint": "F161F", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "81453216-6EC0-4751-82A4-BFFF63B922FC", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-text", - "codepoint": "F014D", - "aliases": [ - "assignment" - ], - "styles": [ - "outline", - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "EEFDB836-DFC2-43ED-9246-05B972EA2B57", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-text-clock", - "codepoint": "F18F9", - "aliases": [ - "clipboard-text-date", - "clipboard-text-time", - "clipboard-text-history" - ], - "styles": [ - "clock", - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9A710A09-DB02-441E-A5E6-204937893D50", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-text-clock-outline", - "codepoint": "F18FA", - "aliases": [ - "clipboard-text-date-outline", - "clipboard-text-time-outline", - "clipboard-text-history-outline" - ], - "styles": [ - "clock", - "outline", - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "37090A31-A50D-43AB-92C4-BFB2C17273E6", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-text-multiple", - "codepoint": "F126B", - "aliases": [], - "styles": [ - "multiple", - "variant" - ], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "frankgrinaert" - }, - { - "id": "4FF17874-C828-4EA8-9F4D-BEAEB614D69F", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-text-multiple-outline", - "codepoint": "F126C", - "aliases": [], - "styles": [ - "multiple", - "outline", - "variant" - ], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "frankgrinaert" - }, - { - "id": "237A2797-5013-4A50-9CB9-59FFEEC5BE4E", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-text-off", - "codepoint": "F1620", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "A5B09C9E-6430-4F6E-BA1C-D855ED6AB74C", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-text-off-outline", - "codepoint": "F1621", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "9C5136D5-E614-4DBD-AB36-EBB044178B6D", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-text-outline", - "codepoint": "F0A38", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "15B53AD7-FB72-4D70-8F70-B2259281EA2B", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-text-play", - "codepoint": "F0C5B", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "A1587F0D-C189-4886-9CB0-FBA5E3FA70E6", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-text-play-outline", - "codepoint": "F0C5C", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "347494DF-0250-4F0E-9E64-23CB8F35B8C2", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-text-search", - "codepoint": "F1622", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "1E23BABF-F9E8-42C6-9199-0B3B6C43C290", - "baseIconId": "423D4239-D8DC-4D8B-9365-9D51E2A0FDF7", - "name": "clipboard-text-search-outline", - "codepoint": "F1623", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "6B346FB6-F563-4AC4-B769-06A143B42152", - "baseIconId": "6B346FB6-F563-4AC4-B769-06A143B42152", - "name": "clippy", - "codepoint": "F014F", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Contributors" - }, - { - "id": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock", - "codepoint": "F0954", - "aliases": [ - "watch-later" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "A4250284-2784-405C-A62F-E6C546D66777", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-alert", - "codepoint": "F0955", - "aliases": [ - "clock-warning" - ], - "styles": [ - "alert" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Alert \/ Error" - ], - "author": "Simran" - }, - { - "id": "CB400FB2-95E5-4420-B579-80DCA5C0F8B0", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-alert-outline", - "codepoint": "F05CE", - "aliases": [ - "clock-warning" - ], - "styles": [ - "alert", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Alert \/ Error" - ], - "author": "Simran" - }, - { - "id": "46C840CA-A3F7-4293-8ABC-28C285723A8A", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-check", - "codepoint": "F0FA8", - "aliases": [], - "styles": [ - "check" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DC1289EA-B14C-403D-9A76-4C28CB042FAA", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-check-outline", - "codepoint": "F0FA9", - "aliases": [], - "styles": [ - "check", - "outline" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "EFE4304F-7BAB-4DB6-846C-31B368CA3BDC", - "baseIconId": "EFE4304F-7BAB-4DB6-846C-31B368CA3BDC", - "name": "clock-digital", - "codepoint": "F0E97", - "aliases": [], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "2F115531-58CA-4BC0-A271-C8202C4ADE37", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-edit", - "codepoint": "F19BA", - "aliases": [], - "styles": [ - "edit" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Edit \/ Modify" - ], - "author": "Sidney Alcantara" - }, - { - "id": "E528826E-0ACC-494C-AFA3-B0AFF7FD802A", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-edit-outline", - "codepoint": "F19BB", - "aliases": [], - "styles": [ - "edit", - "outline" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Edit \/ Modify" - ], - "author": "Sidney Alcantara" - }, - { - "id": "F7F5CA75-E8B5-45E1-B0BA-040F225D877D", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-end", - "codepoint": "F0151", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Simran" - }, - { - "id": "111210EB-0EF4-4DCB-ABBD-6A75F15EEB44", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-fast", - "codepoint": "F0152", - "aliases": [ - "velocity" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Austin Andrews" - }, - { - "id": "6483D8DB-4170-4104-8A69-40D28401EF4C", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-in", - "codepoint": "F0153", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Simran" - }, - { - "id": "009901AA-479B-419A-89F8-DA4453B5991B", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-minus", - "codepoint": "F1863", - "aliases": [], - "styles": [ - "minus" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F7112A68-9EE1-4B5E-AD2B-30013EA7053A", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-minus-outline", - "codepoint": "F1864", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Dylan Oli" - }, - { - "id": "7C3F10AF-CB56-4A35-B22A-C833D5C823A3", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-out", - "codepoint": "F0154", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Simran" - }, - { - "id": "E3A4F70D-92EF-4115-BBB3-3BE68A788F5D", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-outline", - "codepoint": "F0150", - "aliases": [ - "access-time", - "query-builder", - "schedule" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "60639801-D950-4C9E-86B7-E8C2928F356D", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-plus", - "codepoint": "F1861", - "aliases": [], - "styles": [ - "plus" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DCE6FA3E-EEB6-4AB9-B4D7-60F71B92A489", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-plus-outline", - "codepoint": "F1862", - "aliases": [], - "styles": [ - "outline", - "plus" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Dylan Oli" - }, - { - "id": "6B8FD378-5837-45BF-A5A6-B94C37641451", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-remove", - "codepoint": "F1865", - "aliases": [], - "styles": [ - "remove" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "29131074-EFF5-4A47-88A2-D856CB92432F", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-remove-outline", - "codepoint": "F1866", - "aliases": [], - "styles": [ - "outline", - "remove" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Dylan Oli" - }, - { - "id": "AA756E06-67A0-4182-8A32-CF4968219B68", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-star-four-points", - "codepoint": "F1C29", - "aliases": [ - "clock-auto" - ], - "styles": [ - "star" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Jeff Anders" - }, - { - "id": "ECD839D8-3E3A-4080-AE28-E15A82E0ACF2", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-star-four-points-outline", - "codepoint": "F1C2A", - "aliases": [ - "clock-auto-outline" - ], - "styles": [ - "outline", - "star" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Jeff Anders" - }, - { - "id": "85A4435A-CDCF-42BC-8F2C-B46EDF8820BD", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-start", - "codepoint": "F0155", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Simran" - }, - { - "id": "A215B597-8863-41CD-93D7-3258F35E0323", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-time-eight", - "codepoint": "F1446", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "BD5AEE68-BAA7-498A-9C16-E4BAEEC10758", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-time-eight-outline", - "codepoint": "F1452", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F00F4BD4-FA53-4F36-A6EF-20C61E728DE4", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-time-eleven", - "codepoint": "F1449", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A157DC0E-2973-49C5-83A6-A59B395000B0", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-time-eleven-outline", - "codepoint": "F1455", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5EADCD37-E186-4701-B55D-490373E248DE", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-time-five", - "codepoint": "F1443", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "8F93B149-9B68-43A0-9DB6-BCE3AF32DA17", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-time-five-outline", - "codepoint": "F144F", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5850EAB7-9808-4FC7-B107-ECBC0D74321A", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-time-four", - "codepoint": "F1442", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "3EB1620A-C31A-4570-A0CA-4D4B1194B5FC", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-time-four-outline", - "codepoint": "F144E", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DA361B2F-72DD-46ED-9920-558A9AD81B3B", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-time-nine", - "codepoint": "F1447", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B3B33DCF-9627-4286-8D43-674E066D5CF8", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-time-nine-outline", - "codepoint": "F1453", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "FE16FC41-411F-423D-96AC-835A334051DF", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-time-one", - "codepoint": "F143F", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "CD2F6CA1-A725-4997-9EDF-7CDD3875997D", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-time-one-outline", - "codepoint": "F144B", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "814B2984-F25E-40EE-98E7-9CDCE300AA0C", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-time-seven", - "codepoint": "F1445", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0249D6C9-BACD-4514-96DB-6ABF4C8756C4", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-time-seven-outline", - "codepoint": "F1451", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "58E0112F-0E05-4C53-8AF2-663009045010", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-time-six", - "codepoint": "F1444", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D8D8CBCB-DCCF-4FB0-A6E2-3D45E732AD90", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-time-six-outline", - "codepoint": "F1450", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5EE154C9-B581-4AB9-A086-38AE96A919E1", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-time-ten", - "codepoint": "F1448", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DDACEAB9-676D-4D4A-9508-CE1241D983BC", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-time-ten-outline", - "codepoint": "F1454", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DA0656E4-D609-441D-93C3-488D36BB9BDA", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-time-three", - "codepoint": "F1441", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "465F6D88-CD51-4BA8-AFBE-0D20845906DD", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-time-three-outline", - "codepoint": "F144D", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "CEA21098-6201-4E2F-A24E-865B4FFD7870", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-time-twelve", - "codepoint": "F144A", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "375B6D36-CFC4-4DB4-BFDE-364E129EDFBB", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-time-twelve-outline", - "codepoint": "F1456", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "3F6D9697-9536-4D51-87D3-839E7579451B", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-time-two", - "codepoint": "F1440", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "20918EE1-9806-4E1D-BD7C-A723AC2A97FF", - "baseIconId": "90E7BBD9-12C3-4339-94DE-99A049C8D4B1", - "name": "clock-time-two-outline", - "codepoint": "F144C", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "FEA26660-7D6A-4C2A-9F13-7AE125FBA543", - "baseIconId": "FEA26660-7D6A-4C2A-9F13-7AE125FBA543", - "name": "close", - "codepoint": "F0156", - "aliases": [ - "clear", - "multiply", - "remove", - "cancel" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math", - "Form" - ], - "author": "Google" - }, - { - "id": "0823D18B-529A-4B7E-8090-A913399A3D5E", - "baseIconId": "FEA26660-7D6A-4C2A-9F13-7AE125FBA543", - "name": "close-box", - "codepoint": "F0157", - "aliases": [ - "multiply-box", - "clear-box", - "cancel-box", - "remove-box" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math", - "Form" - ], - "author": "Gabriel" - }, - { - "id": "63F3E252-98F2-4851-A887-E99FACD6B280", - "baseIconId": "FEA26660-7D6A-4C2A-9F13-7AE125FBA543", - "name": "close-box-multiple", - "codepoint": "F0C5D", - "aliases": [ - "close-boxes", - "library-remove", - "library-close", - "multiply-boxes", - "multiply-box-multiple", - "cancel-box-multiple", - "remove-box-multiple" - ], - "styles": [ - "box", - "multiple" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Michael Richins" - }, - { - "id": "596F26BB-8E10-4530-98CE-FFDACBF07F6B", - "baseIconId": "FEA26660-7D6A-4C2A-9F13-7AE125FBA543", - "name": "close-box-multiple-outline", - "codepoint": "F0C5E", - "aliases": [ - "close-boxes-outline", - "library-remove-outline", - "library-close-outline", - "multiply-boxes-outline", - "multiply-box-multiple-outline", - "remove-box-multiple", - "cancel-box-multiple" - ], - "styles": [ - "box", - "multiple", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Michael Richins" - }, - { - "id": "05B8E566-B224-4ECC-AE70-2BF8BE90C82A", - "baseIconId": "FEA26660-7D6A-4C2A-9F13-7AE125FBA543", - "name": "close-box-outline", - "codepoint": "F0158", - "aliases": [ - "multiply-box-outline", - "clear-box-outline", - "remove-box-outline", - "cancel-box-outline" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math", - "Form" - ], - "author": "Gabriel" - }, - { - "id": "DC0E1491-A8A0-4563-ACEC-C795D96602A7", - "baseIconId": "FEA26660-7D6A-4C2A-9F13-7AE125FBA543", - "name": "close-circle", - "codepoint": "F0159", - "aliases": [ - "remove-circle", - "cancel-circle", - "multiply-circle", - "clear-circle" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Austin Andrews" - }, - { - "id": "77B97AED-2613-434C-BD9C-82755C8B468C", - "baseIconId": "FEA26660-7D6A-4C2A-9F13-7AE125FBA543", - "name": "close-circle-multiple", - "codepoint": "F062A", - "aliases": [ - "remove-circle-multiple", - "coins-close", - "coins-remove", - "clear-circle-multiple", - "multiply-circle-multiple" - ], - "styles": [ - "circle", - "multiple", - "remove" - ], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B77F1750-F3D8-43A5-A2D1-EEF2E3EB584B", - "baseIconId": "FEA26660-7D6A-4C2A-9F13-7AE125FBA543", - "name": "close-circle-multiple-outline", - "codepoint": "F0883", - "aliases": [ - "remove-circle-multiple-outline", - "coins-close-outline", - "coins-remove-outline", - "cancel-circle-multiple-outline", - "multiply-circle-multiple-outline", - "clear-circle-multiple-outline" - ], - "styles": [ - "circle", - "multiple", - "outline", - "remove" - ], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Michael Irigoyen" - }, - { - "id": "EA41E6BB-A176-4E0E-896A-36F9FA5AA62F", - "baseIconId": "FEA26660-7D6A-4C2A-9F13-7AE125FBA543", - "name": "close-circle-outline", - "codepoint": "F015A", - "aliases": [ - "highlight-off", - "multiply-circle-outline", - "remove-circle-outline", - "clear-circle-outline", - "cancel-circle-outline" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Google" - }, - { - "id": "4043C369-E619-47E9-9363-E5E9C43457FB", - "baseIconId": "FEA26660-7D6A-4C2A-9F13-7AE125FBA543", - "name": "close-network", - "codepoint": "F015B", - "aliases": [ - "remove-network", - "cancel-network", - "multiply-network", - "clear-network" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "6BB0D686-C2A2-47D0-A50C-91E0300AF12E", - "baseIconId": "FEA26660-7D6A-4C2A-9F13-7AE125FBA543", - "name": "close-network-outline", - "codepoint": "F0C5F", - "aliases": [ - "remove-network-outline", - "cancel-network-outline", - "multiply-network-outline", - "clear-network-outline" - ], - "styles": [ - "network" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "BA7E9F56-A5F5-4BEE-8934-90CA070A6029", - "baseIconId": "FEA26660-7D6A-4C2A-9F13-7AE125FBA543", - "name": "close-octagon", - "codepoint": "F015C", - "aliases": [ - "dangerous", - "multiply-octagon", - "remove-octagon", - "cancel-octagon", - "clear-octagon", - "stop-remove" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "9676C4C3-D8C3-44A6-A447-59A56A15DA34", - "baseIconId": "FEA26660-7D6A-4C2A-9F13-7AE125FBA543", - "name": "close-octagon-outline", - "codepoint": "F015D", - "aliases": [ - "remove-octagon-outline", - "multiply-octagon-outline", - "clear-octagon-outline", - "cancel-octagon-outline", - "stop-remove-outline" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "2FEE0020-4271-487C-897D-75529B20C4C6", - "baseIconId": "FEA26660-7D6A-4C2A-9F13-7AE125FBA543", - "name": "close-outline", - "codepoint": "F06C9", - "aliases": [ - "remove-outline", - "cancel-outline", - "multiply-outline", - "clear-outline" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "C6B8442F-446D-4690-866F-AF0F27C1EAB2", - "baseIconId": "FEA26660-7D6A-4C2A-9F13-7AE125FBA543", - "name": "close-thick", - "codepoint": "F1398", - "aliases": [ - "close-bold", - "remove-thick", - "remove-bold", - "multiply-thick", - "multiply-bold", - "clear-thick", - "clear-bold", - "cancel-thick", - "cancel-bold" - ], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "5367B460-F7E5-46C5-A4F5-40B339BF9DAD", - "baseIconId": "5367B460-F7E5-46C5-A4F5-40B339BF9DAD", - "name": "closed-caption", - "codepoint": "F015E", - "aliases": [ - "cc" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "08F32D33-77C4-4FEB-AAF6-04468AF0875F", - "baseIconId": "5367B460-F7E5-46C5-A4F5-40B339BF9DAD", - "name": "closed-caption-outline", - "codepoint": "F0DBD", - "aliases": [ - "cc-outline" - ], - "styles": [ - "outline" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud", - "codepoint": "F015F", - "aliases": [ - "wb-cloudy" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Google" - }, - { - "id": "4ACCBA06-78DB-492F-98F6-08AEE743744A", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-alert", - "codepoint": "F09E0", - "aliases": [ - "cloud-warning" - ], - "styles": [ - "alert" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Alert \/ Error", - "Cloud", - "Weather" - ], - "author": "TheChilliPL" - }, - { - "id": "3FC7BE84-D3FE-4DF8-88D2-19E85A7BF661", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-alert-outline", - "codepoint": "F1BE0", - "aliases": [], - "styles": [ - "alert", - "outline" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Alert \/ Error", - "Weather", - "Cloud" - ], - "author": "Colton Wiscombe" - }, - { - "id": "19C8B174-393F-4E5B-ADC4-C5598DE914F8", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-arrow-down", - "codepoint": "F1BE1", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Colton Wiscombe" - }, - { - "id": "5F0D6116-B303-4C57-82F0-224ADA97EBD5", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-arrow-down-outline", - "codepoint": "F1BE2", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Colton Wiscombe" - }, - { - "id": "6FD0F6B8-7E48-4EAB-99C4-AFD58D95E942", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-arrow-left", - "codepoint": "F1BE3", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Weather", - "Cloud" - ], - "author": "Colton Wiscombe" - }, - { - "id": "DD5C0F60-69F6-469D-A285-3527C9CBCEC9", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-arrow-left-outline", - "codepoint": "F1BE4", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Weather", - "Cloud" - ], - "author": "Colton Wiscombe" - }, - { - "id": "3B3EF4D2-339A-43D7-AAEE-394D74AA7C85", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-arrow-right", - "codepoint": "F1BE5", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Weather", - "Cloud" - ], - "author": "Colton Wiscombe" - }, - { - "id": "043852F0-723D-45FF-8C83-D7C87009089F", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-arrow-right-outline", - "codepoint": "F1BE6", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Weather", - "Cloud" - ], - "author": "Colton Wiscombe" - }, - { - "id": "043AFCE7-AA8A-4E51-AD77-96957407218E", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-arrow-up", - "codepoint": "F1BE7", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Colton Wiscombe" - }, - { - "id": "B1E36C6D-4638-4FE5-854E-B6E3DCB6D6D1", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-arrow-up-outline", - "codepoint": "F1BE8", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Weather", - "Cloud" - ], - "author": "Colton Wiscombe" - }, - { - "id": "6ED02FDD-323E-4004-9D7B-336F2402DF8E", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-braces", - "codepoint": "F07B5", - "aliases": [ - "cloud-json" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Cloud", - "Developer \/ Languages" - ], - "author": "Andy Martinez" - }, - { - "id": "8F5247BF-407F-4460-9C6E-3C7A467DF01A", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-cancel", - "codepoint": "F1BE9", - "aliases": [], - "styles": [ - "cancel" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Colton Wiscombe" - }, - { - "id": "52D9AC34-84C1-4DF6-A173-3F7726954A71", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-cancel-outline", - "codepoint": "F1BEA", - "aliases": [], - "styles": [ - "cancel", - "outline" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Colton Wiscombe" - }, - { - "id": "29F10EFC-FC56-4D02-88E6-FC856F54390D", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-check", - "codepoint": "F1BEB", - "aliases": [], - "styles": [ - "check" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Colton Wiscombe" - }, - { - "id": "B99F649D-4AB4-4A56-97EA-A52B6CE26B16", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-check-outline", - "codepoint": "F1BEC", - "aliases": [], - "styles": [ - "check", - "outline" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Colton Wiscombe" - }, - { - "id": "5B607B90-B492-43AD-A5B0-4AC800A9F7DA", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-check-variant", - "codepoint": "F0160", - "aliases": [ - "cloud-done", - "cloud-tick" - ], - "styles": [ - "check", - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Google" - }, - { - "id": "A56D0A20-FC19-455F-B1E8-3CA24270957A", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-check-variant-outline", - "codepoint": "F12CC", - "aliases": [], - "styles": [ - "check", - "outline", - "variant" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "06BCD41B-8BFF-43C0-88A1-69F262C51C5F", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-circle", - "codepoint": "F0161", - "aliases": [], - "styles": [ - "circle" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Google" - }, - { - "id": "451E7715-6D54-47B1-9228-DBD53D8CBF07", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-circle-outline", - "codepoint": "F1BED", - "aliases": [], - "styles": [ - "circle", - "outline" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Google" - }, - { - "id": "F718D38F-3628-42E3-864B-787F62811754", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-clock", - "codepoint": "F1BEE", - "aliases": [], - "styles": [ - "clock" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Weather", - "Cloud" - ], - "author": "Colton Wiscombe" - }, - { - "id": "0BE13210-76BC-47EA-8506-E42859826A01", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-clock-outline", - "codepoint": "F1BEF", - "aliases": [], - "styles": [ - "clock", - "outline" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Colton Wiscombe" - }, - { - "id": "DFCB974D-269A-4ADE-BFDF-58C4D12E947C", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-cog", - "codepoint": "F1BF0", - "aliases": [], - "styles": [ - "cog" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Colton Wiscombe" - }, - { - "id": "D03FD5FA-4F08-491D-8459-1EDFE1CED4C6", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-cog-outline", - "codepoint": "F1BF1", - "aliases": [], - "styles": [ - "cog", - "outline" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Colton Wiscombe" - }, - { - "id": "D8C49CD8-61B2-4F34-A4B8-543396B4A610", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-download", - "codepoint": "F0162", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Google" - }, - { - "id": "41CC8340-22F2-4C91-BA1E-97E3A0EA461F", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-download-outline", - "codepoint": "F0B7D", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Google" - }, - { - "id": "3694A84E-0A8D-420F-98C3-C892312B29D4", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-key", - "codepoint": "F1CA1", - "aliases": [ - "cloud-security", - "cloud-access" - ], - "styles": [ - "key" - ], - "version": "7.3.96", - "deprecated": false, - "tags": [ - "Cloud" - ], - "author": "frankgrinaert" - }, - { - "id": "CB6C6880-11B8-4BE6-9EA5-6F4D53EF98EC", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-key-outline", - "codepoint": "F1CA2", - "aliases": [ - "cloud-security-outline", - "cloud-access-outline" - ], - "styles": [ - "key" - ], - "version": "7.3.96", - "deprecated": false, - "tags": [ - "Cloud" - ], - "author": "frankgrinaert" - }, - { - "id": "8F0ED421-A552-4920-A46D-13F246A25689", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-lock", - "codepoint": "F11F1", - "aliases": [], - "styles": [ - "lock" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Cloud", - "Lock" - ], - "author": "Michael Richins" - }, - { - "id": "5985650B-077C-4473-8749-A98E0F731EB9", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-lock-open", - "codepoint": "F1BF2", - "aliases": [], - "styles": [ - "lock" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Cloud" - ], - "author": "Colton Wiscombe" - }, - { - "id": "54073599-B365-465E-89D6-2081A5D0EB1F", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-lock-open-outline", - "codepoint": "F1BF3", - "aliases": [], - "styles": [ - "lock", - "outline" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Cloud" - ], - "author": "Colton Wiscombe" - }, - { - "id": "9ADC05C4-6BC2-4D66-80B0-CB6677A08271", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-lock-outline", - "codepoint": "F11F2", - "aliases": [], - "styles": [ - "lock", - "outline" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Cloud", - "Lock" - ], - "author": "Michael Richins" - }, - { - "id": "EC87820F-EE63-45B9-9F7C-6AC83EECCDA8", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-minus", - "codepoint": "F1BF4", - "aliases": [], - "styles": [ - "minus" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Cloud" - ], - "author": "Colton Wiscombe" - }, - { - "id": "B6D110F4-1A69-4C3E-9045-E14E28AB1EF6", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-minus-outline", - "codepoint": "F1BF5", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Cloud" - ], - "author": "Colton Wiscombe" - }, - { - "id": "EFE048B4-42B0-40BD-A7BB-E0E20FB0D80F", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-off", - "codepoint": "F1BF6", - "aliases": [], - "styles": [], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Google" - }, - { - "id": "E19C3062-FFE5-441C-91C8-B1792E3AA3CA", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-off-outline", - "codepoint": "F0164", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Google" - }, - { - "id": "6EBE020D-405B-4E36-8B47-CAC6FAF1166C", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-outline", - "codepoint": "F0163", - "aliases": [ - "cloud-queue" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Google" - }, - { - "id": "63C6361B-587A-4EF6-9308-8E54DD1BB68E", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-percent", - "codepoint": "F1A35", - "aliases": [ - "humidity", - "rain-chance", - "cloud-discount" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Weather", - "Cloud", - "Nature" - ], - "author": "Simran" - }, - { - "id": "CB1A76AC-F998-48D8-A4DC-C29CD02CDFF7", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-percent-outline", - "codepoint": "F1A36", - "aliases": [ - "cloud-discount-outline", - "humidity-outline", - "rain-chance-outline" - ], - "styles": [ - "outline" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Weather", - "Cloud", - "Nature" - ], - "author": "Simran" - }, - { - "id": "392BB6A6-E468-4F36-8F7B-8259754E80C4", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-plus", - "codepoint": "F1BF7", - "aliases": [], - "styles": [ - "plus" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Cloud" - ], - "author": "Colton Wiscombe" - }, - { - "id": "278039EE-3E18-4BBC-924E-F8785DA32520", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-plus-outline", - "codepoint": "F1BF8", - "aliases": [], - "styles": [ - "outline", - "plus" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Cloud" - ], - "author": "Colton Wiscombe" - }, - { - "id": "DB32F759-BA18-488B-9260-9A38529BE7A8", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-print", - "codepoint": "F0165", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cloud", - "Printer", - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "7B3F8F72-1F4B-429A-B969-8E42ADBBD3E1", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-print-outline", - "codepoint": "F0166", - "aliases": [], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cloud", - "Printer", - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "C36FF6E2-EF4E-4FD1-9620-9580BC48B325", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-question", - "codepoint": "F0A39", - "aliases": [], - "styles": [ - "question" - ], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9114B506-531D-4840-9803-E541F716995C", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-question-outline", - "codepoint": "F1BF9", - "aliases": [], - "styles": [ - "outline", - "question" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Colton Wiscombe" - }, - { - "id": "546F9706-77E9-4C0A-9B7F-A035A0F1DB8C", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-refresh", - "codepoint": "F1BFA", - "aliases": [], - "styles": [ - "refresh" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Colton Wiscombe" - }, - { - "id": "59C1725E-CC9E-4AF1-B215-8FECD1E93A39", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-refresh-outline", - "codepoint": "F1BFB", - "aliases": [], - "styles": [ - "outline", - "refresh" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Colton Wiscombe" - }, - { - "id": "1771EA83-96FC-4A06-8A03-E4048C9F9C27", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-refresh-variant", - "codepoint": "F052A", - "aliases": [], - "styles": [ - "refresh", - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Austin Andrews" - }, - { - "id": "79C50275-0698-42E7-998B-3B0F8E093362", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-refresh-variant-outline", - "codepoint": "F1BFC", - "aliases": [], - "styles": [ - "outline", - "refresh", - "variant" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Colton Wiscombe" - }, - { - "id": "31A2A45B-65A1-46F4-BE9A-573F7469E390", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-remove", - "codepoint": "F1BFD", - "aliases": [], - "styles": [ - "remove" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Cloud" - ], - "author": "Colton Wiscombe" - }, - { - "id": "DFA9EF34-6410-46FB-8126-F10449D71D31", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-remove-outline", - "codepoint": "F1BFE", - "aliases": [], - "styles": [ - "outline", - "remove" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Colton Wiscombe" - }, - { - "id": "BF384FFB-7E5D-4C2E-ADC5-4BEEAF61A81C", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-search", - "codepoint": "F0956", - "aliases": [], - "styles": [ - "search" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Michael Richins" - }, - { - "id": "5C72BE2A-A04D-4B36-9390-024C5A1214D9", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-search-outline", - "codepoint": "F0957", - "aliases": [], - "styles": [ - "outline", - "search" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Michael Richins" - }, - { - "id": "BEA2DB85-AD43-4208-8F5E-5029997B23B7", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-sync", - "codepoint": "F063F", - "aliases": [], - "styles": [ - "sync" - ], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "FA6B7B54-7817-40EE-9A64-3D30EAC0F4CF", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-sync-outline", - "codepoint": "F12D6", - "aliases": [], - "styles": [ - "outline", - "sync" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "AE3A5033-BA77-4E82-BFD0-4C23275B602F", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-tags", - "codepoint": "F07B6", - "aliases": [ - "cloud-xml" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Cloud" - ], - "author": "Andy Martinez" - }, - { - "id": "BB4F16F6-B596-4725-8831-A794321542EB", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-upload", - "codepoint": "F0167", - "aliases": [ - "backup" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Google" - }, - { - "id": "88ACA1F5-0FDE-4E89-8144-28BA5E5F1B51", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "cloud-upload-outline", - "codepoint": "F0B7E", - "aliases": [ - "backup-outline" - ], - "styles": [ - "outline" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Cloud", - "Weather" - ], - "author": "Google" - }, - { - "id": "43494F1E-8C56-4AEE-BB9F-AAE4BD44A6AE", - "baseIconId": "CF07C502-388E-4A65-BD89-FACCFD00C245", - "name": "clouds", - "codepoint": "F1B95", - "aliases": [], - "styles": [ - "multiple" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Weather", - "Cloud" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0B70716D-3C56-43F1-85D4-B264C05DCC32", - "baseIconId": "0B70716D-3C56-43F1-85D4-B264C05DCC32", - "name": "clover", - "codepoint": "F0816", - "aliases": [ - "luck" - ], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Nature" - ], - "author": "Michael Richins" - }, - { - "id": "6518E183-1362-4363-ACAF-21FECEA87732", - "baseIconId": "0B70716D-3C56-43F1-85D4-B264C05DCC32", - "name": "clover-outline", - "codepoint": "F1C62", - "aliases": [ - "luck-outline" - ], - "styles": [ - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Nature" - ], - "author": "Jeff Anders" - }, - { - "id": "113768A1-5B09-41DD-9570-31434A34823D", - "baseIconId": "113768A1-5B09-41DD-9570-31434A34823D", - "name": "coach-lamp", - "codepoint": "F1020", - "aliases": [ - "coach-light", - "carriage-lamp", - "carriage-light" - ], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Borre Haugen" - }, - { - "id": "D4A857FB-53DF-4726-9B49-986C83844E40", - "baseIconId": "113768A1-5B09-41DD-9570-31434A34823D", - "name": "coach-lamp-variant", - "codepoint": "F1A37", - "aliases": [ - "coach-light", - "carriage-light", - "carriage-lamp" - ], - "styles": [ - "variant" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Borre Haugen" - }, - { - "id": "21D89E60-3522-4F1F-A1D2-60E67B2C9552", - "baseIconId": "21D89E60-3522-4F1F-A1D2-60E67B2C9552", - "name": "coat-rack", - "codepoint": "F109E", - "aliases": [ - "foyer", - "hallway", - "entry-room" - ], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Clothing" - ], - "author": "Michael Richins" - }, - { - "id": "04020C45-A5ED-4D33-A7BD-AE986516C0DE", - "baseIconId": "04020C45-A5ED-4D33-A7BD-AE986516C0DE", - "name": "code-array", - "codepoint": "F0168", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Austin Andrews" - }, - { - "id": "C74E1367-3799-4422-8065-A200D4CAB498", - "baseIconId": "1F6661BC-6538-4EF0-92B5-46EFAE5E0C77", - "name": "code-block-braces", - "codepoint": "F1C83", - "aliases": [ - "code-block-tag", - "code-block-json" - ], - "styles": [], - "version": "7.3.96", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "frankgrinaert" - }, - { - "id": "5138F119-7F73-4A34-ACB8-CDB00042AAB6", - "baseIconId": "C08498C1-E43B-4E79-817C-121AD2827689", - "name": "code-block-brackets", - "codepoint": "F1C84", - "aliases": [ - "code-block-square" - ], - "styles": [], - "version": "7.3.96", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "frankgrinaert" - }, - { - "id": "8E35BF13-D1D3-4F97-ACBE-87E07DCE9FC3", - "baseIconId": "A4E1DE1B-754D-4884-9902-8D5DDE2182B0", - "name": "code-block-parentheses", - "codepoint": "F1C85", - "aliases": [], - "styles": [], - "version": "7.3.96", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "frankgrinaert" - }, - { - "id": "E13525B2-A482-46B5-B01E-5CE520FC2C1D", - "baseIconId": "609A0AB0-05EE-4824-BD40-A4E78F4A74D3", - "name": "code-block-tags", - "codepoint": "F1C86", - "aliases": [ - "code-block-html", - "code-block-xml" - ], - "styles": [], - "version": "7.3.96", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "frankgrinaert" - }, - { - "id": "1F6661BC-6538-4EF0-92B5-46EFAE5E0C77", - "baseIconId": "1F6661BC-6538-4EF0-92B5-46EFAE5E0C77", - "name": "code-braces", - "codepoint": "F0169", - "aliases": [ - "set" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Developer \/ Languages", - "Math" - ], - "author": "Simran" - }, - { - "id": "A65C5C08-F94C-4A68-BA7B-5557C94C5C37", - "baseIconId": "1F6661BC-6538-4EF0-92B5-46EFAE5E0C77", - "name": "code-braces-box", - "codepoint": "F10D6", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C08498C1-E43B-4E79-817C-121AD2827689", - "baseIconId": "C08498C1-E43B-4E79-817C-121AD2827689", - "name": "code-brackets", - "codepoint": "F016A", - "aliases": [ - "square-brackets" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Developer \/ Languages", - "Math" - ], - "author": "Simran" - }, - { - "id": "16C07036-EE56-4447-8495-EB2FAD143072", - "baseIconId": "16C07036-EE56-4447-8495-EB2FAD143072", - "name": "code-equal", - "codepoint": "F016B", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Simran" - }, - { - "id": "2C70B20E-4B20-4CF6-8775-339C1184E032", - "baseIconId": "2C70B20E-4B20-4CF6-8775-339C1184E032", - "name": "code-greater-than", - "codepoint": "F016C", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Developer \/ Languages", - "Math" - ], - "author": "Simran" - }, - { - "id": "3C9D2060-53C2-4D66-BE38-C46EE87D8D46", - "baseIconId": "3C9D2060-53C2-4D66-BE38-C46EE87D8D46", - "name": "code-greater-than-or-equal", - "codepoint": "F016D", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Developer \/ Languages", - "Math" - ], - "author": "Simran" - }, - { - "id": "24C1AA84-85C2-41F4-A5E3-8FE7421CD359", - "baseIconId": "24C1AA84-85C2-41F4-A5E3-8FE7421CD359", - "name": "code-json", - "codepoint": "F0626", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Austin Andrews" - }, - { - "id": "92266B3A-6EC4-4CE7-9904-2A793B2A4084", - "baseIconId": "92266B3A-6EC4-4CE7-9904-2A793B2A4084", - "name": "code-less-than", - "codepoint": "F016E", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Developer \/ Languages", - "Math" - ], - "author": "Simran" - }, - { - "id": "3D003F4A-7BCB-4946-AE70-CCAA2B7D5B10", - "baseIconId": "3D003F4A-7BCB-4946-AE70-CCAA2B7D5B10", - "name": "code-less-than-or-equal", - "codepoint": "F016F", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Developer \/ Languages", - "Math" - ], - "author": "Simran" - }, - { - "id": "1A01458F-59E8-4AF9-B398-8058900EE85F", - "baseIconId": "1A01458F-59E8-4AF9-B398-8058900EE85F", - "name": "code-not-equal", - "codepoint": "F0170", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Simran" - }, - { - "id": "05E12366-E7AA-46B9-8D6E-3664EBD34BB3", - "baseIconId": "05E12366-E7AA-46B9-8D6E-3664EBD34BB3", - "name": "code-not-equal-variant", - "codepoint": "F0171", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Simran" - }, - { - "id": "A4E1DE1B-754D-4884-9902-8D5DDE2182B0", - "baseIconId": "A4E1DE1B-754D-4884-9902-8D5DDE2182B0", - "name": "code-parentheses", - "codepoint": "F0172", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Simran" - }, - { - "id": "2609C9BB-3F62-432A-9D27-0D30845F8086", - "baseIconId": "A4E1DE1B-754D-4884-9902-8D5DDE2182B0", - "name": "code-parentheses-box", - "codepoint": "F10D7", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Michael Irigoyen" - }, - { - "id": "76686B91-00D8-4ADD-A502-8D1788C9C17B", - "baseIconId": "76686B91-00D8-4ADD-A502-8D1788C9C17B", - "name": "code-string", - "codepoint": "F0173", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Austin Andrews" - }, - { - "id": "609A0AB0-05EE-4824-BD40-A4E78F4A74D3", - "baseIconId": "609A0AB0-05EE-4824-BD40-A4E78F4A74D3", - "name": "code-tags", - "codepoint": "F0174", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Google" - }, - { - "id": "7F098441-8B1D-4FB1-88EC-95726397BA7C", - "baseIconId": "609A0AB0-05EE-4824-BD40-A4E78F4A74D3", - "name": "code-tags-check", - "codepoint": "F0694", - "aliases": [ - "code-tags-tick" - ], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Simran" - }, - { - "id": "FB9F6D89-8A07-407E-AD97-AAEF0E022585", - "baseIconId": "FB9F6D89-8A07-407E-AD97-AAEF0E022585", - "name": "codepen", - "codepoint": "F0175", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Developer \/ Languages" - ], - "author": "Contributors" - }, - { - "id": "C95D04C5-F5EE-411A-88F7-A9872B2B4021", - "baseIconId": "C95D04C5-F5EE-411A-88F7-A9872B2B4021", - "name": "coffee", - "codepoint": "F0176", - "aliases": [ - "tea", - "cup", - "free-breakfast", - "local-cafe", - "drink" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Google" - }, - { - "id": "62F4C783-4BE1-4EB6-B454-E41A50B91857", - "baseIconId": "62F4C783-4BE1-4EB6-B454-E41A50B91857", - "name": "coffee-maker", - "codepoint": "F109F", - "aliases": [ - "espresso-maker", - "coffee-machine", - "espresso-machine" - ], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Food \/ Drink" - ], - "author": "Google" - }, - { - "id": "A82510E6-E7E7-4E2C-96A6-E041EFC72897", - "baseIconId": "62F4C783-4BE1-4EB6-B454-E41A50B91857", - "name": "coffee-maker-check", - "codepoint": "F1931", - "aliases": [ - "coffee-maker-done", - "coffee-maker-complete" - ], - "styles": [ - "check" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DDF7AAA6-C0A9-428C-9A2A-1B491714AF82", - "baseIconId": "62F4C783-4BE1-4EB6-B454-E41A50B91857", - "name": "coffee-maker-check-outline", - "codepoint": "F1932", - "aliases": [ - "coffee-maker-complete-outline", - "coffee-maker-done-outline" - ], - "styles": [ - "check", - "outline" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0E490D96-1352-4592-A544-F80D43681A9E", - "baseIconId": "62F4C783-4BE1-4EB6-B454-E41A50B91857", - "name": "coffee-maker-outline", - "codepoint": "F181B", - "aliases": [], - "styles": [ - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "E3C8FAA1-E273-44BC-8C43-1CB0E5E5C2AB", - "baseIconId": "C95D04C5-F5EE-411A-88F7-A9872B2B4021", - "name": "coffee-off", - "codepoint": "F0FAA", - "aliases": [ - "drink-off", - "tea-off", - "cup-off", - "free-breakfast-off", - "local-cafe-off" - ], - "styles": [ - "off" - ], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B8D17AA8-7B65-4CA7-B9A9-6960C2A64164", - "baseIconId": "C95D04C5-F5EE-411A-88F7-A9872B2B4021", - "name": "coffee-off-outline", - "codepoint": "F0FAB", - "aliases": [ - "drink-off-outline", - "cup-off-outline", - "tea-off-outline", - "free-breakfast-off-outline", - "local-cafe-off-outline" - ], - "styles": [ - "off", - "outline" - ], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "8994C73B-937C-4541-AAFF-6FA2CE0573DF", - "baseIconId": "C95D04C5-F5EE-411A-88F7-A9872B2B4021", - "name": "coffee-outline", - "codepoint": "F06CA", - "aliases": [ - "tea-outline", - "cup-outline", - "drink-outline", - "free-breakfast-outline", - "local-cafe-outline" - ], - "styles": [ - "outline" - ], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Google" - }, - { - "id": "8093CDE7-C795-4415-94C6-2EF40ED6D057", - "baseIconId": "C95D04C5-F5EE-411A-88F7-A9872B2B4021", - "name": "coffee-to-go", - "codepoint": "F0177", - "aliases": [ - "tea-to-go", - "drink-to-go", - "cup-to-go", - "free-breakfast-to-go", - "local-cafe-to-go" - ], - "styles": [ - "arrow" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Austin Andrews" - }, - { - "id": "DC66752A-65C6-461D-AAA6-65E8389E7D3B", - "baseIconId": "8093CDE7-C795-4415-94C6-2EF40ED6D057", - "name": "coffee-to-go-outline", - "codepoint": "F130E", - "aliases": [ - "tea-to-go-outline", - "cup-to-go-outline", - "drink-to-go-outline", - "free-breakfast-to-go-outline", - "local-cafe-to-go-outline" - ], - "styles": [ - "outline" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Simran" - }, - { - "id": "AC6E8289-8D3C-4CE0-ADA6-D17DC639B7FB", - "baseIconId": "AC6E8289-8D3C-4CE0-ADA6-D17DC639B7FB", - "name": "coffin", - "codepoint": "F0B7F", - "aliases": [ - "death", - "dead" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Holiday" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E4A14909-3821-4DB1-A739-4DA464ABEEB7", - "baseIconId": "E4A14909-3821-4DB1-A739-4DA464ABEEB7", - "name": "cog", - "codepoint": "F0493", - "aliases": [ - "settings", - "gear" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Google" - }, - { - "id": "6F15658D-723C-4BE9-85D1-F170E4B90281", - "baseIconId": "E4A14909-3821-4DB1-A739-4DA464ABEEB7", - "name": "cog-box", - "codepoint": "F0494", - "aliases": [ - "gear-box", - "settings-applications", - "settings-box" - ], - "styles": [ - "box" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Google" - }, - { - "id": "3E835EBE-D768-428D-8440-E162EC9F90E4", - "baseIconId": "E4A14909-3821-4DB1-A739-4DA464ABEEB7", - "name": "cog-clockwise", - "codepoint": "F11DD", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "C9468BA3-4E63-41DB-BACE-4AED3A543147", - "baseIconId": "E4A14909-3821-4DB1-A739-4DA464ABEEB7", - "name": "cog-counterclockwise", - "codepoint": "F11DE", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "7251B1CF-41C8-46F7-991D-83F5996CF0C1", - "baseIconId": "E4A14909-3821-4DB1-A739-4DA464ABEEB7", - "name": "cog-off", - "codepoint": "F13CE", - "aliases": [ - "settings-off" - ], - "styles": [], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Simran" - }, - { - "id": "83E26995-9267-4A7B-8271-885FEF6303D8", - "baseIconId": "E4A14909-3821-4DB1-A739-4DA464ABEEB7", - "name": "cog-off-outline", - "codepoint": "F13CF", - "aliases": [ - "settings-off-outline" - ], - "styles": [], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D29B92ED-BC81-44F0-8031-2E48A90ABAD8", - "baseIconId": "E4A14909-3821-4DB1-A739-4DA464ABEEB7", - "name": "cog-outline", - "codepoint": "F08BB", - "aliases": [ - "gear-outline", - "settings-outline" - ], - "styles": [ - "outline" - ], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Google" - }, - { - "id": "FE314FE9-CDD6-42DF-9F62-F470E3F0E2BF", - "baseIconId": "E4A14909-3821-4DB1-A739-4DA464ABEEB7", - "name": "cog-pause", - "codepoint": "F1933", - "aliases": [ - "settings-pause", - "gear-pause" - ], - "styles": [ - "variant" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7BC10816-C8A9-4B8D-B11B-B51E0CCB9F72", - "baseIconId": "E4A14909-3821-4DB1-A739-4DA464ABEEB7", - "name": "cog-pause-outline", - "codepoint": "F1934", - "aliases": [ - "settings-pause-outline", - "gear-pause-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "FF5D0943-FA1E-423E-B6A7-0210449D2C29", - "baseIconId": "E4A14909-3821-4DB1-A739-4DA464ABEEB7", - "name": "cog-play", - "codepoint": "F1935", - "aliases": [ - "settings-play", - "gear-play" - ], - "styles": [ - "variant" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0238FC32-F3C6-46F5-8223-8B63D96B9749", - "baseIconId": "E4A14909-3821-4DB1-A739-4DA464ABEEB7", - "name": "cog-play-outline", - "codepoint": "F1936", - "aliases": [ - "settings-play-outline", - "gear-play-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5F716B9D-4A30-4D1A-B452-B6B0D8B27EDE", - "baseIconId": "E4A14909-3821-4DB1-A739-4DA464ABEEB7", - "name": "cog-refresh", - "codepoint": "F145E", - "aliases": [ - "settings-refresh" - ], - "styles": [ - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C9E15196-FEB0-4F26-96C2-0E050F959806", - "baseIconId": "E4A14909-3821-4DB1-A739-4DA464ABEEB7", - "name": "cog-refresh-outline", - "codepoint": "F145F", - "aliases": [ - "settings-refresh-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "FC49E1B1-ED0E-46CB-B29F-ED444E9B85F0", - "baseIconId": "E4A14909-3821-4DB1-A739-4DA464ABEEB7", - "name": "cog-stop", - "codepoint": "F1937", - "aliases": [ - "settings-stop", - "gear-stop" - ], - "styles": [ - "variant" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F937057A-B769-4F5E-A079-7D9BF4679807", - "baseIconId": "E4A14909-3821-4DB1-A739-4DA464ABEEB7", - "name": "cog-stop-outline", - "codepoint": "F1938", - "aliases": [ - "settings-stop-outline", - "gear-stop-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "BEC36759-CFB0-4475-A65B-B10F860E850A", - "baseIconId": "E4A14909-3821-4DB1-A739-4DA464ABEEB7", - "name": "cog-sync", - "codepoint": "F1460", - "aliases": [ - "settings-sync" - ], - "styles": [ - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "204F6FF9-EFD1-4B79-9DDF-2642984189F0", - "baseIconId": "E4A14909-3821-4DB1-A739-4DA464ABEEB7", - "name": "cog-sync-outline", - "codepoint": "F1461", - "aliases": [ - "settings-sync-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "17CD5A77-2809-4DDC-B876-877D8B913217", - "baseIconId": "E4A14909-3821-4DB1-A739-4DA464ABEEB7", - "name": "cog-transfer", - "codepoint": "F105B", - "aliases": [ - "settings-transfer" - ], - "styles": [ - "arrow" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Richins" - }, - { - "id": "AD008794-9094-40B5-91E8-6648E1CBADAD", - "baseIconId": "E4A14909-3821-4DB1-A739-4DA464ABEEB7", - "name": "cog-transfer-outline", - "codepoint": "F105C", - "aliases": [ - "settings-transfer-outline" - ], - "styles": [ - "arrow", - "outline" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Richins" - }, - { - "id": "2EF56130-ECE9-4432-B59E-36F646DE1C86", - "baseIconId": "E4A14909-3821-4DB1-A739-4DA464ABEEB7", - "name": "cogs", - "codepoint": "F08D6", - "aliases": [ - "settings", - "manufacturing" - ], - "styles": [ - "multiple" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Google" - }, - { - "id": "8FD44CCD-5073-4C73-98BE-139F777F6E94", - "baseIconId": "8FD44CCD-5073-4C73-98BE-139F777F6E94", - "name": "collage", - "codepoint": "F0640", - "aliases": [ - "auto-awesome-mosaic" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "C66052C9-BB2A-4E5F-A890-C6D8156E5621", - "baseIconId": "4FE8F135-8FF9-427B-8857-122FBB0A300A", - "name": "collapse-all", - "codepoint": "F0AA6", - "aliases": [ - "animation-minus" - ], - "styles": [ - "minus" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "8672E491-9415-4259-A9E5-E0E3552187CB", - "baseIconId": "4FE8F135-8FF9-427B-8857-122FBB0A300A", - "name": "collapse-all-outline", - "codepoint": "F0AA7", - "aliases": [ - "animation-minus-outline" - ], - "styles": [ - "minus", - "outline" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "F27490D2-F7BE-4B35-83E6-40D1F7247755", - "baseIconId": "F27490D2-F7BE-4B35-83E6-40D1F7247755", - "name": "color-helper", - "codepoint": "F0179", - "aliases": [ - "colour-helper" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format", - "Color" - ], - "author": "Google" - }, - { - "id": "55F32835-0982-43F9-9F2D-42585183016A", - "baseIconId": "55F32835-0982-43F9-9F2D-42585183016A", - "name": "comma", - "codepoint": "F0E23", - "aliases": [], - "styles": [], - "version": "3.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "CEC57068-18E1-42DA-8788-EDCC009DFB7D", - "baseIconId": "55F32835-0982-43F9-9F2D-42585183016A", - "name": "comma-box", - "codepoint": "F0E2B", - "aliases": [], - "styles": [ - "box" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "19DFF0F1-FA41-4345-8494-32F42055155B", - "baseIconId": "55F32835-0982-43F9-9F2D-42585183016A", - "name": "comma-box-outline", - "codepoint": "F0E24", - "aliases": [], - "styles": [ - "box", - "outline" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "71A7159C-EFDE-4B44-B956-47D588CF74D3", - "baseIconId": "55F32835-0982-43F9-9F2D-42585183016A", - "name": "comma-circle", - "codepoint": "F0E25", - "aliases": [], - "styles": [ - "circle" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "0958EE2B-BD3A-4548-A641-759FC170847A", - "baseIconId": "55F32835-0982-43F9-9F2D-42585183016A", - "name": "comma-circle-outline", - "codepoint": "F0E26", - "aliases": [], - "styles": [ - "circle", - "outline" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment", - "codepoint": "F017A", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "E0D4328B-7A71-46E7-804B-DFC3753BEDF6", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-account", - "codepoint": "F017B", - "aliases": [ - "comment-user", - "comment-person" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Austin Andrews" - }, - { - "id": "18A9FFE4-B768-4A8F-BD55-778C8E8C41FC", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-account-outline", - "codepoint": "F017C", - "aliases": [ - "comment-user-outline", - "comment-person-outline" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Austin Andrews" - }, - { - "id": "04CF8C3D-0D65-41CA-8D0D-53DD7EAB25B8", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-alert", - "codepoint": "F017D", - "aliases": [ - "comment-warning" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Austin Andrews" - }, - { - "id": "CBAD69A4-A6FF-4A8A-AA85-B5962910106E", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-alert-outline", - "codepoint": "F017E", - "aliases": [ - "comment-warning-outline" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Austin Andrews" - }, - { - "id": "AECA1A18-D8EA-4130-B33C-86D608E030BB", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-arrow-left", - "codepoint": "F09E1", - "aliases": [ - "comment-previous" - ], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "192F008B-D02E-4C2A-A43F-058A19E41D30", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-arrow-left-outline", - "codepoint": "F09E2", - "aliases": [ - "comment-previous-outline" - ], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "256DE915-25D5-4777-AA1A-A432ABB6E039", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-arrow-right", - "codepoint": "F09E3", - "aliases": [ - "comment-next" - ], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "E34BA65C-995B-4E2F-A40E-8833E55187FC", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-arrow-right-outline", - "codepoint": "F09E4", - "aliases": [ - "comment-next-outline" - ], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "AEB3B1E9-D2B4-497C-9939-BFB549F57019", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-bookmark", - "codepoint": "F15AE", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "342B6E5C-FE9B-4A5A-940C-3918AB609441", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-bookmark-outline", - "codepoint": "F15AF", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "5D2CEEF1-3F19-4AD2-8965-13DB365B0013", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-check", - "codepoint": "F017F", - "aliases": [ - "comment-tick" - ], - "styles": [ - "check" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "D9BBEE92-5775-4364-8ECD-89C0872BE79F", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-check-outline", - "codepoint": "F0180", - "aliases": [ - "comment-tick-outline" - ], - "styles": [ - "check", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "8729ADA4-D1A0-477A-B670-EC5CFF2A3A7E", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-edit", - "codepoint": "F11BF", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Michael Irigoyen" - }, - { - "id": "3A7903C6-EA94-4FF6-8B95-FECC91058756", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-edit-outline", - "codepoint": "F12C4", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7CDBE4A1-9E98-419D-A309-4ECB9476DA12", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-eye", - "codepoint": "F0A3A", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "470DE0A7-8431-42B7-BC50-E46D0DEBE759", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-eye-outline", - "codepoint": "F0A3B", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "27CE0231-2BF3-43E1-9852-3044D59DA0F2", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-flash", - "codepoint": "F15B0", - "aliases": [ - "comment-quick" - ], - "styles": [ - "variant" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "68AA7A36-BF66-4F18-8BEE-78448FDBF5B9", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-flash-outline", - "codepoint": "F15B1", - "aliases": [ - "comment-quick-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "B3DD4217-5AB7-4E9F-979E-7E16A2DA8E76", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-minus", - "codepoint": "F15DF", - "aliases": [], - "styles": [ - "minus" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "C63B509C-5F87-42E1-A53B-0623A2EA4461", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-minus-outline", - "codepoint": "F15E0", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "63AC824E-16A4-4FBE-A6DF-588DEBCA47C1", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-multiple", - "codepoint": "F085F", - "aliases": [ - "comments" - ], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "A5FAC5DC-088F-485C-A885-FBBEEC70B352", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-multiple-outline", - "codepoint": "F0181", - "aliases": [ - "comments-outline" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "9BBD8848-EA4F-4052-9361-B5D7AFCEBFF6", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-off", - "codepoint": "F15E1", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "14104E5E-1FA3-441C-9705-66D86F8E28DB", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-off-outline", - "codepoint": "F15E2", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "B1A0A26E-3E9C-4718-8A26-2837A981D9B5", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-outline", - "codepoint": "F0182", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "6C595408-3938-4111-9566-7149810D4A73", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-plus", - "codepoint": "F09E5", - "aliases": [ - "comment-add" - ], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Peter Noble" - }, - { - "id": "813C3AFA-56D8-472B-8C1C-C365AC752663", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-plus-outline", - "codepoint": "F0183", - "aliases": [ - "comment-add-outline" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "D07698E0-AB53-4E7A-9C25-9A25D1D5CDA9", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-processing", - "codepoint": "F0184", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "0CDF5E61-25C4-4E30-8E16-32E4E7EDE705", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-processing-outline", - "codepoint": "F0185", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "49412CCB-C5F6-460F-A2DB-76BCCB668BCC", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-question", - "codepoint": "F0817", - "aliases": [ - "comment-help" - ], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "7BD335A6-C4A7-48F1-B04F-F1457B7B1F20", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-question-outline", - "codepoint": "F0186", - "aliases": [ - "comment-help-outline" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "6A2BA297-7401-4727-B79F-8C8DD0F56FE7", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-quote", - "codepoint": "F1021", - "aliases": [ - "feedback" - ], - "styles": [ - "variant" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "5510BB9F-2D63-471A-86F3-732E91A513E4", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-quote-outline", - "codepoint": "F1022", - "aliases": [ - "feedback-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "834998BB-D7F4-41F3-86B8-5EE5631B524A", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-remove", - "codepoint": "F05DE", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "520544E5-1693-4084-BB9C-B6FA70204B2C", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-remove-outline", - "codepoint": "F0187", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "02BA858D-5D62-487B-B423-22EBB73E10A9", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-search", - "codepoint": "F0A3C", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "17A45B1C-290F-4654-9C8D-3F3F641AB5CD", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-search-outline", - "codepoint": "F0A3D", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "483321DB-C7E5-4E48-B739-8500F6153446", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-text", - "codepoint": "F0188", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "88EDEE2E-AB1B-4287-A082-E3B139F8E69A", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-text-multiple", - "codepoint": "F0860", - "aliases": [ - "comments-text" - ], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "B7CBD1E2-9677-4D9B-B7BD-CA5493920BE6", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-text-multiple-outline", - "codepoint": "F0861", - "aliases": [ - "comments-text-outline" - ], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "3D9E4543-670E-4434-8C82-3A80122ED4EE", - "baseIconId": "B42FD735-27ED-47EC-887B-F5108774E6BC", - "name": "comment-text-outline", - "codepoint": "F0189", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "A9786B48-6664-4170-B56C-6F2868D5000D", - "baseIconId": "A9786B48-6664-4170-B56C-6F2868D5000D", - "name": "compare", - "codepoint": "F018A", - "aliases": [ - "theme-light-dark" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "C2F3461E-363D-42B9-AEF0-3E8A92EB2569", - "baseIconId": "C2F3461E-363D-42B9-AEF0-3E8A92EB2569", - "name": "compare-horizontal", - "codepoint": "F1492", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "89337179-88B1-4CD0-BA70-F18FC41514DF", - "baseIconId": "A9786B48-6664-4170-B56C-6F2868D5000D", - "name": "compare-remove", - "codepoint": "F18B3", - "aliases": [], - "styles": [ - "remove" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [], - "author": "nilsfast" - }, - { - "id": "2E95C78F-AAF9-4E1F-8241-4F781389EFF7", - "baseIconId": "2E95C78F-AAF9-4E1F-8241-4F781389EFF7", - "name": "compare-vertical", - "codepoint": "F1493", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "8FE64B61-0FD6-4056-9A4F-E62408CE70FE", - "baseIconId": "8FE64B61-0FD6-4056-9A4F-E62408CE70FE", - "name": "compass", - "codepoint": "F018B", - "aliases": [ - "explore" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Google" - }, - { - "id": "2D283145-478B-4863-9889-CFDDB88342A3", - "baseIconId": "8FE64B61-0FD6-4056-9A4F-E62408CE70FE", - "name": "compass-off", - "codepoint": "F0B80", - "aliases": [], - "styles": [ - "off" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Geographic Information System", - "Navigation" - ], - "author": "Google" - }, - { - "id": "ACF5388A-9C33-4466-A6E7-E0EFE1508C28", - "baseIconId": "8FE64B61-0FD6-4056-9A4F-E62408CE70FE", - "name": "compass-off-outline", - "codepoint": "F0B81", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Geographic Information System", - "Navigation" - ], - "author": "Google" - }, - { - "id": "EDA6D9AB-4AAE-4080-A1D3-78762666D7B1", - "baseIconId": "8FE64B61-0FD6-4056-9A4F-E62408CE70FE", - "name": "compass-outline", - "codepoint": "F018C", - "aliases": [], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Gabriel" - }, - { - "id": "D7B6D7B4-F143-477C-A402-963791DB0029", - "baseIconId": "D7B6D7B4-F143-477C-A402-963791DB0029", - "name": "compass-rose", - "codepoint": "F1382", - "aliases": [], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "Michael Richins" - }, - { - "id": "75C5A894-CC25-4326-A270-6F70BE0D8AAB", - "baseIconId": "75C5A894-CC25-4326-A270-6F70BE0D8AAB", - "name": "compost", - "codepoint": "F1A38", - "aliases": [ - "regeneration", - "regenerative-agriculture" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Agriculture", - "Nature" - ], - "author": "Google" - }, - { - "id": "4819FE23-EEAA-496B-A8DC-C4101A1AC994", - "baseIconId": "4819FE23-EEAA-496B-A8DC-C4101A1AC994", - "name": "cone", - "codepoint": "F194C", - "aliases": [], - "styles": [], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Colton Wiscombe" - }, - { - "id": "76F233E1-C7AA-4C0F-BDFC-717BF22D40BB", - "baseIconId": "4819FE23-EEAA-496B-A8DC-C4101A1AC994", - "name": "cone-off", - "codepoint": "F194D", - "aliases": [], - "styles": [ - "off" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Colton Wiscombe" - }, - { - "id": "C66F7470-8691-4B30-A8F6-5250389E1D48", - "baseIconId": "C66F7470-8691-4B30-A8F6-5250389E1D48", - "name": "connection", - "codepoint": "F1616", - "aliases": [ - "plug" - ], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DCD0A183-A5DC-43BD-BC48-8FFF0CA0FA9C", - "baseIconId": "DCD0A183-A5DC-43BD-BC48-8FFF0CA0FA9C", - "name": "console", - "codepoint": "F018D", - "aliases": [ - "terminal" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "D6FF21C5-201A-43E0-B8AF-276A6BED653A", - "baseIconId": "DCD0A183-A5DC-43BD-BC48-8FFF0CA0FA9C", - "name": "console-line", - "codepoint": "F07B7", - "aliases": [ - "terminal-line" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "19A41CF5-CA4E-411C-8C34-14895B4B90DD", - "baseIconId": "DCD0A183-A5DC-43BD-BC48-8FFF0CA0FA9C", - "name": "console-network", - "codepoint": "F08A9", - "aliases": [ - "terminal-network" - ], - "styles": [], - "version": "2.2.43", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "48F71C58-812D-40AA-BC4D-9D4381684E90", - "baseIconId": "DCD0A183-A5DC-43BD-BC48-8FFF0CA0FA9C", - "name": "console-network-outline", - "codepoint": "F0C60", - "aliases": [ - "terminal-network-outline" - ], - "styles": [ - "network" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "79D6D751-2470-4ACC-B67E-40F5FF12BC25", - "baseIconId": "79D6D751-2470-4ACC-B67E-40F5FF12BC25", - "name": "consolidate", - "codepoint": "F10D8", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "45F3DDED-3C5E-4B6B-941E-7283657A1577", - "baseIconId": "45F3DDED-3C5E-4B6B-941E-7283657A1577", - "name": "contactless-payment", - "codepoint": "F0D6A", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Currency" - ], - "author": "Michael Richins" - }, - { - "id": "445CF970-F03C-4DDC-A326-F77DA919CB39", - "baseIconId": "45F3DDED-3C5E-4B6B-941E-7283657A1577", - "name": "contactless-payment-circle", - "codepoint": "F0321", - "aliases": [], - "styles": [ - "circle" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Currency" - ], - "author": "Google" - }, - { - "id": "E7D24172-A5A7-4BAE-A679-D2191E8E7F51", - "baseIconId": "45F3DDED-3C5E-4B6B-941E-7283657A1577", - "name": "contactless-payment-circle-outline", - "codepoint": "F0408", - "aliases": [], - "styles": [ - "circle", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Currency" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5A68EA78-9792-4223-808D-17E5205765E6", - "baseIconId": "5A68EA78-9792-4223-808D-17E5205765E6", - "name": "contacts", - "codepoint": "F06CB", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "5D5E7753-B3F1-4D0C-B175-62749D448492", - "baseIconId": "5A68EA78-9792-4223-808D-17E5205765E6", - "name": "contacts-outline", - "codepoint": "F05B8", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "44029D6D-5640-4AE5-907B-8388B0438FF0", - "baseIconId": "44029D6D-5640-4AE5-907B-8388B0438FF0", - "name": "contain", - "codepoint": "F0A3E", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "B786A80C-161C-492C-B405-A10087092CDC", - "baseIconId": "44029D6D-5640-4AE5-907B-8388B0438FF0", - "name": "contain-end", - "codepoint": "F0A3F", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "5161A499-05B1-444F-84E6-359F5C46F84C", - "baseIconId": "44029D6D-5640-4AE5-907B-8388B0438FF0", - "name": "contain-start", - "codepoint": "F0A40", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "2B3B8FC2-C8AB-40AF-9B3F-AFFC93482676", - "baseIconId": "2B3B8FC2-C8AB-40AF-9B3F-AFFC93482676", - "name": "content-copy", - "codepoint": "F018F", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "D4028362-37C3-4EED-BE0B-C78927C3F55D", - "baseIconId": "D4028362-37C3-4EED-BE0B-C78927C3F55D", - "name": "content-cut", - "codepoint": "F0190", - "aliases": [ - "scissors", - "clip" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Health \/ Beauty", - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "B1A86989-2CB4-47DC-BC93-67A077792F72", - "baseIconId": "B1A86989-2CB4-47DC-BC93-67A077792F72", - "name": "content-duplicate", - "codepoint": "F0191", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "75856C98-A0D6-4C78-A323-BD170B6E6094", - "baseIconId": "75856C98-A0D6-4C78-A323-BD170B6E6094", - "name": "content-paste", - "codepoint": "F0192", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "29F946C0-CA58-4287-AF0B-964961E5CC2C", - "baseIconId": "29F946C0-CA58-4287-AF0B-964961E5CC2C", - "name": "content-save", - "codepoint": "F0193", - "aliases": [ - "floppy-disc", - "floppy-disk" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "E4BAD28B-B196-42B5-BD4D-92C81A8EADAE", - "baseIconId": "29F946C0-CA58-4287-AF0B-964961E5CC2C", - "name": "content-save-alert", - "codepoint": "F0F42", - "aliases": [ - "floppy-disc-alert" - ], - "styles": [ - "alert" - ], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Michael Richins" - }, - { - "id": "21B9916D-3D1A-43AF-91B2-56A4D5C493C2", - "baseIconId": "29F946C0-CA58-4287-AF0B-964961E5CC2C", - "name": "content-save-alert-outline", - "codepoint": "F0F43", - "aliases": [ - "floppy-disc-alert-outline" - ], - "styles": [ - "alert", - "outline" - ], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Michael Richins" - }, - { - "id": "B9BE7889-D858-41A1-AB4E-9C58325261E9", - "baseIconId": "29F946C0-CA58-4287-AF0B-964961E5CC2C", - "name": "content-save-all", - "codepoint": "F0194", - "aliases": [ - "floppy-disc-multiple" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "B65ADBE9-DE1B-4879-A34F-602A3DA4D12A", - "baseIconId": "29F946C0-CA58-4287-AF0B-964961E5CC2C", - "name": "content-save-all-outline", - "codepoint": "F0F44", - "aliases": [ - "floppy-disc-multiple-outline" - ], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "B52FC179-01B3-4E41-821E-DC162E402B5B", - "baseIconId": "29F946C0-CA58-4287-AF0B-964961E5CC2C", - "name": "content-save-check", - "codepoint": "F18EA", - "aliases": [], - "styles": [ - "check" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "4A940492-A6C2-4481-BDB0-485920679D1D", - "baseIconId": "29F946C0-CA58-4287-AF0B-964961E5CC2C", - "name": "content-save-check-outline", - "codepoint": "F18EB", - "aliases": [], - "styles": [ - "check", - "outline" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "E909F872-44CC-4D23-8AD2-95BFE02A5E2D", - "baseIconId": "29F946C0-CA58-4287-AF0B-964961E5CC2C", - "name": "content-save-cog", - "codepoint": "F145B", - "aliases": [ - "floppy-disc-cog" - ], - "styles": [], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A145BFEF-B18C-49C5-B24C-7918C878307E", - "baseIconId": "29F946C0-CA58-4287-AF0B-964961E5CC2C", - "name": "content-save-cog-outline", - "codepoint": "F145C", - "aliases": [ - "floppy-disc-cog-outline" - ], - "styles": [], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "12E2DE0D-BF3F-402D-8044-B18E269D32C2", - "baseIconId": "29F946C0-CA58-4287-AF0B-964961E5CC2C", - "name": "content-save-edit", - "codepoint": "F0CFB", - "aliases": [ - "floppy-disc-edit" - ], - "styles": [ - "edit" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B8D3719E-E67F-4008-9F43-458D75857769", - "baseIconId": "29F946C0-CA58-4287-AF0B-964961E5CC2C", - "name": "content-save-edit-outline", - "codepoint": "F0CFC", - "aliases": [ - "floppy-disc-edit-outline" - ], - "styles": [ - "edit", - "outline" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0FA06948-5C0F-498D-BDCD-15EB208057F9", - "baseIconId": "29F946C0-CA58-4287-AF0B-964961E5CC2C", - "name": "content-save-minus", - "codepoint": "F1B43", - "aliases": [], - "styles": [ - "minus" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Hans B\u00f6hm" - }, - { - "id": "186EE3B9-AFE9-47BA-A3FA-0ED59797D38C", - "baseIconId": "186EE3B9-AFE9-47BA-A3FA-0ED59797D38C", - "name": "content-save-minus-outline", - "codepoint": "F1B44", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Hans B\u00f6hm" - }, - { - "id": "FC4F757F-2540-4853-89A3-7FE07FC710C0", - "baseIconId": "29F946C0-CA58-4287-AF0B-964961E5CC2C", - "name": "content-save-move", - "codepoint": "F0E27", - "aliases": [ - "floppy-disc-move" - ], - "styles": [ - "arrow" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "12F9DD45-1D74-45E3-84B7-CDE90A3FD174", - "baseIconId": "29F946C0-CA58-4287-AF0B-964961E5CC2C", - "name": "content-save-move-outline", - "codepoint": "F0E28", - "aliases": [ - "floppy-disc-move-outline" - ], - "styles": [ - "arrow", - "outline" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "E5889AAE-7F3E-46F3-BEF6-36F4BE570DE8", - "baseIconId": "29F946C0-CA58-4287-AF0B-964961E5CC2C", - "name": "content-save-off", - "codepoint": "F1643", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "178D08A9-7C54-4F7A-9335-726030578718", - "baseIconId": "29F946C0-CA58-4287-AF0B-964961E5CC2C", - "name": "content-save-off-outline", - "codepoint": "F1644", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "707F4114-BD2F-4601-82C4-CFB6B2D2F359", - "baseIconId": "29F946C0-CA58-4287-AF0B-964961E5CC2C", - "name": "content-save-outline", - "codepoint": "F0818", - "aliases": [], - "styles": [ - "outline" - ], - "version": "2.1.19", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "F8794210-E83F-451C-AADE-35F71688F142", - "baseIconId": "29F946C0-CA58-4287-AF0B-964961E5CC2C", - "name": "content-save-plus", - "codepoint": "F1B41", - "aliases": [ - "content-save-add" - ], - "styles": [ - "plus" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Hans B\u00f6hm" - }, - { - "id": "56051C42-5524-47EE-B8A9-66AE8CFC43C2", - "baseIconId": "29F946C0-CA58-4287-AF0B-964961E5CC2C", - "name": "content-save-plus-outline", - "codepoint": "F1B42", - "aliases": [ - "content-save-add-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Hans B\u00f6hm" - }, - { - "id": "67E755F6-209A-41EF-98C5-423739A3AC10", - "baseIconId": "29F946C0-CA58-4287-AF0B-964961E5CC2C", - "name": "content-save-settings", - "codepoint": "F061B", - "aliases": [ - "floppy-disc-settings" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Simran" - }, - { - "id": "2EDEEDF4-2AE3-4365-8F49-DC6F869EC520", - "baseIconId": "29F946C0-CA58-4287-AF0B-964961E5CC2C", - "name": "content-save-settings-outline", - "codepoint": "F0B2E", - "aliases": [ - "floppy-disc-settings-outline" - ], - "styles": [ - "outline", - "settings" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Ruslan Garifullin" - }, - { - "id": "B50D388A-4647-4780-83E7-2C5AD8375FB9", - "baseIconId": "B50D388A-4647-4780-83E7-2C5AD8375FB9", - "name": "contrast", - "codepoint": "F0195", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "B7FCC914-C6E9-4919-8574-F0161C2CF28D", - "baseIconId": "B50D388A-4647-4780-83E7-2C5AD8375FB9", - "name": "contrast-box", - "codepoint": "F0196", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "A7CBFD5D-FDFD-4202-A290-840219A79F2F", - "baseIconId": "B50D388A-4647-4780-83E7-2C5AD8375FB9", - "name": "contrast-circle", - "codepoint": "F0197", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "605CAD46-2EA0-47AE-8A41-953C1F27F9CD", - "baseIconId": "605CAD46-2EA0-47AE-8A41-953C1F27F9CD", - "name": "controller", - "codepoint": "F02B4", - "aliases": [ - "gamepad" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Google" - }, - { - "id": "2D97B0F0-9662-4323-8F5B-0677507461EE", - "baseIconId": "2D97B0F0-9662-4323-8F5B-0677507461EE", - "name": "controller-classic", - "codepoint": "F0B82", - "aliases": [ - "gamepad-classic" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "053ECCDF-BF30-417F-85D4-FF2614402B5A", - "baseIconId": "2D97B0F0-9662-4323-8F5B-0677507461EE", - "name": "controller-classic-outline", - "codepoint": "F0B83", - "aliases": [ - "gamepad-classic-outline" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "8C28F332-2037-476E-8FAA-D5E6BC81D8B2", - "baseIconId": "605CAD46-2EA0-47AE-8A41-953C1F27F9CD", - "name": "controller-off", - "codepoint": "F02B5", - "aliases": [ - "gamepad-off" - ], - "styles": [ - "off" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Google" - }, - { - "id": "8E3FB537-B293-41A6-B6C5-B2BE927091F5", - "baseIconId": "8E3FB537-B293-41A6-B6C5-B2BE927091F5", - "name": "cookie", - "codepoint": "F0198", - "aliases": [ - "biscuit" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Google" - }, - { - "id": "D37F1726-BDD9-4AFB-84E0-A62587AAA6CC", - "baseIconId": "8E3FB537-B293-41A6-B6C5-B2BE927091F5", - "name": "cookie-alert", - "codepoint": "F16D0", - "aliases": [ - "biscuit-alert" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Alert \/ Error" - ], - "author": "Colton Wiscombe" - }, - { - "id": "927FC7C7-8DF3-47FE-BAC4-7DF8DAF3F936", - "baseIconId": "8E3FB537-B293-41A6-B6C5-B2BE927091F5", - "name": "cookie-alert-outline", - "codepoint": "F16D1", - "aliases": [ - "biscuit-alert-outline" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Alert \/ Error" - ], - "author": "Colton Wiscombe" - }, - { - "id": "DB07C270-5421-41A3-BBFF-350874DE3534", - "baseIconId": "8E3FB537-B293-41A6-B6C5-B2BE927091F5", - "name": "cookie-check", - "codepoint": "F16D2", - "aliases": [ - "biscuit-check" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Colton Wiscombe" - }, - { - "id": "65B2C1ED-992F-45D8-A0C0-4481F99748BF", - "baseIconId": "8E3FB537-B293-41A6-B6C5-B2BE927091F5", - "name": "cookie-check-outline", - "codepoint": "F16D3", - "aliases": [ - "biscuit-check-outline" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Colton Wiscombe" - }, - { - "id": "9DEBBFC6-6734-4D46-A7C0-3A11793C4708", - "baseIconId": "8E3FB537-B293-41A6-B6C5-B2BE927091F5", - "name": "cookie-clock", - "codepoint": "F16E4", - "aliases": [ - "biscuit-clock" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "5F7A7D4A-D4ED-4AE6-987D-A735A7403C00", - "baseIconId": "8E3FB537-B293-41A6-B6C5-B2BE927091F5", - "name": "cookie-clock-outline", - "codepoint": "F16E5", - "aliases": [ - "biscuit-clock-outline" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "5923CF0C-4D34-4BF1-8401-3AEEDC0DE9BC", - "baseIconId": "8E3FB537-B293-41A6-B6C5-B2BE927091F5", - "name": "cookie-cog", - "codepoint": "F16D4", - "aliases": [ - "biscuit-cog" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "96AE483D-C5CD-424A-A553-C9D5399CAD7F", - "baseIconId": "8E3FB537-B293-41A6-B6C5-B2BE927091F5", - "name": "cookie-cog-outline", - "codepoint": "F16D5", - "aliases": [ - "biscuit-cog-outline" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "E36B77B1-913A-45CC-A23B-02EA12161352", - "baseIconId": "8E3FB537-B293-41A6-B6C5-B2BE927091F5", - "name": "cookie-edit", - "codepoint": "F16E6", - "aliases": [ - "biscuit-edit" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Edit \/ Modify" - ], - "author": "Colton Wiscombe" - }, - { - "id": "0A7C1A34-8BC9-4A44-93F3-59F9235274AB", - "baseIconId": "8E3FB537-B293-41A6-B6C5-B2BE927091F5", - "name": "cookie-edit-outline", - "codepoint": "F16E7", - "aliases": [ - "biscuit-edit-outline" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Edit \/ Modify" - ], - "author": "Colton Wiscombe" - }, - { - "id": "FD4F6EA6-712D-4E1E-AF1E-25CB27AE66CE", - "baseIconId": "8E3FB537-B293-41A6-B6C5-B2BE927091F5", - "name": "cookie-lock", - "codepoint": "F16E8", - "aliases": [ - "biscuit-lock" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "CB5D57DF-BA59-4C98-9FA7-96536EF9FAA0", - "baseIconId": "8E3FB537-B293-41A6-B6C5-B2BE927091F5", - "name": "cookie-lock-outline", - "codepoint": "F16E9", - "aliases": [ - "biscuit-lock-outline" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "215F338E-A35C-4C54-9AC7-C4F4BB9A7206", - "baseIconId": "8E3FB537-B293-41A6-B6C5-B2BE927091F5", - "name": "cookie-minus", - "codepoint": "F16DA", - "aliases": [ - "biscuit-minus" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Colton Wiscombe" - }, - { - "id": "E5590F64-7B4E-4506-AF93-ED7F3E6AB988", - "baseIconId": "8E3FB537-B293-41A6-B6C5-B2BE927091F5", - "name": "cookie-minus-outline", - "codepoint": "F16DB", - "aliases": [ - "biscuit-minus-outline" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Colton Wiscombe" - }, - { - "id": "9B401BB3-9510-457F-9C35-BAC5A30BF91F", - "baseIconId": "8E3FB537-B293-41A6-B6C5-B2BE927091F5", - "name": "cookie-off", - "codepoint": "F16EA", - "aliases": [ - "biscuit-off" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Colton Wiscombe" - }, - { - "id": "4355ECEC-E157-4BC8-AF80-45FAC597F188", - "baseIconId": "8E3FB537-B293-41A6-B6C5-B2BE927091F5", - "name": "cookie-off-outline", - "codepoint": "F16EB", - "aliases": [ - "biscuit-off-outline" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Colton Wiscombe" - }, - { - "id": "AF77B3DF-8565-4A84-A58F-83FD2E55EB10", - "baseIconId": "8E3FB537-B293-41A6-B6C5-B2BE927091F5", - "name": "cookie-outline", - "codepoint": "F16DE", - "aliases": [ - "biscuit-outline" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Colton Wiscombe" - }, - { - "id": "272BE458-B01F-4437-B083-65175B327D05", - "baseIconId": "8E3FB537-B293-41A6-B6C5-B2BE927091F5", - "name": "cookie-plus", - "codepoint": "F16D6", - "aliases": [ - "biscuit-plus" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Colton Wiscombe" - }, - { - "id": "AB2BBE22-85B2-4D5B-9F99-099DE970A9EC", - "baseIconId": "8E3FB537-B293-41A6-B6C5-B2BE927091F5", - "name": "cookie-plus-outline", - "codepoint": "F16D7", - "aliases": [ - "biscuit-plus-outline" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Colton Wiscombe" - }, - { - "id": "184857B9-228F-4DD2-AF53-603277AEEB7F", - "baseIconId": "8E3FB537-B293-41A6-B6C5-B2BE927091F5", - "name": "cookie-refresh", - "codepoint": "F16EC", - "aliases": [ - "biscuit-refresh" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Colton Wiscombe" - }, - { - "id": "CA84B827-73C5-4C28-AC8B-82AADD5469E9", - "baseIconId": "8E3FB537-B293-41A6-B6C5-B2BE927091F5", - "name": "cookie-refresh-outline", - "codepoint": "F16ED", - "aliases": [ - "biscuit-refresh-outline" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Colton Wiscombe" - }, - { - "id": "25272102-387C-4333-BF16-3308E6EFF94F", - "baseIconId": "8E3FB537-B293-41A6-B6C5-B2BE927091F5", - "name": "cookie-remove", - "codepoint": "F16D8", - "aliases": [ - "biscuit-remove" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Colton Wiscombe" - }, - { - "id": "12200D0C-1B01-4165-A2D1-C5BE30B3E3A7", - "baseIconId": "8E3FB537-B293-41A6-B6C5-B2BE927091F5", - "name": "cookie-remove-outline", - "codepoint": "F16D9", - "aliases": [ - "biscuit-remove-outline" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Colton Wiscombe" - }, - { - "id": "B8F9243C-188F-4EC1-9051-5BAA942D7F42", - "baseIconId": "8E3FB537-B293-41A6-B6C5-B2BE927091F5", - "name": "cookie-settings", - "codepoint": "F16DC", - "aliases": [ - "biscuit-settings", - "cookie-crumbs", - "biscuit-crumbs" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "FF72A11B-A9E5-47B7-967F-C520DC965CE2", - "baseIconId": "8E3FB537-B293-41A6-B6C5-B2BE927091F5", - "name": "cookie-settings-outline", - "codepoint": "F16DD", - "aliases": [ - "biscuit-settings-outline", - "cookie-crumbs-outline", - "biscuit-crumbs-outline" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "A260896B-178E-4E3A-9F2C-793AD68154F4", - "baseIconId": "A260896B-178E-4E3A-9F2C-793AD68154F4", - "name": "coolant-temperature", - "codepoint": "F03C8", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Simran" - }, - { - "id": "430A9380-A9BB-43C3-8A16-3F41AE22C3D7", - "baseIconId": "430A9380-A9BB-43C3-8A16-3F41AE22C3D7", - "name": "copyleft", - "codepoint": "F1939", - "aliases": [], - "styles": [], - "version": "6.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "34B43A77-9873-4723-AA65-45D42992748E", - "baseIconId": "34B43A77-9873-4723-AA65-45D42992748E", - "name": "copyright", - "codepoint": "F05E6", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "C3F97D60-41A7-49A3-A8B7-C63D724B12FF", - "baseIconId": "C3F97D60-41A7-49A3-A8B7-C63D724B12FF", - "name": "cordova", - "codepoint": "F0958", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Developer \/ Languages" - ], - "author": "Contributors" - }, - { - "id": "B49614ED-B7AB-4123-BD9C-B50CE119C76C", - "baseIconId": "B49614ED-B7AB-4123-BD9C-B50CE119C76C", - "name": "corn", - "codepoint": "F07B8", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Agriculture", - "Food \/ Drink" - ], - "author": "Thomas Hunsaker" - }, - { - "id": "E2947B22-1F7A-4638-8B16-27DA49F5BD52", - "baseIconId": "B49614ED-B7AB-4123-BD9C-B50CE119C76C", - "name": "corn-off", - "codepoint": "F13EF", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "4969E6E7-4311-4F1E-B9ED-070DE4473A65", - "baseIconId": "4969E6E7-4311-4F1E-B9ED-070DE4473A65", - "name": "cosine-wave", - "codepoint": "F1479", - "aliases": [ - "frequency", - "amplitude" - ], - "styles": [], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Audio" - ], - "author": "Haley Halcyon" - }, - { - "id": "F789F2E4-022E-4A5A-B548-30D21BC3A7F6", - "baseIconId": "F789F2E4-022E-4A5A-B548-30D21BC3A7F6", - "name": "counter", - "codepoint": "F0199", - "aliases": [ - "score", - "numbers", - "odometer" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Christopher Schreiner" - }, - { - "id": "795A2085-78E1-4721-BF6F-007B20CF92AF", - "baseIconId": "795A2085-78E1-4721-BF6F-007B20CF92AF", - "name": "countertop", - "codepoint": "F181C", - "aliases": [ - "kitchen-counter", - "sink" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "31920D18-0B33-4CE8-B5D9-7E879DB4E6AA", - "baseIconId": "795A2085-78E1-4721-BF6F-007B20CF92AF", - "name": "countertop-outline", - "codepoint": "F181D", - "aliases": [ - "kitchen-counter-outline", - "sink-outline" - ], - "styles": [ - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "1D459B7E-A98C-4E02-929B-FA0BA329B97F", - "baseIconId": "1D459B7E-A98C-4E02-929B-FA0BA329B97F", - "name": "cow", - "codepoint": "F019A", - "aliases": [ - "emoji-cow", - "emoticon-cow" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Animal", - "Agriculture" - ], - "author": "Austin Andrews" - }, - { - "id": "8FA2AEE7-EBCA-4943-AF59-FF3C4D762C53", - "baseIconId": "1D459B7E-A98C-4E02-929B-FA0BA329B97F", - "name": "cow-off", - "codepoint": "F18FC", - "aliases": [ - "dairy-off", - "dairy-free" - ], - "styles": [ - "off" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Agriculture", - "Animal" - ], - "author": "Michael Irigoyen" - }, - { - "id": "BC9DA934-ED6D-4EC4-9FA4-2B6FF26B3058", - "baseIconId": "BC9DA934-ED6D-4EC4-9FA4-2B6FF26B3058", - "name": "cpu-32-bit", - "codepoint": "F0EDF", - "aliases": [ - "chip-32-bit" - ], - "styles": [], - "version": "3.8.95", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "BC47ABAD-66D6-4EEA-9512-CB33318F62EF", - "baseIconId": "BC47ABAD-66D6-4EEA-9512-CB33318F62EF", - "name": "cpu-64-bit", - "codepoint": "F0EE0", - "aliases": [ - "chip-64-bit" - ], - "styles": [], - "version": "3.8.95", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "74B57630-EBF9-48DB-886C-36FA79D4350B", - "baseIconId": "74B57630-EBF9-48DB-886C-36FA79D4350B", - "name": "cradle", - "codepoint": "F198B", - "aliases": [ - "crib", - "bassinet", - "baby", - "nursery", - "baby-room" - ], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "People \/ Family", - "Home Automation" - ], - "author": "Google" - }, - { - "id": "3CDAD9E8-C4DC-42CA-9262-A0C45B94B139", - "baseIconId": "74B57630-EBF9-48DB-886C-36FA79D4350B", - "name": "cradle-outline", - "codepoint": "F1991", - "aliases": [ - "bassinet", - "crib", - "baby", - "nursery-outline", - "baby-room-outline" - ], - "styles": [ - "outline" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "People \/ Family", - "Home Automation" - ], - "author": "Google" - }, - { - "id": "8C0FE6E3-3D82-4FCA-9CCC-73CA8C5299D1", - "baseIconId": "8C0FE6E3-3D82-4FCA-9CCC-73CA8C5299D1", - "name": "crane", - "codepoint": "F0862", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "598B7931-3DF8-4CFA-A6E6-80550CA31372", - "baseIconId": "598B7931-3DF8-4CFA-A6E6-80550CA31372", - "name": "creation", - "codepoint": "F0674", - "aliases": [ - "auto-awesome", - "sparkles", - "stars", - "shimmer" - ], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "E643EA62-6140-491A-9B2D-DE88F51BD37A", - "baseIconId": "598B7931-3DF8-4CFA-A6E6-80550CA31372", - "name": "creation-outline", - "codepoint": "F1C2B", - "aliases": [ - "auto-awesome-outline", - "sparkles-outline", - "stars-outline", - "shimmer-outline" - ], - "styles": [ - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "8973B8C3-527C-48D1-9E5B-CB0A35DE2B77", - "baseIconId": "8973B8C3-527C-48D1-9E5B-CB0A35DE2B77", - "name": "creative-commons", - "codepoint": "F0D6B", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card", - "codepoint": "F0FEF", - "aliases": [], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Banking", - "Currency" - ], - "author": "Michael Richins" - }, - { - "id": "1CE6C99F-BA66-4069-B014-67E4FB6E5EB9", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-check", - "codepoint": "F13D0", - "aliases": [], - "styles": [ - "check" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Michael Irigoyen" - }, - { - "id": "96023451-FCAA-40E0-839C-A7F98C3553F1", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-check-outline", - "codepoint": "F13D1", - "aliases": [], - "styles": [ - "check", - "outline" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B116C077-E89C-4079-8CEB-7946D054613D", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-chip", - "codepoint": "F190F", - "aliases": [ - "credit-card-icc-chip" - ], - "styles": [ - "variant" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Jeff Anders" - }, - { - "id": "DF35C024-A010-482D-8B28-D567A1C9389D", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-chip-outline", - "codepoint": "F1910", - "aliases": [ - "credit-card-icc-chip-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Jeff Anders" - }, - { - "id": "0FBFF192-59C3-447E-A987-4BE568865C8E", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-clock", - "codepoint": "F0EE1", - "aliases": [], - "styles": [ - "clock" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Banking", - "Date \/ Time" - ], - "author": "Michael Richins" - }, - { - "id": "851D92B4-4326-4913-AA2F-05F3595614C2", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-clock-outline", - "codepoint": "F0EE2", - "aliases": [], - "styles": [ - "clock", - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Banking", - "Date \/ Time" - ], - "author": "Michael Richins" - }, - { - "id": "5EF28B8C-72F7-4C83-8270-7DA1E535022C", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-edit", - "codepoint": "F17D7", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Edit \/ Modify", - "Banking" - ], - "author": "Jeff Anders" - }, - { - "id": "4678D0B5-4FF5-4729-9096-2F8EA74447FE", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-edit-outline", - "codepoint": "F17D8", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Edit \/ Modify", - "Banking" - ], - "author": "Jeff Anders" - }, - { - "id": "896151D2-B1B7-42C5-95E7-78517BEC5676", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-fast", - "codepoint": "F1911", - "aliases": [ - "credit-card-swipe" - ], - "styles": [ - "variant" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Jeff Anders" - }, - { - "id": "B08C2F32-A29A-4429-BFDA-97F81B704A65", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-fast-outline", - "codepoint": "F1912", - "aliases": [ - "credit-card-swipe-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Jeff Anders" - }, - { - "id": "7FD3C251-310E-4A0D-B6B9-4BAC16F9909B", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-lock", - "codepoint": "F18E7", - "aliases": [], - "styles": [ - "lock" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Banking", - "Lock" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1B3B929E-82A7-438D-823D-4046F3C5F9A1", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-lock-outline", - "codepoint": "F18E8", - "aliases": [], - "styles": [ - "lock", - "outline" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Banking", - "Lock" - ], - "author": "Michael Irigoyen" - }, - { - "id": "21D860AE-A880-4ED2-9E11-617D888BD744", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-marker", - "codepoint": "F06A8", - "aliases": [ - "credit-card-location", - "payment-on-delivery" - ], - "styles": [ - "variant" - ], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Banking", - "Navigation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B026E6BC-FFD6-44FA-96AC-6F4A902FD596", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-marker-outline", - "codepoint": "F0DBE", - "aliases": [ - "cod", - "payment-on-delivery-outline", - "credit-card-location-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Banking", - "Navigation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "97D593C8-1C57-4597-AB1C-C6B487633BBD", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-minus", - "codepoint": "F0FAC", - "aliases": [], - "styles": [ - "minus" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Michael Richins" - }, - { - "id": "E35A35BC-A59A-440D-820A-3BB61E1AA9BA", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-minus-outline", - "codepoint": "F0FAD", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Michael Richins" - }, - { - "id": "25C1F858-600D-42A4-801F-5F85F22ACB52", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-multiple", - "codepoint": "F0FF0", - "aliases": [], - "styles": [ - "multiple" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Michael Richins" - }, - { - "id": "D7C8ADB6-B7C9-4653-9EA7-EB98552304BA", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-multiple-outline", - "codepoint": "F019C", - "aliases": [ - "credit-cards" - ], - "styles": [ - "multiple", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Austin Andrews" - }, - { - "id": "5DC17348-DD99-40EA-804E-CB20BEE93C07", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-off", - "codepoint": "F0FF1", - "aliases": [], - "styles": [ - "off" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Michael Richins" - }, - { - "id": "CD527CB6-15F0-41BF-BF50-2BCB8B6C769F", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-off-outline", - "codepoint": "F05E4", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Austin Andrews" - }, - { - "id": "A121DBBB-C9E6-4534-AA7B-F59496787BD2", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-outline", - "codepoint": "F019B", - "aliases": [ - "payment" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Shopping", - "Banking", - "Currency" - ], - "author": "Google" - }, - { - "id": "DE6FDD30-069D-4377-96D1-9DAC014B6A8F", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-plus", - "codepoint": "F0FF2", - "aliases": [], - "styles": [ - "plus" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Michael Richins" - }, - { - "id": "FA914D65-0F2C-463D-A54F-9B0DE9FBEED3", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-plus-outline", - "codepoint": "F0676", - "aliases": [ - "credit-card-add" - ], - "styles": [ - "outline", - "plus" - ], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Austin Andrews" - }, - { - "id": "F768F993-4A1F-4A1E-8EED-11526704C22F", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-refresh", - "codepoint": "F1645", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Colton Wiscombe" - }, - { - "id": "0ECF7DE7-9F12-4635-902C-1BBF1064DC21", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-refresh-outline", - "codepoint": "F1646", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Colton Wiscombe" - }, - { - "id": "90A38F47-9EFD-4468-A1B9-E31A6781F69D", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-refund", - "codepoint": "F0FF3", - "aliases": [], - "styles": [ - "variant" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Michael Richins" - }, - { - "id": "4C2633A8-8E84-4301-A470-0408DCFFEEF8", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-refund-outline", - "codepoint": "F0AA8", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Michael Richins" - }, - { - "id": "6CD92C52-D816-4930-B504-ECB4B8744CEA", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-remove", - "codepoint": "F0FAE", - "aliases": [], - "styles": [ - "remove" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Michael Richins" - }, - { - "id": "003200AA-03EB-4AFA-BE66-B1858B39DA19", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-remove-outline", - "codepoint": "F0FAF", - "aliases": [], - "styles": [ - "outline", - "remove" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Michael Richins" - }, - { - "id": "A3BF84E0-A214-410C-9890-851855025247", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-scan", - "codepoint": "F0FF4", - "aliases": [], - "styles": [ - "variant" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Michael Richins" - }, - { - "id": "CF494E4E-F1FC-411D-87FD-933CC17EE08C", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-scan-outline", - "codepoint": "F019D", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Austin Andrews" - }, - { - "id": "8E913524-BAAE-48B9-A45A-69192B159EE4", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-search", - "codepoint": "F1647", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Colton Wiscombe" - }, - { - "id": "8A0B7BE3-D653-4009-8E42-B3E280F7152C", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-search-outline", - "codepoint": "F1648", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Colton Wiscombe" - }, - { - "id": "194059D5-3FF9-4DA7-8C7E-81092D38889B", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-settings", - "codepoint": "F0FF5", - "aliases": [], - "styles": [ - "settings" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Banking", - "Settings" - ], - "author": "Michael Richins" - }, - { - "id": "8EF337DF-4858-4BC2-8C48-BD0911AF0FEB", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-settings-outline", - "codepoint": "F08D7", - "aliases": [ - "payment-settings" - ], - "styles": [ - "outline", - "settings" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Banking", - "Settings" - ], - "author": "Peter Noble" - }, - { - "id": "76407FAE-6EB4-4486-9A60-5D62801B78E4", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-sync", - "codepoint": "F1649", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Colton Wiscombe" - }, - { - "id": "FB29966A-E0BE-41FC-92D0-4218B160DCF4", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-sync-outline", - "codepoint": "F164A", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Colton Wiscombe" - }, - { - "id": "7894F13C-362E-4628-B0D4-E9AC990CCB41", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-wireless", - "codepoint": "F0802", - "aliases": [], - "styles": [ - "variant" - ], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9BDEAB2C-8D25-43FA-9722-9FD68D21E76A", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-wireless-off", - "codepoint": "F057A", - "aliases": [], - "styles": [ - "off", - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Simran" - }, - { - "id": "00E657E0-F05A-423A-813F-3DC14C5E6439", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-wireless-off-outline", - "codepoint": "F057B", - "aliases": [], - "styles": [ - "off", - "outline", - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Simran" - }, - { - "id": "694399D0-1348-4EB0-BA34-ECD2FE4987C2", - "baseIconId": "91CCFF94-D3F6-48B2-B62C-02DC1B6DBC1E", - "name": "credit-card-wireless-outline", - "codepoint": "F0D6C", - "aliases": [ - "credit-card-contactless" - ], - "styles": [ - "outline", - "variant" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Michael Richins" - }, - { - "id": "9C7DBA7B-099C-460D-BD51-2B2F70EBE39A", - "baseIconId": "9C7DBA7B-099C-460D-BD51-2B2F70EBE39A", - "name": "cricket", - "codepoint": "F0D6D", - "aliases": [ - "cricket-bat" - ], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Google" - }, - { - "id": "FA68ACCA-389F-453E-B886-FF3DAFE10530", - "baseIconId": "FA68ACCA-389F-453E-B886-FF3DAFE10530", - "name": "crop", - "codepoint": "F019E", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "17AB799B-F531-4800-A7DE-23C5D95238F4", - "baseIconId": "17AB799B-F531-4800-A7DE-23C5D95238F4", - "name": "crop-free", - "codepoint": "F019F", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "DE641C3F-FEF6-4764-A276-F6FECFE031DA", - "baseIconId": "DE641C3F-FEF6-4764-A276-F6FECFE031DA", - "name": "crop-landscape", - "codepoint": "F01A0", - "aliases": [ - "crop-5-4" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "02E45E84-72D2-4FE1-BF98-6A9521E31A8A", - "baseIconId": "02E45E84-72D2-4FE1-BF98-6A9521E31A8A", - "name": "crop-portrait", - "codepoint": "F01A1", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "03774672-2612-4A56-9E32-69060B32B94C", - "baseIconId": "03774672-2612-4A56-9E32-69060B32B94C", - "name": "crop-rotate", - "codepoint": "F0696", - "aliases": [], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "72BA6354-04A5-4BE9-A84C-843B9441164E", - "baseIconId": "72BA6354-04A5-4BE9-A84C-843B9441164E", - "name": "crop-square", - "codepoint": "F01A2", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "5644CD16-FA4D-4F68-8DAC-996169C778E1", - "baseIconId": "5644CD16-FA4D-4F68-8DAC-996169C778E1", - "name": "cross", - "codepoint": "F0953", - "aliases": [ - "christianity", - "religion-christian" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Religion", - "Holiday" - ], - "author": "Nick" - }, - { - "id": "00B9DE12-462A-483B-90D3-8FA89B3D9FD5", - "baseIconId": "00B9DE12-462A-483B-90D3-8FA89B3D9FD5", - "name": "cross-bolnisi", - "codepoint": "F0CED", - "aliases": [], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Religion" - ], - "author": "Michael Irigoyen" - }, - { - "id": "63D4C7DD-5BEF-41F2-921F-48EB987F0ED3", - "baseIconId": "63D4C7DD-5BEF-41F2-921F-48EB987F0ED3", - "name": "cross-celtic", - "codepoint": "F0CF5", - "aliases": [], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Religion", - "Holiday" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E7B0A94D-5F09-4E77-A1E0-3DA131398A26", - "baseIconId": "5644CD16-FA4D-4F68-8DAC-996169C778E1", - "name": "cross-outline", - "codepoint": "F0CF6", - "aliases": [ - "religion-christian-outline", - "christianity-outline" - ], - "styles": [ - "outline" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Religion" - ], - "author": "Michael Irigoyen" - }, - { - "id": "33845FDE-0003-4780-8DC9-07FC29D46599", - "baseIconId": "33845FDE-0003-4780-8DC9-07FC29D46599", - "name": "crosshairs", - "codepoint": "F01A3", - "aliases": [ - "gps-not-fixed", - "location-searching" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Geographic Information System" - ], - "author": "Google" - }, - { - "id": "D3A1EC2E-98D5-46B6-BF33-DECBBAACEFBE", - "baseIconId": "33845FDE-0003-4780-8DC9-07FC29D46599", - "name": "crosshairs-gps", - "codepoint": "F01A4", - "aliases": [ - "gps-fixed", - "my-location" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Google" - }, - { - "id": "BD55C800-ECAF-4839-82BD-980B3891ADF5", - "baseIconId": "33845FDE-0003-4780-8DC9-07FC29D46599", - "name": "crosshairs-off", - "codepoint": "F0F45", - "aliases": [], - "styles": [ - "off" - ], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Geographic Information System" - ], - "author": "Google" - }, - { - "id": "0842BFCE-4511-40B1-8E66-33CFED0A139B", - "baseIconId": "33845FDE-0003-4780-8DC9-07FC29D46599", - "name": "crosshairs-question", - "codepoint": "F1136", - "aliases": [ - "crosshairs-unknown", - "gps-unknown" - ], - "styles": [ - "question" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Google" - }, - { - "id": "FEE6305B-081C-429E-9584-5A5C6D8FD38F", - "baseIconId": "FEE6305B-081C-429E-9584-5A5C6D8FD38F", - "name": "crowd", - "codepoint": "F1975", - "aliases": [ - "family", - "crowd-source", - "crowdsource" - ], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Account \/ User", - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "266349FD-1B26-4BCD-A682-D25C4469B682", - "baseIconId": "266349FD-1B26-4BCD-A682-D25C4469B682", - "name": "crown", - "codepoint": "F01A5", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "8D0845BB-6518-4178-BE14-BDE99D614A8C", - "baseIconId": "266349FD-1B26-4BCD-A682-D25C4469B682", - "name": "crown-circle", - "codepoint": "F17DC", - "aliases": [ - "checkers" - ], - "styles": [ - "circle" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A25B1BFF-7DEC-4A6C-B91A-3B2A149997F1", - "baseIconId": "266349FD-1B26-4BCD-A682-D25C4469B682", - "name": "crown-circle-outline", - "codepoint": "F17DD", - "aliases": [ - "checkers-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D0B6994F-78AD-4D69-ADED-CD0C15D0D62B", - "baseIconId": "266349FD-1B26-4BCD-A682-D25C4469B682", - "name": "crown-outline", - "codepoint": "F11D0", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [], - "author": "frankgrinaert" - }, - { - "id": "803712F9-6CAD-47C9-8B54-08B134949FB3", - "baseIconId": "803712F9-6CAD-47C9-8B54-08B134949FB3", - "name": "cryengine", - "codepoint": "F0959", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "730684B8-2187-4AD1-A257-CECF232856FD", - "baseIconId": "730684B8-2187-4AD1-A257-CECF232856FD", - "name": "crystal-ball", - "codepoint": "F0B2F", - "aliases": [], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "64E19922-572B-41F8-9139-BE6CBC8A0F80", - "baseIconId": "64E19922-572B-41F8-9139-BE6CBC8A0F80", - "name": "cube", - "codepoint": "F01A6", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Austin Andrews" - }, - { - "id": "C2D996BC-2459-44E7-94FB-EE181E03B8C3", - "baseIconId": "64E19922-572B-41F8-9139-BE6CBC8A0F80", - "name": "cube-off", - "codepoint": "F141C", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "0A2F7725-8D0E-4C67-8EC3-03D8F92EEB33", - "baseIconId": "64E19922-572B-41F8-9139-BE6CBC8A0F80", - "name": "cube-off-outline", - "codepoint": "F141D", - "aliases": [ - "sugar-off", - "sugar-cube-off", - "sugar-free" - ], - "styles": [ - "off", - "outline" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "11B7F7B5-8813-48DE-9469-B1159355DDC3", - "baseIconId": "64E19922-572B-41F8-9139-BE6CBC8A0F80", - "name": "cube-outline", - "codepoint": "F01A7", - "aliases": [ - "sugar", - "sugar-cube" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Shape", - "Food \/ Drink" - ], - "author": "Austin Andrews" - }, - { - "id": "101B8439-F611-400E-A2DF-0D7AE40C1005", - "baseIconId": "64E19922-572B-41F8-9139-BE6CBC8A0F80", - "name": "cube-scan", - "codepoint": "F0B84", - "aliases": [ - "view-in-ar", - "view-in-augmented-reality" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "F0726D57-782C-44E8-A404-336480FC9E7B", - "baseIconId": "64E19922-572B-41F8-9139-BE6CBC8A0F80", - "name": "cube-send", - "codepoint": "F01A8", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "A22472A9-D83E-4234-AAF0-F60AFB7C57DB", - "baseIconId": "A22472A9-D83E-4234-AAF0-F60AFB7C57DB", - "name": "cube-unfolded", - "codepoint": "F01A9", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "D5DA2C54-C8D0-469F-99A9-C8DB9D3A6F15", - "baseIconId": "D5DA2C54-C8D0-469F-99A9-C8DB9D3A6F15", - "name": "cup", - "codepoint": "F01AA", - "aliases": [ - "glass", - "drink" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Austin Andrews" - }, - { - "id": "FD336A31-52C0-41AF-A0F3-BA475DEA1A54", - "baseIconId": "D5DA2C54-C8D0-469F-99A9-C8DB9D3A6F15", - "name": "cup-off", - "codepoint": "F05E5", - "aliases": [ - "glass-off", - "drink-off" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Austin Andrews" - }, - { - "id": "C3BC4A94-7F95-4E12-A715-45830DEDA014", - "baseIconId": "D5DA2C54-C8D0-469F-99A9-C8DB9D3A6F15", - "name": "cup-off-outline", - "codepoint": "F137D", - "aliases": [ - "glass-off-outline", - "drink-off-outline" - ], - "styles": [ - "off", - "outline" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Simran" - }, - { - "id": "FEA3388A-F985-482C-8CE0-0B4ABCD31691", - "baseIconId": "D5DA2C54-C8D0-469F-99A9-C8DB9D3A6F15", - "name": "cup-outline", - "codepoint": "F130F", - "aliases": [ - "glass-outline", - "drink-outline", - "cup-empty" - ], - "styles": [ - "outline" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Simran" - }, - { - "id": "AC4AD054-775A-4D59-BF92-A57A6A952607", - "baseIconId": "D5DA2C54-C8D0-469F-99A9-C8DB9D3A6F15", - "name": "cup-water", - "codepoint": "F01AB", - "aliases": [ - "local-drink", - "glass-water", - "drink-water", - "cup-liquid", - "glass-liquid" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Google" - }, - { - "id": "112A3BDB-8748-4118-8315-326E140C101B", - "baseIconId": "112A3BDB-8748-4118-8315-326E140C101B", - "name": "cupboard", - "codepoint": "F0F46", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "13FBEF67-6AB8-471D-BC66-DE521D91D0FC", - "baseIconId": "112A3BDB-8748-4118-8315-326E140C101B", - "name": "cupboard-outline", - "codepoint": "F0F47", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "CF09105E-AB0E-4393-ADCC-4E6DFC513C9C", - "baseIconId": "CF09105E-AB0E-4393-ADCC-4E6DFC513C9C", - "name": "cupcake", - "codepoint": "F095A", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Nick" - }, - { - "id": "75F948EB-5A9C-4F7A-9841-2B93AC222605", - "baseIconId": "75F948EB-5A9C-4F7A-9841-2B93AC222605", - "name": "curling", - "codepoint": "F0863", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Nick" - }, - { - "id": "FB0C738C-21DE-4643-9B5D-690CE7AAEAEE", - "baseIconId": "FB0C738C-21DE-4643-9B5D-690CE7AAEAEE", - "name": "currency-bdt", - "codepoint": "F0864", - "aliases": [ - "taka", - "bangladeshi-taka" - ], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Banking", - "Currency" - ], - "author": "Michael Richins" - }, - { - "id": "20E50505-DD23-4A07-AAE7-024BE3774018", - "baseIconId": "20E50505-DD23-4A07-AAE7-024BE3774018", - "name": "currency-brl", - "codepoint": "F0B85", - "aliases": [ - "brazilian-real" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Banking", - "Currency" - ], - "author": "Austin Andrews" - }, - { - "id": "CCAF9A48-2989-47C7-B4A5-1CF424A339CC", - "baseIconId": "CCAF9A48-2989-47C7-B4A5-1CF424A339CC", - "name": "currency-btc", - "codepoint": "F01AC", - "aliases": [ - "bitcoin" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Google" - }, - { - "id": "0F5809A3-18DD-4B42-9A7E-B35B65EF3751", - "baseIconId": "0F5809A3-18DD-4B42-9A7E-B35B65EF3751", - "name": "currency-cny", - "codepoint": "F07BA", - "aliases": [ - "yuan", - "renminbi" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Google" - }, - { - "id": "222B8F14-2217-4FC1-8940-AC1CF8AB150B", - "baseIconId": "222B8F14-2217-4FC1-8940-AC1CF8AB150B", - "name": "currency-eth", - "codepoint": "F07BB", - "aliases": [ - "ethereum", - "xi" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Peter Noble" - }, - { - "id": "94C667B3-E2EB-428D-B422-751C234CCF44", - "baseIconId": "94C667B3-E2EB-428D-B422-751C234CCF44", - "name": "currency-eur", - "codepoint": "F01AD", - "aliases": [ - "euro", - "euro-symbol" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Google" - }, - { - "id": "010841EE-1569-425A-9849-9FC6E4D05C3B", - "baseIconId": "94C667B3-E2EB-428D-B422-751C234CCF44", - "name": "currency-eur-off", - "codepoint": "F1315", - "aliases": [], - "styles": [ - "off" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7FFA202C-D65F-4F9C-AC9B-6A17AB4C611E", - "baseIconId": "7FFA202C-D65F-4F9C-AC9B-6A17AB4C611E", - "name": "currency-fra", - "codepoint": "F1A39", - "aliases": [], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Google" - }, - { - "id": "F9BD830F-EBB6-45A4-A576-0DEC27084A95", - "baseIconId": "F9BD830F-EBB6-45A4-A576-0DEC27084A95", - "name": "currency-gbp", - "codepoint": "F01AE", - "aliases": [ - "pound", - "sterling" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Google" - }, - { - "id": "A55AD931-CE89-49C0-9F1C-F699C422843C", - "baseIconId": "A55AD931-CE89-49C0-9F1C-F699C422843C", - "name": "currency-ils", - "codepoint": "F0C61", - "aliases": [], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Banking", - "Currency" - ], - "author": "Austin Andrews" - }, - { - "id": "AB8EAA72-9A34-4F87-937A-9A8FDEFA1FEF", - "baseIconId": "AB8EAA72-9A34-4F87-937A-9A8FDEFA1FEF", - "name": "currency-inr", - "codepoint": "F01AF", - "aliases": [ - "rupee" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Austin Andrews" - }, - { - "id": "639A8D4C-086C-4038-A569-F9387E851262", - "baseIconId": "639A8D4C-086C-4038-A569-F9387E851262", - "name": "currency-jpy", - "codepoint": "F07BC", - "aliases": [ - "yen" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Google" - }, - { - "id": "72750D9E-229F-4D77-B1CB-9C2C0FD12335", - "baseIconId": "72750D9E-229F-4D77-B1CB-9C2C0FD12335", - "name": "currency-krw", - "codepoint": "F07BD", - "aliases": [ - "won" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Haley Halcyon" - }, - { - "id": "FDA284E5-BF4A-47DC-B68F-255E07DB89CF", - "baseIconId": "FDA284E5-BF4A-47DC-B68F-255E07DB89CF", - "name": "currency-kzt", - "codepoint": "F0865", - "aliases": [ - "kazakhstani-tenge" - ], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Banking", - "Currency" - ], - "author": "Augustin Ursu" - }, - { - "id": "D0B20B31-ADBD-4F8A-9B72-52CC2FE4C3F4", - "baseIconId": "D0B20B31-ADBD-4F8A-9B72-52CC2FE4C3F4", - "name": "currency-mnt", - "codepoint": "F1512", - "aliases": [ - "currency-mongolian-tugrug" - ], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Colton Wiscombe" - }, - { - "id": "2F091499-4472-423E-A0C5-8C96CDDE1ABF", - "baseIconId": "2F091499-4472-423E-A0C5-8C96CDDE1ABF", - "name": "currency-ngn", - "codepoint": "F01B0", - "aliases": [ - "naira" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Austin Andrews" - }, - { - "id": "734CB783-C788-4F5E-BB90-BFBF4E3C22DC", - "baseIconId": "734CB783-C788-4F5E-BB90-BFBF4E3C22DC", - "name": "currency-php", - "codepoint": "F09E6", - "aliases": [ - "philippine-peso" - ], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Banking", - "Currency" - ], - "author": "Michael Richins" - }, - { - "id": "55D42287-2705-451B-B87A-91C23AF3A945", - "baseIconId": "55D42287-2705-451B-B87A-91C23AF3A945", - "name": "currency-rial", - "codepoint": "F0E9C", - "aliases": [ - "currency-riyal", - "currency-irr", - "currency-omr", - "currency-yer", - "currency-sar" - ], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Haley Halcyon" - }, - { - "id": "57057EA1-1BA7-49F3-A8C7-51AF633DED68", - "baseIconId": "57057EA1-1BA7-49F3-A8C7-51AF633DED68", - "name": "currency-rub", - "codepoint": "F01B1", - "aliases": [ - "ruble" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Google" - }, - { - "id": "4C5FB412-6649-4F26-A075-2865BAF41B5F", - "baseIconId": "4C5FB412-6649-4F26-A075-2865BAF41B5F", - "name": "currency-rupee", - "codepoint": "F1976", - "aliases": [ - "currency-npr", - "currency-pkr", - "currency-lkr", - "currency-inr" - ], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Banking", - "Currency" - ], - "author": "Google" - }, - { - "id": "17CFE8D4-18D7-4414-B8EE-244D5A8FF791", - "baseIconId": "17CFE8D4-18D7-4414-B8EE-244D5A8FF791", - "name": "currency-sign", - "codepoint": "F07BE", - "aliases": [ - "currency-scarab" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Michael Richins" - }, - { - "id": "F9875997-F68E-4AE3-9B85-E8DFB6E0D054", - "baseIconId": "F9875997-F68E-4AE3-9B85-E8DFB6E0D054", - "name": "currency-thb", - "codepoint": "F1C05", - "aliases": [ - "currency-thai-baht" - ], - "styles": [], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Michael Irigoyen" - }, - { - "id": "94DAFCB6-FA70-4DAE-B3DF-A107031F81E8", - "baseIconId": "94DAFCB6-FA70-4DAE-B3DF-A107031F81E8", - "name": "currency-try", - "codepoint": "F01B2", - "aliases": [ - "lira" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Google" - }, - { - "id": "E0103EBC-20BF-48EA-BC8F-BEF04BF2A581", - "baseIconId": "E0103EBC-20BF-48EA-BC8F-BEF04BF2A581", - "name": "currency-twd", - "codepoint": "F07BF", - "aliases": [ - "new-taiwan-dollar" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Haley Halcyon" - }, - { - "id": "F3A1F9C4-307D-40D8-A210-0ECFAC01BDCD", - "baseIconId": "F3A1F9C4-307D-40D8-A210-0ECFAC01BDCD", - "name": "currency-uah", - "codepoint": "F1B9B", - "aliases": [ - "currency-hryvnia", - "currency-ukraine" - ], - "styles": [], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Michael Irigoyen" - }, - { - "id": "3FA4946C-029B-42D3-AA31-3D607FB4A2F1", - "baseIconId": "3FA4946C-029B-42D3-AA31-3D607FB4A2F1", - "name": "currency-usd", - "codepoint": "F01C1", - "aliases": [ - "attach-money", - "dollar" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Google" - }, - { - "id": "5E9D35E4-9487-4A9B-9D4B-E1BBCA52AE0C", - "baseIconId": "3FA4946C-029B-42D3-AA31-3D607FB4A2F1", - "name": "currency-usd-off", - "codepoint": "F067A", - "aliases": [ - "money-off", - "dollar-off" - ], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Google" - }, - { - "id": "BB0EDAF7-B538-4DAA-8406-36470F472EA1", - "baseIconId": "BB0EDAF7-B538-4DAA-8406-36470F472EA1", - "name": "current-ac", - "codepoint": "F1480", - "aliases": [ - "alternating-current" - ], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "2A23AD1A-C4F1-47B1-B482-05836097CE51", - "baseIconId": "2A23AD1A-C4F1-47B1-B482-05836097CE51", - "name": "current-dc", - "codepoint": "F095C", - "aliases": [ - "direct-current" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Battery" - ], - "author": "Nick" - }, - { - "id": "2B463003-089D-47DE-97F7-434F16A4735B", - "baseIconId": "2B463003-089D-47DE-97F7-434F16A4735B", - "name": "cursor-default", - "codepoint": "F01C0", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "C5C0F16E-6D8B-49DB-8374-9B26C9E76B0D", - "baseIconId": "2B463003-089D-47DE-97F7-434F16A4735B", - "name": "cursor-default-click", - "codepoint": "F0CFD", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "CE0F1A1D-5BE5-48A7-9DF2-3021489E4937", - "baseIconId": "2B463003-089D-47DE-97F7-434F16A4735B", - "name": "cursor-default-click-outline", - "codepoint": "F0CFE", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "450BD54E-A467-41D8-B428-50779BB451C4", - "baseIconId": "2B463003-089D-47DE-97F7-434F16A4735B", - "name": "cursor-default-gesture", - "codepoint": "F1127", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "ABCE3774-DAC9-494D-99D3-1054160ECC7E", - "baseIconId": "2B463003-089D-47DE-97F7-434F16A4735B", - "name": "cursor-default-gesture-outline", - "codepoint": "F1128", - "aliases": [], - "styles": [ - "outline" - ], - "version": "4.3.95", - "deprecated": false, - "tags": [], - "author": "mchvn" - }, - { - "id": "E6A56AAF-22C5-4DAE-9E97-184501755DF5", - "baseIconId": "2B463003-089D-47DE-97F7-434F16A4735B", - "name": "cursor-default-outline", - "codepoint": "F01BF", - "aliases": [], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "EDAD5377-8923-4D6C-AC12-CBDC6C78DC7F", - "baseIconId": "EDAD5377-8923-4D6C-AC12-CBDC6C78DC7F", - "name": "cursor-move", - "codepoint": "F01BE", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "B5465B23-729A-405E-9155-486A36D8135F", - "baseIconId": "B5465B23-729A-405E-9155-486A36D8135F", - "name": "cursor-pointer", - "codepoint": "F01BD", - "aliases": [ - "cursor-hand" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "76C56C15-C2A3-4042-95C7-F143A3B58765", - "baseIconId": "76C56C15-C2A3-4042-95C7-F143A3B58765", - "name": "cursor-text", - "codepoint": "F05E7", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "8C3A8BC3-9144-4D24-A41D-BBE2B557BF51", - "baseIconId": "8C3A8BC3-9144-4D24-A41D-BBE2B557BF51", - "name": "curtains", - "codepoint": "F1846", - "aliases": [ - "drapes", - "window" - ], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Teodor Sandu" - }, - { - "id": "EB23B6A0-2021-405D-83F2-D69D9A5CF1CD", - "baseIconId": "8C3A8BC3-9144-4D24-A41D-BBE2B557BF51", - "name": "curtains-closed", - "codepoint": "F1847", - "aliases": [ - "drapes-closed", - "window-closed" - ], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Teodor Sandu" - }, - { - "id": "10ABF378-1E4C-479B-A99E-921605698123", - "baseIconId": "10ABF378-1E4C-479B-A99E-921605698123", - "name": "cylinder", - "codepoint": "F194E", - "aliases": [], - "styles": [], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Colton Wiscombe" - }, - { - "id": "0CD686F7-F7EF-416B-A74D-8FDC54EAB7BF", - "baseIconId": "10ABF378-1E4C-479B-A99E-921605698123", - "name": "cylinder-off", - "codepoint": "F194F", - "aliases": [], - "styles": [ - "off" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Colton Wiscombe" - }, - { - "id": "82D8E45B-5E04-4094-818B-DE18775F9A91", - "baseIconId": "82D8E45B-5E04-4094-818B-DE18775F9A91", - "name": "dance-ballroom", - "codepoint": "F15FB", - "aliases": [ - "human-dance-ballroom" - ], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Michael Irigoyen" - }, - { - "id": "45E2144E-5240-4557-B9A9-45DD7B514738", - "baseIconId": "45E2144E-5240-4557-B9A9-45DD7B514738", - "name": "dance-pole", - "codepoint": "F1578", - "aliases": [ - "kho-kho", - "human-dance-pole" - ], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Sport", - "People \/ Family" - ], - "author": "Haley Halcyon" - }, - { - "id": "7727E2AF-BD33-4C14-9FF4-6FA4BBA8594C", - "baseIconId": "7727E2AF-BD33-4C14-9FF4-6FA4BBA8594C", - "name": "data-matrix", - "codepoint": "F153C", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "David Kon\u00ed\u0159" - }, - { - "id": "7D6DC2D9-EDDF-4C82-AA10-CEC85C4DF7BF", - "baseIconId": "7727E2AF-BD33-4C14-9FF4-6FA4BBA8594C", - "name": "data-matrix-edit", - "codepoint": "F153D", - "aliases": [], - "styles": [ - "edit" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "David Kon\u00ed\u0159" - }, - { - "id": "EA63161B-B010-4BEC-A5B0-774C2007C0D0", - "baseIconId": "7727E2AF-BD33-4C14-9FF4-6FA4BBA8594C", - "name": "data-matrix-minus", - "codepoint": "F153E", - "aliases": [], - "styles": [ - "minus" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "David Kon\u00ed\u0159" - }, - { - "id": "0B183EEE-8B38-4B8E-A049-96AC93BCD1EA", - "baseIconId": "7727E2AF-BD33-4C14-9FF4-6FA4BBA8594C", - "name": "data-matrix-plus", - "codepoint": "F153F", - "aliases": [], - "styles": [ - "plus" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "David Kon\u00ed\u0159" - }, - { - "id": "0809BEAA-8884-4116-B319-9AD6C11A86BE", - "baseIconId": "7727E2AF-BD33-4C14-9FF4-6FA4BBA8594C", - "name": "data-matrix-remove", - "codepoint": "F1540", - "aliases": [], - "styles": [ - "remove" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "David Kon\u00ed\u0159" - }, - { - "id": "8B555E52-AD00-4ECF-8533-02D9AC92E7F5", - "baseIconId": "7727E2AF-BD33-4C14-9FF4-6FA4BBA8594C", - "name": "data-matrix-scan", - "codepoint": "F1541", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "David Kon\u00ed\u0159" - }, - { - "id": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database", - "codepoint": "F01BC", - "aliases": [ - "storage" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Geographic Information System", - "Database" - ], - "author": "Simran" - }, - { - "id": "7B3AB47E-C134-4AE9-82A2-DD0F95D6EF3F", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-alert", - "codepoint": "F163A", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database", - "Alert \/ Error" - ], - "author": "Colton Wiscombe" - }, - { - "id": "27B8C966-DE22-4B45-99A6-5CF769BECD07", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-alert-outline", - "codepoint": "F1624", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database", - "Alert \/ Error" - ], - "author": "Colton Wiscombe" - }, - { - "id": "82BC4255-42E2-4B69-ADE4-A3519DE84E22", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-arrow-down", - "codepoint": "F163B", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Colton Wiscombe" - }, - { - "id": "8A490A09-A803-4333-BB10-5758643AD4F4", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-arrow-down-outline", - "codepoint": "F1625", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Colton Wiscombe" - }, - { - "id": "FB778AE2-E52D-4C2A-BEF7-C48A805F8A57", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-arrow-left", - "codepoint": "F163C", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Colton Wiscombe" - }, - { - "id": "A51D37EB-0B92-4F4A-8402-E0C33825D05B", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-arrow-left-outline", - "codepoint": "F1626", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Colton Wiscombe" - }, - { - "id": "AE5DDB91-CE2C-4EE3-8247-E4818F488EE0", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-arrow-right", - "codepoint": "F163D", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Colton Wiscombe" - }, - { - "id": "097A9369-2179-49DB-891C-5A61C88A985C", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-arrow-right-outline", - "codepoint": "F1627", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Colton Wiscombe" - }, - { - "id": "EC1BF4CB-2B6B-4B69-96E6-599E77D02885", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-arrow-up", - "codepoint": "F163E", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Colton Wiscombe" - }, - { - "id": "2E041168-F122-45CC-84AD-2A05428C211A", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-arrow-up-outline", - "codepoint": "F1628", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Colton Wiscombe" - }, - { - "id": "C241F52F-EA70-4784-9455-AA7D05663C90", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-check", - "codepoint": "F0AA9", - "aliases": [ - "database-tick" - ], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Geographic Information System", - "Database" - ], - "author": "Andrew Nenakhov" - }, - { - "id": "1B7F6C62-E464-42F6-B7C0-CDD637A520F6", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-check-outline", - "codepoint": "F1629", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Colton Wiscombe" - }, - { - "id": "1401D168-E1ED-403A-9154-F89133195BF9", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-clock", - "codepoint": "F163F", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database", - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "093C4D34-DC23-4FE7-9AD0-05FCFFBB41A6", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-clock-outline", - "codepoint": "F162A", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database", - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "2D941DD1-7B07-4E4B-B164-42AF6F751D34", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-cog", - "codepoint": "F164B", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database", - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "A15AD70B-D874-46B1-BD26-2A5627DBF201", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-cog-outline", - "codepoint": "F164C", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database", - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "A9C5BB4C-C89F-4ADE-80C2-FB39A942DE6A", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-edit", - "codepoint": "F0B86", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Edit \/ Modify", - "Geographic Information System", - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "6428E607-E036-481B-AF42-B09894C68E19", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-edit-outline", - "codepoint": "F162B", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database", - "Edit \/ Modify" - ], - "author": "Colton Wiscombe" - }, - { - "id": "6E50F0F8-1116-4090-9468-54B2CE8FBB19", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-export", - "codepoint": "F095E", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Geographic Information System", - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "E620893F-9644-4E75-8904-C81B85B6D58D", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-export-outline", - "codepoint": "F162C", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Colton Wiscombe" - }, - { - "id": "E08D8382-BE58-41F4-B00C-4B6926C1F550", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-eye", - "codepoint": "F191F", - "aliases": [ - "database-view" - ], - "styles": [ - "variant" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B2F93B0D-CC43-4DA0-A01F-778FA9982235", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-eye-off", - "codepoint": "F1920", - "aliases": [ - "database-view-off" - ], - "styles": [ - "off", - "variant" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F80F0F20-77A0-426B-9354-D6F5C2B77473", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-eye-off-outline", - "codepoint": "F1921", - "aliases": [ - "database-view-off-outline" - ], - "styles": [ - "off", - "outline", - "variant" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Irigoyen" - }, - { - "id": "67DAC11C-DFB0-40C7-B8CF-26A41469DD80", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-eye-outline", - "codepoint": "F1922", - "aliases": [ - "database-view-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Irigoyen" - }, - { - "id": "733A4C8A-FAA5-42BE-882E-98EC734E8493", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-import", - "codepoint": "F095D", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Geographic Information System", - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "4D0E6B34-7EAB-4EC4-9782-F2318139A3E2", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-import-outline", - "codepoint": "F162D", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Colton Wiscombe" - }, - { - "id": "3A6B098D-F7AD-4D2C-A039-201319B5FDD7", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-lock", - "codepoint": "F0AAA", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Lock", - "Geographic Information System", - "Database" - ], - "author": "Andrew Nenakhov" - }, - { - "id": "A03B26F4-54BB-4E3D-B4E7-EAFE3351A6BA", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-lock-outline", - "codepoint": "F162E", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database", - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "91AD02DB-7EBD-4B39-AACB-8037B50728AC", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-marker", - "codepoint": "F12F6", - "aliases": [ - "database-location" - ], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Geographic Information System", - "Database", - "Navigation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "163262B4-672A-4194-B002-3F414DF6C7A5", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-marker-outline", - "codepoint": "F162F", - "aliases": [ - "database-location-outline" - ], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database", - "Navigation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "31CE0431-ABF2-4650-8439-515C0E9012CD", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-minus", - "codepoint": "F01BB", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Geographic Information System", - "Database" - ], - "author": "Simran" - }, - { - "id": "96D5DD75-E7C1-444F-AD36-AB601BB9C504", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-minus-outline", - "codepoint": "F1630", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Colton Wiscombe" - }, - { - "id": "5E0B7DCE-B912-4789-A0F9-86DBA5D27DBE", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-off", - "codepoint": "F1640", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Colton Wiscombe" - }, - { - "id": "4DD86D39-4EC5-44BD-BA05-AA763999E390", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-off-outline", - "codepoint": "F1631", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Colton Wiscombe" - }, - { - "id": "76AAFFAC-C2C7-4375-A175-765848BF08AA", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-outline", - "codepoint": "F1632", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Colton Wiscombe" - }, - { - "id": "940D2514-B309-4CE0-A2E4-D02121415CA3", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-plus", - "codepoint": "F01BA", - "aliases": [ - "database-add" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Geographic Information System", - "Database" - ], - "author": "Simran" - }, - { - "id": "2250D162-41A7-4852-B3E2-555180A5A57C", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-plus-outline", - "codepoint": "F1633", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Colton Wiscombe" - }, - { - "id": "C43C676A-F2BE-489A-8613-BE6EF651F0AC", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-refresh", - "codepoint": "F05C2", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "03B12B1B-7AF3-42C7-89CA-482DC21F12CE", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-refresh-outline", - "codepoint": "F1634", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Colton Wiscombe" - }, - { - "id": "20B59D03-2EF5-4C5D-BB00-2CC611297AC0", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-remove", - "codepoint": "F0D00", - "aliases": [], - "styles": [ - "remove" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Geographic Information System", - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "32FBEA36-9F09-4D8D-A355-2DD6FB2AA837", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-remove-outline", - "codepoint": "F1635", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Colton Wiscombe" - }, - { - "id": "58E36A40-053B-42EB-8879-9CB0948B58D4", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-search", - "codepoint": "F0866", - "aliases": [ - "sql-query" - ], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Geographic Information System", - "Database" - ], - "author": "GreenTurtwig" - }, - { - "id": "EFAB71E6-7F67-40B9-B388-0B4AFFC6B799", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-search-outline", - "codepoint": "F1636", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Colton Wiscombe" - }, - { - "id": "CBD96BE0-807C-4102-AC0B-AEFFE4D322F7", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-settings", - "codepoint": "F0D01", - "aliases": [], - "styles": [ - "settings" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Settings", - "Geographic Information System", - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "9AB5AF13-E028-49FA-B81E-EFFF8A8EB144", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-settings-outline", - "codepoint": "F1637", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database", - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "5E954303-C1CF-406B-A9B5-A72E5C25E499", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-sync", - "codepoint": "F0CFF", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Geographic Information System", - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "9E1F0B0A-332A-473D-8CA2-DD30E03E76B9", - "baseIconId": "C8FC48A7-AE19-4BD8-B57E-14B76D93937B", - "name": "database-sync-outline", - "codepoint": "F1638", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Colton Wiscombe" - }, - { - "id": "309A4ABA-E450-437D-8AD1-EE6A850D421B", - "baseIconId": "309A4ABA-E450-437D-8AD1-EE6A850D421B", - "name": "death-star", - "codepoint": "F08D8", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "51D35A62-F308-48B6-B471-D58CFE4CD6BC", - "baseIconId": "309A4ABA-E450-437D-8AD1-EE6A850D421B", - "name": "death-star-variant", - "codepoint": "F08D9", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "BC446853-45C9-4374-8980-579BCD93355A", - "baseIconId": "BC446853-45C9-4374-8980-579BCD93355A", - "name": "deathly-hallows", - "codepoint": "F0B87", - "aliases": [ - "harry-potter" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "250883A1-65B8-4092-9B92-C9BD810ADB5A", - "baseIconId": "250883A1-65B8-4092-9B92-C9BD810ADB5A", - "name": "debian", - "codepoint": "F08DA", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "316468B3-C3F6-4A7B-B7B2-061E5C35FFE9", - "baseIconId": "316468B3-C3F6-4A7B-B7B2-061E5C35FFE9", - "name": "debug-step-into", - "codepoint": "F01B9", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "08B9B3C7-BB6B-4110-ACEC-3BB947FFCFBA", - "baseIconId": "08B9B3C7-BB6B-4110-ACEC-3BB947FFCFBA", - "name": "debug-step-out", - "codepoint": "F01B8", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "8242E7C8-1400-476D-AC27-DCA7B6292C70", - "baseIconId": "8242E7C8-1400-476D-AC27-DCA7B6292C70", - "name": "debug-step-over", - "codepoint": "F01B7", - "aliases": [ - "skip", - "jump" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "DA734DBD-1239-4E30-B688-ADF6A9D222D0", - "baseIconId": "DA734DBD-1239-4E30-B688-ADF6A9D222D0", - "name": "decagram", - "codepoint": "F076C", - "aliases": [ - "starburst" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Austin Andrews" - }, - { - "id": "5F4B9A38-F090-4FA3-A138-1F758A9D446E", - "baseIconId": "DA734DBD-1239-4E30-B688-ADF6A9D222D0", - "name": "decagram-outline", - "codepoint": "F076D", - "aliases": [ - "starburst-outline" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Austin Andrews" - }, - { - "id": "4A055D0D-18CA-45D9-96E1-B25448138888", - "baseIconId": "4A055D0D-18CA-45D9-96E1-B25448138888", - "name": "decimal", - "codepoint": "F10A1", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Richins" - }, - { - "id": "A8C5A79A-EA59-4AA8-B432-98F66AFDAFD3", - "baseIconId": "A8C5A79A-EA59-4AA8-B432-98F66AFDAFD3", - "name": "decimal-comma", - "codepoint": "F10A2", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Richins" - }, - { - "id": "E9237D99-5BD3-434A-B574-97C60B544EE1", - "baseIconId": "E9237D99-5BD3-434A-B574-97C60B544EE1", - "name": "decimal-comma-decrease", - "codepoint": "F10A3", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Richins" - }, - { - "id": "3B4E5DF0-02B3-469D-9C6E-754683655184", - "baseIconId": "3B4E5DF0-02B3-469D-9C6E-754683655184", - "name": "decimal-comma-increase", - "codepoint": "F10A4", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Richins" - }, - { - "id": "3A6FCF00-DE3C-4CD7-BF06-1D26E37E0C47", - "baseIconId": "3A6FCF00-DE3C-4CD7-BF06-1D26E37E0C47", - "name": "decimal-decrease", - "codepoint": "F01B6", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Simran" - }, - { - "id": "E99CB4D3-330D-493C-9C6B-FD43B27522FD", - "baseIconId": "E99CB4D3-330D-493C-9C6B-FD43B27522FD", - "name": "decimal-increase", - "codepoint": "F01B5", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Simran" - }, - { - "id": "71CD492D-A1E8-4A7A-961A-51DA30952BAD", - "baseIconId": "71CD492D-A1E8-4A7A-961A-51DA30952BAD", - "name": "delete", - "codepoint": "F01B4", - "aliases": [ - "trash", - "bin", - "rubbish", - "garbage", - "rubbish-bin", - "trash-can", - "garbage-can" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "2FF4634B-095D-4827-9735-E345A46FC488", - "baseIconId": "71CD492D-A1E8-4A7A-961A-51DA30952BAD", - "name": "delete-alert", - "codepoint": "F10A5", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "idevo89" - }, - { - "id": "CFE12054-7E04-4144-B0CA-0DA9FE494E82", - "baseIconId": "71CD492D-A1E8-4A7A-961A-51DA30952BAD", - "name": "delete-alert-outline", - "codepoint": "F10A6", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "idevo89" - }, - { - "id": "1158F80B-E934-4E74-A4C6-7750BDCC409E", - "baseIconId": "71CD492D-A1E8-4A7A-961A-51DA30952BAD", - "name": "delete-circle", - "codepoint": "F0683", - "aliases": [ - "trash-circle", - "bin-circle", - "garbage-can-circle", - "garbage-circle", - "rubbish-bin-circle", - "rubbish-circle", - "trash-can-circle" - ], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "854068FB-F9DA-40B4-A427-F2317075CD95", - "baseIconId": "71CD492D-A1E8-4A7A-961A-51DA30952BAD", - "name": "delete-circle-outline", - "codepoint": "F0B88", - "aliases": [ - "bin-circle-outline", - "garbage-can-circle-outline", - "garbage-circle-outline", - "rubbish-bin-circle-outline", - "rubbish-circle-outline", - "trash-can-circle-outline", - "trash-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "TheChilliPL" - }, - { - "id": "3B615510-4D78-4743-9FB0-A3D45F267B04", - "baseIconId": "71CD492D-A1E8-4A7A-961A-51DA30952BAD", - "name": "delete-clock", - "codepoint": "F1556", - "aliases": [], - "styles": [ - "clock" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "CoreyVidal" - }, - { - "id": "7544FA9D-AFFB-4038-8D9F-FEE3EB918342", - "baseIconId": "71CD492D-A1E8-4A7A-961A-51DA30952BAD", - "name": "delete-clock-outline", - "codepoint": "F1557", - "aliases": [], - "styles": [ - "clock", - "outline" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "CoreyVidal" - }, - { - "id": "E39FB607-9058-4C00-840C-AF666F372071", - "baseIconId": "71CD492D-A1E8-4A7A-961A-51DA30952BAD", - "name": "delete-empty", - "codepoint": "F06CC", - "aliases": [ - "trash-empty", - "bin-empty", - "rubbish-empty", - "rubbish-bin-empty", - "trash-can-empty", - "garbage-empty", - "garbage-can-empty" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "69108916-6CE9-456A-A1BE-9113F49B425E", - "baseIconId": "71CD492D-A1E8-4A7A-961A-51DA30952BAD", - "name": "delete-empty-outline", - "codepoint": "F0E9D", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "52AFD546-8C5D-4E77-8D83-D4D058A742FE", - "baseIconId": "71CD492D-A1E8-4A7A-961A-51DA30952BAD", - "name": "delete-forever", - "codepoint": "F05E8", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "103DF12F-6279-4967-8BF8-F72ED139E8E7", - "baseIconId": "71CD492D-A1E8-4A7A-961A-51DA30952BAD", - "name": "delete-forever-outline", - "codepoint": "F0B89", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "C0E55306-EBD8-46D9-BF50-7285DC72D4B7", - "baseIconId": "71CD492D-A1E8-4A7A-961A-51DA30952BAD", - "name": "delete-off", - "codepoint": "F10A7", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [], - "author": "idevo89" - }, - { - "id": "4D2C0D3A-46A6-42B9-974E-F1B677C61D21", - "baseIconId": "71CD492D-A1E8-4A7A-961A-51DA30952BAD", - "name": "delete-off-outline", - "codepoint": "F10A8", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [], - "author": "idevo89" - }, - { - "id": "59ADF7EF-9F3E-4957-A789-95788D13B9E4", - "baseIconId": "71CD492D-A1E8-4A7A-961A-51DA30952BAD", - "name": "delete-outline", - "codepoint": "F09E7", - "aliases": [ - "garbage-outline", - "bin-outline", - "rubbish-outline", - "garbage-can-outline", - "rubbish-bin-outline", - "trash-outline", - "trash-can-outline" - ], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "7837B9B7-2A6F-42E3-894D-C40D0080FB7B", - "baseIconId": "71CD492D-A1E8-4A7A-961A-51DA30952BAD", - "name": "delete-restore", - "codepoint": "F0819", - "aliases": [ - "trash-restore", - "bin-restore", - "restore-from-trash" - ], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "3B3D514C-AFC3-4D04-91EA-E18F03BB494A", - "baseIconId": "71CD492D-A1E8-4A7A-961A-51DA30952BAD", - "name": "delete-sweep", - "codepoint": "F05E9", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "18C79874-01B2-4A65-AD4E-B8600C3F3ADD", - "baseIconId": "71CD492D-A1E8-4A7A-961A-51DA30952BAD", - "name": "delete-sweep-outline", - "codepoint": "F0C62", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "DC3862AC-6945-4104-9F15-50BD46D13705", - "baseIconId": "71CD492D-A1E8-4A7A-961A-51DA30952BAD", - "name": "delete-variant", - "codepoint": "F01B3", - "aliases": [ - "trash-variant", - "bin-variant", - "cup-ice", - "drink-ice" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "D4B29470-8EE3-4ED8-BB01-6C942CE7E748", - "baseIconId": "D4B29470-8EE3-4ED8-BB01-6C942CE7E748", - "name": "delta", - "codepoint": "F01C2", - "aliases": [ - "change-history" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math", - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "35E2D33D-B4A8-4E12-B844-8EC1172F15A9", - "baseIconId": "35E2D33D-B4A8-4E12-B844-8EC1172F15A9", - "name": "desk", - "codepoint": "F1239", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "Gabriel Grant" - }, - { - "id": "80459D13-2662-4F47-AB31-F6A2B84C8DEB", - "baseIconId": "80459D13-2662-4F47-AB31-F6A2B84C8DEB", - "name": "desk-lamp", - "codepoint": "F095F", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Contributors" - }, - { - "id": "3CC7EBFA-A595-4E15-8ACF-7C43267B162C", - "baseIconId": "80459D13-2662-4F47-AB31-F6A2B84C8DEB", - "name": "desk-lamp-off", - "codepoint": "F1B1F", - "aliases": [], - "styles": [ - "off" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C5747413-9B53-48DD-8B30-A2C861EFC675", - "baseIconId": "80459D13-2662-4F47-AB31-F6A2B84C8DEB", - "name": "desk-lamp-on", - "codepoint": "F1B20", - "aliases": [], - "styles": [ - "variant" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C05777DC-F874-4231-B9EB-5675C808F7BB", - "baseIconId": "C05777DC-F874-4231-B9EB-5675C808F7BB", - "name": "deskphone", - "codepoint": "F01C3", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Device \/ Tech" - ], - "author": "Chris Litherland" - }, - { - "id": "40B89929-0709-461F-8C7A-ED94CDDCC4AC", - "baseIconId": "40B89929-0709-461F-8C7A-ED94CDDCC4AC", - "name": "desktop-classic", - "codepoint": "F07C0", - "aliases": [ - "computer-classic" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Device \/ Tech", - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "362BCE24-8F91-491A-8EE8-BD08C296511A", - "baseIconId": "362BCE24-8F91-491A-8EE8-BD08C296511A", - "name": "desktop-tower", - "codepoint": "F01C5", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Device \/ Tech", - "Home Automation" - ], - "author": "Chris Litherland" - }, - { - "id": "D7BED84E-B592-46F0-8A5B-DD8677088837", - "baseIconId": "D7BED84E-B592-46F0-8A5B-DD8677088837", - "name": "desktop-tower-monitor", - "codepoint": "F0AAB", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "SarinManS" - }, - { - "id": "21A2819F-3B97-49D0-A588-30CF7B8915F5", - "baseIconId": "21A2819F-3B97-49D0-A588-30CF7B8915F5", - "name": "details", - "codepoint": "F01C6", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "D3E5B7D2-2301-4D35-A95E-1C1B0A6C9224", - "baseIconId": "D3E5B7D2-2301-4D35-A95E-1C1B0A6C9224", - "name": "dev-to", - "codepoint": "F0D6E", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "7D1C43A0-CDE0-416B-A1A9-1CD07F930284", - "baseIconId": "7D1C43A0-CDE0-416B-A1A9-1CD07F930284", - "name": "developer-board", - "codepoint": "F0697", - "aliases": [], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "ECD72042-9BA7-4C24-A740-7F538B443302", - "baseIconId": "ECD72042-9BA7-4C24-A740-7F538B443302", - "name": "deviantart", - "codepoint": "F01C7", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "D8990892-9C02-46AC-9A91-3D4D9A2EFF19", - "baseIconId": "D8990892-9C02-46AC-9A91-3D4D9A2EFF19", - "name": "devices", - "codepoint": "F0FB0", - "aliases": [ - "monitor", - "watch", - "smartwatch", - "smartphone", - "cellphone", - "television" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Device \/ Tech", - "Home Automation", - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "18A94F7F-1BC5-48EC-9CAF-6D2D663287DC", - "baseIconId": "18A94F7F-1BC5-48EC-9CAF-6D2D663287DC", - "name": "dharmachakra", - "codepoint": "F094B", - "aliases": [ - "dharma-wheel", - "religion-buddhist", - "buddhism" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Religion" - ], - "author": "Nick" - }, - { - "id": "B0973EC9-B27B-4666-8E9E-C766A601BB0A", - "baseIconId": "B0973EC9-B27B-4666-8E9E-C766A601BB0A", - "name": "diabetes", - "codepoint": "F1126", - "aliases": [ - "hand-blood" - ], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Michael Richins" - }, - { - "id": "B732FAD7-93A7-478E-810F-835069DE6EDB", - "baseIconId": "B732FAD7-93A7-478E-810F-835069DE6EDB", - "name": "dialpad", - "codepoint": "F061C", - "aliases": [ - "keypad" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "64CBC510-072A-477D-99DD-F8114E7E312E", - "baseIconId": "64CBC510-072A-477D-99DD-F8114E7E312E", - "name": "diameter", - "codepoint": "F0C63", - "aliases": [ - "circle-diameter", - "sphere-diameter" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Richins" - }, - { - "id": "ABE01F05-E04E-4C5F-8F70-F8A9DB484E89", - "baseIconId": "64CBC510-072A-477D-99DD-F8114E7E312E", - "name": "diameter-outline", - "codepoint": "F0C64", - "aliases": [ - "circle-diameter-outline", - "sphere-diameter-outline" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Richins" - }, - { - "id": "B1744A41-3289-4535-81F8-E23617C701FE", - "baseIconId": "64CBC510-072A-477D-99DD-F8114E7E312E", - "name": "diameter-variant", - "codepoint": "F0C65", - "aliases": [ - "circle-diameter-variant", - "sphere-diameter-variant" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Richins" - }, - { - "id": "BC337E6C-8077-4D79-9596-6B9EDDA6DE0D", - "baseIconId": "BC337E6C-8077-4D79-9596-6B9EDDA6DE0D", - "name": "diamond", - "codepoint": "F0B8A", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "4D922F91-E62D-42BB-86E4-BE8A96BC2B80", - "baseIconId": "BC337E6C-8077-4D79-9596-6B9EDDA6DE0D", - "name": "diamond-outline", - "codepoint": "F0B8B", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "7AEA1B64-9B6D-4D55-91F8-05BA1BF3BF89", - "baseIconId": "BC337E6C-8077-4D79-9596-6B9EDDA6DE0D", - "name": "diamond-stone", - "codepoint": "F01C8", - "aliases": [ - "jewel" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "F8E5E9B6-9953-46F8-84DC-CFBB11DEFFB7", - "baseIconId": "F8E5E9B6-9953-46F8-84DC-CFBB11DEFFB7", - "name": "dice-1", - "codepoint": "F01CA", - "aliases": [ - "die-1", - "dice-one" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Yasmina Lembachar" - }, - { - "id": "430F434F-E5F5-4D54-97B0-F6D1CE844365", - "baseIconId": "F8E5E9B6-9953-46F8-84DC-CFBB11DEFFB7", - "name": "dice-1-outline", - "codepoint": "F114A", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "07927207-23B1-4A93-BB8A-E6B5F41B919A", - "baseIconId": "07927207-23B1-4A93-BB8A-E6B5F41B919A", - "name": "dice-2", - "codepoint": "F01CB", - "aliases": [ - "die-2", - "dice-two" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Yasmina Lembachar" - }, - { - "id": "BA4A2CA9-22E9-450E-B8CA-99A8ED5E0A1B", - "baseIconId": "07927207-23B1-4A93-BB8A-E6B5F41B919A", - "name": "dice-2-outline", - "codepoint": "F114B", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2948109E-F9DA-4306-8247-665CC05BDB21", - "baseIconId": "2948109E-F9DA-4306-8247-665CC05BDB21", - "name": "dice-3", - "codepoint": "F01CC", - "aliases": [ - "die-3", - "dice-three" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Yasmina Lembachar" - }, - { - "id": "D4689BAD-0911-4832-9A8E-AD334D834773", - "baseIconId": "2948109E-F9DA-4306-8247-665CC05BDB21", - "name": "dice-3-outline", - "codepoint": "F114C", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F7FA1307-CC98-4B93-B42A-533F1F6E851C", - "baseIconId": "F7FA1307-CC98-4B93-B42A-533F1F6E851C", - "name": "dice-4", - "codepoint": "F01CD", - "aliases": [ - "die-4", - "dice-four" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Yasmina Lembachar" - }, - { - "id": "A24BDBB1-DF5E-4022-8AF0-3D4989B0F2EE", - "baseIconId": "F7FA1307-CC98-4B93-B42A-533F1F6E851C", - "name": "dice-4-outline", - "codepoint": "F114D", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9B9F7FE0-5AA9-4B5F-B865-D7F21C1382AF", - "baseIconId": "9B9F7FE0-5AA9-4B5F-B865-D7F21C1382AF", - "name": "dice-5", - "codepoint": "F01CE", - "aliases": [ - "die-5", - "dice-five" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Yasmina Lembachar" - }, - { - "id": "07A26D74-6460-4AD8-9470-E4E0A39E9DAB", - "baseIconId": "9B9F7FE0-5AA9-4B5F-B865-D7F21C1382AF", - "name": "dice-5-outline", - "codepoint": "F114E", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "015F173B-CA59-4125-8F19-925ED108BE07", - "baseIconId": "015F173B-CA59-4125-8F19-925ED108BE07", - "name": "dice-6", - "codepoint": "F01CF", - "aliases": [ - "die-6", - "dice-six" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Yasmina Lembachar" - }, - { - "id": "359B124F-4377-4580-9C7C-494539D087DB", - "baseIconId": "015F173B-CA59-4125-8F19-925ED108BE07", - "name": "dice-6-outline", - "codepoint": "F114F", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F80FBAEF-6EE5-4F02-AAA8-7E3FBA618708", - "baseIconId": "F80FBAEF-6EE5-4F02-AAA8-7E3FBA618708", - "name": "dice-d10", - "codepoint": "F1153", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "47BB1E5C-0CCD-4A50-B1EF-2437411217C0", - "baseIconId": "F80FBAEF-6EE5-4F02-AAA8-7E3FBA618708", - "name": "dice-d10-outline", - "codepoint": "F076F", - "aliases": [ - "die-d10" - ], - "styles": [ - "outline" - ], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "87285D65-197B-46D6-BAD6-F9EE53DD5F28", - "baseIconId": "87285D65-197B-46D6-BAD6-F9EE53DD5F28", - "name": "dice-d12", - "codepoint": "F1154", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E27CCA75-CE3E-4C7D-81AA-D3A1391A819E", - "baseIconId": "87285D65-197B-46D6-BAD6-F9EE53DD5F28", - "name": "dice-d12-outline", - "codepoint": "F0867", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Richins" - }, - { - "id": "948F2639-1E9E-478F-BCC9-4EC7147F8616", - "baseIconId": "948F2639-1E9E-478F-BCC9-4EC7147F8616", - "name": "dice-d20", - "codepoint": "F1155", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "926FAA94-AB58-44AA-916C-66AF56A5BCCF", - "baseIconId": "948F2639-1E9E-478F-BCC9-4EC7147F8616", - "name": "dice-d20-outline", - "codepoint": "F05EA", - "aliases": [ - "die-d20" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "876805AB-7EC6-4CD8-A9D4-17213004A83A", - "baseIconId": "876805AB-7EC6-4CD8-A9D4-17213004A83A", - "name": "dice-d4", - "codepoint": "F1150", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DCC141FA-CA87-48E1-969D-BB010C973DD5", - "baseIconId": "876805AB-7EC6-4CD8-A9D4-17213004A83A", - "name": "dice-d4-outline", - "codepoint": "F05EB", - "aliases": [ - "die-d4" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "A62117B1-58C5-4A44-B6B1-C6E1DCEB7E00", - "baseIconId": "A62117B1-58C5-4A44-B6B1-C6E1DCEB7E00", - "name": "dice-d6", - "codepoint": "F1151", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A0F00FDF-6648-475B-819B-29E4C0769FFA", - "baseIconId": "A62117B1-58C5-4A44-B6B1-C6E1DCEB7E00", - "name": "dice-d6-outline", - "codepoint": "F05ED", - "aliases": [ - "die-d6" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "5EA075B9-0455-42DA-AB57-47BAFADF0160", - "baseIconId": "5EA075B9-0455-42DA-AB57-47BAFADF0160", - "name": "dice-d8", - "codepoint": "F1152", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "64967BE6-CAAF-4F28-BF55-C5451D4E8B94", - "baseIconId": "5EA075B9-0455-42DA-AB57-47BAFADF0160", - "name": "dice-d8-outline", - "codepoint": "F05EC", - "aliases": [ - "die-d8" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "8C9D5084-1B34-4AB9-BE23-E44B03AE85E5", - "baseIconId": "8C9D5084-1B34-4AB9-BE23-E44B03AE85E5", - "name": "dice-multiple", - "codepoint": "F076E", - "aliases": [ - "die-multiple" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Richins" - }, - { - "id": "4F078165-F841-4013-B24C-4FA639C7F708", - "baseIconId": "8C9D5084-1B34-4AB9-BE23-E44B03AE85E5", - "name": "dice-multiple-outline", - "codepoint": "F1156", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "58BA7D31-6B34-46E6-B325-080C95B32A6F", - "baseIconId": "58BA7D31-6B34-46E6-B325-080C95B32A6F", - "name": "digital-ocean", - "codepoint": "F1237", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Michael Richins" - }, - { - "id": "2356EE38-11BE-44B1-BAD9-D74ECE86F8E7", - "baseIconId": "2356EE38-11BE-44B1-BAD9-D74ECE86F8E7", - "name": "dip-switch", - "codepoint": "F07C1", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "4C84603B-BEB6-4282-B6CE-D9AD3C098627", - "baseIconId": "4C84603B-BEB6-4282-B6CE-D9AD3C098627", - "name": "directions", - "codepoint": "F01D0", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "8F53DAC3-E72D-473E-ABD1-AC1849EB660A", - "baseIconId": "8F53DAC3-E72D-473E-ABD1-AC1849EB660A", - "name": "directions-fork", - "codepoint": "F0641", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "95CEA0DD-5123-4FFA-B906-E6C55766030D", - "baseIconId": "95CEA0DD-5123-4FFA-B906-E6C55766030D", - "name": "disc", - "codepoint": "F05EE", - "aliases": [ - "cd-rom", - "dvd" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Simran" - }, - { - "id": "63A41E0F-CCDB-42F8-848B-F64AA94F9BDF", - "baseIconId": "95CEA0DD-5123-4FFA-B906-E6C55766030D", - "name": "disc-alert", - "codepoint": "F01D1", - "aliases": [ - "disc-full", - "disc-warning" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Google" - }, - { - "id": "DA84CDD7-3881-4DE0-8CEB-51F1BD086A3A", - "baseIconId": "DA84CDD7-3881-4DE0-8CEB-51F1BD086A3A", - "name": "disc-player", - "codepoint": "F0960", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Home Automation", - "Device \/ Tech" - ], - "author": "Austin Andrews" - }, - { - "id": "41CB517E-41F5-47D4-A8A2-E9512CB065DD", - "baseIconId": "41CB517E-41F5-47D4-A8A2-E9512CB065DD", - "name": "dishwasher", - "codepoint": "F0AAC", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "A72D6C1A-A953-4F9B-BD38-0E0ACF1A6C58", - "baseIconId": "41CB517E-41F5-47D4-A8A2-E9512CB065DD", - "name": "dishwasher-alert", - "codepoint": "F11B8", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5BB3E0C6-278F-4008-8327-0124D7A209A6", - "baseIconId": "41CB517E-41F5-47D4-A8A2-E9512CB065DD", - "name": "dishwasher-off", - "codepoint": "F11B9", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "28670432-3B76-43FC-B879-558B338F1E1F", - "baseIconId": "28670432-3B76-43FC-B879-558B338F1E1F", - "name": "disqus", - "codepoint": "F01D2", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "BA55B495-6775-4070-9ADC-FF56EB8E067D", - "baseIconId": "BA55B495-6775-4070-9ADC-FF56EB8E067D", - "name": "distribute-horizontal-center", - "codepoint": "F11C9", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "22C7EA3A-483D-4BFD-A115-42F86F164135", - "baseIconId": "22C7EA3A-483D-4BFD-A115-42F86F164135", - "name": "distribute-horizontal-left", - "codepoint": "F11C8", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "771135B5-F856-4AAE-9FD1-8F728964DE2F", - "baseIconId": "771135B5-F856-4AAE-9FD1-8F728964DE2F", - "name": "distribute-horizontal-right", - "codepoint": "F11CA", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "DDF54E4F-65E8-407A-961F-5B02A3A0DC37", - "baseIconId": "DDF54E4F-65E8-407A-961F-5B02A3A0DC37", - "name": "distribute-vertical-bottom", - "codepoint": "F11CB", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "35AAECBA-CF24-4DCC-99F0-20D9CB21B58B", - "baseIconId": "35AAECBA-CF24-4DCC-99F0-20D9CB21B58B", - "name": "distribute-vertical-center", - "codepoint": "F11CC", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "F1C73D50-8C76-4269-8CBB-D232C55BD100", - "baseIconId": "F1C73D50-8C76-4269-8CBB-D232C55BD100", - "name": "distribute-vertical-top", - "codepoint": "F11CD", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "A951E9F9-30A8-4B95-AAFC-1B926A4F1E17", - "baseIconId": "A951E9F9-30A8-4B95-AAFC-1B926A4F1E17", - "name": "diversify", - "codepoint": "F1877", - "aliases": [], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "813D489B-3127-4F32-9D6E-4BB8A6F51605", - "baseIconId": "813D489B-3127-4F32-9D6E-4BB8A6F51605", - "name": "diving", - "codepoint": "F1977", - "aliases": [ - "swim-dive", - "human-diving" - ], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Sport", - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "B57B062B-66A2-4F90-85A3-97446E1934D2", - "baseIconId": "227F84AF-3BC0-4C9D-BADB-DC8B1A110ED8", - "name": "diving-flippers", - "codepoint": "F0DBF", - "aliases": [], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Michael Richins" - }, - { - "id": "4732B7F8-F8EF-4E5A-A889-BA5770B1B4FF", - "baseIconId": "227F84AF-3BC0-4C9D-BADB-DC8B1A110ED8", - "name": "diving-helmet", - "codepoint": "F0DC0", - "aliases": [], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "8BE8E8A6-2A2A-490D-91AB-D7C6AEFEC68C", - "baseIconId": "8BE8E8A6-2A2A-490D-91AB-D7C6AEFEC68C", - "name": "diving-scuba", - "codepoint": "F1B77", - "aliases": [], - "styles": [], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Google" - }, - { - "id": "7B600593-08CB-42D0-B106-0EDF12132BFC", - "baseIconId": "227F84AF-3BC0-4C9D-BADB-DC8B1A110ED8", - "name": "diving-scuba-flag", - "codepoint": "F0DC2", - "aliases": [], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "6C2E4BEE-6D01-4B09-A501-CE976EE20740", - "baseIconId": "227F84AF-3BC0-4C9D-BADB-DC8B1A110ED8", - "name": "diving-scuba-mask", - "codepoint": "F0DC1", - "aliases": [], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Michael Richins" - }, - { - "id": "64055E84-7F77-4020-A105-313AAD36353E", - "baseIconId": "227F84AF-3BC0-4C9D-BADB-DC8B1A110ED8", - "name": "diving-scuba-tank", - "codepoint": "F0DC3", - "aliases": [], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "868AEE51-0552-43D0-97FA-9F783BB2A67C", - "baseIconId": "227F84AF-3BC0-4C9D-BADB-DC8B1A110ED8", - "name": "diving-scuba-tank-multiple", - "codepoint": "F0DC4", - "aliases": [], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "227F84AF-3BC0-4C9D-BADB-DC8B1A110ED8", - "baseIconId": "227F84AF-3BC0-4C9D-BADB-DC8B1A110ED8", - "name": "diving-snorkel", - "codepoint": "F0DC5", - "aliases": [], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Michael Richins" - }, - { - "id": "FB313489-5EA3-4F07-ABA4-F84995D7DD13", - "baseIconId": "FB313489-5EA3-4F07-ABA4-F84995D7DD13", - "name": "division", - "codepoint": "F01D4", - "aliases": [ - "obelus" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Austin Andrews" - }, - { - "id": "1A0BABA0-5F5E-45ED-A4BB-DCBD569F6E43", - "baseIconId": "FB313489-5EA3-4F07-ABA4-F84995D7DD13", - "name": "division-box", - "codepoint": "F01D5", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Austin Andrews" - }, - { - "id": "15C7622F-855B-4FFA-BA1A-ED0ED470078B", - "baseIconId": "15C7622F-855B-4FFA-BA1A-ED0ED470078B", - "name": "dlna", - "codepoint": "F0A41", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "2C726E7E-53C8-410C-82F4-FE5DE9EF4BC1", - "baseIconId": "2C726E7E-53C8-410C-82F4-FE5DE9EF4BC1", - "name": "dna", - "codepoint": "F0684", - "aliases": [ - "helix" - ], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Haley Halcyon" - }, - { - "id": "D4A20191-F5B8-4323-A0A8-F4C15A86A83B", - "baseIconId": "D4A20191-F5B8-4323-A0A8-F4C15A86A83B", - "name": "dns", - "codepoint": "F01D6", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "D81BA495-F83D-4CFF-A9A5-B398D7E53DC7", - "baseIconId": "D4A20191-F5B8-4323-A0A8-F4C15A86A83B", - "name": "dns-outline", - "codepoint": "F0B8C", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "E6B5C99C-7C0F-4F61-AEF9-7FDF6851D426", - "baseIconId": "E6B5C99C-7C0F-4F61-AEF9-7FDF6851D426", - "name": "dock-bottom", - "codepoint": "F10A9", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "59BABD0B-E745-4389-B318-4E166F2ED0C0", - "baseIconId": "59BABD0B-E745-4389-B318-4E166F2ED0C0", - "name": "dock-left", - "codepoint": "F10AA", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "3AF2E71C-A865-4512-8B41-3803BFA84C48", - "baseIconId": "3AF2E71C-A865-4512-8B41-3803BFA84C48", - "name": "dock-right", - "codepoint": "F10AB", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "4014E87F-B3F7-465B-B84D-ED2408AA95EE", - "baseIconId": "4014E87F-B3F7-465B-B84D-ED2408AA95EE", - "name": "dock-top", - "codepoint": "F1513", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "6EF77419-3085-4805-804C-096C6D8A4450", - "baseIconId": "6EF77419-3085-4805-804C-096C6D8A4450", - "name": "dock-window", - "codepoint": "F10AC", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "8EE88381-B350-4C63-B26D-F340FE54D668", - "baseIconId": "8EE88381-B350-4C63-B26D-F340FE54D668", - "name": "docker", - "codepoint": "F0868", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "3772A377-C71A-429B-A4A6-3979DA3BC588", - "baseIconId": "3772A377-C71A-429B-A4A6-3979DA3BC588", - "name": "doctor", - "codepoint": "F0A42", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Augustin Ursu" - }, - { - "id": "8D6EB954-B4C9-44D5-9E70-C4E186C35957", - "baseIconId": "8D6EB954-B4C9-44D5-9E70-C4E186C35957", - "name": "dog", - "codepoint": "F0A43", - "aliases": [ - "emoji-dog", - "emoticon-dog" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C0CF99F2-5D8E-4478-9602-9866AF83B94B", - "baseIconId": "4A3EEFF6-77EF-498F-9450-7AE3D3EC7BC6", - "name": "dog-service", - "codepoint": "F0AAD", - "aliases": [ - "guide-dog", - "k9", - "canine" - ], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Michael Richins" - }, - { - "id": "4A3EEFF6-77EF-498F-9450-7AE3D3EC7BC6", - "baseIconId": "4A3EEFF6-77EF-498F-9450-7AE3D3EC7BC6", - "name": "dog-side", - "codepoint": "F0A44", - "aliases": [ - "k9", - "canine" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Nick" - }, - { - "id": "74FE76CF-E5A5-42F3-97BD-0BCDF17DBFFF", - "baseIconId": "4A3EEFF6-77EF-498F-9450-7AE3D3EC7BC6", - "name": "dog-side-off", - "codepoint": "F16EE", - "aliases": [], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Colton Wiscombe" - }, - { - "id": "FE71CD75-B2E7-49A5-B00B-732BACB52F6F", - "baseIconId": "FE71CD75-B2E7-49A5-B00B-732BACB52F6F", - "name": "dolby", - "codepoint": "F06B3", - "aliases": [], - "styles": [], - "version": "1.7.22", - "deprecated": true, - "tags": [ - "Audio", - "Brand \/ Logo", - "Home Automation" - ], - "author": "Contributors" - }, - { - "id": "6F2EAC1C-802A-48CF-A9E1-7EBFD4893BAF", - "baseIconId": "6F2EAC1C-802A-48CF-A9E1-7EBFD4893BAF", - "name": "dolly", - "codepoint": "F0E9E", - "aliases": [ - "hand-truck", - "trolley" - ], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "578351FA-0F35-41B0-BC7C-A9B33EBEBC4D", - "baseIconId": "578351FA-0F35-41B0-BC7C-A9B33EBEBC4D", - "name": "dolphin", - "codepoint": "F18B4", - "aliases": [ - "porpoise" - ], - "styles": [], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Colton Wiscombe" - }, - { - "id": "CA264BA4-62A9-4823-A172-22DD413A6CF5", - "baseIconId": "CA264BA4-62A9-4823-A172-22DD413A6CF5", - "name": "domain", - "codepoint": "F01D7", - "aliases": [ - "building", - "company", - "business" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Places" - ], - "author": "Google" - }, - { - "id": "77232563-20F2-4C73-B30E-5F83D237E7D7", - "baseIconId": "CA264BA4-62A9-4823-A172-22DD413A6CF5", - "name": "domain-off", - "codepoint": "F0D6F", - "aliases": [], - "styles": [ - "off" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "C19B8872-80EF-439B-A7B8-5F043DC66991", - "baseIconId": "CA264BA4-62A9-4823-A172-22DD413A6CF5", - "name": "domain-plus", - "codepoint": "F10AD", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "BB1C669D-D6EA-47D7-B15C-10A236D214AA", - "baseIconId": "CA264BA4-62A9-4823-A172-22DD413A6CF5", - "name": "domain-remove", - "codepoint": "F10AE", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "27E6BA2C-0A33-4FE7-AF71-B3B9AE767C0B", - "baseIconId": "CA264BA4-62A9-4823-A172-22DD413A6CF5", - "name": "domain-switch", - "codepoint": "F1C2C", - "aliases": [], - "styles": [], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "E17E8B8F-361D-4467-97BE-71C3ABE9355A", - "baseIconId": "E17E8B8F-361D-4467-97BE-71C3ABE9355A", - "name": "dome-light", - "codepoint": "F141E", - "aliases": [], - "styles": [], - "version": "5.2.45", - "deprecated": false, - "tags": [], - "author": "Tim Grelka" - }, - { - "id": "4621ACB1-6F3D-414D-8724-B276982DB087", - "baseIconId": "4621ACB1-6F3D-414D-8724-B276982DB087", - "name": "domino-mask", - "codepoint": "F1023", - "aliases": [ - "robber-mask", - "zorro-mask" - ], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [], - "author": "Andrew Nenakhov" - }, - { - "id": "7027E5FC-228D-4E32-B2BB-02287E94D132", - "baseIconId": "7027E5FC-228D-4E32-B2BB-02287E94D132", - "name": "donkey", - "codepoint": "F07C2", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Contributors" - }, - { - "id": "858F8782-5001-4950-96F2-65032091A847", - "baseIconId": "858F8782-5001-4950-96F2-65032091A847", - "name": "door", - "codepoint": "F081A", - "aliases": [], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Haley Halcyon" - }, - { - "id": "DFE96305-5114-4F53-AB08-08F99F37C2FE", - "baseIconId": "858F8782-5001-4950-96F2-65032091A847", - "name": "door-closed", - "codepoint": "F081B", - "aliases": [], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Haley Halcyon" - }, - { - "id": "4F2F0F07-CF86-40E1-A204-E5BAB501B5F5", - "baseIconId": "858F8782-5001-4950-96F2-65032091A847", - "name": "door-closed-cancel", - "codepoint": "F1C93", - "aliases": [ - "door-forbidden", - "door-do-not-enter", - "door-unavailable" - ], - "styles": [ - "cancel" - ], - "version": "7.3.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "792A98B0-E031-43CF-AF8B-ACF21C97C4C2", - "baseIconId": "858F8782-5001-4950-96F2-65032091A847", - "name": "door-closed-lock", - "codepoint": "F10AF", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Lock" - ], - "author": "Michael Richins" - }, - { - "id": "A64D06DE-1EE4-400F-9E17-2B5D319475A3", - "baseIconId": "858F8782-5001-4950-96F2-65032091A847", - "name": "door-open", - "codepoint": "F081C", - "aliases": [], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Haley Halcyon" - }, - { - "id": "73FBEFFD-7EE3-4272-AB1F-A480C698FD5E", - "baseIconId": "858F8782-5001-4950-96F2-65032091A847", - "name": "door-sliding", - "codepoint": "F181E", - "aliases": [ - "patio-door", - "french-door" - ], - "styles": [ - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "933F6908-12B7-4448-9A83-1FAD909ECC53", - "baseIconId": "858F8782-5001-4950-96F2-65032091A847", - "name": "door-sliding-lock", - "codepoint": "F181F", - "aliases": [ - "patio-door-lock", - "french-door-lock" - ], - "styles": [ - "lock", - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Lock" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B8358F0C-19A7-4E55-AF98-F4FEFA983148", - "baseIconId": "858F8782-5001-4950-96F2-65032091A847", - "name": "door-sliding-open", - "codepoint": "F1820", - "aliases": [ - "patio-door-open", - "french-door-open" - ], - "styles": [ - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "91D0BB43-E5D4-4F0B-89E7-B379A6F9A455", - "baseIconId": "91D0BB43-E5D4-4F0B-89E7-B379A6F9A455", - "name": "doorbell", - "codepoint": "F12E6", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "63848BB0-8CBA-491A-9D3A-5964BAA67CC2", - "baseIconId": "91D0BB43-E5D4-4F0B-89E7-B379A6F9A455", - "name": "doorbell-video", - "codepoint": "F0869", - "aliases": [], - "styles": [ - "variant" - ], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "E05A9EE4-A599-4195-93F9-0E4024670E81", - "baseIconId": "E05A9EE4-A599-4195-93F9-0E4024670E81", - "name": "dot-net", - "codepoint": "F0AAE", - "aliases": [ - "microsoft-dot-net" - ], - "styles": [], - "version": "2.7.94", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "FDC05366-F73E-4D60-B048-8AA4732B2C1F", - "baseIconId": "FDC05366-F73E-4D60-B048-8AA4732B2C1F", - "name": "dots-circle", - "codepoint": "F1978", - "aliases": [ - "perimeter" - ], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "9BBDE78A-ADFF-4FFB-AC79-C7B1FDAB633E", - "baseIconId": "9BBDE78A-ADFF-4FFB-AC79-C7B1FDAB633E", - "name": "dots-grid", - "codepoint": "F15FC", - "aliases": [], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "92CE1CCF-7652-4292-831D-CFE1ADBB54B6", - "baseIconId": "92CE1CCF-7652-4292-831D-CFE1ADBB54B6", - "name": "dots-hexagon", - "codepoint": "F15FF", - "aliases": [], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "9156AFAA-25BB-4E97-9EC8-BB9BE9AF60B0", - "baseIconId": "9156AFAA-25BB-4E97-9EC8-BB9BE9AF60B0", - "name": "dots-horizontal", - "codepoint": "F01D8", - "aliases": [ - "more", - "ellipsis-horizontal", - "more-horiz", - "menu" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "2ED6A664-DAE9-427C-8810-496C331C9BE0", - "baseIconId": "9156AFAA-25BB-4E97-9EC8-BB9BE9AF60B0", - "name": "dots-horizontal-circle", - "codepoint": "F07C3", - "aliases": [ - "ellipsis-horizontal-circle", - "more-circle", - "menu" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "378E8311-F963-41EC-9AFF-5B30EF975313", - "baseIconId": "9156AFAA-25BB-4E97-9EC8-BB9BE9AF60B0", - "name": "dots-horizontal-circle-outline", - "codepoint": "F0B8D", - "aliases": [ - "ellipsis-horizontal-circle-outline", - "more-circle-outline", - "menu" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "57A090F9-EBDF-4A60-8B83-1D5E5A61B73E", - "baseIconId": "57A090F9-EBDF-4A60-8B83-1D5E5A61B73E", - "name": "dots-square", - "codepoint": "F15FD", - "aliases": [ - "perimeter" - ], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "37FA940A-635C-48A5-988B-D1F4BBC0A7E0", - "baseIconId": "37FA940A-635C-48A5-988B-D1F4BBC0A7E0", - "name": "dots-triangle", - "codepoint": "F15FE", - "aliases": [], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "5D70B3D1-8407-42C9-A3C1-42EE68FF18F3", - "baseIconId": "5D70B3D1-8407-42C9-A3C1-42EE68FF18F3", - "name": "dots-vertical", - "codepoint": "F01D9", - "aliases": [ - "ellipsis-vertical", - "more-vert", - "menu" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "5D23E65D-271A-463B-972F-E8524E76E6D7", - "baseIconId": "5D70B3D1-8407-42C9-A3C1-42EE68FF18F3", - "name": "dots-vertical-circle", - "codepoint": "F07C4", - "aliases": [ - "ellipsis-vertical-circle", - "menu" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "E2CD4D50-D64C-47B9-AF3B-C464D65CD4EB", - "baseIconId": "5D70B3D1-8407-42C9-A3C1-42EE68FF18F3", - "name": "dots-vertical-circle-outline", - "codepoint": "F0B8E", - "aliases": [ - "ellipsis-vertical-circle-outline", - "menu" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "704F7397-0E85-4213-8D76-FE156DF1795F", - "baseIconId": "704F7397-0E85-4213-8D76-FE156DF1795F", - "name": "download", - "codepoint": "F01DA", - "aliases": [ - "file-download", - "get-app" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "49E1E432-8C28-43AA-818C-EB62ACF5EC06", - "baseIconId": "704F7397-0E85-4213-8D76-FE156DF1795F", - "name": "download-box", - "codepoint": "F1462", - "aliases": [], - "styles": [], - "version": "5.2.45", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "48A14899-8641-40E7-BF9D-06BD6AE9BB54", - "baseIconId": "704F7397-0E85-4213-8D76-FE156DF1795F", - "name": "download-box-outline", - "codepoint": "F1463", - "aliases": [], - "styles": [], - "version": "5.2.45", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "B4B33DFC-4361-478D-A3A3-3FD224B95C16", - "baseIconId": "704F7397-0E85-4213-8D76-FE156DF1795F", - "name": "download-circle", - "codepoint": "F1464", - "aliases": [], - "styles": [], - "version": "5.2.45", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "0F2CB73D-1357-4004-88DE-6E57549B8F1C", - "baseIconId": "704F7397-0E85-4213-8D76-FE156DF1795F", - "name": "download-circle-outline", - "codepoint": "F1465", - "aliases": [], - "styles": [], - "version": "5.2.45", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "F70D7D6A-B496-4182-A423-939E2CCF21AC", - "baseIconId": "704F7397-0E85-4213-8D76-FE156DF1795F", - "name": "download-lock", - "codepoint": "F1320", - "aliases": [], - "styles": [ - "lock" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Michael Richins" - }, - { - "id": "CDB71553-149F-452B-A0DC-2CD8EFA41150", - "baseIconId": "704F7397-0E85-4213-8D76-FE156DF1795F", - "name": "download-lock-outline", - "codepoint": "F1321", - "aliases": [], - "styles": [ - "lock", - "outline" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Michael Richins" - }, - { - "id": "EEECC393-B78C-43DE-BDA4-F31DACA25F56", - "baseIconId": "704F7397-0E85-4213-8D76-FE156DF1795F", - "name": "download-multiple", - "codepoint": "F09E9", - "aliases": [ - "downloads" - ], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "8DD93DC3-060D-4CB3-AB41-8A1A5243BFFD", - "baseIconId": "704F7397-0E85-4213-8D76-FE156DF1795F", - "name": "download-network", - "codepoint": "F06F4", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "EACBF539-FF17-4F63-8782-AB4146D9B072", - "baseIconId": "704F7397-0E85-4213-8D76-FE156DF1795F", - "name": "download-network-outline", - "codepoint": "F0C66", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "C582FB3E-A708-411C-91C8-FA660E313AAE", - "baseIconId": "704F7397-0E85-4213-8D76-FE156DF1795F", - "name": "download-off", - "codepoint": "F10B0", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "0FFB4F5B-34FB-4E1F-AA6B-96C5CD8F9632", - "baseIconId": "704F7397-0E85-4213-8D76-FE156DF1795F", - "name": "download-off-outline", - "codepoint": "F10B1", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "AB9770C4-6886-4A46-8F4E-B96CBCCCF839", - "baseIconId": "704F7397-0E85-4213-8D76-FE156DF1795F", - "name": "download-outline", - "codepoint": "F0B8F", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "2366C232-208F-4A03-9FC9-D9C8C52622CA", - "baseIconId": "2366C232-208F-4A03-9FC9-D9C8C52622CA", - "name": "drag", - "codepoint": "F01DB", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "544A0702-E7DC-4E1F-9A6E-8785AA3048D8", - "baseIconId": "2366C232-208F-4A03-9FC9-D9C8C52622CA", - "name": "drag-horizontal", - "codepoint": "F01DC", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "FA5B1F76-C0C4-4F08-B545-D28E78781F67", - "baseIconId": "2366C232-208F-4A03-9FC9-D9C8C52622CA", - "name": "drag-horizontal-variant", - "codepoint": "F12F0", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "5B3C7AEE-2539-4DD7-AA86-D5B3ED1EB097", - "baseIconId": "2366C232-208F-4A03-9FC9-D9C8C52622CA", - "name": "drag-variant", - "codepoint": "F0B90", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "4B8D8E9B-547D-4DE3-B8E1-5023867EF965", - "baseIconId": "2366C232-208F-4A03-9FC9-D9C8C52622CA", - "name": "drag-vertical", - "codepoint": "F01DD", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "BAD1F323-E74E-4E04-A1F6-4CCC7CAC2E34", - "baseIconId": "2366C232-208F-4A03-9FC9-D9C8C52622CA", - "name": "drag-vertical-variant", - "codepoint": "F12F1", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "ACAF4137-3EA8-4B7C-A1DB-C34759C70A5D", - "baseIconId": "ACAF4137-3EA8-4B7C-A1DB-C34759C70A5D", - "name": "drama-masks", - "codepoint": "F0D02", - "aliases": [ - "comedy", - "tragedy", - "theatre" - ], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [], - "author": "Augustin Ursu" - }, - { - "id": "ECDE04BF-F8A5-4DAD-B4F9-887CAE97CBE3", - "baseIconId": "ECDE04BF-F8A5-4DAD-B4F9-887CAE97CBE3", - "name": "draw", - "codepoint": "F0F49", - "aliases": [ - "sign", - "signature" - ], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Drawing \/ Art", - "Form" - ], - "author": "Michael Irigoyen" - }, - { - "id": "152EF3D9-A7C4-40AC-8691-D5A4D48CFD37", - "baseIconId": "ECDE04BF-F8A5-4DAD-B4F9-887CAE97CBE3", - "name": "draw-pen", - "codepoint": "F19B9", - "aliases": [ - "sign", - "signature" - ], - "styles": [ - "variant" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Form", - "Drawing \/ Art" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E8557F02-8241-47FB-B546-402947A5818C", - "baseIconId": "E8557F02-8241-47FB-B546-402947A5818C", - "name": "drawing", - "codepoint": "F01DE", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Drawing \/ Art", - "Shape" - ], - "author": "Austin Andrews" - }, - { - "id": "BF9750EC-EB85-4670-A4DE-4808729249B5", - "baseIconId": "E8557F02-8241-47FB-B546-402947A5818C", - "name": "drawing-box", - "codepoint": "F01DF", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Drawing \/ Art", - "Shape" - ], - "author": "Google" - }, - { - "id": "BBA92DC7-D461-44FA-8FA2-6D8846368E5C", - "baseIconId": "BBA92DC7-D461-44FA-8FA2-6D8846368E5C", - "name": "dresser", - "codepoint": "F0F4A", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "B70C7178-DB6F-4172-8440-3A9003AA040D", - "baseIconId": "BBA92DC7-D461-44FA-8FA2-6D8846368E5C", - "name": "dresser-outline", - "codepoint": "F0F4B", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "B6A0EC44-BDF3-4001-ABBF-51E0F2522BD3", - "baseIconId": "B6A0EC44-BDF3-4001-ABBF-51E0F2522BD3", - "name": "drone", - "codepoint": "F01E2", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Flying" - ], - "author": "Austin Andrews" - }, - { - "id": "C8E22510-9369-4C7C-B598-8799DB9FE2A2", - "baseIconId": "C8E22510-9369-4C7C-B598-8799DB9FE2A2", - "name": "dropbox", - "codepoint": "F01E3", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "5FCCAA35-0339-4B8F-984A-D4112C3277C1", - "baseIconId": "5FCCAA35-0339-4B8F-984A-D4112C3277C1", - "name": "drupal", - "codepoint": "F01E4", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "74F300CC-D7A5-45AF-A946-B219E82F8997", - "baseIconId": "74F300CC-D7A5-45AF-A946-B219E82F8997", - "name": "duck", - "codepoint": "F01E5", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Austin Andrews" - }, - { - "id": "E792948B-8E66-49B5-83E7-8CDF1ECE6C5D", - "baseIconId": "E792948B-8E66-49B5-83E7-8CDF1ECE6C5D", - "name": "dumbbell", - "codepoint": "F01E6", - "aliases": [ - "weights", - "fitness-center", - "gym", - "barbell" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Google" - }, - { - "id": "50BCAB01-5182-4FBA-9F6D-62DF6872B743", - "baseIconId": "CB49A868-3317-4445-BFED-13CB6533000E", - "name": "dump-truck", - "codepoint": "F0C67", - "aliases": [ - "tipper-lorry" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Hardware \/ Tools" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9F02DA93-0C4D-4A77-8F6B-E4220480AB55", - "baseIconId": "9F02DA93-0C4D-4A77-8F6B-E4220480AB55", - "name": "ear-hearing", - "codepoint": "F07C5", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Google" - }, - { - "id": "E95219F9-AA02-4031-940F-D76757183F96", - "baseIconId": "9F02DA93-0C4D-4A77-8F6B-E4220480AB55", - "name": "ear-hearing-loop", - "codepoint": "F1AEE", - "aliases": [ - "audio-induction-loop", - "telecoil" - ], - "styles": [], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Michael Irigoyen" - }, - { - "id": "78ACE34A-8AC2-4259-AD8D-1118A11C6800", - "baseIconId": "9F02DA93-0C4D-4A77-8F6B-E4220480AB55", - "name": "ear-hearing-off", - "codepoint": "F0A45", - "aliases": [ - "hearing-impaired" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Henrique C\u00e9sar Madeira" - }, - { - "id": "F809C249-6B8A-4A3E-B945-7EA3D0F71AB0", - "baseIconId": "F809C249-6B8A-4A3E-B945-7EA3D0F71AB0", - "name": "earbuds", - "codepoint": "F184F", - "aliases": [ - "headphones" - ], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Audio", - "Music" - ], - "author": "Colton Wiscombe" - }, - { - "id": "3938606F-6B8D-45D2-A835-8F3A08E97CB1", - "baseIconId": "F809C249-6B8A-4A3E-B945-7EA3D0F71AB0", - "name": "earbuds-off", - "codepoint": "F1850", - "aliases": [ - "headphones-off" - ], - "styles": [ - "off" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Audio", - "Music" - ], - "author": "Colton Wiscombe" - }, - { - "id": "E9DB591B-AB1E-4C5B-9596-63EA899D54AF", - "baseIconId": "F809C249-6B8A-4A3E-B945-7EA3D0F71AB0", - "name": "earbuds-off-outline", - "codepoint": "F1851", - "aliases": [ - "headphones-off-outline" - ], - "styles": [ - "off", - "outline" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Audio", - "Music" - ], - "author": "Colton Wiscombe" - }, - { - "id": "15AB1BAE-A458-4107-9C96-07BF755F3EBA", - "baseIconId": "F809C249-6B8A-4A3E-B945-7EA3D0F71AB0", - "name": "earbuds-outline", - "codepoint": "F1852", - "aliases": [ - "headphones-outline" - ], - "styles": [ - "outline" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Audio", - "Music" - ], - "author": "Colton Wiscombe" - }, - { - "id": "0D1618BF-A3AD-4B4A-92EA-5DBF93BF7625", - "baseIconId": "0D1618BF-A3AD-4B4A-92EA-5DBF93BF7625", - "name": "earth", - "codepoint": "F01E7", - "aliases": [ - "globe", - "public", - "planet", - "world" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Geographic Information System", - "Navigation" - ], - "author": "Google" - }, - { - "id": "7EAEFA1D-7544-43E9-A93E-3869A3E50CB4", - "baseIconId": "0D1618BF-A3AD-4B4A-92EA-5DBF93BF7625", - "name": "earth-arrow-down", - "codepoint": "F1C87", - "aliases": [ - "globe-arrow-down", - "world-arrow-down", - "planet-arrow-down" - ], - "styles": [ - "arrow" - ], - "version": "7.3.96", - "deprecated": false, - "tags": [], - "author": "frankgrinaert" - }, - { - "id": "01449F7D-91CD-46C4-A645-654860CEB1E0", - "baseIconId": "01449F7D-91CD-46C4-A645-654860CEB1E0", - "name": "earth-arrow-left", - "codepoint": "F1C88", - "aliases": [ - "globe-arrow-left", - "world-arrow-left", - "planet-arrow-left" - ], - "styles": [ - "arrow" - ], - "version": "7.3.96", - "deprecated": false, - "tags": [], - "author": "frankgrinaert" - }, - { - "id": "E6C7261B-1CC0-41EA-844B-0DA761CDCC12", - "baseIconId": "0D1618BF-A3AD-4B4A-92EA-5DBF93BF7625", - "name": "earth-arrow-right", - "codepoint": "F1311", - "aliases": [ - "globe-arrow-right", - "world-arrow-right", - "planet-arrow-right" - ], - "styles": [ - "arrow" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9D8CB6F6-F5F6-4D11-8194-F392B52601F3", - "baseIconId": "0D1618BF-A3AD-4B4A-92EA-5DBF93BF7625", - "name": "earth-arrow-up", - "codepoint": "F1C89", - "aliases": [ - "globe-arrow-up", - "planet-arrow-up", - "world-arrow-up" - ], - "styles": [ - "arrow" - ], - "version": "7.3.96", - "deprecated": false, - "tags": [], - "author": "frankgrinaert" - }, - { - "id": "3F4C3330-49D5-4F2B-8FCC-A3448BEF521E", - "baseIconId": "0D1618BF-A3AD-4B4A-92EA-5DBF93BF7625", - "name": "earth-box", - "codepoint": "F06CD", - "aliases": [ - "globe-box", - "world-box", - "planet-box" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "GreenTurtwig" - }, - { - "id": "C6EEACD5-6E55-4A4A-8E66-0CC8233470DA", - "baseIconId": "0D1618BF-A3AD-4B4A-92EA-5DBF93BF7625", - "name": "earth-box-minus", - "codepoint": "F1407", - "aliases": [ - "globe-box-minus", - "world-box-minus", - "planet-box-minus" - ], - "styles": [], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "Muhammet Balsoy" - }, - { - "id": "CAE8B8BC-E89F-49C3-8178-6F09ACED1FC3", - "baseIconId": "0D1618BF-A3AD-4B4A-92EA-5DBF93BF7625", - "name": "earth-box-off", - "codepoint": "F06CE", - "aliases": [ - "globe-box-off", - "world-box-off", - "planet-box-off" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "GreenTurtwig" - }, - { - "id": "5CEC6008-A993-410B-985A-4E41291BE614", - "baseIconId": "0D1618BF-A3AD-4B4A-92EA-5DBF93BF7625", - "name": "earth-box-plus", - "codepoint": "F1406", - "aliases": [ - "globe-box-plus", - "world-box-plus", - "planet-box-plus" - ], - "styles": [], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "Muhammet Balsoy" - }, - { - "id": "A7F1974D-8084-4EBF-A932-2051938CB985", - "baseIconId": "0D1618BF-A3AD-4B4A-92EA-5DBF93BF7625", - "name": "earth-box-remove", - "codepoint": "F1408", - "aliases": [ - "globe-box-remove", - "world-box-remove", - "planet-box-remove" - ], - "styles": [], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "Muhammet Balsoy" - }, - { - "id": "1C8EADAE-667F-4048-A393-B05980A7CA11", - "baseIconId": "0D1618BF-A3AD-4B4A-92EA-5DBF93BF7625", - "name": "earth-minus", - "codepoint": "F1404", - "aliases": [ - "globe-minus", - "world-minus", - "planet-minus" - ], - "styles": [], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "Muhammet Balsoy" - }, - { - "id": "519E0041-FD5F-4DAD-96A4-BED1EDE9A20B", - "baseIconId": "0D1618BF-A3AD-4B4A-92EA-5DBF93BF7625", - "name": "earth-off", - "codepoint": "F01E8", - "aliases": [ - "globe-off", - "world-off", - "planet-off" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Geographic Information System", - "Navigation" - ], - "author": "Austin Andrews" - }, - { - "id": "046CC069-3771-4172-A9E6-F8D18161551F", - "baseIconId": "0D1618BF-A3AD-4B4A-92EA-5DBF93BF7625", - "name": "earth-plus", - "codepoint": "F1403", - "aliases": [ - "globe-plus", - "world-plus", - "planet-plus" - ], - "styles": [], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "Muhammet Balsoy" - }, - { - "id": "75FA6A35-88AE-4790-9B1A-0D0FD453E472", - "baseIconId": "0D1618BF-A3AD-4B4A-92EA-5DBF93BF7625", - "name": "earth-remove", - "codepoint": "F1405", - "aliases": [ - "globe-remove", - "world-remove", - "planet-remove" - ], - "styles": [], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "Muhammet Balsoy" - }, - { - "id": "993BB952-DF8E-47E6-AF9A-1FCBF15C6B63", - "baseIconId": "993BB952-DF8E-47E6-AF9A-1FCBF15C6B63", - "name": "egg", - "codepoint": "F0AAF", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Agriculture" - ], - "author": "Michael Richins" - }, - { - "id": "5A81CAFD-E110-476D-9F72-70CC1E05D164", - "baseIconId": "993BB952-DF8E-47E6-AF9A-1FCBF15C6B63", - "name": "egg-easter", - "codepoint": "F0AB0", - "aliases": [], - "styles": [ - "variant" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Holiday" - ], - "author": "Michael Richins" - }, - { - "id": "F7C1B0EE-A1E2-4376-BFB2-C0EEAF251B2C", - "baseIconId": "F7C1B0EE-A1E2-4376-BFB2-C0EEAF251B2C", - "name": "egg-fried", - "codepoint": "F184A", - "aliases": [], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "AF15DB15-3F15-4D7B-9EBA-EFA8E0735D30", - "baseIconId": "993BB952-DF8E-47E6-AF9A-1FCBF15C6B63", - "name": "egg-off", - "codepoint": "F13F0", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1813E684-616A-403C-9D59-B1ED3373B750", - "baseIconId": "993BB952-DF8E-47E6-AF9A-1FCBF15C6B63", - "name": "egg-off-outline", - "codepoint": "F13F1", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9C36DCFC-FBBE-4AE2-8E27-952D10E296E3", - "baseIconId": "993BB952-DF8E-47E6-AF9A-1FCBF15C6B63", - "name": "egg-outline", - "codepoint": "F13F2", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2E11359F-82B1-469C-9A51-F7B0EFAA3171", - "baseIconId": "2E11359F-82B1-469C-9A51-F7B0EFAA3171", - "name": "eiffel-tower", - "codepoint": "F156B", - "aliases": [ - "paris", - "france" - ], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Places" - ], - "author": "Nicolas Gres" - }, - { - "id": "589595AF-C8FF-451B-A623-2A22D0D2A181", - "baseIconId": "589595AF-C8FF-451B-A623-2A22D0D2A181", - "name": "eight-track", - "codepoint": "F09EA", - "aliases": [ - "8-track" - ], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "GreenTurtwig" - }, - { - "id": "4B57E9DF-354F-460D-9551-65C0DB55D788", - "baseIconId": "4B57E9DF-354F-460D-9551-65C0DB55D788", - "name": "eject", - "codepoint": "F01EA", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "B9D113A6-7D1C-4290-9B95-D051DDBAB680", - "baseIconId": "4B57E9DF-354F-460D-9551-65C0DB55D788", - "name": "eject-circle", - "codepoint": "F1B23", - "aliases": [], - "styles": [ - "circle" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "300F7913-D559-4679-A7ED-A6F4C311E5BA", - "baseIconId": "4B57E9DF-354F-460D-9551-65C0DB55D788", - "name": "eject-circle-outline", - "codepoint": "F1B24", - "aliases": [], - "styles": [ - "circle", - "outline" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "6E8EC35B-2DF2-4451-9649-E0DBA823E3B7", - "baseIconId": "4B57E9DF-354F-460D-9551-65C0DB55D788", - "name": "eject-outline", - "codepoint": "F0B91", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "70653C90-39FA-4FA7-81D9-F1D792253067", - "baseIconId": "70653C90-39FA-4FA7-81D9-F1D792253067", - "name": "electric-switch", - "codepoint": "F0E9F", - "aliases": [], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [], - "author": "Louistwee" - }, - { - "id": "7F2511AE-AD30-41EB-AEEA-5CF18C81CF91", - "baseIconId": "70653C90-39FA-4FA7-81D9-F1D792253067", - "name": "electric-switch-closed", - "codepoint": "F10D9", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "B17B6901-E163-48A2-8101-E1986C1400C0", - "baseIconId": "B17B6901-E163-48A2-8101-E1986C1400C0", - "name": "electron-framework", - "codepoint": "F1024", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Developer \/ Languages" - ], - "author": "Contributors" - }, - { - "id": "0332819B-1686-4375-86E9-0866AE19C2BF", - "baseIconId": "0332819B-1686-4375-86E9-0866AE19C2BF", - "name": "elephant", - "codepoint": "F07C6", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Contributors" - }, - { - "id": "6057DE08-41EC-4DE6-9ACC-7FB5AF3D4536", - "baseIconId": "6057DE08-41EC-4DE6-9ACC-7FB5AF3D4536", - "name": "elevation-decline", - "codepoint": "F01EB", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "CEFE04E6-CBE8-4DDD-BCF2-F445579B68FE", - "baseIconId": "CEFE04E6-CBE8-4DDD-BCF2-F445579B68FE", - "name": "elevation-rise", - "codepoint": "F01EC", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "8A9045D4-D6AC-4660-8C55-D622156A1B8C", - "baseIconId": "8A9045D4-D6AC-4660-8C55-D622156A1B8C", - "name": "elevator", - "codepoint": "F01ED", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Austin Andrews" - }, - { - "id": "57DB3FF8-34D8-46A7-8D41-1A99EB31AD59", - "baseIconId": "8A9045D4-D6AC-4660-8C55-D622156A1B8C", - "name": "elevator-down", - "codepoint": "F12C2", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Austin Andrews" - }, - { - "id": "559121CE-CD01-4B96-9C0B-66DF7EED8944", - "baseIconId": "559121CE-CD01-4B96-9C0B-66DF7EED8944", - "name": "elevator-passenger", - "codepoint": "F1381", - "aliases": [], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Google" - }, - { - "id": "CD32CB18-7B1F-4150-B4F4-322C3326BC48", - "baseIconId": "559121CE-CD01-4B96-9C0B-66DF7EED8944", - "name": "elevator-passenger-off", - "codepoint": "F1979", - "aliases": [], - "styles": [ - "off" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2F62C19F-24FE-45C0-A43F-9A148C4B8042", - "baseIconId": "559121CE-CD01-4B96-9C0B-66DF7EED8944", - "name": "elevator-passenger-off-outline", - "codepoint": "F197A", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Michael Irigoyen" - }, - { - "id": "8343D53B-57D1-46B5-AC0F-295E3F261E74", - "baseIconId": "559121CE-CD01-4B96-9C0B-66DF7EED8944", - "name": "elevator-passenger-outline", - "codepoint": "F197B", - "aliases": [], - "styles": [ - "outline" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Google" - }, - { - "id": "8EA26066-2C66-4A38-996B-8F23E288E0B7", - "baseIconId": "8A9045D4-D6AC-4660-8C55-D622156A1B8C", - "name": "elevator-up", - "codepoint": "F12C1", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Austin Andrews" - }, - { - "id": "0CAAACF8-3D1C-4CCA-A3E4-3590CDEEC5D6", - "baseIconId": "0CAAACF8-3D1C-4CCA-A3E4-3590CDEEC5D6", - "name": "ellipse", - "codepoint": "F0EA0", - "aliases": [], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Michael Richins" - }, - { - "id": "EA110B23-B08F-4DAE-8F23-37A298B89A74", - "baseIconId": "0CAAACF8-3D1C-4CCA-A3E4-3590CDEEC5D6", - "name": "ellipse-outline", - "codepoint": "F0EA1", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Michael Richins" - }, - { - "id": "14AAE073-8399-4D67-9F7E-8E9424328681", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email", - "codepoint": "F01EE", - "aliases": [ - "local-post-office", - "mail", - "markunread", - "envelope" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "8031577D-2528-4278-9F7B-93BD5DED18E3", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-alert", - "codepoint": "F06CF", - "aliases": [ - "email-warning", - "envelope-alert", - "envelope-warning" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Austin Andrews" - }, - { - "id": "91B50C6E-CEBB-42A7-8D07-8D73F2EB20C1", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-alert-outline", - "codepoint": "F0D42", - "aliases": [], - "styles": [ - "alert", - "outline" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "68040E6F-6BCD-4505-94D6-55D1E11E82ED", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-arrow-left", - "codepoint": "F10DA", - "aliases": [ - "email-receive" - ], - "styles": [ - "arrow" - ], - "version": "4.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "2DF250FF-F6DC-4C7D-A5A6-AFEAEBAD45F4", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-arrow-left-outline", - "codepoint": "F10DB", - "aliases": [ - "email-receive-outline" - ], - "styles": [ - "arrow", - "outline" - ], - "version": "4.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "7C66176F-E1BF-4F04-A761-377F67916FDA", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-arrow-right", - "codepoint": "F10DC", - "aliases": [ - "email-send" - ], - "styles": [ - "arrow" - ], - "version": "4.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "795B1734-652A-4DCC-98B6-433C79C33001", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-arrow-right-outline", - "codepoint": "F10DD", - "aliases": [ - "email-arrow-right-outline" - ], - "styles": [ - "arrow", - "outline" - ], - "version": "4.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "6930A4EF-08EB-4649-B2BB-369269DA918F", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-box", - "codepoint": "F0D03", - "aliases": [ - "envelope-box" - ], - "styles": [ - "box" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "04876E3C-0FEA-43D5-9B5C-9CFFC711B180", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-check", - "codepoint": "F0AB1", - "aliases": [ - "email-tick" - ], - "styles": [ - "check" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Andrew Nenakhov" - }, - { - "id": "465CA7E2-56E8-4AC8-9A0D-CFF225C3948A", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-check-outline", - "codepoint": "F0AB2", - "aliases": [ - "email-tick-outline" - ], - "styles": [ - "check", - "outline" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Andrew Nenakhov" - }, - { - "id": "99DE8F28-37C2-4784-8B62-5E5FD499A664", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-edit", - "codepoint": "F0EE3", - "aliases": [], - "styles": [ - "edit" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Michael Richins" - }, - { - "id": "D2C2975C-678E-40BB-A313-44340B286BBE", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-edit-outline", - "codepoint": "F0EE4", - "aliases": [], - "styles": [ - "edit", - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Michael Richins" - }, - { - "id": "3BDD7A0B-DA90-459E-8219-58EDC08661FE", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-fast", - "codepoint": "F186F", - "aliases": [ - "envelope-fast", - "email-quick", - "email-sent", - "email-send" - ], - "styles": [ - "variant" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "8A3DDFE7-F2D8-47F1-8FFB-2B0C2145CE60", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-fast-outline", - "codepoint": "F1870", - "aliases": [ - "email-send-outline", - "email-sent-outline", - "envelope-fast-outline", - "email-quick-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "763A453D-9B1C-4E6A-A28C-2534AD4641A7", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-heart-outline", - "codepoint": "F1C5B", - "aliases": [ - "love-letter", - "envelope-heart-outline", - "greeting-card" - ], - "styles": [ - "heart", - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "04288F6D-7E3C-4BB6-8FDE-B8951C0D0BDF", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-lock", - "codepoint": "F01F1", - "aliases": [ - "envelope-secure", - "email-secure", - "envelope-lock" - ], - "styles": [ - "lock" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Simran" - }, - { - "id": "F4DE5AAA-B343-46ED-B1D3-CBDA05A61E87", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-lock-outline", - "codepoint": "F1B61", - "aliases": [ - "email-secure-outline" - ], - "styles": [ - "lock", - "outline" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F5FF3FDF-2BEC-4DCB-A6AB-9FF483126C70", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-mark-as-unread", - "codepoint": "F0B92", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "FCBACFB7-0431-4F59-BCEB-75D4325DC82C", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-minus", - "codepoint": "F0EE5", - "aliases": [], - "styles": [ - "minus" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "F2B06422-BB50-4C83-B1F2-591120544972", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-minus-outline", - "codepoint": "F0EE6", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "7DCBC245-D966-4018-8E53-272058C73507", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-multiple", - "codepoint": "F0EE7", - "aliases": [], - "styles": [ - "multiple" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "A92BBC88-FCE7-41A7-813E-873B81C7F4E9", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-multiple-outline", - "codepoint": "F0EE8", - "aliases": [], - "styles": [ - "multiple", - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "97179388-624E-48F5-9E21-1179BE74829B", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-newsletter", - "codepoint": "F0FB1", - "aliases": [], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "D14EAB52-8253-40C3-AABC-43267D588B01", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-off", - "codepoint": "F13E3", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "8495D960-EBB0-487C-A97B-64CF696DCDF4", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-off-outline", - "codepoint": "F13E4", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "1E550A45-9D97-4918-9DEC-F536EC5C7A1C", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-open", - "codepoint": "F01EF", - "aliases": [ - "drafts", - "envelope-open" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "BA4C3DC0-3F05-4464-BA25-CB5AA0E96789", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-open-heart-outline", - "codepoint": "F1C5C", - "aliases": [ - "love-letter-open", - "greeting-card-open", - "envelope-open-heart-outline" - ], - "styles": [ - "heart", - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "36BC0D33-4834-41EA-8EA2-90285635005A", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-open-multiple", - "codepoint": "F0EE9", - "aliases": [], - "styles": [ - "multiple", - "variant" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "A45E544D-6002-4F11-A03C-05221DE5C502", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-open-multiple-outline", - "codepoint": "F0EEA", - "aliases": [], - "styles": [ - "multiple", - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "4F7B4311-FC6B-463D-A2A3-760554AF144E", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-open-outline", - "codepoint": "F05EF", - "aliases": [ - "envelope-open-outline" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "53CE3621-DBCC-45E8-B105-2BEA7493CCA0", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-outline", - "codepoint": "F01F0", - "aliases": [ - "mail-outline", - "envelope-outline" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "910E199F-4A9F-473A-90A9-F69C05BD67F1", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-plus", - "codepoint": "F09EB", - "aliases": [ - "email-add", - "envelope-add", - "envelope-plus" - ], - "styles": [ - "plus" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "156DF0DC-6BDA-4204-BDDB-5FA69911CDDB", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-plus-outline", - "codepoint": "F09EC", - "aliases": [ - "email-add-outline", - "envelope-add-outline", - "envelope-plus-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "AB3FC883-2737-4D9D-AAF4-3695BD6C7882", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-remove", - "codepoint": "F1661", - "aliases": [], - "styles": [ - "remove" - ], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "5EDCFB59-BBEC-407A-B079-5EC7E7686800", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-remove-outline", - "codepoint": "F1662", - "aliases": [], - "styles": [ - "outline", - "remove" - ], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "9671987F-A6B4-4934-90B1-E2C590CEB1B9", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-seal", - "codepoint": "F195B", - "aliases": [ - "email-certified", - "mail-certified", - "mail-seal", - "email-verified", - "mail-verified" - ], - "styles": [ - "variant" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "5E7FB53A-EDC8-4FF3-AA66-708C617ECCD6", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-seal-outline", - "codepoint": "F195C", - "aliases": [ - "email-verified-outline", - "email-certified-outline", - "mail-verified-outline", - "mail-certified-outline", - "mail-seal-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "AE2AF6F2-9E5A-4949-901F-0B5F599428C7", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-search", - "codepoint": "F0961", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "3BC4A964-0137-4E75-B25E-7F01EDFEE1A8", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-search-outline", - "codepoint": "F0962", - "aliases": [], - "styles": [ - "outline", - "search" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "72B2D41E-42AA-44E7-8F1E-42AC62577F73", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-sync", - "codepoint": "F12C7", - "aliases": [ - "email-refresh", - "email-resend" - ], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "0FAB1B0E-FEAB-4F12-A7FC-58D48CB9682F", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-sync-outline", - "codepoint": "F12C8", - "aliases": [ - "email-refresh-outline", - "email-resend-outline" - ], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "80BB05EB-8F75-4205-9952-60B09204A9F6", - "baseIconId": "14AAE073-8399-4D67-9F7E-8E9424328681", - "name": "email-variant", - "codepoint": "F05F0", - "aliases": [ - "envelope-variant" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "37F09EC6-7F8F-4DDB-BB18-774880A5C312", - "baseIconId": "37F09EC6-7F8F-4DDB-BB18-774880A5C312", - "name": "ember", - "codepoint": "F0B30", - "aliases": [], - "styles": [], - "version": "2.8.94", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "7CACE4E9-A4B1-461E-A8E5-8032C22E86A1", - "baseIconId": "7CACE4E9-A4B1-461E-A8E5-8032C22E86A1", - "name": "emby", - "codepoint": "F06B4", - "aliases": [], - "styles": [], - "version": "1.7.22", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "E8F2B8BE-F4EC-4B9C-BB15-001752B29FFD", - "baseIconId": "E8F2B8BE-F4EC-4B9C-BB15-001752B29FFD", - "name": "emoticon", - "codepoint": "F0C68", - "aliases": [ - "smiley", - "face", - "emoji" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Google" - }, - { - "id": "5DD5C53F-8D3F-43DE-81B9-667A5372A808", - "baseIconId": "5DD5C53F-8D3F-43DE-81B9-667A5372A808", - "name": "emoticon-angry", - "codepoint": "F0C69", - "aliases": [ - "smiley-angry", - "face-angry", - "emoji-angry" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Michael Irigoyen" - }, - { - "id": "EEE3E9C1-D1B5-4D57-AD8B-7F6AD4852EE6", - "baseIconId": "5DD5C53F-8D3F-43DE-81B9-667A5372A808", - "name": "emoticon-angry-outline", - "codepoint": "F0C6A", - "aliases": [ - "smiley-angry-outline", - "face-angry-outline", - "emoji-angry-outline" - ], - "styles": [ - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DD5A65E9-E309-457F-9662-94AAB236A703", - "baseIconId": "DD5A65E9-E309-457F-9662-94AAB236A703", - "name": "emoticon-confused", - "codepoint": "F10DE", - "aliases": [ - "face-confused", - "emoji-confused" - ], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Michael Richins" - }, - { - "id": "CB195387-50AC-46A3-B1C4-F3DA96E0EE42", - "baseIconId": "DD5A65E9-E309-457F-9662-94AAB236A703", - "name": "emoticon-confused-outline", - "codepoint": "F10DF", - "aliases": [ - "face-confused-outline", - "emoji-confused-outline" - ], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Michael Richins" - }, - { - "id": "77FAFB8C-4322-4A18-8E92-0CE311F775D3", - "baseIconId": "77FAFB8C-4322-4A18-8E92-0CE311F775D3", - "name": "emoticon-cool", - "codepoint": "F0C6B", - "aliases": [ - "smiley-cool", - "face-cool", - "face-sunglasses", - "emoji-cool" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Michael Irigoyen" - }, - { - "id": "62BB1B4E-67AC-4DFE-B37C-65D0F04F71D0", - "baseIconId": "77FAFB8C-4322-4A18-8E92-0CE311F775D3", - "name": "emoticon-cool-outline", - "codepoint": "F01F3", - "aliases": [ - "smiley-cool-outline", - "face-cool-outline", - "face-sunglasses-outline", - "emoji-cool-outline" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Austin Andrews" - }, - { - "id": "39704938-DF4F-4E60-8C20-0569B4B1819C", - "baseIconId": "39704938-DF4F-4E60-8C20-0569B4B1819C", - "name": "emoticon-cry", - "codepoint": "F0C6C", - "aliases": [ - "smiley-cry", - "face-cry", - "emoji-cry" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Michael Irigoyen" - }, - { - "id": "BA4B161E-72CB-476B-9894-20A90B28B4A3", - "baseIconId": "39704938-DF4F-4E60-8C20-0569B4B1819C", - "name": "emoticon-cry-outline", - "codepoint": "F0C6D", - "aliases": [ - "smiley-cry-outline", - "face-cry-outline", - "emoji-cry-outline" - ], - "styles": [ - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Michael Irigoyen" - }, - { - "id": "187185AC-5567-44DC-AC70-14B0D89C270C", - "baseIconId": "187185AC-5567-44DC-AC70-14B0D89C270C", - "name": "emoticon-dead", - "codepoint": "F0C6E", - "aliases": [ - "smiley-dead", - "face-dead", - "emoji-dead" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Google" - }, - { - "id": "47AD308C-C9D8-43DB-8E92-B0FB02B906CF", - "baseIconId": "187185AC-5567-44DC-AC70-14B0D89C270C", - "name": "emoticon-dead-outline", - "codepoint": "F069B", - "aliases": [ - "smiley-dead-outline", - "face-dead-outline", - "emoji-dead-outline" - ], - "styles": [ - "outline" - ], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Google" - }, - { - "id": "7781F4B7-849F-42A4-82B1-791DBDE91295", - "baseIconId": "7781F4B7-849F-42A4-82B1-791DBDE91295", - "name": "emoticon-devil", - "codepoint": "F0C6F", - "aliases": [ - "smiley-devil", - "face-devil", - "emoji-devil" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Austin Andrews" - }, - { - "id": "916B1319-9E91-48C0-AD65-B21B599D8FCA", - "baseIconId": "7781F4B7-849F-42A4-82B1-791DBDE91295", - "name": "emoticon-devil-outline", - "codepoint": "F01F4", - "aliases": [ - "smiley-devil-outline", - "face-devil-outline", - "emoji-devil-outline" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Austin Andrews" - }, - { - "id": "86E664CC-39C1-4E36-81BB-AC3BFFE65281", - "baseIconId": "86E664CC-39C1-4E36-81BB-AC3BFFE65281", - "name": "emoticon-excited", - "codepoint": "F0C70", - "aliases": [ - "smiley-excited", - "face-excited", - "emoji-excited" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Google" - }, - { - "id": "828FF1EE-1B9B-4407-A45B-A071FA938158", - "baseIconId": "86E664CC-39C1-4E36-81BB-AC3BFFE65281", - "name": "emoticon-excited-outline", - "codepoint": "F069C", - "aliases": [ - "smiley-excited-outline", - "face-excited-outline", - "emoji-excited-outline" - ], - "styles": [ - "outline" - ], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Google" - }, - { - "id": "D5AC778B-0269-4AC5-A2D8-FD5F4D27785F", - "baseIconId": "D5AC778B-0269-4AC5-A2D8-FD5F4D27785F", - "name": "emoticon-frown", - "codepoint": "F0F4C", - "aliases": [ - "face-frown", - "emoji-frown" - ], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Michael Irigoyen" - }, - { - "id": "AE6333C6-8334-4F90-9230-6527F3A38C8A", - "baseIconId": "D5AC778B-0269-4AC5-A2D8-FD5F4D27785F", - "name": "emoticon-frown-outline", - "codepoint": "F0F4D", - "aliases": [ - "face-frown-outline", - "emoji-frown-outline" - ], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Google" - }, - { - "id": "CCA0187D-B8BA-4AC3-8523-B6B8F05EA5BA", - "baseIconId": "CCA0187D-B8BA-4AC3-8523-B6B8F05EA5BA", - "name": "emoticon-happy", - "codepoint": "F0C71", - "aliases": [ - "smiley-happy", - "face-happy", - "emoji-happy" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F51C2659-3EE9-471C-A919-190D3C1A9681", - "baseIconId": "CCA0187D-B8BA-4AC3-8523-B6B8F05EA5BA", - "name": "emoticon-happy-outline", - "codepoint": "F01F5", - "aliases": [ - "smiley-happy-outline", - "face-happy-outline", - "emoji-happy-outline" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Gabriel" - }, - { - "id": "01F0C520-7626-4BA6-A678-1EAB14AE2C1B", - "baseIconId": "01F0C520-7626-4BA6-A678-1EAB14AE2C1B", - "name": "emoticon-kiss", - "codepoint": "F0C72", - "aliases": [ - "smiley-kiss", - "face-kiss", - "emoji-kiss" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Michael Irigoyen" - }, - { - "id": "806569AC-841D-4B4E-849E-43BACC3D2268", - "baseIconId": "01F0C520-7626-4BA6-A678-1EAB14AE2C1B", - "name": "emoticon-kiss-outline", - "codepoint": "F0C73", - "aliases": [ - "smiley-kiss-outline", - "face-kiss-outline", - "emoji-kiss-outline" - ], - "styles": [ - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Michael Irigoyen" - }, - { - "id": "11CEDEB3-DB1A-45F4-92C9-6AF6FCEE4FC5", - "baseIconId": "11CEDEB3-DB1A-45F4-92C9-6AF6FCEE4FC5", - "name": "emoticon-lol", - "codepoint": "F1214", - "aliases": [ - "face-lol", - "emoji-lol" - ], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Michael Richins" - }, - { - "id": "2A7BA4B1-C436-4EE6-BF5A-34B150A9A746", - "baseIconId": "11CEDEB3-DB1A-45F4-92C9-6AF6FCEE4FC5", - "name": "emoticon-lol-outline", - "codepoint": "F1215", - "aliases": [ - "face-lol-outline", - "emoji-lol-outline" - ], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Michael Richins" - }, - { - "id": "922B06B7-9C78-452C-AF29-79A47F0F6931", - "baseIconId": "922B06B7-9C78-452C-AF29-79A47F0F6931", - "name": "emoticon-neutral", - "codepoint": "F0C74", - "aliases": [ - "smiley-neutral", - "face-neutral", - "emoji-neutral" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Michael Irigoyen" - }, - { - "id": "17F30B32-37E2-41BB-876C-70E568D04623", - "baseIconId": "922B06B7-9C78-452C-AF29-79A47F0F6931", - "name": "emoticon-neutral-outline", - "codepoint": "F01F6", - "aliases": [ - "smiley-neutral-outline", - "face-neutral-outline", - "emoji-neutral-outline" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Austin Andrews" - }, - { - "id": "69AAECAA-0B17-4C53-8345-4F172B7FEF50", - "baseIconId": "E8F2B8BE-F4EC-4B9C-BB15-001752B29FFD", - "name": "emoticon-outline", - "codepoint": "F01F2", - "aliases": [ - "insert-emoticon", - "mood", - "sentiment-very-satisfied", - "tag-faces", - "smiley-outline", - "face-outline", - "emoji-outline" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Google" - }, - { - "id": "968319FB-0E94-4F04-A6D8-9E71DF200E1F", - "baseIconId": "968319FB-0E94-4F04-A6D8-9E71DF200E1F", - "name": "emoticon-poop", - "codepoint": "F01F7", - "aliases": [ - "smiley-poop", - "face-poop", - "emoji-poop" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Austin Andrews" - }, - { - "id": "1E402C80-69DB-432F-BB0F-C05ACB6A7839", - "baseIconId": "968319FB-0E94-4F04-A6D8-9E71DF200E1F", - "name": "emoticon-poop-outline", - "codepoint": "F0C75", - "aliases": [ - "face-poop-outline", - "emoji-poop-outline" - ], - "styles": [ - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Michael Irigoyen" - }, - { - "id": "CDA3C920-C286-4000-A7FC-C530CBC62CF7", - "baseIconId": "CDA3C920-C286-4000-A7FC-C530CBC62CF7", - "name": "emoticon-sad", - "codepoint": "F0C76", - "aliases": [ - "smiley-sad", - "face-sad", - "emoji-sad" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Michael Irigoyen" - }, - { - "id": "6D8A3A11-7A90-424C-82A6-93C455379743", - "baseIconId": "CDA3C920-C286-4000-A7FC-C530CBC62CF7", - "name": "emoticon-sad-outline", - "codepoint": "F01F8", - "aliases": [ - "smiley-sad-outline", - "face-sad-outline", - "emoji-sad-outline" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Gabriel" - }, - { - "id": "523F5AB1-3598-40F1-AAB5-6DF361FF6970", - "baseIconId": "523F5AB1-3598-40F1-AAB5-6DF361FF6970", - "name": "emoticon-sick", - "codepoint": "F157C", - "aliases": [ - "face-sick", - "fever", - "emoji-sick" - ], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Emoji", - "Medical \/ Hospital" - ], - "author": "Google" - }, - { - "id": "CBB4F1C3-3479-4F94-9F15-3D844889609A", - "baseIconId": "523F5AB1-3598-40F1-AAB5-6DF361FF6970", - "name": "emoticon-sick-outline", - "codepoint": "F157D", - "aliases": [ - "face-sick-outline", - "fever-outline", - "emoji-sick-outline" - ], - "styles": [ - "outline" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Emoji", - "Medical \/ Hospital" - ], - "author": "Google" - }, - { - "id": "57288378-59EE-4705-ACD5-3B424ACA70C1", - "baseIconId": "57288378-59EE-4705-ACD5-3B424ACA70C1", - "name": "emoticon-tongue", - "codepoint": "F01F9", - "aliases": [ - "smiley-tongue", - "face-tongue", - "emoji-tongue" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Austin Andrews" - }, - { - "id": "A08556AE-A0AD-4C7E-9A14-0CD05EE66E03", - "baseIconId": "57288378-59EE-4705-ACD5-3B424ACA70C1", - "name": "emoticon-tongue-outline", - "codepoint": "F0C77", - "aliases": [ - "smiley-tongue-outline", - "face-tongue-outline", - "emoji-tongue-outline" - ], - "styles": [ - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Michael Irigoyen" - }, - { - "id": "652D2244-1764-4B42-B04D-157DDD9DC464", - "baseIconId": "652D2244-1764-4B42-B04D-157DDD9DC464", - "name": "emoticon-wink", - "codepoint": "F0C78", - "aliases": [ - "smiley-wink", - "face-wink", - "emoji-wink" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C8E56EC6-52DA-4BC7-81C0-1E5B14509086", - "baseIconId": "652D2244-1764-4B42-B04D-157DDD9DC464", - "name": "emoticon-wink-outline", - "codepoint": "F0C79", - "aliases": [ - "smiley-wink-outline", - "face-wink-outline", - "emoji-wink-outline" - ], - "styles": [ - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Michael Irigoyen" - }, - { - "id": "290CA835-F009-4630-87D3-D4515E1F5527", - "baseIconId": "290CA835-F009-4630-87D3-D4515E1F5527", - "name": "engine", - "codepoint": "F01FA", - "aliases": [ - "motor" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Simran" - }, - { - "id": "114C29E0-B66E-49EF-8D45-77FF8EED43B1", - "baseIconId": "290CA835-F009-4630-87D3-D4515E1F5527", - "name": "engine-off", - "codepoint": "F0A46", - "aliases": [ - "motor-off" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "81317A61-047B-47D4-A154-CEA3C6B9F61C", - "baseIconId": "290CA835-F009-4630-87D3-D4515E1F5527", - "name": "engine-off-outline", - "codepoint": "F0A47", - "aliases": [ - "motor-off-outline" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "75A5F242-D136-49B9-9DFF-25F0631743A7", - "baseIconId": "290CA835-F009-4630-87D3-D4515E1F5527", - "name": "engine-outline", - "codepoint": "F01FB", - "aliases": [ - "motor-outline" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Simran" - }, - { - "id": "C0C7DFD3-F590-4965-A38F-167F48469E6F", - "baseIconId": "C0C7DFD3-F590-4965-A38F-167F48469E6F", - "name": "epsilon", - "codepoint": "F10E0", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Sascha Wohlgemuth" - }, - { - "id": "119DD58E-769B-47C2-9AB8-1671DEC4FE4A", - "baseIconId": "119DD58E-769B-47C2-9AB8-1671DEC4FE4A", - "name": "equal", - "codepoint": "F01FC", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Austin Andrews" - }, - { - "id": "F98CD2ED-FD62-414E-9116-94BA99713526", - "baseIconId": "119DD58E-769B-47C2-9AB8-1671DEC4FE4A", - "name": "equal-box", - "codepoint": "F01FD", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Austin Andrews" - }, - { - "id": "4F6A532E-58ED-4CB5-9BBB-9E77C128D536", - "baseIconId": "4F6A532E-58ED-4CB5-9BBB-9E77C128D536", - "name": "equalizer", - "codepoint": "F0EA2", - "aliases": [], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Audio" - ], - "author": "Google" - }, - { - "id": "D3AB11FD-F0D5-4228-A6C7-69AC34649A53", - "baseIconId": "4F6A532E-58ED-4CB5-9BBB-9E77C128D536", - "name": "equalizer-outline", - "codepoint": "F0EA3", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Audio" - ], - "author": "Michael Irigoyen" - }, - { - "id": "758CA292-BBF5-4C08-BCBD-88B7A84C8BC6", - "baseIconId": "758CA292-BBF5-4C08-BCBD-88B7A84C8BC6", - "name": "eraser", - "codepoint": "F01FE", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "8E45C70B-EE1A-48AE-B97F-204F1958E788", - "baseIconId": "758CA292-BBF5-4C08-BCBD-88B7A84C8BC6", - "name": "eraser-variant", - "codepoint": "F0642", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "2DB352CF-8F2F-43FD-BCA0-675F7C9D298C", - "baseIconId": "2DB352CF-8F2F-43FD-BCA0-675F7C9D298C", - "name": "escalator", - "codepoint": "F01FF", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Austin Andrews" - }, - { - "id": "B4972D96-B8A1-4964-8A58-FAEA2D0C5FF9", - "baseIconId": "2DB352CF-8F2F-43FD-BCA0-675F7C9D298C", - "name": "escalator-box", - "codepoint": "F1399", - "aliases": [], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [], - "author": "Moma Design Studio" - }, - { - "id": "F29A47AC-C3B6-4568-8ADA-94C5F92F0DC0", - "baseIconId": "2DB352CF-8F2F-43FD-BCA0-675F7C9D298C", - "name": "escalator-down", - "codepoint": "F12C0", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Austin Andrews" - }, - { - "id": "4BA51088-9403-4E34-A829-1F31D8DE2646", - "baseIconId": "2DB352CF-8F2F-43FD-BCA0-675F7C9D298C", - "name": "escalator-up", - "codepoint": "F12BF", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Austin Andrews" - }, - { - "id": "9D305B93-7722-4784-A9D3-8F64824A67AB", - "baseIconId": "9D305B93-7722-4784-A9D3-8F64824A67AB", - "name": "eslint", - "codepoint": "F0C7A", - "aliases": [], - "styles": [], - "version": "3.2.89", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "C3E4BC72-74F1-450D-8B6F-FCF0CB60AA27", - "baseIconId": "C3E4BC72-74F1-450D-8B6F-FCF0CB60AA27", - "name": "et", - "codepoint": "F0AB3", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "D59C885E-233F-4472-AB8C-00C41F96134E", - "baseIconId": "D59C885E-233F-4472-AB8C-00C41F96134E", - "name": "ethereum", - "codepoint": "F086A", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "3AB3C243-0FD3-4903-A6EA-B0B29ABFAD6C", - "baseIconId": "3AB3C243-0FD3-4903-A6EA-B0B29ABFAD6C", - "name": "ethernet", - "codepoint": "F0200", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "FC900F32-A228-4E42-9E09-EA7CCDEC08F2", - "baseIconId": "FC900F32-A228-4E42-9E09-EA7CCDEC08F2", - "name": "ethernet-cable", - "codepoint": "F0201", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "79E1B678-8458-4750-9EE0-C5CE7E57E9F1", - "baseIconId": "FC900F32-A228-4E42-9E09-EA7CCDEC08F2", - "name": "ethernet-cable-off", - "codepoint": "F0202", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "7C687673-B2F0-43B6-A5E3-E25B9FFA0F8E", - "baseIconId": "7C687673-B2F0-43B6-A5E3-E25B9FFA0F8E", - "name": "ev-plug-ccs1", - "codepoint": "F1519", - "aliases": [ - "ev-plug-ccs-combo-1", - "ev-charger-ccs1" - ], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "4FE92E92-170B-495E-A16E-0897AD787E02", - "baseIconId": "4FE92E92-170B-495E-A16E-0897AD787E02", - "name": "ev-plug-ccs2", - "codepoint": "F151A", - "aliases": [ - "ev-plug-ccs-combo-2", - "ev-charger-ccs2" - ], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C2C4C1DC-0FB1-4A1A-AA85-8FD1D8DF4532", - "baseIconId": "C2C4C1DC-0FB1-4A1A-AA85-8FD1D8DF4532", - "name": "ev-plug-chademo", - "codepoint": "F151B", - "aliases": [ - "ev-charger-chademo" - ], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "04B5C8D6-9732-4D4D-AC1B-0C9ED9E3B8DF", - "baseIconId": "04B5C8D6-9732-4D4D-AC1B-0C9ED9E3B8DF", - "name": "ev-plug-tesla", - "codepoint": "F151C", - "aliases": [ - "ev-charger-tesla" - ], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "781567F7-B41B-4CB2-BDD8-DDF3AB75CC57", - "baseIconId": "781567F7-B41B-4CB2-BDD8-DDF3AB75CC57", - "name": "ev-plug-type1", - "codepoint": "F151D", - "aliases": [ - "ev-plug-j1772", - "ev-charger-type1" - ], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F5687378-A23D-4D4C-98A2-55E95642FD06", - "baseIconId": "F5687378-A23D-4D4C-98A2-55E95642FD06", - "name": "ev-plug-type2", - "codepoint": "F151E", - "aliases": [ - "ev-plug-mennekes", - "ev-charger-type2" - ], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7C859DE1-16F6-4EF2-9097-A1D0C14CC3A2", - "baseIconId": "7C859DE1-16F6-4EF2-9097-A1D0C14CC3A2", - "name": "ev-station", - "codepoint": "F05F1", - "aliases": [ - "charging-station", - "ev-charger", - "wall-charger", - "wallbox", - "electric-vehicle-charger", - "evse", - "electric-charger" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Places", - "Automotive" - ], - "author": "Google" - }, - { - "id": "193F4AB4-12B2-4E3C-965F-284967A7F736", - "baseIconId": "193F4AB4-12B2-4E3C-965F-284967A7F736", - "name": "evernote", - "codepoint": "F0204", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "0BD56A12-3F3B-4A3E-96E4-868B5414FD06", - "baseIconId": "0BD56A12-3F3B-4A3E-96E4-868B5414FD06", - "name": "excavator", - "codepoint": "F1025", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Hardware \/ Tools", - "Transportation + Other" - ], - "author": "Michael Irigoyen" - }, - { - "id": "06E68A9B-2ED4-4697-82A2-02F1FA342D55", - "baseIconId": "06E68A9B-2ED4-4697-82A2-02F1FA342D55", - "name": "exclamation", - "codepoint": "F0205", - "aliases": [ - "factorial" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Austin Andrews" - }, - { - "id": "2DEA5CA1-8412-4DA4-95C4-7E1AA2C27404", - "baseIconId": "06E68A9B-2ED4-4697-82A2-02F1FA342D55", - "name": "exclamation-thick", - "codepoint": "F1238", - "aliases": [ - "exclamation-bold" - ], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "frankgrinaert" - }, - { - "id": "9F68722F-B500-48AD-BE3A-EB7591496084", - "baseIconId": "9F68722F-B500-48AD-BE3A-EB7591496084", - "name": "exit-run", - "codepoint": "F0A48", - "aliases": [ - "emergency-exit" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "DD2BE6C6-A15C-44D4-807A-C29DE965CF22", - "baseIconId": "DD2BE6C6-A15C-44D4-807A-C29DE965CF22", - "name": "exit-to-app", - "codepoint": "F0206", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "85080AB7-D860-4D74-86D8-1A2BFF0C0514", - "baseIconId": "4FE8F135-8FF9-427B-8857-122FBB0A300A", - "name": "expand-all", - "codepoint": "F0AB4", - "aliases": [ - "animation-plus" - ], - "styles": [ - "plus" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "934C9329-AC58-499E-BE89-A5E43FA71C6F", - "baseIconId": "4FE8F135-8FF9-427B-8857-122FBB0A300A", - "name": "expand-all-outline", - "codepoint": "F0AB5", - "aliases": [ - "animation-plus-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "6FFC7116-2E5B-40A8-A612-90706DC5EECF", - "baseIconId": "6FFC7116-2E5B-40A8-A612-90706DC5EECF", - "name": "expansion-card", - "codepoint": "F08AE", - "aliases": [ - "gpu", - "graphics-processing-unit", - "nic", - "network-interface-card" - ], - "styles": [], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "GreenTurtwig" - }, - { - "id": "A644DCA0-BDC5-480E-AA15-EFD1B1D4BDEB", - "baseIconId": "6FFC7116-2E5B-40A8-A612-90706DC5EECF", - "name": "expansion-card-variant", - "codepoint": "F0FB2", - "aliases": [ - "graphics-processing-unit", - "gpu", - "network-interface-card", - "nice" - ], - "styles": [ - "variant" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "E26684D6-5292-4B09-98A9-C6C416FD236D", - "baseIconId": "E26684D6-5292-4B09-98A9-C6C416FD236D", - "name": "exponent", - "codepoint": "F0963", - "aliases": [ - "power" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Nick" - }, - { - "id": "F061DE5C-F495-4EDF-BD16-DAD6B07605BC", - "baseIconId": "E26684D6-5292-4B09-98A9-C6C416FD236D", - "name": "exponent-box", - "codepoint": "F0964", - "aliases": [ - "power-box" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Nick" - }, - { - "id": "670C2CEA-D9B1-4126-89F4-C881D032F3AD", - "baseIconId": "670C2CEA-D9B1-4126-89F4-C881D032F3AD", - "name": "export", - "codepoint": "F0207", - "aliases": [ - "output" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "ECCA4152-AD73-4986-ADC4-9FACDC925868", - "baseIconId": "ECCA4152-AD73-4986-ADC4-9FACDC925868", - "name": "export-variant", - "codepoint": "F0B93", - "aliases": [ - "ios-share" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "3C2B7DF3-97FE-4EC4-B6A9-69A75FB26B67", - "baseIconId": "3C2B7DF3-97FE-4EC4-B6A9-69A75FB26B67", - "name": "eye", - "codepoint": "F0208", - "aliases": [ - "show", - "visibility", - "remove-red-eye" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "B3FA5237-3FE4-4822-87EE-0001DD784EE7", - "baseIconId": "3C2B7DF3-97FE-4EC4-B6A9-69A75FB26B67", - "name": "eye-arrow-left", - "codepoint": "F18FD", - "aliases": [ - "view-arrow-left" - ], - "styles": [ - "arrow" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "D979FDDF-45AE-4F37-AC6C-A92B2860BC02", - "baseIconId": "3C2B7DF3-97FE-4EC4-B6A9-69A75FB26B67", - "name": "eye-arrow-left-outline", - "codepoint": "F18FE", - "aliases": [ - "view-arrow-left-outline" - ], - "styles": [ - "arrow", - "outline" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "FFAF8600-64E9-4DEF-B689-D14B95B608CA", - "baseIconId": "3C2B7DF3-97FE-4EC4-B6A9-69A75FB26B67", - "name": "eye-arrow-right", - "codepoint": "F18FF", - "aliases": [ - "view-arrow-right" - ], - "styles": [ - "arrow" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "A682E4C4-6048-4BF7-BBCC-57167CE33687", - "baseIconId": "3C2B7DF3-97FE-4EC4-B6A9-69A75FB26B67", - "name": "eye-arrow-right-outline", - "codepoint": "F1900", - "aliases": [ - "view-arrow-right-outline" - ], - "styles": [ - "arrow", - "outline" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "7534EBC5-1A5B-4837-8C13-88CFA5FB4D49", - "baseIconId": "3C2B7DF3-97FE-4EC4-B6A9-69A75FB26B67", - "name": "eye-check", - "codepoint": "F0D04", - "aliases": [ - "eye-tick" - ], - "styles": [ - "check" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "A2829948-6FFA-48BB-B387-959A7E3658DE", - "baseIconId": "3C2B7DF3-97FE-4EC4-B6A9-69A75FB26B67", - "name": "eye-check-outline", - "codepoint": "F0D05", - "aliases": [ - "eye-tick-outline" - ], - "styles": [ - "check", - "outline" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "9E70DE8C-C973-4A18-A68D-DB6670F5F38A", - "baseIconId": "3C2B7DF3-97FE-4EC4-B6A9-69A75FB26B67", - "name": "eye-circle", - "codepoint": "F0B94", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "4F1A805C-7120-44A2-9A3F-8285411EFE87", - "baseIconId": "3C2B7DF3-97FE-4EC4-B6A9-69A75FB26B67", - "name": "eye-circle-outline", - "codepoint": "F0B95", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "81421142-BE10-4918-8720-5858B7BC2E4B", - "baseIconId": "3C2B7DF3-97FE-4EC4-B6A9-69A75FB26B67", - "name": "eye-closed", - "codepoint": "F1CA3", - "aliases": [ - "eye-shut", - "visibility-hidden" - ], - "styles": [], - "version": "7.3.96", - "deprecated": false, - "tags": [], - "author": "joshua-maros" - }, - { - "id": "D0F73A84-81BB-47B2-993B-0FB019C854B4", - "baseIconId": "3C2B7DF3-97FE-4EC4-B6A9-69A75FB26B67", - "name": "eye-lock", - "codepoint": "F1C06", - "aliases": [], - "styles": [ - "lock" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "BC6FEA4D-DD3C-4EAD-9402-CF1153E8AE52", - "baseIconId": "3C2B7DF3-97FE-4EC4-B6A9-69A75FB26B67", - "name": "eye-lock-open", - "codepoint": "F1C07", - "aliases": [], - "styles": [ - "lock" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "89FC8E98-DF54-42AA-99BA-4AC234151FC6", - "baseIconId": "3C2B7DF3-97FE-4EC4-B6A9-69A75FB26B67", - "name": "eye-lock-open-outline", - "codepoint": "F1C08", - "aliases": [], - "styles": [ - "lock", - "outline" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "EA9ACDD8-28EF-41E1-BE27-64979D52FB0D", - "baseIconId": "3C2B7DF3-97FE-4EC4-B6A9-69A75FB26B67", - "name": "eye-lock-outline", - "codepoint": "F1C09", - "aliases": [], - "styles": [ - "lock", - "outline" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "67AEA391-FE01-41D0-B594-36433AAB099E", - "baseIconId": "3C2B7DF3-97FE-4EC4-B6A9-69A75FB26B67", - "name": "eye-minus", - "codepoint": "F1026", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "F36594D9-9F22-4C8B-BB09-6B89CF203881", - "baseIconId": "3C2B7DF3-97FE-4EC4-B6A9-69A75FB26B67", - "name": "eye-minus-outline", - "codepoint": "F1027", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "4D1385CF-1389-43D3-BD88-A83018434FB6", - "baseIconId": "3C2B7DF3-97FE-4EC4-B6A9-69A75FB26B67", - "name": "eye-off", - "codepoint": "F0209", - "aliases": [ - "hide", - "visibility-off" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "D88D00BE-0B70-40F5-AFD0-51C65DE8D674", - "baseIconId": "3C2B7DF3-97FE-4EC4-B6A9-69A75FB26B67", - "name": "eye-off-outline", - "codepoint": "F06D1", - "aliases": [ - "hide-outline", - "visibility-off-outline" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "F2AA59FA-23F6-4FE8-A52A-AEC674A9E864", - "baseIconId": "3C2B7DF3-97FE-4EC4-B6A9-69A75FB26B67", - "name": "eye-outline", - "codepoint": "F06D0", - "aliases": [ - "show-outline", - "visibility-outline" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "644FD0C7-1B46-48D8-A410-FDA22E63BFCF", - "baseIconId": "3C2B7DF3-97FE-4EC4-B6A9-69A75FB26B67", - "name": "eye-plus", - "codepoint": "F086B", - "aliases": [ - "eye-add" - ], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "C82BEE88-7AAC-4F8D-9A8A-4B0C7CCDF216", - "baseIconId": "3C2B7DF3-97FE-4EC4-B6A9-69A75FB26B67", - "name": "eye-plus-outline", - "codepoint": "F086C", - "aliases": [ - "eye-add-outline" - ], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "2CC60524-7C0C-4AE3-A996-E24066985409", - "baseIconId": "3C2B7DF3-97FE-4EC4-B6A9-69A75FB26B67", - "name": "eye-refresh", - "codepoint": "F197C", - "aliases": [ - "view-refresh" - ], - "styles": [ - "refresh" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [], - "author": "nlsve" - }, - { - "id": "B9A630A0-AF26-4EBC-A822-DFFE9AA01878", - "baseIconId": "3C2B7DF3-97FE-4EC4-B6A9-69A75FB26B67", - "name": "eye-refresh-outline", - "codepoint": "F197D", - "aliases": [ - "view-refresh-outline" - ], - "styles": [ - "outline", - "refresh" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [], - "author": "nlsve" - }, - { - "id": "4CAD2E1D-F56B-40AA-B008-46DEFF9C9540", - "baseIconId": "3C2B7DF3-97FE-4EC4-B6A9-69A75FB26B67", - "name": "eye-remove", - "codepoint": "F15E3", - "aliases": [], - "styles": [ - "remove" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "A1F300D2-BA71-410B-BB70-F18FC666CF35", - "baseIconId": "3C2B7DF3-97FE-4EC4-B6A9-69A75FB26B67", - "name": "eye-remove-outline", - "codepoint": "F15E4", - "aliases": [], - "styles": [ - "outline", - "remove" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "1155E86D-5CA5-4CC0-B089-23DFFC1A3DDD", - "baseIconId": "3C2B7DF3-97FE-4EC4-B6A9-69A75FB26B67", - "name": "eye-settings", - "codepoint": "F086D", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Richins" - }, - { - "id": "45112AC7-F34D-40E8-8C37-D8660B7017E9", - "baseIconId": "3C2B7DF3-97FE-4EC4-B6A9-69A75FB26B67", - "name": "eye-settings-outline", - "codepoint": "F086E", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Richins" - }, - { - "id": "89350468-16D8-4F39-AA78-C3E00EE8FB2C", - "baseIconId": "89350468-16D8-4F39-AA78-C3E00EE8FB2C", - "name": "eyedropper", - "codepoint": "F020A", - "aliases": [ - "pipette" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Color", - "Drawing \/ Art", - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "384E765A-8184-4E9C-8300-FB4928CADA31", - "baseIconId": "89350468-16D8-4F39-AA78-C3E00EE8FB2C", - "name": "eyedropper-minus", - "codepoint": "F13DD", - "aliases": [], - "styles": [ - "minus" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F4A65E44-6B1F-4E9C-954A-B05FAAB3EE6D", - "baseIconId": "89350468-16D8-4F39-AA78-C3E00EE8FB2C", - "name": "eyedropper-off", - "codepoint": "F13DF", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Michael Irigoyen" - }, - { - "id": "FF767930-F19C-4935-8ABB-566DD8B8CF0D", - "baseIconId": "89350468-16D8-4F39-AA78-C3E00EE8FB2C", - "name": "eyedropper-plus", - "codepoint": "F13DC", - "aliases": [], - "styles": [ - "plus" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1224B69E-00A5-422C-A358-61201346175F", - "baseIconId": "89350468-16D8-4F39-AA78-C3E00EE8FB2C", - "name": "eyedropper-remove", - "codepoint": "F13DE", - "aliases": [], - "styles": [ - "remove" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Michael Irigoyen" - }, - { - "id": "24A1E7A8-D8A4-4216-B467-72C144972358", - "baseIconId": "89350468-16D8-4F39-AA78-C3E00EE8FB2C", - "name": "eyedropper-variant", - "codepoint": "F020B", - "aliases": [ - "colorize", - "colourise", - "pipette-variant" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Color", - "Science" - ], - "author": "Google" - }, - { - "id": "3E0B74E0-1F0F-4820-A02F-B370CD56E463", - "baseIconId": "D41E7F40-FF48-422F-A64B-4908C6C10F00", - "name": "face-agent", - "codepoint": "F0D70", - "aliases": [ - "customer-service", - "support", - "emoji-agent", - "emoticon-agent" - ], - "styles": [ - "variant" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Mark Joseph Monserrat" - }, - { - "id": "D41E7F40-FF48-422F-A64B-4908C6C10F00", - "baseIconId": "D41E7F40-FF48-422F-A64B-4908C6C10F00", - "name": "face-man", - "codepoint": "F0643", - "aliases": [ - "face-male", - "emoji-man", - "emoticon-man" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "CFDA13BC-C61A-4FE0-8094-7B51E8EB3F82", - "baseIconId": "D41E7F40-FF48-422F-A64B-4908C6C10F00", - "name": "face-man-outline", - "codepoint": "F0B96", - "aliases": [ - "face-male-outline", - "emoji-man-outline", - "emoticon-man-outline" - ], - "styles": [ - "outline" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "97E9CDDB-45B3-4592-8E1F-0DB66E16E1A3", - "baseIconId": "D41E7F40-FF48-422F-A64B-4908C6C10F00", - "name": "face-man-profile", - "codepoint": "F0644", - "aliases": [ - "face-male-profile", - "emoji-man-profile", - "emoticon-man-profile" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "4680BCD4-CD85-45A0-9F1C-FB367E768664", - "baseIconId": "D41E7F40-FF48-422F-A64B-4908C6C10F00", - "name": "face-man-shimmer", - "codepoint": "F15CC", - "aliases": [ - "face-retouching-natural", - "face-male-shimmer", - "emoji-man-shimmer", - "emoticon-man-shimmer" - ], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Photography", - "Account \/ User", - "Health \/ Beauty", - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "CC7A66A4-2118-4635-B227-C184D8903867", - "baseIconId": "D41E7F40-FF48-422F-A64B-4908C6C10F00", - "name": "face-man-shimmer-outline", - "codepoint": "F15CD", - "aliases": [ - "face-retouching-natural-outline", - "face-male-shimmer-outline", - "emoji-man-shimmer-outline", - "emoticon-man-shimmer-outline" - ], - "styles": [ - "outline" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "People \/ Family", - "Photography", - "Health \/ Beauty", - "Account \/ User" - ], - "author": "Simran" - }, - { - "id": "8E3EC802-4BC1-44CA-83AB-9A43E55E238C", - "baseIconId": "8E3EC802-4BC1-44CA-83AB-9A43E55E238C", - "name": "face-mask", - "codepoint": "F1586", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Medical \/ Hospital", - "Clothing" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0143A0CC-E3FA-485F-B3CA-6B61EE86F066", - "baseIconId": "8E3EC802-4BC1-44CA-83AB-9A43E55E238C", - "name": "face-mask-outline", - "codepoint": "F1587", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Medical \/ Hospital", - "Clothing" - ], - "author": "Michael Irigoyen" - }, - { - "id": "FDC4CFE0-5CA9-4F8E-A126-EC98BF900228", - "baseIconId": "D41E7F40-FF48-422F-A64B-4908C6C10F00", - "name": "face-recognition", - "codepoint": "F0C7B", - "aliases": [ - "facial-recognition", - "scan" - ], - "styles": [ - "variant" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Michael Richins" - }, - { - "id": "C591017E-E3D0-48CA-A517-86B21DE853A0", - "baseIconId": "D41E7F40-FF48-422F-A64B-4908C6C10F00", - "name": "face-woman", - "codepoint": "F1077", - "aliases": [ - "face-female", - "emoji-woman", - "emoticon-woman" - ], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F8B0D936-DFD2-469C-B671-599D3B277B51", - "baseIconId": "D41E7F40-FF48-422F-A64B-4908C6C10F00", - "name": "face-woman-outline", - "codepoint": "F1078", - "aliases": [ - "face-female-outline", - "emoji-woman-outline", - "emoticon-woman-outline" - ], - "styles": [ - "outline" - ], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Michael Irigoyen" - }, - { - "id": "144C6FB3-DBAC-4CA7-B07C-51265D8EE619", - "baseIconId": "D41E7F40-FF48-422F-A64B-4908C6C10F00", - "name": "face-woman-profile", - "codepoint": "F1076", - "aliases": [ - "face-female-profile", - "emoji-woman-profile", - "emoticon-woman-profile" - ], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Michael Irigoyen" - }, - { - "id": "97F4C885-AB98-45C3-85C7-E5DA25ECD271", - "baseIconId": "D41E7F40-FF48-422F-A64B-4908C6C10F00", - "name": "face-woman-shimmer", - "codepoint": "F15CE", - "aliases": [ - "face-retouching-natural-woman", - "face-female-shimmer", - "emoji-woman-shimmer", - "emoticon-woman-shimmer" - ], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "People \/ Family", - "Photography", - "Health \/ Beauty", - "Account \/ User" - ], - "author": "Simran" - }, - { - "id": "43851D4C-D310-45C3-9A86-6BF5DFD51055", - "baseIconId": "D41E7F40-FF48-422F-A64B-4908C6C10F00", - "name": "face-woman-shimmer-outline", - "codepoint": "F15CF", - "aliases": [ - "face-retouching-natural-woman-outline", - "face-female-shimmer-outline", - "emoji-woman-shimmer-outline", - "emoticon-woman-shimmer-outline" - ], - "styles": [ - "outline" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "People \/ Family", - "Photography", - "Health \/ Beauty", - "Account \/ User" - ], - "author": "Simran" - }, - { - "id": "95CC9E46-A553-42B3-B44E-2E88DB13C1E1", - "baseIconId": "95CC9E46-A553-42B3-B44E-2E88DB13C1E1", - "name": "facebook", - "codepoint": "F020C", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Social Media" - ], - "author": "Contributors" - }, - { - "id": "62F96579-80AE-4827-9C18-1C1FD239DE49", - "baseIconId": "62F96579-80AE-4827-9C18-1C1FD239DE49", - "name": "facebook-gaming", - "codepoint": "F07DD", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "1989DA16-DAA9-4C95-A61F-BA512FE5592D", - "baseIconId": "1989DA16-DAA9-4C95-A61F-BA512FE5592D", - "name": "facebook-messenger", - "codepoint": "F020E", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Social Media" - ], - "author": "Contributors" - }, - { - "id": "767ACA6B-1ECD-4D4E-AE5D-4E1EB3C87D72", - "baseIconId": "767ACA6B-1ECD-4D4E-AE5D-4E1EB3C87D72", - "name": "facebook-workplace", - "codepoint": "F0B31", - "aliases": [], - "styles": [], - "version": "2.8.94", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Social Media" - ], - "author": "Contributors" - }, - { - "id": "B74F1DE6-5DEC-4866-AEED-DE85FE09C52F", - "baseIconId": "B74F1DE6-5DEC-4866-AEED-DE85FE09C52F", - "name": "factory", - "codepoint": "F020F", - "aliases": [ - "industrial" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Places" - ], - "author": "Austin Andrews" - }, - { - "id": "AB0F3BD7-1D6E-4ED6-8CC4-28E5ECCEF017", - "baseIconId": "AB0F3BD7-1D6E-4ED6-8CC4-28E5ECCEF017", - "name": "family-tree", - "codepoint": "F160E", - "aliases": [], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Simran" - }, - { - "id": "2606F8A3-AFD7-41EB-BD2D-C3546FEADB2F", - "baseIconId": "2606F8A3-AFD7-41EB-BD2D-C3546FEADB2F", - "name": "fan", - "codepoint": "F0210", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation", - "Automotive" - ], - "author": "Austin Andrews" - }, - { - "id": "94B156B3-7C70-4C0A-B1A8-99BEEA9C6357", - "baseIconId": "2606F8A3-AFD7-41EB-BD2D-C3546FEADB2F", - "name": "fan-alert", - "codepoint": "F146C", - "aliases": [], - "styles": [ - "alert" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Home Automation", - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E695511A-9F45-44DC-9F98-9E946CC02ECC", - "baseIconId": "2606F8A3-AFD7-41EB-BD2D-C3546FEADB2F", - "name": "fan-auto", - "codepoint": "F171D", - "aliases": [], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "Hans B\u00f6hm" - }, - { - "id": "33DAA830-9E16-4AF0-A1B8-F44EA4EF9787", - "baseIconId": "2606F8A3-AFD7-41EB-BD2D-C3546FEADB2F", - "name": "fan-chevron-down", - "codepoint": "F146D", - "aliases": [ - "fan-speed-down" - ], - "styles": [ - "arrow" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "1FC6584B-6B87-40C8-BA9D-C18E221A247D", - "baseIconId": "2606F8A3-AFD7-41EB-BD2D-C3546FEADB2F", - "name": "fan-chevron-up", - "codepoint": "F146E", - "aliases": [ - "fan-speed-up" - ], - "styles": [ - "arrow" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "BF3F7855-4971-4FA7-9BB8-8ED99E697D7A", - "baseIconId": "2606F8A3-AFD7-41EB-BD2D-C3546FEADB2F", - "name": "fan-clock", - "codepoint": "F1A3A", - "aliases": [ - "fan-clock", - "fan-schedule", - "fan-timer" - ], - "styles": [ - "clock" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation", - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "FB53FDB5-A8D0-42F6-882F-63C1A683577E", - "baseIconId": "2606F8A3-AFD7-41EB-BD2D-C3546FEADB2F", - "name": "fan-minus", - "codepoint": "F1470", - "aliases": [], - "styles": [ - "minus" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "BB761A30-6F3C-484D-A0C9-501972F544AB", - "baseIconId": "2606F8A3-AFD7-41EB-BD2D-C3546FEADB2F", - "name": "fan-off", - "codepoint": "F081D", - "aliases": [], - "styles": [ - "off" - ], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Home Automation", - "Automotive" - ], - "author": "GreenTurtwig" - }, - { - "id": "DD3CD93C-5877-4234-9944-61C10457FDCE", - "baseIconId": "2606F8A3-AFD7-41EB-BD2D-C3546FEADB2F", - "name": "fan-plus", - "codepoint": "F146F", - "aliases": [], - "styles": [ - "plus" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "3E4A1DFD-92C2-4CA0-BD74-A98496721825", - "baseIconId": "2606F8A3-AFD7-41EB-BD2D-C3546FEADB2F", - "name": "fan-remove", - "codepoint": "F1471", - "aliases": [], - "styles": [ - "remove" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F01D5822-D36A-4A41-9544-3B1E8702582F", - "baseIconId": "2606F8A3-AFD7-41EB-BD2D-C3546FEADB2F", - "name": "fan-speed-1", - "codepoint": "F1472", - "aliases": [ - "fan-speed-low" - ], - "styles": [ - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "AFC8D4DB-4196-41E6-8EBC-A6509F96EA71", - "baseIconId": "2606F8A3-AFD7-41EB-BD2D-C3546FEADB2F", - "name": "fan-speed-2", - "codepoint": "F1473", - "aliases": [ - "fan-speed-medium" - ], - "styles": [ - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0EA7825B-6236-40D5-A8D9-858B2B4DB595", - "baseIconId": "2606F8A3-AFD7-41EB-BD2D-C3546FEADB2F", - "name": "fan-speed-3", - "codepoint": "F1474", - "aliases": [ - "fan-speed-high" - ], - "styles": [ - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "98B9D071-70A9-422B-BCC1-55DC4C2E0744", - "baseIconId": "98B9D071-70A9-422B-BCC1-55DC4C2E0744", - "name": "fast-forward", - "codepoint": "F0211", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "960E88C3-D86B-4A9A-8581-799816D12194", - "baseIconId": "960E88C3-D86B-4A9A-8581-799816D12194", - "name": "fast-forward-10", - "codepoint": "F0D71", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "5C0FCEDF-44B3-4F3A-8D6A-6AB54EBC55F6", - "baseIconId": "5C0FCEDF-44B3-4F3A-8D6A-6AB54EBC55F6", - "name": "fast-forward-15", - "codepoint": "F193A", - "aliases": [], - "styles": [], - "version": "6.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "23895783-905C-45DE-BF43-D58214199B75", - "baseIconId": "23895783-905C-45DE-BF43-D58214199B75", - "name": "fast-forward-30", - "codepoint": "F0D06", - "aliases": [], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "4F6C14E9-E2B0-4A04-B5F8-F33035191724", - "baseIconId": "4F6C14E9-E2B0-4A04-B5F8-F33035191724", - "name": "fast-forward-45", - "codepoint": "F1B12", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "C57CDDE7-5F5E-44B4-B1E2-E5FEFBB17A85", - "baseIconId": "C57CDDE7-5F5E-44B4-B1E2-E5FEFBB17A85", - "name": "fast-forward-5", - "codepoint": "F11F8", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "CF6C15FF-1B2F-4E4B-AE45-C1487815CA07", - "baseIconId": "CF6C15FF-1B2F-4E4B-AE45-C1487815CA07", - "name": "fast-forward-60", - "codepoint": "F160B", - "aliases": [], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Terren" - }, - { - "id": "05435BA8-4BB4-4581-A2BA-D2D7679B831F", - "baseIconId": "98B9D071-70A9-422B-BCC1-55DC4C2E0744", - "name": "fast-forward-outline", - "codepoint": "F06D2", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "AEE38946-ADDE-4AFA-B450-D13590926CA4", - "baseIconId": "AEE38946-ADDE-4AFA-B450-D13590926CA4", - "name": "faucet", - "codepoint": "F1B29", - "aliases": [ - "kitchen-tap", - "bathroom-tap", - "sink" - ], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "17559442-5EF5-416D-A96A-51ED8526C530", - "baseIconId": "17559442-5EF5-416D-A96A-51ED8526C530", - "name": "faucet-variant", - "codepoint": "F1B2A", - "aliases": [ - "bathroom-tap", - "kitchen-tap", - "sink" - ], - "styles": [ - "variant" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2C398569-5DBF-4405-AF73-6F5CA629AEE1", - "baseIconId": "2C398569-5DBF-4405-AF73-6F5CA629AEE1", - "name": "fax", - "codepoint": "F0212", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Printer", - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "A0C975EA-A25D-4882-96DE-39CB72DAC2CA", - "baseIconId": "A0C975EA-A25D-4882-96DE-39CB72DAC2CA", - "name": "feather", - "codepoint": "F06D3", - "aliases": [ - "quill" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Nature" - ], - "author": "Simran" - }, - { - "id": "FC8210F4-FE5E-4A83-86DE-DA1B19739118", - "baseIconId": "FC8210F4-FE5E-4A83-86DE-DA1B19739118", - "name": "feature-search", - "codepoint": "F0A49", - "aliases": [ - "box", - "box-search" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "AE8C42B6-43EE-433C-83A3-83CE7464240E", - "baseIconId": "FC8210F4-FE5E-4A83-86DE-DA1B19739118", - "name": "feature-search-outline", - "codepoint": "F0A4A", - "aliases": [ - "box", - "box-outline", - "box-search-outline" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "15F2366C-5930-4473-B298-A5B952F07D59", - "baseIconId": "15F2366C-5930-4473-B298-A5B952F07D59", - "name": "fedora", - "codepoint": "F08DB", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "CAFE2FF6-D1D5-4411-9AA1-33C5076F0E4E", - "baseIconId": "CAFE2FF6-D1D5-4411-9AA1-33C5076F0E4E", - "name": "fence", - "codepoint": "F179A", - "aliases": [ - "railway", - "train-track" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9B54CB49-9186-4EB1-80D2-A92E616B9603", - "baseIconId": "CAFE2FF6-D1D5-4411-9AA1-33C5076F0E4E", - "name": "fence-electric", - "codepoint": "F17F6", - "aliases": [ - "railway-electric", - "train-track-electric" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "325210DA-E889-4CBD-B0A7-8A32D706322B", - "baseIconId": "325210DA-E889-4CBD-B0A7-8A32D706322B", - "name": "fencing", - "codepoint": "F14C1", - "aliases": [ - "sword-fight" - ], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Google" - }, - { - "id": "AD285056-9A97-4C52-8D7D-06D4D1DA4213", - "baseIconId": "AD285056-9A97-4C52-8D7D-06D4D1DA4213", - "name": "ferris-wheel", - "codepoint": "F0EA4", - "aliases": [], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "F138AC6A-406B-4EB0-BB85-0FDB5415B6F8", - "baseIconId": "F138AC6A-406B-4EB0-BB85-0FDB5415B6F8", - "name": "ferry", - "codepoint": "F0213", - "aliases": [ - "cargo-ship", - "boat", - "ship", - "directions-boat", - "directions-ferry" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Water", - "Navigation" - ], - "author": "Google" - }, - { - "id": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file", - "codepoint": "F0214", - "aliases": [ - "insert-drive-file", - "draft", - "paper" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Google" - }, - { - "id": "94A8A0E0-B69E-4099-A32E-34B83449AFBC", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-account", - "codepoint": "F073B", - "aliases": [ - "file-user", - "resume" - ], - "styles": [ - "account" - ], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Account \/ User", - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "E0043E71-ED74-419B-82A9-10D678DF74B3", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-account-outline", - "codepoint": "F1028", - "aliases": [], - "styles": [ - "account", - "outline" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Account \/ User" - ], - "author": "Terren" - }, - { - "id": "33050FDD-7F04-44B1-AF59-BFED56FE34CF", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-alert", - "codepoint": "F0A4B", - "aliases": [ - "file-warning" - ], - "styles": [ - "alert" - ], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Alert \/ Error" - ], - "author": "Simran" - }, - { - "id": "0FF64B42-C9F6-4A0A-B09D-38D2AED8C81C", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-alert-outline", - "codepoint": "F0A4C", - "aliases": [ - "file-warning-outline" - ], - "styles": [ - "alert", - "outline" - ], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Alert \/ Error" - ], - "author": "Simran" - }, - { - "id": "05D3C734-5B81-429E-8D2D-45E1AF5CD6A7", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-arrow-left-right", - "codepoint": "F1A93", - "aliases": [ - "file-exchange", - "file-transfer", - "file-swap" - ], - "styles": [ - "arrow" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "F926E7AB-0C0A-45B6-BC16-F922C8CB6BED", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-arrow-left-right-outline", - "codepoint": "F1A94", - "aliases": [ - "file-exchange-outline", - "file-swap-outline", - "file-transfer-outline" - ], - "styles": [], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "8D429186-1CB7-4DC1-AD90-43F2F41AF424", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-arrow-up-down", - "codepoint": "F1A95", - "aliases": [ - "file-exchange", - "file-swap", - "file-transfer", - "file-upload-download" - ], - "styles": [], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "4D08B9C5-576C-430B-9319-597190ABA71D", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-arrow-up-down-outline", - "codepoint": "F1A96", - "aliases": [ - "file-exchange-outline", - "file-swap-outline", - "file-transfer-outline", - "file-upload-download-outline" - ], - "styles": [], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "1B650467-2000-4A2D-B16D-9BD8A8F32B85", - "baseIconId": "1B650467-2000-4A2D-B16D-9BD8A8F32B85", - "name": "file-cabinet", - "codepoint": "F0AB6", - "aliases": [ - "filing-cabinet" - ], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "AA9999FD-3434-42B9-B589-606EF1D563EA", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-cad", - "codepoint": "F0EEB", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "GreenTurtwig" - }, - { - "id": "7FF119BB-AE68-49A0-8104-0C4CA4FE829F", - "baseIconId": "32E03B3D-EAFA-4483-AE94-E43944F0F0AE", - "name": "file-cad-box", - "codepoint": "F0EEC", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "GreenTurtwig" - }, - { - "id": "1C9C326F-B0B6-41A9-825D-83A458689345", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-cancel", - "codepoint": "F0DC6", - "aliases": [ - "ban", - "forbid" - ], - "styles": [ - "variant" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1DCEA17F-A76F-412E-8C25-52C9F3D63B48", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-cancel-outline", - "codepoint": "F0DC7", - "aliases": [ - "ban", - "forbid" - ], - "styles": [ - "outline", - "variant" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5BEF006A-53C0-4401-87DB-F21642667712", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-certificate", - "codepoint": "F1186", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Richins" - }, - { - "id": "06595A20-8863-4B8C-B74D-C1DA1D32D88F", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-certificate-outline", - "codepoint": "F1187", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Richins" - }, - { - "id": "303BB890-634F-405C-B77C-4AC831BCAEC4", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-chart", - "codepoint": "F0215", - "aliases": [ - "file-report", - "file-graph" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "B7778AA5-6982-4820-A733-996314D07B82", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-chart-check", - "codepoint": "F19C6", - "aliases": [], - "styles": [ - "check", - "variant" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "8051BED5-0582-4A3A-91F3-E29484840427", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-chart-check-outline", - "codepoint": "F19C7", - "aliases": [], - "styles": [ - "check", - "outline", - "variant" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "E8F550E7-DE55-47CE-B548-4B6987B9FDE7", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-chart-outline", - "codepoint": "F1029", - "aliases": [ - "file-graph-outline", - "file-report-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Terren" - }, - { - "id": "9E66E6CF-74AD-4DB5-953B-DC135B4AD44C", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-check", - "codepoint": "F0216", - "aliases": [ - "file-tick" - ], - "styles": [ - "check" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "8F78A49B-57D2-4DCC-8A49-8E07F3F5C0D5", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-check-outline", - "codepoint": "F0E29", - "aliases": [], - "styles": [ - "check", - "outline" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "AA0F1B90-E844-4BE2-BD8F-6D7AAB2451AB", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-clock", - "codepoint": "F12E1", - "aliases": [], - "styles": [ - "clock" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Date \/ Time" - ], - "author": "Simran" - }, - { - "id": "90AB6510-AEEC-4C00-BCFD-71B3F6E591CC", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-clock-outline", - "codepoint": "F12E2", - "aliases": [], - "styles": [ - "clock", - "outline" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Date \/ Time" - ], - "author": "Simran" - }, - { - "id": "452A53B0-3718-4483-ABB0-2897EBE97312", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-cloud", - "codepoint": "F0217", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cloud", - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "99B45E9A-4FCA-429F-B98D-1E9C0EAAE0CF", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-cloud-outline", - "codepoint": "F102A", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Cloud" - ], - "author": "Terren" - }, - { - "id": "F11E3989-CBFD-4431-BDC1-44AEBBCDD8F6", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-code", - "codepoint": "F022E", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Developer \/ Languages" - ], - "author": "Austin Andrews" - }, - { - "id": "B226F0F1-F2C9-45C1-A940-2517FAC9F623", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-code-outline", - "codepoint": "F102B", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Developer \/ Languages" - ], - "author": "Terren" - }, - { - "id": "73890E82-6C92-4578-B1D4-51D83CB5DDDE", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-cog", - "codepoint": "F107B", - "aliases": [ - "file-settings-cog" - ], - "styles": [ - "settings", - "variant" - ], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Settings", - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "6ABE5D01-4204-46C0-B0D8-B3904C2E64C2", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-cog-outline", - "codepoint": "F107C", - "aliases": [ - "file-settings-cog-outline" - ], - "styles": [ - "outline", - "settings", - "variant" - ], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Settings", - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "2169C66B-967F-4AB4-9123-A8A2C6129D6C", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-compare", - "codepoint": "F08AA", - "aliases": [], - "styles": [], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "46650D6B-318F-4202-AB77-79A113EC77AA", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-delimited", - "codepoint": "F0218", - "aliases": [ - "file-csv" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "35CE4750-7CA9-4C9B-AB11-5C1F2A092C9C", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-delimited-outline", - "codepoint": "F0EA5", - "aliases": [ - "file-csv-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Terren" - }, - { - "id": "B8F65B26-E57F-4879-852E-D894E4ACAB65", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-document", - "codepoint": "F0219", - "aliases": [ - "file-text" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "67AF0ACC-DE69-4E39-8226-B913764EAFE5", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-document-alert", - "codepoint": "F1A97", - "aliases": [ - "file-document-error", - "file-text-alert", - "file-text-error" - ], - "styles": [ - "alert", - "variant" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Alert \/ Error" - ], - "author": "Simran" - }, - { - "id": "CF5F798F-BB0B-4F5A-98C4-3CFADF57BAA3", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-document-alert-outline", - "codepoint": "F1A98", - "aliases": [ - "file-document-error-outline", - "file-text-error-outline", - "file-text-alert-outline" - ], - "styles": [ - "alert", - "outline", - "variant" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Alert \/ Error" - ], - "author": "Simran" - }, - { - "id": "31314AE5-195A-4F48-847C-AC6D8A69360D", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-document-arrow-right", - "codepoint": "F1C0F", - "aliases": [ - "file-document-move", - "file-text-move", - "file-text-arrow-right" - ], - "styles": [ - "arrow" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Andrej Sharapov" - }, - { - "id": "DF8391C4-0B76-4A72-A39E-4DDB40092B8C", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-document-arrow-right-outline", - "codepoint": "F1C10", - "aliases": [ - "file-document-move-outline", - "file-text-move-outline", - "file-text-arrow-right-outline" - ], - "styles": [ - "arrow" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Andrej Sharapov" - }, - { - "id": "F51E0270-13FD-4DA5-945B-FE8C4C45AF60", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-document-check", - "codepoint": "F1A99", - "aliases": [ - "file-document-tick", - "file-text-tick", - "file-text-check" - ], - "styles": [ - "check", - "variant" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "AC9C336A-83D0-4FB0-B61A-C6AC0FC2A069", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-document-check-outline", - "codepoint": "F1A9A", - "aliases": [ - "file-document-tick-outline", - "file-text-tick-outline", - "file-text-check-outline" - ], - "styles": [ - "check", - "outline", - "variant" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "83E06672-D36B-41FF-8463-080EB639F00F", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-document-edit", - "codepoint": "F0DC8", - "aliases": [ - "contract", - "file-text-edit" - ], - "styles": [ - "edit" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Edit \/ Modify", - "Files \/ Folders" - ], - "author": "GreenTurtwig" - }, - { - "id": "E33F3608-CA6A-4BC3-BA3B-16AC369F10FD", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-document-edit-outline", - "codepoint": "F0DC9", - "aliases": [ - "contract-outline", - "file-text-edit-outline" - ], - "styles": [ - "edit", - "outline" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Edit \/ Modify", - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A7695AE5-5CF1-42B3-BBAE-516D143CF87C", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-document-minus", - "codepoint": "F1A9B", - "aliases": [ - "file-text-minus" - ], - "styles": [ - "minus", - "variant" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "17759ECD-FE1E-446F-96C1-ED8C0F5EA783", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-document-minus-outline", - "codepoint": "F1A9C", - "aliases": [ - "file-text-minus-outline" - ], - "styles": [ - "minus", - "outline", - "variant" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "05A5AF1D-055E-4FBB-BDD4-D20F3EF105DC", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-document-multiple", - "codepoint": "F1517", - "aliases": [ - "file-text-multiple" - ], - "styles": [ - "multiple" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Robbert Gurdeep Singh" - }, - { - "id": "F0545588-B29A-454E-B023-4FC4ED30BCDD", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-document-multiple-outline", - "codepoint": "F1518", - "aliases": [ - "file-text-multiple-outline" - ], - "styles": [ - "multiple", - "outline" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5CB4D11F-6B3A-465D-A2CD-F4172AD287B0", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-document-outline", - "codepoint": "F09EE", - "aliases": [ - "file-text-outline" - ], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Google" - }, - { - "id": "2382A261-E45B-429D-A2E2-29DA654064E1", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-document-plus", - "codepoint": "F1A9D", - "aliases": [ - "file-document-add", - "file-text-add", - "file-text-plus" - ], - "styles": [ - "plus", - "variant" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "99FAD22E-FB80-45AA-9423-3E4E2A369F1F", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-document-plus-outline", - "codepoint": "F1A9E", - "aliases": [ - "file-document-add-outline", - "file-text-plus-outline", - "file-text-add-outline" - ], - "styles": [ - "outline", - "plus", - "variant" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "8FD1C2DF-1063-4E5F-966B-99794441E8C6", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-document-refresh", - "codepoint": "F1C7A", - "aliases": [], - "styles": [ - "refresh" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Jeff Anders" - }, - { - "id": "552EA028-A83A-4018-8277-58191691C816", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-document-refresh-outline", - "codepoint": "F1C7B", - "aliases": [], - "styles": [ - "outline", - "refresh" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Jeff Anders" - }, - { - "id": "E5F73E5B-9876-469A-B992-EC6DA553DE1B", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-document-remove", - "codepoint": "F1A9F", - "aliases": [ - "file-document-delete", - "file-text-remove", - "file-text-delete" - ], - "styles": [ - "remove", - "variant" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "9125073F-13EB-4FAD-AE78-30E02AC5B906", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-document-remove-outline", - "codepoint": "F1AA0", - "aliases": [ - "file-document-delete-outline", - "file-text-remove-outline", - "file-text-delete-outline" - ], - "styles": [ - "outline", - "remove", - "variant" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "305DC085-34BD-4CC1-8943-E8A3B64FD110", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-download", - "codepoint": "F0965", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "50DFA593-C997-41BD-B77E-2468649E2C1B", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-download-outline", - "codepoint": "F0966", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "65092A6A-E7E4-42BF-91F7-9AE7F50727D4", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-edit", - "codepoint": "F11E7", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Edit \/ Modify", - "Files \/ Folders" - ], - "author": "frankgrinaert" - }, - { - "id": "2EE03BED-7F6F-422E-9AAE-AAED4B591266", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-edit-outline", - "codepoint": "F11E8", - "aliases": [], - "styles": [ - "outline" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Edit \/ Modify", - "Files \/ Folders" - ], - "author": "frankgrinaert" - }, - { - "id": "C3AADE94-4136-4D8E-8DFE-9AA7C88EE5D5", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-excel", - "codepoint": "F021B", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "A2FE83DC-3544-4D13-85BD-2C54CDC1A460", - "baseIconId": "32E03B3D-EAFA-4483-AE94-E43944F0F0AE", - "name": "file-excel-box", - "codepoint": "F021C", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Google" - }, - { - "id": "0C257A18-698B-4FF4-BC68-828FFF2A9C34", - "baseIconId": "32E03B3D-EAFA-4483-AE94-E43944F0F0AE", - "name": "file-excel-box-outline", - "codepoint": "F102C", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Terren" - }, - { - "id": "73706EB5-5497-459A-B9C7-1C64089F31CE", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-excel-outline", - "codepoint": "F102D", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Terren" - }, - { - "id": "5693BB52-A00A-45E6-8DDD-C84FE3D9D440", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-export", - "codepoint": "F021D", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "25475106-D60D-4D23-BF07-4BAADB0EA9AA", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-export-outline", - "codepoint": "F102E", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Terren" - }, - { - "id": "1417ADBB-4A11-448B-A6BA-E5D4B5A20BFF", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-eye", - "codepoint": "F0DCA", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A2B55937-B45F-441A-802F-4FAD69EB2144", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-eye-outline", - "codepoint": "F0DCB", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A9D2E13D-A9F6-48AC-9998-22756DA6C709", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-find", - "codepoint": "F021E", - "aliases": [ - "print-preview", - "find-in-page" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Google" - }, - { - "id": "6CB8D807-BD25-4270-80F7-F71A8D4D57C7", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-find-outline", - "codepoint": "F0B97", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Google" - }, - { - "id": "7FCFB449-8096-408A-88E4-B73343DB201F", - "baseIconId": "7FCFB449-8096-408A-88E4-B73343DB201F", - "name": "file-gif-box", - "codepoint": "F0D78", - "aliases": [], - "styles": [ - "box" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "22033CAF-C8AF-4C33-9FCD-9D6FC4EE7EAF", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-hidden", - "codepoint": "F0613", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "2318EAB3-F03A-40C3-A245-668B244A9AC1", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-image", - "codepoint": "F021F", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "5E5F502C-C492-45EC-886C-CC55C6E4C504", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-image-marker", - "codepoint": "F1772", - "aliases": [ - "file-image-location" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Navigation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "BE46BBCE-2872-4DBE-976E-AC9BC2CE19D3", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-image-marker-outline", - "codepoint": "F1773", - "aliases": [ - "file-image-location-outline" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Navigation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "C287BF1A-101C-42E3-BD19-3F1D8D3FDAA6", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-image-minus", - "codepoint": "F193B", - "aliases": [], - "styles": [ - "minus", - "variant" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "533EE300-7DC5-4F89-898D-E1E005303AFD", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-image-minus-outline", - "codepoint": "F193C", - "aliases": [], - "styles": [ - "minus", - "outline", - "variant" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C86DDD85-B79F-43C4-9497-839FF4BD7526", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-image-outline", - "codepoint": "F0EB0", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Terren" - }, - { - "id": "687ED5E3-8466-48F0-A5D3-1D5EBB95B9F4", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-image-plus", - "codepoint": "F193D", - "aliases": [ - "file-image-add" - ], - "styles": [ - "plus", - "variant" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0D25D768-827E-4FE8-9A45-67D883E3B6FA", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-image-plus-outline", - "codepoint": "F193E", - "aliases": [ - "file-image-add-outline" - ], - "styles": [ - "outline", - "plus", - "variant" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "EB4547CB-7AEA-4FB0-B840-5ABA6FA4F1F8", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-image-remove", - "codepoint": "F193F", - "aliases": [], - "styles": [ - "remove", - "variant" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "472463C9-3A6A-47E9-9ED9-9DEF17C3ACDA", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-image-remove-outline", - "codepoint": "F1940", - "aliases": [], - "styles": [ - "outline", - "remove", - "variant" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1294020B-960A-4390-916F-BF8118A6E7C6", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-import", - "codepoint": "F0220", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "EA70B568-90C1-4512-BF97-00F4AD27F459", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-import-outline", - "codepoint": "F102F", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Terren" - }, - { - "id": "D5A23F56-0398-40EF-8B0D-640CD1F39669", - "baseIconId": "D5A23F56-0398-40EF-8B0D-640CD1F39669", - "name": "file-jpg-box", - "codepoint": "F0225", - "aliases": [ - "file-jpeg-box", - "image-jpg-box", - "image-jpeg-box" - ], - "styles": [ - "box" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E854DC61-449E-4BA2-BAC7-656A3BB3D775", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-key", - "codepoint": "F1184", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Richins" - }, - { - "id": "4E2214AD-9EB5-498C-BA9B-38072C463B43", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-key-outline", - "codepoint": "F1185", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Richins" - }, - { - "id": "AD9A7D67-1BCF-42D6-8321-AFE1705DE2A6", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-link", - "codepoint": "F1177", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "337D2BB6-6230-4896-B51B-9A8527FF3DFA", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-link-outline", - "codepoint": "F1178", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1D017133-E895-4103-98C1-E90D26126003", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-lock", - "codepoint": "F0221", - "aliases": [], - "styles": [ - "lock" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Lock", - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "E59676A5-2E82-4B91-8887-4ADDEB5E2204", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-lock-open", - "codepoint": "F19C8", - "aliases": [], - "styles": [ - "lock" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Lock", - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "D94F03DE-9FA8-4AF4-AB95-3EDB4DB97522", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-lock-open-outline", - "codepoint": "F19C9", - "aliases": [], - "styles": [ - "lock", - "outline" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Lock", - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "658B01A1-E16D-4D8E-B274-C66465BF1CE3", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-lock-outline", - "codepoint": "F1030", - "aliases": [], - "styles": [ - "lock", - "outline" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Lock" - ], - "author": "Simran" - }, - { - "id": "C6C876E6-1A2C-4776-9A4C-5114EF50D3DA", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-marker", - "codepoint": "F1774", - "aliases": [ - "file-location" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Navigation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "96A7C92B-3EDA-40C8-B21D-45355968345C", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-marker-outline", - "codepoint": "F1775", - "aliases": [ - "file-location-outline" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Navigation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "64C92887-5567-486D-97DC-C0353EA9EA98", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-minus", - "codepoint": "F1AA1", - "aliases": [], - "styles": [ - "minus" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "02C02D19-06BA-45DF-AE33-40EA2B7F5E19", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-minus-outline", - "codepoint": "F1AA2", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "BB72067F-4002-409B-BD46-6FD6F9CEBA51", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-move", - "codepoint": "F0AB9", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "B1BE9CC2-F8BF-4EB9-94BB-0B3041D0FBB4", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-move-outline", - "codepoint": "F1031", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Terren" - }, - { - "id": "7696AF65-B943-4BA3-94DB-5E85077F7BA9", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-multiple", - "codepoint": "F0222", - "aliases": [ - "files" - ], - "styles": [ - "multiple" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "13BC9B18-661D-4517-84E9-756EC2536F4E", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-multiple-outline", - "codepoint": "F1032", - "aliases": [], - "styles": [ - "multiple", - "outline" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Terren" - }, - { - "id": "C6CD26A5-C5F6-4C5D-AF2C-919E8ED4166C", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-music", - "codepoint": "F0223", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Music" - ], - "author": "Austin Andrews" - }, - { - "id": "C40C225E-F046-442C-BA4D-0531B626609F", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-music-outline", - "codepoint": "F0E2A", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Music" - ], - "author": "Terren" - }, - { - "id": "36FCB7D4-D7DE-4B44-BD28-53615689D2C6", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-outline", - "codepoint": "F0224", - "aliases": [ - "paper-outline" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Google" - }, - { - "id": "C09B20B5-3650-4F36-AC40-540ACE36EB6E", - "baseIconId": "C09B20B5-3650-4F36-AC40-540ACE36EB6E", - "name": "file-pdf-box", - "codepoint": "F0226", - "aliases": [ - "file-acrobat-box", - "adobe-acrobat" - ], - "styles": [ - "box" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "267C5350-A0FC-4683-9FA1-30CD64AAA7E5", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-percent", - "codepoint": "F081E", - "aliases": [], - "styles": [ - "variant" - ], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Richins" - }, - { - "id": "5ED4C3D2-3E7E-4C28-8FC7-63DE741E186A", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-percent-outline", - "codepoint": "F1033", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Terren" - }, - { - "id": "DA6C6F33-3262-442B-8E07-C22ACA9F3F94", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-phone", - "codepoint": "F1179", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Cellphone \/ Phone" - ], - "author": "Victor" - }, - { - "id": "2ED01F6A-EC44-442B-925B-F3A194574EBA", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-phone-outline", - "codepoint": "F117A", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Cellphone \/ Phone" - ], - "author": "Victor" - }, - { - "id": "9C42F83F-4C75-4E0A-A1C2-F10FA032E495", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-plus", - "codepoint": "F0752", - "aliases": [ - "note-add" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "3BC5B0CB-8FEA-4C63-A9E3-59471DF11FA1", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-plus-outline", - "codepoint": "F0EED", - "aliases": [], - "styles": [ - "outline", - "plus" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "4DEDCDD8-4C71-46DA-A8C6-04B424DF621C", - "baseIconId": "4DEDCDD8-4C71-46DA-A8C6-04B424DF621C", - "name": "file-png-box", - "codepoint": "F0E2D", - "aliases": [], - "styles": [ - "box", - "outline", - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "62D44147-9B6F-4B4A-A06B-1AF92C2E7F3E", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-powerpoint", - "codepoint": "F0227", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "2C917F0E-C35E-45B2-9E60-0C3D7C2630CF", - "baseIconId": "2C917F0E-C35E-45B2-9E60-0C3D7C2630CF", - "name": "file-powerpoint-box", - "codepoint": "F0228", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Google" - }, - { - "id": "1620AEF6-DDC2-4FC0-9117-6A3DC4C80FEB", - "baseIconId": "2C917F0E-C35E-45B2-9E60-0C3D7C2630CF", - "name": "file-powerpoint-box-outline", - "codepoint": "F1034", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Terren" - }, - { - "id": "6A605E14-B9F9-4753-A439-C9F38C0B561D", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-powerpoint-outline", - "codepoint": "F1035", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Terren" - }, - { - "id": "A7F6B3BE-8D61-4AF3-BBFC-15A795254F6A", - "baseIconId": "A7F6B3BE-8D61-4AF3-BBFC-15A795254F6A", - "name": "file-presentation-box", - "codepoint": "F0229", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Google" - }, - { - "id": "C5EBED58-BD25-4E0C-AEB8-C6316B88B620", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-question", - "codepoint": "F086F", - "aliases": [], - "styles": [ - "question" - ], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "GreenTurtwig" - }, - { - "id": "B2E908FB-D29C-4F80-BD90-B1F6676C6337", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-question-outline", - "codepoint": "F1036", - "aliases": [], - "styles": [ - "outline", - "question" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Terren" - }, - { - "id": "6AAC6C2E-4B51-4A21-8CDC-BA516D7BAB6B", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-refresh", - "codepoint": "F0918", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "B48358A6-983D-4E15-8FE1-905D706A4A4B", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-refresh-outline", - "codepoint": "F0541", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "1D2987A7-950D-45DF-AF0C-F465350C6374", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-remove", - "codepoint": "F0B98", - "aliases": [], - "styles": [ - "remove" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "26E534DA-72D9-48CD-8748-4E3924E0A974", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-remove-outline", - "codepoint": "F1037", - "aliases": [], - "styles": [ - "outline", - "remove" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "8C05288A-4D13-4252-ABD1-CB288AFE9B4E", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-replace", - "codepoint": "F0B32", - "aliases": [], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Richins" - }, - { - "id": "C47F7F19-362E-49BA-8BC4-2FE6161AD44D", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-replace-outline", - "codepoint": "F0B33", - "aliases": [], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Richins" - }, - { - "id": "EE0E5547-D368-43CB-8BDD-7F3774985BEF", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-restore", - "codepoint": "F0670", - "aliases": [ - "restore-page" - ], - "styles": [ - "variant" - ], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Google" - }, - { - "id": "3D9EE6A3-0ECC-49C6-84E1-438D2CF2C053", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-restore-outline", - "codepoint": "F1038", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Terren" - }, - { - "id": "1111BC67-6DD5-4AE2-9541-9D5E890D823A", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-rotate-left", - "codepoint": "F1A3B", - "aliases": [ - "file-rotate-counter-clockwise", - "file-rotate-ccw" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7DC8418D-3AE2-4BC3-9A5B-068FE316D172", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-rotate-left-outline", - "codepoint": "F1A3C", - "aliases": [ - "file-rotate-counter-clockwise-outline", - "file-rotate-ccw-outline" - ], - "styles": [ - "outline" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "599A2E2D-E84A-4BF5-A835-9B13E2765606", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-rotate-right", - "codepoint": "F1A3D", - "aliases": [ - "file-rotate-clockwise" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "221C1942-DB8B-40D9-AED7-B202C0085832", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-rotate-right-outline", - "codepoint": "F1A3E", - "aliases": [ - "file-rotate-clockwise" - ], - "styles": [ - "outline" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "8FA2DBB9-E874-4CBB-A466-2691223D0FEF", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-search", - "codepoint": "F0C7C", - "aliases": [], - "styles": [ - "search" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Richins" - }, - { - "id": "499004C4-2F88-4681-A8AC-EDE9A4ECE922", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-search-outline", - "codepoint": "F0C7D", - "aliases": [], - "styles": [ - "outline", - "search" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Richins" - }, - { - "id": "CEB97477-6633-4486-BDD4-9E7D7C747805", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-send", - "codepoint": "F022A", - "aliases": [ - "file-move" - ], - "styles": [ - "arrow" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "B828E75F-BBA9-41F9-B877-CB1F1BF29ECA", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-send-outline", - "codepoint": "F1039", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Terren" - }, - { - "id": "DAD983AE-28E9-481D-B0F0-38E1EFD0CAFE", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-settings", - "codepoint": "F1079", - "aliases": [], - "styles": [ - "settings" - ], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Settings", - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "6F77BE81-0AD4-4886-93FF-0FA1382B8501", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-settings-outline", - "codepoint": "F107A", - "aliases": [], - "styles": [ - "outline", - "settings" - ], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Settings", - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "F6BB607C-B55A-4E62-8C45-490F6AE9F0A2", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-sign", - "codepoint": "F19C3", - "aliases": [ - "contract-sign", - "document-sign" - ], - "styles": [ - "variant" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Banking", - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E7E04B34-BC51-466F-92A1-78C8A00DDC9D", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-star", - "codepoint": "F103A", - "aliases": [ - "file-favorite" - ], - "styles": [ - "star" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E78BF233-EE37-492B-8E41-3965576E4A7C", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-star-four-points", - "codepoint": "F1C2D", - "aliases": [ - "file-auto" - ], - "styles": [ - "star" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Jeff Anders" - }, - { - "id": "D97DE718-4746-41B5-9168-4F5F08513158", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-star-four-points-outline", - "codepoint": "F1C2E", - "aliases": [ - "file-auto-outline" - ], - "styles": [ - "outline", - "star" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Jeff Anders" - }, - { - "id": "B418C938-EE23-4073-B10C-C1D93D54B288", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-star-outline", - "codepoint": "F103B", - "aliases": [ - "file-favorite-outline" - ], - "styles": [ - "outline", - "star" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Miday" - }, - { - "id": "01893B96-44C2-43EF-B979-5768B6AF7695", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-swap", - "codepoint": "F0FB4", - "aliases": [ - "file-transfer" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Richins" - }, - { - "id": "22D7F491-0873-43A4-9EE1-330F5BDC0829", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-swap-outline", - "codepoint": "F0FB5", - "aliases": [ - "file-transfer-outline" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Richins" - }, - { - "id": "C17D4D8C-F028-4EED-9C77-B9E1A66FE372", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-sync", - "codepoint": "F1216", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F642DE27-0183-4EF7-87FD-70A1D8E031D4", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-sync-outline", - "codepoint": "F1217", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "663EC5E6-16C5-4075-AB5C-1215864F3B2B", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-table", - "codepoint": "F0C7E", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Richins" - }, - { - "id": "7CBD5B51-1AE9-4FCA-905F-719540F0EA40", - "baseIconId": "7CBD5B51-1AE9-4FCA-905F-719540F0EA40", - "name": "file-table-box", - "codepoint": "F10E1", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "6847431F-22A9-4EAD-A9C6-645C6694D050", - "baseIconId": "7CBD5B51-1AE9-4FCA-905F-719540F0EA40", - "name": "file-table-box-multiple", - "codepoint": "F10E2", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1C6DE56C-E364-4D47-BA2F-4CE1DF34ACF4", - "baseIconId": "7CBD5B51-1AE9-4FCA-905F-719540F0EA40", - "name": "file-table-box-multiple-outline", - "codepoint": "F10E3", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "3598E989-EAC7-4255-A78F-BB1914D3153F", - "baseIconId": "7CBD5B51-1AE9-4FCA-905F-719540F0EA40", - "name": "file-table-box-outline", - "codepoint": "F10E4", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D365B2EB-0B21-42D3-BC9E-7A51DE5F0A57", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-table-outline", - "codepoint": "F0C7F", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Richins" - }, - { - "id": "FE2B1AE3-7158-473B-B1EE-45FB9CAE1137", - "baseIconId": "FE2B1AE3-7158-473B-B1EE-45FB9CAE1137", - "name": "file-tree", - "codepoint": "F0645", - "aliases": [ - "subtasks" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Kai Faust" - }, - { - "id": "86EB0B3A-E46E-4439-B7BA-67A88B280961", - "baseIconId": "FE2B1AE3-7158-473B-B1EE-45FB9CAE1137", - "name": "file-tree-outline", - "codepoint": "F13D2", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5CCC54A4-04AF-4241-80AB-177C8365A905", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-undo", - "codepoint": "F08DC", - "aliases": [ - "file-revert", - "file-discard" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Richins" - }, - { - "id": "6B690FE5-C7C6-49FE-90C1-B021BDB1B2A6", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-undo-outline", - "codepoint": "F103C", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Terren" - }, - { - "id": "38FC6E1D-C2F0-4B73-BA30-2C7FAFC0C48E", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-upload", - "codepoint": "F0A4D", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Richins" - }, - { - "id": "0719AAB6-7E18-402E-9E27-C51D44C0A856", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-upload-outline", - "codepoint": "F0A4E", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Richins" - }, - { - "id": "7BEB068A-898D-43FF-AAA6-BC239FBA74F2", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-video", - "codepoint": "F022B", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Video \/ Movie", - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "6F2D3BA3-B23D-4476-B3D8-920033F6B68B", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-video-outline", - "codepoint": "F0E2C", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Peter Noble" - }, - { - "id": "05004893-1DB7-4A34-AC50-D4B46133A603", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-word", - "codepoint": "F022C", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "AE6B9B24-DD1E-4896-B385-8DBB9D21C9E7", - "baseIconId": "AE6B9B24-DD1E-4896-B385-8DBB9D21C9E7", - "name": "file-word-box", - "codepoint": "F022D", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Google" - }, - { - "id": "09E0675C-053B-4548-9FC1-2F8DC3B49364", - "baseIconId": "AE6B9B24-DD1E-4896-B385-8DBB9D21C9E7", - "name": "file-word-box-outline", - "codepoint": "F103D", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Terren" - }, - { - "id": "C261E28B-72D8-4D0E-B74A-93333AE4EF4D", - "baseIconId": "BFF59001-B52D-47E6-A217-C9095F81C3B8", - "name": "file-word-outline", - "codepoint": "F103E", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Terren" - }, - { - "id": "BEFCABB1-11BE-4D8D-A2F4-48E80E404C90", - "baseIconId": "BEFCABB1-11BE-4D8D-A2F4-48E80E404C90", - "name": "file-xml-box", - "codepoint": "F1B4B", - "aliases": [], - "styles": [ - "box" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2EFEE436-9663-4C09-AD65-6727A0ED2AFD", - "baseIconId": "2EFEE436-9663-4C09-AD65-6727A0ED2AFD", - "name": "film", - "codepoint": "F022F", - "aliases": [ - "camera-roll" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography", - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "10A06B6D-A551-425C-B084-DA3F2239DFA1", - "baseIconId": "10A06B6D-A551-425C-B084-DA3F2239DFA1", - "name": "filmstrip", - "codepoint": "F0230", - "aliases": [ - "local-movies", - "theaters" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "FB635DB5-18DA-448E-81C7-0602181EE21A", - "baseIconId": "10A06B6D-A551-425C-B084-DA3F2239DFA1", - "name": "filmstrip-box", - "codepoint": "F0332", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "392DCBD5-0766-4719-B198-42A9A66C18B4", - "baseIconId": "10A06B6D-A551-425C-B084-DA3F2239DFA1", - "name": "filmstrip-box-multiple", - "codepoint": "F0D18", - "aliases": [ - "library-movie" - ], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "CB040E6C-85FD-4C09-9ACD-C41EE5FB770E", - "baseIconId": "10A06B6D-A551-425C-B084-DA3F2239DFA1", - "name": "filmstrip-off", - "codepoint": "F0231", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Austin Andrews" - }, - { - "id": "39CAC4E6-CC95-42C8-94E9-E29089F1E91E", - "baseIconId": "39CAC4E6-CC95-42C8-94E9-E29089F1E91E", - "name": "filter", - "codepoint": "F0232", - "aliases": [ - "funnel" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "176E2D7F-C16A-4941-9A42-3DBE264E4148", - "baseIconId": "39CAC4E6-CC95-42C8-94E9-E29089F1E91E", - "name": "filter-check", - "codepoint": "F18EC", - "aliases": [ - "funnel-check" - ], - "styles": [ - "check" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "FFDED2FF-7CB6-4D02-BEE6-A82C16625386", - "baseIconId": "39CAC4E6-CC95-42C8-94E9-E29089F1E91E", - "name": "filter-check-outline", - "codepoint": "F18ED", - "aliases": [ - "funnel-check-outline" - ], - "styles": [ - "check", - "outline" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "F8F482FA-5AA4-462B-8B38-717FF8568270", - "baseIconId": "39CAC4E6-CC95-42C8-94E9-E29089F1E91E", - "name": "filter-cog", - "codepoint": "F1AA3", - "aliases": [ - "funnel-settings", - "filter-settings", - "funnel-cog", - "filter-gear", - "funnel-gear" - ], - "styles": [ - "cog" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Simran" - }, - { - "id": "6E54B42B-896D-4598-83D7-96E592B1B15F", - "baseIconId": "39CAC4E6-CC95-42C8-94E9-E29089F1E91E", - "name": "filter-cog-outline", - "codepoint": "F1AA4", - "aliases": [ - "filter-settings-outline", - "filter-gear-outline", - "funnel-cog-outline", - "funnel-settings-outline", - "funnel-gear-outline" - ], - "styles": [ - "cog", - "outline" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Simran" - }, - { - "id": "36805F11-BE23-49C3-8D72-682859DD5551", - "baseIconId": "39CAC4E6-CC95-42C8-94E9-E29089F1E91E", - "name": "filter-menu", - "codepoint": "F10E5", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "18CFDA0C-648C-4513-AE67-F5BB93817E0B", - "baseIconId": "39CAC4E6-CC95-42C8-94E9-E29089F1E91E", - "name": "filter-menu-outline", - "codepoint": "F10E6", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "BCA7EE0A-BADF-441A-B660-C37C0DFEF83A", - "baseIconId": "39CAC4E6-CC95-42C8-94E9-E29089F1E91E", - "name": "filter-minus", - "codepoint": "F0EEE", - "aliases": [ - "funnel-minus" - ], - "styles": [ - "minus" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "7AB99674-5A9A-40BE-94B4-B8CFA4A97434", - "baseIconId": "39CAC4E6-CC95-42C8-94E9-E29089F1E91E", - "name": "filter-minus-outline", - "codepoint": "F0EEF", - "aliases": [ - "funnel-minus-outline" - ], - "styles": [ - "minus", - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "EC7474F7-BE1F-4076-8CDB-DD5779095168", - "baseIconId": "39CAC4E6-CC95-42C8-94E9-E29089F1E91E", - "name": "filter-multiple", - "codepoint": "F1A3F", - "aliases": [ - "funnel-multiple" - ], - "styles": [ - "multiple" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "9124AC57-0F66-4F90-ABF4-167CDA8E46BC", - "baseIconId": "39CAC4E6-CC95-42C8-94E9-E29089F1E91E", - "name": "filter-multiple-outline", - "codepoint": "F1A40", - "aliases": [ - "funnel-multiple-outline" - ], - "styles": [ - "multiple", - "outline" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "049BC23B-DE87-4AB6-AFC3-38AC296045A3", - "baseIconId": "39CAC4E6-CC95-42C8-94E9-E29089F1E91E", - "name": "filter-off", - "codepoint": "F14EF", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "kikuchan" - }, - { - "id": "156D4779-7EC6-4BD9-A7B1-F123A387B109", - "baseIconId": "39CAC4E6-CC95-42C8-94E9-E29089F1E91E", - "name": "filter-off-outline", - "codepoint": "F14F0", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "kikuchan" - }, - { - "id": "524BE3DE-F5C8-4E2E-A329-8480136DCBDB", - "baseIconId": "39CAC4E6-CC95-42C8-94E9-E29089F1E91E", - "name": "filter-outline", - "codepoint": "F0233", - "aliases": [ - "funnel-outline" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "3587C73B-5120-4206-9036-2FA87974681B", - "baseIconId": "39CAC4E6-CC95-42C8-94E9-E29089F1E91E", - "name": "filter-plus", - "codepoint": "F0EF0", - "aliases": [ - "funnel-plus" - ], - "styles": [ - "plus" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "69D6704C-5371-48C4-AAE1-A53EB581CF72", - "baseIconId": "39CAC4E6-CC95-42C8-94E9-E29089F1E91E", - "name": "filter-plus-outline", - "codepoint": "F0EF1", - "aliases": [ - "funnel-plus-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "F0D392A7-69A4-4301-8E3B-46A8FC7C3DF9", - "baseIconId": "39CAC4E6-CC95-42C8-94E9-E29089F1E91E", - "name": "filter-remove", - "codepoint": "F0234", - "aliases": [ - "funnel-remove" - ], - "styles": [ - "remove" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "C6DD0143-A7E3-464D-B0AC-F97E5C51F74C", - "baseIconId": "39CAC4E6-CC95-42C8-94E9-E29089F1E91E", - "name": "filter-remove-outline", - "codepoint": "F0235", - "aliases": [ - "funnel-remove-outline" - ], - "styles": [ - "outline", - "remove" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "2F76CF21-B111-4B8D-A09A-6B6B98366375", - "baseIconId": "39CAC4E6-CC95-42C8-94E9-E29089F1E91E", - "name": "filter-settings", - "codepoint": "F1AA5", - "aliases": [ - "funnel-settings" - ], - "styles": [ - "settings" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Simran" - }, - { - "id": "FC722964-4A11-4A22-94B1-D4812E1FE2C1", - "baseIconId": "39CAC4E6-CC95-42C8-94E9-E29089F1E91E", - "name": "filter-settings-outline", - "codepoint": "F1AA6", - "aliases": [ - "funnel-settings-outline" - ], - "styles": [ - "outline", - "settings" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Simran" - }, - { - "id": "AECECEA4-9E56-4B4B-ACD6-2C85AB09788A", - "baseIconId": "39CAC4E6-CC95-42C8-94E9-E29089F1E91E", - "name": "filter-variant", - "codepoint": "F0236", - "aliases": [ - "filter-list" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "10D650FB-B7AA-4439-A3BF-3F5DE934A22C", - "baseIconId": "39CAC4E6-CC95-42C8-94E9-E29089F1E91E", - "name": "filter-variant-minus", - "codepoint": "F1112", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "5F4F40C3-F04B-47BE-BB4F-13F080A81C6A", - "baseIconId": "39CAC4E6-CC95-42C8-94E9-E29089F1E91E", - "name": "filter-variant-plus", - "codepoint": "F1113", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "AE1B79F5-59D9-4FA4-8006-CE60BB5F5207", - "baseIconId": "39CAC4E6-CC95-42C8-94E9-E29089F1E91E", - "name": "filter-variant-remove", - "codepoint": "F103F", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [], - "author": "David Jackson" - }, - { - "id": "C39421CD-2A2D-4D92-B59B-69D70A328DF4", - "baseIconId": "C39421CD-2A2D-4D92-B59B-69D70A328DF4", - "name": "finance", - "codepoint": "F081F", - "aliases": [ - "chart-finance", - "report-finance", - "graph-bar" - ], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Banking", - "Math" - ], - "author": "Google" - }, - { - "id": "D093813C-B59B-42BD-B6C7-B451FA51E87E", - "baseIconId": "D093813C-B59B-42BD-B6C7-B451FA51E87E", - "name": "find-replace", - "codepoint": "F06D4", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "F71C897D-9858-40AE-8DB4-253CE675D823", - "baseIconId": "F71C897D-9858-40AE-8DB4-253CE675D823", - "name": "fingerprint", - "codepoint": "F0237", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "EC570B4F-91D7-4478-9B9F-4C61BC709652", - "baseIconId": "F71C897D-9858-40AE-8DB4-253CE675D823", - "name": "fingerprint-off", - "codepoint": "F0EB1", - "aliases": [], - "styles": [ - "off" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "5259DBA5-B2FB-4112-B1F2-5DC17002205C", - "baseIconId": "5259DBA5-B2FB-4112-B1F2-5DC17002205C", - "name": "fire", - "codepoint": "F0238", - "aliases": [ - "whatshot", - "flame", - "gas", - "natural-gas", - "hot" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "69B65938-BBEB-4E19-9D12-3924EEAAACF0", - "baseIconId": "5259DBA5-B2FB-4112-B1F2-5DC17002205C", - "name": "fire-alert", - "codepoint": "F15D7", - "aliases": [ - "flame-alert" - ], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Alert \/ Error", - "Home Automation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "942AE48C-F54D-4CD3-87A0-DC8DDDAD6F44", - "baseIconId": "5259DBA5-B2FB-4112-B1F2-5DC17002205C", - "name": "fire-circle", - "codepoint": "F1807", - "aliases": [ - "flame-circle", - "hot-circle", - "gas-circle", - "natural-gas-circle" - ], - "styles": [ - "circle" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D056C9A3-AA4C-4220-BEE7-79E189C12711", - "baseIconId": "D056C9A3-AA4C-4220-BEE7-79E189C12711", - "name": "fire-extinguisher", - "codepoint": "F0EF2", - "aliases": [], - "styles": [], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Hardware \/ Tools", - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "78842C69-653C-40B5-BA05-578361EA0620", - "baseIconId": "78842C69-653C-40B5-BA05-578361EA0620", - "name": "fire-hydrant", - "codepoint": "F1137", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "506CEB31-5A28-4D8F-947E-A0B0B5211DA1", - "baseIconId": "78842C69-653C-40B5-BA05-578361EA0620", - "name": "fire-hydrant-alert", - "codepoint": "F1138", - "aliases": [], - "styles": [ - "alert" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B09CB3ED-6B3A-4B3D-B795-92E96DE01F4B", - "baseIconId": "78842C69-653C-40B5-BA05-578361EA0620", - "name": "fire-hydrant-off", - "codepoint": "F1139", - "aliases": [], - "styles": [ - "off" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "DAB67757-2065-4741-A03A-563D0EA202E0", - "baseIconId": "5259DBA5-B2FB-4112-B1F2-5DC17002205C", - "name": "fire-off", - "codepoint": "F1722", - "aliases": [ - "flame-off" - ], - "styles": [ - "off" - ], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1C8EC9A6-0545-4A59-B9F8-5E498E40529D", - "baseIconId": "CB49A868-3317-4445-BFED-13CB6533000E", - "name": "fire-truck", - "codepoint": "F08AB", - "aliases": [ - "fire-engine" - ], - "styles": [], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Nick" - }, - { - "id": "3A3D9EFD-ABA4-444F-9CB5-A2D8C1322B2C", - "baseIconId": "3A3D9EFD-ABA4-444F-9CB5-A2D8C1322B2C", - "name": "firebase", - "codepoint": "F0967", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "2A7EE574-62BE-4000-B8D8-B601C29D2960", - "baseIconId": "2A7EE574-62BE-4000-B8D8-B601C29D2960", - "name": "firefox", - "codepoint": "F0239", - "aliases": [ - "mozilla-firefox" - ], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "B69CC506-E44A-4B60-A170-F4FFD53C67A6", - "baseIconId": "B69CC506-E44A-4B60-A170-F4FFD53C67A6", - "name": "fireplace", - "codepoint": "F0E2E", - "aliases": [], - "styles": [], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E2D6EF7A-6C31-4DCD-B385-FC8C9B113538", - "baseIconId": "B69CC506-E44A-4B60-A170-F4FFD53C67A6", - "name": "fireplace-off", - "codepoint": "F0E2F", - "aliases": [], - "styles": [ - "off" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5415674F-E6F6-433D-9A9F-E976FD7245F8", - "baseIconId": "5415674F-E6F6-433D-9A9F-E976FD7245F8", - "name": "firewire", - "codepoint": "F05BE", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Contributors" - }, - { - "id": "6385008C-99E4-4459-8B18-0CD594EC5C7E", - "baseIconId": "6385008C-99E4-4459-8B18-0CD594EC5C7E", - "name": "firework", - "codepoint": "F0E30", - "aliases": [ - "bottle-rocket" - ], - "styles": [], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Holiday" - ], - "author": "Augustin Ursu" - }, - { - "id": "16CFC5D9-C749-4148-BF17-D002AFFF9D09", - "baseIconId": "6385008C-99E4-4459-8B18-0CD594EC5C7E", - "name": "firework-off", - "codepoint": "F1723", - "aliases": [], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "91D8C321-95BC-4AC6-9B3E-D38D457BFF75", - "baseIconId": "91D8C321-95BC-4AC6-9B3E-D38D457BFF75", - "name": "fish", - "codepoint": "F023A", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Animal", - "Food \/ Drink" - ], - "author": "Austin Andrews" - }, - { - "id": "4F854008-B48E-4134-829A-9D3086C8F1E9", - "baseIconId": "91D8C321-95BC-4AC6-9B3E-D38D457BFF75", - "name": "fish-off", - "codepoint": "F13F3", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "50A773A8-4349-4B7F-A211-6CB14E9C090B", - "baseIconId": "50A773A8-4349-4B7F-A211-6CB14E9C090B", - "name": "fishbowl", - "codepoint": "F0EF3", - "aliases": [ - "aquarium" - ], - "styles": [], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Michael Irigoyen" - }, - { - "id": "860D1C47-AD7E-4424-9CB7-BA9D2F86C129", - "baseIconId": "50A773A8-4349-4B7F-A211-6CB14E9C090B", - "name": "fishbowl-outline", - "codepoint": "F0EF4", - "aliases": [ - "aquarium-outline" - ], - "styles": [ - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Michael Irigoyen" - }, - { - "id": "05E31726-71FE-41C1-B2CC-93E5B4DF25CE", - "baseIconId": "05E31726-71FE-41C1-B2CC-93E5B4DF25CE", - "name": "fit-to-page", - "codepoint": "F0EF5", - "aliases": [], - "styles": [], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format", - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0DB84D18-659E-4E93-A078-B3822742C0D4", - "baseIconId": "05E31726-71FE-41C1-B2CC-93E5B4DF25CE", - "name": "fit-to-page-outline", - "codepoint": "F0EF6", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format", - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2491A740-6415-4CDB-805F-675D8EBF89A3", - "baseIconId": "2491A740-6415-4CDB-805F-675D8EBF89A3", - "name": "fit-to-screen", - "codepoint": "F18F4", - "aliases": [], - "styles": [], - "version": "6.3.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "E7D43483-A3ED-4B9B-AEB8-72BF8BC189E4", - "baseIconId": "2491A740-6415-4CDB-805F-675D8EBF89A3", - "name": "fit-to-screen-outline", - "codepoint": "F18F5", - "aliases": [], - "styles": [ - "outline" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "55271063-77EF-43FA-917C-657E57135A24", - "baseIconId": "55271063-77EF-43FA-917C-657E57135A24", - "name": "flag", - "codepoint": "F023B", - "aliases": [ - "assistant-photo" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "B7386AC8-4DBF-4948-AD45-49234A8A019B", - "baseIconId": "55271063-77EF-43FA-917C-657E57135A24", - "name": "flag-checkered", - "codepoint": "F023C", - "aliases": [ - "goal" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Austin Andrews" - }, - { - "id": "55982621-FCB3-4A76-8F8C-50E7B6B1C93D", - "baseIconId": "55271063-77EF-43FA-917C-657E57135A24", - "name": "flag-minus", - "codepoint": "F0B99", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "370C68CC-A001-4368-9617-B7D683361B27", - "baseIconId": "55271063-77EF-43FA-917C-657E57135A24", - "name": "flag-minus-outline", - "codepoint": "F10B2", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "D670073A-229E-474A-BDF8-ED5F07C1FC41", - "baseIconId": "55271063-77EF-43FA-917C-657E57135A24", - "name": "flag-off", - "codepoint": "F18EE", - "aliases": [], - "styles": [ - "off" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "07AE6191-FF49-4F10-A6E1-F4BD0E6C9029", - "baseIconId": "55271063-77EF-43FA-917C-657E57135A24", - "name": "flag-off-outline", - "codepoint": "F18EF", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "3C0BD546-A778-4BDC-A30A-A627D61CBA47", - "baseIconId": "55271063-77EF-43FA-917C-657E57135A24", - "name": "flag-outline", - "codepoint": "F023D", - "aliases": [], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "EF2E3070-75EC-44C3-9ECE-780BB330D51B", - "baseIconId": "55271063-77EF-43FA-917C-657E57135A24", - "name": "flag-plus", - "codepoint": "F0B9A", - "aliases": [ - "flag-add" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "32EF248B-1462-486E-AEF1-A0ED29670568", - "baseIconId": "55271063-77EF-43FA-917C-657E57135A24", - "name": "flag-plus-outline", - "codepoint": "F10B3", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "D0FB8B1E-3270-4562-A660-968995E1B9A9", - "baseIconId": "55271063-77EF-43FA-917C-657E57135A24", - "name": "flag-remove", - "codepoint": "F0B9B", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "65132686-1842-48E2-9AD3-17FEB5EA56F5", - "baseIconId": "55271063-77EF-43FA-917C-657E57135A24", - "name": "flag-remove-outline", - "codepoint": "F10B4", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "3E14D0C4-25AA-405E-89A7-37E9A224BA93", - "baseIconId": "55271063-77EF-43FA-917C-657E57135A24", - "name": "flag-triangle", - "codepoint": "F023F", - "aliases": [ - "milestone" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "9A9DB93D-CE2E-4887-B648-9C70E1922092", - "baseIconId": "55271063-77EF-43FA-917C-657E57135A24", - "name": "flag-variant", - "codepoint": "F0240", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "7FAF4B80-9616-4F37-98FF-DC02DD98AA08", - "baseIconId": "55271063-77EF-43FA-917C-657E57135A24", - "name": "flag-variant-minus", - "codepoint": "F1BB4", - "aliases": [], - "styles": [ - "minus", - "variant" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "2181A952-90BC-49E9-BC57-40CADFEF6E89", - "baseIconId": "55271063-77EF-43FA-917C-657E57135A24", - "name": "flag-variant-minus-outline", - "codepoint": "F1BB5", - "aliases": [], - "styles": [ - "minus", - "outline", - "variant" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "C90BB119-B3C8-4D8B-9652-7CE62A1861F7", - "baseIconId": "55271063-77EF-43FA-917C-657E57135A24", - "name": "flag-variant-off", - "codepoint": "F1BB0", - "aliases": [], - "styles": [ - "off", - "variant" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "24434A29-5FE9-40F3-9BD0-DDA50E1B7900", - "baseIconId": "55271063-77EF-43FA-917C-657E57135A24", - "name": "flag-variant-off-outline", - "codepoint": "F1BB1", - "aliases": [], - "styles": [ - "off", - "outline", - "variant" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "756B772A-F638-48EB-918C-2FA4237C7767", - "baseIconId": "55271063-77EF-43FA-917C-657E57135A24", - "name": "flag-variant-outline", - "codepoint": "F023E", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "4005BD44-56B4-4F6E-962D-EF83ED5C69EC", - "baseIconId": "55271063-77EF-43FA-917C-657E57135A24", - "name": "flag-variant-plus", - "codepoint": "F1BB2", - "aliases": [], - "styles": [ - "plus", - "variant" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "98EECB14-D708-4096-958C-22B3C7BDFB78", - "baseIconId": "55271063-77EF-43FA-917C-657E57135A24", - "name": "flag-variant-plus-outline", - "codepoint": "F1BB3", - "aliases": [], - "styles": [ - "outline", - "plus", - "variant" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "302B6AE5-07C8-4C6C-BB99-6AA7482F1604", - "baseIconId": "55271063-77EF-43FA-917C-657E57135A24", - "name": "flag-variant-remove", - "codepoint": "F1BB6", - "aliases": [], - "styles": [ - "remove", - "variant" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "121F3FEE-B1F0-4818-9512-2923E7E90AE3", - "baseIconId": "55271063-77EF-43FA-917C-657E57135A24", - "name": "flag-variant-remove-outline", - "codepoint": "F1BB7", - "aliases": [], - "styles": [ - "outline", - "remove", - "variant" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "8F4F8B2A-9E7D-432F-978E-F3F108DA701B", - "baseIconId": "8F4F8B2A-9E7D-432F-978E-F3F108DA701B", - "name": "flare", - "codepoint": "F0D72", - "aliases": [ - "star" - ], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "EF3D6923-793B-410C-B349-90A6A338F06C", - "baseIconId": "EF3D6923-793B-410C-B349-90A6A338F06C", - "name": "flash", - "codepoint": "F0241", - "aliases": [ - "lightning-bolt", - "flash-on", - "electricity" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Google" - }, - { - "id": "59E94B6E-589B-4DB9-AAB7-397E17E2B272", - "baseIconId": "EF3D6923-793B-410C-B349-90A6A338F06C", - "name": "flash-alert", - "codepoint": "F0EF7", - "aliases": [ - "lightning-alert", - "storm-advisory" - ], - "styles": [ - "alert" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Weather", - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2770517A-B0A3-4AC5-A6E6-6EFD9DA2C3E5", - "baseIconId": "EF3D6923-793B-410C-B349-90A6A338F06C", - "name": "flash-alert-outline", - "codepoint": "F0EF8", - "aliases": [ - "lightning-alert-outline", - "storm-advisory-outline" - ], - "styles": [ - "alert", - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Weather", - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D3251831-8AEF-420A-9AA8-2BA0A0621538", - "baseIconId": "EF3D6923-793B-410C-B349-90A6A338F06C", - "name": "flash-auto", - "codepoint": "F0242", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "A6D1B09D-EDB0-4241-B42D-E56052A070DE", - "baseIconId": "EF3D6923-793B-410C-B349-90A6A338F06C", - "name": "flash-off", - "codepoint": "F0243", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "39EECEAB-80E1-486A-972E-CFBF84E02A26", - "baseIconId": "EF3D6923-793B-410C-B349-90A6A338F06C", - "name": "flash-off-outline", - "codepoint": "F1B45", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "088BF56F-9281-43DB-879E-EB5158428EB7", - "baseIconId": "EF3D6923-793B-410C-B349-90A6A338F06C", - "name": "flash-outline", - "codepoint": "F06D5", - "aliases": [ - "lightning-bolt-outline" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C25CEF12-DF9C-45A4-8399-3102B79BDF14", - "baseIconId": "EF3D6923-793B-410C-B349-90A6A338F06C", - "name": "flash-red-eye", - "codepoint": "F067B", - "aliases": [], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "E5881C80-1B80-472E-AFD9-A337D38C7A2F", - "baseIconId": "EF3D6923-793B-410C-B349-90A6A338F06C", - "name": "flash-triangle", - "codepoint": "F1B1D", - "aliases": [ - "high-voltage" - ], - "styles": [ - "variant" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "tetzla" - }, - { - "id": "825BA6A5-367F-42F8-A2B2-EBE84D7CBCF3", - "baseIconId": "EF3D6923-793B-410C-B349-90A6A338F06C", - "name": "flash-triangle-outline", - "codepoint": "F1B1E", - "aliases": [ - "high-voltage-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "tetzla" - }, - { - "id": "0EC7CDC8-86F4-4C72-AC2E-1DEDB196043F", - "baseIconId": "0EC7CDC8-86F4-4C72-AC2E-1DEDB196043F", - "name": "flashlight", - "codepoint": "F0244", - "aliases": [ - "torch" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "043DEA8B-1F5B-49CE-BC9F-AA3FC802A58A", - "baseIconId": "0EC7CDC8-86F4-4C72-AC2E-1DEDB196043F", - "name": "flashlight-off", - "codepoint": "F0245", - "aliases": [ - "torch-off" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "5E171637-949C-4091-9A6E-1A56C1DC8347", - "baseIconId": "5E171637-949C-4091-9A6E-1A56C1DC8347", - "name": "flask", - "codepoint": "F0093", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Science", - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "D036C297-DB1B-42F5-A856-13EEBDB48613", - "baseIconId": "5E171637-949C-4091-9A6E-1A56C1DC8347", - "name": "flask-empty", - "codepoint": "F0094", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Science", - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "845569FD-A57A-4F03-9048-707A046521E9", - "baseIconId": "5E171637-949C-4091-9A6E-1A56C1DC8347", - "name": "flask-empty-minus", - "codepoint": "F123A", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "500AF1DD-69C7-4C42-AE74-B6AC589BA8A8", - "baseIconId": "5E171637-949C-4091-9A6E-1A56C1DC8347", - "name": "flask-empty-minus-outline", - "codepoint": "F123B", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "26005876-74DC-411D-BB27-557623A42F8A", - "baseIconId": "5E171637-949C-4091-9A6E-1A56C1DC8347", - "name": "flask-empty-off", - "codepoint": "F13F4", - "aliases": [], - "styles": [ - "off", - "variant" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "E04A35A9-0B00-4FCF-A524-CB3331FFA346", - "baseIconId": "5E171637-949C-4091-9A6E-1A56C1DC8347", - "name": "flask-empty-off-outline", - "codepoint": "F13F5", - "aliases": [], - "styles": [ - "off", - "outline", - "variant" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "E9FFE6A9-C641-47BE-988B-A94B34A90CED", - "baseIconId": "5E171637-949C-4091-9A6E-1A56C1DC8347", - "name": "flask-empty-outline", - "codepoint": "F0095", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Science", - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "716D7945-ED6F-40B5-890A-18A1F93247B0", - "baseIconId": "5E171637-949C-4091-9A6E-1A56C1DC8347", - "name": "flask-empty-plus", - "codepoint": "F123C", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "DD0BAE86-6060-4A90-8A57-32CCFBC7D617", - "baseIconId": "5E171637-949C-4091-9A6E-1A56C1DC8347", - "name": "flask-empty-plus-outline", - "codepoint": "F123D", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "64BC4DF4-E408-446C-975F-20A2F1646F1F", - "baseIconId": "5E171637-949C-4091-9A6E-1A56C1DC8347", - "name": "flask-empty-remove", - "codepoint": "F123E", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "5B25EC76-4EB5-46AC-9445-7411CD0567DD", - "baseIconId": "5E171637-949C-4091-9A6E-1A56C1DC8347", - "name": "flask-empty-remove-outline", - "codepoint": "F123F", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "E4673F66-5785-4A63-855D-92A9F6B0E4AE", - "baseIconId": "5E171637-949C-4091-9A6E-1A56C1DC8347", - "name": "flask-minus", - "codepoint": "F1240", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "B8EB4BF1-B423-4C0D-9DE5-24D691E9EAF3", - "baseIconId": "5E171637-949C-4091-9A6E-1A56C1DC8347", - "name": "flask-minus-outline", - "codepoint": "F1241", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "D886A9E0-E952-4DF0-97B0-0C630E956766", - "baseIconId": "5E171637-949C-4091-9A6E-1A56C1DC8347", - "name": "flask-off", - "codepoint": "F13F6", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "4AA0C752-79B8-4EF6-A4E2-7B610599DEE3", - "baseIconId": "5E171637-949C-4091-9A6E-1A56C1DC8347", - "name": "flask-off-outline", - "codepoint": "F13F7", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "14C068EE-90AC-42DA-AA1E-D24F74EE7263", - "baseIconId": "5E171637-949C-4091-9A6E-1A56C1DC8347", - "name": "flask-outline", - "codepoint": "F0096", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Science", - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "6FA94A7A-788F-44B6-90A7-B4EACF9B6FD3", - "baseIconId": "5E171637-949C-4091-9A6E-1A56C1DC8347", - "name": "flask-plus", - "codepoint": "F1242", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "AE491BF6-EA26-4732-AF63-8A3D83379CC6", - "baseIconId": "5E171637-949C-4091-9A6E-1A56C1DC8347", - "name": "flask-plus-outline", - "codepoint": "F1243", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "ED698844-E3E9-4FD3-89F2-A41163ACD80A", - "baseIconId": "5E171637-949C-4091-9A6E-1A56C1DC8347", - "name": "flask-remove", - "codepoint": "F1244", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "67E2EA68-867E-4514-A952-2E0A90D5C2AC", - "baseIconId": "5E171637-949C-4091-9A6E-1A56C1DC8347", - "name": "flask-remove-outline", - "codepoint": "F1245", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "E7D0BD51-A831-4355-AE75-1D903C121D3F", - "baseIconId": "5E171637-949C-4091-9A6E-1A56C1DC8347", - "name": "flask-round-bottom", - "codepoint": "F124B", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "A08CBFD8-DD21-47F9-B213-7EF3AD89EDAD", - "baseIconId": "5E171637-949C-4091-9A6E-1A56C1DC8347", - "name": "flask-round-bottom-empty", - "codepoint": "F124C", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "2BD05FF6-4E09-40EC-9D34-59FB9CCD09FF", - "baseIconId": "5E171637-949C-4091-9A6E-1A56C1DC8347", - "name": "flask-round-bottom-empty-outline", - "codepoint": "F124D", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "383DEA4E-9820-4C4C-A5FD-05C151C7B82A", - "baseIconId": "5E171637-949C-4091-9A6E-1A56C1DC8347", - "name": "flask-round-bottom-outline", - "codepoint": "F124E", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "1BB3488A-A7B4-4DA5-99A2-AD23A184606B", - "baseIconId": "1BB3488A-A7B4-4DA5-99A2-AD23A184606B", - "name": "fleur-de-lis", - "codepoint": "F1303", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [], - "author": "Nick" - }, - { - "id": "9D29290D-A243-4C72-BC8C-ABCDFB4448B2", - "baseIconId": "9D29290D-A243-4C72-BC8C-ABCDFB4448B2", - "name": "flip-horizontal", - "codepoint": "F10E7", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Arrange" - ], - "author": "Google" - }, - { - "id": "F9DD0BF3-1CF8-456E-A542-2D22131A5761", - "baseIconId": "F9DD0BF3-1CF8-456E-A542-2D22131A5761", - "name": "flip-to-back", - "codepoint": "F0247", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrange" - ], - "author": "Google" - }, - { - "id": "6CEAE4F9-F6CB-4DA8-A25C-1F41494C6DD5", - "baseIconId": "6CEAE4F9-F6CB-4DA8-A25C-1F41494C6DD5", - "name": "flip-to-front", - "codepoint": "F0248", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrange" - ], - "author": "Google" - }, - { - "id": "D5DC28B3-CD69-465C-9333-9463A75072DC", - "baseIconId": "D5DC28B3-CD69-465C-9333-9463A75072DC", - "name": "flip-vertical", - "codepoint": "F10E8", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Arrange" - ], - "author": "Google" - }, - { - "id": "BEF1218E-7AF7-45F9-930E-915791D51EDC", - "baseIconId": "BEF1218E-7AF7-45F9-930E-915791D51EDC", - "name": "floor-lamp", - "codepoint": "F08DD", - "aliases": [ - "floor-light" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "08F74DD4-A57F-4CC8-9568-88E826BE71E5", - "baseIconId": "BEF1218E-7AF7-45F9-930E-915791D51EDC", - "name": "floor-lamp-dual", - "codepoint": "F1040", - "aliases": [ - "floor-light-dual" - ], - "styles": [ - "variant" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Borre Haugen" - }, - { - "id": "E53D8FB5-A010-4EFA-91EB-731E8C6B7321", - "baseIconId": "BEF1218E-7AF7-45F9-930E-915791D51EDC", - "name": "floor-lamp-dual-outline", - "codepoint": "F17CE", - "aliases": [ - "floor-light-dual-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9768571C-CF87-4146-A9AF-A4E76BBD9248", - "baseIconId": "BEF1218E-7AF7-45F9-930E-915791D51EDC", - "name": "floor-lamp-outline", - "codepoint": "F17C8", - "aliases": [ - "floor-light-outline" - ], - "styles": [ - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Teodor Sandu" - }, - { - "id": "9042476D-79AC-4D50-AA53-EE71D3416BF3", - "baseIconId": "BEF1218E-7AF7-45F9-930E-915791D51EDC", - "name": "floor-lamp-torchiere", - "codepoint": "F1747", - "aliases": [ - "floor-light-torchiere" - ], - "styles": [ - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F2BD0434-FE75-43EB-BA3A-AFCE445DE335", - "baseIconId": "BEF1218E-7AF7-45F9-930E-915791D51EDC", - "name": "floor-lamp-torchiere-outline", - "codepoint": "F17D6", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "85969E2D-500B-4565-8B80-A59FB6C8A73B", - "baseIconId": "BEF1218E-7AF7-45F9-930E-915791D51EDC", - "name": "floor-lamp-torchiere-variant", - "codepoint": "F1041", - "aliases": [ - "floor-light-torchiere-variant" - ], - "styles": [ - "variant" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Borre Haugen" - }, - { - "id": "03B09B13-4FA7-46CD-9E3B-48D460AB3986", - "baseIconId": "BEF1218E-7AF7-45F9-930E-915791D51EDC", - "name": "floor-lamp-torchiere-variant-outline", - "codepoint": "F17CF", - "aliases": [ - "floor-light-torchiere-variant-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "131D3C5D-880D-486B-A041-039B1F1E5284", - "baseIconId": "131D3C5D-880D-486B-A041-039B1F1E5284", - "name": "floor-plan", - "codepoint": "F0821", - "aliases": [], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "james-fry" - }, - { - "id": "B4AC5BF4-AF66-4DC5-9743-F62A80489149", - "baseIconId": "B4AC5BF4-AF66-4DC5-9743-F62A80489149", - "name": "floppy", - "codepoint": "F0249", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "8A4453F7-03E3-4F10-B93F-3213645300F8", - "baseIconId": "8A4453F7-03E3-4F10-B93F-3213645300F8", - "name": "floppy-variant", - "codepoint": "F09EF", - "aliases": [], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "D73BB486-A112-48C1-A4EE-993825164C43", - "baseIconId": "D73BB486-A112-48C1-A4EE-993825164C43", - "name": "flower", - "codepoint": "F024A", - "aliases": [ - "local-florist", - "plant" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Nature", - "Agriculture" - ], - "author": "Google" - }, - { - "id": "0BF283D1-7C12-4E5F-B136-558BE534AC8D", - "baseIconId": "D73BB486-A112-48C1-A4EE-993825164C43", - "name": "flower-outline", - "codepoint": "F09F0", - "aliases": [ - "local-florist-outline", - "plant" - ], - "styles": [ - "outline" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Nature", - "Agriculture" - ], - "author": "Google" - }, - { - "id": "00031D77-25BC-41B3-A6A3-F83EF92743A5", - "baseIconId": "D73BB486-A112-48C1-A4EE-993825164C43", - "name": "flower-pollen", - "codepoint": "F1885", - "aliases": [ - "allergy" - ], - "styles": [ - "variant" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Nature", - "Agriculture" - ], - "author": "Colton Wiscombe" - }, - { - "id": "24A80A28-E963-4E59-BA21-9D97C0434950", - "baseIconId": "D73BB486-A112-48C1-A4EE-993825164C43", - "name": "flower-pollen-outline", - "codepoint": "F1886", - "aliases": [ - "allergy-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Nature", - "Agriculture" - ], - "author": "Colton Wiscombe" - }, - { - "id": "9C310133-C0AC-4456-B8A0-9ED17F2C08BA", - "baseIconId": "D73BB486-A112-48C1-A4EE-993825164C43", - "name": "flower-poppy", - "codepoint": "F0D08", - "aliases": [ - "plant" - ], - "styles": [ - "variant" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Nature", - "Agriculture" - ], - "author": "Colton Wiscombe" - }, - { - "id": "4CD0F242-7779-4B61-B13C-876236FE92B4", - "baseIconId": "D73BB486-A112-48C1-A4EE-993825164C43", - "name": "flower-tulip", - "codepoint": "F09F1", - "aliases": [ - "plant" - ], - "styles": [ - "variant" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Nature", - "Agriculture" - ], - "author": "Michael Richins" - }, - { - "id": "D6449362-3D4B-42FB-BD25-020B104B4602", - "baseIconId": "D73BB486-A112-48C1-A4EE-993825164C43", - "name": "flower-tulip-outline", - "codepoint": "F09F2", - "aliases": [ - "plant" - ], - "styles": [ - "outline", - "variant" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Nature", - "Agriculture" - ], - "author": "Michael Richins" - }, - { - "id": "F04E0123-6365-491F-9A98-1D634D2F3071", - "baseIconId": "F04E0123-6365-491F-9A98-1D634D2F3071", - "name": "focus-auto", - "codepoint": "F0F4E", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Simran" - }, - { - "id": "4B35FE7D-BD1E-46D1-9C4C-DCCFC3DCEC44", - "baseIconId": "4B35FE7D-BD1E-46D1-9C4C-DCCFC3DCEC44", - "name": "focus-field", - "codepoint": "F0F4F", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Simran" - }, - { - "id": "B7F6C8DE-200D-4BCA-9E71-2AF633968C43", - "baseIconId": "B7F6C8DE-200D-4BCA-9E71-2AF633968C43", - "name": "focus-field-horizontal", - "codepoint": "F0F50", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Simran" - }, - { - "id": "CC4C833A-A1B9-4847-9BCB-3EAC3CCF15F5", - "baseIconId": "CC4C833A-A1B9-4847-9BCB-3EAC3CCF15F5", - "name": "focus-field-vertical", - "codepoint": "F0F51", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Simran" - }, - { - "id": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder", - "codepoint": "F024B", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Google" - }, - { - "id": "0C56278E-06DE-4D32-BA08-C78F3EB572CC", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-account", - "codepoint": "F024C", - "aliases": [ - "folder-user", - "folder-shared" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User", - "Files \/ Folders" - ], - "author": "Google" - }, - { - "id": "B905BF65-7312-4F62-8979-EDB2906B38E6", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-account-outline", - "codepoint": "F0B9C", - "aliases": [ - "folder-user-outline", - "folder-shared-outline" - ], - "styles": [ - "account", - "outline" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "D26F1A90-B76E-4C13-A956-2EBA33493563", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-alert", - "codepoint": "F0DCC", - "aliases": [ - "folder-warning" - ], - "styles": [ - "alert" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9CF67925-5A21-47F8-8EF5-F567D902C1D2", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-alert-outline", - "codepoint": "F0DCD", - "aliases": [ - "folder-warning-outline" - ], - "styles": [ - "alert", - "outline" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "40D3B512-FD3C-4F69-922E-DE4EC33AB3A5", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-arrow-down", - "codepoint": "F19E8", - "aliases": [ - "folder-download" - ], - "styles": [ - "arrow" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "65D7B690-9532-44AC-B537-82B136036F15", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-arrow-down-outline", - "codepoint": "F19E9", - "aliases": [ - "folder-download-outline" - ], - "styles": [ - "arrow", - "outline" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "25BB41F5-0A33-4F15-8C92-FBA086F0C6EA", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-arrow-left", - "codepoint": "F19EA", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "79455D10-F086-4724-A89A-CA23815D9A2A", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-arrow-left-outline", - "codepoint": "F19EB", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "BCD77C22-F711-42AD-BFD7-46EA0DCA2AD0", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-arrow-left-right", - "codepoint": "F19EC", - "aliases": [], - "styles": [], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "51BC71E5-596D-4FAC-A254-5E3F9E0C8AA2", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-arrow-left-right-outline", - "codepoint": "F19ED", - "aliases": [], - "styles": [], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "56C26607-0AD8-47DC-8ECE-5180A20BE4B2", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-arrow-right", - "codepoint": "F19EE", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "7FCB1874-45D5-4DD4-8F82-172FCADE562A", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-arrow-right-outline", - "codepoint": "F19EF", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "90B8DA2E-A381-4226-8F27-E085B391B5A1", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-arrow-up", - "codepoint": "F19F0", - "aliases": [ - "folder-upload" - ], - "styles": [ - "arrow" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "F710484C-04A2-41A6-82BA-D0900A94E2DB", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-arrow-up-down", - "codepoint": "F19F1", - "aliases": [ - "folder-transfer" - ], - "styles": [ - "arrow" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "0D1FD0C5-6A2C-475F-8824-A1EC1B93E85F", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-arrow-up-down-outline", - "codepoint": "F19F2", - "aliases": [ - "folder-transfer-outline" - ], - "styles": [ - "arrow", - "outline" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "320546E6-E809-47EA-BF2A-7EE3369AA89D", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-arrow-up-outline", - "codepoint": "F19F3", - "aliases": [ - "folder-upload-outline" - ], - "styles": [ - "arrow", - "outline" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "EF125AA8-4CB8-4608-9E99-F50F7756F375", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-cancel", - "codepoint": "F19F4", - "aliases": [], - "styles": [ - "cancel" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "54D65B1D-7337-435B-8E69-BA2E721F9DE5", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-cancel-outline", - "codepoint": "F19F5", - "aliases": [], - "styles": [ - "cancel", - "outline" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "B231DD3B-3FD4-4D82-9BD4-329B5A1F59A5", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-check", - "codepoint": "F197E", - "aliases": [], - "styles": [ - "check" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "87616DE6-0ADE-412A-B67F-C115DF131B06", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-check-outline", - "codepoint": "F197F", - "aliases": [], - "styles": [ - "check", - "outline" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "A3CB34A0-7E6E-4DF8-B17A-20C9180B3C76", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-clock", - "codepoint": "F0ABA", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Date \/ Time" - ], - "author": "GreenTurtwig" - }, - { - "id": "3EC459AC-889B-4D24-A6E2-978BA7A908BB", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-clock-outline", - "codepoint": "F0ABB", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Date \/ Time" - ], - "author": "Austin Andrews" - }, - { - "id": "C5113090-DFDF-461C-BD5F-885DF9938A9E", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-cog", - "codepoint": "F107F", - "aliases": [ - "folder-cog" - ], - "styles": [ - "settings", - "variant" - ], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Settings", - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "FDC5F42F-066B-4833-B8E9-E2E245FC80F6", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-cog-outline", - "codepoint": "F1080", - "aliases": [ - "folder-cog-outline" - ], - "styles": [ - "outline", - "settings", - "variant" - ], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Settings", - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "E10E0982-353D-484A-886B-30D343261422", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-download", - "codepoint": "F024D", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "20FEED41-F560-4872-82F4-4ED5D01EA474", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-download-outline", - "codepoint": "F10E9", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Richins" - }, - { - "id": "1C40CBC9-118F-4145-B0A5-B10007870272", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-edit", - "codepoint": "F08DE", - "aliases": [], - "styles": [ - "edit" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Edit \/ Modify" - ], - "author": "GreenTurtwig" - }, - { - "id": "A990E58F-2E88-4293-892E-F58252416749", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-edit-outline", - "codepoint": "F0DCE", - "aliases": [], - "styles": [ - "edit", - "outline" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Edit \/ Modify", - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D36D03A5-01AD-4F0B-9C63-ACA149117B73", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-eye", - "codepoint": "F178A", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7589978B-4D0B-4C1E-965A-38B5077BB7E1", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-eye-outline", - "codepoint": "F178B", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "92D3CAE7-0191-42CE-8D9F-7AE3C8D067DA", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-file", - "codepoint": "F19F6", - "aliases": [], - "styles": [], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "9DEB2414-C7DC-4AE8-831C-32FE8C5ECFCF", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-file-outline", - "codepoint": "F19F7", - "aliases": [], - "styles": [ - "outline" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "B8ACEEFF-E80A-42A9-BCAE-A804D47D8929", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-google-drive", - "codepoint": "F024E", - "aliases": [ - "folder-mydrive" - ], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Files \/ Folders", - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "E67BA814-6FCF-48CB-BBB3-359070145BCF", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-heart", - "codepoint": "F10EA", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B8BBFB97-F4D8-4FE1-B2CE-6590CBA2A337", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-heart-outline", - "codepoint": "F10EB", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "95C4CD8D-86FA-4F13-91AA-3AAEF0CD5CEE", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-hidden", - "codepoint": "F179E", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "EF46E7D8-3062-41E5-8FC6-92D66DEF7603", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-home", - "codepoint": "F10B5", - "aliases": [ - "folder-house" - ], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Home Automation" - ], - "author": "Mitch Berninger" - }, - { - "id": "5CFE89BB-F160-4C01-95C8-CFDF3D2099DA", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-home-outline", - "codepoint": "F10B6", - "aliases": [ - "folder-house-outline" - ], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Home Automation" - ], - "author": "Mitch Berninger" - }, - { - "id": "726DE98D-9BA1-4E73-8632-FF3F3768A3B3", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-image", - "codepoint": "F024F", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "A2C97734-F322-430B-BA09-02B0EB2D2CB5", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-information", - "codepoint": "F10B7", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C31ED401-6424-4436-84A8-3E82C95B1E79", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-information-outline", - "codepoint": "F10B8", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "30D99FD0-397C-49B6-A5CE-B9D6CFD7E66E", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-key", - "codepoint": "F08AC", - "aliases": [], - "styles": [], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "0C6934F1-2CC9-4689-B388-B3F2A78E026A", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-key-network", - "codepoint": "F08AD", - "aliases": [], - "styles": [], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "59629095-DF90-4405-8164-0EFB00808958", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-key-network-outline", - "codepoint": "F0C80", - "aliases": [], - "styles": [ - "key", - "network", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DE3EB621-D1A5-4F61-96F4-C8794191D34F", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-key-outline", - "codepoint": "F10EC", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "FABB67CE-5F69-4D45-95B9-02D7BFC9EABD", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-lock", - "codepoint": "F0250", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Lock", - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F89AD3B3-DD09-44F7-81A7-0433ECD44A8F", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-lock-open", - "codepoint": "F0251", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Lock", - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "27E16474-6081-4DA7-AD05-707CC64369C7", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-lock-open-outline", - "codepoint": "F1AA7", - "aliases": [], - "styles": [ - "lock", - "outline" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "E201B591-1235-409C-A620-862909114374", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-lock-outline", - "codepoint": "F1AA8", - "aliases": [], - "styles": [ - "lock", - "outline" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Lock" - ], - "author": "Michael Irigoyen" - }, - { - "id": "00FD0F50-240F-4654-9712-C219B0FF9A97", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-marker", - "codepoint": "F126D", - "aliases": [ - "folder-location" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Geographic Information System", - "Files \/ Folders", - "Navigation" - ], - "author": "Andrea Antonello" - }, - { - "id": "A542AF06-5931-4B8A-8DE0-777F11304ACC", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-marker-outline", - "codepoint": "F126E", - "aliases": [ - "folder-location-outline" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Geographic Information System", - "Files \/ Folders", - "Navigation" - ], - "author": "Andrea Antonello" - }, - { - "id": "8C184D42-0C9C-402E-9B8E-EB78E5A5A21D", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-minus", - "codepoint": "F1B49", - "aliases": [], - "styles": [ - "minus" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "A8D2A9D7-8B44-4BFE-B84E-B1FFB889759C", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-minus-outline", - "codepoint": "F1B4A", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "B7AD0302-5738-4474-9679-AC118E566A7E", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-move", - "codepoint": "F0252", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Google" - }, - { - "id": "F3985E52-B82C-4008-98E3-48DCDBC21749", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-move-outline", - "codepoint": "F1246", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Sascha Wohlgemuth" - }, - { - "id": "7116841C-C243-4A44-8C68-267048AAF939", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-multiple", - "codepoint": "F0253", - "aliases": [ - "folders" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "29BE785E-BAAB-4824-A0BF-6892D8027B1E", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-multiple-image", - "codepoint": "F0254", - "aliases": [ - "perm-media", - "folders-image" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Google" - }, - { - "id": "F91AD38D-33E3-46A4-83BC-17B671750D6C", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-multiple-outline", - "codepoint": "F0255", - "aliases": [ - "folders-outline" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "C7BBAA2A-AE24-41E9-AED3-6932D2D0CCAF", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-multiple-plus", - "codepoint": "F147E", - "aliases": [], - "styles": [ - "multiple", - "plus" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Terren" - }, - { - "id": "CF776532-C79F-4319-B2FB-F9EDD407E063", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-multiple-plus-outline", - "codepoint": "F147F", - "aliases": [], - "styles": [ - "multiple", - "outline", - "plus" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Terren" - }, - { - "id": "4D36C1AA-F109-485C-8D3C-EDDD054057AF", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-music", - "codepoint": "F1359", - "aliases": [], - "styles": [ - "variant" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Music" - ], - "author": "\u00d6zg\u00fcr G\u00f6rg\u00fcl\u00fc" - }, - { - "id": "629FB453-89C2-4B3F-A12E-2FDC427FCD0D", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-music-outline", - "codepoint": "F135A", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Music" - ], - "author": "\u00d6zg\u00fcr G\u00f6rg\u00fcl\u00fc" - }, - { - "id": "7C4EED9D-D897-4B8C-9C0B-FE9A9D820A2D", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-network", - "codepoint": "F0870", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "1C9D27B7-BBF8-45BD-AF63-200A7E67E8DA", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-network-outline", - "codepoint": "F0C81", - "aliases": [], - "styles": [ - "network", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A792FD60-AF2F-4EDD-8CCB-42FFBEE61286", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-off", - "codepoint": "F19F8", - "aliases": [], - "styles": [ - "off" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "3DA5D076-3943-4968-A375-3DB3A73C3E69", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-off-outline", - "codepoint": "F19F9", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "7BBC57AE-0EBA-4198-8B85-5082A38522DE", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-open", - "codepoint": "F0770", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "DFC9E65E-7019-4520-9797-418E410FEABC", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-open-outline", - "codepoint": "F0DCF", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0524FF60-B273-4675-9B69-043730244645", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-outline", - "codepoint": "F0256", - "aliases": [ - "folder-open" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Google" - }, - { - "id": "C3FACC18-E546-4E6F-A140-48541C0B808E", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-play", - "codepoint": "F19FA", - "aliases": [ - "folder-media", - "folder-music", - "folder-video" - ], - "styles": [], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "63119A3C-5E35-4BC5-9DA6-74EB4DD748DB", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-play-outline", - "codepoint": "F19FB", - "aliases": [ - "folder-media-outline", - "folder-music-outline", - "folder-video-outline" - ], - "styles": [ - "outline" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "BAE32170-6509-4D1F-A6A5-A2FD1A0C679B", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-plus", - "codepoint": "F0257", - "aliases": [ - "create-new-folder", - "folder-add" - ], - "styles": [ - "plus" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "5615B9DB-A490-4977-9513-B21B086BB542", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-plus-outline", - "codepoint": "F0B9D", - "aliases": [ - "create-new-folder-outline", - "folder-add-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Google" - }, - { - "id": "FEA28688-AA8C-4CEE-937C-9110076B3214", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-pound", - "codepoint": "F0D09", - "aliases": [ - "folder-hash" - ], - "styles": [ - "variant" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Developer \/ Languages" - ], - "author": "Michael Irigoyen" - }, - { - "id": "AA3153A7-917B-4D2B-9D8E-297AE296F195", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-pound-outline", - "codepoint": "F0D0A", - "aliases": [ - "folder-hash-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Developer \/ Languages" - ], - "author": "Michael Irigoyen" - }, - { - "id": "772568CD-A665-4EBA-ACEA-6D6D5D23CDFB", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-question", - "codepoint": "F19CA", - "aliases": [ - "folder-help" - ], - "styles": [ - "question" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DF184C5C-BF3B-47C7-8E37-6992E1E7480E", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-question-outline", - "codepoint": "F19CB", - "aliases": [ - "folder-help-outline" - ], - "styles": [ - "outline", - "question" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9B23FB77-FAF2-4F8E-B071-D23726EA8632", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-refresh", - "codepoint": "F0749", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "DBC01AAD-8FE1-4668-9E76-7AF716D30C32", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-refresh-outline", - "codepoint": "F0542", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "3FF41316-69DC-4913-A299-84206E12FE42", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-remove", - "codepoint": "F0258", - "aliases": [], - "styles": [ - "remove" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "1990909C-A843-4BE0-83B9-83FB51707CAD", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-remove-outline", - "codepoint": "F0B9E", - "aliases": [], - "styles": [ - "outline", - "remove" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "8F02F34C-2C77-43BF-BF20-5EDCA4C37A85", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-search", - "codepoint": "F0968", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "GreenTurtwig" - }, - { - "id": "05CF7DE7-1D45-45C3-9BCC-363735A36550", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-search-outline", - "codepoint": "F0969", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "GreenTurtwig" - }, - { - "id": "E9863879-31CD-48D3-B40B-FD49B692A787", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-settings", - "codepoint": "F107D", - "aliases": [], - "styles": [ - "settings" - ], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Settings", - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "BE00F5DD-75FB-43C5-BE8F-56117E1EC823", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-settings-outline", - "codepoint": "F107E", - "aliases": [], - "styles": [ - "outline", - "settings" - ], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Settings", - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "58C8B00C-897C-4381-9AD2-33B754B96865", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-star", - "codepoint": "F069D", - "aliases": [ - "folder-special", - "folder-favorite" - ], - "styles": [ - "star" - ], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Google" - }, - { - "id": "407F7D88-25F6-4EDF-8489-3F8B7996F704", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-star-multiple", - "codepoint": "F13D3", - "aliases": [ - "folder-favorite-multiple" - ], - "styles": [ - "multiple", - "star" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C7DD0CB0-EEA4-4D24-BCE2-8184382EF419", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-star-multiple-outline", - "codepoint": "F13D4", - "aliases": [ - "folder-favorite-multiple-outline" - ], - "styles": [ - "multiple", - "outline", - "star" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "3CE11413-D500-4DFA-8913-A22A16D6DAD5", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-star-outline", - "codepoint": "F0B9F", - "aliases": [ - "folder-special-outline", - "folder-favorite-outline" - ], - "styles": [ - "outline", - "star" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Google" - }, - { - "id": "B8D54537-7FBC-44B4-8091-2F85D8ACF05B", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-swap", - "codepoint": "F0FB6", - "aliases": [ - "folder-transfer" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Richins" - }, - { - "id": "EE80C9C6-6C17-4049-9C87-B6E7E3D956EA", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-swap-outline", - "codepoint": "F0FB7", - "aliases": [ - "folder-transfer-outline" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Richins" - }, - { - "id": "8E493781-E2CB-48C6-8C07-24BD1F5F3BF0", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-sync", - "codepoint": "F0D0B", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "AE853799-5608-4541-BD65-C7AC6AD09256", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-sync-outline", - "codepoint": "F0D0C", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "58AC43F6-6A0B-43AC-B681-A68B6714B4F1", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-table", - "codepoint": "F12E3", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "1C994AC5-D1CA-457D-8A8C-F6E40821815F", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-table-outline", - "codepoint": "F12E4", - "aliases": [], - "styles": [ - "outline" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Simran" - }, - { - "id": "2A24B473-B162-4B0E-9723-6867EEA702A9", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-text", - "codepoint": "F0C82", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Richins" - }, - { - "id": "D80E4CB4-F5E6-4BA8-A8C9-B24A3C31E56F", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-text-outline", - "codepoint": "F0C83", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Richins" - }, - { - "id": "9F84EC25-D8C7-4BB0-B39F-E71919F4EE6D", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-upload", - "codepoint": "F0259", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "841EF884-AC6E-4930-8DEA-6C87F91BE11F", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-upload-outline", - "codepoint": "F10ED", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Richins" - }, - { - "id": "4A9F791A-45FC-42C8-BBBB-1963868C4E44", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-wrench", - "codepoint": "F19FC", - "aliases": [ - "folder-settings" - ], - "styles": [], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "D489D931-A6B8-4363-B4E4-C76190FE4B18", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-wrench-outline", - "codepoint": "F19FD", - "aliases": [ - "folder-settings-outline" - ], - "styles": [], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Colton Wiscombe" - }, - { - "id": "1573C575-7FBA-4BCD-A960-02D42043FE6F", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-zip", - "codepoint": "F06EB", - "aliases": [ - "compressed-folder" - ], - "styles": [ - "variant" - ], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "55AE86E1-C6DB-4F41-BC21-1750DB608D23", - "baseIconId": "9D8C1CEE-19BE-4B0B-85CC-DEB829F9F045", - "name": "folder-zip-outline", - "codepoint": "F07B9", - "aliases": [ - "compressed-folder-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0D7EBC60-1884-41C7-B37E-E0EED68E896E", - "baseIconId": "0D7EBC60-1884-41C7-B37E-E0EED68E896E", - "name": "font-awesome", - "codepoint": "F003A", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "140954DE-20F5-4A8B-BFC3-DB8E49922AF3", - "baseIconId": "140954DE-20F5-4A8B-BFC3-DB8E49922AF3", - "name": "food", - "codepoint": "F025A", - "aliases": [ - "fast-food", - "burger", - "cup", - "drink", - "hamburger" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Google" - }, - { - "id": "D5B1A45F-8C43-4E3B-8E75-09EAF1984021", - "baseIconId": "D5B1A45F-8C43-4E3B-8E75-09EAF1984021", - "name": "food-apple", - "codepoint": "F025B", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Agriculture" - ], - "author": "Austin Andrews" - }, - { - "id": "F1E2E692-7E18-4D28-8F6C-6E6D16161CF2", - "baseIconId": "D5B1A45F-8C43-4E3B-8E75-09EAF1984021", - "name": "food-apple-outline", - "codepoint": "F0C84", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Agriculture" - ], - "author": "Michael Richins" - }, - { - "id": "28363B2E-72C8-481E-B702-7DE52F72717C", - "baseIconId": "28363B2E-72C8-481E-B702-7DE52F72717C", - "name": "food-croissant", - "codepoint": "F07C8", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Alex Efremo" - }, - { - "id": "83BA130B-E603-4455-B7C6-EDE9BE1FCC7E", - "baseIconId": "83BA130B-E603-4455-B7C6-EDE9BE1FCC7E", - "name": "food-drumstick", - "codepoint": "F141F", - "aliases": [ - "chicken-leg", - "turkey-leg", - "meat" - ], - "styles": [], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "BC4982E1-86E2-48A1-AE1B-8FD95D6BA850", - "baseIconId": "83BA130B-E603-4455-B7C6-EDE9BE1FCC7E", - "name": "food-drumstick-off", - "codepoint": "F1468", - "aliases": [ - "chicken-leg-off", - "turkey-leg-off", - "meat-off" - ], - "styles": [ - "off" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "CC221369-59E9-45B7-9CBD-79AB2828689A", - "baseIconId": "83BA130B-E603-4455-B7C6-EDE9BE1FCC7E", - "name": "food-drumstick-off-outline", - "codepoint": "F1469", - "aliases": [ - "chicken-leg-off-outline", - "turkey-leg-off-outline", - "meat-off-outline" - ], - "styles": [ - "off", - "outline" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D60C4F90-EE53-4A92-84F7-076DAC23FD31", - "baseIconId": "83BA130B-E603-4455-B7C6-EDE9BE1FCC7E", - "name": "food-drumstick-outline", - "codepoint": "F1420", - "aliases": [ - "chicken-leg-outline", - "turkey-leg-outline", - "meat-outline" - ], - "styles": [ - "outline" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "4CE93EC4-0938-4CB2-AB0E-0DCA0AF27B91", - "baseIconId": "4CE93EC4-0938-4CB2-AB0E-0DCA0AF27B91", - "name": "food-fork-drink", - "codepoint": "F05F2", - "aliases": [ - "food-fork-cup" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Google" - }, - { - "id": "F576B145-F06D-49FA-9616-2423C5D322AD", - "baseIconId": "F576B145-F06D-49FA-9616-2423C5D322AD", - "name": "food-halal", - "codepoint": "F1572", - "aliases": [ - "food-muslim", - "dietary-restriction" - ], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Haley Halcyon" - }, - { - "id": "71DB0C17-56B2-4664-9AD2-BF6EDB375D59", - "baseIconId": "71DB0C17-56B2-4664-9AD2-BF6EDB375D59", - "name": "food-hot-dog", - "codepoint": "F184B", - "aliases": [ - "food-weiner", - "food-frankfurter" - ], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "BC887CBF-E298-4E05-8C7D-B13539C4BA15", - "baseIconId": "BC887CBF-E298-4E05-8C7D-B13539C4BA15", - "name": "food-kosher", - "codepoint": "F1573", - "aliases": [ - "food-jewish", - "dietary-restriction" - ], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Haley Halcyon" - }, - { - "id": "3731F58E-CAEA-4B54-87A6-7F4E039F2B31", - "baseIconId": "140954DE-20F5-4A8B-BFC3-DB8E49922AF3", - "name": "food-off", - "codepoint": "F05F3", - "aliases": [ - "fast-food-off", - "burger-off", - "cup-off", - "drink-off", - "hamburger-off" - ], - "styles": [ - "off" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Google" - }, - { - "id": "339A2EDA-7C62-4D1F-AB2E-2E5F7F5200FC", - "baseIconId": "140954DE-20F5-4A8B-BFC3-DB8E49922AF3", - "name": "food-off-outline", - "codepoint": "F1915", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Google" - }, - { - "id": "7E16BC17-6002-4EB2-A8FA-7982CF05426E", - "baseIconId": "140954DE-20F5-4A8B-BFC3-DB8E49922AF3", - "name": "food-outline", - "codepoint": "F1916", - "aliases": [], - "styles": [ - "outline" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Google" - }, - { - "id": "1A357DD0-01F0-4FF9-83D3-41B9AA22E5D1", - "baseIconId": "1A357DD0-01F0-4FF9-83D3-41B9AA22E5D1", - "name": "food-steak", - "codepoint": "F146A", - "aliases": [ - "meat", - "beef" - ], - "styles": [], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A0482E2B-FA1E-4478-BA16-A7EF749920B3", - "baseIconId": "1A357DD0-01F0-4FF9-83D3-41B9AA22E5D1", - "name": "food-steak-off", - "codepoint": "F146B", - "aliases": [ - "meat-off", - "beef-off" - ], - "styles": [ - "off" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "12052E35-8005-45AD-8901-7861C8404EF8", - "baseIconId": "12052E35-8005-45AD-8901-7861C8404EF8", - "name": "food-takeout-box", - "codepoint": "F1836", - "aliases": [], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Google" - }, - { - "id": "BEF6335C-F745-472D-9C83-F0ED033B38B6", - "baseIconId": "12052E35-8005-45AD-8901-7861C8404EF8", - "name": "food-takeout-box-outline", - "codepoint": "F1837", - "aliases": [], - "styles": [ - "outline" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Google" - }, - { - "id": "D5900301-8742-4D92-8E56-525DCDE97E0F", - "baseIconId": "D5900301-8742-4D92-8E56-525DCDE97E0F", - "name": "food-turkey", - "codepoint": "F171C", - "aliases": [ - "dinner", - "thanksgiving" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Holiday" - ], - "author": "Colton Wiscombe" - }, - { - "id": "1D25DDEC-2656-4729-BEBD-BB17F972DD09", - "baseIconId": "140954DE-20F5-4A8B-BFC3-DB8E49922AF3", - "name": "food-variant", - "codepoint": "F025C", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Austin Andrews" - }, - { - "id": "C24FE6CB-D1AA-4BAB-BB6B-956307D28D1D", - "baseIconId": "140954DE-20F5-4A8B-BFC3-DB8E49922AF3", - "name": "food-variant-off", - "codepoint": "F13E5", - "aliases": [], - "styles": [ - "off", - "variant" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Simran" - }, - { - "id": "DAAA09E2-055A-4D74-BF60-C46DC6019035", - "baseIconId": "DAAA09E2-055A-4D74-BF60-C46DC6019035", - "name": "foot-print", - "codepoint": "F0F52", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [], - "author": "aardloper" - }, - { - "id": "3C0488C6-E807-401D-9689-7770550EC2E7", - "baseIconId": "3C0488C6-E807-401D-9689-7770550EC2E7", - "name": "football", - "codepoint": "F025D", - "aliases": [ - "football-american" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Google" - }, - { - "id": "97B1FB51-7C30-4B83-AEED-95700B38F65F", - "baseIconId": "97B1FB51-7C30-4B83-AEED-95700B38F65F", - "name": "football-australian", - "codepoint": "F025E", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Austin Andrews" - }, - { - "id": "8F719D4B-9A91-46E1-81B0-00C23AA0D313", - "baseIconId": "8F719D4B-9A91-46E1-81B0-00C23AA0D313", - "name": "football-helmet", - "codepoint": "F025F", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Austin Andrews" - }, - { - "id": "70EFA358-6CE3-4CC1-9F46-6283D491F2E2", - "baseIconId": "70EFA358-6CE3-4CC1-9F46-6283D491F2E2", - "name": "forest", - "codepoint": "F1897", - "aliases": [ - "forestry", - "pine-tree-multiple" - ], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Nature", - "Agriculture", - "Places" - ], - "author": "Google" - }, - { - "id": "E247BE22-952A-42FB-9741-F4607385A99B", - "baseIconId": "70EFA358-6CE3-4CC1-9F46-6283D491F2E2", - "name": "forest-outline", - "codepoint": "F1C63", - "aliases": [ - "forestry-outline", - "pine-tree-multiple-outline" - ], - "styles": [ - "multiple", - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Nature", - "Agriculture", - "Places" - ], - "author": "Jeff Anders" - }, - { - "id": "9CB941AF-8C23-4201-B891-A23521B011CD", - "baseIconId": "9CB941AF-8C23-4201-B891-A23521B011CD", - "name": "forklift", - "codepoint": "F07C9", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "GreenTurtwig" - }, - { - "id": "34C52C66-C35A-470B-A618-303A8B0DBD17", - "baseIconId": "34C52C66-C35A-470B-A618-303A8B0DBD17", - "name": "form-dropdown", - "codepoint": "F1400", - "aliases": [], - "styles": [], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Charlie Davis" - }, - { - "id": "09F44862-B3EA-4F67-8C4F-67C830FC8CF3", - "baseIconId": "09F44862-B3EA-4F67-8C4F-67C830FC8CF3", - "name": "form-select", - "codepoint": "F1401", - "aliases": [], - "styles": [], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Charlie Davis" - }, - { - "id": "9C901687-3535-4B54-B963-7E92EB9CE229", - "baseIconId": "9C901687-3535-4B54-B963-7E92EB9CE229", - "name": "form-textarea", - "codepoint": "F1095", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Michael Richins" - }, - { - "id": "BB7E18FD-F473-4A80-B6A9-A17D3648E0A4", - "baseIconId": "BB7E18FD-F473-4A80-B6A9-A17D3648E0A4", - "name": "form-textbox", - "codepoint": "F060E", - "aliases": [ - "rename" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Austin Andrews" - }, - { - "id": "32C3C391-9B80-4659-BCB3-6653FE4E5108", - "baseIconId": "BB7E18FD-F473-4A80-B6A9-A17D3648E0A4", - "name": "form-textbox-lock", - "codepoint": "F135D", - "aliases": [], - "styles": [ - "lock" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Form", - "Lock" - ], - "author": "Austin Andrews" - }, - { - "id": "F35B5B3C-762F-473C-B229-B6818D50E045", - "baseIconId": "BB7E18FD-F473-4A80-B6A9-A17D3648E0A4", - "name": "form-textbox-password", - "codepoint": "F07F5", - "aliases": [], - "styles": [ - "variant" - ], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Michael Richins" - }, - { - "id": "CF22AACF-228D-4C3A-9BE7-D5DE853A0139", - "baseIconId": "CF22AACF-228D-4C3A-9BE7-D5DE853A0139", - "name": "format-align-bottom", - "codepoint": "F0753", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "9B295DCA-8352-407E-84F1-34890975D010", - "baseIconId": "56F0424F-3D53-486E-BC4C-0738457ACBA8", - "name": "format-align-center", - "codepoint": "F0260", - "aliases": [ - "format-align-centre" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "521B67DD-EC96-4B1D-B884-BE155D850F85", - "baseIconId": "56F0424F-3D53-486E-BC4C-0738457ACBA8", - "name": "format-align-justify", - "codepoint": "F0261", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "56F0424F-3D53-486E-BC4C-0738457ACBA8", - "baseIconId": "56F0424F-3D53-486E-BC4C-0738457ACBA8", - "name": "format-align-left", - "codepoint": "F0262", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "59384E78-B7EF-4BDA-B537-35E537C00130", - "baseIconId": "59384E78-B7EF-4BDA-B537-35E537C00130", - "name": "format-align-middle", - "codepoint": "F0754", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "7289388F-3768-4833-B282-0662FD9B9A73", - "baseIconId": "56F0424F-3D53-486E-BC4C-0738457ACBA8", - "name": "format-align-right", - "codepoint": "F0263", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "71140AD8-A0A6-45DD-9414-5DB2FBC875F1", - "baseIconId": "71140AD8-A0A6-45DD-9414-5DB2FBC875F1", - "name": "format-align-top", - "codepoint": "F0755", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "55770606-AFB4-441F-B3AA-2CDE46136F4B", - "baseIconId": "E79B26A6-CAA3-4CD8-B5C8-1D5797C4C765", - "name": "format-annotation-minus", - "codepoint": "F0ABC", - "aliases": [], - "styles": [ - "minus" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Michael Irigoyen" - }, - { - "id": "591A45AB-511C-4791-957C-303186C666AA", - "baseIconId": "E79B26A6-CAA3-4CD8-B5C8-1D5797C4C765", - "name": "format-annotation-plus", - "codepoint": "F0646", - "aliases": [ - "format-annotation-add" - ], - "styles": [ - "plus" - ], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Kai Faust" - }, - { - "id": "2107C153-0FEC-4171-8602-6549ACABA768", - "baseIconId": "2107C153-0FEC-4171-8602-6549ACABA768", - "name": "format-bold", - "codepoint": "F0264", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "D5213C5D-AC53-40A5-BBCC-C8B3F849D6B4", - "baseIconId": "D5213C5D-AC53-40A5-BBCC-C8B3F849D6B4", - "name": "format-clear", - "codepoint": "F0265", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "C4E2DE69-EC92-490F-814A-5D8A20E7E595", - "baseIconId": "C4E2DE69-EC92-490F-814A-5D8A20E7E595", - "name": "format-color-fill", - "codepoint": "F0266", - "aliases": [ - "format-colour-fill", - "paint", - "paint-bucket", - "ink-color", - "ink-colour" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format", - "Color" - ], - "author": "Google" - }, - { - "id": "3681D567-0B40-47FF-843A-3258A16F935B", - "baseIconId": "71E6D8F0-A3D2-43CB-8940-16AA4E1D9825", - "name": "format-color-highlight", - "codepoint": "F0E31", - "aliases": [ - "format-colour-highlight" - ], - "styles": [ - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Color", - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "C6D32152-B2F3-43D3-A78E-D69CBDC5E054", - "baseIconId": "C6D32152-B2F3-43D3-A78E-D69CBDC5E054", - "name": "format-color-marker-cancel", - "codepoint": "F1313", - "aliases": [ - "format-color-redact" - ], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format", - "Color" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D28EF658-3CE7-4F5B-99B3-50F60F5B0BA0", - "baseIconId": "E79B26A6-CAA3-4CD8-B5C8-1D5797C4C765", - "name": "format-color-text", - "codepoint": "F069E", - "aliases": [ - "format-colour-text" - ], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format", - "Color" - ], - "author": "Google" - }, - { - "id": "FB93EA15-A9E8-432C-BC34-419DDCE44E3B", - "baseIconId": "FB93EA15-A9E8-432C-BC34-419DDCE44E3B", - "name": "format-columns", - "codepoint": "F08DF", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Peter Noble" - }, - { - "id": "3BC78F10-A7C3-4F15-9328-138E35CFC259", - "baseIconId": "3BC78F10-A7C3-4F15-9328-138E35CFC259", - "name": "format-float-center", - "codepoint": "F0267", - "aliases": [ - "format-float-centre" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Andreas Gohr" - }, - { - "id": "E595D32A-5108-4E9A-BF98-52DEFC1A50EE", - "baseIconId": "E595D32A-5108-4E9A-BF98-52DEFC1A50EE", - "name": "format-float-left", - "codepoint": "F0268", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Andreas Gohr" - }, - { - "id": "22DE1517-7E6C-43B9-B0E1-F3EDAEFE6398", - "baseIconId": "22DE1517-7E6C-43B9-B0E1-F3EDAEFE6398", - "name": "format-float-none", - "codepoint": "F0269", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Andreas Gohr" - }, - { - "id": "8F5AF64B-3A3D-449C-9FCC-374EAF6D523C", - "baseIconId": "8F5AF64B-3A3D-449C-9FCC-374EAF6D523C", - "name": "format-float-right", - "codepoint": "F026A", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Andreas Gohr" - }, - { - "id": "C7D57EF8-207C-48F9-953A-EAFB03308A1E", - "baseIconId": "C7D57EF8-207C-48F9-953A-EAFB03308A1E", - "name": "format-font", - "codepoint": "F06D6", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Haley Halcyon" - }, - { - "id": "4FA696A5-8843-4E3F-B9BF-5BCF5B6C4D2C", - "baseIconId": "E79B26A6-CAA3-4CD8-B5C8-1D5797C4C765", - "name": "format-font-size-decrease", - "codepoint": "F09F3", - "aliases": [], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Michael Irigoyen" - }, - { - "id": "934DCE7F-D2A8-40F5-B945-A35DBD3F207B", - "baseIconId": "E79B26A6-CAA3-4CD8-B5C8-1D5797C4C765", - "name": "format-font-size-increase", - "codepoint": "F09F4", - "aliases": [], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F64E046B-8690-4ACF-90F7-98896159BB34", - "baseIconId": "F64E046B-8690-4ACF-90F7-98896159BB34", - "name": "format-header-1", - "codepoint": "F026B", - "aliases": [ - "format-heading-1" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "00E2A358-A6A9-493C-BFC2-A259AA0092CF", - "baseIconId": "00E2A358-A6A9-493C-BFC2-A259AA0092CF", - "name": "format-header-2", - "codepoint": "F026C", - "aliases": [ - "format-heading-2" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "EE76BE9D-B10D-43C8-9B5A-746BE228C344", - "baseIconId": "EE76BE9D-B10D-43C8-9B5A-746BE228C344", - "name": "format-header-3", - "codepoint": "F026D", - "aliases": [ - "format-heading-3" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "CC669D6C-53AD-43C2-A660-EFF783847D6F", - "baseIconId": "CC669D6C-53AD-43C2-A660-EFF783847D6F", - "name": "format-header-4", - "codepoint": "F026E", - "aliases": [ - "format-heading-4" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "FFC1FF08-CEFF-4623-B715-4731CDEF27D4", - "baseIconId": "FFC1FF08-CEFF-4623-B715-4731CDEF27D4", - "name": "format-header-5", - "codepoint": "F026F", - "aliases": [ - "format-heading-5" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "854D0158-05E0-47A7-8E6E-2F66DCD415EE", - "baseIconId": "854D0158-05E0-47A7-8E6E-2F66DCD415EE", - "name": "format-header-6", - "codepoint": "F0270", - "aliases": [ - "format-heading-6" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "CF17BB12-9537-4F2E-9E88-3E1DE3D0DCE6", - "baseIconId": "CF17BB12-9537-4F2E-9E88-3E1DE3D0DCE6", - "name": "format-header-decrease", - "codepoint": "F0271", - "aliases": [ - "format-heading-decease" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Andreas Gohr" - }, - { - "id": "99554AA1-419F-420F-9AEB-0826D411B420", - "baseIconId": "99554AA1-419F-420F-9AEB-0826D411B420", - "name": "format-header-equal", - "codepoint": "F0272", - "aliases": [ - "format-heading-equal" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Andreas Gohr" - }, - { - "id": "20BCC8DA-F055-46B0-9C27-68791E3BA80E", - "baseIconId": "20BCC8DA-F055-46B0-9C27-68791E3BA80E", - "name": "format-header-increase", - "codepoint": "F0273", - "aliases": [ - "format-heading-increase" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Andreas Gohr" - }, - { - "id": "C632F7EE-B560-4FAA-802E-968DAB3EA979", - "baseIconId": "C632F7EE-B560-4FAA-802E-968DAB3EA979", - "name": "format-header-pound", - "codepoint": "F0274", - "aliases": [ - "format-header-hash", - "format-heading-pound", - "format-heading-hash", - "format-heading-markdown" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "83EE24A9-9D1A-45AA-B4CD-F75F1174F0EB", - "baseIconId": "83EE24A9-9D1A-45AA-B4CD-F75F1174F0EB", - "name": "format-horizontal-align-center", - "codepoint": "F061E", - "aliases": [ - "format-horizontal-align-centre", - "arrow-horizontal-collapse" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "AEA5545F-4C74-4A14-8F9E-92CC258216AD", - "baseIconId": "AEA5545F-4C74-4A14-8F9E-92CC258216AD", - "name": "format-horizontal-align-left", - "codepoint": "F061F", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "7EFCB642-F9B5-41C8-B2CF-2566C6AC45C2", - "baseIconId": "7EFCB642-F9B5-41C8-B2CF-2566C6AC45C2", - "name": "format-horizontal-align-right", - "codepoint": "F0620", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "148FD97C-E3C6-4E41-87B8-488036159CC6", - "baseIconId": "148FD97C-E3C6-4E41-87B8-488036159CC6", - "name": "format-indent-decrease", - "codepoint": "F0275", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "18B9F49B-7A69-4E93-AEA6-8CB30F22E100", - "baseIconId": "18B9F49B-7A69-4E93-AEA6-8CB30F22E100", - "name": "format-indent-increase", - "codepoint": "F0276", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "F766C5E3-1BBB-4ADE-9D33-170A223DB6F9", - "baseIconId": "F766C5E3-1BBB-4ADE-9D33-170A223DB6F9", - "name": "format-italic", - "codepoint": "F0277", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "B9EB5A17-979C-47C5-8F20-E2436511E0C4", - "baseIconId": "B9EB5A17-979C-47C5-8F20-E2436511E0C4", - "name": "format-letter-case", - "codepoint": "F0B34", - "aliases": [], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "79F06165-5718-4618-8056-1BEB689BF7CF", - "baseIconId": "B9EB5A17-979C-47C5-8F20-E2436511E0C4", - "name": "format-letter-case-lower", - "codepoint": "F0B35", - "aliases": [ - "format-lowercase" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "0C748102-1ABB-4762-A407-B64C960618D7", - "baseIconId": "B9EB5A17-979C-47C5-8F20-E2436511E0C4", - "name": "format-letter-case-upper", - "codepoint": "F0B36", - "aliases": [ - "format-uppercase" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "B2B22BA8-6F5A-45F8-9A48-B6CC932DFD62", - "baseIconId": "62D729FA-8643-4FAF-9D2D-176AE4ED3774", - "name": "format-letter-ends-with", - "codepoint": "F0FB8", - "aliases": [], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Simran" - }, - { - "id": "62D729FA-8643-4FAF-9D2D-176AE4ED3774", - "baseIconId": "62D729FA-8643-4FAF-9D2D-176AE4ED3774", - "name": "format-letter-matches", - "codepoint": "F0FB9", - "aliases": [], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Simran" - }, - { - "id": "868506A4-50DB-4C9C-9CEA-278969298EF4", - "baseIconId": "868506A4-50DB-4C9C-9CEA-278969298EF4", - "name": "format-letter-spacing", - "codepoint": "F1956", - "aliases": [ - "format-kerning" - ], - "styles": [], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5EC5D417-1D27-4B48-A2DD-DC4DDCF96BA3", - "baseIconId": "868506A4-50DB-4C9C-9CEA-278969298EF4", - "name": "format-letter-spacing-variant", - "codepoint": "F1AFB", - "aliases": [], - "styles": [ - "variant" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Sintija" - }, - { - "id": "870F391E-A069-461E-9296-904B34308D98", - "baseIconId": "62D729FA-8643-4FAF-9D2D-176AE4ED3774", - "name": "format-letter-starts-with", - "codepoint": "F0FBA", - "aliases": [], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Simran" - }, - { - "id": "87E942A2-9A34-4EF0-9025-63CA97919465", - "baseIconId": "87E942A2-9A34-4EF0-9025-63CA97919465", - "name": "format-line-height", - "codepoint": "F1AFC", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Sintija" - }, - { - "id": "24F69EED-721D-48A1-BA3C-3C1657B65C04", - "baseIconId": "24F69EED-721D-48A1-BA3C-3C1657B65C04", - "name": "format-line-spacing", - "codepoint": "F0278", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "2E9CEB4F-7C1F-4572-9A8E-830A3258407A", - "baseIconId": "2E9CEB4F-7C1F-4572-9A8E-830A3258407A", - "name": "format-line-style", - "codepoint": "F05C8", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format", - "Drawing \/ Art" - ], - "author": "Google" - }, - { - "id": "1BA8A6A0-348E-4268-B02B-6708E1E30373", - "baseIconId": "1BA8A6A0-348E-4268-B02B-6708E1E30373", - "name": "format-line-weight", - "codepoint": "F05C9", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format", - "Drawing \/ Art" - ], - "author": "Google" - }, - { - "id": "2FBAE8A7-BAC7-44C8-85DC-EB458871BF29", - "baseIconId": "2FBAE8A7-BAC7-44C8-85DC-EB458871BF29", - "name": "format-list-bulleted", - "codepoint": "F0279", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "4AA98685-EEBB-4816-801E-3B12DCB4413F", - "baseIconId": "2FBAE8A7-BAC7-44C8-85DC-EB458871BF29", - "name": "format-list-bulleted-square", - "codepoint": "F0DD0", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "C436DF00-A54E-48D1-9A4A-EA21A90E4FF5", - "baseIconId": "2FBAE8A7-BAC7-44C8-85DC-EB458871BF29", - "name": "format-list-bulleted-triangle", - "codepoint": "F0EB2", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Michael Richins" - }, - { - "id": "535ABAF7-65D8-4CAB-A3B0-D5B732B6C36F", - "baseIconId": "2FBAE8A7-BAC7-44C8-85DC-EB458871BF29", - "name": "format-list-bulleted-type", - "codepoint": "F027A", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "45A8DC8E-AD79-4205-AC8B-4BCC17B6F465", - "baseIconId": "2FBAE8A7-BAC7-44C8-85DC-EB458871BF29", - "name": "format-list-checkbox", - "codepoint": "F096A", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "2B19EECF-71BF-41F3-B62A-468607BA0B47", - "baseIconId": "2FBAE8A7-BAC7-44C8-85DC-EB458871BF29", - "name": "format-list-checks", - "codepoint": "F0756", - "aliases": [ - "to-do" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "894BF6B9-23A6-4C91-813C-9867E63DA5AD", - "baseIconId": "2FBAE8A7-BAC7-44C8-85DC-EB458871BF29", - "name": "format-list-group", - "codepoint": "F1860", - "aliases": [], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "6272EE7E-4A0B-4A08-AFC4-6FD3845FAD6B", - "baseIconId": "894BF6B9-23A6-4C91-813C-9867E63DA5AD", - "name": "format-list-group-plus", - "codepoint": "F1B56", - "aliases": [ - "format-list-group-add" - ], - "styles": [ - "plus" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Andy Giesen" - }, - { - "id": "EFEB4AB3-780B-4C2D-B673-36BB0A4FE0B2", - "baseIconId": "EFEB4AB3-780B-4C2D-B673-36BB0A4FE0B2", - "name": "format-list-numbered", - "codepoint": "F027B", - "aliases": [ - "format-list-numbers" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "8480FB3F-93B8-4445-BE6D-56A47441D6A6", - "baseIconId": "EFEB4AB3-780B-4C2D-B673-36BB0A4FE0B2", - "name": "format-list-numbered-rtl", - "codepoint": "F0D0D", - "aliases": [ - "format-list-numbered-right-to-left" - ], - "styles": [ - "variant" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "5458AB97-471F-4A96-92E0-FB0AE72AFF33", - "baseIconId": "5458AB97-471F-4A96-92E0-FB0AE72AFF33", - "name": "format-list-text", - "codepoint": "F126F", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Yaroslav Bandura" - }, - { - "id": "5D87D3E1-C59B-47A2-9ADE-C96FF1C7CA21", - "baseIconId": "DD218F3D-C302-477A-9B9F-482813328DE6", - "name": "format-overline", - "codepoint": "F0EB3", - "aliases": [], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Michael" - }, - { - "id": "4C2390EF-6AE7-4868-945B-AACD2E581F46", - "baseIconId": "4C2390EF-6AE7-4868-945B-AACD2E581F46", - "name": "format-page-break", - "codepoint": "F06D7", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "841FF2DA-C31C-48B1-A566-10238590DAF9", - "baseIconId": "841FF2DA-C31C-48B1-A566-10238590DAF9", - "name": "format-page-split", - "codepoint": "F1917", - "aliases": [], - "styles": [], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Michael Irigoyen" - }, - { - "id": "70232BC6-D883-48CD-B992-9EE1DABEBFD7", - "baseIconId": "70232BC6-D883-48CD-B992-9EE1DABEBFD7", - "name": "format-paint", - "codepoint": "F027C", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format", - "Color", - "Drawing \/ Art" - ], - "author": "Google" - }, - { - "id": "252574CE-020B-461A-995B-D4BA81741BBC", - "baseIconId": "252574CE-020B-461A-995B-D4BA81741BBC", - "name": "format-paragraph", - "codepoint": "F027D", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "D92E7B40-A6F6-479D-9FFD-807AE3E470E6", - "baseIconId": "D92E7B40-A6F6-479D-9FFD-807AE3E470E6", - "name": "format-paragraph-spacing", - "codepoint": "F1AFD", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Sintija" - }, - { - "id": "9AF465C3-5FEF-48E4-8D38-5A5A3D2A9799", - "baseIconId": "9AF465C3-5FEF-48E4-8D38-5A5A3D2A9799", - "name": "format-pilcrow", - "codepoint": "F06D8", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Michael Richins" - }, - { - "id": "C317FCCF-DCDB-4429-B1A7-850FED29F5B3", - "baseIconId": "C317FCCF-DCDB-4429-B1A7-850FED29F5B3", - "name": "format-pilcrow-arrow-left", - "codepoint": "F0286", - "aliases": [ - "format-textdirection-r-to-l" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "D6B79C3B-22FB-4B52-90B8-6979AB48C3E8", - "baseIconId": "D6B79C3B-22FB-4B52-90B8-6979AB48C3E8", - "name": "format-pilcrow-arrow-right", - "codepoint": "F0285", - "aliases": [ - "format-textdirection-l-to-r" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "0450C081-EE6B-4CB1-A7F7-B6F0F524CA99", - "baseIconId": "0450C081-EE6B-4CB1-A7F7-B6F0F524CA99", - "name": "format-quote-close", - "codepoint": "F027E", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "55118B26-26AC-43F3-B85C-1FF22306A77E", - "baseIconId": "0450C081-EE6B-4CB1-A7F7-B6F0F524CA99", - "name": "format-quote-close-outline", - "codepoint": "F11A8", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Simran" - }, - { - "id": "CF5D126B-7DC1-4BE7-B5A1-E31B715EDBAA", - "baseIconId": "CF5D126B-7DC1-4BE7-B5A1-E31B715EDBAA", - "name": "format-quote-open", - "codepoint": "F0757", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "B9143BB9-06E0-40A3-8B38-D0687A1BEA69", - "baseIconId": "CF5D126B-7DC1-4BE7-B5A1-E31B715EDBAA", - "name": "format-quote-open-outline", - "codepoint": "F11A7", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Simran" - }, - { - "id": "99448D5B-50D3-4F49-8E88-DD75F7DFB231", - "baseIconId": "99448D5B-50D3-4F49-8E88-DD75F7DFB231", - "name": "format-rotate-90", - "codepoint": "F06AA", - "aliases": [ - "rotate-90-degrees-ccw", - "format-rotate-ninety" - ], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "6F0198AB-0903-4B36-AC27-B72EBC7A8A83", - "baseIconId": "6F0198AB-0903-4B36-AC27-B72EBC7A8A83", - "name": "format-section", - "codepoint": "F069F", - "aliases": [], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Michael Richins" - }, - { - "id": "3F6E54F6-CF3E-46C8-BD72-A9BCF6DCF80C", - "baseIconId": "3F6E54F6-CF3E-46C8-BD72-A9BCF6DCF80C", - "name": "format-size", - "codepoint": "F027F", - "aliases": [ - "font-size" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "0BE83BB5-3D22-478D-AAC2-F586A4E5FA69", - "baseIconId": "DD218F3D-C302-477A-9B9F-482813328DE6", - "name": "format-strikethrough", - "codepoint": "F0280", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "CB728339-FA66-440F-9E88-8A6FFE827EA1", - "baseIconId": "DD218F3D-C302-477A-9B9F-482813328DE6", - "name": "format-strikethrough-variant", - "codepoint": "F0281", - "aliases": [ - "strikethrough-s" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "4765CE92-9095-4C00-9137-1C35761C7B59", - "baseIconId": "4765CE92-9095-4C00-9137-1C35761C7B59", - "name": "format-subscript", - "codepoint": "F0282", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "41BF2594-97C2-481A-AA66-029CE1BF4C2D", - "baseIconId": "41BF2594-97C2-481A-AA66-029CE1BF4C2D", - "name": "format-superscript", - "codepoint": "F0283", - "aliases": [ - "exponent" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format", - "Math" - ], - "author": "Austin Andrews" - }, - { - "id": "FE7F03F1-79D3-4113-A35E-088C3F2AB8AD", - "baseIconId": "FE7F03F1-79D3-4113-A35E-088C3F2AB8AD", - "name": "format-text", - "codepoint": "F0284", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "C40131F3-E8A5-44CB-90A0-E230114C0DC3", - "baseIconId": "D5935D28-A7D0-4F35-9917-625E5A9666CD", - "name": "format-text-rotation-angle-down", - "codepoint": "F0FBB", - "aliases": [], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "9C650D6F-20FE-4496-8973-B19509A47A18", - "baseIconId": "D5935D28-A7D0-4F35-9917-625E5A9666CD", - "name": "format-text-rotation-angle-up", - "codepoint": "F0FBC", - "aliases": [], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "580E85A8-696F-46FE-B141-F13A94078F22", - "baseIconId": "D5935D28-A7D0-4F35-9917-625E5A9666CD", - "name": "format-text-rotation-down", - "codepoint": "F0D73", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "D6CC1545-8778-4A0D-9B2B-7A34DB91ADD9", - "baseIconId": "D5935D28-A7D0-4F35-9917-625E5A9666CD", - "name": "format-text-rotation-down-vertical", - "codepoint": "F0FBD", - "aliases": [], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D5935D28-A7D0-4F35-9917-625E5A9666CD", - "baseIconId": "D5935D28-A7D0-4F35-9917-625E5A9666CD", - "name": "format-text-rotation-none", - "codepoint": "F0D74", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "2A113842-ED83-4F44-B7DE-A0AFF5DDB452", - "baseIconId": "D5935D28-A7D0-4F35-9917-625E5A9666CD", - "name": "format-text-rotation-up", - "codepoint": "F0FBE", - "aliases": [], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "A8232518-D348-46AF-953C-907F7F0F3D51", - "baseIconId": "D5935D28-A7D0-4F35-9917-625E5A9666CD", - "name": "format-text-rotation-vertical", - "codepoint": "F0FBF", - "aliases": [], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "E79B26A6-CAA3-4CD8-B5C8-1D5797C4C765", - "baseIconId": "E79B26A6-CAA3-4CD8-B5C8-1D5797C4C765", - "name": "format-text-variant", - "codepoint": "F0E32", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Michael Irigoyen" - }, - { - "id": "98078792-391E-4CB0-8C7A-8F76868FA289", - "baseIconId": "E79B26A6-CAA3-4CD8-B5C8-1D5797C4C765", - "name": "format-text-variant-outline", - "codepoint": "F150F", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Haley Halcyon" - }, - { - "id": "DD6BADDA-B656-424C-AF6D-509CB7E382D2", - "baseIconId": "AB362496-50E2-4978-BA63-41F90057BB64", - "name": "format-text-wrapping-clip", - "codepoint": "F0D0E", - "aliases": [], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "EF57DF3A-9441-45FD-B124-5247DB8E04C2", - "baseIconId": "AB362496-50E2-4978-BA63-41F90057BB64", - "name": "format-text-wrapping-overflow", - "codepoint": "F0D0F", - "aliases": [], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "AB362496-50E2-4978-BA63-41F90057BB64", - "baseIconId": "AB362496-50E2-4978-BA63-41F90057BB64", - "name": "format-text-wrapping-wrap", - "codepoint": "F0D10", - "aliases": [], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "8A502343-16E9-4FF5-A0FE-28328B37E7C2", - "baseIconId": "8A502343-16E9-4FF5-A0FE-28328B37E7C2", - "name": "format-textbox", - "codepoint": "F0D11", - "aliases": [], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "4B4B86CC-C989-4629-9B9D-C31243A29DB9", - "baseIconId": "4B4B86CC-C989-4629-9B9D-C31243A29DB9", - "name": "format-title", - "codepoint": "F05F4", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "DD218F3D-C302-477A-9B9F-482813328DE6", - "baseIconId": "DD218F3D-C302-477A-9B9F-482813328DE6", - "name": "format-underline", - "codepoint": "F0287", - "aliases": [ - "format-underlined" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "27068E58-4DC3-4C61-96A2-876C621B6039", - "baseIconId": "DD218F3D-C302-477A-9B9F-482813328DE6", - "name": "format-underline-wavy", - "codepoint": "F18E9", - "aliases": [], - "styles": [ - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Michael Irigoyen" - }, - { - "id": "723F4461-61B3-4D53-A03D-302F5D9401E1", - "baseIconId": "723F4461-61B3-4D53-A03D-302F5D9401E1", - "name": "format-vertical-align-bottom", - "codepoint": "F0621", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "4C8985BA-B48F-4015-9389-35672ECDE544", - "baseIconId": "4C8985BA-B48F-4015-9389-35672ECDE544", - "name": "format-vertical-align-center", - "codepoint": "F0622", - "aliases": [ - "format-vertical-align-centre", - "arrow-vertical-collapse" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "06A3A04F-F7F7-4707-86FC-5DEBA497B79E", - "baseIconId": "06A3A04F-F7F7-4707-86FC-5DEBA497B79E", - "name": "format-vertical-align-top", - "codepoint": "F0623", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "556AFB1F-1857-4CB9-94B8-2E7E8A8DD292", - "baseIconId": "556AFB1F-1857-4CB9-94B8-2E7E8A8DD292", - "name": "format-wrap-inline", - "codepoint": "F0288", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Andreas Gohr" - }, - { - "id": "D5787449-1950-4A7C-8CD9-CABC628AFBCE", - "baseIconId": "D5787449-1950-4A7C-8CD9-CABC628AFBCE", - "name": "format-wrap-square", - "codepoint": "F0289", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Andreas Gohr" - }, - { - "id": "4AA96763-2A6C-4BF0-BA64-32AD08B530F6", - "baseIconId": "4AA96763-2A6C-4BF0-BA64-32AD08B530F6", - "name": "format-wrap-tight", - "codepoint": "F028A", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Andreas Gohr" - }, - { - "id": "0378C7CD-8331-42A0-9C0F-114960FD5966", - "baseIconId": "0378C7CD-8331-42A0-9C0F-114960FD5966", - "name": "format-wrap-top-bottom", - "codepoint": "F028B", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Andreas Gohr" - }, - { - "id": "3AC84477-2308-4445-868C-9666AE25B054", - "baseIconId": "3AC84477-2308-4445-868C-9666AE25B054", - "name": "forum", - "codepoint": "F028C", - "aliases": [ - "message-group", - "question-answer", - "chat" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "7FA0128C-C4DF-413B-9D6A-070344D26FFD", - "baseIconId": "3AC84477-2308-4445-868C-9666AE25B054", - "name": "forum-minus", - "codepoint": "F1AA9", - "aliases": [ - "chat-minus", - "forum-subtract", - "chat-subtract" - ], - "styles": [ - "minus" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [], - "author": "nlsve" - }, - { - "id": "B62A5E78-9D61-47C7-97DA-B1DFFDACFACC", - "baseIconId": "3AC84477-2308-4445-868C-9666AE25B054", - "name": "forum-minus-outline", - "codepoint": "F1AAA", - "aliases": [ - "chat-minus-outline", - "forum-subtract-outline", - "chat-subtract-outline" - ], - "styles": [ - "minus", - "outline" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [], - "author": "nlsve" - }, - { - "id": "E6469D88-74CE-4242-8226-85BB8F8EFFB0", - "baseIconId": "3AC84477-2308-4445-868C-9666AE25B054", - "name": "forum-outline", - "codepoint": "F0822", - "aliases": [ - "chat-outline" - ], - "styles": [ - "outline" - ], - "version": "2.1.19", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "148303DA-1AF8-48FF-82C4-A4B91108B231", - "baseIconId": "3AC84477-2308-4445-868C-9666AE25B054", - "name": "forum-plus", - "codepoint": "F1AAB", - "aliases": [ - "chat-plus", - "forum-add", - "chat-add" - ], - "styles": [ - "plus" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [], - "author": "nlsve" - }, - { - "id": "9AFD97C2-4B94-49EB-8D08-E2802D6FC377", - "baseIconId": "3AC84477-2308-4445-868C-9666AE25B054", - "name": "forum-plus-outline", - "codepoint": "F1AAC", - "aliases": [ - "chat-plus-outline", - "chat-add-outline", - "forum-add-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [], - "author": "nlsve" - }, - { - "id": "E7013FF6-E962-4ED4-BCA9-5BE12DF03146", - "baseIconId": "3AC84477-2308-4445-868C-9666AE25B054", - "name": "forum-remove", - "codepoint": "F1AAD", - "aliases": [ - "forum-delete", - "chat-remove", - "chat-delete" - ], - "styles": [ - "remove" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "D58EAFB0-F7C3-4541-A585-43F80F273833", - "baseIconId": "3AC84477-2308-4445-868C-9666AE25B054", - "name": "forum-remove-outline", - "codepoint": "F1AAE", - "aliases": [ - "forum-delete-outline", - "chat-remove-outline", - "chat-delete-outline" - ], - "styles": [ - "outline", - "remove" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "EAE07425-A6D5-4B33-A9C5-6D7E9E9E1908", - "baseIconId": "EAE07425-A6D5-4B33-A9C5-6D7E9E9E1908", - "name": "forward", - "codepoint": "F028D", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "A626AD09-C436-4622-905C-9C7E8164CD54", - "baseIconId": "A626AD09-C436-4622-905C-9C7E8164CD54", - "name": "forwardburger", - "codepoint": "F0D75", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "9267CA84-62FD-4346-BCA8-42B4617CCB43", - "baseIconId": "9267CA84-62FD-4346-BCA8-42B4617CCB43", - "name": "fountain", - "codepoint": "F096B", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [], - "author": "Augustin Ursu" - }, - { - "id": "E7415545-8386-424D-8CF5-933EE43D74CB", - "baseIconId": "E7415545-8386-424D-8CF5-933EE43D74CB", - "name": "fountain-pen", - "codepoint": "F0D12", - "aliases": [], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Drawing \/ Art" - ], - "author": "Michael Irigoyen" - }, - { - "id": "892B5243-DF37-4511-B4A1-1D688A39ED52", - "baseIconId": "E7415545-8386-424D-8CF5-933EE43D74CB", - "name": "fountain-pen-tip", - "codepoint": "F0D13", - "aliases": [], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Drawing \/ Art" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2B87DDFB-9230-4374-BE31-996E5D21639C", - "baseIconId": "2B87DDFB-9230-4374-BE31-996E5D21639C", - "name": "fraction-one-half", - "codepoint": "F1992", - "aliases": [], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "54CA035A-3BAB-4349-8FD1-D50A1990D301", - "baseIconId": "54CA035A-3BAB-4349-8FD1-D50A1990D301", - "name": "freebsd", - "codepoint": "F08E0", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "C7BD4B3A-4B63-4FDE-99D5-87B4DA460492", - "baseIconId": "C7BD4B3A-4B63-4FDE-99D5-87B4DA460492", - "name": "french-fries", - "codepoint": "F1957", - "aliases": [ - "chips", - "finger-chips", - "french-fry", - "fried-potatoes", - "fries", - "frites" - ], - "styles": [], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Colton Wiscombe" - }, - { - "id": "A53E5953-2094-419A-A418-57BE05F751C8", - "baseIconId": "3AC84477-2308-4445-868C-9666AE25B054", - "name": "frequently-asked-questions", - "codepoint": "F0EB4", - "aliases": [ - "faq" - ], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "148520BB-2172-4261-9336-3E85E5131869", - "baseIconId": "148520BB-2172-4261-9336-3E85E5131869", - "name": "fridge", - "codepoint": "F0290", - "aliases": [ - "fridge-filled", - "refrigerator", - "kitchen" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "032BF3C7-46C6-40D8-BBD4-4CDE8CBCC48B", - "baseIconId": "148520BB-2172-4261-9336-3E85E5131869", - "name": "fridge-alert", - "codepoint": "F11B1", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9BC979D8-9012-4CB1-A041-7A19ADC8E08D", - "baseIconId": "148520BB-2172-4261-9336-3E85E5131869", - "name": "fridge-alert-outline", - "codepoint": "F11B2", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F88B80D0-1521-48F8-BC15-94BA5F14BFC1", - "baseIconId": "148520BB-2172-4261-9336-3E85E5131869", - "name": "fridge-bottom", - "codepoint": "F0292", - "aliases": [ - "fridge-filled-top", - "refrigerator-bottom" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "48D0CA48-04CB-4C87-8F19-DBD5286A6E7B", - "baseIconId": "148520BB-2172-4261-9336-3E85E5131869", - "name": "fridge-industrial", - "codepoint": "F15EE", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "3A45CCD3-F520-4A5D-BF83-2F0C28F66337", - "baseIconId": "148520BB-2172-4261-9336-3E85E5131869", - "name": "fridge-industrial-alert", - "codepoint": "F15EF", - "aliases": [], - "styles": [ - "alert", - "variant" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Home Automation", - "Alert \/ Error" - ], - "author": "Colton Wiscombe" - }, - { - "id": "8AAF0069-BCC9-4922-A32B-C1625C27AF98", - "baseIconId": "148520BB-2172-4261-9336-3E85E5131869", - "name": "fridge-industrial-alert-outline", - "codepoint": "F15F0", - "aliases": [], - "styles": [ - "alert", - "outline", - "variant" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Home Automation", - "Alert \/ Error" - ], - "author": "Colton Wiscombe" - }, - { - "id": "6670F529-AA9D-41B4-9D0B-D435209CE045", - "baseIconId": "148520BB-2172-4261-9336-3E85E5131869", - "name": "fridge-industrial-off", - "codepoint": "F15F1", - "aliases": [], - "styles": [ - "off", - "variant" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "5A046326-A491-45B3-A524-E9CA61BC7255", - "baseIconId": "148520BB-2172-4261-9336-3E85E5131869", - "name": "fridge-industrial-off-outline", - "codepoint": "F15F2", - "aliases": [], - "styles": [ - "off", - "outline", - "variant" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "C3B23703-739D-45E6-9FEB-CEB630D638CC", - "baseIconId": "148520BB-2172-4261-9336-3E85E5131869", - "name": "fridge-industrial-outline", - "codepoint": "F15F3", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "417BCDA5-DCA7-4EFF-B2BF-670E9DD10961", - "baseIconId": "148520BB-2172-4261-9336-3E85E5131869", - "name": "fridge-off", - "codepoint": "F11AF", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "4430029A-EC83-4078-A287-AD986DE6B2AE", - "baseIconId": "148520BB-2172-4261-9336-3E85E5131869", - "name": "fridge-off-outline", - "codepoint": "F11B0", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "214668FF-C50D-4D69-B916-AE66E73CB3B0", - "baseIconId": "148520BB-2172-4261-9336-3E85E5131869", - "name": "fridge-outline", - "codepoint": "F028F", - "aliases": [ - "kitchen", - "refrigerator-outline" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "3D6FCDAF-F7F8-42C2-87C6-6DF36EB8C935", - "baseIconId": "148520BB-2172-4261-9336-3E85E5131869", - "name": "fridge-top", - "codepoint": "F0291", - "aliases": [ - "fridge-filled-bottom", - "refrigerator-top" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "3066672D-30F0-44BF-B396-C0A2E5BCC1FF", - "baseIconId": "148520BB-2172-4261-9336-3E85E5131869", - "name": "fridge-variant", - "codepoint": "F15F4", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "091DA8FF-AD64-4F13-BF05-E21B39C1E171", - "baseIconId": "148520BB-2172-4261-9336-3E85E5131869", - "name": "fridge-variant-alert", - "codepoint": "F15F5", - "aliases": [], - "styles": [ - "alert", - "variant" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Home Automation", - "Alert \/ Error" - ], - "author": "Colton Wiscombe" - }, - { - "id": "782A053A-D6FF-4B8E-B3A2-4ADCB6A7BA9A", - "baseIconId": "148520BB-2172-4261-9336-3E85E5131869", - "name": "fridge-variant-alert-outline", - "codepoint": "F15F6", - "aliases": [], - "styles": [ - "alert", - "outline", - "variant" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Home Automation", - "Alert \/ Error" - ], - "author": "Colton Wiscombe" - }, - { - "id": "99BB3B9D-0011-4493-B80C-539874638521", - "baseIconId": "148520BB-2172-4261-9336-3E85E5131869", - "name": "fridge-variant-off", - "codepoint": "F15F7", - "aliases": [], - "styles": [ - "off", - "variant" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "7B4DCE91-4647-4646-A93C-D7542FEAC5AC", - "baseIconId": "148520BB-2172-4261-9336-3E85E5131869", - "name": "fridge-variant-off-outline", - "codepoint": "F15F8", - "aliases": [], - "styles": [ - "off", - "outline", - "variant" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "B1E31148-2318-459A-AA91-1C87D306D71A", - "baseIconId": "148520BB-2172-4261-9336-3E85E5131869", - "name": "fridge-variant-outline", - "codepoint": "F15F9", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "11A7EAA3-B398-4F36-80B0-A4C50965E812", - "baseIconId": "11A7EAA3-B398-4F36-80B0-A4C50965E812", - "name": "fruit-cherries", - "codepoint": "F1042", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "693BA957-6E56-406A-B061-CCA1B916E408", - "baseIconId": "11A7EAA3-B398-4F36-80B0-A4C50965E812", - "name": "fruit-cherries-off", - "codepoint": "F13F8", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1F2DF3F1-F380-491D-BC09-B3262612DF23", - "baseIconId": "1F2DF3F1-F380-491D-BC09-B3262612DF23", - "name": "fruit-citrus", - "codepoint": "F1043", - "aliases": [ - "fruit-lemon", - "fruit-lime" - ], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "AA24652D-2BA2-4C09-87A4-9E71C1A18CA9", - "baseIconId": "1F2DF3F1-F380-491D-BC09-B3262612DF23", - "name": "fruit-citrus-off", - "codepoint": "F13F9", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C2A76F16-19FC-4D88-B131-B90E5B3ED517", - "baseIconId": "C2A76F16-19FC-4D88-B131-B90E5B3ED517", - "name": "fruit-grapes", - "codepoint": "F1044", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D2E95893-08FB-4C63-9420-AD5C890EBAE6", - "baseIconId": "C2A76F16-19FC-4D88-B131-B90E5B3ED517", - "name": "fruit-grapes-outline", - "codepoint": "F1045", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E17D31CC-F130-4832-95AD-EBC299E1B8E5", - "baseIconId": "E17D31CC-F130-4832-95AD-EBC299E1B8E5", - "name": "fruit-pear", - "codepoint": "F1A0E", - "aliases": [], - "styles": [], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Contributors" - }, - { - "id": "F28FDEF7-E169-45AA-84E7-13DB0A6CA241", - "baseIconId": "F28FDEF7-E169-45AA-84E7-13DB0A6CA241", - "name": "fruit-pineapple", - "codepoint": "F1046", - "aliases": [ - "fruit-ananas" - ], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0219370F-F54F-444F-8312-288CB435784E", - "baseIconId": "0219370F-F54F-444F-8312-288CB435784E", - "name": "fruit-watermelon", - "codepoint": "F1047", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "8E016660-0C3A-46EA-B3A5-8DC490238EC7", - "baseIconId": "8E016660-0C3A-46EA-B3A5-8DC490238EC7", - "name": "fuel", - "codepoint": "F07CA", - "aliases": [ - "petrol", - "gasoline" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Haley Halcyon" - }, - { - "id": "AF7C2BB9-3C7B-4309-89BD-58158E0CDF2A", - "baseIconId": "AF7C2BB9-3C7B-4309-89BD-58158E0CDF2A", - "name": "fuel-cell", - "codepoint": "F18B5", - "aliases": [ - "battery" - ], - "styles": [], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Automotive", - "Battery" - ], - "author": "Hans B\u00f6hm" - }, - { - "id": "A4F7E2E4-704C-4A71-99D5-4BD19AD8E755", - "baseIconId": "A4F7E2E4-704C-4A71-99D5-4BD19AD8E755", - "name": "fullscreen", - "codepoint": "F0293", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "CE6DC9C1-A636-4B3E-B838-34069330D3B2", - "baseIconId": "CE6DC9C1-A636-4B3E-B838-34069330D3B2", - "name": "fullscreen-exit", - "codepoint": "F0294", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "76B75225-53BF-4523-BD48-CB555FFF0C67", - "baseIconId": "76B75225-53BF-4523-BD48-CB555FFF0C67", - "name": "function", - "codepoint": "F0295", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Austin Andrews" - }, - { - "id": "8424F867-9F66-42FB-92D3-91724FB2CA38", - "baseIconId": "76B75225-53BF-4523-BD48-CB555FFF0C67", - "name": "function-variant", - "codepoint": "F0871", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Richins" - }, - { - "id": "D9CC1449-7E53-4305-A521-C4E705390012", - "baseIconId": "D9CC1449-7E53-4305-A521-C4E705390012", - "name": "furigana-horizontal", - "codepoint": "F1081", - "aliases": [ - "ruby-horizontal" - ], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Haley Halcyon" - }, - { - "id": "68042B53-6F94-4EE1-A40D-9415AE0EE14A", - "baseIconId": "D9CC1449-7E53-4305-A521-C4E705390012", - "name": "furigana-vertical", - "codepoint": "F1082", - "aliases": [ - "zhuyin", - "ruby-vertical" - ], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Haley Halcyon" - }, - { - "id": "E1A77AA6-9DC6-49C8-8049-89EEE3545A4A", - "baseIconId": "E1A77AA6-9DC6-49C8-8049-89EEE3545A4A", - "name": "fuse", - "codepoint": "F0C85", - "aliases": [], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "EDE0F403-427B-468D-9CCA-75608159964C", - "baseIconId": "E1A77AA6-9DC6-49C8-8049-89EEE3545A4A", - "name": "fuse-alert", - "codepoint": "F142D", - "aliases": [], - "styles": [ - "alert" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Automotive", - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "84BD762F-B0EC-4195-A6E2-7BF1E9386AE6", - "baseIconId": "E1A77AA6-9DC6-49C8-8049-89EEE3545A4A", - "name": "fuse-blade", - "codepoint": "F0C86", - "aliases": [], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "174BB611-F232-474B-B563-DCC770985930", - "baseIconId": "E1A77AA6-9DC6-49C8-8049-89EEE3545A4A", - "name": "fuse-off", - "codepoint": "F142C", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5C29EFA9-0FF3-4101-BC87-C9C15ACBA7AB", - "baseIconId": "5C29EFA9-0FF3-4101-BC87-C9C15ACBA7AB", - "name": "gamepad", - "codepoint": "F0296", - "aliases": [ - "games", - "controller" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation", - "Gaming \/ RPG" - ], - "author": "Google" - }, - { - "id": "C2CE3BF5-B623-4170-AD29-CAC89C4EBB93", - "baseIconId": "C2CE3BF5-B623-4170-AD29-CAC89C4EBB93", - "name": "gamepad-circle", - "codepoint": "F0E33", - "aliases": [ - "controller-circle" - ], - "styles": [], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Haley Halcyon" - }, - { - "id": "A7E881F0-76BD-4711-A238-5ECAEA02EAFC", - "baseIconId": "C2CE3BF5-B623-4170-AD29-CAC89C4EBB93", - "name": "gamepad-circle-down", - "codepoint": "F0E34", - "aliases": [ - "controller-circle-down" - ], - "styles": [ - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Haley Halcyon" - }, - { - "id": "AE90913A-5172-4699-98FC-7B935C753E1E", - "baseIconId": "C2CE3BF5-B623-4170-AD29-CAC89C4EBB93", - "name": "gamepad-circle-left", - "codepoint": "F0E35", - "aliases": [ - "controller-circle-left" - ], - "styles": [ - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Haley Halcyon" - }, - { - "id": "D227F063-202F-4B7D-9175-790055F07506", - "baseIconId": "C2CE3BF5-B623-4170-AD29-CAC89C4EBB93", - "name": "gamepad-circle-outline", - "codepoint": "F0E36", - "aliases": [ - "controller-circle-outline" - ], - "styles": [ - "outline" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Haley Halcyon" - }, - { - "id": "97C7D65D-6073-473D-9D21-7DCB3CA7556D", - "baseIconId": "C2CE3BF5-B623-4170-AD29-CAC89C4EBB93", - "name": "gamepad-circle-right", - "codepoint": "F0E37", - "aliases": [ - "controller-circle-right" - ], - "styles": [ - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Haley Halcyon" - }, - { - "id": "233618F0-A837-4938-AEF8-93DA6A92A70E", - "baseIconId": "C2CE3BF5-B623-4170-AD29-CAC89C4EBB93", - "name": "gamepad-circle-up", - "codepoint": "F0E38", - "aliases": [ - "controller-circle-up" - ], - "styles": [ - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Haley Halcyon" - }, - { - "id": "E007AB79-ED6E-4746-9D55-A35F6BD2C93C", - "baseIconId": "5C29EFA9-0FF3-4101-BC87-C9C15ACBA7AB", - "name": "gamepad-down", - "codepoint": "F0E39", - "aliases": [ - "controller-down" - ], - "styles": [ - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "GreenTurtwig" - }, - { - "id": "D8A2D400-73A0-467E-9144-581D51735E0F", - "baseIconId": "5C29EFA9-0FF3-4101-BC87-C9C15ACBA7AB", - "name": "gamepad-left", - "codepoint": "F0E3A", - "aliases": [ - "controller-left" - ], - "styles": [ - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "GreenTurtwig" - }, - { - "id": "57E03360-C609-4F40-85D0-10A2019A1EE4", - "baseIconId": "5C29EFA9-0FF3-4101-BC87-C9C15ACBA7AB", - "name": "gamepad-outline", - "codepoint": "F1919", - "aliases": [ - "controller-outline", - "games-outline" - ], - "styles": [ - "outline" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG", - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D513E54E-6492-4C2A-99E9-3E50C5662B88", - "baseIconId": "5C29EFA9-0FF3-4101-BC87-C9C15ACBA7AB", - "name": "gamepad-right", - "codepoint": "F0E3B", - "aliases": [ - "controller-right" - ], - "styles": [ - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "GreenTurtwig" - }, - { - "id": "3AD46D54-4369-483C-A0B5-E03D7CF62F3B", - "baseIconId": "3AD46D54-4369-483C-A0B5-E03D7CF62F3B", - "name": "gamepad-round", - "codepoint": "F0E3C", - "aliases": [ - "controller-round" - ], - "styles": [], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Haley Halcyon" - }, - { - "id": "ABC572E9-CE00-450F-A1E0-E59BCF0C3DC3", - "baseIconId": "3AD46D54-4369-483C-A0B5-E03D7CF62F3B", - "name": "gamepad-round-down", - "codepoint": "F0E3D", - "aliases": [ - "controller-round-down" - ], - "styles": [ - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Haley Halcyon" - }, - { - "id": "07D26BD5-0B09-4FAF-9710-DA1F19C40C39", - "baseIconId": "3AD46D54-4369-483C-A0B5-E03D7CF62F3B", - "name": "gamepad-round-left", - "codepoint": "F0E3E", - "aliases": [ - "controller-round-left" - ], - "styles": [ - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Haley Halcyon" - }, - { - "id": "808C141C-877E-49D3-93D6-A69F985A7881", - "baseIconId": "3AD46D54-4369-483C-A0B5-E03D7CF62F3B", - "name": "gamepad-round-outline", - "codepoint": "F0E3F", - "aliases": [ - "controller-round-outline" - ], - "styles": [ - "outline" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Haley Halcyon" - }, - { - "id": "4D10A9D6-5E25-457D-B4ED-25BCC647E62E", - "baseIconId": "3AD46D54-4369-483C-A0B5-E03D7CF62F3B", - "name": "gamepad-round-right", - "codepoint": "F0E40", - "aliases": [ - "controller-round-right" - ], - "styles": [ - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Haley Halcyon" - }, - { - "id": "D3C1F57B-FF1A-4CD9-AD39-E3F3AB752779", - "baseIconId": "3AD46D54-4369-483C-A0B5-E03D7CF62F3B", - "name": "gamepad-round-up", - "codepoint": "F0E41", - "aliases": [ - "controller-round-up" - ], - "styles": [ - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Haley Halcyon" - }, - { - "id": "0FE0FB42-286B-4D56-AE93-6D93EA514C4B", - "baseIconId": "0FE0FB42-286B-4D56-AE93-6D93EA514C4B", - "name": "gamepad-square", - "codepoint": "F0EB5", - "aliases": [ - "controller-square" - ], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Google" - }, - { - "id": "1370B995-F9FF-4B39-9414-055908214152", - "baseIconId": "0FE0FB42-286B-4D56-AE93-6D93EA514C4B", - "name": "gamepad-square-outline", - "codepoint": "F0EB6", - "aliases": [ - "controller-square-outline" - ], - "styles": [ - "outline" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Google" - }, - { - "id": "56D5F5A6-18F7-4FA5-8D16-48058EBD98D3", - "baseIconId": "5C29EFA9-0FF3-4101-BC87-C9C15ACBA7AB", - "name": "gamepad-up", - "codepoint": "F0E42", - "aliases": [ - "controller-up" - ], - "styles": [ - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "GreenTurtwig" - }, - { - "id": "A4DB98F5-FFD6-4F36-BB90-1B06AB202096", - "baseIconId": "A4DB98F5-FFD6-4F36-BB90-1B06AB202096", - "name": "gamepad-variant", - "codepoint": "F0297", - "aliases": [ - "controller-variant" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "25A261F0-9C5E-4103-88C8-70CEBA27270D", - "baseIconId": "A4DB98F5-FFD6-4F36-BB90-1B06AB202096", - "name": "gamepad-variant-outline", - "codepoint": "F0EB7", - "aliases": [ - "controller-variant-outline" - ], - "styles": [ - "outline" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Richins" - }, - { - "id": "9D9227EC-5170-4765-832D-CDCF4AD79CAE", - "baseIconId": "9D9227EC-5170-4765-832D-CDCF4AD79CAE", - "name": "gamma", - "codepoint": "F10EE", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Sascha Wohlgemuth" - }, - { - "id": "CB6D190E-D7B6-4B40-804A-B868BE682C4D", - "baseIconId": "CB6D190E-D7B6-4B40-804A-B868BE682C4D", - "name": "gantry-crane", - "codepoint": "F0DD1", - "aliases": [], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "FC744BA5-2E98-459F-BBD6-60788B23D93E", - "baseIconId": "FC744BA5-2E98-459F-BBD6-60788B23D93E", - "name": "garage", - "codepoint": "F06D9", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Alex Efremo" - }, - { - "id": "03ED4E2F-41CE-47D7-ABB4-C8515C202499", - "baseIconId": "FC744BA5-2E98-459F-BBD6-60788B23D93E", - "name": "garage-alert", - "codepoint": "F0872", - "aliases": [ - "garage-warning" - ], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Home Automation", - "Alert \/ Error" - ], - "author": "Michael Richins" - }, - { - "id": "25425A4D-48BD-4139-BA72-81D0DAB54020", - "baseIconId": "FC744BA5-2E98-459F-BBD6-60788B23D93E", - "name": "garage-alert-variant", - "codepoint": "F12D5", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E0AE077B-AE61-4760-95DD-7ACC9423327B", - "baseIconId": "FC744BA5-2E98-459F-BBD6-60788B23D93E", - "name": "garage-lock", - "codepoint": "F17FB", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Lock" - ], - "author": "Michael Irigoyen" - }, - { - "id": "6B34986A-5D17-4C64-9840-994B66EC00AB", - "baseIconId": "FC744BA5-2E98-459F-BBD6-60788B23D93E", - "name": "garage-open", - "codepoint": "F06DA", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Alex Efremo" - }, - { - "id": "8AE7213F-00BD-40D9-A524-2CCB60511BBA", - "baseIconId": "FC744BA5-2E98-459F-BBD6-60788B23D93E", - "name": "garage-open-variant", - "codepoint": "F12D4", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "11A3EA2E-E0A4-435D-B53D-55EB0E8A5F10", - "baseIconId": "FC744BA5-2E98-459F-BBD6-60788B23D93E", - "name": "garage-variant", - "codepoint": "F12D3", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "53BD8FE6-E6BE-48B5-A68C-3064A5C0710E", - "baseIconId": "FC744BA5-2E98-459F-BBD6-60788B23D93E", - "name": "garage-variant-lock", - "codepoint": "F17FC", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Lock" - ], - "author": "Michael Irigoyen" - }, - { - "id": "BB98FED5-2967-4D6D-B133-8447CE90C089", - "baseIconId": "BB98FED5-2967-4D6D-B133-8447CE90C089", - "name": "gas-burner", - "codepoint": "F1A1B", - "aliases": [ - "stove-burner", - "cooktop-burner", - "grill", - "natural-gas", - "energy" - ], - "styles": [], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "7CEC48C5-3A70-4BA2-9FB8-A383387DC4A1", - "baseIconId": "7CEC48C5-3A70-4BA2-9FB8-A383387DC4A1", - "name": "gas-cylinder", - "codepoint": "F0647", - "aliases": [ - "tank", - "oxygen-tank" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "50E30598-BCD8-4167-BDAC-FF6971E745D7", - "baseIconId": "50E30598-BCD8-4167-BDAC-FF6971E745D7", - "name": "gas-station", - "codepoint": "F0298", - "aliases": [ - "gas-pump", - "petrol-pump", - "petrol-station", - "local-gas-station", - "fuel-station", - "fuel-pump" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Places", - "Automotive" - ], - "author": "Google" - }, - { - "id": "7ED35A9C-D8FD-4892-84E5-3700C907AE28", - "baseIconId": "50E30598-BCD8-4167-BDAC-FF6971E745D7", - "name": "gas-station-off", - "codepoint": "F1409", - "aliases": [], - "styles": [], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "7C77CE4A-4C13-4853-8F4D-0F6F99EC0248", - "baseIconId": "50E30598-BCD8-4167-BDAC-FF6971E745D7", - "name": "gas-station-off-outline", - "codepoint": "F140A", - "aliases": [], - "styles": [], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "E489326F-90B9-43E6-91CF-9123E914E84F", - "baseIconId": "50E30598-BCD8-4167-BDAC-FF6971E745D7", - "name": "gas-station-outline", - "codepoint": "F0EB8", - "aliases": [ - "gas-pump-outline", - "petrol-pump-outline", - "petrol-station-outline", - "fuel-station-outline", - "fuel-pump-outline" - ], - "styles": [ - "outline" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "340B7941-DB9B-40A2-9968-100AB599F204", - "baseIconId": "340B7941-DB9B-40A2-9968-100AB599F204", - "name": "gate", - "codepoint": "F0299", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "C9B04A2B-FB69-4F05-B2E9-32468822F4DD", - "baseIconId": "340B7941-DB9B-40A2-9968-100AB599F204", - "name": "gate-alert", - "codepoint": "F17F8", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "01E01742-E5ED-4E63-9F19-48CBE619C7A5", - "baseIconId": "01E01742-E5ED-4E63-9F19-48CBE619C7A5", - "name": "gate-and", - "codepoint": "F08E1", - "aliases": [ - "logic-gate-and" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Nick" - }, - { - "id": "1D07255B-B5EF-4715-9926-B91757893552", - "baseIconId": "340B7941-DB9B-40A2-9968-100AB599F204", - "name": "gate-arrow-left", - "codepoint": "F17F7", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "314B9DB4-1D98-4394-BAD4-8FA5FB2EA160", - "baseIconId": "340B7941-DB9B-40A2-9968-100AB599F204", - "name": "gate-arrow-right", - "codepoint": "F1169", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "AC9017C0-F5E5-4AD8-819F-5B540AC12FED", - "baseIconId": "AC9017C0-F5E5-4AD8-819F-5B540AC12FED", - "name": "gate-buffer", - "codepoint": "F1AFE", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "FF2BA1EF-7AAE-4271-B799-6A51FE84427E", - "baseIconId": "FF2BA1EF-7AAE-4271-B799-6A51FE84427E", - "name": "gate-nand", - "codepoint": "F08E2", - "aliases": [ - "logic-gate-nand" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Nick" - }, - { - "id": "9BFED3B5-B327-480D-BFCD-18F9CC52D82A", - "baseIconId": "9BFED3B5-B327-480D-BFCD-18F9CC52D82A", - "name": "gate-nor", - "codepoint": "F08E3", - "aliases": [ - "logic-gate-nor" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Nick" - }, - { - "id": "3A4475B4-3774-4A2A-B672-59DAF8AE3398", - "baseIconId": "3A4475B4-3774-4A2A-B672-59DAF8AE3398", - "name": "gate-not", - "codepoint": "F08E4", - "aliases": [ - "logic-gate-not" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Nick" - }, - { - "id": "F5A29B6C-A003-423D-912A-A23D40E51D3C", - "baseIconId": "340B7941-DB9B-40A2-9968-100AB599F204", - "name": "gate-open", - "codepoint": "F116A", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "13B88427-8795-48CF-B647-597997C6C541", - "baseIconId": "13B88427-8795-48CF-B647-597997C6C541", - "name": "gate-or", - "codepoint": "F08E5", - "aliases": [ - "logic-gate-or" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Nick" - }, - { - "id": "DA573FDA-7BEE-4B80-90BA-AA04932B43C6", - "baseIconId": "DA573FDA-7BEE-4B80-90BA-AA04932B43C6", - "name": "gate-xnor", - "codepoint": "F08E6", - "aliases": [ - "logic-gate-xnor" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Nick" - }, - { - "id": "AFA3ABA2-1237-417E-8277-8509C7A58C1C", - "baseIconId": "AFA3ABA2-1237-417E-8277-8509C7A58C1C", - "name": "gate-xor", - "codepoint": "F08E7", - "aliases": [ - "logic-gate-xor" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Nick" - }, - { - "id": "2D5D41CF-9332-42E5-B6E9-C3A62E3A8135", - "baseIconId": "2D5D41CF-9332-42E5-B6E9-C3A62E3A8135", - "name": "gatsby", - "codepoint": "F0E43", - "aliases": [], - "styles": [], - "version": "3.6.95", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "EC7B7499-25F1-43D4-9A09-9742F5B6D3F2", - "baseIconId": "EC7B7499-25F1-43D4-9A09-9742F5B6D3F2", - "name": "gauge", - "codepoint": "F029A", - "aliases": [ - "swap-driving-apps-wheel", - "barometer" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation", - "Automotive" - ], - "author": "Google" - }, - { - "id": "2ED34069-D2CE-427F-8E96-C493C3D9DC5D", - "baseIconId": "EC7B7499-25F1-43D4-9A09-9742F5B6D3F2", - "name": "gauge-empty", - "codepoint": "F0873", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Automotive", - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "3AA721AB-566F-461F-812B-CC6652E9E800", - "baseIconId": "EC7B7499-25F1-43D4-9A09-9742F5B6D3F2", - "name": "gauge-full", - "codepoint": "F0874", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Automotive", - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "BFF1F377-BBAF-4354-A914-D0FD1BC9DA22", - "baseIconId": "EC7B7499-25F1-43D4-9A09-9742F5B6D3F2", - "name": "gauge-low", - "codepoint": "F0875", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Automotive", - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "AB600896-534E-4A82-8E7F-99E0F22B54AE", - "baseIconId": "AB600896-534E-4A82-8E7F-99E0F22B54AE", - "name": "gavel", - "codepoint": "F029B", - "aliases": [ - "court-hammer" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "0441EBEF-476C-420E-A04E-58367F99BD93", - "baseIconId": "0441EBEF-476C-420E-A04E-58367F99BD93", - "name": "gender-female", - "codepoint": "F029C", - "aliases": [ - "venus" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "78C91AE2-F79B-48EF-9CCD-5E6874BA20CA", - "baseIconId": "78C91AE2-F79B-48EF-9CCD-5E6874BA20CA", - "name": "gender-male", - "codepoint": "F029D", - "aliases": [ - "mars" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "9B06F269-893F-4F1C-910D-D26578C6D976", - "baseIconId": "9B06F269-893F-4F1C-910D-D26578C6D976", - "name": "gender-male-female", - "codepoint": "F029E", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "1599350F-AA11-47A2-8D1C-B60DF1A0A5AD", - "baseIconId": "1599350F-AA11-47A2-8D1C-B60DF1A0A5AD", - "name": "gender-male-female-variant", - "codepoint": "F113F", - "aliases": [ - "mercury" - ], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "85F577F7-626B-4D2D-A392-2671C979BEF3", - "baseIconId": "85F577F7-626B-4D2D-A392-2671C979BEF3", - "name": "gender-non-binary", - "codepoint": "F1140", - "aliases": [ - "gender-enby" - ], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "47F759DA-8ECB-4BAA-8102-A843844EEBB3", - "baseIconId": "47F759DA-8ECB-4BAA-8102-A843844EEBB3", - "name": "gender-transgender", - "codepoint": "F029F", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "D97956CD-8749-401C-A45B-04D6D20017A9", - "baseIconId": "D97956CD-8749-401C-A45B-04D6D20017A9", - "name": "generator-mobile", - "codepoint": "F1C8A", - "aliases": [ - "power-generator", - "electricity-generator" - ], - "styles": [], - "version": "7.3.96", - "deprecated": false, - "tags": [ - "Home Automation", - "Transportation + Other" - ], - "author": "Michael Richins" - }, - { - "id": "E2964412-DEC3-4D20-AFD3-C70CB191BAA2", - "baseIconId": "E2964412-DEC3-4D20-AFD3-C70CB191BAA2", - "name": "generator-portable", - "codepoint": "F1C8B", - "aliases": [ - "power-generator", - "electricity-generator" - ], - "styles": [], - "version": "7.3.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "3E1998B7-F3FC-44A6-A20D-33E492E963D4", - "baseIconId": "3E1998B7-F3FC-44A6-A20D-33E492E963D4", - "name": "generator-stationary", - "codepoint": "F1C8C", - "aliases": [ - "power-generator", - "electricity-generator" - ], - "styles": [], - "version": "7.3.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "D6664050-0082-4C50-B5AD-D6D0D23B842D", - "baseIconId": "D6664050-0082-4C50-B5AD-D6D0D23B842D", - "name": "gentoo", - "codepoint": "F08E8", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "FFC2833D-65AB-47BB-AC7C-8CFA41DF9250", - "baseIconId": "FFC2833D-65AB-47BB-AC7C-8CFA41DF9250", - "name": "gesture", - "codepoint": "F07CB", - "aliases": [ - "freehand-line" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Drawing \/ Art" - ], - "author": "Google" - }, - { - "id": "D02C7FA0-E8E6-48B7-BEB7-4678B8D9DCA1", - "baseIconId": "D881AFBC-7477-46C2-9269-324676F19E51", - "name": "gesture-double-tap", - "codepoint": "F073C", - "aliases": [ - "interaction-double-tap", - "hand-double-tap" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "17A555A5-0518-42D0-87F8-6C332F81DF18", - "baseIconId": "D881AFBC-7477-46C2-9269-324676F19E51", - "name": "gesture-pinch", - "codepoint": "F0ABD", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "82C8D8F3-13FE-4B69-A554-1FA74E516480", - "baseIconId": "D881AFBC-7477-46C2-9269-324676F19E51", - "name": "gesture-spread", - "codepoint": "F0ABE", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "0C51419E-7710-4BE2-B509-425E4E7E2CC5", - "baseIconId": "D881AFBC-7477-46C2-9269-324676F19E51", - "name": "gesture-swipe", - "codepoint": "F0D76", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "92FD3A8C-813E-4AC1-8D0B-85B89747C598", - "baseIconId": "D881AFBC-7477-46C2-9269-324676F19E51", - "name": "gesture-swipe-down", - "codepoint": "F073D", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "5032C271-1D07-4318-9FC6-813C3ECA11FF", - "baseIconId": "D881AFBC-7477-46C2-9269-324676F19E51", - "name": "gesture-swipe-horizontal", - "codepoint": "F0ABF", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "D0887CD1-2BF1-4A5A-B573-2BA6FF8A6129", - "baseIconId": "D881AFBC-7477-46C2-9269-324676F19E51", - "name": "gesture-swipe-left", - "codepoint": "F073E", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "9B3D3150-CF71-473E-AF65-403C389C308A", - "baseIconId": "D881AFBC-7477-46C2-9269-324676F19E51", - "name": "gesture-swipe-right", - "codepoint": "F073F", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "CE26D04A-C6AC-4379-AA25-A702F49F1DC2", - "baseIconId": "D881AFBC-7477-46C2-9269-324676F19E51", - "name": "gesture-swipe-up", - "codepoint": "F0740", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "8883FDF0-A6B8-4252-BC2A-D12F99D20501", - "baseIconId": "D881AFBC-7477-46C2-9269-324676F19E51", - "name": "gesture-swipe-vertical", - "codepoint": "F0AC0", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "D881AFBC-7477-46C2-9269-324676F19E51", - "baseIconId": "D881AFBC-7477-46C2-9269-324676F19E51", - "name": "gesture-tap", - "codepoint": "F0741", - "aliases": [ - "interaction-tap", - "hand-tap", - "gesture-touch" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "FC2EE3B3-9885-4278-9BCE-491B27B4666E", - "baseIconId": "D881AFBC-7477-46C2-9269-324676F19E51", - "name": "gesture-tap-box", - "codepoint": "F12A9", - "aliases": [ - "gesture-touch-box" - ], - "styles": [ - "box" - ], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "51E5488F-71C4-4E08-950D-EAAAB7B22D53", - "baseIconId": "D881AFBC-7477-46C2-9269-324676F19E51", - "name": "gesture-tap-button", - "codepoint": "F12A8", - "aliases": [ - "call-to-action", - "cta", - "button-pointer", - "gesture-touch-button" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B502F4A5-5545-42F7-A0B4-E90BF4421D17", - "baseIconId": "D881AFBC-7477-46C2-9269-324676F19E51", - "name": "gesture-tap-hold", - "codepoint": "F0D77", - "aliases": [ - "gesture-touch-hold" - ], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "96C02705-84D1-4677-9DDE-CCDE1D43FE11", - "baseIconId": "D881AFBC-7477-46C2-9269-324676F19E51", - "name": "gesture-two-double-tap", - "codepoint": "F0742", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "AA47E759-39DE-4A5C-B3CF-FAEB215EAB91", - "baseIconId": "D881AFBC-7477-46C2-9269-324676F19E51", - "name": "gesture-two-tap", - "codepoint": "F0743", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "6B39D7DA-255C-4615-84D4-FFCF34D76A4A", - "baseIconId": "6B39D7DA-255C-4615-84D4-FFCF34D76A4A", - "name": "ghost", - "codepoint": "F02A0", - "aliases": [ - "inky", - "blinky", - "pinky", - "clyde" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Simran" - }, - { - "id": "5322EB23-9081-4E99-9735-7C31003C0167", - "baseIconId": "6B39D7DA-255C-4615-84D4-FFCF34D76A4A", - "name": "ghost-off", - "codepoint": "F09F5", - "aliases": [], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Richins" - }, - { - "id": "9B371D94-3C53-410F-A4A5-024415B30244", - "baseIconId": "6B39D7DA-255C-4615-84D4-FFCF34D76A4A", - "name": "ghost-off-outline", - "codepoint": "F165C", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Colton Wiscombe" - }, - { - "id": "71BF426E-71FE-4AEC-946A-A2CCAC371C31", - "baseIconId": "6B39D7DA-255C-4615-84D4-FFCF34D76A4A", - "name": "ghost-outline", - "codepoint": "F165D", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Colton Wiscombe" - }, - { - "id": "62403C7B-F20E-489B-8835-28F7544D9712", - "baseIconId": "62403C7B-F20E-489B-8835-28F7544D9712", - "name": "gift", - "codepoint": "F0E44", - "aliases": [ - "present", - "package", - "donate" - ], - "styles": [], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Holiday" - ], - "author": "Simran" - }, - { - "id": "17729CE1-90B8-4C63-A142-99056CDDC860", - "baseIconId": "62403C7B-F20E-489B-8835-28F7544D9712", - "name": "gift-off", - "codepoint": "F16EF", - "aliases": [ - "present-off", - "package-off", - "donate-off" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Holiday" - ], - "author": "Colton Wiscombe" - }, - { - "id": "E1260280-2F0F-4D7D-AA15-0322C8699541", - "baseIconId": "62403C7B-F20E-489B-8835-28F7544D9712", - "name": "gift-off-outline", - "codepoint": "F16F0", - "aliases": [ - "present-off-outline", - "package-off-outline", - "donate-off-outline" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Holiday" - ], - "author": "Colton Wiscombe" - }, - { - "id": "04D976AC-875C-42F1-A9F6-B86FDAAD6990", - "baseIconId": "62403C7B-F20E-489B-8835-28F7544D9712", - "name": "gift-open", - "codepoint": "F16F1", - "aliases": [ - "present-open", - "package-open" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Holiday" - ], - "author": "Colton Wiscombe" - }, - { - "id": "64BCFFC7-8E6B-4644-B14D-5B1F9EF16899", - "baseIconId": "62403C7B-F20E-489B-8835-28F7544D9712", - "name": "gift-open-outline", - "codepoint": "F16F2", - "aliases": [ - "present-open-outline", - "package-open-outline" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Holiday" - ], - "author": "Colton Wiscombe" - }, - { - "id": "22D0C782-CD05-4FEB-845F-BBA7126C7326", - "baseIconId": "62403C7B-F20E-489B-8835-28F7544D9712", - "name": "gift-outline", - "codepoint": "F02A1", - "aliases": [ - "donate-outline", - "present-outline", - "package-outline" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Shopping", - "Holiday" - ], - "author": "Austin Andrews" - }, - { - "id": "4CB8AF2D-5373-4247-AB9D-3B28B72EB7BC", - "baseIconId": "4CB8AF2D-5373-4247-AB9D-3B28B72EB7BC", - "name": "git", - "codepoint": "F02A2", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Developer \/ Languages" - ], - "author": "Contributors" - }, - { - "id": "5C6175DD-8549-4004-AB77-A545D721A0DE", - "baseIconId": "5C6175DD-8549-4004-AB77-A545D721A0DE", - "name": "github", - "codepoint": "F02A4", - "aliases": [ - "microsoft-github" - ], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "6C0EA9E0-8F4F-40CB-A2B2-A2D84C97EE6A", - "baseIconId": "6C0EA9E0-8F4F-40CB-A2B2-A2D84C97EE6A", - "name": "gitlab", - "codepoint": "F0BA0", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "9291BDB1-CE57-4802-8CD2-7AD2ED9D9959", - "baseIconId": "9291BDB1-CE57-4802-8CD2-7AD2ED9D9959", - "name": "glass-cocktail", - "codepoint": "F0356", - "aliases": [ - "local-bar", - "cocktail", - "martini", - "alcohol", - "bar", - "cup", - "drink" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Google" - }, - { - "id": "5CB87909-09B4-47FD-B4BF-EB4A949F3CA2", - "baseIconId": "9291BDB1-CE57-4802-8CD2-7AD2ED9D9959", - "name": "glass-cocktail-off", - "codepoint": "F15E6", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Colton Wiscombe" - }, - { - "id": "CD1215BB-D889-4A86-8944-AF724C71DF21", - "baseIconId": "CD1215BB-D889-4A86-8944-AF724C71DF21", - "name": "glass-flute", - "codepoint": "F02A5", - "aliases": [ - "alcohol", - "cocktail", - "cup", - "drink" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Austin Andrews" - }, - { - "id": "8D20FB31-71AC-4697-899B-2156B6193F75", - "baseIconId": "8D20FB31-71AC-4697-899B-2156B6193F75", - "name": "glass-fragile", - "codepoint": "F1873", - "aliases": [ - "glass-broken" - ], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Colton Wiscombe" - }, - { - "id": "9081982B-5EB6-47C1-A1F3-A83A0ED1B609", - "baseIconId": "9081982B-5EB6-47C1-A1F3-A83A0ED1B609", - "name": "glass-mug", - "codepoint": "F02A6", - "aliases": [ - "pub", - "bar", - "beer", - "alcohol", - "cup", - "drink", - "local-bar" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Austin Andrews" - }, - { - "id": "BEAE85BE-708C-4D0D-82AE-370BB43B3D0D", - "baseIconId": "9081982B-5EB6-47C1-A1F3-A83A0ED1B609", - "name": "glass-mug-off", - "codepoint": "F15E7", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Colton Wiscombe" - }, - { - "id": "04D0C33A-12E7-4DC1-96FA-A83A481962D4", - "baseIconId": "9081982B-5EB6-47C1-A1F3-A83A0ED1B609", - "name": "glass-mug-variant", - "codepoint": "F1116", - "aliases": [ - "pub", - "bar", - "beer", - "drink", - "alcohol", - "cup", - "local-bar" - ], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Simran" - }, - { - "id": "61B2CF99-322E-448E-A1DB-E27B94600BC4", - "baseIconId": "9081982B-5EB6-47C1-A1F3-A83A0ED1B609", - "name": "glass-mug-variant-off", - "codepoint": "F15E8", - "aliases": [], - "styles": [ - "off", - "variant" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Colton Wiscombe" - }, - { - "id": "AFF2782E-A558-40EF-9B8C-787BAE055D57", - "baseIconId": "AFF2782E-A558-40EF-9B8C-787BAE055D57", - "name": "glass-pint-outline", - "codepoint": "F130D", - "aliases": [], - "styles": [ - "outline" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Simran" - }, - { - "id": "E26942A0-61AE-4D1A-941C-895D92E94C5D", - "baseIconId": "E26942A0-61AE-4D1A-941C-895D92E94C5D", - "name": "glass-stange", - "codepoint": "F02A7", - "aliases": [ - "alcohol", - "bar", - "cocktail", - "cup", - "drink" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Austin Andrews" - }, - { - "id": "43E8B624-633D-472F-991E-4AEDB20A5454", - "baseIconId": "43E8B624-633D-472F-991E-4AEDB20A5454", - "name": "glass-tulip", - "codepoint": "F02A8", - "aliases": [ - "bar", - "alcohol", - "cocktail", - "cup", - "drink" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Austin Andrews" - }, - { - "id": "0AF778AB-1048-4307-84AD-CB88D259DC02", - "baseIconId": "0AF778AB-1048-4307-84AD-CB88D259DC02", - "name": "glass-wine", - "codepoint": "F0876", - "aliases": [ - "bar", - "alcohol", - "cocktail", - "cup", - "drink" - ], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Michael Richins" - }, - { - "id": "BE4C1227-C47E-4839-85AA-4EA6928BAAAE", - "baseIconId": "BE4C1227-C47E-4839-85AA-4EA6928BAAAE", - "name": "glasses", - "codepoint": "F02AA", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Clothing" - ], - "author": "Simran" - }, - { - "id": "2C23A3F9-54C7-4C7F-8C2F-182A4F75F894", - "baseIconId": "2C23A3F9-54C7-4C7F-8C2F-182A4F75F894", - "name": "globe-light", - "codepoint": "F066F", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A498671D-3C09-4874-B7BA-3F371208F4A0", - "baseIconId": "A498671D-3C09-4874-B7BA-3F371208F4A0", - "name": "globe-light-outline", - "codepoint": "F12D7", - "aliases": [], - "styles": [ - "outline" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "3E5EE2B1-AE6A-4675-BBAB-1D6B70FBFC36", - "baseIconId": "3E5EE2B1-AE6A-4675-BBAB-1D6B70FBFC36", - "name": "globe-model", - "codepoint": "F08E9", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "259F5EC9-395F-40C8-9389-6B6A82D9997C", - "baseIconId": "259F5EC9-395F-40C8-9389-6B6A82D9997C", - "name": "gmail", - "codepoint": "F02AB", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "2C4AF25A-8EC5-4B3B-BBCD-60F801F553B8", - "baseIconId": "2C4AF25A-8EC5-4B3B-BBCD-60F801F553B8", - "name": "gnome", - "codepoint": "F02AC", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "9E6D217A-874E-4295-9F85-9490FF14201C", - "baseIconId": "CB49A868-3317-4445-BFED-13CB6533000E", - "name": "go-kart", - "codepoint": "F0D79", - "aliases": [ - "cart" - ], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Michael Richins" - }, - { - "id": "04D32441-2FD3-4273-8C9A-D5C7BD1F261E", - "baseIconId": "04D32441-2FD3-4273-8C9A-D5C7BD1F261E", - "name": "go-kart-track", - "codepoint": "F0D7A", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "3B6D59D1-6329-4453-A11D-FB1D53B745F9", - "baseIconId": "3B6D59D1-6329-4453-A11D-FB1D53B745F9", - "name": "gog", - "codepoint": "F0BA1", - "aliases": [ - "gog-com" - ], - "styles": [], - "version": "3.0.39", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Gaming \/ RPG" - ], - "author": "Contributors" - }, - { - "id": "8B0AC7A2-11DB-43DF-96AF-D6193A2DCEFE", - "baseIconId": "8B0AC7A2-11DB-43DF-96AF-D6193A2DCEFE", - "name": "gold", - "codepoint": "F124F", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "80A4F47A-3512-4C76-AA10-C0232C57E624", - "baseIconId": "80A4F47A-3512-4C76-AA10-C0232C57E624", - "name": "golf", - "codepoint": "F0823", - "aliases": [ - "golf-course" - ], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Google" - }, - { - "id": "70C7E562-43DC-4F7A-BF4C-77162406605A", - "baseIconId": "CB49A868-3317-4445-BFED-13CB6533000E", - "name": "golf-cart", - "codepoint": "F11A4", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Sport", - "Transportation + Other" - ], - "author": "Michael Richins" - }, - { - "id": "A37545D0-964F-4975-A004-8EEF7CE91ED4", - "baseIconId": "A37545D0-964F-4975-A004-8EEF7CE91ED4", - "name": "golf-tee", - "codepoint": "F1083", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Google" - }, - { - "id": "9FE486F5-20A0-4CB5-A820-93AD82F52EB6", - "baseIconId": "CB49A868-3317-4445-BFED-13CB6533000E", - "name": "gondola", - "codepoint": "F0686", - "aliases": [ - "cable-car" - ], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Austin Andrews" - }, - { - "id": "DECFD1E8-72A4-41F7-AF7F-68ED710AC1AD", - "baseIconId": "DECFD1E8-72A4-41F7-AF7F-68ED710AC1AD", - "name": "goodreads", - "codepoint": "F0D7B", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "F787FBCA-3C54-43CC-AE16-E23436AD0720", - "baseIconId": "F787FBCA-3C54-43CC-AE16-E23436AD0720", - "name": "google", - "codepoint": "F02AD", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "300B71B3-499A-4998-BA9D-22F2190229AA", - "baseIconId": "300B71B3-499A-4998-BA9D-22F2190229AA", - "name": "google-ads", - "codepoint": "F0C87", - "aliases": [ - "google-adwords" - ], - "styles": [], - "version": "3.2.89", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "B328003D-F2FD-4C31-8171-BD6EB5A81A8A", - "baseIconId": "B328003D-F2FD-4C31-8171-BD6EB5A81A8A", - "name": "google-analytics", - "codepoint": "F07CC", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "3DD7794E-8603-49D0-B34E-DD0939225AAF", - "baseIconId": "3DD7794E-8603-49D0-B34E-DD0939225AAF", - "name": "google-assistant", - "codepoint": "F07CD", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "8CC1E909-6274-4738-AF1D-0E2C3239E853", - "baseIconId": "8CC1E909-6274-4738-AF1D-0E2C3239E853", - "name": "google-cardboard", - "codepoint": "F02AE", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "0B7D7D86-21E1-4759-8E4D-5D2BB291BB3F", - "baseIconId": "0B7D7D86-21E1-4759-8E4D-5D2BB291BB3F", - "name": "google-chrome", - "codepoint": "F02AF", - "aliases": [ - "chromecast" - ], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "FAF03601-DED3-4AD2-B252-DF739AC96986", - "baseIconId": "FAF03601-DED3-4AD2-B252-DF739AC96986", - "name": "google-circles", - "codepoint": "F02B0", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "073A8D2A-C834-4655-AA4F-792D7ADD7E6E", - "baseIconId": "073A8D2A-C834-4655-AA4F-792D7ADD7E6E", - "name": "google-circles-communities", - "codepoint": "F02B1", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "9ABBC701-54DE-48B3-A579-6FB3503F8929", - "baseIconId": "9ABBC701-54DE-48B3-A579-6FB3503F8929", - "name": "google-circles-extended", - "codepoint": "F02B2", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "00CC15EA-653E-4F50-B681-3176664F9B3C", - "baseIconId": "00CC15EA-653E-4F50-B681-3176664F9B3C", - "name": "google-circles-group", - "codepoint": "F02B3", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "432C2FB2-AA01-40F8-AAB1-CB964967D3BD", - "baseIconId": "432C2FB2-AA01-40F8-AAB1-CB964967D3BD", - "name": "google-classroom", - "codepoint": "F02C0", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "14A23373-DFBF-443C-9143-90E6C78D144C", - "baseIconId": "14A23373-DFBF-443C-9143-90E6C78D144C", - "name": "google-cloud", - "codepoint": "F11F6", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "D9285386-5BA5-423A-8F3B-435E7A57363A", - "baseIconId": "D9285386-5BA5-423A-8F3B-435E7A57363A", - "name": "google-downasaur", - "codepoint": "F1362", - "aliases": [ - "dinosaur-pixel", - "t-rex", - "tyrannosaurus-rex" - ], - "styles": [], - "version": "4.9.95", - "deprecated": true, - "tags": [ - "Animal", - "Gaming \/ RPG" - ], - "author": "Simran" - }, - { - "id": "EE98C0AD-0A55-4A6B-BB7A-01CBD3D819A2", - "baseIconId": "EE98C0AD-0A55-4A6B-BB7A-01CBD3D819A2", - "name": "google-drive", - "codepoint": "F02B6", - "aliases": [ - "attach-drive" - ], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "8A61F8F2-511B-45E9-9459-27BBD58936F8", - "baseIconId": "8A61F8F2-511B-45E9-9459-27BBD58936F8", - "name": "google-earth", - "codepoint": "F02B7", - "aliases": [ - "marble" - ], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "0BBD8E67-124A-4788-B44F-9583BC6E7503", - "baseIconId": "0BBD8E67-124A-4788-B44F-9583BC6E7503", - "name": "google-fit", - "codepoint": "F096C", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "6A73A89B-2C02-4DB5-89DF-0449750171BC", - "baseIconId": "6A73A89B-2C02-4DB5-89DF-0449750171BC", - "name": "google-glass", - "codepoint": "F02B8", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "3EA0D516-133D-4A5E-865B-82B7CC2763D5", - "baseIconId": "3EA0D516-133D-4A5E-865B-82B7CC2763D5", - "name": "google-hangouts", - "codepoint": "F02C9", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "73BACA3B-710C-4F23-9730-D88ADA3EA914", - "baseIconId": "73BACA3B-710C-4F23-9730-D88ADA3EA914", - "name": "google-keep", - "codepoint": "F06DC", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "BB7275FF-E0B1-4D63-8EF5-467F23BC5D33", - "baseIconId": "BB7275FF-E0B1-4D63-8EF5-467F23BC5D33", - "name": "google-lens", - "codepoint": "F09F6", - "aliases": [], - "styles": [], - "version": "2.5.94", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "21FBF51C-0081-4987-8129-CFB0BB81729F", - "baseIconId": "21FBF51C-0081-4987-8129-CFB0BB81729F", - "name": "google-maps", - "codepoint": "F05F5", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Navigation", - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "8DBB2A33-94F4-4676-95F2-F81D87C21FE1", - "baseIconId": "8DBB2A33-94F4-4676-95F2-F81D87C21FE1", - "name": "google-my-business", - "codepoint": "F1048", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": true, - "tags": [], - "author": "Google" - }, - { - "id": "576EFEB3-D7E0-463F-A783-19A0F97D45EE", - "baseIconId": "576EFEB3-D7E0-463F-A783-19A0F97D45EE", - "name": "google-nearby", - "codepoint": "F02B9", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [], - "author": "Google" - }, - { - "id": "5FE693A7-2A33-46A5-B502-D42588072E56", - "baseIconId": "5FE693A7-2A33-46A5-B502-D42588072E56", - "name": "google-play", - "codepoint": "F02BC", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "0D3A668A-E3B7-4512-B22D-10B13362DC2B", - "baseIconId": "0D3A668A-E3B7-4512-B22D-10B13362DC2B", - "name": "google-plus", - "codepoint": "F02BD", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Social Media" - ], - "author": "Google" - }, - { - "id": "2C6E6048-97ED-4CA1-B8CE-31CEB31670C3", - "baseIconId": "2C6E6048-97ED-4CA1-B8CE-31CEB31670C3", - "name": "google-podcast", - "codepoint": "F0EB9", - "aliases": [], - "styles": [], - "version": "3.7.94", - "deprecated": true, - "tags": [], - "author": "Google" - }, - { - "id": "837DFB0D-633B-4667-9C40-272186D68351", - "baseIconId": "837DFB0D-633B-4667-9C40-272186D68351", - "name": "google-spreadsheet", - "codepoint": "F09F7", - "aliases": [], - "styles": [], - "version": "2.5.94", - "deprecated": true, - "tags": [], - "author": "Google" - }, - { - "id": "EC38CB3D-A8A1-48E8-9A71-9BE93D6847FC", - "baseIconId": "EC38CB3D-A8A1-48E8-9A71-9BE93D6847FC", - "name": "google-street-view", - "codepoint": "F0C88", - "aliases": [ - "pegman" - ], - "styles": [], - "version": "3.2.89", - "deprecated": true, - "tags": [], - "author": "Google" - }, - { - "id": "DFF485C3-0A13-4546-A267-7687AF1AB82F", - "baseIconId": "DFF485C3-0A13-4546-A267-7687AF1AB82F", - "name": "google-translate", - "codepoint": "F02BF", - "aliases": [ - "g-translate" - ], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "525D2C64-FE7A-44F8-84E2-B1DDDF3FA668", - "baseIconId": "525D2C64-FE7A-44F8-84E2-B1DDDF3FA668", - "name": "gradient-horizontal", - "codepoint": "F174A", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Drawing \/ Art" - ], - "author": "Jeff Anders" - }, - { - "id": "F10A05F8-FD09-4BDA-B906-747E9A89AB6E", - "baseIconId": "F10A05F8-FD09-4BDA-B906-747E9A89AB6E", - "name": "gradient-vertical", - "codepoint": "F06A0", - "aliases": [], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Drawing \/ Art" - ], - "author": "Google" - }, - { - "id": "D1784DB9-E2F2-44AA-AF8D-E562D8E3CBBC", - "baseIconId": "D1784DB9-E2F2-44AA-AF8D-E562D8E3CBBC", - "name": "grain", - "codepoint": "F0D7C", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Photography", - "Video \/ Movie", - "Agriculture" - ], - "author": "Google" - }, - { - "id": "76AC59FA-C58D-4A55-AE8F-A351AF2CD43A", - "baseIconId": "76AC59FA-C58D-4A55-AE8F-A351AF2CD43A", - "name": "graph", - "codepoint": "F1049", - "aliases": [ - "dependency", - "dependencies" - ], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "2B8A2BB1-0887-493F-A644-88015BFA507A", - "baseIconId": "76AC59FA-C58D-4A55-AE8F-A351AF2CD43A", - "name": "graph-outline", - "codepoint": "F104A", - "aliases": [ - "dependency", - "dependencies" - ], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "50FEA1C7-FB0B-4920-BDA4-D56A87928A75", - "baseIconId": "50FEA1C7-FB0B-4920-BDA4-D56A87928A75", - "name": "graphql", - "codepoint": "F0877", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "8688646A-F06F-421F-83B1-8AA8FABF7BD8", - "baseIconId": "8688646A-F06F-421F-83B1-8AA8FABF7BD8", - "name": "grass", - "codepoint": "F1510", - "aliases": [ - "lawn" - ], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Nature", - "Agriculture" - ], - "author": "Google" - }, - { - "id": "4986CAC4-4886-4868-8D81-28F00376536A", - "baseIconId": "4986CAC4-4886-4868-8D81-28F00376536A", - "name": "grave-stone", - "codepoint": "F0BA2", - "aliases": [ - "headstone", - "tombstone", - "cemetery", - "graveyard" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Holiday" - ], - "author": "Austin Andrews" - }, - { - "id": "137F01F1-86AC-4923-A9D7-C72057367BB7", - "baseIconId": "137F01F1-86AC-4923-A9D7-C72057367BB7", - "name": "grease-pencil", - "codepoint": "F0648", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Drawing \/ Art" - ], - "author": "Google" - }, - { - "id": "8E839EA1-A50F-41C5-BB89-14904048B885", - "baseIconId": "8E839EA1-A50F-41C5-BB89-14904048B885", - "name": "greater-than", - "codepoint": "F096D", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Nick" - }, - { - "id": "62C57FBE-8457-442F-AD8D-510CF2080FFF", - "baseIconId": "8E839EA1-A50F-41C5-BB89-14904048B885", - "name": "greater-than-or-equal", - "codepoint": "F096E", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Nick" - }, - { - "id": "9AE6BA3C-694B-47D5-99C3-7D063228F053", - "baseIconId": "9AE6BA3C-694B-47D5-99C3-7D063228F053", - "name": "greenhouse", - "codepoint": "F002D", - "aliases": [ - "glasshouse", - "hothouse", - "shed" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation", - "Agriculture", - "Nature" - ], - "author": "Jeff Anders" - }, - { - "id": "8D4C203D-A1F0-42DA-997A-AB7BAC63D97B", - "baseIconId": "8D4C203D-A1F0-42DA-997A-AB7BAC63D97B", - "name": "grid", - "codepoint": "F02C1", - "aliases": [ - "grid-on" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "4A3863FA-620C-4564-8A7B-57681117B81D", - "baseIconId": "8D4C203D-A1F0-42DA-997A-AB7BAC63D97B", - "name": "grid-large", - "codepoint": "F0758", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "4A8DDCEF-7E60-4864-9CC3-64C9A5B0D6D4", - "baseIconId": "8D4C203D-A1F0-42DA-997A-AB7BAC63D97B", - "name": "grid-off", - "codepoint": "F02C2", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "22C8B00E-9BA8-4C66-994B-A2F0B4D369DD", - "baseIconId": "22C8B00E-9BA8-4C66-994B-A2F0B4D369DD", - "name": "grill", - "codepoint": "F0E45", - "aliases": [ - "bbq", - "barbecue", - "charcoal" - ], - "styles": [], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Google" - }, - { - "id": "36BD13EA-FFEC-48CF-855C-C30831680961", - "baseIconId": "22C8B00E-9BA8-4C66-994B-A2F0B4D369DD", - "name": "grill-outline", - "codepoint": "F118A", - "aliases": [ - "barbecue-outline", - "bbq-outline", - "charcoal-outline" - ], - "styles": [ - "outline" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Google" - }, - { - "id": "D1B31666-9F9A-4CAB-843B-4BFEDBCC5347", - "baseIconId": "D1B31666-9F9A-4CAB-843B-4BFEDBCC5347", - "name": "group", - "codepoint": "F02C3", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "C4015804-7FF3-4483-94CA-CEB79F7B34BC", - "baseIconId": "C4015804-7FF3-4483-94CA-CEB79F7B34BC", - "name": "guitar-acoustic", - "codepoint": "F0771", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Haley Halcyon" - }, - { - "id": "C2F16EBD-E72B-45E0-9A34-0BAF7ADB87B3", - "baseIconId": "C2F16EBD-E72B-45E0-9A34-0BAF7ADB87B3", - "name": "guitar-electric", - "codepoint": "F02C4", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Haley Halcyon" - }, - { - "id": "68377A86-6428-4553-B768-7E9FC306E962", - "baseIconId": "68377A86-6428-4553-B768-7E9FC306E962", - "name": "guitar-pick", - "codepoint": "F02C5", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Gabriel" - }, - { - "id": "0FA22632-A0B2-49E0-A779-56022111C9D8", - "baseIconId": "68377A86-6428-4553-B768-7E9FC306E962", - "name": "guitar-pick-outline", - "codepoint": "F02C6", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Gabriel" - }, - { - "id": "FDDC802D-37F5-4E15-96DA-8A6D553B1D67", - "baseIconId": "FDDC802D-37F5-4E15-96DA-8A6D553B1D67", - "name": "guy-fawkes-mask", - "codepoint": "F0825", - "aliases": [], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [], - "author": "Augustin Ursu" - }, - { - "id": "450F9873-EC55-4361-99EB-BBFF202647C6", - "baseIconId": "450F9873-EC55-4361-99EB-BBFF202647C6", - "name": "gymnastics", - "codepoint": "F1A41", - "aliases": [], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Google" - }, - { - "id": "B4AC04DD-9F29-4F55-ABB6-A4AE4F272EC4", - "baseIconId": "B4AC04DD-9F29-4F55-ABB6-A4AE4F272EC4", - "name": "hail", - "codepoint": "F0AC1", - "aliases": [ - "hail-taxi", - "hail-cab" - ], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Navigation" - ], - "author": "Google" - }, - { - "id": "57248AE7-78F7-4493-8909-5EA0A48821ED", - "baseIconId": "57248AE7-78F7-4493-8909-5EA0A48821ED", - "name": "hair-dryer", - "codepoint": "F10EF", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Health \/ Beauty" - ], - "author": "Michael Richins" - }, - { - "id": "AC508D19-C3A8-4EC3-A46B-21F15DB6A8B1", - "baseIconId": "57248AE7-78F7-4493-8909-5EA0A48821ED", - "name": "hair-dryer-outline", - "codepoint": "F10F0", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Health \/ Beauty" - ], - "author": "Michael Richins" - }, - { - "id": "CE482051-152D-4A7F-A696-74D8CD398FEF", - "baseIconId": "CE482051-152D-4A7F-A696-74D8CD398FEF", - "name": "halloween", - "codepoint": "F0BA3", - "aliases": [ - "pumpkin-face", - "pumpkin-carved", - "jack-o-lantern", - "emoji-halloween", - "emoticon-halloween" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Holiday" - ], - "author": "Austin Andrews" - }, - { - "id": "F5BC2290-D719-4974-9920-DF8E08E5F955", - "baseIconId": "F5BC2290-D719-4974-9920-DF8E08E5F955", - "name": "hamburger", - "codepoint": "F0685", - "aliases": [ - "burger", - "fast-food", - "food" - ], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Haley Halcyon" - }, - { - "id": "15C2280B-B4C8-436A-8D57-80FFD3C4FB62", - "baseIconId": "F5BC2290-D719-4974-9920-DF8E08E5F955", - "name": "hamburger-check", - "codepoint": "F1776", - "aliases": [ - "burger-check" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Colton Wiscombe" - }, - { - "id": "CCD3F888-3CB7-4FB2-AB04-E7D8F803ABE9", - "baseIconId": "F5BC2290-D719-4974-9920-DF8E08E5F955", - "name": "hamburger-minus", - "codepoint": "F1777", - "aliases": [ - "burger-minus" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Colton Wiscombe" - }, - { - "id": "540219BD-FDFC-484B-8ACC-D75760F31FD7", - "baseIconId": "F5BC2290-D719-4974-9920-DF8E08E5F955", - "name": "hamburger-off", - "codepoint": "F1778", - "aliases": [ - "burger-off", - "fast-food-off", - "food-off" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Colton Wiscombe" - }, - { - "id": "AD90D2EE-E142-45C3-977E-4D8299E12930", - "baseIconId": "F5BC2290-D719-4974-9920-DF8E08E5F955", - "name": "hamburger-plus", - "codepoint": "F1779", - "aliases": [ - "burger-plus", - "burger-add" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Colton Wiscombe" - }, - { - "id": "52F5DBCE-78B0-49ED-BBDB-73B8F34084A0", - "baseIconId": "F5BC2290-D719-4974-9920-DF8E08E5F955", - "name": "hamburger-remove", - "codepoint": "F177A", - "aliases": [ - "burger-remove" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Colton Wiscombe" - }, - { - "id": "A3F55E77-82C2-48F6-B1B1-92C9259C9C26", - "baseIconId": "A3F55E77-82C2-48F6-B1B1-92C9259C9C26", - "name": "hammer", - "codepoint": "F08EA", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Google" - }, - { - "id": "CDD24BC0-E8F8-4B6E-B160-BC8DABC286A9", - "baseIconId": "A3F55E77-82C2-48F6-B1B1-92C9259C9C26", - "name": "hammer-screwdriver", - "codepoint": "F1322", - "aliases": [ - "tools" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Google" - }, - { - "id": "B990F624-1A91-424E-9AC0-08D95788FC9C", - "baseIconId": "B990F624-1A91-424E-9AC0-08D95788FC9C", - "name": "hammer-sickle", - "codepoint": "F1887", - "aliases": [ - "communism" - ], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "86D5756B-DE86-4273-A475-4E2D9856B0C3", - "baseIconId": "A3F55E77-82C2-48F6-B1B1-92C9259C9C26", - "name": "hammer-wrench", - "codepoint": "F1323", - "aliases": [ - "tools" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Google" - }, - { - "id": "D2652D4F-E184-4BCC-A8A3-E53145D27911", - "baseIconId": "C30FC465-2DF1-4716-AAC9-F48213F23D65", - "name": "hand-back-left", - "codepoint": "F0E46", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "FFD6548D-6F8F-4C98-A918-19213C6E30AD", - "baseIconId": "C30FC465-2DF1-4716-AAC9-F48213F23D65", - "name": "hand-back-left-off", - "codepoint": "F1830", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "20F7B0D0-5EB2-4F42-9EFD-2F7CA2C1D49D", - "baseIconId": "C30FC465-2DF1-4716-AAC9-F48213F23D65", - "name": "hand-back-left-off-outline", - "codepoint": "F1832", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "07ED0125-29A3-4DFE-8838-AABAE30A98EE", - "baseIconId": "C30FC465-2DF1-4716-AAC9-F48213F23D65", - "name": "hand-back-left-outline", - "codepoint": "F182C", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "35FBF26D-56C0-4699-A2A8-19BC2C37D6AF", - "baseIconId": "C30FC465-2DF1-4716-AAC9-F48213F23D65", - "name": "hand-back-right", - "codepoint": "F0E47", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "B7FB9D4E-CCF7-4368-88FC-5BDDE33E3FAF", - "baseIconId": "C30FC465-2DF1-4716-AAC9-F48213F23D65", - "name": "hand-back-right-off", - "codepoint": "F1831", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "EBFF43CF-9625-46EF-A223-CC17DBF78CBE", - "baseIconId": "C30FC465-2DF1-4716-AAC9-F48213F23D65", - "name": "hand-back-right-off-outline", - "codepoint": "F1833", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "F1DF9FAF-F8B8-4B11-BDFB-EE6BEFAC322A", - "baseIconId": "C30FC465-2DF1-4716-AAC9-F48213F23D65", - "name": "hand-back-right-outline", - "codepoint": "F182D", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "8FEFA10A-395F-47B9-B5B9-0040905E9E1F", - "baseIconId": "8FEFA10A-395F-47B9-B5B9-0040905E9E1F", - "name": "hand-clap", - "codepoint": "F194B", - "aliases": [ - "applause" - ], - "styles": [], - "version": "6.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "9B126394-E75C-416A-8959-F76B5FE2A5E0", - "baseIconId": "8FEFA10A-395F-47B9-B5B9-0040905E9E1F", - "name": "hand-clap-off", - "codepoint": "F1A42", - "aliases": [ - "applause-off" - ], - "styles": [ - "off" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "861C015B-47CA-41A6-8994-E43D980ECD58", - "baseIconId": "861C015B-47CA-41A6-8994-E43D980ECD58", - "name": "hand-coin", - "codepoint": "F188F", - "aliases": [ - "charity", - "donation" - ], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Jeff Anders" - }, - { - "id": "11B36B9E-D054-4A10-996E-62F897EF12C7", - "baseIconId": "861C015B-47CA-41A6-8994-E43D980ECD58", - "name": "hand-coin-outline", - "codepoint": "F1890", - "aliases": [ - "charity-outline", - "donation-outline" - ], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Jeff Anders" - }, - { - "id": "CC8C7CF5-103C-4D0F-A209-05A19DF80F24", - "baseIconId": "CC8C7CF5-103C-4D0F-A209-05A19DF80F24", - "name": "hand-cycle", - "codepoint": "F1B9C", - "aliases": [ - "hand-bike" - ], - "styles": [], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Michael Irigoyen" - }, - { - "id": "94B9D1E7-C84C-413B-B999-92BD6508D013", - "baseIconId": "94B9D1E7-C84C-413B-B999-92BD6508D013", - "name": "hand-extended", - "codepoint": "F18B6", - "aliases": [ - "hand-open", - "hand-palm" - ], - "styles": [], - "version": "6.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "F0A0EEAD-9751-407D-87C5-AA9300E15043", - "baseIconId": "94B9D1E7-C84C-413B-B999-92BD6508D013", - "name": "hand-extended-outline", - "codepoint": "F18B7", - "aliases": [ - "hand-open-outline", - "hand-palm-outline" - ], - "styles": [ - "outline" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "9A2B8032-A5D9-4E2A-8865-511EFE742611", - "baseIconId": "C30FC465-2DF1-4716-AAC9-F48213F23D65", - "name": "hand-front-left", - "codepoint": "F182B", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "09E98CF1-3EEC-4A94-B5F1-A6A734631959", - "baseIconId": "C30FC465-2DF1-4716-AAC9-F48213F23D65", - "name": "hand-front-left-outline", - "codepoint": "F182E", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "C30FC465-2DF1-4716-AAC9-F48213F23D65", - "baseIconId": "C30FC465-2DF1-4716-AAC9-F48213F23D65", - "name": "hand-front-right", - "codepoint": "F0A4F", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "EC0CC485-BD34-49FB-AB06-D8244F1B9166", - "baseIconId": "C30FC465-2DF1-4716-AAC9-F48213F23D65", - "name": "hand-front-right-outline", - "codepoint": "F182F", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "5B605565-DBBC-4141-8B07-D8009B74D4E1", - "baseIconId": "5B605565-DBBC-4141-8B07-D8009B74D4E1", - "name": "hand-heart", - "codepoint": "F10F1", - "aliases": [ - "volunteer", - "love", - "hope" - ], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "169736D6-CE5B-4143-A4A2-5D95088493F3", - "baseIconId": "5B605565-DBBC-4141-8B07-D8009B74D4E1", - "name": "hand-heart-outline", - "codepoint": "F157E", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "F81DD09B-46EB-466D-A0E3-DE4CAEC86793", - "baseIconId": "F81DD09B-46EB-466D-A0E3-DE4CAEC86793", - "name": "hand-okay", - "codepoint": "F0A50", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "19740ECA-C3A2-49D1-B7BA-91C97EA150D7", - "baseIconId": "19740ECA-C3A2-49D1-B7BA-91C97EA150D7", - "name": "hand-peace", - "codepoint": "F0A51", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "1B7E8570-378E-4099-9683-505B4E2744EA", - "baseIconId": "1B7E8570-378E-4099-9683-505B4E2744EA", - "name": "hand-peace-variant", - "codepoint": "F0A52", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "1D015884-E9B8-401E-8931-E2DA1604BF1B", - "baseIconId": "1D015884-E9B8-401E-8931-E2DA1604BF1B", - "name": "hand-pointing-down", - "codepoint": "F0A53", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "26BC12CA-4558-4C45-BBDB-04BE1E13E814", - "baseIconId": "26BC12CA-4558-4C45-BBDB-04BE1E13E814", - "name": "hand-pointing-left", - "codepoint": "F0A54", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "C18F21E1-2363-42DD-8FFF-3381AC368C23", - "baseIconId": "C18F21E1-2363-42DD-8FFF-3381AC368C23", - "name": "hand-pointing-right", - "codepoint": "F02C7", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "457F3CB5-7B39-417F-A1CE-D1DB5A22159D", - "baseIconId": "457F3CB5-7B39-417F-A1CE-D1DB5A22159D", - "name": "hand-pointing-up", - "codepoint": "F0A55", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "A0B645B5-20F6-4682-9E88-96784D8732CF", - "baseIconId": "A0B645B5-20F6-4682-9E88-96784D8732CF", - "name": "hand-saw", - "codepoint": "F0E48", - "aliases": [], - "styles": [], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Michael Irigoyen" - }, - { - "id": "4C201756-1101-4C58-9FBE-5F781347F535", - "baseIconId": "4C201756-1101-4C58-9FBE-5F781347F535", - "name": "hand-wash", - "codepoint": "F157F", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Google" - }, - { - "id": "C5EA3223-8736-4F38-82A1-B3FC5F206879", - "baseIconId": "4C201756-1101-4C58-9FBE-5F781347F535", - "name": "hand-wash-outline", - "codepoint": "F1580", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Google" - }, - { - "id": "C3BBE9FF-7FF7-4C8F-8185-A8F3825F3CAE", - "baseIconId": "C3BBE9FF-7FF7-4C8F-8185-A8F3825F3CAE", - "name": "hand-water", - "codepoint": "F139F", - "aliases": [ - "hand-wash" - ], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Moma Design Studio" - }, - { - "id": "2AE6B41D-EC56-4851-BEB2-B6A22B1E9D44", - "baseIconId": "C30FC465-2DF1-4716-AAC9-F48213F23D65", - "name": "hand-wave", - "codepoint": "F1821", - "aliases": [ - "greeting", - "farewell" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "0E2992F4-2F2E-4A96-8402-FBA2B9C8675C", - "baseIconId": "C30FC465-2DF1-4716-AAC9-F48213F23D65", - "name": "hand-wave-outline", - "codepoint": "F1822", - "aliases": [ - "greeting-outline", - "farewell-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "845C7000-7198-490F-8043-EC1F61CE4F53", - "baseIconId": "845C7000-7198-490F-8043-EC1F61CE4F53", - "name": "handball", - "codepoint": "F0F53", - "aliases": [ - "volleyball", - "human-handball" - ], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Sport", - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "1451F3F4-D421-4A26-A22D-0ED80A815DF6", - "baseIconId": "1451F3F4-D421-4A26-A22D-0ED80A815DF6", - "name": "handcuffs", - "codepoint": "F113E", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "9098736F-D298-4724-AE04-6BEA124F3854", - "baseIconId": "9098736F-D298-4724-AE04-6BEA124F3854", - "name": "hands-pray", - "codepoint": "F0579", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "A41E35E2-6756-46D9-BE48-4DFA705A6A6A", - "baseIconId": "A41E35E2-6756-46D9-BE48-4DFA705A6A6A", - "name": "handshake", - "codepoint": "F1218", - "aliases": [ - "business", - "deal", - "help", - "partnership" - ], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "11A33144-9847-4ED2-A429-682B79AAE06F", - "baseIconId": "A41E35E2-6756-46D9-BE48-4DFA705A6A6A", - "name": "handshake-outline", - "codepoint": "F15A1", - "aliases": [ - "business-outline", - "deal-outline", - "help-outline", - "partnership-outline" - ], - "styles": [ - "outline" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "2FB0994B-BBA8-4F59-93AF-87F2065F34EA", - "baseIconId": "2FB0994B-BBA8-4F59-93AF-87F2065F34EA", - "name": "hanger", - "codepoint": "F02C8", - "aliases": [ - "coat-hanger", - "clothes-hanger", - "closet" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Clothing", - "Home Automation" - ], - "author": "Moma Design Studio" - }, - { - "id": "C0F69308-03DA-446D-9B7F-A5B2B5BF1D90", - "baseIconId": "C0F69308-03DA-446D-9B7F-A5B2B5BF1D90", - "name": "hard-hat", - "codepoint": "F096F", - "aliases": [ - "helmet" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Hardware \/ Tools", - "Clothing" - ], - "author": "Michael Richins" - }, - { - "id": "6CBB2398-E7ED-4A08-8489-1FFF87D0605C", - "baseIconId": "6CBB2398-E7ED-4A08-8489-1FFF87D0605C", - "name": "harddisk", - "codepoint": "F02CA", - "aliases": [ - "hdd" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "C4EE3559-8772-4A8D-A549-A1A11DEEC830", - "baseIconId": "6CBB2398-E7ED-4A08-8489-1FFF87D0605C", - "name": "harddisk-plus", - "codepoint": "F104B", - "aliases": [ - "hdd-plus" - ], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "07449A81-73AE-484C-8739-E008C38502F1", - "baseIconId": "6CBB2398-E7ED-4A08-8489-1FFF87D0605C", - "name": "harddisk-remove", - "codepoint": "F104C", - "aliases": [ - "hdd-remove" - ], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "65EED4C7-8306-4688-83ED-7D1D527B39AB", - "baseIconId": "65EED4C7-8306-4688-83ED-7D1D527B39AB", - "name": "hat-fedora", - "codepoint": "F0BA4", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Clothing" - ], - "author": "Google" - }, - { - "id": "AEB30C8D-5159-4897-8D17-6EFB9715D3CD", - "baseIconId": "AEB30C8D-5159-4897-8D17-6EFB9715D3CD", - "name": "hazard-lights", - "codepoint": "F0C89", - "aliases": [ - "warning-lights" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "96185CFC-B966-48B1-AC7A-EF12F73C2096", - "baseIconId": "96185CFC-B966-48B1-AC7A-EF12F73C2096", - "name": "hdmi-port", - "codepoint": "F1BB8", - "aliases": [], - "styles": [], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Video \/ Movie", - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "81182C14-380B-4F56-AFF9-EF636EC7BF7E", - "baseIconId": "81182C14-380B-4F56-AFF9-EF636EC7BF7E", - "name": "hdr", - "codepoint": "F0D7D", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "D0ACA2D8-09A4-4C13-81FE-26F7D9C617E5", - "baseIconId": "81182C14-380B-4F56-AFF9-EF636EC7BF7E", - "name": "hdr-off", - "codepoint": "F0D7E", - "aliases": [], - "styles": [ - "off" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "6C83ACD1-95E8-4DE0-837A-4C66E07533DD", - "baseIconId": "6C83ACD1-95E8-4DE0-837A-4C66E07533DD", - "name": "head", - "codepoint": "F135E", - "aliases": [], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "783B2BB8-1ECA-4E19-8F45-9FCC8D749F99", - "baseIconId": "6C83ACD1-95E8-4DE0-837A-4C66E07533DD", - "name": "head-alert", - "codepoint": "F1338", - "aliases": [], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "BF11BF96-445C-478B-8A66-ECBD839415EA", - "baseIconId": "6C83ACD1-95E8-4DE0-837A-4C66E07533DD", - "name": "head-alert-outline", - "codepoint": "F1339", - "aliases": [], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E10C1F47-D7CB-458A-A374-467CF9462045", - "baseIconId": "6C83ACD1-95E8-4DE0-837A-4C66E07533DD", - "name": "head-check", - "codepoint": "F133A", - "aliases": [], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "0A0ADE26-77AE-4BC3-8F9D-3D25669197FE", - "baseIconId": "6C83ACD1-95E8-4DE0-837A-4C66E07533DD", - "name": "head-check-outline", - "codepoint": "F133B", - "aliases": [], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "58C540DF-30BA-449B-8426-61AD2C43959D", - "baseIconId": "6C83ACD1-95E8-4DE0-837A-4C66E07533DD", - "name": "head-cog", - "codepoint": "F133C", - "aliases": [ - "psychology" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Google" - }, - { - "id": "C4C50873-9844-42F6-A37B-16FE905873D9", - "baseIconId": "6C83ACD1-95E8-4DE0-837A-4C66E07533DD", - "name": "head-cog-outline", - "codepoint": "F133D", - "aliases": [ - "psychology-outline" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DE191219-96D0-4189-8BE1-8F24A5E3E492", - "baseIconId": "6C83ACD1-95E8-4DE0-837A-4C66E07533DD", - "name": "head-dots-horizontal", - "codepoint": "F133E", - "aliases": [ - "head-thinking" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "E07B33BA-5E14-45A2-AE38-EA80CE0ED909", - "baseIconId": "6C83ACD1-95E8-4DE0-837A-4C66E07533DD", - "name": "head-dots-horizontal-outline", - "codepoint": "F133F", - "aliases": [ - "head-thinking-outline" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "86AC6B0F-62ED-4691-88DB-A95DF86CBFF9", - "baseIconId": "6C83ACD1-95E8-4DE0-837A-4C66E07533DD", - "name": "head-flash", - "codepoint": "F1340", - "aliases": [ - "head-ache" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "28D19749-AD74-4017-B4B1-AFA65AA7B47F", - "baseIconId": "6C83ACD1-95E8-4DE0-837A-4C66E07533DD", - "name": "head-flash-outline", - "codepoint": "F1341", - "aliases": [ - "head-ache-outline" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "619BBE2E-46B1-4FC8-91CF-13FE138FC601", - "baseIconId": "6C83ACD1-95E8-4DE0-837A-4C66E07533DD", - "name": "head-heart", - "codepoint": "F1342", - "aliases": [ - "head-love" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "0DA85FAF-88F1-4DF1-8DA6-CB3CEFA2A505", - "baseIconId": "6C83ACD1-95E8-4DE0-837A-4C66E07533DD", - "name": "head-heart-outline", - "codepoint": "F1343", - "aliases": [ - "head-love-outline" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "A94C16AE-DBA8-4DC4-B52E-589D1605C765", - "baseIconId": "6C83ACD1-95E8-4DE0-837A-4C66E07533DD", - "name": "head-lightbulb", - "codepoint": "F1344", - "aliases": [ - "head-idea", - "head-bulb" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "A7FCF7AB-00BF-404B-8AF6-B384B034B6F7", - "baseIconId": "6C83ACD1-95E8-4DE0-837A-4C66E07533DD", - "name": "head-lightbulb-outline", - "codepoint": "F1345", - "aliases": [ - "head-idea-outline", - "head-bulb-outline" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "ACE0E86B-603A-4B3A-9AF5-D6C2F3B4F121", - "baseIconId": "6C83ACD1-95E8-4DE0-837A-4C66E07533DD", - "name": "head-minus", - "codepoint": "F1346", - "aliases": [], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "9550EB76-4099-4179-9310-339C2D7B0358", - "baseIconId": "6C83ACD1-95E8-4DE0-837A-4C66E07533DD", - "name": "head-minus-outline", - "codepoint": "F1347", - "aliases": [], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "FC339D79-C2E3-4F70-BDEE-E8DB99E06050", - "baseIconId": "6C83ACD1-95E8-4DE0-837A-4C66E07533DD", - "name": "head-outline", - "codepoint": "F135F", - "aliases": [], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "84EDC185-89D4-4F6A-9C28-9911ADA41950", - "baseIconId": "6C83ACD1-95E8-4DE0-837A-4C66E07533DD", - "name": "head-plus", - "codepoint": "F1348", - "aliases": [], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "FDEA8867-C576-4065-87D9-945ADE51C543", - "baseIconId": "6C83ACD1-95E8-4DE0-837A-4C66E07533DD", - "name": "head-plus-outline", - "codepoint": "F1349", - "aliases": [], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "1E4E72A9-FC83-4971-8B21-4FCACC4DD679", - "baseIconId": "6C83ACD1-95E8-4DE0-837A-4C66E07533DD", - "name": "head-question", - "codepoint": "F134A", - "aliases": [], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "B396941C-27C0-4386-96AF-D0AB15842EC2", - "baseIconId": "6C83ACD1-95E8-4DE0-837A-4C66E07533DD", - "name": "head-question-outline", - "codepoint": "F134B", - "aliases": [], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "277090C1-C626-4DA8-B620-1A709668E5BA", - "baseIconId": "6C83ACD1-95E8-4DE0-837A-4C66E07533DD", - "name": "head-remove", - "codepoint": "F134C", - "aliases": [], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "7BB28522-3861-439B-A804-D86C580A8FCB", - "baseIconId": "6C83ACD1-95E8-4DE0-837A-4C66E07533DD", - "name": "head-remove-outline", - "codepoint": "F134D", - "aliases": [], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "9EB1D22F-C7FC-43FB-8689-40AB3FFB98E7", - "baseIconId": "6C83ACD1-95E8-4DE0-837A-4C66E07533DD", - "name": "head-snowflake", - "codepoint": "F134E", - "aliases": [ - "head-freeze", - "brain-freeze" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "C7A97A26-B7C3-406A-9087-2463AC624926", - "baseIconId": "6C83ACD1-95E8-4DE0-837A-4C66E07533DD", - "name": "head-snowflake-outline", - "codepoint": "F134F", - "aliases": [ - "head-freeze-outline", - "brain-freeze-outline" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "CB0FD2AA-6EA8-4324-8207-6C4FFCCB5143", - "baseIconId": "6C83ACD1-95E8-4DE0-837A-4C66E07533DD", - "name": "head-sync", - "codepoint": "F1350", - "aliases": [ - "head-reload", - "head-refresh" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "8EC8806B-0E06-4EA4-915E-C061D4930ECC", - "baseIconId": "6C83ACD1-95E8-4DE0-837A-4C66E07533DD", - "name": "head-sync-outline", - "codepoint": "F1351", - "aliases": [ - "head-reload-outline", - "head-refresh-outline" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "51F72F83-1559-4037-8BF9-2D8AE3BCB1A8", - "baseIconId": "51F72F83-1559-4037-8BF9-2D8AE3BCB1A8", - "name": "headphones", - "codepoint": "F02CB", - "aliases": [ - "headset" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio", - "Device \/ Tech", - "Music" - ], - "author": "Google" - }, - { - "id": "B14FD2A1-C292-49CC-B0AC-78E22C2BD611", - "baseIconId": "51F72F83-1559-4037-8BF9-2D8AE3BCB1A8", - "name": "headphones-bluetooth", - "codepoint": "F0970", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "5B608320-1BEB-499C-9CAB-0897D3A2D2B6", - "baseIconId": "51F72F83-1559-4037-8BF9-2D8AE3BCB1A8", - "name": "headphones-box", - "codepoint": "F02CC", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio", - "Music" - ], - "author": "Google" - }, - { - "id": "678F779A-DE83-4DC0-A49D-657CBAF631F0", - "baseIconId": "51F72F83-1559-4037-8BF9-2D8AE3BCB1A8", - "name": "headphones-off", - "codepoint": "F07CE", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Audio", - "Device \/ Tech", - "Music" - ], - "author": "GreenTurtwig" - }, - { - "id": "54A22337-9D03-4F52-8D3E-B2A0A32147B7", - "baseIconId": "51F72F83-1559-4037-8BF9-2D8AE3BCB1A8", - "name": "headphones-settings", - "codepoint": "F02CD", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio", - "Settings" - ], - "author": "Austin Andrews" - }, - { - "id": "AFF98802-E02B-4EC8-8AFF-F0F5373D86C5", - "baseIconId": "51F72F83-1559-4037-8BF9-2D8AE3BCB1A8", - "name": "headset", - "codepoint": "F02CE", - "aliases": [ - "headset-mic" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio", - "Device \/ Tech" - ], - "author": "Google" - }, - { - "id": "36F33522-9167-42DD-BA0A-8920F480F38C", - "baseIconId": "51F72F83-1559-4037-8BF9-2D8AE3BCB1A8", - "name": "headset-dock", - "codepoint": "F02CF", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio" - ], - "author": "Chris Litherland" - }, - { - "id": "E2A86F6D-6E4D-4C61-B54A-85BEDACA052F", - "baseIconId": "51F72F83-1559-4037-8BF9-2D8AE3BCB1A8", - "name": "headset-off", - "codepoint": "F02D0", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio", - "Device \/ Tech" - ], - "author": "Austin Andrews" - }, - { - "id": "32B56DB2-B6BF-4B54-AD0C-9444106B1C1D", - "baseIconId": "32B56DB2-B6BF-4B54-AD0C-9444106B1C1D", - "name": "heart", - "codepoint": "F02D1", - "aliases": [ - "favorite", - "favourite" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Shape", - "Gaming \/ RPG", - "Medical \/ Hospital" - ], - "author": "Google" - }, - { - "id": "558E28AE-47E7-4C95-9846-7653C79CBA33", - "baseIconId": "32B56DB2-B6BF-4B54-AD0C-9444106B1C1D", - "name": "heart-box", - "codepoint": "F02D2", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "24811FE6-6C95-4CAB-B708-71862BA40C05", - "baseIconId": "32B56DB2-B6BF-4B54-AD0C-9444106B1C1D", - "name": "heart-box-outline", - "codepoint": "F02D3", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "64D15AD4-07A4-4D43-8730-6C9860C89B44", - "baseIconId": "32B56DB2-B6BF-4B54-AD0C-9444106B1C1D", - "name": "heart-broken", - "codepoint": "F02D4", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "365602DD-C53F-42AC-AE3E-2058F47B5C53", - "baseIconId": "32B56DB2-B6BF-4B54-AD0C-9444106B1C1D", - "name": "heart-broken-outline", - "codepoint": "F0D14", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "2EFEF959-D5E7-4E69-863D-4E12C413A6D9", - "baseIconId": "32B56DB2-B6BF-4B54-AD0C-9444106B1C1D", - "name": "heart-circle", - "codepoint": "F0971", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "DD5AC3DA-1CA0-4F53-9A50-C095417D7346", - "baseIconId": "32B56DB2-B6BF-4B54-AD0C-9444106B1C1D", - "name": "heart-circle-outline", - "codepoint": "F0972", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "759FA294-1DB6-4B54-BA13-AD852764E3C9", - "baseIconId": "32B56DB2-B6BF-4B54-AD0C-9444106B1C1D", - "name": "heart-cog", - "codepoint": "F1663", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "A28DF1A9-5A1F-49AB-959D-249313639228", - "baseIconId": "32B56DB2-B6BF-4B54-AD0C-9444106B1C1D", - "name": "heart-cog-outline", - "codepoint": "F1664", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "9B033C3C-210D-4EFD-AD4E-FF9E36E44509", - "baseIconId": "32B56DB2-B6BF-4B54-AD0C-9444106B1C1D", - "name": "heart-flash", - "codepoint": "F0EF9", - "aliases": [ - "aed", - "defibrillator" - ], - "styles": [ - "variant" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1B01BAE0-095E-424E-9552-6ECEF5E4FC62", - "baseIconId": "32B56DB2-B6BF-4B54-AD0C-9444106B1C1D", - "name": "heart-half", - "codepoint": "F06DF", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "0FC24699-3C95-4319-A60B-286B0D328D7A", - "baseIconId": "32B56DB2-B6BF-4B54-AD0C-9444106B1C1D", - "name": "heart-half-full", - "codepoint": "F06DE", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Case Sandberg" - }, - { - "id": "F4384972-741C-4BB6-91BF-9509E75C8AF8", - "baseIconId": "32B56DB2-B6BF-4B54-AD0C-9444106B1C1D", - "name": "heart-half-outline", - "codepoint": "F06E0", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "3FD1EF68-1D57-436E-9EF5-D6721DCCF5CF", - "baseIconId": "32B56DB2-B6BF-4B54-AD0C-9444106B1C1D", - "name": "heart-minus", - "codepoint": "F142F", - "aliases": [], - "styles": [ - "minus" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "12C099C0-0232-49B7-A909-F91594FD7FBA", - "baseIconId": "32B56DB2-B6BF-4B54-AD0C-9444106B1C1D", - "name": "heart-minus-outline", - "codepoint": "F1432", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "BDAF5217-358E-4673-BF16-FFFBD09EAD8F", - "baseIconId": "32B56DB2-B6BF-4B54-AD0C-9444106B1C1D", - "name": "heart-multiple", - "codepoint": "F0A56", - "aliases": [ - "hearts" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "A4672312-BF75-4CE0-88FF-C7D3BC724AA0", - "baseIconId": "32B56DB2-B6BF-4B54-AD0C-9444106B1C1D", - "name": "heart-multiple-outline", - "codepoint": "F0A57", - "aliases": [ - "hearts-outline" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "012A92C0-E5DE-4FB4-9AB1-9BD5F53861E0", - "baseIconId": "32B56DB2-B6BF-4B54-AD0C-9444106B1C1D", - "name": "heart-off", - "codepoint": "F0759", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Austin Andrews" - }, - { - "id": "E84E6A73-A238-4F6D-9A63-658358BB4A06", - "baseIconId": "32B56DB2-B6BF-4B54-AD0C-9444106B1C1D", - "name": "heart-off-outline", - "codepoint": "F1434", - "aliases": [], - "styles": [], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9BCD22D2-7304-4BB3-9C41-3431ED13542A", - "baseIconId": "32B56DB2-B6BF-4B54-AD0C-9444106B1C1D", - "name": "heart-outline", - "codepoint": "F02D5", - "aliases": [ - "favorite-border", - "favourite-border", - "favorite-outline", - "favourite-outline" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Shape", - "Gaming \/ RPG", - "Medical \/ Hospital" - ], - "author": "Google" - }, - { - "id": "412C8571-A7A4-4029-B5D4-7C67D2B243CC", - "baseIconId": "32B56DB2-B6BF-4B54-AD0C-9444106B1C1D", - "name": "heart-plus", - "codepoint": "F142E", - "aliases": [], - "styles": [ - "plus" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "644CF687-E873-46D4-9595-FF3F1C455861", - "baseIconId": "32B56DB2-B6BF-4B54-AD0C-9444106B1C1D", - "name": "heart-plus-outline", - "codepoint": "F1431", - "aliases": [], - "styles": [ - "outline", - "plus" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "389486F3-5A73-4C65-8EA6-43D432F6490E", - "baseIconId": "32B56DB2-B6BF-4B54-AD0C-9444106B1C1D", - "name": "heart-pulse", - "codepoint": "F05F6", - "aliases": [ - "heart-vitals" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Google" - }, - { - "id": "B01C8EB2-7765-4858-846F-078ADBFDD33B", - "baseIconId": "32B56DB2-B6BF-4B54-AD0C-9444106B1C1D", - "name": "heart-remove", - "codepoint": "F1430", - "aliases": [], - "styles": [ - "remove" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "3FB606F6-D5C4-4036-80D0-EFD3F8A0E06B", - "baseIconId": "32B56DB2-B6BF-4B54-AD0C-9444106B1C1D", - "name": "heart-remove-outline", - "codepoint": "F1433", - "aliases": [], - "styles": [ - "outline", - "remove" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "FC5F1079-0F24-415E-9364-573853A4BD34", - "baseIconId": "32B56DB2-B6BF-4B54-AD0C-9444106B1C1D", - "name": "heart-search", - "codepoint": "F1C8D", - "aliases": [ - "find-love" - ], - "styles": [ - "search" - ], - "version": "7.3.96", - "deprecated": false, - "tags": [], - "author": "Ryan Donahue" - }, - { - "id": "E0A4635A-2115-425E-8103-4C88CBDB10F3", - "baseIconId": "32B56DB2-B6BF-4B54-AD0C-9444106B1C1D", - "name": "heart-settings", - "codepoint": "F1665", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "9B32C2D5-B2BE-4646-9C41-53F10F7C1628", - "baseIconId": "32B56DB2-B6BF-4B54-AD0C-9444106B1C1D", - "name": "heart-settings-outline", - "codepoint": "F1666", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "12F2787E-C3CE-4321-98D5-3376DFD0606D", - "baseIconId": "12F2787E-C3CE-4321-98D5-3376DFD0606D", - "name": "heat-pump", - "codepoint": "F1A43", - "aliases": [], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "926E83A9-0AF9-4933-B30E-E7D17680B611", - "baseIconId": "12F2787E-C3CE-4321-98D5-3376DFD0606D", - "name": "heat-pump-outline", - "codepoint": "F1A44", - "aliases": [], - "styles": [ - "outline" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "8AD5E52C-320C-4071-B891-552B4D71A42C", - "baseIconId": "8AD5E52C-320C-4071-B891-552B4D71A42C", - "name": "heat-wave", - "codepoint": "F1A45", - "aliases": [ - "keep-warm", - "warmth" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation", - "Weather", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "FD4E8AC3-C868-429A-A7B9-5460AD347BC2", - "baseIconId": "FD4E8AC3-C868-429A-A7B9-5460AD347BC2", - "name": "heating-coil", - "codepoint": "F1AAF", - "aliases": [ - "radiator-coil", - "heated-floor" - ], - "styles": [], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "47397A0C-273D-4D13-A4FD-61572F3E4953", - "baseIconId": "47397A0C-273D-4D13-A4FD-61572F3E4953", - "name": "helicopter", - "codepoint": "F0AC2", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Transportation + Flying" - ], - "author": "Doodlemandk" - }, - { - "id": "62675A10-D453-40EB-8AED-A789A39EEF11", - "baseIconId": "62675A10-D453-40EB-8AED-A789A39EEF11", - "name": "help", - "codepoint": "F02D6", - "aliases": [ - "question-mark" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "6EFBBE96-37EA-4372-98CC-9B0D84B92C34", - "baseIconId": "62675A10-D453-40EB-8AED-A789A39EEF11", - "name": "help-box", - "codepoint": "F078B", - "aliases": [ - "question-mark-box" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "52053B96-D72E-4C97-8841-EC5F646F08BB", - "baseIconId": "62675A10-D453-40EB-8AED-A789A39EEF11", - "name": "help-box-multiple", - "codepoint": "F1C0A", - "aliases": [ - "quiz", - "question-box-multiple" - ], - "styles": [ - "box", - "multiple" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [], - "author": "Andrej Sharapov" - }, - { - "id": "F2D1319A-DF90-41CD-8791-B9B5685EFAC8", - "baseIconId": "62675A10-D453-40EB-8AED-A789A39EEF11", - "name": "help-box-multiple-outline", - "codepoint": "F1C0B", - "aliases": [ - "quiz-outline", - "question-box-multiple-outline" - ], - "styles": [ - "box", - "multiple", - "outline" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [], - "author": "Andrej Sharapov" - }, - { - "id": "C7559D85-14BB-4C5C-B37C-D37E85FEE258", - "baseIconId": "62675A10-D453-40EB-8AED-A789A39EEF11", - "name": "help-box-outline", - "codepoint": "F1C0C", - "aliases": [ - "question-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "49B41103-DD15-4FF4-A18A-44D8586704B6", - "baseIconId": "62675A10-D453-40EB-8AED-A789A39EEF11", - "name": "help-circle", - "codepoint": "F02D7", - "aliases": [ - "question-mark-circle" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "60E15D8D-3956-4461-91D8-E8059D02ECE6", - "baseIconId": "62675A10-D453-40EB-8AED-A789A39EEF11", - "name": "help-circle-outline", - "codepoint": "F0625", - "aliases": [ - "help-outline", - "question-mark-circle-outline" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "FE0A3DAC-0D3D-4D49-A869-F78B44B26E35", - "baseIconId": "62675A10-D453-40EB-8AED-A789A39EEF11", - "name": "help-network", - "codepoint": "F06F5", - "aliases": [ - "question-network" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "918BA71B-ED4F-4259-9089-0CF2A1EDCFD1", - "baseIconId": "62675A10-D453-40EB-8AED-A789A39EEF11", - "name": "help-network-outline", - "codepoint": "F0C8A", - "aliases": [ - "question-network-outline" - ], - "styles": [ - "network", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "FC7F2A59-0296-45CC-966D-EF69FB042DD9", - "baseIconId": "62675A10-D453-40EB-8AED-A789A39EEF11", - "name": "help-rhombus", - "codepoint": "F0BA5", - "aliases": [ - "question-mark-rhombus" - ], - "styles": [ - "variant" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "B08F035A-9304-4D3B-AADD-395971E74294", - "baseIconId": "62675A10-D453-40EB-8AED-A789A39EEF11", - "name": "help-rhombus-outline", - "codepoint": "F0BA6", - "aliases": [ - "question-mark-rhombus-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "4FB1FDA2-96F8-4983-83B9-470C1526042F", - "baseIconId": "4FB1FDA2-96F8-4983-83B9-470C1526042F", - "name": "hexadecimal", - "codepoint": "F12A7", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Michael Irigoyen" - }, - { - "id": "229D267D-F77F-4F33-ADD4-325647EC2662", - "baseIconId": "229D267D-F77F-4F33-ADD4-325647EC2662", - "name": "hexagon", - "codepoint": "F02D8", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Austin Andrews" - }, - { - "id": "60636193-AC27-470B-BCA5-94CEA29719A8", - "baseIconId": "229D267D-F77F-4F33-ADD4-325647EC2662", - "name": "hexagon-multiple", - "codepoint": "F06E1", - "aliases": [ - "hexagons" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Austin Andrews" - }, - { - "id": "D0D73659-5BB0-4109-A7E1-E4B09D31B940", - "baseIconId": "229D267D-F77F-4F33-ADD4-325647EC2662", - "name": "hexagon-multiple-outline", - "codepoint": "F10F2", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Nature" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0A85BE3F-ACF1-4D93-A66B-34C7F29D10A3", - "baseIconId": "229D267D-F77F-4F33-ADD4-325647EC2662", - "name": "hexagon-outline", - "codepoint": "F02D9", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Austin Andrews" - }, - { - "id": "6FD9B907-A06F-4923-9ABB-C977E8F14D0E", - "baseIconId": "229D267D-F77F-4F33-ADD4-325647EC2662", - "name": "hexagon-slice-1", - "codepoint": "F0AC3", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "SarinManS" - }, - { - "id": "B711E5EB-95CC-4835-A18A-066E1A242DB5", - "baseIconId": "229D267D-F77F-4F33-ADD4-325647EC2662", - "name": "hexagon-slice-2", - "codepoint": "F0AC4", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "SarinManS" - }, - { - "id": "0F1666BA-D919-4230-96C9-6DD64A82EB3D", - "baseIconId": "229D267D-F77F-4F33-ADD4-325647EC2662", - "name": "hexagon-slice-3", - "codepoint": "F0AC5", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "SarinManS" - }, - { - "id": "4AD333BE-32D1-4EA2-BA76-05896A9D2698", - "baseIconId": "229D267D-F77F-4F33-ADD4-325647EC2662", - "name": "hexagon-slice-4", - "codepoint": "F0AC6", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "SarinManS" - }, - { - "id": "4DE91E6B-4F94-40E8-BB70-2B54105C67D0", - "baseIconId": "229D267D-F77F-4F33-ADD4-325647EC2662", - "name": "hexagon-slice-5", - "codepoint": "F0AC7", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "SarinManS" - }, - { - "id": "0EE5E66B-A73E-455F-BF0B-5FEBC93A58E9", - "baseIconId": "229D267D-F77F-4F33-ADD4-325647EC2662", - "name": "hexagon-slice-6", - "codepoint": "F0AC8", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "SarinManS" - }, - { - "id": "A965D069-BF40-4F96-B64D-6C1C93F0E2E3", - "baseIconId": "A965D069-BF40-4F96-B64D-6C1C93F0E2E3", - "name": "hexagram", - "codepoint": "F0AC9", - "aliases": [ - "star", - "christmas-star" - ], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Shape", - "Holiday" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C1F53791-B46C-4327-B355-AF3175766CB8", - "baseIconId": "A965D069-BF40-4F96-B64D-6C1C93F0E2E3", - "name": "hexagram-outline", - "codepoint": "F0ACA", - "aliases": [ - "star-outline", - "christmas-star-outline" - ], - "styles": [ - "outline" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Shape", - "Holiday" - ], - "author": "Michael Irigoyen" - }, - { - "id": "8FC812E7-2B7B-412B-9114-1899203DECC4", - "baseIconId": "8FC812E7-2B7B-412B-9114-1899203DECC4", - "name": "high-definition", - "codepoint": "F07CF", - "aliases": [ - "hd" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Austin Andrews" - }, - { - "id": "BD1F0404-AA98-4FCF-8947-D0589C91A610", - "baseIconId": "8FC812E7-2B7B-412B-9114-1899203DECC4", - "name": "high-definition-box", - "codepoint": "F0878", - "aliases": [ - "hd-box", - "hd" - ], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "81E5D79D-2ECD-4040-9B07-3A0C19792348", - "baseIconId": "81E5D79D-2ECD-4040-9B07-3A0C19792348", - "name": "highway", - "codepoint": "F05F7", - "aliases": [ - "autobahn", - "motorway" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Christopher Schreiner" - }, - { - "id": "DA3D64F2-C874-420A-917A-0F66C9854D84", - "baseIconId": "DA3D64F2-C874-420A-917A-0F66C9854D84", - "name": "hiking", - "codepoint": "F0D7F", - "aliases": [ - "human-hiking" - ], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Sport", - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "55AF2D53-7FAD-4A1D-8440-10301C95D3B8", - "baseIconId": "55AF2D53-7FAD-4A1D-8440-10301C95D3B8", - "name": "history", - "codepoint": "F02DA", - "aliases": [ - "recent", - "latest", - "clock-arrow", - "counterclockwise", - "restore-clock" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "7A41C6CC-578B-4125-9647-548A298D5B3C", - "baseIconId": "7A41C6CC-578B-4125-9647-548A298D5B3C", - "name": "hockey-puck", - "codepoint": "F0879", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Nick" - }, - { - "id": "1D4E526E-EA07-4493-AF7D-C9B62B4CBC77", - "baseIconId": "1D4E526E-EA07-4493-AF7D-C9B62B4CBC77", - "name": "hockey-sticks", - "codepoint": "F087A", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Google" - }, - { - "id": "826E9B16-2A0D-4E8C-9C3A-BBBE3319AE4D", - "baseIconId": "826E9B16-2A0D-4E8C-9C3A-BBBE3319AE4D", - "name": "hololens", - "codepoint": "F02DB", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home", - "codepoint": "F02DC", - "aliases": [ - "house" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation", - "Places" - ], - "author": "Google" - }, - { - "id": "9A7BCD6C-B4FB-4AE5-B22F-C5B8E2FB3B66", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-account", - "codepoint": "F0826", - "aliases": [ - "home-user", - "house-account", - "house-user" - ], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Account \/ User", - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "A13368F4-66F6-4014-968E-7A7B2D99F038", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-alert", - "codepoint": "F087B", - "aliases": [ - "home-warning", - "house-alert", - "house-warning" - ], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Home Automation", - "Alert \/ Error" - ], - "author": "Michael Richins" - }, - { - "id": "0A46973B-0029-4BCF-9728-F3E13DC9FE91", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-alert-outline", - "codepoint": "F15D0", - "aliases": [ - "house-alert-outline", - "home-warning-outline", - "house-warning-outline" - ], - "styles": [ - "alert", - "outline" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Home Automation", - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "381A61B9-0D73-4CB8-B525-C67697443F43", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-analytics", - "codepoint": "F0EBA", - "aliases": [ - "chart-home", - "home-chart", - "home-report", - "house-analytics", - "house-chart" - ], - "styles": [ - "variant" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "80923357-29F3-429E-A186-F3561451398C", - "baseIconId": "80923357-29F3-429E-A186-F3561451398C", - "name": "home-assistant", - "codepoint": "F07D0", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Home Automation" - ], - "author": "Contributors" - }, - { - "id": "FD2567BF-09EC-4871-B3E8-DAE9CDCF3A38", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-automation", - "codepoint": "F07D1", - "aliases": [ - "house-automation", - "home-wireless", - "house-wireless", - "smart-home", - "smart-house" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "3BCACB97-3EEE-453B-81A7-1136F167B23D", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-battery", - "codepoint": "F1901", - "aliases": [ - "home-energy", - "home-power", - "home-electricity", - "house-energy", - "house-battery", - "house-power" - ], - "styles": [ - "variant" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Battery" - ], - "author": "Michael Irigoyen" - }, - { - "id": "EFDF1C9C-3566-4312-ACBC-AC5B10EA28DE", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-battery-outline", - "codepoint": "F1902", - "aliases": [ - "home-energy-outline", - "home-power-outline", - "home-electricity-outline", - "house-battery-outline", - "house-power-outline", - "house-energy-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Battery" - ], - "author": "Michael Irigoyen" - }, - { - "id": "59CB69E0-6F23-4572-90C7-9B360121C266", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-circle", - "codepoint": "F07D2", - "aliases": [ - "house-circle" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "bentraynham" - }, - { - "id": "2AD26260-A0C1-42BE-99A2-889F460EF25D", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-circle-outline", - "codepoint": "F104D", - "aliases": [ - "house-circle-outline" - ], - "styles": [ - "outline" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Terren" - }, - { - "id": "4D49A420-B80E-48FA-A331-A556002EA46F", - "baseIconId": "4D49A420-B80E-48FA-A331-A556002EA46F", - "name": "home-city", - "codepoint": "F0D15", - "aliases": [ - "house-city" - ], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "69A854BB-0CC9-4E1B-855E-FD26E9E6D119", - "baseIconId": "4D49A420-B80E-48FA-A331-A556002EA46F", - "name": "home-city-outline", - "codepoint": "F0D16", - "aliases": [ - "house-city-outline" - ], - "styles": [ - "outline" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Home Automation", - "Places" - ], - "author": "Google" - }, - { - "id": "F3391DCE-6EC9-4C63-869D-36ED374054FC", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-clock", - "codepoint": "F1A12", - "aliases": [ - "home-time", - "home-schedule", - "house-time", - "house-clock", - "house-schedule" - ], - "styles": [ - "clock" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Home Automation", - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "9ADA7472-66EE-4F9A-8494-C4292C29207C", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-clock-outline", - "codepoint": "F1A13", - "aliases": [ - "home-time-outline", - "home-schedule-outline", - "house-clock-outline", - "house-time-outline", - "house-schedule-outline" - ], - "styles": [ - "clock", - "outline" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Home Automation", - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "6D381D99-24F0-46B5-AD04-F527B97830AE", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-edit", - "codepoint": "F1159", - "aliases": [ - "house-edit" - ], - "styles": [ - "edit" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Edit \/ Modify" - ], - "author": "Simran" - }, - { - "id": "B56AB73F-0A3C-4562-88DF-ED70B51877DE", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-edit-outline", - "codepoint": "F115A", - "aliases": [ - "house-edit-outline" - ], - "styles": [ - "edit", - "outline" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Edit \/ Modify" - ], - "author": "Simran" - }, - { - "id": "6D0FFE6B-65D9-4D72-9743-C2537F3E6307", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-export-outline", - "codepoint": "F0F9B", - "aliases": [ - "house-export-outline" - ], - "styles": [ - "arrow", - "outline" - ], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "AC4506FC-3368-416C-8E9A-BADD6F66E7D5", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-flood", - "codepoint": "F0EFA", - "aliases": [ - "house-flood" - ], - "styles": [ - "variant" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Weather", - "Home Automation", - "Nature" - ], - "author": "Google" - }, - { - "id": "6732D314-97CA-4433-9CB5-260359AC131F", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-floor-0", - "codepoint": "F0DD2", - "aliases": [ - "house-floor-0", - "home-floor-zero", - "house-floor-zero" - ], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B83F1FBD-0D66-4CEE-91FC-640B78AABF4E", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-floor-1", - "codepoint": "F0D80", - "aliases": [ - "house-floor-1", - "home-floor-one", - "house-floor-one", - "home-floor-first", - "house-floor-first" - ], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "FB09500A-A871-409C-B7D4-B18BDF0D8511", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-floor-2", - "codepoint": "F0D81", - "aliases": [ - "house-floor-2", - "home-floor-two", - "house-floor-two", - "home-floor-second", - "house-floor-second" - ], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "E7714A6B-EE3B-4819-81B8-1E9FF342598F", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-floor-3", - "codepoint": "F0D82", - "aliases": [ - "house-floor-3", - "home-floor-three", - "house-floor-three", - "home-floor-third", - "house-floor-third" - ], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "5A227D09-2828-4606-81B8-7622D7C8724C", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-floor-a", - "codepoint": "F0D83", - "aliases": [ - "home-floor-attic", - "house-floor-a", - "house-floor-attic" - ], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "004E747A-FD00-4B6E-8AEF-2031D217D035", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-floor-b", - "codepoint": "F0D84", - "aliases": [ - "home-floor-basement", - "house-floor-b", - "house-floor-basement" - ], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "B2D19D07-ACC6-462B-BD11-50CC805E104B", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-floor-g", - "codepoint": "F0D85", - "aliases": [ - "home-floor-ground", - "house-floor-g", - "house-floor-ground" - ], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "D6B418D4-1B34-4E5C-B406-0E27B72DC0AC", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-floor-l", - "codepoint": "F0D86", - "aliases": [ - "home-floor-loft", - "home-floor-lower", - "house-floor-l", - "house-floor-loft", - "house-floor-lower" - ], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "8809DA4E-CB12-48C9-AA91-8E377701862F", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-floor-negative-1", - "codepoint": "F0DD3", - "aliases": [ - "house-floor-negative-1", - "home-floor-negative-one", - "home-floor-minus-1", - "home-floor-minus-one", - "house-floor-negative-one", - "house-floor-minus-1", - "house-floor-minus-one" - ], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B4E54DBF-164E-41D3-8C9F-D7E67C9F9B10", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-group", - "codepoint": "F0DD4", - "aliases": [ - "house-group", - "neighbourhood", - "estate", - "housing-estate" - ], - "styles": [ - "multiple" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "786A8373-A89F-4905-9698-B8AD3CF4D230", - "baseIconId": "B4E54DBF-164E-41D3-8C9F-D7E67C9F9B10", - "name": "home-group-minus", - "codepoint": "F19C1", - "aliases": [ - "house-group-minus" - ], - "styles": [ - "minus" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "6A0C18F6-510F-4AC3-88FE-6B24C7669BAD", - "baseIconId": "B4E54DBF-164E-41D3-8C9F-D7E67C9F9B10", - "name": "home-group-plus", - "codepoint": "F19C0", - "aliases": [ - "house-group-plus", - "home-group-add", - "house-group-add" - ], - "styles": [ - "plus" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "LEANNOVATORS.TECH" - }, - { - "id": "A4438B5F-FA4C-4C73-8514-3D0364BBB7A5", - "baseIconId": "B4E54DBF-164E-41D3-8C9F-D7E67C9F9B10", - "name": "home-group-remove", - "codepoint": "F19C2", - "aliases": [ - "house-group-remove" - ], - "styles": [ - "remove" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "513D2CF1-31F5-4F3B-8543-2499ABB20924", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-heart", - "codepoint": "F0827", - "aliases": [ - "family", - "house-heart" - ], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Home Automation", - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "041C4C4F-6D85-4F8B-90CC-FB17E9202862", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-import-outline", - "codepoint": "F0F9C", - "aliases": [ - "house-import-outline" - ], - "styles": [ - "arrow", - "outline" - ], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "06C5C86B-2918-4501-B247-890B18874E8E", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-lightbulb", - "codepoint": "F1251", - "aliases": [ - "home-bulb", - "house-lightbulb", - "house-bulb" - ], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "5F0E0727-76E9-4793-9406-FD513FF7CB58", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-lightbulb-outline", - "codepoint": "F1252", - "aliases": [ - "home-bulb-outline", - "house-lightbulb-outline", - "house-bulb-outline" - ], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "077E7728-7FDE-4846-9F55-9818EB397D58", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-lightning-bolt", - "codepoint": "F1903", - "aliases": [ - "home-energy", - "home-power", - "home-electricity", - "home-flash", - "house-lightning-bolt", - "house-flash" - ], - "styles": [ - "variant" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "12538408-E644-4222-84BF-9A64670E9187", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-lightning-bolt-outline", - "codepoint": "F1904", - "aliases": [ - "home-energy", - "home-power", - "home-electricity", - "home-flash", - "house-lightning-bolt-outline", - "house-flash-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "ECB8FF23-47EC-4038-9673-1A3A1619C071", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-lock", - "codepoint": "F08EB", - "aliases": [ - "house-lock", - "home-secure", - "house-secure" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Home Automation", - "Lock" - ], - "author": "Nick" - }, - { - "id": "0E63785D-BB37-4A60-B09D-F985DC4FAD5F", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-lock-open", - "codepoint": "F08EC", - "aliases": [ - "house-lock-open" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Home Automation", - "Lock" - ], - "author": "Nick" - }, - { - "id": "D543BDC6-BC40-4A36-B2F0-60313D8F4EEB", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-map-marker", - "codepoint": "F05F8", - "aliases": [ - "house-map-marker", - "home-location" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation", - "Navigation" - ], - "author": "Simran" - }, - { - "id": "825AF439-6839-48DA-A6D4-B62BB2710103", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-minus", - "codepoint": "F0974", - "aliases": [ - "house-minus" - ], - "styles": [ - "minus" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Peter Noble" - }, - { - "id": "8DB9C230-99DF-4137-9A32-2D1058D824EA", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-minus-outline", - "codepoint": "F13D5", - "aliases": [ - "house-minus-outline" - ], - "styles": [ - "minus", - "outline" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "6949FE9A-5B8C-4EDF-B74E-E0268A4F69F1", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-modern", - "codepoint": "F02DD", - "aliases": [ - "house-modern" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "D9B08A72-EDEB-459D-89C9-C12DFB088E98", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-off", - "codepoint": "F1A46", - "aliases": [ - "house-off" - ], - "styles": [ - "off" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "8AFA6E09-694A-4C0B-9F34-6567B3CA1690", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-off-outline", - "codepoint": "F1A47", - "aliases": [ - "house-off-outline" - ], - "styles": [ - "off", - "outline" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B4E2287E-8872-48AD-B765-83D82AF66CA3", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-outline", - "codepoint": "F06A1", - "aliases": [ - "house-outline" - ], - "styles": [ - "outline" - ], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Home Automation", - "Places" - ], - "author": "Google" - }, - { - "id": "2873F779-5D6C-4735-AF84-104BD9F41B7D", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-percent", - "codepoint": "F1C7C", - "aliases": [], - "styles": [], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "D947D6EA-6AFF-41EA-B631-DC5AB95EFED6", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-percent-outline", - "codepoint": "F1C7D", - "aliases": [], - "styles": [ - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Jeff Anders" - }, - { - "id": "E844FA32-E45E-4D71-B74C-34DFAD7F6830", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-plus", - "codepoint": "F0975", - "aliases": [ - "home-add", - "house-plus", - "house-add" - ], - "styles": [ - "plus" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Peter Noble" - }, - { - "id": "CDAF170C-BB2C-4217-9B96-D99EE9B725F9", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-plus-outline", - "codepoint": "F13D6", - "aliases": [ - "house-plus-outline", - "house-add-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "FEF8AC85-F9E6-4C9B-B0C2-A5158AAD8A8B", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-remove", - "codepoint": "F1247", - "aliases": [ - "house-remove" - ], - "styles": [ - "remove" - ], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "CD3129FD-EDCB-4B65-85F8-900E59E308B7", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-remove-outline", - "codepoint": "F13D7", - "aliases": [ - "house-remove-outline" - ], - "styles": [ - "outline", - "remove" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "32EF139A-14EB-4767-ADDD-08120FB530A0", - "baseIconId": "32EF139A-14EB-4767-ADDD-08120FB530A0", - "name": "home-roof", - "codepoint": "F112B", - "aliases": [ - "home-chimney", - "home-attic", - "house-roof", - "house-attic", - "house-chimney" - ], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "156F3CF1-D7CD-487B-AF83-4A7270413A62", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-search", - "codepoint": "F13B0", - "aliases": [ - "house-search", - "home-find", - "house-find" - ], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D261AFB1-2C65-41D6-AE5A-E25D2FC120ED", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-search-outline", - "codepoint": "F13B1", - "aliases": [ - "house-search-outline", - "home-find-outline", - "house-find-outline" - ], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1F67690D-B143-4CF0-9888-54F647E62F33", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-silo", - "codepoint": "F1BA0", - "aliases": [ - "farm-house", - "farm-home" - ], - "styles": [ - "variant" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Home Automation", - "Agriculture" - ], - "author": "Jeff Anders" - }, - { - "id": "8943314B-A992-48BD-B030-700F2190B781", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-silo-outline", - "codepoint": "F1BA1", - "aliases": [ - "farm-house-outline", - "farm-home-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Agriculture", - "Home Automation" - ], - "author": "Jeff Anders" - }, - { - "id": "30477CDE-7E54-4B3F-830D-F846520A28B2", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-sound-in", - "codepoint": "F1C2F", - "aliases": [], - "styles": [], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Jeff Anders" - }, - { - "id": "4B4ED868-C3DB-4D85-BCF2-4B2214BAF0CA", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-sound-in-outline", - "codepoint": "F1C30", - "aliases": [], - "styles": [ - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Jeff Anders" - }, - { - "id": "8922F49A-8B55-4B61-A893-A5E370AA39BD", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-sound-out", - "codepoint": "F1C31", - "aliases": [], - "styles": [], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Jeff Anders" - }, - { - "id": "87C2DE8C-2E23-467B-9C6C-AD258E1C4DE9", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-sound-out-outline", - "codepoint": "F1C32", - "aliases": [], - "styles": [ - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Jeff Anders" - }, - { - "id": "1DBBF908-7F93-4FAE-8A2A-555851E7C3BE", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-switch", - "codepoint": "F1794", - "aliases": [ - "home-swap", - "house-switch", - "house-swap" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "4C8FD8F1-0690-4B2D-A614-A03F58D48370", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-switch-outline", - "codepoint": "F1795", - "aliases": [ - "home-swap-outline", - "house-swap-outline", - "house-switch-outline" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "833E3484-3C40-4F98-96CB-537FB6225711", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-thermometer", - "codepoint": "F0F54", - "aliases": [ - "home-climate", - "home-temperature", - "house-thermometer", - "house-climate", - "house-temperature" - ], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Tim Grelka" - }, - { - "id": "2782AA6E-C46A-4CEC-B753-35768CA30163", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-thermometer-outline", - "codepoint": "F0F55", - "aliases": [ - "home-climate-outline", - "home-temperature-outline", - "house-thermometer-outline", - "house-climate-outline", - "house-temperature-outline" - ], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Hans B\u00f6hm" - }, - { - "id": "7AFA8EEF-6A41-4A7D-97D2-F9F03DB24DB0", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-variant", - "codepoint": "F02DE", - "aliases": [ - "house-variant" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "5DF1214D-79EC-4EA0-B435-CB73B877DCA9", - "baseIconId": "5D085274-15B9-42EC-8CCE-2F94C5EC039C", - "name": "home-variant-outline", - "codepoint": "F0BA7", - "aliases": [ - "house-variant-outline" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "8A2A8364-B33C-4931-BF78-EB171C569D5F", - "baseIconId": "8A2A8364-B33C-4931-BF78-EB171C569D5F", - "name": "hook", - "codepoint": "F06E2", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "984487C2-EBB2-474C-8914-046E6BDC6EC6", - "baseIconId": "8A2A8364-B33C-4931-BF78-EB171C569D5F", - "name": "hook-off", - "codepoint": "F06E3", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "088F07BD-BEA9-46D5-A2DF-0B9FA37BBF99", - "baseIconId": "088F07BD-BEA9-46D5-A2DF-0B9FA37BBF99", - "name": "hoop-house", - "codepoint": "F0E56", - "aliases": [ - "green-house" - ], - "styles": [], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Agriculture", - "Home Automation" - ], - "author": "Jeff Anders" - }, - { - "id": "E82A026A-DD54-4C5F-8961-A7C97754CF04", - "baseIconId": "E82A026A-DD54-4C5F-8961-A7C97754CF04", - "name": "hops", - "codepoint": "F02DF", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Agriculture" - ], - "author": "Austin Andrews" - }, - { - "id": "7B242778-9748-4E06-8738-E3325EE88F08", - "baseIconId": "7B242778-9748-4E06-8738-E3325EE88F08", - "name": "horizontal-rotate-clockwise", - "codepoint": "F10F3", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "C6DC8E07-B9BA-4F4E-B415-40AAD8AE17A4", - "baseIconId": "C6DC8E07-B9BA-4F4E-B415-40AAD8AE17A4", - "name": "horizontal-rotate-counterclockwise", - "codepoint": "F10F4", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "EA8A87CE-C2FE-4C05-8CD0-32C9716737D4", - "baseIconId": "EA8A87CE-C2FE-4C05-8CD0-32C9716737D4", - "name": "horse", - "codepoint": "F15BF", - "aliases": [ - "equestrian" - ], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Transportation + Other", - "Animal", - "Agriculture" - ], - "author": "Colton Wiscombe" - }, - { - "id": "784CE1E7-3523-4E04-910C-3E969FEA4E55", - "baseIconId": "EA8A87CE-C2FE-4C05-8CD0-32C9716737D4", - "name": "horse-human", - "codepoint": "F15C0", - "aliases": [ - "horseback-riding", - "horse-riding", - "equestrian" - ], - "styles": [ - "variant" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Transportation + Other", - "Agriculture", - "People \/ Family" - ], - "author": "Colton Wiscombe" - }, - { - "id": "359CB8BA-79AF-43F7-AE85-562432388C2E", - "baseIconId": "EA8A87CE-C2FE-4C05-8CD0-32C9716737D4", - "name": "horse-variant", - "codepoint": "F15C1", - "aliases": [ - "equestrian-variant" - ], - "styles": [ - "variant" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Animal", - "Agriculture" - ], - "author": "Colton Wiscombe" - }, - { - "id": "B78A53B2-16C0-40FF-8923-9EE03B7D6059", - "baseIconId": "EA8A87CE-C2FE-4C05-8CD0-32C9716737D4", - "name": "horse-variant-fast", - "codepoint": "F186E", - "aliases": [], - "styles": [ - "variant" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Animal", - "Agriculture" - ], - "author": "Colton Wiscombe" - }, - { - "id": "1955609E-8F53-41B3-9C71-0A71E4FBEED3", - "baseIconId": "1955609E-8F53-41B3-9C71-0A71E4FBEED3", - "name": "horseshoe", - "codepoint": "F0A58", - "aliases": [ - "luck" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Sport", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D7402851-FBF5-4861-8B6E-D141EBBDBB70", - "baseIconId": "D7402851-FBF5-4861-8B6E-D141EBBDBB70", - "name": "hospital", - "codepoint": "F0FF6", - "aliases": [ - "swiss-cross", - "dispensary" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Michael Irigoyen" - }, - { - "id": "83D0E9E7-B196-4515-A9C8-6E6FEB03ADD1", - "baseIconId": "D7402851-FBF5-4861-8B6E-D141EBBDBB70", - "name": "hospital-box", - "codepoint": "F02E0", - "aliases": [ - "local-hospital", - "swiss-cross-box", - "dispensary-box" - ], - "styles": [ - "box" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Google" - }, - { - "id": "2D50B6E0-C01B-4EDE-BA85-A14757A27D54", - "baseIconId": "D7402851-FBF5-4861-8B6E-D141EBBDBB70", - "name": "hospital-box-outline", - "codepoint": "F0FF7", - "aliases": [ - "swiss-cross-box-outline", - "dispensary-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D4FAA416-4429-451F-B4EE-647CCABDF3EB", - "baseIconId": "D4FAA416-4429-451F-B4EE-647CCABDF3EB", - "name": "hospital-building", - "codepoint": "F02E1", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Places", - "Medical \/ Hospital" - ], - "author": "Austin Andrews" - }, - { - "id": "FA30BC13-BE77-44F6-BEB1-942749E019A7", - "baseIconId": "FA30BC13-BE77-44F6-BEB1-942749E019A7", - "name": "hospital-marker", - "codepoint": "F02E2", - "aliases": [ - "hospital-location" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Medical \/ Hospital", - "Navigation" - ], - "author": "Austin Andrews" - }, - { - "id": "832FBA55-F65E-4706-93B1-9018D651CAA3", - "baseIconId": "832FBA55-F65E-4706-93B1-9018D651CAA3", - "name": "hot-tub", - "codepoint": "F0828", - "aliases": [], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "A2BB919C-0296-4CAE-83EA-07AD9A9A378C", - "baseIconId": "A2BB919C-0296-4CAE-83EA-07AD9A9A378C", - "name": "hours-12", - "codepoint": "F1C94", - "aliases": [], - "styles": [], - "version": "7.3.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "circa1665" - }, - { - "id": "0AAC6125-3343-4D4A-AF22-69BC930FA96F", - "baseIconId": "0AAC6125-3343-4D4A-AF22-69BC930FA96F", - "name": "hours-24", - "codepoint": "F1478", - "aliases": [], - "styles": [], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Haley Halcyon" - }, - { - "id": "0BEA7CE4-5642-406D-A995-E2502E85D184", - "baseIconId": "0BEA7CE4-5642-406D-A995-E2502E85D184", - "name": "hub", - "codepoint": "F1C95", - "aliases": [], - "styles": [], - "version": "7.3.96", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "64A2362A-CC88-40D3-B071-09207B9CE7E0", - "baseIconId": "0BEA7CE4-5642-406D-A995-E2502E85D184", - "name": "hub-outline", - "codepoint": "F1C96", - "aliases": [], - "styles": [ - "outline" - ], - "version": "7.3.96", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "04125F27-F2CB-4304-8C9D-81E4D72A0B6E", - "baseIconId": "04125F27-F2CB-4304-8C9D-81E4D72A0B6E", - "name": "hubspot", - "codepoint": "F0D17", - "aliases": [], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [], - "author": "Contributors" - }, - { - "id": "788D7C34-3E50-468B-A205-D953D844F1B7", - "baseIconId": "788D7C34-3E50-468B-A205-D953D844F1B7", - "name": "hulu", - "codepoint": "F0829", - "aliases": [], - "styles": [], - "version": "2.1.19", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "B05E458D-886A-491D-9969-156562C52105", - "baseIconId": "10E7CAB4-7B15-4F73-82B1-E42562B9103C", - "name": "human", - "codepoint": "F02E6", - "aliases": [ - "accessibility" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "CF40C1CD-0F3A-4BC7-A1D7-7C33C8EFD307", - "baseIconId": "CF40C1CD-0F3A-4BC7-A1D7-7C33C8EFD307", - "name": "human-baby-changing-table", - "codepoint": "F138B", - "aliases": [], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [ - "People \/ Family", - "Medical \/ Hospital" - ], - "author": "Moma Design Studio" - }, - { - "id": "40DD914F-1089-4A7B-AA3D-630C643E8FFF", - "baseIconId": "40DD914F-1089-4A7B-AA3D-630C643E8FFF", - "name": "human-cane", - "codepoint": "F1581", - "aliases": [ - "elderly" - ], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Medical \/ Hospital", - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "98227CA7-A56F-4C3F-85FC-0FAD616B9762", - "baseIconId": "98227CA7-A56F-4C3F-85FC-0FAD616B9762", - "name": "human-capacity-decrease", - "codepoint": "F159B", - "aliases": [ - "human-capacity-reduce" - ], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Account \/ User", - "Transportation + Other", - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "AFFFC442-E5B7-4D2C-9B87-81D2AD52997A", - "baseIconId": "AFFFC442-E5B7-4D2C-9B87-81D2AD52997A", - "name": "human-capacity-increase", - "codepoint": "F159C", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Account \/ User", - "Transportation + Other", - "People \/ Family" - ], - "author": "Simran" - }, - { - "id": "ABBC3761-B437-4800-9C57-BCBE5AC8FA31", - "baseIconId": "1369FF9C-0E57-4644-BE89-7B5EED0131B0", - "name": "human-child", - "codepoint": "F02E7", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Austin Andrews" - }, - { - "id": "24AA9CD4-6B25-4B7C-A3A2-0C1A29DC5E1F", - "baseIconId": "24AA9CD4-6B25-4B7C-A3A2-0C1A29DC5E1F", - "name": "human-dolly", - "codepoint": "F1980", - "aliases": [ - "human-hand-truck", - "human-trolley" - ], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1B83707C-D3DF-4181-93D5-5B513B649E1C", - "baseIconId": "1B83707C-D3DF-4181-93D5-5B513B649E1C", - "name": "human-edit", - "codepoint": "F14E8", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "People \/ Family", - "Edit \/ Modify" - ], - "author": "Austin Andrews" - }, - { - "id": "059421A9-4F27-493A-8835-4B49B5286366", - "baseIconId": "1369FF9C-0E57-4644-BE89-7B5EED0131B0", - "name": "human-female", - "codepoint": "F0649", - "aliases": [ - "woman" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "6FAD3199-1AC7-4265-84B0-E72818AD2447", - "baseIconId": "1369FF9C-0E57-4644-BE89-7B5EED0131B0", - "name": "human-female-boy", - "codepoint": "F0A59", - "aliases": [ - "mother", - "mom", - "woman-child", - "mum" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Henrique C\u00e9sar Madeira" - }, - { - "id": "DCBC03CA-8A3A-41FD-9C96-BA738EDA9F05", - "baseIconId": "DCBC03CA-8A3A-41FD-9C96-BA738EDA9F05", - "name": "human-female-dance", - "codepoint": "F15C9", - "aliases": [ - "ballet" - ], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "People \/ Family", - "Sport" - ], - "author": "Michael Richins" - }, - { - "id": "63BC56A3-B593-4789-BEAE-2696E6DC2CB6", - "baseIconId": "1369FF9C-0E57-4644-BE89-7B5EED0131B0", - "name": "human-female-female", - "codepoint": "F0A5A", - "aliases": [ - "woman-woman", - "women" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Henrique C\u00e9sar Madeira" - }, - { - "id": "51D1E4B3-A76C-4CA6-A389-177B6A7EFDBB", - "baseIconId": "B05E458D-886A-491D-9969-156562C52105", - "name": "human-female-female-child", - "codepoint": "F1C8E", - "aliases": [ - "family" - ], - "styles": [], - "version": "7.3.96", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0F41B01E-9981-4BF8-8CC9-A44593ECB3BA", - "baseIconId": "1369FF9C-0E57-4644-BE89-7B5EED0131B0", - "name": "human-female-girl", - "codepoint": "F0A5B", - "aliases": [ - "mother", - "mom", - "woman-child", - "mum" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Henrique C\u00e9sar Madeira" - }, - { - "id": "59728070-C172-44A6-9076-5D5C29D08880", - "baseIconId": "B05E458D-886A-491D-9969-156562C52105", - "name": "human-greeting", - "codepoint": "F17C4", - "aliases": [ - "human-hello", - "human-welcome" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "200F7489-F20F-4506-A27A-081A0CA8A312", - "baseIconId": "200F7489-F20F-4506-A27A-081A0CA8A312", - "name": "human-greeting-proximity", - "codepoint": "F159D", - "aliases": [ - "connect-without-contact" - ], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Account \/ User", - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "1C9856E1-6945-464E-85E7-A46C4A974C9D", - "baseIconId": "10E7CAB4-7B15-4F73-82B1-E42562B9103C", - "name": "human-greeting-variant", - "codepoint": "F064A", - "aliases": [ - "human-hello-variant" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "10E7CAB4-7B15-4F73-82B1-E42562B9103C", - "baseIconId": "10E7CAB4-7B15-4F73-82B1-E42562B9103C", - "name": "human-handsdown", - "codepoint": "F064B", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "FA427178-750A-425C-81F2-B46DDC061771", - "baseIconId": "10E7CAB4-7B15-4F73-82B1-E42562B9103C", - "name": "human-handsup", - "codepoint": "F064C", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "1369FF9C-0E57-4644-BE89-7B5EED0131B0", - "baseIconId": "1369FF9C-0E57-4644-BE89-7B5EED0131B0", - "name": "human-male", - "codepoint": "F064D", - "aliases": [ - "man" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "A989F68B-23B9-4B50-BE4D-E3DF6E9420C9", - "baseIconId": "A989F68B-23B9-4B50-BE4D-E3DF6E9420C9", - "name": "human-male-board", - "codepoint": "F0890", - "aliases": [ - "teacher", - "teaching", - "lecture", - "college", - "blackboard", - "whiteboard", - "human-man-board" - ], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Michael Richins" - }, - { - "id": "7016027D-C32A-4462-A9E5-98132FA518B4", - "baseIconId": "A989F68B-23B9-4B50-BE4D-E3DF6E9420C9", - "name": "human-male-board-poll", - "codepoint": "F0846", - "aliases": [ - "teach-poll" - ], - "styles": [ - "variant" - ], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "MaksUr" - }, - { - "id": "07AB2970-AE77-417B-BEB3-8B6FDEF43EDE", - "baseIconId": "1369FF9C-0E57-4644-BE89-7B5EED0131B0", - "name": "human-male-boy", - "codepoint": "F0A5C", - "aliases": [ - "father", - "dad", - "man-child" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Henrique C\u00e9sar Madeira" - }, - { - "id": "4FDB5D5D-02F8-4B99-AA54-C9344F1DB02D", - "baseIconId": "4FDB5D5D-02F8-4B99-AA54-C9344F1DB02D", - "name": "human-male-child", - "codepoint": "F138C", - "aliases": [], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Moma Design Studio" - }, - { - "id": "0FC16450-7A7E-43C5-AED4-E27C4A6BFF99", - "baseIconId": "1369FF9C-0E57-4644-BE89-7B5EED0131B0", - "name": "human-male-female", - "codepoint": "F02E8", - "aliases": [ - "wc", - "man-woman" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "26B43897-F5DF-4CBC-A89F-514E200B5937", - "baseIconId": "B05E458D-886A-491D-9969-156562C52105", - "name": "human-male-female-child", - "codepoint": "F1823", - "aliases": [ - "family", - "mom-dad-child" - ], - "styles": [ - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "764B2DA8-53A8-4D7D-A156-D73CDA4F0C63", - "baseIconId": "1369FF9C-0E57-4644-BE89-7B5EED0131B0", - "name": "human-male-girl", - "codepoint": "F0A5D", - "aliases": [ - "father", - "dad", - "man-child" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Henrique C\u00e9sar Madeira" - }, - { - "id": "38807077-1E35-4599-83CA-110DA473794A", - "baseIconId": "1369FF9C-0E57-4644-BE89-7B5EED0131B0", - "name": "human-male-height", - "codepoint": "F0EFB", - "aliases": [], - "styles": [], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Medical \/ Hospital", - "People \/ Family" - ], - "author": "Michael Richins" - }, - { - "id": "51DB457C-C26A-4579-8C34-9ED95D270EA4", - "baseIconId": "1369FF9C-0E57-4644-BE89-7B5EED0131B0", - "name": "human-male-height-variant", - "codepoint": "F0EFC", - "aliases": [], - "styles": [], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Medical \/ Hospital", - "People \/ Family" - ], - "author": "Michael Richins" - }, - { - "id": "AB5B56A8-CB56-4502-B388-BA02ECEB2D1A", - "baseIconId": "1369FF9C-0E57-4644-BE89-7B5EED0131B0", - "name": "human-male-male", - "codepoint": "F0A5E", - "aliases": [ - "man-man", - "men" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Henrique C\u00e9sar Madeira" - }, - { - "id": "67F4CFA6-CBE2-4915-931B-D43AFBB11F97", - "baseIconId": "B05E458D-886A-491D-9969-156562C52105", - "name": "human-male-male-child", - "codepoint": "F1C8F", - "aliases": [ - "family" - ], - "styles": [], - "version": "7.3.96", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0993FCF5-5C89-4F54-ABFC-310CDF2AED15", - "baseIconId": "B05E458D-886A-491D-9969-156562C52105", - "name": "human-non-binary", - "codepoint": "F1848", - "aliases": [ - "human-genderless", - "human-transgender" - ], - "styles": [ - "variant" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Michael Irigoyen" - }, - { - "id": "05DB88BC-FA28-4DF1-8308-541E338E0234", - "baseIconId": "1369FF9C-0E57-4644-BE89-7B5EED0131B0", - "name": "human-pregnant", - "codepoint": "F05CF", - "aliases": [ - "pregnant-woman" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "FAD84EF2-E1C0-4834-8FFD-677E424F2693", - "baseIconId": "FAD84EF2-E1C0-4834-8FFD-677E424F2693", - "name": "human-queue", - "codepoint": "F1571", - "aliases": [ - "human-line" - ], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Haley Halcyon" - }, - { - "id": "08B3209B-7D10-4C1C-9962-E4DAC71DD06F", - "baseIconId": "08B3209B-7D10-4C1C-9962-E4DAC71DD06F", - "name": "human-scooter", - "codepoint": "F11E9", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Sport", - "Transportation + Other", - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "6248F0D3-5347-4AEF-A1FE-903BDD78D4AA", - "baseIconId": "B05E458D-886A-491D-9969-156562C52105", - "name": "human-walker", - "codepoint": "F1B71", - "aliases": [], - "styles": [], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "People \/ Family", - "Medical \/ Hospital" - ], - "author": "Google" - }, - { - "id": "B0529853-AE3D-475C-94EB-0C775E934806", - "baseIconId": "B05E458D-886A-491D-9969-156562C52105", - "name": "human-wheelchair", - "codepoint": "F138D", - "aliases": [ - "human-accessible" - ], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [ - "People \/ Family", - "Medical \/ Hospital" - ], - "author": "Moma Design Studio" - }, - { - "id": "D85C481D-1B39-47A3-92D6-975E862AF70A", - "baseIconId": "D85C481D-1B39-47A3-92D6-975E862AF70A", - "name": "human-white-cane", - "codepoint": "F1981", - "aliases": [ - "human-blind" - ], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "People \/ Family", - "Medical \/ Hospital" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9A2A1178-7E30-49E7-A639-2D16464EA7EA", - "baseIconId": "9A2A1178-7E30-49E7-A639-2D16464EA7EA", - "name": "humble-bundle", - "codepoint": "F0744", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "EE07113F-BD81-424C-B228-7EC802F7CFB2", - "baseIconId": "EE07113F-BD81-424C-B228-7EC802F7CFB2", - "name": "hvac", - "codepoint": "F1352", - "aliases": [ - "heating", - "ventilation", - "air-conditioning" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "30019019-F955-40EE-B811-C634718E6FAD", - "baseIconId": "EE07113F-BD81-424C-B228-7EC802F7CFB2", - "name": "hvac-off", - "codepoint": "F159E", - "aliases": [ - "heating-off", - "ventilation-off", - "air-conditioning-off" - ], - "styles": [ - "off" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "FBFEC6FC-C311-4B53-8445-18B604AA7C12", - "baseIconId": "FBFEC6FC-C311-4B53-8445-18B604AA7C12", - "name": "hydraulic-oil-level", - "codepoint": "F1324", - "aliases": [], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "54AC2207-9F8D-4A1D-B8B4-ED626D0C8C38", - "baseIconId": "54AC2207-9F8D-4A1D-B8B4-ED626D0C8C38", - "name": "hydraulic-oil-temperature", - "codepoint": "F1325", - "aliases": [], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "97D5D644-DB37-4DA8-8B37-444B242A88EF", - "baseIconId": "97D5D644-DB37-4DA8-8B37-444B242A88EF", - "name": "hydro-power", - "codepoint": "F12E5", - "aliases": [ - "hydraulic-turbine", - "water-turbine", - "watermill" - ], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Device \/ Tech", - "Agriculture" - ], - "author": "Hans B\u00f6hm" - }, - { - "id": "B1407DA8-3E25-4878-A31F-34112A2D586B", - "baseIconId": "B1407DA8-3E25-4878-A31F-34112A2D586B", - "name": "hydrogen-station", - "codepoint": "F1894", - "aliases": [], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Hans B\u00f6hm" - }, - { - "id": "C8D5186F-BF39-40DA-9F7A-747DB166EABD", - "baseIconId": "C8D5186F-BF39-40DA-9F7A-747DB166EABD", - "name": "ice-cream", - "codepoint": "F082A", - "aliases": [], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Google" - }, - { - "id": "9620A768-2570-423E-8D3C-D65C9CACA7EC", - "baseIconId": "C8D5186F-BF39-40DA-9F7A-747DB166EABD", - "name": "ice-cream-off", - "codepoint": "F0E52", - "aliases": [], - "styles": [ - "off" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Simran" - }, - { - "id": "58AA127F-3523-4B91-AFED-018FA36D0876", - "baseIconId": "C8D5186F-BF39-40DA-9F7A-747DB166EABD", - "name": "ice-pop", - "codepoint": "F0EFD", - "aliases": [ - "popsicle" - ], - "styles": [], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Nikos Pappas" - }, - { - "id": "44423F53-F28B-49F5-86F1-D71FAC4B4C07", - "baseIconId": "44423F53-F28B-49F5-86F1-D71FAC4B4C07", - "name": "id-card", - "codepoint": "F0FC0", - "aliases": [], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "58048473-346E-4473-A18D-36C29B789322", - "baseIconId": "58048473-346E-4473-A18D-36C29B789322", - "name": "identifier", - "codepoint": "F0EFE", - "aliases": [ - "key" - ], - "styles": [], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Austin Andrews" - }, - { - "id": "86B5194A-AB94-4C20-8110-FA463B705B39", - "baseIconId": "86B5194A-AB94-4C20-8110-FA463B705B39", - "name": "ideogram-cjk", - "codepoint": "F1331", - "aliases": [ - "ideogram-chinese-japanese-korean", - "writing-system-cjk" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Haley Halcyon" - }, - { - "id": "1D315F53-EBD0-42C7-89D6-5E682B756B22", - "baseIconId": "86B5194A-AB94-4C20-8110-FA463B705B39", - "name": "ideogram-cjk-variant", - "codepoint": "F1332", - "aliases": [ - "ideogram-chinese-japanese-korean-variant", - "writing-system-cjk-variant" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Haley Halcyon" - }, - { - "id": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image", - "codepoint": "F02E9", - "aliases": [ - "insert-photo" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "DD2262AA-A145-4788-899D-46D807B4FC0D", - "baseIconId": "FFF82791-D12F-4643-8128-71CF5FE38C9B", - "name": "image-album", - "codepoint": "F02EA", - "aliases": [ - "photo-album", - "book-image" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "D23B9039-C6D4-45F8-B625-EEDE883FF5BD", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-area", - "codepoint": "F02EB", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "3BE3AA75-C604-45F3-9DD3-5E8731201F08", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-area-close", - "codepoint": "F02EC", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "F528B8DF-1FE3-47C0-B406-70FAC5718CE1", - "baseIconId": "F528B8DF-1FE3-47C0-B406-70FAC5718CE1", - "name": "image-auto-adjust", - "codepoint": "F0FC1", - "aliases": [ - "image-filter" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "40DCC37F-8A3F-4C15-97E8-2AB88B4DC756", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-broken", - "codepoint": "F02ED", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "D243B11E-D824-4185-B14F-B1C53DB11C24", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-broken-variant", - "codepoint": "F02EE", - "aliases": [ - "broken-image" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "92E042AA-1660-4069-AA56-F2D749C778AF", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-check", - "codepoint": "F1B25", - "aliases": [], - "styles": [ - "check" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Andrej Sharapov" - }, - { - "id": "32FD6900-16FE-45E0-932C-EBCF6834ACA6", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-check-outline", - "codepoint": "F1B26", - "aliases": [], - "styles": [ - "check", - "outline" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Andrej Sharapov" - }, - { - "id": "3E168631-4E4A-47D7-839A-CEB6B4640510", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-edit", - "codepoint": "F11E3", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "frankgrinaert" - }, - { - "id": "DD3FFC3D-A4AF-4F1D-8239-8F5195BC4C29", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-edit-outline", - "codepoint": "F11E4", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7D3932BA-9061-40D7-B624-044EE7A7B445", - "baseIconId": "7D3932BA-9061-40D7-B624-044EE7A7B445", - "name": "image-filter-black-white", - "codepoint": "F02F0", - "aliases": [ - "filter-b-and-w" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "E3745997-1AD2-4D79-83FE-72ADE96E3C69", - "baseIconId": "E3745997-1AD2-4D79-83FE-72ADE96E3C69", - "name": "image-filter-center-focus", - "codepoint": "F02F1", - "aliases": [ - "image-filter-centre-focus" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "3A8D45DA-5897-4B18-BDA5-951967BD4CF8", - "baseIconId": "3A8D45DA-5897-4B18-BDA5-951967BD4CF8", - "name": "image-filter-center-focus-strong", - "codepoint": "F0EFF", - "aliases": [], - "styles": [], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "0012643E-5753-42C0-A1CF-E4FBB5D5E311", - "baseIconId": "0012643E-5753-42C0-A1CF-E4FBB5D5E311", - "name": "image-filter-center-focus-strong-outline", - "codepoint": "F0F00", - "aliases": [], - "styles": [], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "50F3F396-4286-4D09-B726-4F626649BC04", - "baseIconId": "50F3F396-4286-4D09-B726-4F626649BC04", - "name": "image-filter-center-focus-weak", - "codepoint": "F02F2", - "aliases": [ - "image-filter-centre-focus-weak" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "882F82B8-EDF8-4F1A-A6BA-9C6DAEDBB259", - "baseIconId": "882F82B8-EDF8-4F1A-A6BA-9C6DAEDBB259", - "name": "image-filter-drama", - "codepoint": "F02F3", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography", - "Nature", - "Cloud" - ], - "author": "Google" - }, - { - "id": "D4F6DC2A-643B-4690-8E0A-BF56C4585BC4", - "baseIconId": "882F82B8-EDF8-4F1A-A6BA-9C6DAEDBB259", - "name": "image-filter-drama-outline", - "codepoint": "F1BFF", - "aliases": [], - "styles": [ - "outline" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Photography", - "Nature", - "Cloud" - ], - "author": "Google" - }, - { - "id": "8EC8847F-E96F-4D14-BF88-F4BE47856865", - "baseIconId": "8EC8847F-E96F-4D14-BF88-F4BE47856865", - "name": "image-filter-frames", - "codepoint": "F02F4", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "999CF81E-71B7-48E1-8B8F-70FDE391F647", - "baseIconId": "999CF81E-71B7-48E1-8B8F-70FDE391F647", - "name": "image-filter-hdr", - "codepoint": "F02F5", - "aliases": [ - "mountain", - "landscape" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography", - "Nature" - ], - "author": "Google" - }, - { - "id": "45B91FE5-E3A6-44A3-B89E-5AE492BE231A", - "baseIconId": "999CF81E-71B7-48E1-8B8F-70FDE391F647", - "name": "image-filter-hdr-outline", - "codepoint": "F1C64", - "aliases": [ - "mountain-outline", - "landscape-outline" - ], - "styles": [ - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Photography", - "Nature" - ], - "author": "Jeff Anders" - }, - { - "id": "56164312-7555-4017-8A1A-48954BE7F7C5", - "baseIconId": "BCCF75AE-F73D-4B7A-BDFD-9E767DED0B28", - "name": "image-filter-none", - "codepoint": "F02F6", - "aliases": [], - "styles": [ - "multiple", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "368537EA-9261-4097-A1FA-D33EE48A7D59", - "baseIconId": "368537EA-9261-4097-A1FA-D33EE48A7D59", - "name": "image-filter-tilt-shift", - "codepoint": "F02F7", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "0E6F8B1C-14D2-4A98-9414-FFC4B2146748", - "baseIconId": "0E6F8B1C-14D2-4A98-9414-FFC4B2146748", - "name": "image-filter-vintage", - "codepoint": "F02F8", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography", - "Nature" - ], - "author": "Google" - }, - { - "id": "27E31ADA-EF15-4A4E-A17A-45F4C032256F", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-frame", - "codepoint": "F0E49", - "aliases": [ - "hallway", - "foyer", - "entry-room" - ], - "styles": [], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "77796DB4-93FF-45E6-AC26-AE74713E6758", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-lock", - "codepoint": "F1AB0", - "aliases": [ - "image-secure" - ], - "styles": [ - "lock" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Lock", - "Photography" - ], - "author": "Simran" - }, - { - "id": "1F5591F3-542A-4369-9F1B-721E54C513B2", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-lock-outline", - "codepoint": "F1AB1", - "aliases": [ - "image-secure-outline" - ], - "styles": [ - "lock", - "outline" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Photography", - "Lock" - ], - "author": "Simran" - }, - { - "id": "39EFA2D6-FC32-491C-8ABE-384AA47B94D3", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-marker", - "codepoint": "F177B", - "aliases": [ - "image-location" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "754F7051-3979-499F-B7E6-9513619D7609", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-marker-outline", - "codepoint": "F177C", - "aliases": [ - "image-location-outline" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "ED40AC55-00BA-4086-8906-1FA1EDA65839", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-minus", - "codepoint": "F1419", - "aliases": [], - "styles": [ - "minus" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "293B433C-5A31-4802-9516-6CF1D649158A", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-minus-outline", - "codepoint": "F1B47", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "4E0C0467-BF17-4C60-8834-4627DE6D79D5", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-move", - "codepoint": "F09F8", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "E7CA4672-9863-4015-B3C5-D2C8DEBD2F2F", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-multiple", - "codepoint": "F02F9", - "aliases": [ - "collections", - "photo-library", - "images" - ], - "styles": [ - "multiple" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "BCCF75AE-F73D-4B7A-BDFD-9E767DED0B28", - "baseIconId": "BCCF75AE-F73D-4B7A-BDFD-9E767DED0B28", - "name": "image-multiple-outline", - "codepoint": "F02EF", - "aliases": [ - "image-filter", - "images-outline" - ], - "styles": [ - "multiple", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "73924BC5-DB17-49B2-BB88-E40C1E45E010", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-off", - "codepoint": "F082B", - "aliases": [], - "styles": [ - "off" - ], - "version": "2.1.19", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "8C0E595D-8D0E-4D1E-8E62-850DB25103B3", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-off-outline", - "codepoint": "F11D1", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [], - "author": "frankgrinaert" - }, - { - "id": "F6A782BB-5FAB-4FC4-A61B-A0F399A0A5AC", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-outline", - "codepoint": "F0976", - "aliases": [], - "styles": [ - "outline" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "8D6FECF2-E4C4-4858-81E2-502104BE2E55", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-plus", - "codepoint": "F087C", - "aliases": [ - "image-add" - ], - "styles": [ - "plus" - ], - "version": "2.1.99", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "EAB45270-C25D-4493-A71B-9268CC7D2E88", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-plus-outline", - "codepoint": "F1B46", - "aliases": [ - "image-add-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "F91A5FFA-04D3-40A5-AFD1-C7F79D1CE20D", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-refresh", - "codepoint": "F19FE", - "aliases": [], - "styles": [ - "refresh" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Colton Wiscombe" - }, - { - "id": "243DB52F-654F-488F-86DB-BD7EA47B3BA8", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-refresh-outline", - "codepoint": "F19FF", - "aliases": [], - "styles": [ - "outline", - "refresh" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Colton Wiscombe" - }, - { - "id": "95B5A056-E7FE-4C3F-95A6-1E826DD80076", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-remove", - "codepoint": "F1418", - "aliases": [], - "styles": [ - "remove" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "BC17E5CC-2CF0-4BB8-B467-2672A62E9CCA", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-remove-outline", - "codepoint": "F1B48", - "aliases": [], - "styles": [ - "outline", - "remove" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Colton Wiscombe" - }, - { - "id": "F00F5E5A-AD8A-440B-9B31-00D266A538A8", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-search", - "codepoint": "F0977", - "aliases": [], - "styles": [ - "search" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "A36A87C1-E35B-4BCA-AD53-700F6F937EE8", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-search-outline", - "codepoint": "F0978", - "aliases": [], - "styles": [ - "outline", - "search" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "84644CCB-31DB-471C-AF2C-6E8AD1DE94CA", - "baseIconId": "84644CCB-31DB-471C-AF2C-6E8AD1DE94CA", - "name": "image-size-select-actual", - "codepoint": "F0C8D", - "aliases": [], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "58C0E0A5-F760-4893-99C4-3C1E92DBC6DB", - "baseIconId": "84644CCB-31DB-471C-AF2C-6E8AD1DE94CA", - "name": "image-size-select-large", - "codepoint": "F0C8E", - "aliases": [], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "A0771C0A-E46B-4985-98D8-C6EC748D03A2", - "baseIconId": "84644CCB-31DB-471C-AF2C-6E8AD1DE94CA", - "name": "image-size-select-small", - "codepoint": "F0C8F", - "aliases": [], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "8597FAE8-2093-48A1-8B87-9717D9AB968B", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-sync", - "codepoint": "F1A00", - "aliases": [], - "styles": [ - "sync" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Colton Wiscombe" - }, - { - "id": "DB8F481F-1215-4093-8B6F-C50C34C93A4C", - "baseIconId": "3238BA72-FEE8-4C90-A440-AD701359A7BC", - "name": "image-sync-outline", - "codepoint": "F1A01", - "aliases": [], - "styles": [ - "outline", - "sync" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Colton Wiscombe" - }, - { - "id": "E404BB7C-724B-4390-9DE4-D08DA29B151A", - "baseIconId": "E404BB7C-724B-4390-9DE4-D08DA29B151A", - "name": "image-text", - "codepoint": "F160D", - "aliases": [ - "image-description" - ], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "FB8BEE36-EF77-4820-92B3-5B4C4291D751", - "baseIconId": "FB8BEE36-EF77-4820-92B3-5B4C4291D751", - "name": "import", - "codepoint": "F02FA", - "aliases": [ - "input" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "4DDB79C2-C3AE-41DC-B560-AFBF3F689E86", - "baseIconId": "4DDB79C2-C3AE-41DC-B560-AFBF3F689E86", - "name": "inbox", - "codepoint": "F0687", - "aliases": [], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "A20D1ABC-DD99-404B-8BEE-967BB1C636B0", - "baseIconId": "4DDB79C2-C3AE-41DC-B560-AFBF3F689E86", - "name": "inbox-arrow-down", - "codepoint": "F02FB", - "aliases": [ - "move-to-inbox" - ], - "styles": [ - "arrow" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "B7B431BB-E448-47F4-A7DC-03CCCA93C3D1", - "baseIconId": "4DDB79C2-C3AE-41DC-B560-AFBF3F689E86", - "name": "inbox-arrow-down-outline", - "codepoint": "F1270", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "5317ED5A-9D37-4C50-AA7D-83491547D214", - "baseIconId": "4DDB79C2-C3AE-41DC-B560-AFBF3F689E86", - "name": "inbox-arrow-up", - "codepoint": "F03D1", - "aliases": [ - "move-from-inbox" - ], - "styles": [ - "arrow" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "B84765D3-091A-483D-A788-C0269238CF6D", - "baseIconId": "4DDB79C2-C3AE-41DC-B560-AFBF3F689E86", - "name": "inbox-arrow-up-outline", - "codepoint": "F1271", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "1CB38744-AE8F-4B42-ACED-10749BBF81F5", - "baseIconId": "4DDB79C2-C3AE-41DC-B560-AFBF3F689E86", - "name": "inbox-full", - "codepoint": "F1272", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "BD7DE99A-F6EC-46CF-BE18-8371E6BCD9CA", - "baseIconId": "4DDB79C2-C3AE-41DC-B560-AFBF3F689E86", - "name": "inbox-full-outline", - "codepoint": "F1273", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "6FF18A17-48D4-4173-9CBD-8DB77F5A6E2A", - "baseIconId": "4DDB79C2-C3AE-41DC-B560-AFBF3F689E86", - "name": "inbox-multiple", - "codepoint": "F08B0", - "aliases": [ - "inboxes" - ], - "styles": [ - "multiple" - ], - "version": "2.2.43", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "AA22D582-9319-4AB0-BBF8-08824D7605B8", - "baseIconId": "4DDB79C2-C3AE-41DC-B560-AFBF3F689E86", - "name": "inbox-multiple-outline", - "codepoint": "F0BA8", - "aliases": [ - "inboxes-outline" - ], - "styles": [ - "multiple", - "outline" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "7082C01E-4FF9-489E-BD05-53140FCD382A", - "baseIconId": "4DDB79C2-C3AE-41DC-B560-AFBF3F689E86", - "name": "inbox-outline", - "codepoint": "F1274", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "2166DBC6-19EC-4A1D-BE92-8366CEE53B8F", - "baseIconId": "4DDB79C2-C3AE-41DC-B560-AFBF3F689E86", - "name": "inbox-remove", - "codepoint": "F159F", - "aliases": [], - "styles": [ - "remove" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [], - "author": "Terren" - }, - { - "id": "628C4376-372F-4880-875B-DE838A6B4B70", - "baseIconId": "4DDB79C2-C3AE-41DC-B560-AFBF3F689E86", - "name": "inbox-remove-outline", - "codepoint": "F15A0", - "aliases": [], - "styles": [ - "outline", - "remove" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [], - "author": "Terren" - }, - { - "id": "1350E7BA-9354-4F62-9B21-0238E3DF4D81", - "baseIconId": "1350E7BA-9354-4F62-9B21-0238E3DF4D81", - "name": "incognito", - "codepoint": "F05F9", - "aliases": [ - "anonymous", - "spy" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Christopher Schreiner" - }, - { - "id": "80DE3C45-2A19-412F-9FA2-DCFB853F60ED", - "baseIconId": "1350E7BA-9354-4F62-9B21-0238E3DF4D81", - "name": "incognito-circle", - "codepoint": "F1421", - "aliases": [ - "anonymous-circle", - "spy-circle" - ], - "styles": [ - "circle" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "3F362E64-C60F-416B-834D-E5C2A88ED23F", - "baseIconId": "1350E7BA-9354-4F62-9B21-0238E3DF4D81", - "name": "incognito-circle-off", - "codepoint": "F1422", - "aliases": [ - "anonymous-circle-off", - "spy-circle-off" - ], - "styles": [ - "circle", - "off" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "26B94EEC-5090-4DF4-99FC-C4A90830720A", - "baseIconId": "1350E7BA-9354-4F62-9B21-0238E3DF4D81", - "name": "incognito-off", - "codepoint": "F0075", - "aliases": [ - "spy-off", - "anonymous-off" - ], - "styles": [ - "off" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "nilsfast" - }, - { - "id": "9B626C0C-73AD-4209-BEB6-70AE9BA4D1FF", - "baseIconId": "9B626C0C-73AD-4209-BEB6-70AE9BA4D1FF", - "name": "induction", - "codepoint": "F184C", - "aliases": [ - "ignition" - ], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "8C4EBD04-376D-41AC-86D3-2BBDD56768C7", - "baseIconId": "8C4EBD04-376D-41AC-86D3-2BBDD56768C7", - "name": "infinity", - "codepoint": "F06E4", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Austin Andrews" - }, - { - "id": "2BC4A4B6-119B-4637-BF3D-1FB9394E1F38", - "baseIconId": "2BC4A4B6-119B-4637-BF3D-1FB9394E1F38", - "name": "information", - "codepoint": "F02FC", - "aliases": [ - "about", - "information-circle", - "info-circle", - "about-circle", - "info" - ], - "styles": [ - "circle" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Google" - }, - { - "id": "7B6B57AD-05FF-4D58-ADC5-EE9E2DAF5D53", - "baseIconId": "2BC4A4B6-119B-4637-BF3D-1FB9394E1F38", - "name": "information-box", - "codepoint": "F1C65", - "aliases": [ - "info-box" - ], - "styles": [ - "box" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Jeff Anders" - }, - { - "id": "AAB1D0C8-033F-4C5F-8ACD-6620947D9858", - "baseIconId": "2BC4A4B6-119B-4637-BF3D-1FB9394E1F38", - "name": "information-box-outline", - "codepoint": "F1C66", - "aliases": [ - "info-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Jeff Anders" - }, - { - "id": "68E3EA61-207C-444B-9CC5-8A7016D9953C", - "baseIconId": "2BC4A4B6-119B-4637-BF3D-1FB9394E1F38", - "name": "information-off", - "codepoint": "F178C", - "aliases": [ - "info-off", - "info-circle-off", - "information-circle-off" - ], - "styles": [ - "circle", - "off" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "25B8EEBF-60AA-422C-8E9C-E8D6004E9614", - "baseIconId": "2BC4A4B6-119B-4637-BF3D-1FB9394E1F38", - "name": "information-off-outline", - "codepoint": "F178D", - "aliases": [ - "info-circle-off-outline", - "information-circle-off-outline", - "information-off-outline", - "info-off-outline" - ], - "styles": [ - "circle", - "off", - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "F7C01A96-16E0-44C0-A261-2CF22D056A7F", - "baseIconId": "2BC4A4B6-119B-4637-BF3D-1FB9394E1F38", - "name": "information-outline", - "codepoint": "F02FD", - "aliases": [ - "info-outline", - "about-outline", - "information-circle-outline", - "info-circle-outline", - "about-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Google" - }, - { - "id": "5E1C3338-5309-4631-A9A9-9D41E4CEC8A7", - "baseIconId": "2BC4A4B6-119B-4637-BF3D-1FB9394E1F38", - "name": "information-slab-box", - "codepoint": "F1C67", - "aliases": [ - "info-slab-box" - ], - "styles": [ - "box", - "variant" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Jeff Anders" - }, - { - "id": "996F0E18-7078-44A0-A0DC-F2A829210F07", - "baseIconId": "2BC4A4B6-119B-4637-BF3D-1FB9394E1F38", - "name": "information-slab-box-outline", - "codepoint": "F1C68", - "aliases": [ - "info-slab-box-outline" - ], - "styles": [ - "box", - "outline", - "variant" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Jeff Anders" - }, - { - "id": "7AF3BC52-D506-4CCB-A813-A7785CFD6524", - "baseIconId": "2BC4A4B6-119B-4637-BF3D-1FB9394E1F38", - "name": "information-slab-circle", - "codepoint": "F1C69", - "aliases": [ - "info-slab-circle" - ], - "styles": [ - "circle", - "variant" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Jeff Anders" - }, - { - "id": "0A06A44E-09F4-491E-B221-24E401CA3DDB", - "baseIconId": "2BC4A4B6-119B-4637-BF3D-1FB9394E1F38", - "name": "information-slab-circle-outline", - "codepoint": "F1C6A", - "aliases": [ - "info-slab-circle-outline" - ], - "styles": [ - "circle", - "outline", - "variant" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Jeff Anders" - }, - { - "id": "ACA42E0C-6EEF-47B6-8824-FD916C58E87F", - "baseIconId": "2BC4A4B6-119B-4637-BF3D-1FB9394E1F38", - "name": "information-slab-symbol", - "codepoint": "F1C6B", - "aliases": [ - "info-slab-symbol" - ], - "styles": [ - "variant" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Jeff Anders" - }, - { - "id": "EAA6E06D-B798-4198-BF74-3B31F564A807", - "baseIconId": "2BC4A4B6-119B-4637-BF3D-1FB9394E1F38", - "name": "information-symbol", - "codepoint": "F1C6C", - "aliases": [ - "info-symbol" - ], - "styles": [], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Jeff Anders" - }, - { - "id": "D991D5FA-BD60-48E1-979D-A103D005725A", - "baseIconId": "2BC4A4B6-119B-4637-BF3D-1FB9394E1F38", - "name": "information-variant", - "codepoint": "F064E", - "aliases": [ - "info-variant", - "about-variant", - "information-serif-symbol", - "info-variant-symbol" - ], - "styles": [ - "variant" - ], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "A146B034-84AF-47AD-BA0F-C2D779C95356", - "baseIconId": "2BC4A4B6-119B-4637-BF3D-1FB9394E1F38", - "name": "information-variant-box", - "codepoint": "F1C6D", - "aliases": [ - "info-variant-box", - "information-serif-box", - "info-serif-box" - ], - "styles": [ - "box", - "variant" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Jeff Anders" - }, - { - "id": "4D7338FF-73D3-49EC-A9A8-070039557830", - "baseIconId": "2BC4A4B6-119B-4637-BF3D-1FB9394E1F38", - "name": "information-variant-box-outline", - "codepoint": "F1C6E", - "aliases": [ - "info-variant-box-outline", - "information-serif-box-outline", - "info-serif-box-outline" - ], - "styles": [ - "box", - "outline", - "variant" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Jeff Anders" - }, - { - "id": "5569AF9F-4D90-4D8B-91B3-EBBCFD5644AB", - "baseIconId": "2BC4A4B6-119B-4637-BF3D-1FB9394E1F38", - "name": "information-variant-circle", - "codepoint": "F1C6F", - "aliases": [ - "information-serif-circle", - "info-serif-circle", - "info-variant-circle" - ], - "styles": [ - "circle", - "variant" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Jeff Anders" - }, - { - "id": "1100F1C0-2FFF-49ED-99C3-AE0A2F0ECFF7", - "baseIconId": "2BC4A4B6-119B-4637-BF3D-1FB9394E1F38", - "name": "information-variant-circle-outline", - "codepoint": "F1C70", - "aliases": [ - "information-serif-circle-outline", - "info-variant-circle-outline", - "info-serif-circle-outline" - ], - "styles": [ - "circle", - "outline", - "variant" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Jeff Anders" - }, - { - "id": "2AA07220-461B-4070-AA95-17DEFE501444", - "baseIconId": "2AA07220-461B-4070-AA95-17DEFE501444", - "name": "instagram", - "codepoint": "F02FE", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "7A8E4735-E738-4ECE-8386-889694014C22", - "baseIconId": "7A8E4735-E738-4ECE-8386-889694014C22", - "name": "instrument-triangle", - "codepoint": "F104E", - "aliases": [ - "dinner-bell" - ], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D9D79C34-BE5A-4EA2-BB40-07E941C1632B", - "baseIconId": "D9D79C34-BE5A-4EA2-BB40-07E941C1632B", - "name": "integrated-circuit-chip", - "codepoint": "F1913", - "aliases": [ - "icc", - "chip" - ], - "styles": [], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Jeff Anders" - }, - { - "id": "2B0100AC-D0EB-4B85-A9AB-EB921C9A65AC", - "baseIconId": "2B0100AC-D0EB-4B85-A9AB-EB921C9A65AC", - "name": "invert-colors", - "codepoint": "F0301", - "aliases": [ - "invert-colours" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Color" - ], - "author": "Google" - }, - { - "id": "B3F155FA-57B1-4781-AC45-98A1A47673DC", - "baseIconId": "2B0100AC-D0EB-4B85-A9AB-EB921C9A65AC", - "name": "invert-colors-off", - "codepoint": "F0E4A", - "aliases": [ - "invert-colours-off" - ], - "styles": [ - "off" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Color" - ], - "author": "Google" - }, - { - "id": "A360D72F-7DC7-4E24-B7F0-1856C918CB8A", - "baseIconId": "A360D72F-7DC7-4E24-B7F0-1856C918CB8A", - "name": "iobroker", - "codepoint": "F12E8", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "4560EF32-158B-40B1-829E-A078219A808A", - "baseIconId": "4560EF32-158B-40B1-829E-A078219A808A", - "name": "ip", - "codepoint": "F0A5F", - "aliases": [ - "internet-protocol" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "54CCA164-149B-4050-9747-529EF134460A", - "baseIconId": "4560EF32-158B-40B1-829E-A078219A808A", - "name": "ip-network", - "codepoint": "F0A60", - "aliases": [], - "styles": [ - "network" - ], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "BB20E65D-DA61-4A5E-8B2E-52CB92DE3771", - "baseIconId": "4560EF32-158B-40B1-829E-A078219A808A", - "name": "ip-network-outline", - "codepoint": "F0C90", - "aliases": [], - "styles": [ - "network", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "C251F57E-6443-4109-A61E-2F98D6609A47", - "baseIconId": "4560EF32-158B-40B1-829E-A078219A808A", - "name": "ip-outline", - "codepoint": "F1982", - "aliases": [ - "internet-protocol-outline" - ], - "styles": [ - "outline" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "63BFCC93-117D-45ED-8E42-4019C6D7B970", - "baseIconId": "63BFCC93-117D-45ED-8E42-4019C6D7B970", - "name": "ipod", - "codepoint": "F0C91", - "aliases": [ - "apple-ipod" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "43DA7407-CFBA-44CE-9857-D75DF5581CE2", - "baseIconId": "43DA7407-CFBA-44CE-9857-D75DF5581CE2", - "name": "iron", - "codepoint": "F1824", - "aliases": [ - "flatiron", - "smoothing-iron" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Clothing" - ], - "author": "Google" - }, - { - "id": "60A790B9-4A75-4778-98A4-84C46B827924", - "baseIconId": "60A790B9-4A75-4778-98A4-84C46B827924", - "name": "iron-board", - "codepoint": "F1838", - "aliases": [], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Clothing" - ], - "author": "Colton Wiscombe" - }, - { - "id": "82FEA1DA-69DE-436E-9D68-9116ADBE7D9B", - "baseIconId": "43DA7407-CFBA-44CE-9857-D75DF5581CE2", - "name": "iron-outline", - "codepoint": "F1825", - "aliases": [ - "flatiron-outline", - "smoothing-iron-outline" - ], - "styles": [ - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Clothing" - ], - "author": "Google" - }, - { - "id": "A39024B8-5991-409C-8E68-DC9562D52F86", - "baseIconId": "A39024B8-5991-409C-8E68-DC9562D52F86", - "name": "island", - "codepoint": "F104F", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Places" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0921F3AE-3BFF-4913-BB68-CB48587D14E4", - "baseIconId": "0921F3AE-3BFF-4913-BB68-CB48587D14E4", - "name": "iv-bag", - "codepoint": "F10B9", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5F75012D-D248-4275-B274-6D6AB3B95F3B", - "baseIconId": "5F75012D-D248-4275-B274-6D6AB3B95F3B", - "name": "jabber", - "codepoint": "F0DD5", - "aliases": [], - "styles": [], - "version": "3.5.94", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "2C0278A5-D43D-4B8B-8870-878BEAF6BE17", - "baseIconId": "2C0278A5-D43D-4B8B-8870-878BEAF6BE17", - "name": "jeepney", - "codepoint": "F0302", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Austin Andrews" - }, - { - "id": "2F73C05F-4D6E-49B3-B41B-BCDA372E1774", - "baseIconId": "2F73C05F-4D6E-49B3-B41B-BCDA372E1774", - "name": "jellyfish", - "codepoint": "F0F01", - "aliases": [], - "styles": [], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Simran" - }, - { - "id": "4F49A0D7-8E63-411E-97E0-7CA054831A38", - "baseIconId": "2F73C05F-4D6E-49B3-B41B-BCDA372E1774", - "name": "jellyfish-outline", - "codepoint": "F0F02", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Simran" - }, - { - "id": "2F0CB359-6C54-4723-9E8D-94481F0A8E30", - "baseIconId": "2F0CB359-6C54-4723-9E8D-94481F0A8E30", - "name": "jira", - "codepoint": "F0303", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "3A14C142-9D2F-44BC-882E-333745FACAA3", - "baseIconId": "3A14C142-9D2F-44BC-882E-333745FACAA3", - "name": "jquery", - "codepoint": "F087D", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "B6B10BEF-B1E3-43D7-AAAA-85566157B30B", - "baseIconId": "B6B10BEF-B1E3-43D7-AAAA-85566157B30B", - "name": "jsfiddle", - "codepoint": "F0304", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "FC2D912E-451A-4AE8-8399-67F116ED12D9", - "baseIconId": "FC2D912E-451A-4AE8-8399-67F116ED12D9", - "name": "jump-rope", - "codepoint": "F12FF", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Michael Irigoyen" - }, - { - "id": "24CB8442-6875-4A22-A265-0C625118C7E7", - "baseIconId": "24CB8442-6875-4A22-A265-0C625118C7E7", - "name": "kabaddi", - "codepoint": "F0D87", - "aliases": [ - "wrestling", - "human-kabaddi" - ], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Sport", - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "70EC6F3B-31E9-4F1A-8E48-408CEB706FB8", - "baseIconId": "70EC6F3B-31E9-4F1A-8E48-408CEB706FB8", - "name": "kangaroo", - "codepoint": "F1558", - "aliases": [ - "marsupial" - ], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Colton Wiscombe" - }, - { - "id": "85144563-B019-4B8A-AB76-3DE0797D517E", - "baseIconId": "85144563-B019-4B8A-AB76-3DE0797D517E", - "name": "karate", - "codepoint": "F082C", - "aliases": [ - "martial-arts", - "kickboxing", - "human-karate" - ], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Sport", - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "21C7383B-5839-4F3E-A4EC-81A9980F531B", - "baseIconId": "21C7383B-5839-4F3E-A4EC-81A9980F531B", - "name": "kayaking", - "codepoint": "F08AF", - "aliases": [ - "human-kayaking" - ], - "styles": [], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Sport", - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "EEF9C07A-019A-49B4-805D-0DF8601F09DF", - "baseIconId": "EEF9C07A-019A-49B4-805D-0DF8601F09DF", - "name": "keg", - "codepoint": "F0305", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Austin Andrews" - }, - { - "id": "C4476901-9B29-410C-BCA7-67814F5421B4", - "baseIconId": "C4476901-9B29-410C-BCA7-67814F5421B4", - "name": "kettle", - "codepoint": "F05FA", - "aliases": [ - "tea-kettle", - "kettle-full", - "tea-kettle-full" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation", - "Food \/ Drink" - ], - "author": "Simran" - }, - { - "id": "123DA4E5-7243-4495-8CE4-2CDA32A65C01", - "baseIconId": "C4476901-9B29-410C-BCA7-67814F5421B4", - "name": "kettle-alert", - "codepoint": "F1317", - "aliases": [ - "tea-kettle-alert", - "kettle-full-alert", - "tea-kettle-full-alert" - ], - "styles": [ - "alert" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Alert \/ Error", - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "4F1F1AC0-68D1-4C74-8F03-DF6EBC2C8B29", - "baseIconId": "C4476901-9B29-410C-BCA7-67814F5421B4", - "name": "kettle-alert-outline", - "codepoint": "F1318", - "aliases": [ - "tea-kettle-alert-outline", - "kettle-empty-alert", - "tea-kettle-empty-alert" - ], - "styles": [ - "alert", - "outline" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Alert \/ Error", - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A28C7FA8-2D3A-482A-ADC8-46391CF201E1", - "baseIconId": "C4476901-9B29-410C-BCA7-67814F5421B4", - "name": "kettle-off", - "codepoint": "F131B", - "aliases": [ - "tea-kettle-off", - "tea-kettle-full-off", - "kettle-full-off" - ], - "styles": [ - "off" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "15C6F7FE-65D4-4116-AF5C-7A171407E460", - "baseIconId": "C4476901-9B29-410C-BCA7-67814F5421B4", - "name": "kettle-off-outline", - "codepoint": "F131C", - "aliases": [ - "tea-kettle-off-outline", - "kettle-empty-off", - "tea-kettle-empty-off" - ], - "styles": [ - "off", - "outline" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "FCE0A2B1-414F-4E9F-AF73-F878AE890F38", - "baseIconId": "C4476901-9B29-410C-BCA7-67814F5421B4", - "name": "kettle-outline", - "codepoint": "F0F56", - "aliases": [ - "tea-kettle-outline", - "kettle-empty", - "tea-kettle-empty" - ], - "styles": [ - "outline" - ], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Home Automation" - ], - "author": "Nick" - }, - { - "id": "30064882-D796-4A8E-8BD1-CAED8C9A49DA", - "baseIconId": "30064882-D796-4A8E-8BD1-CAED8C9A49DA", - "name": "kettle-pour-over", - "codepoint": "F173C", - "aliases": [], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "nilsfast" - }, - { - "id": "B976C4B0-D50C-49ED-B072-CD8E8A38A4AF", - "baseIconId": "C4476901-9B29-410C-BCA7-67814F5421B4", - "name": "kettle-steam", - "codepoint": "F1319", - "aliases": [ - "tea-kettle-steam", - "kettle-full-steam", - "tea-kettle-full-steam" - ], - "styles": [ - "variant" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "6D9BDFFF-63EE-45DE-A6F5-712B0EE12534", - "baseIconId": "C4476901-9B29-410C-BCA7-67814F5421B4", - "name": "kettle-steam-outline", - "codepoint": "F131A", - "aliases": [ - "tea-kettle-steam-outline", - "kettle-empty-steam", - "tea-kettle-empty-steam" - ], - "styles": [ - "outline", - "variant" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E3220479-E885-4EDD-9678-E60F670DFBAA", - "baseIconId": "E3220479-E885-4EDD-9678-E60F670DFBAA", - "name": "kettlebell", - "codepoint": "F1300", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D6208581-CF7F-438A-8578-B6ADEE462212", - "baseIconId": "D6208581-CF7F-438A-8578-B6ADEE462212", - "name": "key", - "codepoint": "F0306", - "aliases": [ - "vpn-key" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Google" - }, - { - "id": "62432542-54AA-42CB-B866-EFF80DDEB97C", - "baseIconId": "D6208581-CF7F-438A-8578-B6ADEE462212", - "name": "key-alert", - "codepoint": "F1983", - "aliases": [], - "styles": [ - "alert" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1038F818-4017-42DB-A290-6FD069D3989C", - "baseIconId": "D6208581-CF7F-438A-8578-B6ADEE462212", - "name": "key-alert-outline", - "codepoint": "F1984", - "aliases": [], - "styles": [ - "alert", - "outline" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7A79C7BB-6669-46CA-8AB0-E3B537D83EA2", - "baseIconId": "D6208581-CF7F-438A-8578-B6ADEE462212", - "name": "key-arrow-right", - "codepoint": "F1312", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "80B6B5A5-0FE3-4CA0-924C-05311090832D", - "baseIconId": "D6208581-CF7F-438A-8578-B6ADEE462212", - "name": "key-chain", - "codepoint": "F1574", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Automotive", - "Home Automation" - ], - "author": "Mateo Silguero" - }, - { - "id": "01B0561A-56B4-4215-A811-1572D35331F6", - "baseIconId": "D6208581-CF7F-438A-8578-B6ADEE462212", - "name": "key-chain-variant", - "codepoint": "F1575", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Automotive", - "Home Automation" - ], - "author": "Mateo Silguero" - }, - { - "id": "FEEA71CA-4810-46DD-B459-6D9327720D17", - "baseIconId": "D6208581-CF7F-438A-8578-B6ADEE462212", - "name": "key-change", - "codepoint": "F0307", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "08C0F709-4E1C-4BFD-8CC6-BC12FE5CDD9B", - "baseIconId": "D6208581-CF7F-438A-8578-B6ADEE462212", - "name": "key-link", - "codepoint": "F119F", - "aliases": [ - "foreign-key", - "sql-foreign-key" - ], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [], - "author": "Haley Halcyon" - }, - { - "id": "F58302B9-82F4-46AC-9A60-4640CFCE33B2", - "baseIconId": "D6208581-CF7F-438A-8578-B6ADEE462212", - "name": "key-minus", - "codepoint": "F0308", - "aliases": [], - "styles": [ - "minus" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "83238148-C76D-4C83-904D-911A9E9C2715", - "baseIconId": "D6208581-CF7F-438A-8578-B6ADEE462212", - "name": "key-outline", - "codepoint": "F0DD6", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "000AAEC6-5E6C-40F4-B589-AE85920E7EC2", - "baseIconId": "D6208581-CF7F-438A-8578-B6ADEE462212", - "name": "key-plus", - "codepoint": "F0309", - "aliases": [ - "key-add" - ], - "styles": [ - "plus" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "5A1609F7-424E-417F-B1C4-7EDA3051A4BA", - "baseIconId": "D6208581-CF7F-438A-8578-B6ADEE462212", - "name": "key-remove", - "codepoint": "F030A", - "aliases": [], - "styles": [ - "remove" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "7C312A2D-A502-4F06-89D4-0783EADC3B3F", - "baseIconId": "D6208581-CF7F-438A-8578-B6ADEE462212", - "name": "key-star", - "codepoint": "F119E", - "aliases": [ - "primary-key", - "sql-primary-key", - "key-favorite" - ], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [], - "author": "Haley Halcyon" - }, - { - "id": "967692C3-B061-425E-A0E4-FF1F580275E5", - "baseIconId": "D6208581-CF7F-438A-8578-B6ADEE462212", - "name": "key-variant", - "codepoint": "F030B", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Austin Andrews" - }, - { - "id": "196889AF-CD00-44BC-BAD3-932B936E4EAE", - "baseIconId": "D6208581-CF7F-438A-8578-B6ADEE462212", - "name": "key-wireless", - "codepoint": "F0FC2", - "aliases": [], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "520C8488-DD34-43E1-AEA0-A188B2DE6B01", - "baseIconId": "520C8488-DD34-43E1-AEA0-A188B2DE6B01", - "name": "keyboard", - "codepoint": "F030C", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "21C8B558-8398-43E8-A79A-8BA99BE693D6", - "baseIconId": "21C8B558-8398-43E8-A79A-8BA99BE693D6", - "name": "keyboard-backspace", - "codepoint": "F030D", - "aliases": [ - "keyboard-clear", - "keyboard-erase" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "0F441009-7A1F-45BF-A239-B9591B0A5404", - "baseIconId": "0F441009-7A1F-45BF-A239-B9591B0A5404", - "name": "keyboard-caps", - "codepoint": "F030E", - "aliases": [ - "keyboard-capslock" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "8545C0A1-5625-422F-AF38-624FB54237D3", - "baseIconId": "520C8488-DD34-43E1-AEA0-A188B2DE6B01", - "name": "keyboard-close", - "codepoint": "F030F", - "aliases": [ - "keyboard-hide" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "6F1662E0-9571-4412-9075-6982D2636788", - "baseIconId": "520C8488-DD34-43E1-AEA0-A188B2DE6B01", - "name": "keyboard-close-outline", - "codepoint": "F1C00", - "aliases": [ - "keyboard-hide-outline" - ], - "styles": [ - "outline" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [], - "author": "mpardieck" - }, - { - "id": "3EB07099-2309-466E-8BC0-EA835C273E37", - "baseIconId": "3EB07099-2309-466E-8BC0-EA835C273E37", - "name": "keyboard-esc", - "codepoint": "F12B7", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "512A5D44-18A8-4644-AA17-E8E026E0F1B0", - "baseIconId": "512A5D44-18A8-4644-AA17-E8E026E0F1B0", - "name": "keyboard-f1", - "codepoint": "F12AB", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "29296B9C-9A28-4F04-A2AD-550CB1EC89E1", - "baseIconId": "29296B9C-9A28-4F04-A2AD-550CB1EC89E1", - "name": "keyboard-f10", - "codepoint": "F12B4", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "DDF92650-C04B-4826-BD5A-FB12B06F7E6E", - "baseIconId": "DDF92650-C04B-4826-BD5A-FB12B06F7E6E", - "name": "keyboard-f11", - "codepoint": "F12B5", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "7C97B45E-8039-41C4-A188-A21475A4FB3F", - "baseIconId": "7C97B45E-8039-41C4-A188-A21475A4FB3F", - "name": "keyboard-f12", - "codepoint": "F12B6", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "3DFC5B29-C785-4D97-A04D-E63FAD987C25", - "baseIconId": "3DFC5B29-C785-4D97-A04D-E63FAD987C25", - "name": "keyboard-f2", - "codepoint": "F12AC", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "7776F4B4-2F61-47FF-83F5-A768239E3F80", - "baseIconId": "7776F4B4-2F61-47FF-83F5-A768239E3F80", - "name": "keyboard-f3", - "codepoint": "F12AD", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "C227FD26-6801-4545-AC74-66C63B56807A", - "baseIconId": "C227FD26-6801-4545-AC74-66C63B56807A", - "name": "keyboard-f4", - "codepoint": "F12AE", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "C50601AF-7AD6-4677-B8B3-181B978613A8", - "baseIconId": "C50601AF-7AD6-4677-B8B3-181B978613A8", - "name": "keyboard-f5", - "codepoint": "F12AF", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "9B4318C8-A2CC-43A9-8706-C9D3DDF33D5E", - "baseIconId": "9B4318C8-A2CC-43A9-8706-C9D3DDF33D5E", - "name": "keyboard-f6", - "codepoint": "F12B0", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "DDE4A6E4-BDE8-4E63-8F77-E3D06BF29BF1", - "baseIconId": "DDE4A6E4-BDE8-4E63-8F77-E3D06BF29BF1", - "name": "keyboard-f7", - "codepoint": "F12B1", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "3392982E-1464-49EF-B22F-EE0FBA421D4E", - "baseIconId": "3392982E-1464-49EF-B22F-EE0FBA421D4E", - "name": "keyboard-f8", - "codepoint": "F12B2", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "BBFF3508-533C-4378-B9FC-60EC20CAB214", - "baseIconId": "BBFF3508-533C-4378-B9FC-60EC20CAB214", - "name": "keyboard-f9", - "codepoint": "F12B3", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "A7DFF78C-C6DD-4BB6-BBFA-A88242516A74", - "baseIconId": "520C8488-DD34-43E1-AEA0-A188B2DE6B01", - "name": "keyboard-off", - "codepoint": "F0310", - "aliases": [], - "styles": [ - "off" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "4DC89B68-BD60-4D89-BD32-F15C0CFCEF79", - "baseIconId": "520C8488-DD34-43E1-AEA0-A188B2DE6B01", - "name": "keyboard-off-outline", - "codepoint": "F0E4B", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "6E751B9F-72AD-4554-8C62-24E457B80FDB", - "baseIconId": "520C8488-DD34-43E1-AEA0-A188B2DE6B01", - "name": "keyboard-outline", - "codepoint": "F097B", - "aliases": [], - "styles": [ - "outline" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "7816CE91-EBD1-4136-8523-CF47F677F4C6", - "baseIconId": "7816CE91-EBD1-4136-8523-CF47F677F4C6", - "name": "keyboard-return", - "codepoint": "F0311", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "4894BA3C-C713-4ACA-9918-1AF74B5E5427", - "baseIconId": "520C8488-DD34-43E1-AEA0-A188B2DE6B01", - "name": "keyboard-settings", - "codepoint": "F09F9", - "aliases": [], - "styles": [ - "settings" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Richins" - }, - { - "id": "7D765BD9-7B7E-4288-89E5-4A74E72E1083", - "baseIconId": "520C8488-DD34-43E1-AEA0-A188B2DE6B01", - "name": "keyboard-settings-outline", - "codepoint": "F09FA", - "aliases": [], - "styles": [ - "outline", - "settings" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Richins" - }, - { - "id": "803E5E8E-04C6-41E1-9EE0-B8C3C723D507", - "baseIconId": "803E5E8E-04C6-41E1-9EE0-B8C3C723D507", - "name": "keyboard-space", - "codepoint": "F1050", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "D7C0D37A-BF75-4542-8AFF-614FA0EC498C", - "baseIconId": "D7C0D37A-BF75-4542-8AFF-614FA0EC498C", - "name": "keyboard-tab", - "codepoint": "F0312", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "CFF782E5-F36B-4F80-B105-68E6B4B91C64", - "baseIconId": "D7C0D37A-BF75-4542-8AFF-614FA0EC498C", - "name": "keyboard-tab-reverse", - "codepoint": "F0325", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "BCAA42FF-BF36-42D8-B8FD-5DE2968162D8", - "baseIconId": "520C8488-DD34-43E1-AEA0-A188B2DE6B01", - "name": "keyboard-variant", - "codepoint": "F0313", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "8F5B2685-A656-45ED-89C2-032E76322358", - "baseIconId": "8F5B2685-A656-45ED-89C2-032E76322358", - "name": "khanda", - "codepoint": "F10FD", - "aliases": [ - "sikh" - ], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Religion" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D881D589-79F0-4255-B050-13E396293D1F", - "baseIconId": "D881D589-79F0-4255-B050-13E396293D1F", - "name": "kickstarter", - "codepoint": "F0745", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "8B89609E-5F12-4A3B-99AE-F6698FEA48E4", - "baseIconId": "8B89609E-5F12-4A3B-99AE-F6698FEA48E4", - "name": "kite", - "codepoint": "F1985", - "aliases": [], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Google" - }, - { - "id": "C95E036C-B786-490E-B7A7-9704E049DCE1", - "baseIconId": "8B89609E-5F12-4A3B-99AE-F6698FEA48E4", - "name": "kite-outline", - "codepoint": "F1986", - "aliases": [], - "styles": [ - "outline" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Google" - }, - { - "id": "2B23BD24-9796-4D72-85CC-76BE23854F0F", - "baseIconId": "2B23BD24-9796-4D72-85CC-76BE23854F0F", - "name": "kitesurfing", - "codepoint": "F1744", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "1A131BAA-CFEE-41F3-9B15-01A4A9F1B341", - "baseIconId": "1A131BAA-CFEE-41F3-9B15-01A4A9F1B341", - "name": "klingon", - "codepoint": "F135B", - "aliases": [], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "AF35DB46-1B52-4721-8475-F3CD107325B4", - "baseIconId": "AF35DB46-1B52-4721-8475-F3CD107325B4", - "name": "knife", - "codepoint": "F09FB", - "aliases": [ - "silverware-knife", - "cutlery-knife" - ], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Augustin Ursu" - }, - { - "id": "D31C18C1-776C-4444-9A12-F2BD366CF929", - "baseIconId": "AF35DB46-1B52-4721-8475-F3CD107325B4", - "name": "knife-military", - "codepoint": "F09FC", - "aliases": [ - "dagger" - ], - "styles": [ - "variant" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Simran" - }, - { - "id": "BF72875E-F657-4469-B7B6-CC8116EC20D1", - "baseIconId": "BF72875E-F657-4469-B7B6-CC8116EC20D1", - "name": "knob", - "codepoint": "F1B96", - "aliases": [ - "volume-knob", - "volume-control", - "dial", - "tuner", - "switch", - "adjuster" - ], - "styles": [], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Audio" - ], - "author": "Michael Irigoyen" - }, - { - "id": "180CACBF-4272-4D07-B9A0-63A5625DCB0C", - "baseIconId": "180CACBF-4272-4D07-B9A0-63A5625DCB0C", - "name": "koala", - "codepoint": "F173F", - "aliases": [ - "marsupial", - "emoji-koala", - "emoticon-koala" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Claire Casaregola" - }, - { - "id": "AD953D07-5F33-439B-895F-7AD5615EA14A", - "baseIconId": "AD953D07-5F33-439B-895F-7AD5615EA14A", - "name": "kodi", - "codepoint": "F0314", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "9823C48B-5D2E-4058-9836-F2C6DCACAB71", - "baseIconId": "9823C48B-5D2E-4058-9836-F2C6DCACAB71", - "name": "kubernetes", - "codepoint": "F10FE", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "C749E06B-E75E-4D9B-97A6-47E9399D01FC", - "baseIconId": "C749E06B-E75E-4D9B-97A6-47E9399D01FC", - "name": "label", - "codepoint": "F0315", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "9373446C-95C3-4160-9CBC-FF1DEF5C9F28", - "baseIconId": "C749E06B-E75E-4D9B-97A6-47E9399D01FC", - "name": "label-multiple", - "codepoint": "F1375", - "aliases": [], - "styles": [ - "multiple" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "nilsfast" - }, - { - "id": "D504ED4D-5F02-4501-A223-59BF2D4CD9EB", - "baseIconId": "C749E06B-E75E-4D9B-97A6-47E9399D01FC", - "name": "label-multiple-outline", - "codepoint": "F1376", - "aliases": [], - "styles": [ - "multiple", - "outline" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "nilsfast" - }, - { - "id": "BCBB111E-0DF2-4498-831D-E547AE9EE0FB", - "baseIconId": "C749E06B-E75E-4D9B-97A6-47E9399D01FC", - "name": "label-off", - "codepoint": "F0ACB", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "94A3D797-3936-4FBE-A6B5-6C88934B40BD", - "baseIconId": "C749E06B-E75E-4D9B-97A6-47E9399D01FC", - "name": "label-off-outline", - "codepoint": "F0ACC", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "91C2FA0C-2273-42F9-ACBF-BD418B8F970D", - "baseIconId": "C749E06B-E75E-4D9B-97A6-47E9399D01FC", - "name": "label-outline", - "codepoint": "F0316", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "62FCE66D-4003-4B22-8C47-501947EA4CC8", - "baseIconId": "C749E06B-E75E-4D9B-97A6-47E9399D01FC", - "name": "label-percent", - "codepoint": "F12EA", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "7EBE7C17-4905-43F9-A084-0756FBB3905D", - "baseIconId": "C749E06B-E75E-4D9B-97A6-47E9399D01FC", - "name": "label-percent-outline", - "codepoint": "F12EB", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "3A54255E-EDE1-4622-87F4-9FCB31B1B688", - "baseIconId": "C749E06B-E75E-4D9B-97A6-47E9399D01FC", - "name": "label-variant", - "codepoint": "F0ACD", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "75106002-9EFE-4771-8B68-C60B60589C42", - "baseIconId": "C749E06B-E75E-4D9B-97A6-47E9399D01FC", - "name": "label-variant-outline", - "codepoint": "F0ACE", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "F2C62DAD-9011-4495-B542-87407FFB7EA1", - "baseIconId": "F2C62DAD-9011-4495-B542-87407FFB7EA1", - "name": "ladder", - "codepoint": "F15A2", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Michael Irigoyen" - }, - { - "id": "97AFF594-E421-4757-BE72-1D6C428E27AE", - "baseIconId": "97AFF594-E421-4757-BE72-1D6C428E27AE", - "name": "ladybug", - "codepoint": "F082D", - "aliases": [ - "bugfood", - "ladybird" - ], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Nature" - ], - "author": "Google" - }, - { - "id": "1815038E-B466-4F5F-91D9-9D03DDA6A9DA", - "baseIconId": "1815038E-B466-4F5F-91D9-9D03DDA6A9DA", - "name": "lambda", - "codepoint": "F0627", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Gaming \/ RPG", - "Math" - ], - "author": "Austin Andrews" - }, - { - "id": "A39CC0FD-32DA-4AB2-8483-9E4C4F03D220", - "baseIconId": "A39CC0FD-32DA-4AB2-8483-9E4C4F03D220", - "name": "lamp", - "codepoint": "F06B5", - "aliases": [], - "styles": [], - "version": "1.7.22", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "F2FF97D8-A51F-4F32-A18A-6A14437EF5CC", - "baseIconId": "A39CC0FD-32DA-4AB2-8483-9E4C4F03D220", - "name": "lamp-outline", - "codepoint": "F17D0", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9AC5919E-2271-42D0-A5FA-ACB9BE022547", - "baseIconId": "A39CC0FD-32DA-4AB2-8483-9E4C4F03D220", - "name": "lamps", - "codepoint": "F1576", - "aliases": [ - "lights" - ], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7BDA9890-697C-4E97-A604-D34803DAAD39", - "baseIconId": "A39CC0FD-32DA-4AB2-8483-9E4C4F03D220", - "name": "lamps-outline", - "codepoint": "F17D1", - "aliases": [ - "lights-outline" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A20B1B0B-DC60-4ED1-A7E6-F390BA31D613", - "baseIconId": "A20B1B0B-DC60-4ED1-A7E6-F390BA31D613", - "name": "lan", - "codepoint": "F0317", - "aliases": [ - "local-area-network" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "9DF15E25-DE45-4D9B-8E3B-EA6D643EA0CC", - "baseIconId": "A20B1B0B-DC60-4ED1-A7E6-F390BA31D613", - "name": "lan-check", - "codepoint": "F12AA", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "B52D6944-3AC2-4113-A91C-199C0CD577A6", - "baseIconId": "A20B1B0B-DC60-4ED1-A7E6-F390BA31D613", - "name": "lan-connect", - "codepoint": "F0318", - "aliases": [ - "local-area-network-connect" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "10DCD7DC-998B-4631-B8A6-A0D8C93412A3", - "baseIconId": "A20B1B0B-DC60-4ED1-A7E6-F390BA31D613", - "name": "lan-disconnect", - "codepoint": "F0319", - "aliases": [ - "local-area-network-disconnect" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "B5E302E3-DF81-430E-AAE0-4CAF44AFAD00", - "baseIconId": "A20B1B0B-DC60-4ED1-A7E6-F390BA31D613", - "name": "lan-pending", - "codepoint": "F031A", - "aliases": [ - "local-area-network-pending" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "A06B998D-336F-4FDC-A0C8-04BD7AE6AAB3", - "baseIconId": "A06B998D-336F-4FDC-A0C8-04BD7AE6AAB3", - "name": "land-fields", - "codepoint": "F1AB2", - "aliases": [], - "styles": [], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Agriculture" - ], - "author": "Jeff Anders" - }, - { - "id": "B6AD150F-5C19-421E-9A2A-D3F43F38D440", - "baseIconId": "B6AD150F-5C19-421E-9A2A-D3F43F38D440", - "name": "land-plots", - "codepoint": "F1AB3", - "aliases": [], - "styles": [], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Agriculture" - ], - "author": "Jeff Anders" - }, - { - "id": "9D236600-B0B0-41E8-9F93-91F0E97B3C81", - "baseIconId": "B6AD150F-5C19-421E-9A2A-D3F43F38D440", - "name": "land-plots-circle", - "codepoint": "F1AB4", - "aliases": [], - "styles": [], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Agriculture" - ], - "author": "Jeff Anders" - }, - { - "id": "B2285EFF-7160-43A7-8037-B3C1F96987D0", - "baseIconId": "B6AD150F-5C19-421E-9A2A-D3F43F38D440", - "name": "land-plots-circle-variant", - "codepoint": "F1AB5", - "aliases": [], - "styles": [ - "variant" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Agriculture" - ], - "author": "Jeff Anders" - }, - { - "id": "C0C79B16-C79F-430E-9C4F-6342B86421FB", - "baseIconId": "B6AD150F-5C19-421E-9A2A-D3F43F38D440", - "name": "land-plots-marker", - "codepoint": "F1C5D", - "aliases": [], - "styles": [ - "marker" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Agriculture" - ], - "author": "Jeff Anders" - }, - { - "id": "6D69ADDA-D5A1-47F9-9597-D4529C893789", - "baseIconId": "6D69ADDA-D5A1-47F9-9597-D4529C893789", - "name": "land-rows-horizontal", - "codepoint": "F1AB6", - "aliases": [], - "styles": [], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Agriculture" - ], - "author": "Jeff Anders" - }, - { - "id": "0CE60AA4-FF6E-4899-AE30-830BD1E4F898", - "baseIconId": "0CE60AA4-FF6E-4899-AE30-830BD1E4F898", - "name": "land-rows-vertical", - "codepoint": "F1AB7", - "aliases": [], - "styles": [], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Agriculture" - ], - "author": "Jeff Anders" - }, - { - "id": "AD048AA5-6C71-49DF-B5B2-427F634C3538", - "baseIconId": "AD048AA5-6C71-49DF-B5B2-427F634C3538", - "name": "landslide", - "codepoint": "F1A48", - "aliases": [ - "avalanche", - "mudslide" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Nature" - ], - "author": "Google" - }, - { - "id": "847329AA-B841-48A2-9700-6363FA219184", - "baseIconId": "AD048AA5-6C71-49DF-B5B2-427F634C3538", - "name": "landslide-outline", - "codepoint": "F1A49", - "aliases": [ - "avalanche-outline", - "mudslide-outline" - ], - "styles": [ - "outline" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Nature" - ], - "author": "Google" - }, - { - "id": "082F25B3-8413-4CC7-B908-8BBD40BB32D8", - "baseIconId": "082F25B3-8413-4CC7-B908-8BBD40BB32D8", - "name": "language-c", - "codepoint": "F0671", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "74446CD2-562D-44E7-AAC1-62D4CCDB9F43", - "baseIconId": "74446CD2-562D-44E7-AAC1-62D4CCDB9F43", - "name": "language-cpp", - "codepoint": "F0672", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "EFF1E516-3470-456C-AC79-0F9C82C79391", - "baseIconId": "EFF1E516-3470-456C-AC79-0F9C82C79391", - "name": "language-csharp", - "codepoint": "F031B", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "DA72E30D-C562-4E93-B8C8-CAFA686A1D23", - "baseIconId": "DA72E30D-C562-4E93-B8C8-CAFA686A1D23", - "name": "language-css3", - "codepoint": "F031C", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "F1DEF74B-8116-4E0E-98BE-97A699812E5A", - "baseIconId": "F1DEF74B-8116-4E0E-98BE-97A699812E5A", - "name": "language-fortran", - "codepoint": "F121A", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "ACAFCF05-E04D-4212-AB53-C72BD8DB5768", - "baseIconId": "ACAFCF05-E04D-4212-AB53-C72BD8DB5768", - "name": "language-go", - "codepoint": "F07D3", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "87E5CF33-FA30-4CCA-8FAD-AAD3D7C17904", - "baseIconId": "87E5CF33-FA30-4CCA-8FAD-AAD3D7C17904", - "name": "language-haskell", - "codepoint": "F0C92", - "aliases": [], - "styles": [], - "version": "3.2.89", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "98D9A5A1-626A-4273-B895-4C838936613C", - "baseIconId": "98D9A5A1-626A-4273-B895-4C838936613C", - "name": "language-html5", - "codepoint": "F031D", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "CF5C2532-318B-4866-B8CE-319601ADD95E", - "baseIconId": "CF5C2532-318B-4866-B8CE-319601ADD95E", - "name": "language-java", - "codepoint": "F0B37", - "aliases": [], - "styles": [], - "version": "2.8.94", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "9D3ED5EB-8951-4E75-A623-EEF618ED4172", - "baseIconId": "9D3ED5EB-8951-4E75-A623-EEF618ED4172", - "name": "language-javascript", - "codepoint": "F031E", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "D3EC3384-B91D-46C9-8D43-7D333DB2273D", - "baseIconId": "D3EC3384-B91D-46C9-8D43-7D333DB2273D", - "name": "language-kotlin", - "codepoint": "F1219", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "0B0DE3A6-7ED1-497C-BAF4-CDAA3F9713C9", - "baseIconId": "0B0DE3A6-7ED1-497C-BAF4-CDAA3F9713C9", - "name": "language-lua", - "codepoint": "F08B1", - "aliases": [], - "styles": [], - "version": "2.2.43", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "42875A08-46EC-4077-95A9-86D16888F2D4", - "baseIconId": "42875A08-46EC-4077-95A9-86D16888F2D4", - "name": "language-markdown", - "codepoint": "F0354", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Austin Andrews" - }, - { - "id": "A8970A35-C4F5-452B-B8CA-13BACF5C29F5", - "baseIconId": "42875A08-46EC-4077-95A9-86D16888F2D4", - "name": "language-markdown-outline", - "codepoint": "F0F5B", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "2A153653-6727-4DE1-95DC-AC6801A7DC01", - "baseIconId": "2A153653-6727-4DE1-95DC-AC6801A7DC01", - "name": "language-php", - "codepoint": "F031F", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "4E453C2B-40D4-4D60-8EAF-750091283FAC", - "baseIconId": "4E453C2B-40D4-4D60-8EAF-750091283FAC", - "name": "language-python", - "codepoint": "F0320", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Austin Andrews" - }, - { - "id": "2F197131-0666-4F07-8BDE-B6FB3C4BB39B", - "baseIconId": "2F197131-0666-4F07-8BDE-B6FB3C4BB39B", - "name": "language-r", - "codepoint": "F07D4", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "2BC47DF3-B959-44C0-BE1A-8D1EB0B18FEF", - "baseIconId": "2BC47DF3-B959-44C0-BE1A-8D1EB0B18FEF", - "name": "language-ruby", - "codepoint": "F0D2D", - "aliases": [], - "styles": [], - "version": "3.3.92", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "6898147E-618C-4A16-A06B-5270C63AAB2B", - "baseIconId": "6898147E-618C-4A16-A06B-5270C63AAB2B", - "name": "language-ruby-on-rails", - "codepoint": "F0ACF", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "D88C59AC-3310-4AA7-8432-BFA51BF2DCE4", - "baseIconId": "D88C59AC-3310-4AA7-8432-BFA51BF2DCE4", - "name": "language-rust", - "codepoint": "F1617", - "aliases": [], - "styles": [], - "version": "5.6.55", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "9F060254-CB0B-4DD9-87C5-BADAE8F2F8C4", - "baseIconId": "9F060254-CB0B-4DD9-87C5-BADAE8F2F8C4", - "name": "language-swift", - "codepoint": "F06E5", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "BFE7B3A3-4B61-4583-B22D-395E1FCE1A07", - "baseIconId": "BFE7B3A3-4B61-4583-B22D-395E1FCE1A07", - "name": "language-typescript", - "codepoint": "F06E6", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "1AC4596D-76B2-4F11-AF23-157736CABB86", - "baseIconId": "1AC4596D-76B2-4F11-AF23-157736CABB86", - "name": "language-xaml", - "codepoint": "F0673", - "aliases": [ - "xaml", - "microsoft-xaml" - ], - "styles": [], - "version": "1.6.50", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "A8B6481F-EE91-4F90-81AC-DEB8A096F45A", - "baseIconId": "A8B6481F-EE91-4F90-81AC-DEB8A096F45A", - "name": "laptop", - "codepoint": "F0322", - "aliases": [ - "computer" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Device \/ Tech", - "Home Automation" - ], - "author": "Google" - }, - { - "id": "63808048-CB00-41F6-AE66-3CB683197A9E", - "baseIconId": "A8B6481F-EE91-4F90-81AC-DEB8A096F45A", - "name": "laptop-account", - "codepoint": "F1A4A", - "aliases": [ - "teleconference", - "virtual-meeting", - "video-chat" - ], - "styles": [ - "account" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Account \/ User", - "Device \/ Tech" - ], - "author": "John Brissette" - }, - { - "id": "C9A08F85-B996-498D-ADDC-20A9B77B5489", - "baseIconId": "A8B6481F-EE91-4F90-81AC-DEB8A096F45A", - "name": "laptop-off", - "codepoint": "F06E7", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "Michael Richins" - }, - { - "id": "B8CF1F73-D020-43C3-83CB-34DB20820628", - "baseIconId": "B8CF1F73-D020-43C3-83CB-34DB20820628", - "name": "laravel", - "codepoint": "F0AD0", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "D202901C-7C33-48DF-925A-BB3506158E99", - "baseIconId": "D202901C-7C33-48DF-925A-BB3506158E99", - "name": "laser-pointer", - "codepoint": "F1484", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "5A1E325C-36BD-4BAC-BF4F-E349D9016B28", - "baseIconId": "5A1E325C-36BD-4BAC-BF4F-E349D9016B28", - "name": "lasso", - "codepoint": "F0F03", - "aliases": [], - "styles": [], - "version": "3.8.95", - "deprecated": false, - "tags": [], - "author": "Louistwee" - }, - { - "id": "65AC32C4-911E-4005-8BD1-663AE0000988", - "baseIconId": "65AC32C4-911E-4005-8BD1-663AE0000988", - "name": "lastpass", - "codepoint": "F0446", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "E72ED7A1-8133-4E0F-8EC6-28F053DF51B1", - "baseIconId": "E72ED7A1-8133-4E0F-8EC6-28F053DF51B1", - "name": "latitude", - "codepoint": "F0F57", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Michael Richins" - }, - { - "id": "ED8AF9CE-E555-49C9-8E7E-F9B85CD94CDF", - "baseIconId": "ED8AF9CE-E555-49C9-8E7E-F9B85CD94CDF", - "name": "launch", - "codepoint": "F0327", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "B1E2F856-253B-465C-861A-40C5C7D6C8DB", - "baseIconId": "B1E2F856-253B-465C-861A-40C5C7D6C8DB", - "name": "lava-lamp", - "codepoint": "F07D5", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "36A9B462-C487-458E-BFB6-2415739BC968", - "baseIconId": "36A9B462-C487-458E-BFB6-2415739BC968", - "name": "layers", - "codepoint": "F0328", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Geographic Information System" - ], - "author": "Google" - }, - { - "id": "D091B0C7-B40D-4F9B-836A-CCA680354ACE", - "baseIconId": "36A9B462-C487-458E-BFB6-2415739BC968", - "name": "layers-edit", - "codepoint": "F1892", - "aliases": [], - "styles": [ - "edit" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Geographic Information System", - "Edit \/ Modify" - ], - "author": "ButchMonkey" - }, - { - "id": "E72B7CB5-1A02-49C0-AC64-DF2559F026F1", - "baseIconId": "36A9B462-C487-458E-BFB6-2415739BC968", - "name": "layers-minus", - "codepoint": "F0E4C", - "aliases": [], - "styles": [ - "minus" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Geographic Information System" - ], - "author": "Austin Andrews" - }, - { - "id": "1ADB303D-B8D9-49EF-8EB0-C02AFD269F02", - "baseIconId": "36A9B462-C487-458E-BFB6-2415739BC968", - "name": "layers-off", - "codepoint": "F0329", - "aliases": [ - "layers-clear" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Geographic Information System" - ], - "author": "Google" - }, - { - "id": "FAC5EA16-5C62-49FA-8BE4-7D797604A425", - "baseIconId": "36A9B462-C487-458E-BFB6-2415739BC968", - "name": "layers-off-outline", - "codepoint": "F09FD", - "aliases": [], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Geographic Information System" - ], - "author": "Google" - }, - { - "id": "9026C3EC-9903-40FE-B3DF-EDB7FE10191A", - "baseIconId": "36A9B462-C487-458E-BFB6-2415739BC968", - "name": "layers-outline", - "codepoint": "F09FE", - "aliases": [], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Geographic Information System" - ], - "author": "Google" - }, - { - "id": "74FE9D86-D461-4C92-8981-E5A67954D6FA", - "baseIconId": "36A9B462-C487-458E-BFB6-2415739BC968", - "name": "layers-plus", - "codepoint": "F0E4D", - "aliases": [], - "styles": [ - "plus" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Geographic Information System" - ], - "author": "Austin Andrews" - }, - { - "id": "4FE9D22C-A632-4B2E-8257-D6789764B1F6", - "baseIconId": "36A9B462-C487-458E-BFB6-2415739BC968", - "name": "layers-remove", - "codepoint": "F0E4E", - "aliases": [], - "styles": [ - "remove" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Geographic Information System" - ], - "author": "Austin Andrews" - }, - { - "id": "8502BBC1-8C93-4D63-97C6-1BA163C1DDC0", - "baseIconId": "36A9B462-C487-458E-BFB6-2415739BC968", - "name": "layers-search", - "codepoint": "F1206", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Geographic Information System" - ], - "author": "Michael Irigoyen" - }, - { - "id": "6EC54CC3-3FAD-4692-B123-9FA5A8F3D80E", - "baseIconId": "36A9B462-C487-458E-BFB6-2415739BC968", - "name": "layers-search-outline", - "codepoint": "F1207", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Geographic Information System" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E13ACA71-A398-4E3F-A1DF-ED7E4A1E1A84", - "baseIconId": "36A9B462-C487-458E-BFB6-2415739BC968", - "name": "layers-triple", - "codepoint": "F0F58", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "B5AC4711-8218-4B94-9372-628616C5CBD8", - "baseIconId": "36A9B462-C487-458E-BFB6-2415739BC968", - "name": "layers-triple-outline", - "codepoint": "F0F59", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "5EB00CD5-91CA-438E-B569-2D680E6102D6", - "baseIconId": "5EB00CD5-91CA-438E-B569-2D680E6102D6", - "name": "lead-pencil", - "codepoint": "F064F", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Drawing \/ Art" - ], - "author": "Google" - }, - { - "id": "30AC82B4-6073-462B-B63E-0F64706AAC2F", - "baseIconId": "30AC82B4-6073-462B-B63E-0F64706AAC2F", - "name": "leaf", - "codepoint": "F032A", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Nature", - "Food \/ Drink", - "Agriculture" - ], - "author": "Austin Andrews" - }, - { - "id": "30A6559D-F917-44DE-B7C7-9C1AB4DD8BD4", - "baseIconId": "30AC82B4-6073-462B-B63E-0F64706AAC2F", - "name": "leaf-circle", - "codepoint": "F1905", - "aliases": [ - "green-circle", - "organic" - ], - "styles": [ - "circle" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Nature", - "Agriculture" - ], - "author": "Jeff Anders" - }, - { - "id": "C480BC5A-402E-46EB-B913-51AFA64FA26E", - "baseIconId": "30AC82B4-6073-462B-B63E-0F64706AAC2F", - "name": "leaf-circle-outline", - "codepoint": "F1906", - "aliases": [ - "green-circle-outline", - "organic-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Agriculture", - "Nature" - ], - "author": "Jeff Anders" - }, - { - "id": "C7FF59F8-8D2F-4866-B8D3-27ED83C324F0", - "baseIconId": "30AC82B4-6073-462B-B63E-0F64706AAC2F", - "name": "leaf-maple", - "codepoint": "F0C93", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Nature" - ], - "author": "Michael Richins" - }, - { - "id": "D1DE0E7A-928A-430D-BD2B-B80C9FA2D2F4", - "baseIconId": "30AC82B4-6073-462B-B63E-0F64706AAC2F", - "name": "leaf-maple-off", - "codepoint": "F12DA", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Nature" - ], - "author": "Michael Irigoyen" - }, - { - "id": "96F48C59-4C64-4584-9E07-73AAD3533FAA", - "baseIconId": "30AC82B4-6073-462B-B63E-0F64706AAC2F", - "name": "leaf-off", - "codepoint": "F12D9", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Nature", - "Food \/ Drink", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D648ECFA-B185-4041-8B54-6D1C125CD08E", - "baseIconId": "D648ECFA-B185-4041-8B54-6D1C125CD08E", - "name": "leak", - "codepoint": "F0DD7", - "aliases": [ - "proximity-sensor" - ], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "EDA0BABB-A354-481B-8E60-108E3B20D64C", - "baseIconId": "D648ECFA-B185-4041-8B54-6D1C125CD08E", - "name": "leak-off", - "codepoint": "F0DD8", - "aliases": [ - "proximity-sensor-off" - ], - "styles": [ - "off" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "8EBB4944-6CD1-40E3-A5B7-6962BD23C0E6", - "baseIconId": "8EBB4944-6CD1-40E3-A5B7-6962BD23C0E6", - "name": "lectern", - "codepoint": "F1AF0", - "aliases": [ - "podium", - "dais", - "rostrum", - "lecturn" - ], - "styles": [], - "version": "6.6.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "8A29D85F-1BAD-4610-AF2F-B4AF0F0D2755", - "baseIconId": "9929F712-7241-468C-B10B-5739356EC85C", - "name": "led-off", - "codepoint": "F032B", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "5DACA128-6BEE-424D-83BA-8C94E01F5C0A", - "baseIconId": "9929F712-7241-468C-B10B-5739356EC85C", - "name": "led-on", - "codepoint": "F032C", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "423F2C55-8E79-441A-A987-45A97FAA3F53", - "baseIconId": "9929F712-7241-468C-B10B-5739356EC85C", - "name": "led-outline", - "codepoint": "F032D", - "aliases": [], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "F301BDB9-027C-40D0-A21F-3111A7AB218F", - "baseIconId": "F301BDB9-027C-40D0-A21F-3111A7AB218F", - "name": "led-strip", - "codepoint": "F07D6", - "aliases": [ - "light-strip" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "E4D78AC1-63FD-4BF0-89CD-91D80CCAAE40", - "baseIconId": "F301BDB9-027C-40D0-A21F-3111A7AB218F", - "name": "led-strip-variant", - "codepoint": "F1051", - "aliases": [ - "light-strip-variant" - ], - "styles": [ - "variant" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Borre Haugen" - }, - { - "id": "6EAFDD56-E5C5-459A-B31A-0BAC693931E0", - "baseIconId": "F301BDB9-027C-40D0-A21F-3111A7AB218F", - "name": "led-strip-variant-off", - "codepoint": "F1A4B", - "aliases": [ - "light-strip-variant-off" - ], - "styles": [ - "off", - "variant" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "BBDD4244-D5C9-4150-9936-31C775AA463F", - "baseIconId": "9929F712-7241-468C-B10B-5739356EC85C", - "name": "led-variant-off", - "codepoint": "F032E", - "aliases": [], - "styles": [ - "off", - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "9929F712-7241-468C-B10B-5739356EC85C", - "baseIconId": "9929F712-7241-468C-B10B-5739356EC85C", - "name": "led-variant-on", - "codepoint": "F032F", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "AEACBB35-5466-4C5B-8AA5-B366D0322A27", - "baseIconId": "9929F712-7241-468C-B10B-5739356EC85C", - "name": "led-variant-outline", - "codepoint": "F0330", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "48662A59-F777-4513-9023-17D826B11F5C", - "baseIconId": "48662A59-F777-4513-9023-17D826B11F5C", - "name": "leek", - "codepoint": "F117D", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Simran" - }, - { - "id": "098E9BF3-3E1F-43E3-ACFF-2D35123A3186", - "baseIconId": "098E9BF3-3E1F-43E3-ACFF-2D35123A3186", - "name": "less-than", - "codepoint": "F097C", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Nick" - }, - { - "id": "9CA22101-6F3D-4EE1-B9F1-C64CE0EFC911", - "baseIconId": "9CA22101-6F3D-4EE1-B9F1-C64CE0EFC911", - "name": "less-than-or-equal", - "codepoint": "F097D", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Nick" - }, - { - "id": "45FA5A9C-DFF1-4D7E-B683-DB7DE2BAEFC7", - "baseIconId": "45FA5A9C-DFF1-4D7E-B683-DB7DE2BAEFC7", - "name": "library", - "codepoint": "F0331", - "aliases": [ - "local-library" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Places" - ], - "author": "Google" - }, - { - "id": "1A100B37-6238-49F0-81EB-05FDE23DAA3E", - "baseIconId": "45FA5A9C-DFF1-4D7E-B683-DB7DE2BAEFC7", - "name": "library-outline", - "codepoint": "F1A22", - "aliases": [ - "local-library-outline" - ], - "styles": [ - "outline" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Places" - ], - "author": "Jeff Anders" - }, - { - "id": "282A591C-4D91-4AAF-B401-00F3AE4B73F2", - "baseIconId": "282A591C-4D91-4AAF-B401-00F3AE4B73F2", - "name": "library-shelves", - "codepoint": "F0BA9", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "8398466C-F905-444F-81E6-B5B2103BD873", - "baseIconId": "8398466C-F905-444F-81E6-B5B2103BD873", - "name": "license", - "codepoint": "F0FC3", - "aliases": [ - "ribbon", - "prize", - "award", - "seal" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "7936EB1E-FCE1-4501-A339-C5EB7E4301E9", - "baseIconId": "7936EB1E-FCE1-4501-A339-C5EB7E4301E9", - "name": "lifebuoy", - "codepoint": "F087E", - "aliases": [ - "life-preserver", - "support", - "help", - "overboard" - ], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Transportation + Water" - ], - "author": "Simran" - }, - { - "id": "25729A2F-D0FA-4C82-AEEC-3A771EB4D12A", - "baseIconId": "25729A2F-D0FA-4C82-AEEC-3A771EB4D12A", - "name": "light-flood-down", - "codepoint": "F1987", - "aliases": [ - "floodlight-down" - ], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Tim Grelka" - }, - { - "id": "9CE460EF-B246-4833-AF6D-B6ACB2A1E9A8", - "baseIconId": "9CE460EF-B246-4833-AF6D-B6ACB2A1E9A8", - "name": "light-flood-up", - "codepoint": "F1988", - "aliases": [ - "floodlight-up" - ], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Tim Grelka" - }, - { - "id": "F309BA75-39A7-45AC-9B1A-22D1F7D41345", - "baseIconId": "F309BA75-39A7-45AC-9B1A-22D1F7D41345", - "name": "light-recessed", - "codepoint": "F179B", - "aliases": [ - "can-light", - "pot-light", - "high-hat-light", - "hi-hat-light", - "downlight" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "647E0001-A60B-4D74-B127-BF522712922F", - "baseIconId": "647E0001-A60B-4D74-B127-BF522712922F", - "name": "light-switch", - "codepoint": "F097E", - "aliases": [ - "toggle-switch", - "rocker-switch" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Matthias de Baat" - }, - { - "id": "39A7777B-C9F7-4468-95B0-FE0037A635E9", - "baseIconId": "647E0001-A60B-4D74-B127-BF522712922F", - "name": "light-switch-off", - "codepoint": "F1A24", - "aliases": [ - "toggle-switch-off", - "rocker-switch-off" - ], - "styles": [], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Matthias de Baat" - }, - { - "id": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb", - "codepoint": "F0335", - "aliases": [ - "idea", - "bulb" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "1FED2710-D8D6-41FC-9318-51A23EDD13CF", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-alert", - "codepoint": "F19E1", - "aliases": [ - "lightbulb-error" - ], - "styles": [ - "alert" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Home Automation", - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "AC5BBA36-C64C-4E2F-B0E9-2B35A4D9FFE8", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-alert-outline", - "codepoint": "F19E2", - "aliases": [ - "lightbulb-error-outline" - ], - "styles": [ - "alert", - "outline" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Home Automation", - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DB38FD91-5875-4D53-81A9-A0B5400D53AE", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-auto", - "codepoint": "F1800", - "aliases": [ - "lightbulb-automatic", - "lightbulb-motion" - ], - "styles": [ - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "34AE1531-6F13-40A5-8E15-ABDD1227DB19", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-auto-outline", - "codepoint": "F1801", - "aliases": [ - "lightbulb-automatic-outline", - "lightbulb-motion-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7D6FF098-D459-4B89-A13C-C9145A1EB992", - "baseIconId": "7D6FF098-D459-4B89-A13C-C9145A1EB992", - "name": "lightbulb-cfl", - "codepoint": "F1208", - "aliases": [ - "bulb-cfl" - ], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "9E3FA5DD-7C93-4283-A7BD-30AE71ACD2C6", - "baseIconId": "7D6FF098-D459-4B89-A13C-C9145A1EB992", - "name": "lightbulb-cfl-off", - "codepoint": "F1209", - "aliases": [ - "bulb-cfl-off" - ], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0F61D2EB-5321-4D49-B9DD-4F205DA010A2", - "baseIconId": "7D6FF098-D459-4B89-A13C-C9145A1EB992", - "name": "lightbulb-cfl-spiral", - "codepoint": "F1275", - "aliases": [ - "bulb-cfl-spiral" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "undearius" - }, - { - "id": "49D60773-F400-491A-AD3F-B50110089F63", - "baseIconId": "7D6FF098-D459-4B89-A13C-C9145A1EB992", - "name": "lightbulb-cfl-spiral-off", - "codepoint": "F12C3", - "aliases": [ - "bulb-cfl-spiral-off" - ], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "43164D2A-705D-4D6E-9195-E2D559E493B1", - "baseIconId": "43164D2A-705D-4D6E-9195-E2D559E493B1", - "name": "lightbulb-fluorescent-tube", - "codepoint": "F1804", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "5D974435-3D3A-4BE6-8422-AD3F6E908BD7", - "baseIconId": "43164D2A-705D-4D6E-9195-E2D559E493B1", - "name": "lightbulb-fluorescent-tube-outline", - "codepoint": "F1805", - "aliases": [], - "styles": [ - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "DB267C0E-F298-4380-99C8-E18FA8E06554", - "baseIconId": "DB267C0E-F298-4380-99C8-E18FA8E06554", - "name": "lightbulb-group", - "codepoint": "F1253", - "aliases": [ - "bulb-group" - ], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "CA2B5020-40AD-44C1-8868-F14927FCD535", - "baseIconId": "DB267C0E-F298-4380-99C8-E18FA8E06554", - "name": "lightbulb-group-off", - "codepoint": "F12CD", - "aliases": [ - "bulb-group-off" - ], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "54E68537-16C8-48C4-82F8-4A1000DA605D", - "baseIconId": "DB267C0E-F298-4380-99C8-E18FA8E06554", - "name": "lightbulb-group-off-outline", - "codepoint": "F12CE", - "aliases": [ - "bulb-group-off-outline" - ], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C4751630-A657-4A0B-89C5-6FD3037A8CD6", - "baseIconId": "DB267C0E-F298-4380-99C8-E18FA8E06554", - "name": "lightbulb-group-outline", - "codepoint": "F1254", - "aliases": [ - "bulb-group-outline" - ], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "33D321D2-E427-469E-9646-D5758B4D5038", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-multiple", - "codepoint": "F1255", - "aliases": [ - "lightbulbs", - "bulb-multiple", - "bulbs" - ], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "B336C5E4-48AB-4620-9DA4-DB1144885F7C", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-multiple-off", - "codepoint": "F12CF", - "aliases": [ - "lightbulbs-off", - "bulb-multiple-off", - "bulbs-off" - ], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "827B8418-9667-4429-A4D3-7C0553D1946E", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-multiple-off-outline", - "codepoint": "F12D0", - "aliases": [ - "lightbulbs-off-outline", - "bulb-multiple-off-outline", - "bulbs-off-outline" - ], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7AAEC297-D587-4D13-9397-50C8C93B48C8", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-multiple-outline", - "codepoint": "F1256", - "aliases": [ - "lightbulbs-outline", - "bulb-multiple-outline", - "bulbs-outline" - ], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "E544DBA9-FBF4-4563-82BB-2D6F37788E2F", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-night", - "codepoint": "F1A4C", - "aliases": [ - "night-light", - "nite-light", - "lightbulb-moon-star" - ], - "styles": [ - "variant" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2C6EE261-B451-4F1F-A260-D34AA0EB341A", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-night-outline", - "codepoint": "F1A4D", - "aliases": [ - "night-light-outline", - "nite-light-outline", - "lightbulb-moon-star-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "14D09F5A-C467-428B-9C5A-F2B3939D1678", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-off", - "codepoint": "F0E4F", - "aliases": [ - "bulb-off" - ], - "styles": [ - "off" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Hans B\u00f6hm" - }, - { - "id": "02757DC7-3D66-4244-B115-C69A74D24B66", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-off-outline", - "codepoint": "F0E50", - "aliases": [ - "bulb-off-outline" - ], - "styles": [ - "off", - "outline" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Hans B\u00f6hm" - }, - { - "id": "4B3F67C4-02C3-4083-B47A-645AD24992FA", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-on", - "codepoint": "F06E8", - "aliases": [ - "idea", - "bulb-on", - "lightbulb-dimmer-100" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "5AF7B110-A35F-437B-B4F2-5DAED54DE86F", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-on-10", - "codepoint": "F1A4E", - "aliases": [ - "lightbulb-dimmer-10" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "00B793C1-0C24-417A-8332-EAECCB47021D", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-on-20", - "codepoint": "F1A4F", - "aliases": [ - "lightbulb-dimmer-20" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F0353E04-7AA3-4C04-981B-FE96F8659B23", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-on-30", - "codepoint": "F1A50", - "aliases": [ - "lightbulb-dimmer-30" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D0ADCBE7-2C7B-4A9F-A20B-F094AE655227", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-on-40", - "codepoint": "F1A51", - "aliases": [ - "lightbulb-dimmer-40" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5E462F24-AED9-49A6-ACAE-6137F79179D3", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-on-50", - "codepoint": "F1A52", - "aliases": [ - "lightbulb-dimmer-50" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A2914A9E-96D7-4B17-9340-8194656F4201", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-on-60", - "codepoint": "F1A53", - "aliases": [ - "lightbulb-dimmer-60" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "20E12565-5814-472B-8F9D-B37296DF345E", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-on-70", - "codepoint": "F1A54", - "aliases": [ - "lightbulb-dimmer-70" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F3C06B83-1208-4E69-A039-692D4B870B5A", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-on-80", - "codepoint": "F1A55", - "aliases": [ - "lightbulb-dimmer-80" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "33D9D6A7-250C-46B6-9FD2-81A6477CC8EC", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-on-90", - "codepoint": "F1A56", - "aliases": [ - "lightbulb-dimmer-90" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1FDA626F-5858-43AE-92A0-9CCE7168F08F", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-on-outline", - "codepoint": "F06E9", - "aliases": [ - "idea", - "bulb-on-outline" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "BF6C3B65-0795-43E0-B373-058414FDD485", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-outline", - "codepoint": "F0336", - "aliases": [ - "idea", - "bulb-outline" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "CB600C6A-E43E-4723-A8F0-963222692C23", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-question", - "codepoint": "F19E3", - "aliases": [ - "lightbulb-help" - ], - "styles": [ - "question" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "8EFBF4AB-73DD-41EC-BF3C-2503A5BDF93E", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-question-outline", - "codepoint": "F19E4", - "aliases": [ - "lightbulb-help-outline" - ], - "styles": [ - "outline", - "question" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2D6C2BB9-CF5E-4BD1-A44B-262F2A61FAC2", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-spot", - "codepoint": "F17F4", - "aliases": [ - "lightbulb-halogen", - "lightbulb-gu10" - ], - "styles": [ - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "A4DF4624-753B-440B-98C9-A25EE330B0AE", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-spot-off", - "codepoint": "F17F5", - "aliases": [ - "lightbulb-halogen-off", - "lightbulb-gu10-off" - ], - "styles": [ - "off", - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "52A21A41-EC71-4807-BE6B-CF5ED8BBAD10", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-variant", - "codepoint": "F1802", - "aliases": [ - "lightbulb-edison", - "lightbulb-filament" - ], - "styles": [ - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "70DD894F-1717-4C05-9C34-D7CE1ACF36CC", - "baseIconId": "ECC94305-DFA6-4D9B-85C8-CC79F3F05FB5", - "name": "lightbulb-variant-outline", - "codepoint": "F1803", - "aliases": [ - "lightbulb-edison-outline", - "lightbulb-filament-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "95534506-8ECD-49B3-9F87-64D52CC874BA", - "baseIconId": "95534506-8ECD-49B3-9F87-64D52CC874BA", - "name": "lighthouse", - "codepoint": "F09FF", - "aliases": [ - "beacon" - ], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "85B287CF-D036-4E36-934F-B6FA28892D9C", - "baseIconId": "95534506-8ECD-49B3-9F87-64D52CC874BA", - "name": "lighthouse-on", - "codepoint": "F0A00", - "aliases": [ - "beacon" - ], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "A4A9C031-02B0-45C7-B9C8-EA1541DB9A38", - "baseIconId": "A4A9C031-02B0-45C7-B9C8-EA1541DB9A38", - "name": "lightning-bolt", - "codepoint": "F140B", - "aliases": [ - "thunder", - "storm", - "energy", - "electricity" - ], - "styles": [], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Home Automation", - "Weather" - ], - "author": "Brooke Clifton" - }, - { - "id": "F055DA49-5992-4DDC-8C71-E5D331520DEA", - "baseIconId": "A4A9C031-02B0-45C7-B9C8-EA1541DB9A38", - "name": "lightning-bolt-circle", - "codepoint": "F0820", - "aliases": [ - "amp", - "offline-bolt", - "flash-circle", - "electricity-circle", - "energy-circle", - "thunder-circle", - "storm-circle" - ], - "styles": [ - "circle" - ], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Home Automation", - "Weather" - ], - "author": "Google" - }, - { - "id": "908D1C1F-8D3A-4316-8CF5-ABDF16747DA1", - "baseIconId": "A4A9C031-02B0-45C7-B9C8-EA1541DB9A38", - "name": "lightning-bolt-outline", - "codepoint": "F140C", - "aliases": [ - "thunder-outline", - "storm-outline", - "energy-outline", - "electricity-outline" - ], - "styles": [], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Home Automation", - "Weather" - ], - "author": "Brooke Clifton" - }, - { - "id": "A19711E4-E339-4016-970B-F81D14B303AC", - "baseIconId": "C74BA4DC-A838-471E-AA2D-A5C2D0B74BF3", - "name": "line-scan", - "codepoint": "F0624", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "TheSnowfield" - }, - { - "id": "F718A4A1-9D7B-45E5-B0AD-50FDA06BA3C3", - "baseIconId": "F718A4A1-9D7B-45E5-B0AD-50FDA06BA3C3", - "name": "lingerie", - "codepoint": "F1476", - "aliases": [ - "underwear", - "bra", - "panties" - ], - "styles": [], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Clothing" - ], - "author": "Kristian Mohl" - }, - { - "id": "462769C2-0A30-4B31-B66C-55168B10D705", - "baseIconId": "462769C2-0A30-4B31-B66C-55168B10D705", - "name": "link", - "codepoint": "F0337", - "aliases": [ - "insert-link" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "A1FC74FE-BCA4-447F-AA0D-837A8E33C945", - "baseIconId": "462769C2-0A30-4B31-B66C-55168B10D705", - "name": "link-box", - "codepoint": "F0D1A", - "aliases": [], - "styles": [ - "box" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "7CBB0F91-4D15-414D-8623-EB84F13AFA75", - "baseIconId": "462769C2-0A30-4B31-B66C-55168B10D705", - "name": "link-box-outline", - "codepoint": "F0D1B", - "aliases": [], - "styles": [ - "box", - "outline" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "76AB74B7-D753-4AE9-9FDD-5A0C2B8AB823", - "baseIconId": "462769C2-0A30-4B31-B66C-55168B10D705", - "name": "link-box-variant", - "codepoint": "F0D1C", - "aliases": [], - "styles": [ - "box" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "8BEB1816-449A-43E8-8A08-0030E1D4DB93", - "baseIconId": "462769C2-0A30-4B31-B66C-55168B10D705", - "name": "link-box-variant-outline", - "codepoint": "F0D1D", - "aliases": [], - "styles": [ - "box", - "outline" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "CDEA2CC8-FD08-49E6-AC29-A5DD70956C35", - "baseIconId": "462769C2-0A30-4B31-B66C-55168B10D705", - "name": "link-lock", - "codepoint": "F10BA", - "aliases": [ - "block-chain" - ], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Michael Richins" - }, - { - "id": "0DACA19D-EFEB-4D22-BE20-9E8FB8C1BBEB", - "baseIconId": "462769C2-0A30-4B31-B66C-55168B10D705", - "name": "link-off", - "codepoint": "F0338", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "0436D77E-F53E-4A1E-A402-916D7D90A1BE", - "baseIconId": "462769C2-0A30-4B31-B66C-55168B10D705", - "name": "link-plus", - "codepoint": "F0C94", - "aliases": [ - "link-add" - ], - "styles": [ - "plus" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "4D09DDBE-9716-4162-9DA9-B50892241E15", - "baseIconId": "462769C2-0A30-4B31-B66C-55168B10D705", - "name": "link-variant", - "codepoint": "F0339", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "1D8C8A91-65E7-4FED-B4C6-C29550080C43", - "baseIconId": "462769C2-0A30-4B31-B66C-55168B10D705", - "name": "link-variant-minus", - "codepoint": "F10FF", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "BC8F07E8-9157-49BB-B8DF-CCCDB19C5467", - "baseIconId": "462769C2-0A30-4B31-B66C-55168B10D705", - "name": "link-variant-off", - "codepoint": "F033A", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "9132A003-2D40-49A6-9D8B-F2AD2EC98788", - "baseIconId": "462769C2-0A30-4B31-B66C-55168B10D705", - "name": "link-variant-plus", - "codepoint": "F1100", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "E1733CFB-12E3-436F-A0EC-F75AE38BAEDB", - "baseIconId": "462769C2-0A30-4B31-B66C-55168B10D705", - "name": "link-variant-remove", - "codepoint": "F1101", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "248F9A0F-7732-4FC9-8E64-2E4B47BBFDCD", - "baseIconId": "248F9A0F-7732-4FC9-8E64-2E4B47BBFDCD", - "name": "linkedin", - "codepoint": "F033B", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Social Media" - ], - "author": "Contributors" - }, - { - "id": "A58FE3A3-BC2C-48A4-8146-0D15F1B80128", - "baseIconId": "A58FE3A3-BC2C-48A4-8146-0D15F1B80128", - "name": "linux", - "codepoint": "F033D", - "aliases": [ - "tux" - ], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Animal", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "608E356A-A5F0-4992-BE8D-E99CCC533FC7", - "baseIconId": "608E356A-A5F0-4992-BE8D-E99CCC533FC7", - "name": "linux-mint", - "codepoint": "F08ED", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "95390315-999E-4E82-8D89-CDF89AE6478F", - "baseIconId": "95390315-999E-4E82-8D89-CDF89AE6478F", - "name": "lipstick", - "codepoint": "F13B5", - "aliases": [], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [ - "Health \/ Beauty" - ], - "author": "iiiiiiines" - }, - { - "id": "BAB8D475-0C50-46EB-9B05-8101442C4F33", - "baseIconId": "BAB8D475-0C50-46EB-9B05-8101442C4F33", - "name": "liquid-spot", - "codepoint": "F1826", - "aliases": [ - "ink-spot", - "puddle", - "water", - "blood", - "spill", - "oil", - "dirty" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Automotive", - "Medical \/ Hospital" - ], - "author": "Michael Irigoyen" - }, - { - "id": "48C6596F-07B5-495C-82E2-683B09DD7040", - "baseIconId": "48C6596F-07B5-495C-82E2-683B09DD7040", - "name": "liquor", - "codepoint": "F191E", - "aliases": [ - "booze", - "alcohol", - "beverages", - "whiskey", - "rum", - "wine", - "tequila", - "beer", - "spirits" - ], - "styles": [], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Google" - }, - { - "id": "E1277D63-636E-479A-974A-83901A84A8F0", - "baseIconId": "4AA98685-EEBB-4816-801E-3B12DCB4413F", - "name": "list-box", - "codepoint": "F1B7B", - "aliases": [ - "form" - ], - "styles": [], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "frankgrinaert" - }, - { - "id": "3EE285E0-8234-4B20-BFD4-B82AEA64EA57", - "baseIconId": "4AA98685-EEBB-4816-801E-3B12DCB4413F", - "name": "list-box-outline", - "codepoint": "F1B7C", - "aliases": [ - "form-outline" - ], - "styles": [ - "outline" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "frankgrinaert" - }, - { - "id": "CC9CEDB3-55DE-4CCA-B31F-888383F6C69E", - "baseIconId": "CC9CEDB3-55DE-4CCA-B31F-888383F6C69E", - "name": "list-status", - "codepoint": "F15AB", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "1EB3C314-463F-488D-9DC6-3589C661984E", - "baseIconId": "1EB3C314-463F-488D-9DC6-3589C661984E", - "name": "litecoin", - "codepoint": "F0A61", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": true, - "tags": [ - "Banking", - "Brand \/ Logo", - "Currency" - ], - "author": "Contributors" - }, - { - "id": "205A2FF1-8827-4D3D-8580-FF7FFCD5232C", - "baseIconId": "205A2FF1-8827-4D3D-8580-FF7FFCD5232C", - "name": "loading", - "codepoint": "F0772", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [], - "author": "Kateryna Porshnieva" - }, - { - "id": "2D8B2899-C765-48CF-9AEA-64327CB14542", - "baseIconId": "2D8B2899-C765-48CF-9AEA-64327CB14542", - "name": "location-enter", - "codepoint": "F0FC4", - "aliases": [ - "presence-enter" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "83A1C782-63D7-476B-8A6D-A694F29AE3A9", - "baseIconId": "83A1C782-63D7-476B-8A6D-A694F29AE3A9", - "name": "location-exit", - "codepoint": "F0FC5", - "aliases": [ - "presence-exit" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock", - "codepoint": "F033E", - "aliases": [ - "https", - "password", - "secure", - "protected", - "encryption" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Lock", - "Home Automation", - "Automotive" - ], - "author": "Google" - }, - { - "id": "6AFF2FDC-D4F8-41F6-8B80-908D1AB87424", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-alert", - "codepoint": "F08EE", - "aliases": [ - "lock-warning", - "password-alert", - "encryption-alert", - "password-warning", - "encryption-warning" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Lock", - "Alert \/ Error", - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "6DE0B795-B0C1-4CFC-A47E-0D1C3A203248", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-alert-outline", - "codepoint": "F15D1", - "aliases": [ - "lock-warning-outline", - "password-alert-outline", - "encryption-alert-outline", - "password-warning-outline", - "encryption-warning-outline" - ], - "styles": [ - "alert", - "outline" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Home Automation", - "Alert \/ Error", - "Lock" - ], - "author": "Michael Irigoyen" - }, - { - "id": "CA254138-2001-4A37-8D52-E65D608E0E10", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-check", - "codepoint": "F139A", - "aliases": [ - "password-check", - "password-secure", - "encryption-check", - "encryption-secure", - "password-verified", - "encryption-verified" - ], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "4A17CD48-4EFA-41A5-9A40-4BF9C01F2B18", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-check-outline", - "codepoint": "F16A8", - "aliases": [ - "password-check-outline", - "password-secure-outline", - "encryption-check-outline", - "encryption-secure-outline", - "password-verified-outline", - "encryption-verified-outline" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "C16C2563-9EA4-4545-9CF4-56C5EA9FD9F9", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-clock", - "codepoint": "F097F", - "aliases": [ - "confidential-mode", - "password-clock", - "password-expiration", - "encryption-expiration" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Lock", - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "1C00C37C-183D-41D7-ACEF-18ACFF70DE80", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-minus", - "codepoint": "F16A9", - "aliases": [ - "password-minus", - "encryption-minus" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "073A5F44-B5D1-4112-AD20-1F86F94ADF60", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-minus-outline", - "codepoint": "F16AA", - "aliases": [ - "password-minus-outline", - "encryption-minus" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "481E2C2A-E70D-4323-867E-5632966B9555", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-off", - "codepoint": "F1671", - "aliases": [ - "password-off", - "not-protected", - "unsecure", - "encryption-off" - ], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "AAC1BB51-BA46-4FB6-B901-F602E7C55351", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-off-outline", - "codepoint": "F1672", - "aliases": [ - "password-off-outline", - "unsecure-outline", - "not-protected-outline", - "encryption-off-outline" - ], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "E357D5CD-7E42-463B-899A-7D7B038A3E31", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-open", - "codepoint": "F033F", - "aliases": [ - "unlocked", - "decrypted" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Lock", - "Home Automation", - "Automotive" - ], - "author": "Google" - }, - { - "id": "D8707612-8DFB-4F83-9FAE-2058254A651F", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-open-alert", - "codepoint": "F139B", - "aliases": [ - "unlocked-alert", - "decrypted-alert", - "lock-open-warning", - "unlocked-warning", - "decrypted-warning" - ], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [ - "Alert \/ Error", - "Home Automation", - "Lock" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "47EFC7F8-698E-4466-8EDE-DB6334FE6C18", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-open-alert-outline", - "codepoint": "F15D2", - "aliases": [ - "unlocked-alert-outline", - "lock-open-warning-outline", - "decrypted-alert-outline", - "unlocked-warning-outline", - "decrypted-warning-outline" - ], - "styles": [ - "alert", - "outline", - "variant" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Home Automation", - "Alert \/ Error", - "Lock" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5ED06AF8-75C7-4AC3-962E-F742236AFDA6", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-open-check", - "codepoint": "F139C", - "aliases": [ - "unlocked-check", - "decrypted-check" - ], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "FA8CFB4F-319F-42BE-8615-B4FECDA27719", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-open-check-outline", - "codepoint": "F16AB", - "aliases": [ - "unlocked-check-outline", - "decrypted-check-outline" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "5487A862-47C1-445A-B6F4-16AAAD6D058B", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-open-minus", - "codepoint": "F16AC", - "aliases": [ - "unlocked-minus", - "decrypted-minus" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "A268FC79-9328-4B33-A734-9A4614BB3776", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-open-minus-outline", - "codepoint": "F16AD", - "aliases": [ - "unlocked-minus-outline", - "decrypted-minus-outline" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "DCE8B967-BCDE-4130-8BF3-DDA78A78326F", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-open-outline", - "codepoint": "F0340", - "aliases": [ - "unlocked-outline", - "decrypted-outline" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Lock", - "Home Automation", - "Automotive" - ], - "author": "Google" - }, - { - "id": "8062D7E8-C9C1-42E1-B42F-E5A9618F1DCD", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-open-plus", - "codepoint": "F16AE", - "aliases": [ - "unlocked-plus", - "decrypted-plus", - "lock-open-add", - "unlocked-add", - "decrypted-add" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "804F39C9-F4EB-4663-8EA6-67F668C8CCDF", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-open-plus-outline", - "codepoint": "F16AF", - "aliases": [ - "unlocked-plus-outline", - "lock-open-add-outline", - "unlocked-add-outline", - "decrypted-plus-outline", - "decrypted-add-outline" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "DBA50293-BCD6-4CC6-81E7-E63AF1EB56AE", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-open-remove", - "codepoint": "F16B0", - "aliases": [ - "unlocked-remove", - "decrypted-remove" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "73C80D40-9B24-42A8-A22A-94DDE61DDCFC", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-open-remove-outline", - "codepoint": "F16B1", - "aliases": [ - "unlocked-remove-outline", - "decrypted-remove-outline" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "4171E1EE-CA1A-4885-B41B-3EAE135BA8FE", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-open-variant", - "codepoint": "F0FC6", - "aliases": [ - "unlocked-variant", - "decrypted-variant" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Lock", - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "D3253799-FA57-4E62-967B-088FD6F1BF62", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-open-variant-outline", - "codepoint": "F0FC7", - "aliases": [ - "unlocked-variant-outline", - "decrypted-variant-outline" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Lock", - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "86AD97CA-6028-45C2-8C9A-8C4A562A8E49", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-outline", - "codepoint": "F0341", - "aliases": [ - "password-outline", - "secure-outline", - "https-outline", - "protected-outline", - "encryption-outline" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Lock", - "Home Automation", - "Automotive" - ], - "author": "Google" - }, - { - "id": "6921C166-7D1E-44E4-90B9-ADF6668DDFB9", - "baseIconId": "6921C166-7D1E-44E4-90B9-ADF6668DDFB9", - "name": "lock-pattern", - "codepoint": "F06EA", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Haley Halcyon" - }, - { - "id": "2FFF3573-6379-4712-AC2D-0FDDFECE2103", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-percent", - "codepoint": "F1C12", - "aliases": [ - "lock-rate" - ], - "styles": [], - "version": "7.1.96", - "deprecated": false, - "tags": [], - "author": "mocking-mike" - }, - { - "id": "D37BC87E-8B6E-4D69-A35C-2C2EE9B85243", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-percent-open", - "codepoint": "F1C13", - "aliases": [ - "lock-rate-open" - ], - "styles": [], - "version": "7.1.96", - "deprecated": false, - "tags": [], - "author": "mocking-mike" - }, - { - "id": "AF474E3E-6D21-4C03-9D59-F784287C35AC", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-percent-open-outline", - "codepoint": "F1C14", - "aliases": [ - "lock-rate-open-outline" - ], - "styles": [ - "outline" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [], - "author": "mocking-mike" - }, - { - "id": "4F6E68BA-D1BA-4AD7-AA6D-A80E04CC2D6F", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-percent-open-variant", - "codepoint": "F1C15", - "aliases": [ - "lock-rate-open-variant" - ], - "styles": [], - "version": "7.1.96", - "deprecated": false, - "tags": [], - "author": "mocking-mike" - }, - { - "id": "8E4A2141-8B43-4CC8-9DC4-C48251A0ECCF", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-percent-open-variant-outline", - "codepoint": "F1C16", - "aliases": [ - "lock-rate-open-variant-outline" - ], - "styles": [ - "outline" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [], - "author": "mocking-mike" - }, - { - "id": "E83F528B-42AE-49BE-9236-18C6212ACA9D", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-percent-outline", - "codepoint": "F1C17", - "aliases": [ - "lock-rate-outline" - ], - "styles": [ - "outline" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [], - "author": "mocking-mike" - }, - { - "id": "BA4D2E1E-2BCB-4B17-AC02-52C8F34FAEAE", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-plus", - "codepoint": "F05FB", - "aliases": [ - "enhanced-encryption", - "lock-add", - "encryption-add", - "password-add", - "password-plus", - "encryption-plus" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "A4B343ED-8C07-4BD5-9F01-B360F971D23C", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-plus-outline", - "codepoint": "F16B2", - "aliases": [ - "lock-add-outline", - "password-plus-outline", - "password-add-outline", - "encryption-plus-outline", - "encryption-add-outline" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "390C2479-98DD-46FB-AA39-CD816E7982C8", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-question", - "codepoint": "F08EF", - "aliases": [ - "forgot-password", - "password-question", - "encryption-question" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Simran" - }, - { - "id": "201B2126-8481-413A-884F-BE6C8C62D531", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-remove", - "codepoint": "F16B3", - "aliases": [ - "password-remove", - "encryption-remove" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "D5069461-8385-4424-8E19-CE2BEF2C1BAC", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-remove-outline", - "codepoint": "F16B4", - "aliases": [ - "password-remove-outline", - "encryption-remove-outline" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "82312B48-E128-494E-9D84-DAACB41986F4", - "baseIconId": "D711AFDE-2B8D-4932-82AC-A04E7B2810AE", - "name": "lock-reset", - "codepoint": "F0773", - "aliases": [ - "password-reset", - "encryption-reset" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Google" - }, - { - "id": "1D8C9A6B-26F4-45E1-B922-E0BAED0A5FBD", - "baseIconId": "1D8C9A6B-26F4-45E1-B922-E0BAED0A5FBD", - "name": "lock-smart", - "codepoint": "F08B2", - "aliases": [], - "styles": [], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "B8B0EAF4-369F-412A-A092-4AA85BBE77FD", - "baseIconId": "B8B0EAF4-369F-412A-A092-4AA85BBE77FD", - "name": "locker", - "codepoint": "F07D7", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "4A5533A8-402C-45F2-9D7A-A8949C22C33B", - "baseIconId": "B8B0EAF4-369F-412A-A092-4AA85BBE77FD", - "name": "locker-multiple", - "codepoint": "F07D8", - "aliases": [ - "lockers" - ], - "styles": [ - "multiple" - ], - "version": "2.0.46", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "63D8BFA5-7AE4-4002-A4C2-C464638C38FC", - "baseIconId": "63D8BFA5-7AE4-4002-A4C2-C464638C38FC", - "name": "login", - "codepoint": "F0342", - "aliases": [ - "log-in", - "sign-in" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "B590AA80-D315-4344-8036-8FBC25C87D2C", - "baseIconId": "63D8BFA5-7AE4-4002-A4C2-C464638C38FC", - "name": "login-variant", - "codepoint": "F05FC", - "aliases": [ - "log-in-variant", - "sign-in-variant" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "47DF41F2-49C7-4081-8419-F49C7894E7F1", - "baseIconId": "47DF41F2-49C7-4081-8419-F49C7894E7F1", - "name": "logout", - "codepoint": "F0343", - "aliases": [ - "log-out", - "sign-out" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "FD2A4CE0-AD1F-45D4-B487-BB6E57F2143F", - "baseIconId": "47DF41F2-49C7-4081-8419-F49C7894E7F1", - "name": "logout-variant", - "codepoint": "F05FD", - "aliases": [ - "log-out-variant", - "sign-out-variant" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "F4604109-DEBB-424C-9972-9ACFF76BBEC7", - "baseIconId": "F4604109-DEBB-424C-9972-9ACFF76BBEC7", - "name": "longitude", - "codepoint": "F0F5A", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Michael Richins" - }, - { - "id": "3633613A-B8A7-49D0-8C1B-5415EC76F426", - "baseIconId": "3633613A-B8A7-49D0-8C1B-5415EC76F426", - "name": "looks", - "codepoint": "F0344", - "aliases": [ - "rainbow" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Weather", - "Color" - ], - "author": "Google" - }, - { - "id": "8DD7B5D3-1361-460A-8029-6948337CC153", - "baseIconId": "8DD7B5D3-1361-460A-8029-6948337CC153", - "name": "lotion", - "codepoint": "F1582", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Medical \/ Hospital", - "Health \/ Beauty" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DB23DCE8-81D6-449E-B6C2-E29804FFF3BD", - "baseIconId": "8DD7B5D3-1361-460A-8029-6948337CC153", - "name": "lotion-outline", - "codepoint": "F1583", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Medical \/ Hospital", - "Health \/ Beauty" - ], - "author": "Michael Irigoyen" - }, - { - "id": "74C0DC3D-4DE3-4E67-9100-0B59F2B9A6B2", - "baseIconId": "8DD7B5D3-1361-460A-8029-6948337CC153", - "name": "lotion-plus", - "codepoint": "F1584", - "aliases": [ - "hand-sanitizer" - ], - "styles": [ - "plus" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Google" - }, - { - "id": "85DF6891-1BE0-4D66-8728-553846F98B1F", - "baseIconId": "8DD7B5D3-1361-460A-8029-6948337CC153", - "name": "lotion-plus-outline", - "codepoint": "F1585", - "aliases": [ - "hand-sanitizer-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Google" - }, - { - "id": "DB75FD27-01F6-4232-AA23-86C115751A0C", - "baseIconId": "DB75FD27-01F6-4232-AA23-86C115751A0C", - "name": "loupe", - "codepoint": "F0345", - "aliases": [ - "zoom-plus", - "circle-plus-outline", - "magnify" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "235EF258-40BB-47C3-9D5F-1497A7FD34D9", - "baseIconId": "235EF258-40BB-47C3-9D5F-1497A7FD34D9", - "name": "lumx", - "codepoint": "F0346", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "6E54F325-2998-4301-9062-8770A4868453", - "baseIconId": "6E54F325-2998-4301-9062-8770A4868453", - "name": "lungs", - "codepoint": "F1084", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7AF70024-F9FA-4B50-BD29-3073B6E508B4", - "baseIconId": "7AF70024-F9FA-4B50-BD29-3073B6E508B4", - "name": "mace", - "codepoint": "F1843", - "aliases": [], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Colton Wiscombe" - }, - { - "id": "DC51467E-30C0-4144-9AE6-80762ACA972C", - "baseIconId": "DC51467E-30C0-4144-9AE6-80762ACA972C", - "name": "magazine-pistol", - "codepoint": "F0324", - "aliases": [ - "ammunition-pistol" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Andrew Laws" - }, - { - "id": "70793340-E8F2-43A0-8AB1-0DAB70CC8B9A", - "baseIconId": "70793340-E8F2-43A0-8AB1-0DAB70CC8B9A", - "name": "magazine-rifle", - "codepoint": "F0323", - "aliases": [ - "ammunition-rifle" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Andrew Laws" - }, - { - "id": "A7255F1C-0207-4202-B1E5-11DC2BED7161", - "baseIconId": "A7255F1C-0207-4202-B1E5-11DC2BED7161", - "name": "magic-staff", - "codepoint": "F1844", - "aliases": [ - "staff-shimmer", - "magic-wand" - ], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Colton Wiscombe" - }, - { - "id": "65B3A914-578A-468F-95C1-9C2B6D0C3A52", - "baseIconId": "65B3A914-578A-468F-95C1-9C2B6D0C3A52", - "name": "magnet", - "codepoint": "F0347", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "3A386A5A-35AC-4760-9384-33A9A43CF584", - "baseIconId": "65B3A914-578A-468F-95C1-9C2B6D0C3A52", - "name": "magnet-on", - "codepoint": "F0348", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "C2889545-7F08-4AE1-9142-ECF9B79957E1", - "baseIconId": "C2889545-7F08-4AE1-9142-ECF9B79957E1", - "name": "magnify", - "codepoint": "F0349", - "aliases": [ - "search" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Geographic Information System" - ], - "author": "Google" - }, - { - "id": "C48FDEBE-952C-4B4A-9EB8-47A18186EB0B", - "baseIconId": "C2889545-7F08-4AE1-9142-ECF9B79957E1", - "name": "magnify-close", - "codepoint": "F0980", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "D6842910-49FD-4F74-8D67-86865549097A", - "baseIconId": "C2889545-7F08-4AE1-9142-ECF9B79957E1", - "name": "magnify-expand", - "codepoint": "F1874", - "aliases": [ - "search-expand" - ], - "styles": [ - "variant" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Geographic Information System" - ], - "author": "snis" - }, - { - "id": "36D3966F-BFA2-407B-BF36-D21FBA930930", - "baseIconId": "C2889545-7F08-4AE1-9142-ECF9B79957E1", - "name": "magnify-minus", - "codepoint": "F034A", - "aliases": [ - "zoom-out", - "search-minus" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "616EA8BF-F84A-41BC-A933-5A4AF1E4E793", - "baseIconId": "C2889545-7F08-4AE1-9142-ECF9B79957E1", - "name": "magnify-minus-cursor", - "codepoint": "F0A62", - "aliases": [ - "zoom-out-cursor" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "9E259697-7035-4E17-82D6-431C74215E67", - "baseIconId": "C2889545-7F08-4AE1-9142-ECF9B79957E1", - "name": "magnify-minus-outline", - "codepoint": "F06EC", - "aliases": [ - "zoom-out-outline", - "search-minus-outline" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Geographic Information System" - ], - "author": "Google" - }, - { - "id": "798F7C9D-2EC7-47EF-8729-845B4E2DDD16", - "baseIconId": "C2889545-7F08-4AE1-9142-ECF9B79957E1", - "name": "magnify-plus", - "codepoint": "F034B", - "aliases": [ - "zoom-in", - "magnify-add", - "search-plus", - "search-add" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "950E718A-089B-4266-AAFA-B9FA8BB0D3B3", - "baseIconId": "C2889545-7F08-4AE1-9142-ECF9B79957E1", - "name": "magnify-plus-cursor", - "codepoint": "F0A63", - "aliases": [ - "zoom-in-cursor", - "magnify-add-cursor" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "521EC414-ECAD-435D-BAE3-4CF772659845", - "baseIconId": "C2889545-7F08-4AE1-9142-ECF9B79957E1", - "name": "magnify-plus-outline", - "codepoint": "F06ED", - "aliases": [ - "zoom-in-outline", - "magnify-add-outline", - "search-plus-outline", - "search-add-outline" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Geographic Information System" - ], - "author": "Google" - }, - { - "id": "845BBEA5-F20E-4E1B-AB42-FE7BF45FCDAB", - "baseIconId": "C2889545-7F08-4AE1-9142-ECF9B79957E1", - "name": "magnify-remove-cursor", - "codepoint": "F120C", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "1465D0D4-32FE-4495-B137-CFE49A390474", - "baseIconId": "C2889545-7F08-4AE1-9142-ECF9B79957E1", - "name": "magnify-remove-outline", - "codepoint": "F120D", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Geographic Information System" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DF9ACF3F-5AF0-4F55-845C-569018942B95", - "baseIconId": "C2889545-7F08-4AE1-9142-ECF9B79957E1", - "name": "magnify-scan", - "codepoint": "F1276", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Sascha Wohlgemuth" - }, - { - "id": "269E49C3-261D-42CD-8EFA-FD76C0BA7B7C", - "baseIconId": "269E49C3-261D-42CD-8EFA-FD76C0BA7B7C", - "name": "mail", - "codepoint": "F0EBB", - "aliases": [], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "CCEA599C-8CED-4D49-83FB-7AC452AADFA0", - "baseIconId": "CCEA599C-8CED-4D49-83FB-7AC452AADFA0", - "name": "mailbox", - "codepoint": "F06EE", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "E1072975-827C-4320-A7D9-AEEADA1BCAD9", - "baseIconId": "CCEA599C-8CED-4D49-83FB-7AC452AADFA0", - "name": "mailbox-open", - "codepoint": "F0D88", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "B5D3F2A9-4CF7-4030-8909-482E23D3A8DC", - "baseIconId": "CCEA599C-8CED-4D49-83FB-7AC452AADFA0", - "name": "mailbox-open-outline", - "codepoint": "F0D89", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "01EC4EC7-B90D-4E1E-B3CF-E9B2E9C16077", - "baseIconId": "CCEA599C-8CED-4D49-83FB-7AC452AADFA0", - "name": "mailbox-open-up", - "codepoint": "F0D8A", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "793AC378-1C34-4882-B3A7-6ACA108ACE76", - "baseIconId": "CCEA599C-8CED-4D49-83FB-7AC452AADFA0", - "name": "mailbox-open-up-outline", - "codepoint": "F0D8B", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "69A2883B-C904-4769-898E-8BAEB8F8309C", - "baseIconId": "CCEA599C-8CED-4D49-83FB-7AC452AADFA0", - "name": "mailbox-outline", - "codepoint": "F0D8C", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "C378F407-C2C4-48CD-9AA3-22B6C4C0E0AF", - "baseIconId": "CCEA599C-8CED-4D49-83FB-7AC452AADFA0", - "name": "mailbox-up", - "codepoint": "F0D8D", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "D9ECA2BA-AFCB-46C8-9EC4-3155063670CC", - "baseIconId": "CCEA599C-8CED-4D49-83FB-7AC452AADFA0", - "name": "mailbox-up-outline", - "codepoint": "F0D8E", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "75EE1BFB-90E7-4500-A7E1-72E898059E16", - "baseIconId": "75EE1BFB-90E7-4500-A7E1-72E898059E16", - "name": "manjaro", - "codepoint": "F160A", - "aliases": [], - "styles": [], - "version": "5.6.55", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "99738FF8-01AE-420D-8481-8B9E1402255B", - "baseIconId": "99738FF8-01AE-420D-8481-8B9E1402255B", - "name": "map", - "codepoint": "F034D", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Google" - }, - { - "id": "39D94D7A-D161-409F-8FFC-889474A4DCE9", - "baseIconId": "99738FF8-01AE-420D-8481-8B9E1402255B", - "name": "map-check", - "codepoint": "F0EBC", - "aliases": [ - "map-tick" - ], - "styles": [ - "check" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "mocking-mike" - }, - { - "id": "8EF339C7-1106-40FC-B2CC-3387F915824E", - "baseIconId": "99738FF8-01AE-420D-8481-8B9E1402255B", - "name": "map-check-outline", - "codepoint": "F0EBD", - "aliases": [ - "map-tick-outline" - ], - "styles": [ - "check", - "outline" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "mocking-mike" - }, - { - "id": "A3A8668B-BEF0-48CC-AEB1-ACC765D10CC0", - "baseIconId": "99738FF8-01AE-420D-8481-8B9E1402255B", - "name": "map-clock", - "codepoint": "F0D1E", - "aliases": [ - "timezone" - ], - "styles": [ - "clock" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System", - "Date \/ Time" - ], - "author": "Augustin Ursu" - }, - { - "id": "EEB984B2-6639-452D-AD56-06A8EC862EE4", - "baseIconId": "99738FF8-01AE-420D-8481-8B9E1402255B", - "name": "map-clock-outline", - "codepoint": "F0D1F", - "aliases": [ - "timezone-outline" - ], - "styles": [ - "clock", - "outline" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System", - "Date \/ Time" - ], - "author": "Augustin Ursu" - }, - { - "id": "69651FB0-089C-4D57-8465-46716D86DBCA", - "baseIconId": "99738FF8-01AE-420D-8481-8B9E1402255B", - "name": "map-legend", - "codepoint": "F0A01", - "aliases": [], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Perth Totty" - }, - { - "id": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker", - "codepoint": "F034E", - "aliases": [ - "location", - "address-marker", - "location-on", - "place", - "room" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Google" - }, - { - "id": "518FF04A-58EC-4917-BF7F-BBAFDD9B00DD", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-account", - "codepoint": "F18E3", - "aliases": [], - "styles": [ - "account" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Navigation", - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "9EE1A46D-F991-45D7-A170-2DE8AED0D1EA", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-account-outline", - "codepoint": "F18E4", - "aliases": [], - "styles": [ - "account", - "outline" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Navigation", - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "DE87F14C-101D-47F2-87C5-118BE76F7C58", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-alert", - "codepoint": "F0F05", - "aliases": [ - "location-alert", - "location-warning" - ], - "styles": [], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Navigation", - "Alert \/ Error", - "Geographic Information System" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "65B4F317-EB12-4BD4-8E9B-C6D3A153B868", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-alert-outline", - "codepoint": "F0F06", - "aliases": [ - "location-alert-outline", - "location-warning-outline" - ], - "styles": [], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Navigation", - "Alert \/ Error", - "Geographic Information System" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "FA10B579-AC1E-48F7-BF8C-AB7F1380F3F9", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-check", - "codepoint": "F0C95", - "aliases": [ - "map-marker-tick", - "where-to-vote", - "location-check" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Google" - }, - { - "id": "76C82A3D-F79E-46D9-8234-456F39A35567", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-check-outline", - "codepoint": "F12FB", - "aliases": [ - "location-check-outline", - "where-to-vote-outline" - ], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Michael Irigoyen" - }, - { - "id": "03F79839-314C-4F29-B3E3-43B97D7F7FA6", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-circle", - "codepoint": "F034F", - "aliases": [ - "explore-nearby", - "location-circle" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Google" - }, - { - "id": "B2FF0F5A-4B2C-480C-9022-D84AD78E72ED", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-distance", - "codepoint": "F08F0", - "aliases": [ - "location-distance" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Michael Richins" - }, - { - "id": "6E4368BF-7150-40D2-861B-375421A7774B", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-down", - "codepoint": "F1102", - "aliases": [ - "location-down" - ], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "5FFC5505-B029-4487-A68E-EDE4B708E5B9", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-left", - "codepoint": "F12DB", - "aliases": [ - "location-left" - ], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0283CCF3-BC73-4642-92FA-38E62D635368", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-left-outline", - "codepoint": "F12DD", - "aliases": [ - "location-left-outline" - ], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Michael Irigoyen" - }, - { - "id": "34DD1168-3875-4F77-9C0B-5BCFFB80FBBD", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-minus", - "codepoint": "F0650", - "aliases": [ - "location-minus" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Simran" - }, - { - "id": "21A7EBBF-D884-4A4E-B722-01600B89FFB4", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-minus-outline", - "codepoint": "F12F9", - "aliases": [ - "location-minus-outline" - ], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Geographic Information System", - "Navigation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "6283577D-6B31-4297-8747-4F466580E79A", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-multiple", - "codepoint": "F0350", - "aliases": [ - "map-markers", - "location-multiple", - "locations" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Austin Andrews" - }, - { - "id": "360866E5-D407-4E54-9470-7ECF6759F941", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-multiple-outline", - "codepoint": "F1277", - "aliases": [ - "locations-outline", - "location-multiple-outline", - "map-markers-outline" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Austin Andrews" - }, - { - "id": "92410469-09D9-4C29-AC79-CD0DF882D05F", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-off", - "codepoint": "F0351", - "aliases": [ - "location-off" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Austin Andrews" - }, - { - "id": "48218DC3-F2A6-4C4B-9B5E-0648815B8864", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-off-outline", - "codepoint": "F12FD", - "aliases": [ - "location-off-outline" - ], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DE8F4623-A6D4-4DD4-B61A-5936A0538FD2", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-outline", - "codepoint": "F07D9", - "aliases": [ - "location-outline", - "address-marker-outline", - "location-on-outline", - "place-outline" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Google" - }, - { - "id": "A20F1915-26FB-41BD-A407-B73A90936E76", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-path", - "codepoint": "F0D20", - "aliases": [ - "location-path" - ], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Austin Andrews" - }, - { - "id": "40CBD1A1-11E1-44A6-8627-6F7C658F5E0F", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-plus", - "codepoint": "F0651", - "aliases": [ - "location-plus", - "map-marker-add", - "location-add" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Simran" - }, - { - "id": "C1F80E9D-2408-46FC-9E92-AE61A8D5C650", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-plus-outline", - "codepoint": "F12F8", - "aliases": [ - "map-marker-add-outline", - "location-plus-outline", - "location-add-outline" - ], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Geographic Information System", - "Navigation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C9930FE9-E831-4194-A4FA-905CE141CFEA", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-question", - "codepoint": "F0F07", - "aliases": [ - "location-question" - ], - "styles": [ - "question" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Google" - }, - { - "id": "0F3F436D-95BF-4578-A209-CF8B26DEDA15", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-question-outline", - "codepoint": "F0F08", - "aliases": [ - "location-question-outline" - ], - "styles": [ - "outline", - "question" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Google" - }, - { - "id": "8F346B27-607A-4C98-B83E-C32E921D0468", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-radius", - "codepoint": "F0352", - "aliases": [ - "location-radius" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System", - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "865AB612-D546-431D-85A8-52C305B263F8", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-radius-outline", - "codepoint": "F12FC", - "aliases": [ - "location-radius-outline" - ], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System", - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "8BC7ABEC-FE5F-4C2F-889C-8C8804DD12E4", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-remove", - "codepoint": "F0F09", - "aliases": [ - "location-remove" - ], - "styles": [ - "remove" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "GreenTurtwig" - }, - { - "id": "75FDE93C-EB66-4824-9F96-1B4212BDA785", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-remove-outline", - "codepoint": "F12FA", - "aliases": [ - "location-remove-outline" - ], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Geographic Information System", - "Navigation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D19361A0-41AB-4E11-B4D4-AE50D42B3B2C", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-remove-variant", - "codepoint": "F0F0A", - "aliases": [ - "location-remove-variant-outline" - ], - "styles": [ - "remove", - "variant" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "GreenTurtwig" - }, - { - "id": "445C4B6D-5A56-42F3-845F-92C22A11BB64", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-right", - "codepoint": "F12DC", - "aliases": [ - "location-right" - ], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9456009F-0387-4A76-8B0F-22CCBBA53071", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-right-outline", - "codepoint": "F12DE", - "aliases": [ - "location-right-outline" - ], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B4FB6A62-C598-4E96-8E09-C6A2145EE24C", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-star", - "codepoint": "F1608", - "aliases": [ - "map-marker-favorite", - "location-star", - "location-favorite" - ], - "styles": [ - "star" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9B256D01-4CB0-4736-BBB7-6D44417DD02B", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-star-outline", - "codepoint": "F1609", - "aliases": [ - "map-marker-favorite-outline", - "location-star-outline", - "location-favorite-outline" - ], - "styles": [ - "outline", - "star" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0C1B9015-C0F4-4710-87D2-BA7B710943F2", - "baseIconId": "379B9D93-434B-46E7-9ABC-CAFAB694B209", - "name": "map-marker-up", - "codepoint": "F1103", - "aliases": [ - "location-up" - ], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "3C2F6429-F2F9-49A9-AF23-DD33413D2619", - "baseIconId": "99738FF8-01AE-420D-8481-8B9E1402255B", - "name": "map-minus", - "codepoint": "F0981", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Peter Noble" - }, - { - "id": "164AE88B-F990-471C-8663-EFDC05BA14F0", - "baseIconId": "99738FF8-01AE-420D-8481-8B9E1402255B", - "name": "map-outline", - "codepoint": "F0982", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Google" - }, - { - "id": "3D7A000E-3E94-4B9B-8CAB-2F6923D425B7", - "baseIconId": "99738FF8-01AE-420D-8481-8B9E1402255B", - "name": "map-plus", - "codepoint": "F0983", - "aliases": [ - "map-add" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "Peter Noble" - }, - { - "id": "6FB911AA-DE27-441D-8C62-CD97ECB99DA7", - "baseIconId": "99738FF8-01AE-420D-8481-8B9E1402255B", - "name": "map-search", - "codepoint": "F0984", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "GreenTurtwig" - }, - { - "id": "4EDC2B6E-3E09-41BF-B08C-EB75CEBFFB96", - "baseIconId": "99738FF8-01AE-420D-8481-8B9E1402255B", - "name": "map-search-outline", - "codepoint": "F0985", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Navigation", - "Geographic Information System" - ], - "author": "GreenTurtwig" - }, - { - "id": "061C11C7-55DC-4F79-989C-81756790342A", - "baseIconId": "061C11C7-55DC-4F79-989C-81756790342A", - "name": "mapbox", - "codepoint": "F0BAA", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "4A7710D4-41B8-4D98-A5B9-591943C3B3EF", - "baseIconId": "4A7710D4-41B8-4D98-A5B9-591943C3B3EF", - "name": "margin", - "codepoint": "F0353", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "71E6D8F0-A3D2-43CB-8940-16AA4E1D9825", - "baseIconId": "71E6D8F0-A3D2-43CB-8940-16AA4E1D9825", - "name": "marker", - "codepoint": "F0652", - "aliases": [ - "highlighter" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "CFB791C3-6476-418F-80D4-7B8C5A6D1350", - "baseIconId": "71E6D8F0-A3D2-43CB-8940-16AA4E1D9825", - "name": "marker-cancel", - "codepoint": "F0DD9", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Michael Irigoyen" - }, - { - "id": "74C5E15E-D227-4272-94E6-EDFDD0F66C9A", - "baseIconId": "74C5E15E-D227-4272-94E6-EDFDD0F66C9A", - "name": "marker-check", - "codepoint": "F0355", - "aliases": [ - "beenhere", - "marker-tick" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "7DA03280-B018-4813-973A-9CBC0F6C462B", - "baseIconId": "7DA03280-B018-4813-973A-9CBC0F6C462B", - "name": "mastodon", - "codepoint": "F0AD1", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "224604D9-8F3D-454A-B11F-D4C00231B15B", - "baseIconId": "224604D9-8F3D-454A-B11F-D4C00231B15B", - "name": "material-design", - "codepoint": "F0986", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "878C7F4D-DAD0-4334-A3AA-695FD3AD5391", - "baseIconId": "878C7F4D-DAD0-4334-A3AA-695FD3AD5391", - "name": "material-ui", - "codepoint": "F0357", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "10E7FA7C-8451-44B9-979F-1916AAC7FE28", - "baseIconId": "10E7FA7C-8451-44B9-979F-1916AAC7FE28", - "name": "math-compass", - "codepoint": "F0358", - "aliases": [ - "maths-compass" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math", - "Drawing \/ Art", - "Navigation" - ], - "author": "Gabriel" - }, - { - "id": "6C00C0F3-F537-4591-B7BA-752A1CCD7E38", - "baseIconId": "6C00C0F3-F537-4591-B7BA-752A1CCD7E38", - "name": "math-cos", - "codepoint": "F0C96", - "aliases": [ - "math-cosine", - "maths-cos" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E911AE3C-8505-42CD-889B-0EE3BEDC3B0D", - "baseIconId": "E911AE3C-8505-42CD-889B-0EE3BEDC3B0D", - "name": "math-integral", - "codepoint": "F0FC8", - "aliases": [], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0C6E8DE8-731B-451C-809A-22BFF1DADE36", - "baseIconId": "E911AE3C-8505-42CD-889B-0EE3BEDC3B0D", - "name": "math-integral-box", - "codepoint": "F0FC9", - "aliases": [], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DD9D199B-D026-4771-8028-A813A3893CDE", - "baseIconId": "DD9D199B-D026-4771-8028-A813A3893CDE", - "name": "math-log", - "codepoint": "F1085", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Irigoyen" - }, - { - "id": "6C9569E6-55F1-48AF-A11C-2284315D0CE6", - "baseIconId": "6C9569E6-55F1-48AF-A11C-2284315D0CE6", - "name": "math-norm", - "codepoint": "F0FCA", - "aliases": [ - "code-or", - "parallel" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Math", - "Developer \/ Languages" - ], - "author": "Michael Irigoyen" - }, - { - "id": "4FBD0287-AD44-452B-A97A-E5FDD3542A1F", - "baseIconId": "6C9569E6-55F1-48AF-A11C-2284315D0CE6", - "name": "math-norm-box", - "codepoint": "F0FCB", - "aliases": [ - "code-or-box", - "parallel-box" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Math", - "Developer \/ Languages" - ], - "author": "Michael Irigoyen" - }, - { - "id": "CB473E87-BD2F-4416-A36E-6C4C12194D14", - "baseIconId": "CB473E87-BD2F-4416-A36E-6C4C12194D14", - "name": "math-sin", - "codepoint": "F0C97", - "aliases": [ - "math-sine", - "maths-sin" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Irigoyen" - }, - { - "id": "47194CCD-AF78-430F-AD95-4D564D6E1D18", - "baseIconId": "47194CCD-AF78-430F-AD95-4D564D6E1D18", - "name": "math-tan", - "codepoint": "F0C98", - "aliases": [ - "math-tangent", - "maths-tan" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5D5ED3F2-71BD-44B6-B4BB-61D73211335F", - "baseIconId": "5D5ED3F2-71BD-44B6-B4BB-61D73211335F", - "name": "matrix", - "codepoint": "F0628", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "626FA95C-E655-44A6-BA6A-4B60CED44B6D", - "baseIconId": "626FA95C-E655-44A6-BA6A-4B60CED44B6D", - "name": "medal", - "codepoint": "F0987", - "aliases": [ - "award" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Gaming \/ RPG", - "Sport" - ], - "author": "Michael Richins" - }, - { - "id": "22F9B575-7D95-46A3-BA55-625B12E75AC2", - "baseIconId": "626FA95C-E655-44A6-BA6A-4B60CED44B6D", - "name": "medal-outline", - "codepoint": "F1326", - "aliases": [], - "styles": [ - "outline" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Michael Richins" - }, - { - "id": "7F6DF58A-C9A3-4CE7-9664-28C04218C628", - "baseIconId": "7F6DF58A-C9A3-4CE7-9664-28C04218C628", - "name": "medical-bag", - "codepoint": "F06EF", - "aliases": [ - "first-aid-kit", - "medicine" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Thomas Hunsaker" - }, - { - "id": "EC9D77A4-739A-4641-BE6C-86050DD25FFE", - "baseIconId": "EC9D77A4-739A-4641-BE6C-86050DD25FFE", - "name": "medical-cotton-swab", - "codepoint": "F1AB8", - "aliases": [ - "covid-test", - "medicine" - ], - "styles": [], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Google" - }, - { - "id": "57211BE3-0055-4D43-B05C-3CD0FE10322C", - "baseIconId": "57211BE3-0055-4D43-B05C-3CD0FE10322C", - "name": "medication", - "codepoint": "F1B14", - "aliases": [ - "pill-bottle", - "medicine-bottle", - "bottle-plus" - ], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Health \/ Beauty", - "Medical \/ Hospital" - ], - "author": "Google" - }, - { - "id": "8C286097-F93C-490C-A01F-BB1445A6953C", - "baseIconId": "57211BE3-0055-4D43-B05C-3CD0FE10322C", - "name": "medication-outline", - "codepoint": "F1B15", - "aliases": [ - "pill-bottle-outline", - "medicine-bottle-outline", - "bottle-plus-outline" - ], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Health \/ Beauty", - "Medical \/ Hospital" - ], - "author": "Google" - }, - { - "id": "B68AA118-B8B5-4A2A-BCA2-A12C8C119319", - "baseIconId": "B68AA118-B8B5-4A2A-BCA2-A12C8C119319", - "name": "meditation", - "codepoint": "F117B", - "aliases": [ - "human-meditation" - ], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Sport", - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "E404434E-17DB-4E90-9D97-5355258E1FCF", - "baseIconId": "E404434E-17DB-4E90-9D97-5355258E1FCF", - "name": "memory", - "codepoint": "F035B", - "aliases": [ - "chip" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "6F7286C3-4653-4443-A5A4-400D42A101C5", - "baseIconId": "E404434E-17DB-4E90-9D97-5355258E1FCF", - "name": "memory-arrow-down", - "codepoint": "F1CA6", - "aliases": [ - "chip-arrow-down" - ], - "styles": [ - "arrow" - ], - "version": "7.3.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "7D2EBF4F-6B48-4DAE-B5B5-005B4FC7C9BC", - "baseIconId": "7D2EBF4F-6B48-4DAE-B5B5-005B4FC7C9BC", - "name": "menorah", - "codepoint": "F17D4", - "aliases": [ - "candelabrum", - "candelabra", - "candle" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Religion", - "Holiday" - ], - "author": "Colton Wiscombe" - }, - { - "id": "05D5D57F-2565-4D15-8241-F778B49430CD", - "baseIconId": "05D5D57F-2565-4D15-8241-F778B49430CD", - "name": "menorah-fire", - "codepoint": "F17D5", - "aliases": [ - "menorah-flame", - "candle-flame", - "candelabra-flame", - "candelabra-fire", - "candle-fire", - "candelabrum-fire", - "candelabrum-flame" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Religion", - "Holiday" - ], - "author": "Colton Wiscombe" - }, - { - "id": "0BD2CD08-CCFB-4EC3-B96D-08B0B8230A91", - "baseIconId": "0BD2CD08-CCFB-4EC3-B96D-08B0B8230A91", - "name": "menu", - "codepoint": "F035C", - "aliases": [ - "hamburger-menu" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "04E66167-8706-4CEF-8748-63BDAAF0F19C", - "baseIconId": "0BD2CD08-CCFB-4EC3-B96D-08B0B8230A91", - "name": "menu-close", - "codepoint": "F1C90", - "aliases": [ - "hamburger-close" - ], - "styles": [], - "version": "7.3.96", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "Michael Richins" - }, - { - "id": "624A47B1-947E-45AD-A34F-D5DCC1143C5A", - "baseIconId": "3821BF79-5857-47BE-84E3-A100B7247535", - "name": "menu-down", - "codepoint": "F035D", - "aliases": [ - "arrow-drop-down", - "caret-down" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "EE6F8AAE-7856-4E4C-AC01-3589A2C66D98", - "baseIconId": "3821BF79-5857-47BE-84E3-A100B7247535", - "name": "menu-down-outline", - "codepoint": "F06B6", - "aliases": [ - "caret-down-outline" - ], - "styles": [ - "outline" - ], - "version": "1.7.22", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "91F83E23-FD44-4277-BD91-037B3D7EB72E", - "baseIconId": "C21995A9-094F-4EA8-9127-BA0506B240A6", - "name": "menu-left", - "codepoint": "F035E", - "aliases": [ - "arrow-left" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "BC54AA3D-A450-4079-B40C-457FAE2211D5", - "baseIconId": "C21995A9-094F-4EA8-9127-BA0506B240A6", - "name": "menu-left-outline", - "codepoint": "F0A02", - "aliases": [], - "styles": [ - "outline" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Peter Noble" - }, - { - "id": "AEB414A7-E7A2-46D6-BAA3-CAFA4E06DA38", - "baseIconId": "0BD2CD08-CCFB-4EC3-B96D-08B0B8230A91", - "name": "menu-open", - "codepoint": "F0BAB", - "aliases": [ - "hamburger-open" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "51157881-5A20-4D7D-8E5F-FB0E815C9B3D", - "baseIconId": "05F25B05-A6D6-4863-8B21-6969E10329CF", - "name": "menu-right", - "codepoint": "F035F", - "aliases": [ - "arrow-right" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "DFE8FD81-B967-4E07-A1C9-44A608613E26", - "baseIconId": "05F25B05-A6D6-4863-8B21-6969E10329CF", - "name": "menu-right-outline", - "codepoint": "F0A03", - "aliases": [], - "styles": [ - "outline" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Peter Noble" - }, - { - "id": "6B937FF1-FF63-4829-8BAE-D5E4D1EB64A0", - "baseIconId": "6B937FF1-FF63-4829-8BAE-D5E4D1EB64A0", - "name": "menu-swap", - "codepoint": "F0A64", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "GreenTurtwig" - }, - { - "id": "AAADBDE7-CC0D-4F69-A795-B38C0B00DC62", - "baseIconId": "6B937FF1-FF63-4829-8BAE-D5E4D1EB64A0", - "name": "menu-swap-outline", - "codepoint": "F0A65", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "GreenTurtwig" - }, - { - "id": "A526C6AC-3E29-49D1-91FA-07F95B470626", - "baseIconId": "3AF49B97-A909-4961-9FBB-82C60D7CC773", - "name": "menu-up", - "codepoint": "F0360", - "aliases": [ - "arrow-drop-up", - "caret-up" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "33B1FB6B-D4F4-4B76-820C-4A2B075DB1B3", - "baseIconId": "3AF49B97-A909-4961-9FBB-82C60D7CC773", - "name": "menu-up-outline", - "codepoint": "F06B7", - "aliases": [ - "caret-up-outline" - ], - "styles": [ - "outline" - ], - "version": "1.7.22", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "0D0E7E15-9615-4A66-8933-8BC98675AE3D", - "baseIconId": "0D0E7E15-9615-4A66-8933-8BC98675AE3D", - "name": "merge", - "codepoint": "F0F5C", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message", - "codepoint": "F0361", - "aliases": [ - "chat-bubble" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "213A797A-41C0-4804-A5B1-A841898CCC11", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-alert", - "codepoint": "F0362", - "aliases": [ - "feedback", - "message-warning", - "announcement", - "sms-failed" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Google" - }, - { - "id": "3487FE3E-2B9B-4C69-B64C-B3E699E9EC8C", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-alert-outline", - "codepoint": "F0A04", - "aliases": [ - "announcement-outline", - "feedback-outline", - "message-warning-outline", - "sms-failed-outline" - ], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Colton Wiscombe" - }, - { - "id": "F359CA31-2575-4648-B1E1-466A757F2184", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-arrow-left", - "codepoint": "F12F2", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "EAF47F59-C768-4B46-841F-1D8C216D15F2", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-arrow-left-outline", - "codepoint": "F12F3", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "3292CBC5-7E1D-405F-A8CD-BAB528B88D45", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-arrow-right", - "codepoint": "F12F4", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "BEDCDC33-9EAE-46D2-B380-80A6B47B400C", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-arrow-right-outline", - "codepoint": "F12F5", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "B34D5D57-7A9B-43CD-B58F-D18CD484DCC9", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-badge", - "codepoint": "F1941", - "aliases": [ - "message-unread", - "message-notification" - ], - "styles": [ - "badge" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Notification" - ], - "author": "Google" - }, - { - "id": "E3DAA0CA-4F39-49E0-9D3D-5306D764167D", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-badge-outline", - "codepoint": "F1942", - "aliases": [ - "message-unread-outline", - "message-notification-outline" - ], - "styles": [ - "badge", - "outline" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Notification" - ], - "author": "Google" - }, - { - "id": "80D7EBEA-4C3B-43B9-8181-BEEE728D5D90", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-bookmark", - "codepoint": "F15AC", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "94793E49-C5C4-47A8-87FD-215A923ACA2A", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-bookmark-outline", - "codepoint": "F15AD", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "1EC9427A-2A02-4F74-9C1B-C4EC5E62B793", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-bulleted", - "codepoint": "F06A2", - "aliases": [ - "speaker-notes" - ], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "5AAB267C-9A9C-4966-862D-A2AC910494E5", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-bulleted-off", - "codepoint": "F06A3", - "aliases": [ - "speaker-notes-off" - ], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "84A64220-7304-4667-AAA4-1A347B997199", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-check", - "codepoint": "F1B8A", - "aliases": [], - "styles": [ - "check" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Andrej Sharapov" - }, - { - "id": "1F5EB171-8FDB-4C8A-B748-6B4EAF022243", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-check-outline", - "codepoint": "F1B8B", - "aliases": [], - "styles": [ - "check", - "outline" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Andrej Sharapov" - }, - { - "id": "F0F27B00-3C37-4AC0-B8D7-DB2554894079", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-cog", - "codepoint": "F06F1", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Richins" - }, - { - "id": "B4FCC7EE-5464-4713-A4F4-8C0CA0E9472E", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-cog-outline", - "codepoint": "F1172", - "aliases": [], - "styles": [ - "outline", - "settings", - "variant" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "6434A4B3-F803-4C8B-A03C-BE39E947166B", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-draw", - "codepoint": "F0363", - "aliases": [ - "rate-review" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "1FAB8199-286D-4D00-9AA5-7D4D14AC1B74", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-fast", - "codepoint": "F19CC", - "aliases": [], - "styles": [ - "variant" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "13E100B1-AEB4-4398-9A8D-404F8C765642", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-fast-outline", - "codepoint": "F19CD", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "A9181976-10D1-4CB7-993E-AE8B7DEDEC64", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-flash", - "codepoint": "F15A9", - "aliases": [ - "message-quick" - ], - "styles": [ - "variant" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "DA7B2430-9A55-42D5-AE19-92E108303E79", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-flash-outline", - "codepoint": "F15AA", - "aliases": [ - "message-quick-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "C4C9B194-78C3-47FB-ABF6-5129230527AC", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-image", - "codepoint": "F0364", - "aliases": [ - "mms" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "9C0BC648-202E-476E-A034-48C03F7554BF", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-image-outline", - "codepoint": "F116C", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "953DF020-3B6E-44ED-B858-A220EC7BE82A", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-lock", - "codepoint": "F0FCC", - "aliases": [ - "message-secure" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Simran" - }, - { - "id": "D7D6AAFB-1292-4EA1-A067-728532693834", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-lock-outline", - "codepoint": "F116D", - "aliases": [], - "styles": [ - "lock", - "outline" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Michael Irigoyen" - }, - { - "id": "CF8F9CE5-0B38-4412-A3DD-F9E333C23EF6", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-minus", - "codepoint": "F116E", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "B5CAE2E8-8D8A-4E7C-AAD3-F5EFDE92A8F7", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-minus-outline", - "codepoint": "F116F", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "1F9E05D2-75B6-4039-B0A8-9EF2B647882E", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-off", - "codepoint": "F164D", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "2B210400-A3CE-4EE4-8A9B-A88ACDF47061", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-off-outline", - "codepoint": "F164E", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "2AE3707D-5DE3-41E6-968B-A56D3D9ADD40", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-outline", - "codepoint": "F0365", - "aliases": [ - "chat-bubble-outline" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "C0B4CC94-B6B5-462F-93C2-98F07093614C", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-plus", - "codepoint": "F0653", - "aliases": [ - "message-add" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "47A1A8D9-33C6-4EF4-9F8B-C327A7F45F65", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-plus-outline", - "codepoint": "F10BB", - "aliases": [], - "styles": [ - "outline", - "plus" - ], - "version": "4.2.95", - "deprecated": false, - "tags": [], - "author": "Mike Behnke" - }, - { - "id": "602EE454-C61C-4608-919E-FCCF3B58DE65", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-processing", - "codepoint": "F0366", - "aliases": [ - "sms", - "textsms" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "21EDB8E6-9829-4028-9A40-F03BF23C14DA", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-processing-outline", - "codepoint": "F1170", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "088D1765-3A4B-4BCB-A17B-B07970B3DDAA", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-question", - "codepoint": "F173A", - "aliases": [], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "32AA3ACF-FADE-4ECB-8A16-DECB4CB9ECB9", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-question-outline", - "codepoint": "F173B", - "aliases": [], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "6657779A-7238-4686-B3D5-1244862D7B2C", - "baseIconId": "6657779A-7238-4686-B3D5-1244862D7B2C", - "name": "message-reply", - "codepoint": "F0367", - "aliases": [ - "mode-comment" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "9B0263DD-74DB-4AC6-BF1C-0C7C0170C845", - "baseIconId": "6657779A-7238-4686-B3D5-1244862D7B2C", - "name": "message-reply-outline", - "codepoint": "F173D", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "FF34C5A8-4433-4B47-A9E5-EB836CFFCEC9", - "baseIconId": "6657779A-7238-4686-B3D5-1244862D7B2C", - "name": "message-reply-text", - "codepoint": "F0368", - "aliases": [ - "comment", - "insert-comment" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "56D756E1-57CB-4EA5-9AC3-409D0046C643", - "baseIconId": "6657779A-7238-4686-B3D5-1244862D7B2C", - "name": "message-reply-text-outline", - "codepoint": "F173E", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "4B15BF16-CD96-4427-9EA4-5A8B09F3A2B6", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-settings", - "codepoint": "F06F0", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Richins" - }, - { - "id": "28C31415-ECC5-4192-A04A-C3C1F810019B", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-settings-outline", - "codepoint": "F1171", - "aliases": [], - "styles": [ - "outline", - "settings" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "FF8D4F38-8A77-4FDD-8C6D-D17F6A44516D", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-star", - "codepoint": "F069A", - "aliases": [], - "styles": [ - "star" - ], - "version": "1.7.12", - "deprecated": false, - "tags": [], - "author": "Teodor Sandu" - }, - { - "id": "F2B4075E-3226-40CB-9165-2C66A4BB4BBD", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-star-outline", - "codepoint": "F1250", - "aliases": [], - "styles": [ - "outline", - "star" - ], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "Teodor Sandu" - }, - { - "id": "D2AFF074-2CE4-442D-AF1A-64B168BC622A", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-text", - "codepoint": "F0369", - "aliases": [ - "chat" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "BF83F7B1-BA68-4443-9FD1-FB0A9C8D9D60", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-text-clock", - "codepoint": "F1173", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "461285B8-FAB1-46BA-95C5-611476333EE4", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-text-clock-outline", - "codepoint": "F1174", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9CD08DBB-70E0-41B6-8BAA-79B9D4FE11AA", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-text-fast", - "codepoint": "F19CE", - "aliases": [], - "styles": [ - "variant" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "3EA07D0B-1C28-4140-9CF3-60E741D34A65", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-text-fast-outline", - "codepoint": "F19CF", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "362401F1-947F-45FD-8047-F515CB2F7C44", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-text-lock", - "codepoint": "F0FCD", - "aliases": [ - "message-text-secure" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Simran" - }, - { - "id": "223FE0D4-F0C4-426A-8784-72F28455AB67", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-text-lock-outline", - "codepoint": "F1175", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E8C7D2D2-5B78-40E9-A3E6-51B9C31A43F8", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-text-outline", - "codepoint": "F036A", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "7AEB07C3-0EFC-4D74-BB5B-2EB1288DC27D", - "baseIconId": "99DA4752-8C79-44D8-8286-6EBD696F0B45", - "name": "message-video", - "codepoint": "F036B", - "aliases": [ - "voice-chat" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "78644A46-55EA-4208-B3DC-89C79B5F96A5", - "baseIconId": "78644A46-55EA-4208-B3DC-89C79B5F96A5", - "name": "meteor", - "codepoint": "F0629", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "A42A0B48-3570-4056-9745-6FEC4CE8EB8E", - "baseIconId": "A42A0B48-3570-4056-9745-6FEC4CE8EB8E", - "name": "meter-electric", - "codepoint": "F1A57", - "aliases": [ - "power-meter", - "electricity" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "463AE2E1-1BA3-444B-9182-D252575B2C8E", - "baseIconId": "A42A0B48-3570-4056-9745-6FEC4CE8EB8E", - "name": "meter-electric-outline", - "codepoint": "F1A58", - "aliases": [ - "power-meter-outline", - "electricity-outline" - ], - "styles": [ - "outline" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "44BDA87A-AB07-4DC1-89FB-0D1F55B6622F", - "baseIconId": "44BDA87A-AB07-4DC1-89FB-0D1F55B6622F", - "name": "meter-gas", - "codepoint": "F1A59", - "aliases": [ - "natural-gas" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "7960EDB3-0C0D-47C8-B837-C606FEA6B524", - "baseIconId": "44BDA87A-AB07-4DC1-89FB-0D1F55B6622F", - "name": "meter-gas-outline", - "codepoint": "F1A5A", - "aliases": [ - "natural-gas-outline" - ], - "styles": [ - "outline" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "13256CBF-E284-4229-AAB9-5612FBADD060", - "baseIconId": "13256CBF-E284-4229-AAB9-5612FBADD060", - "name": "metronome", - "codepoint": "F07DA", - "aliases": [ - "tempo", - "bpm", - "beats-per-minute" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Haley Halcyon" - }, - { - "id": "43A2B10E-F7DF-4181-B607-EC2039AFFA0D", - "baseIconId": "13256CBF-E284-4229-AAB9-5612FBADD060", - "name": "metronome-tick", - "codepoint": "F07DB", - "aliases": [ - "tempo-tick", - "bpm-tick", - "beats-per-minute-tick" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Haley Halcyon" - }, - { - "id": "6A3136A3-62AD-4DE6-A783-D9D69AAD8919", - "baseIconId": "6A3136A3-62AD-4DE6-A783-D9D69AAD8919", - "name": "micro-sd", - "codepoint": "F07DC", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "18C99959-2A0E-4095-BAEA-F5B266377648", - "baseIconId": "18C99959-2A0E-4095-BAEA-F5B266377648", - "name": "microphone", - "codepoint": "F036C", - "aliases": [ - "keyboard-voice" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Google" - }, - { - "id": "5B1FA77D-0384-4931-AFD8-C4FF5D73D372", - "baseIconId": "18C99959-2A0E-4095-BAEA-F5B266377648", - "name": "microphone-message", - "codepoint": "F050A", - "aliases": [ - "tts", - "text-to-speech" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "1AE8F7A9-5454-44D2-B16D-1D383E33978D", - "baseIconId": "18C99959-2A0E-4095-BAEA-F5B266377648", - "name": "microphone-message-off", - "codepoint": "F050B", - "aliases": [ - "tts-off", - "text-to-speech-off" - ], - "styles": [ - "off" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "FFAA9F2E-96F9-43A3-BC4E-F7562703E6A1", - "baseIconId": "18C99959-2A0E-4095-BAEA-F5B266377648", - "name": "microphone-minus", - "codepoint": "F08B3", - "aliases": [ - "microphone-remove" - ], - "styles": [], - "version": "2.2.43", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "90AD0141-2243-49F0-8B84-FF909244D237", - "baseIconId": "18C99959-2A0E-4095-BAEA-F5B266377648", - "name": "microphone-off", - "codepoint": "F036D", - "aliases": [ - "mic-off" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Google" - }, - { - "id": "E152DB47-F7EE-42A5-A01B-DC5E54A525D8", - "baseIconId": "18C99959-2A0E-4095-BAEA-F5B266377648", - "name": "microphone-outline", - "codepoint": "F036E", - "aliases": [ - "mic-none" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Google" - }, - { - "id": "61F84878-9DAD-45D9-8A79-65143EA32F37", - "baseIconId": "18C99959-2A0E-4095-BAEA-F5B266377648", - "name": "microphone-plus", - "codepoint": "F08B4", - "aliases": [ - "microphone-add" - ], - "styles": [], - "version": "2.2.43", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "C209FA9B-CE60-4CC6-853D-0180D05CDF93", - "baseIconId": "18C99959-2A0E-4095-BAEA-F5B266377648", - "name": "microphone-question", - "codepoint": "F1989", - "aliases": [ - "microphone-help" - ], - "styles": [ - "question" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Audio", - "Music" - ], - "author": "Michael Irigoyen" - }, - { - "id": "89B1E3B0-1970-4ACC-B2DC-B45DFC33DE4B", - "baseIconId": "18C99959-2A0E-4095-BAEA-F5B266377648", - "name": "microphone-question-outline", - "codepoint": "F198A", - "aliases": [ - "microphone-help-outline" - ], - "styles": [ - "outline", - "question" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Audio", - "Music" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E8F70177-01CF-4C20-9956-DCA7B331FED6", - "baseIconId": "18C99959-2A0E-4095-BAEA-F5B266377648", - "name": "microphone-settings", - "codepoint": "F036F", - "aliases": [ - "settings-voice" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Google" - }, - { - "id": "5824EE2F-01BA-42E7-A943-B0D1C569B2C5", - "baseIconId": "18C99959-2A0E-4095-BAEA-F5B266377648", - "name": "microphone-variant", - "codepoint": "F0370", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Austin Andrews" - }, - { - "id": "B0811263-2D40-44D9-945D-13393A170311", - "baseIconId": "18C99959-2A0E-4095-BAEA-F5B266377648", - "name": "microphone-variant-off", - "codepoint": "F0371", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Austin Andrews" - }, - { - "id": "CFCFD9FE-AFF3-4D4F-A7C6-A40E0886B064", - "baseIconId": "CFCFD9FE-AFF3-4D4F-A7C6-A40E0886B064", - "name": "microscope", - "codepoint": "F0654", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Simran" - }, - { - "id": "4636AAFF-A0E5-494C-8630-31142B4A2F48", - "baseIconId": "4636AAFF-A0E5-494C-8630-31142B4A2F48", - "name": "microsoft", - "codepoint": "F0372", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "94560EAB-E027-4462-BBD8-C6921D90CC07", - "baseIconId": "94560EAB-E027-4462-BBD8-C6921D90CC07", - "name": "microsoft-access", - "codepoint": "F138E", - "aliases": [], - "styles": [], - "version": "5.0.45", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "7701BECC-343D-4BE8-B33A-B88ABACA8F26", - "baseIconId": "7701BECC-343D-4BE8-B33A-B88ABACA8F26", - "name": "microsoft-azure", - "codepoint": "F0805", - "aliases": [], - "styles": [], - "version": "2.1.19", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "67025D74-AB54-43B5-82EE-085CCDA019E6", - "baseIconId": "67025D74-AB54-43B5-82EE-085CCDA019E6", - "name": "microsoft-azure-devops", - "codepoint": "F0FD5", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "CB038F2A-85DE-4F59-B694-D4805D66322B", - "baseIconId": "CB038F2A-85DE-4F59-B694-D4805D66322B", - "name": "microsoft-bing", - "codepoint": "F00A4", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "9846C329-0B20-40A4-9362-D350C063F53C", - "baseIconId": "9846C329-0B20-40A4-9362-D350C063F53C", - "name": "microsoft-dynamics-365", - "codepoint": "F0988", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "C2D33448-5C6E-41D9-89B4-65184FF5EE15", - "baseIconId": "C2D33448-5C6E-41D9-89B4-65184FF5EE15", - "name": "microsoft-edge", - "codepoint": "F01E9", - "aliases": [ - "microsoft-edge" - ], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "ACD47746-F44B-496D-990B-58FC729F372E", - "baseIconId": "ACD47746-F44B-496D-990B-58FC729F372E", - "name": "microsoft-excel", - "codepoint": "F138F", - "aliases": [], - "styles": [], - "version": "5.0.45", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "255BB365-7B2F-46C7-B85E-EFDAD527BB54", - "baseIconId": "255BB365-7B2F-46C7-B85E-EFDAD527BB54", - "name": "microsoft-internet-explorer", - "codepoint": "F0300", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "7E2456A3-891B-43F4-B233-AA0D890815CF", - "baseIconId": "7E2456A3-891B-43F4-B233-AA0D890815CF", - "name": "microsoft-office", - "codepoint": "F03C6", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "455893F6-D0C4-4257-ABE4-85B1D68F60FF", - "baseIconId": "455893F6-D0C4-4257-ABE4-85B1D68F60FF", - "name": "microsoft-onedrive", - "codepoint": "F03CA", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "E95EC3DF-2A48-4167-9F22-F4E735D4F298", - "baseIconId": "E95EC3DF-2A48-4167-9F22-F4E735D4F298", - "name": "microsoft-onenote", - "codepoint": "F0747", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "0AE81D55-4520-4975-B406-145C74ECF033", - "baseIconId": "0AE81D55-4520-4975-B406-145C74ECF033", - "name": "microsoft-outlook", - "codepoint": "F0D22", - "aliases": [], - "styles": [], - "version": "3.3.92", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "6EA8C442-3C67-4AC3-89F9-C628942CA8E0", - "baseIconId": "6EA8C442-3C67-4AC3-89F9-C628942CA8E0", - "name": "microsoft-powerpoint", - "codepoint": "F1390", - "aliases": [], - "styles": [], - "version": "5.0.45", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "D4F99553-AAF4-406A-8C02-71850F75E07E", - "baseIconId": "D4F99553-AAF4-406A-8C02-71850F75E07E", - "name": "microsoft-sharepoint", - "codepoint": "F1391", - "aliases": [], - "styles": [], - "version": "5.0.45", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "390FC04F-F2A9-44F5-9808-6370A647BAF0", - "baseIconId": "390FC04F-F2A9-44F5-9808-6370A647BAF0", - "name": "microsoft-teams", - "codepoint": "F02BB", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "E009DA08-136C-465C-8481-308E99BCA3BF", - "baseIconId": "E009DA08-136C-465C-8481-308E99BCA3BF", - "name": "microsoft-visual-studio", - "codepoint": "F0610", - "aliases": [ - "visualstudio" - ], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "6D1D5836-B731-41C4-A829-86E5741A0784", - "baseIconId": "6D1D5836-B731-41C4-A829-86E5741A0784", - "name": "microsoft-visual-studio-code", - "codepoint": "F0A1E", - "aliases": [ - "vs-code" - ], - "styles": [], - "version": "2.5.94", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "6E06B49E-5127-4D5A-9C8B-F58BA8943BC4", - "baseIconId": "6E06B49E-5127-4D5A-9C8B-F58BA8943BC4", - "name": "microsoft-windows", - "codepoint": "F05B3", - "aliases": [ - "microsoft-windows" - ], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Gaming \/ RPG" - ], - "author": "Contributors" - }, - { - "id": "AD21ACB2-11A5-4C30-907B-FFF1A5904738", - "baseIconId": "6E06B49E-5127-4D5A-9C8B-F58BA8943BC4", - "name": "microsoft-windows-classic", - "codepoint": "F0A21", - "aliases": [], - "styles": [], - "version": "2.5.94", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "BBB336AA-A225-44EE-B8AA-14AB109C505D", - "baseIconId": "BBB336AA-A225-44EE-B8AA-14AB109C505D", - "name": "microsoft-word", - "codepoint": "F1392", - "aliases": [], - "styles": [], - "version": "5.0.45", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "B7B4ECD9-2895-4E36-88A9-5F3AC5D6C264", - "baseIconId": "B7B4ECD9-2895-4E36-88A9-5F3AC5D6C264", - "name": "microsoft-xbox", - "codepoint": "F05B9", - "aliases": [ - "xbox-live", - "microsoft" - ], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Social Media", - "Brand \/ Logo", - "Gaming \/ RPG" - ], - "author": "Contributors" - }, - { - "id": "74BB58AC-EF8B-447C-A15D-C444F1F67D93", - "baseIconId": "74BB58AC-EF8B-447C-A15D-C444F1F67D93", - "name": "microsoft-xbox-controller", - "codepoint": "F05BA", - "aliases": [ - "microsoft-xbox-gamepad" - ], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "57F11EDC-2759-4D62-BDD2-C7C3F5199623", - "baseIconId": "74BB58AC-EF8B-447C-A15D-C444F1F67D93", - "name": "microsoft-xbox-controller-battery-alert", - "codepoint": "F074B", - "aliases": [ - "xbox-controller-battery-warning", - "microsoft-xbox-gamepad-battery-alert" - ], - "styles": [], - "version": "1.9.32", - "deprecated": true, - "tags": [ - "Battery", - "Gaming \/ RPG", - "Alert \/ Error" - ], - "author": "Austin Andrews" - }, - { - "id": "738FB781-E590-444B-85B8-1773DDC814E9", - "baseIconId": "74BB58AC-EF8B-447C-A15D-C444F1F67D93", - "name": "microsoft-xbox-controller-battery-charging", - "codepoint": "F0A22", - "aliases": [ - "microsoft-xbox-gamepad-battery-charging" - ], - "styles": [], - "version": "2.5.94", - "deprecated": true, - "tags": [ - "Gaming \/ RPG", - "Battery" - ], - "author": "Contributors" - }, - { - "id": "51BB7455-5893-4F47-92D1-B3FD408C2ADC", - "baseIconId": "74BB58AC-EF8B-447C-A15D-C444F1F67D93", - "name": "microsoft-xbox-controller-battery-empty", - "codepoint": "F074C", - "aliases": [ - "microsoft-xbox-gamepad-battery-empty" - ], - "styles": [], - "version": "1.9.32", - "deprecated": true, - "tags": [ - "Battery", - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "CC73B4E7-6B14-459D-AED5-35E50655C05C", - "baseIconId": "74BB58AC-EF8B-447C-A15D-C444F1F67D93", - "name": "microsoft-xbox-controller-battery-full", - "codepoint": "F074D", - "aliases": [ - "microsoft-xbox-gamepad-battery-full" - ], - "styles": [], - "version": "1.9.32", - "deprecated": true, - "tags": [ - "Battery", - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "B65873D1-4808-4C3C-8AD6-A242D61B1985", - "baseIconId": "74BB58AC-EF8B-447C-A15D-C444F1F67D93", - "name": "microsoft-xbox-controller-battery-low", - "codepoint": "F074E", - "aliases": [ - "microsoft-xbox-gamepad-battery-low" - ], - "styles": [], - "version": "1.9.32", - "deprecated": true, - "tags": [ - "Battery", - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "2B434E26-4ECE-4654-BBDC-4FE13CCCEE3E", - "baseIconId": "74BB58AC-EF8B-447C-A15D-C444F1F67D93", - "name": "microsoft-xbox-controller-battery-medium", - "codepoint": "F074F", - "aliases": [ - "microsoft-xbox-gamepad-battery-medium" - ], - "styles": [], - "version": "1.9.32", - "deprecated": true, - "tags": [ - "Battery", - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "9CC18C3C-57B6-470C-9F09-80B62ECFABD7", - "baseIconId": "74BB58AC-EF8B-447C-A15D-C444F1F67D93", - "name": "microsoft-xbox-controller-battery-unknown", - "codepoint": "F0750", - "aliases": [ - "microsoft-xbox-gamepad-battery-unknown" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Battery", - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "03720A4C-EA6B-4D58-B7D8-5A8DA745B125", - "baseIconId": "74BB58AC-EF8B-447C-A15D-C444F1F67D93", - "name": "microsoft-xbox-controller-menu", - "codepoint": "F0E6F", - "aliases": [], - "styles": [], - "version": "3.6.95", - "deprecated": true, - "tags": [ - "Gaming \/ RPG" - ], - "author": "GreenTurtwig" - }, - { - "id": "F73FF165-CE6C-4E27-B492-93F3B82C70EE", - "baseIconId": "74BB58AC-EF8B-447C-A15D-C444F1F67D93", - "name": "microsoft-xbox-controller-off", - "codepoint": "F05BB", - "aliases": [ - "microsoft-xbox-gamepad-off" - ], - "styles": [ - "off" - ], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "38E0BCE2-2A91-4D68-B921-9854E18FFB20", - "baseIconId": "74BB58AC-EF8B-447C-A15D-C444F1F67D93", - "name": "microsoft-xbox-controller-view", - "codepoint": "F0E70", - "aliases": [], - "styles": [], - "version": "3.6.95", - "deprecated": true, - "tags": [ - "Gaming \/ RPG" - ], - "author": "GreenTurtwig" - }, - { - "id": "62F69C7A-4CBA-444A-8BFE-E5B7A891CF5D", - "baseIconId": "62F69C7A-4CBA-444A-8BFE-E5B7A891CF5D", - "name": "microwave", - "codepoint": "F0C99", - "aliases": [ - "microwave-oven" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Home Automation", - "Food \/ Drink" - ], - "author": "GreenTurtwig" - }, - { - "id": "8A96C224-F70E-4DBC-996C-57B8591A0D85", - "baseIconId": "62F69C7A-4CBA-444A-8BFE-E5B7A891CF5D", - "name": "microwave-off", - "codepoint": "F1423", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "EF5AA157-F8E2-47FB-9A9C-8ACC66A9C2FB", - "baseIconId": "EF5AA157-F8E2-47FB-9A9C-8ACC66A9C2FB", - "name": "middleware", - "codepoint": "F0F5D", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Richins" - }, - { - "id": "3F74E489-26F5-4BC9-8567-8935E8E8559A", - "baseIconId": "EF5AA157-F8E2-47FB-9A9C-8ACC66A9C2FB", - "name": "middleware-outline", - "codepoint": "F0F5E", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Richins" - }, - { - "id": "57B4C4BB-A8D9-409D-A3A4-E512A4E50CA2", - "baseIconId": "57B4C4BB-A8D9-409D-A3A4-E512A4E50CA2", - "name": "midi", - "codepoint": "F08F1", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Music" - ], - "author": "Contributors" - }, - { - "id": "9AA75C8F-4091-4C92-81A9-DA58CC95E794", - "baseIconId": "9AA75C8F-4091-4C92-81A9-DA58CC95E794", - "name": "midi-port", - "codepoint": "F08F2", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "GreenTurtwig" - }, - { - "id": "F1D9E59B-F221-46E3-91E9-1D98C478CBF3", - "baseIconId": "F1D9E59B-F221-46E3-91E9-1D98C478CBF3", - "name": "mine", - "codepoint": "F0DDA", - "aliases": [], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "84402452-AA4A-43D6-A26C-A0946B48310C", - "baseIconId": "84402452-AA4A-43D6-A26C-A0946B48310C", - "name": "minecraft", - "codepoint": "F0373", - "aliases": [ - "microsoft-minecraft" - ], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "A2E311D2-225E-4AD7-948D-D27AD0362D9F", - "baseIconId": "A2E311D2-225E-4AD7-948D-D27AD0362D9F", - "name": "mini-sd", - "codepoint": "F0A05", - "aliases": [], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "1BFCC4B4-5BA5-4E64-889D-D64B61EA8D81", - "baseIconId": "1BFCC4B4-5BA5-4E64-889D-D64B61EA8D81", - "name": "minidisc", - "codepoint": "F0A06", - "aliases": [], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "2CEA6B7B-E7C9-4D52-9D9D-286E50001B70", - "baseIconId": "2CEA6B7B-E7C9-4D52-9D9D-286E50001B70", - "name": "minus", - "codepoint": "F0374", - "aliases": [ - "remove", - "horizontal-line", - "minimize" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Google" - }, - { - "id": "6BFAE994-AF2D-4B04-965D-9734631D5F0D", - "baseIconId": "2CEA6B7B-E7C9-4D52-9D9D-286E50001B70", - "name": "minus-box", - "codepoint": "F0375", - "aliases": [ - "indeterminate-check-box" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math", - "Form" - ], - "author": "Google" - }, - { - "id": "8B150753-A2AC-4750-B6EC-686D213805DE", - "baseIconId": "2CEA6B7B-E7C9-4D52-9D9D-286E50001B70", - "name": "minus-box-multiple", - "codepoint": "F1141", - "aliases": [ - "library-minus" - ], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Michael Irigoyen" - }, - { - "id": "FCAD03B0-9332-41AF-9992-AF53DDDF6BBA", - "baseIconId": "2CEA6B7B-E7C9-4D52-9D9D-286E50001B70", - "name": "minus-box-multiple-outline", - "codepoint": "F1142", - "aliases": [ - "library-minus-outline" - ], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D37AECEA-5BC3-4C57-8886-BC6C1A86987D", - "baseIconId": "2CEA6B7B-E7C9-4D52-9D9D-286E50001B70", - "name": "minus-box-outline", - "codepoint": "F06F2", - "aliases": [ - "checkbox-indeterminate-outline" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Math", - "Form" - ], - "author": "Google" - }, - { - "id": "DDEB98E7-E016-44CA-8DE7-A31969C2CC04", - "baseIconId": "2CEA6B7B-E7C9-4D52-9D9D-286E50001B70", - "name": "minus-circle", - "codepoint": "F0376", - "aliases": [ - "do-not-disturb-on", - "remove-circle", - "do-not-enter", - "pill-tablet", - "medicine", - "pharmaceutical" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Medical \/ Hospital", - "Form" - ], - "author": "Google" - }, - { - "id": "C7561067-F057-4E26-B8F1-791BD24E0A2C", - "baseIconId": "2CEA6B7B-E7C9-4D52-9D9D-286E50001B70", - "name": "minus-circle-multiple", - "codepoint": "F035A", - "aliases": [ - "coins-minus" - ], - "styles": [ - "circle", - "minus", - "multiple" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Michael Irigoyen" - }, - { - "id": "313B60B3-A740-4F5B-A63E-A5772C20AC0D", - "baseIconId": "2CEA6B7B-E7C9-4D52-9D9D-286E50001B70", - "name": "minus-circle-multiple-outline", - "codepoint": "F0AD3", - "aliases": [ - "coins-minus-outline" - ], - "styles": [ - "circle", - "minus", - "multiple", - "outline" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Michael Irigoyen" - }, - { - "id": "6A57F7D9-D5F6-42B2-A5E2-D160F7E0DB4B", - "baseIconId": "2CEA6B7B-E7C9-4D52-9D9D-286E50001B70", - "name": "minus-circle-off", - "codepoint": "F1459", - "aliases": [ - "do-not-disturb-off", - "remove-circle-off", - "do-not-enter-off" - ], - "styles": [ - "circle", - "off" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "2A82D040-8856-437D-B478-DF448C7BE6A6", - "baseIconId": "2CEA6B7B-E7C9-4D52-9D9D-286E50001B70", - "name": "minus-circle-off-outline", - "codepoint": "F145A", - "aliases": [ - "do-not-disturb-off-outline", - "remove-circle-off-outline", - "do-not-enter-off-outline" - ], - "styles": [ - "circle", - "off", - "outline" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "E1568BA6-EA0E-478F-933F-102F76996D6C", - "baseIconId": "2CEA6B7B-E7C9-4D52-9D9D-286E50001B70", - "name": "minus-circle-outline", - "codepoint": "F0377", - "aliases": [ - "remove-circle-outline", - "do-not-enter-outline", - "do-not-disturb-outline", - "pill-tablet-outline", - "medicine-outline", - "pharmaceutical" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Medical \/ Hospital", - "Form" - ], - "author": "Google" - }, - { - "id": "F48994C7-4A76-43B8-B851-F7389F8B2B59", - "baseIconId": "2CEA6B7B-E7C9-4D52-9D9D-286E50001B70", - "name": "minus-network", - "codepoint": "F0378", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "27A3D3DC-42D9-43CF-B783-8B779BE9AEE6", - "baseIconId": "2CEA6B7B-E7C9-4D52-9D9D-286E50001B70", - "name": "minus-network-outline", - "codepoint": "F0C9A", - "aliases": [], - "styles": [ - "network" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "7761450F-6D9D-452D-B604-1853124C09E2", - "baseIconId": "2CEA6B7B-E7C9-4D52-9D9D-286E50001B70", - "name": "minus-thick", - "codepoint": "F1639", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "AB90BAF0-E671-4418-9CBB-74C3F03A94DB", - "baseIconId": "AB90BAF0-E671-4418-9CBB-74C3F03A94DB", - "name": "mirror", - "codepoint": "F11FD", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "91FE9FDB-B4E7-41CC-ABA2-01FF868F612D", - "baseIconId": "AB90BAF0-E671-4418-9CBB-74C3F03A94DB", - "name": "mirror-rectangle", - "codepoint": "F179F", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5E742652-9430-4B8E-9C4C-19F326A74523", - "baseIconId": "AB90BAF0-E671-4418-9CBB-74C3F03A94DB", - "name": "mirror-variant", - "codepoint": "F17A0", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "BF0B21D2-7266-4639-B2C4-24199863849D", - "baseIconId": "BF0B21D2-7266-4639-B2C4-24199863849D", - "name": "mixed-martial-arts", - "codepoint": "F0D8F", - "aliases": [ - "mma", - "glove" - ], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Google" - }, - { - "id": "5E441030-6DAA-42F9-AF03-A4EB86AF0A51", - "baseIconId": "5E441030-6DAA-42F9-AF03-A4EB86AF0A51", - "name": "mixed-reality", - "codepoint": "F087F", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "9DD7B3EE-91B8-4D42-A781-2B12B0343C0B", - "baseIconId": "9DD7B3EE-91B8-4D42-A781-2B12B0343C0B", - "name": "molecule", - "codepoint": "F0BAC", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "F3FDFD25-C4F6-4ECF-8F8B-C460E4C6BD7C", - "baseIconId": "F3FDFD25-C4F6-4ECF-8F8B-C460E4C6BD7C", - "name": "molecule-co", - "codepoint": "F12FE", - "aliases": [ - "carbon-monoxide", - "gas-co" - ], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Science" - ], - "author": "Michael Irigoyen" - }, - { - "id": "6F7A0011-054A-4805-A970-A48BEAA9454B", - "baseIconId": "6F7A0011-054A-4805-A970-A48BEAA9454B", - "name": "molecule-co2", - "codepoint": "F07E4", - "aliases": [ - "periodic-table-carbon-dioxide", - "gas-co2" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Science", - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "35091AEB-2AF7-4F92-A249-2955F01404A3", - "baseIconId": "35091AEB-2AF7-4F92-A249-2955F01404A3", - "name": "monitor", - "codepoint": "F0379", - "aliases": [ - "desktop-windows" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "Google" - }, - { - "id": "F40F74F4-288D-495A-9B2E-1C9D3160B272", - "baseIconId": "35091AEB-2AF7-4F92-A249-2955F01404A3", - "name": "monitor-account", - "codepoint": "F1A5B", - "aliases": [ - "teleconference", - "virtual-meeting", - "video-chat" - ], - "styles": [ - "account" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Account \/ User", - "Device \/ Tech" - ], - "author": "John Brissette" - }, - { - "id": "8C772F38-CA90-4CAD-BC26-DE68A84FD6F4", - "baseIconId": "35091AEB-2AF7-4F92-A249-2955F01404A3", - "name": "monitor-arrow-down", - "codepoint": "F19D0", - "aliases": [ - "monitor-download" - ], - "styles": [ - "arrow" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D3299EA1-1120-4457-86B0-7162B329B826", - "baseIconId": "35091AEB-2AF7-4F92-A249-2955F01404A3", - "name": "monitor-arrow-down-variant", - "codepoint": "F19D1", - "aliases": [ - "monitor-download" - ], - "styles": [ - "arrow", - "variant" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B2A9CF60-30E4-46DC-9116-ED206912B156", - "baseIconId": "35091AEB-2AF7-4F92-A249-2955F01404A3", - "name": "monitor-cellphone", - "codepoint": "F0989", - "aliases": [ - "monitor-mobile-phone", - "monitor-smartphone" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Device \/ Tech" - ], - "author": "Google" - }, - { - "id": "6665F86B-B97E-4AB8-8476-06B045706183", - "baseIconId": "35091AEB-2AF7-4F92-A249-2955F01404A3", - "name": "monitor-cellphone-star", - "codepoint": "F098A", - "aliases": [ - "important-devices", - "monitor-mobile-phone-star", - "monitor-smartphone-star", - "monitor-cellphone-favorite" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Device \/ Tech" - ], - "author": "Google" - }, - { - "id": "B4B96C77-6C5D-40A5-83E4-548E48CBECED", - "baseIconId": "35091AEB-2AF7-4F92-A249-2955F01404A3", - "name": "monitor-dashboard", - "codepoint": "F0A07", - "aliases": [], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "Austin Andrews" - }, - { - "id": "E04B6974-751D-4A55-9309-02336DDB5070", - "baseIconId": "35091AEB-2AF7-4F92-A249-2955F01404A3", - "name": "monitor-edit", - "codepoint": "F12C6", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Michael Richins" - }, - { - "id": "598E13C9-CC60-4FAF-A13A-024B1B4CF1EE", - "baseIconId": "35091AEB-2AF7-4F92-A249-2955F01404A3", - "name": "monitor-eye", - "codepoint": "F13B4", - "aliases": [], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [], - "author": "MaksUr" - }, - { - "id": "59544B54-B690-47F4-AE30-4A9D9FE08FD1", - "baseIconId": "35091AEB-2AF7-4F92-A249-2955F01404A3", - "name": "monitor-lock", - "codepoint": "F0DDB", - "aliases": [], - "styles": [ - "lock" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Device \/ Tech", - "Lock" - ], - "author": "Austin Andrews" - }, - { - "id": "7768BF7B-0A52-4492-88BD-5A482E4D61C3", - "baseIconId": "35091AEB-2AF7-4F92-A249-2955F01404A3", - "name": "monitor-multiple", - "codepoint": "F037A", - "aliases": [ - "monitors" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "Chris Litherland" - }, - { - "id": "73F67174-7800-44CB-9850-61A01F9DAD34", - "baseIconId": "35091AEB-2AF7-4F92-A249-2955F01404A3", - "name": "monitor-off", - "codepoint": "F0D90", - "aliases": [], - "styles": [ - "off" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "Google" - }, - { - "id": "9211237F-8920-49C2-90A6-63D97045F5EB", - "baseIconId": "35091AEB-2AF7-4F92-A249-2955F01404A3", - "name": "monitor-screenshot", - "codepoint": "F0E51", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "Google" - }, - { - "id": "905C2321-6A99-46C7-8EE7-D7193A95E5E7", - "baseIconId": "35091AEB-2AF7-4F92-A249-2955F01404A3", - "name": "monitor-share", - "codepoint": "F1483", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "E02B1C8D-DA14-4AF2-8EB3-397AD9DAF1AB", - "baseIconId": "35091AEB-2AF7-4F92-A249-2955F01404A3", - "name": "monitor-shimmer", - "codepoint": "F1104", - "aliases": [ - "monitor-clean" - ], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "kevin-hens" - }, - { - "id": "CE677999-FD3D-4120-A755-2EF579A82528", - "baseIconId": "35091AEB-2AF7-4F92-A249-2955F01404A3", - "name": "monitor-small", - "codepoint": "F1876", - "aliases": [ - "monitor-crt" - ], - "styles": [ - "variant" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0D49AB2B-17E4-43B8-B72E-05C4A11500F6", - "baseIconId": "35091AEB-2AF7-4F92-A249-2955F01404A3", - "name": "monitor-speaker", - "codepoint": "F0F5F", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "Hans B\u00f6hm" - }, - { - "id": "56879DCE-4616-45D0-A1C2-B9262776840B", - "baseIconId": "35091AEB-2AF7-4F92-A249-2955F01404A3", - "name": "monitor-speaker-off", - "codepoint": "F0F60", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "Hans B\u00f6hm" - }, - { - "id": "6E372D46-ECFB-4275-B058-036C89A3413B", - "baseIconId": "35091AEB-2AF7-4F92-A249-2955F01404A3", - "name": "monitor-star", - "codepoint": "F0DDC", - "aliases": [ - "monitor-favorite" - ], - "styles": [ - "star" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "Austin Andrews" - }, - { - "id": "1F476F4F-1689-4729-A5A5-A2BB1C49DC90", - "baseIconId": "35091AEB-2AF7-4F92-A249-2955F01404A3", - "name": "monitor-vertical", - "codepoint": "F1C33", - "aliases": [], - "styles": [], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "F9A81054-5651-47DE-9507-E0743AE78E77", - "baseIconId": "1F3CFDCC-7391-4AA6-994C-DCC6F3D28A46", - "name": "moon-first-quarter", - "codepoint": "F0F61", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "536FA8E5-13DF-49A6-9C43-9874847AA01A", - "baseIconId": "1F3CFDCC-7391-4AA6-994C-DCC6F3D28A46", - "name": "moon-full", - "codepoint": "F0F62", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "690C3986-7EEB-4DD2-87EE-BEB93A917B14", - "baseIconId": "1F3CFDCC-7391-4AA6-994C-DCC6F3D28A46", - "name": "moon-last-quarter", - "codepoint": "F0F63", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1F3CFDCC-7391-4AA6-994C-DCC6F3D28A46", - "baseIconId": "1F3CFDCC-7391-4AA6-994C-DCC6F3D28A46", - "name": "moon-new", - "codepoint": "F0F64", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B324215D-A609-4B93-A859-1A0A24391C01", - "baseIconId": "1F3CFDCC-7391-4AA6-994C-DCC6F3D28A46", - "name": "moon-waning-crescent", - "codepoint": "F0F65", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B03A16BE-0679-4635-B2F7-6553C3761211", - "baseIconId": "1F3CFDCC-7391-4AA6-994C-DCC6F3D28A46", - "name": "moon-waning-gibbous", - "codepoint": "F0F66", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "FAE0DF65-BA66-4F45-B246-35EFD1DF6FF2", - "baseIconId": "1F3CFDCC-7391-4AA6-994C-DCC6F3D28A46", - "name": "moon-waxing-crescent", - "codepoint": "F0F67", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "6DF419CE-770C-4662-8681-5D8ADE9C789E", - "baseIconId": "1F3CFDCC-7391-4AA6-994C-DCC6F3D28A46", - "name": "moon-waxing-gibbous", - "codepoint": "F0F68", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DC294862-E625-444E-83A4-7D5F2255EE0C", - "baseIconId": "DC294862-E625-444E-83A4-7D5F2255EE0C", - "name": "moped", - "codepoint": "F1086", - "aliases": [ - "scooter", - "vespa", - "delivery-dining" - ], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Transportation + Other" - ], - "author": "Google" - }, - { - "id": "5DA43EA9-3DE7-49D8-8884-BB4D8ED31305", - "baseIconId": "DC294862-E625-444E-83A4-7D5F2255EE0C", - "name": "moped-electric", - "codepoint": "F15B7", - "aliases": [ - "scooter-electric", - "vespa-electric", - "delivery-dining-electric" - ], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Google" - }, - { - "id": "FF5A5D35-99C8-475C-B672-362AF0FA9FC6", - "baseIconId": "DC294862-E625-444E-83A4-7D5F2255EE0C", - "name": "moped-electric-outline", - "codepoint": "F15B8", - "aliases": [ - "scooter-electric-outline", - "vespa-electric-outline", - "delivery-dining-electric-outline" - ], - "styles": [ - "outline" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Google" - }, - { - "id": "2C84B4E2-F872-423E-B9E2-918DD013E131", - "baseIconId": "DC294862-E625-444E-83A4-7D5F2255EE0C", - "name": "moped-outline", - "codepoint": "F15B9", - "aliases": [ - "scooter-outline", - "vespa-outline", - "delivery-dining-outline" - ], - "styles": [ - "outline" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Google" - }, - { - "id": "6284690E-A12C-4209-A779-18284E241DE3", - "baseIconId": "6284690E-A12C-4209-A779-18284E241DE3", - "name": "more", - "codepoint": "F037B", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "C810823C-6678-43F7-8DBB-5D32F503BC59", - "baseIconId": "C810823C-6678-43F7-8DBB-5D32F503BC59", - "name": "mortar-pestle", - "codepoint": "F1748", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "71BD315A-B0C1-4B8B-93CB-2A952C3A7C16", - "baseIconId": "C810823C-6678-43F7-8DBB-5D32F503BC59", - "name": "mortar-pestle-plus", - "codepoint": "F03F1", - "aliases": [ - "chemist", - "local-pharmacy", - "mortar-pestle", - "pharmaceutical" - ], - "styles": [ - "plus" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Google" - }, - { - "id": "55847C89-2AE5-4F91-85AA-761FD8CE57F0", - "baseIconId": "55847C89-2AE5-4F91-85AA-761FD8CE57F0", - "name": "mosque", - "codepoint": "F0D45", - "aliases": [ - "islam", - "muslim" - ], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Religion" - ], - "author": "Google" - }, - { - "id": "60E1CDBF-4EB9-4240-A7F8-B0476CC62CBC", - "baseIconId": "55847C89-2AE5-4F91-85AA-761FD8CE57F0", - "name": "mosque-outline", - "codepoint": "F1827", - "aliases": [ - "islam", - "muslim" - ], - "styles": [ - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Places", - "Religion" - ], - "author": "Google" - }, - { - "id": "12E07384-2645-4F67-9A4F-4DA26FA1F75C", - "baseIconId": "12E07384-2645-4F67-9A4F-4DA26FA1F75C", - "name": "mother-heart", - "codepoint": "F1314", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "People \/ Family" - ], - "author": "Michael Irigoyen" - }, - { - "id": "ACE8B129-F064-47BF-9FD5-AB472736ED43", - "baseIconId": "ACE8B129-F064-47BF-9FD5-AB472736ED43", - "name": "mother-nurse", - "codepoint": "F0D21", - "aliases": [ - "breast-feed" - ], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Medical \/ Hospital", - "People \/ Family" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D5136ED4-FC45-44D8-9DE4-C266844D5131", - "baseIconId": "D5136ED4-FC45-44D8-9DE4-C266844D5131", - "name": "motion", - "codepoint": "F15B2", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "0D1E834E-0B33-49ED-B02B-1EA0E966ADE1", - "baseIconId": "D5136ED4-FC45-44D8-9DE4-C266844D5131", - "name": "motion-outline", - "codepoint": "F15B3", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "B0DBB2D0-8C87-4DD3-AB7A-4BF35A9BFC6C", - "baseIconId": "B0DBB2D0-8C87-4DD3-AB7A-4BF35A9BFC6C", - "name": "motion-pause", - "codepoint": "F1590", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "DE3F5084-9C1D-459E-B3EC-514C040A9C22", - "baseIconId": "B0DBB2D0-8C87-4DD3-AB7A-4BF35A9BFC6C", - "name": "motion-pause-outline", - "codepoint": "F1592", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "04CF9E56-DAFA-474B-8405-2F554F66AEEC", - "baseIconId": "04CF9E56-DAFA-474B-8405-2F554F66AEEC", - "name": "motion-play", - "codepoint": "F158F", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "520E825E-1F91-4EFA-B16F-488E61C02091", - "baseIconId": "04CF9E56-DAFA-474B-8405-2F554F66AEEC", - "name": "motion-play-outline", - "codepoint": "F1591", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "2607909D-AA27-448A-B0E5-E5898790414A", - "baseIconId": "DA42DA16-21E0-4A08-89E4-F634EBBCF85A", - "name": "motion-sensor", - "codepoint": "F0D91", - "aliases": [ - "motion-detector" - ], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "94EEC5E7-5BF7-456E-8A9C-970E3CD46F55", - "baseIconId": "DA42DA16-21E0-4A08-89E4-F634EBBCF85A", - "name": "motion-sensor-off", - "codepoint": "F1435", - "aliases": [], - "styles": [], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D6AADAF8-D44E-44C0-8647-E578B277441D", - "baseIconId": "D6AADAF8-D44E-44C0-8647-E578B277441D", - "name": "motorbike", - "codepoint": "F037C", - "aliases": [ - "motorcycle" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Sport" - ], - "author": "Google" - }, - { - "id": "91B25A35-38AC-497B-A0D8-82053E09E43A", - "baseIconId": "D6AADAF8-D44E-44C0-8647-E578B277441D", - "name": "motorbike-electric", - "codepoint": "F15BA", - "aliases": [ - "motorcycle-electric" - ], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E048C1A8-480D-4289-B026-9D1C64BA4236", - "baseIconId": "D6AADAF8-D44E-44C0-8647-E578B277441D", - "name": "motorbike-off", - "codepoint": "F1B16", - "aliases": [ - "motorcycle-off" - ], - "styles": [ - "off" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Michael Irigoyen" - }, - { - "id": "965CDBD7-9E52-4169-B363-E0428C75C19D", - "baseIconId": "965CDBD7-9E52-4169-B363-E0428C75C19D", - "name": "mouse", - "codepoint": "F037D", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "82AF407C-1290-4636-9299-E4FBA02EC25F", - "baseIconId": "965CDBD7-9E52-4169-B363-E0428C75C19D", - "name": "mouse-bluetooth", - "codepoint": "F098B", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "63EB8966-D3A4-40C1-BC5C-BD4B34069D17", - "baseIconId": "965CDBD7-9E52-4169-B363-E0428C75C19D", - "name": "mouse-move-down", - "codepoint": "F1550", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "63B2417B-4DCD-4DE3-A899-10851795B46F", - "baseIconId": "965CDBD7-9E52-4169-B363-E0428C75C19D", - "name": "mouse-move-up", - "codepoint": "F1551", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "FD9503DC-1ADF-4E78-B0E9-DC3831C6B849", - "baseIconId": "965CDBD7-9E52-4169-B363-E0428C75C19D", - "name": "mouse-move-vertical", - "codepoint": "F1552", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "2FB92E91-9B25-46BF-85D2-BC0A2DB877B1", - "baseIconId": "965CDBD7-9E52-4169-B363-E0428C75C19D", - "name": "mouse-off", - "codepoint": "F037E", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "2E7ADC17-384C-4763-9D52-31AFF16BC864", - "baseIconId": "965CDBD7-9E52-4169-B363-E0428C75C19D", - "name": "mouse-variant", - "codepoint": "F037F", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "7542DE09-B799-4ED5-8ADB-AE809808FAE1", - "baseIconId": "965CDBD7-9E52-4169-B363-E0428C75C19D", - "name": "mouse-variant-off", - "codepoint": "F0380", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "4E3B74C0-3E85-4A50-B5FF-3D6AED1CF016", - "baseIconId": "4E3B74C0-3E85-4A50-B5FF-3D6AED1CF016", - "name": "move-resize", - "codepoint": "F0655", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "7A5B3547-16C4-4000-9082-E13A9139C737", - "baseIconId": "7A5B3547-16C4-4000-9082-E13A9139C737", - "name": "move-resize-variant", - "codepoint": "F0656", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie", - "codepoint": "F0381", - "aliases": [ - "slate", - "clapperboard", - "film", - "movie-creation" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "8B5A9F9F-D0F3-4B9A-844F-D6EE34154837", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-check", - "codepoint": "F16F3", - "aliases": [ - "slate-check", - "clapperboard-check", - "film-check" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Colton Wiscombe" - }, - { - "id": "74A2D617-040C-4313-9D9B-CDB2FFDCC0D7", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-check-outline", - "codepoint": "F16F4", - "aliases": [ - "slate-check-outline", - "clapperboard-check-outline", - "film-check-outline" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Colton Wiscombe" - }, - { - "id": "B06E7709-247C-4F57-BFA6-345C1ABAE8C3", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-cog", - "codepoint": "F16F5", - "aliases": [ - "slate-cog", - "clapperboard-cog", - "film-cog" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie", - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "388C5417-3BC7-491F-B708-AD81DCB237C8", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-cog-outline", - "codepoint": "F16F6", - "aliases": [ - "slate-cog-outline", - "clapperboard-cog-outline", - "film-cog-outline" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie", - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "EBABD564-B269-4D31-995B-062C7EBEFC15", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-edit", - "codepoint": "F1122", - "aliases": [ - "slate-edit", - "clapperboard-edit", - "film-edit" - ], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Video \/ Movie", - "Edit \/ Modify" - ], - "author": "Christopher Schreiner" - }, - { - "id": "16912257-3D89-4630-9CC5-1FB0EB4A112C", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-edit-outline", - "codepoint": "F1123", - "aliases": [ - "slate-edit-outline", - "clapperboard-edit-outline", - "film-edit-outline" - ], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Video \/ Movie", - "Edit \/ Modify" - ], - "author": "Christopher Schreiner" - }, - { - "id": "89C25EF5-4F0B-43A3-9B70-8B87E71FAB8A", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-filter", - "codepoint": "F1124", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "90E11F43-169D-46A2-868F-3EE7B8238371", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-filter-outline", - "codepoint": "F1125", - "aliases": [], - "styles": [ - "outline" - ], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "8437938B-8D4E-4CE9-BE88-D5BBBC39140A", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-minus", - "codepoint": "F16F7", - "aliases": [ - "slate-minus", - "clapperboard-minus", - "film-minus" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Colton Wiscombe" - }, - { - "id": "44B3B4FB-C569-4D4D-A463-C2F6B87A584C", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-minus-outline", - "codepoint": "F16F8", - "aliases": [ - "slate-minus-outline", - "clapperboard-minus-outline", - "film-minus-outline" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Colton Wiscombe" - }, - { - "id": "2260571C-D9DD-4720-AFB7-C54A32585767", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-off", - "codepoint": "F16F9", - "aliases": [ - "slate-off", - "clapperboard-off", - "film-off" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Colton Wiscombe" - }, - { - "id": "6E94BD0C-39BF-4D74-99BB-738062232A19", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-off-outline", - "codepoint": "F16FA", - "aliases": [ - "slate-off-outline", - "clapperboard-off-outline", - "film-off-outline" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Colton Wiscombe" - }, - { - "id": "F23718ED-A1EE-42D7-84B2-773E110AAB63", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-open", - "codepoint": "F0FCE", - "aliases": [ - "slate-open", - "clapperboard-open", - "film-open", - "movie-creation" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "GreenTurtwig" - }, - { - "id": "C3078403-9C18-4F30-983B-E755B9CBA37B", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-open-check", - "codepoint": "F16FB", - "aliases": [ - "slate-open-check", - "clapperboard-open-check", - "film-open-check" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Colton Wiscombe" - }, - { - "id": "3CA87DEB-5A40-4DAF-960B-2AA9A4385F1D", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-open-check-outline", - "codepoint": "F16FC", - "aliases": [ - "slate-open-check-outline", - "clapperboard-open-check-outline", - "film-open-check-outline" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Colton Wiscombe" - }, - { - "id": "20ADB8D7-DA55-463B-A523-9FA0377A1C74", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-open-cog", - "codepoint": "F16FD", - "aliases": [ - "slate-open-cog", - "clapperboard-open-cog", - "film-open-cog" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie", - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "F4936EA7-C151-4D41-84CC-4E02BCA4E01B", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-open-cog-outline", - "codepoint": "F16FE", - "aliases": [ - "slate-open-cog-outline", - "clapperboard-open-cog-outline", - "film-open-cog-outline" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie", - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "BC0C6C6B-C6BE-4E96-BFAF-782866BCF8C2", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-open-edit", - "codepoint": "F16FF", - "aliases": [ - "slate-open-edit", - "clapperboard-open-edit", - "film-open-edit" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie", - "Edit \/ Modify" - ], - "author": "Colton Wiscombe" - }, - { - "id": "83B13E8A-4202-47CF-B67E-34335B0E5B29", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-open-edit-outline", - "codepoint": "F1700", - "aliases": [ - "slate-open-edit-outline", - "clapperboard-open-edit-outline", - "film-open-edit-outline" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie", - "Edit \/ Modify" - ], - "author": "Colton Wiscombe" - }, - { - "id": "6AF20375-5B60-41D4-B63C-7572F590741C", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-open-minus", - "codepoint": "F1701", - "aliases": [ - "slate-open-minus", - "clapperboard-open-minus", - "film-open-minus" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Colton Wiscombe" - }, - { - "id": "61DDE079-6865-4609-B2F6-2770A3A039E1", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-open-minus-outline", - "codepoint": "F1702", - "aliases": [ - "slate-open-minus-outline", - "clapperboard-open-minus-outline", - "film-open-minus-outline" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Colton Wiscombe" - }, - { - "id": "A58F23CF-24CA-42B3-B877-FA9DEA317A3B", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-open-off", - "codepoint": "F1703", - "aliases": [ - "slate-open-off", - "clapperboard-open-off", - "film-open-off" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Colton Wiscombe" - }, - { - "id": "AF946982-D5F6-4E17-8B0A-B091A873F86E", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-open-off-outline", - "codepoint": "F1704", - "aliases": [ - "slate-open-off-outline", - "clapperboard-open-off-outline", - "film-open-off-outline" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Colton Wiscombe" - }, - { - "id": "17E4DACC-FDBF-4206-9F03-428157B91803", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-open-outline", - "codepoint": "F0FCF", - "aliases": [ - "slate-open-outline", - "clapperboard-open-outline", - "film-open-outline", - "movie-creation" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "GreenTurtwig" - }, - { - "id": "F3CB37FD-2C97-4CD1-83C0-18677B81DAC6", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-open-play", - "codepoint": "F1705", - "aliases": [ - "slate-open-play", - "clapperboard-open-play", - "film-open-play" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Colton Wiscombe" - }, - { - "id": "C855F888-FB96-40F5-9346-6B7A993C960A", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-open-play-outline", - "codepoint": "F1706", - "aliases": [ - "slate-open-play-outline", - "clapperboard-open-play-outline", - "film-open-play-outline" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Colton Wiscombe" - }, - { - "id": "C9068163-63A6-44B7-BE11-2FCE6B427CF6", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-open-plus", - "codepoint": "F1707", - "aliases": [ - "clapperboard-open-plus", - "slate-open-plus", - "flim-open-plus" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Colton Wiscombe" - }, - { - "id": "A060D40D-A702-4EA0-9B66-95C31103C223", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-open-plus-outline", - "codepoint": "F1708", - "aliases": [ - "slate-open-plus-outline", - "clapperboard-open-plus-outline", - "film-open-plus-outline" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Colton Wiscombe" - }, - { - "id": "1AA27DAA-CD6F-41C5-BB25-8860B368DC0B", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-open-remove", - "codepoint": "F1709", - "aliases": [ - "slate-open-remove", - "clapperboard-open-remove", - "film-open-remove" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Colton Wiscombe" - }, - { - "id": "320C9DCC-5845-46F6-B3E6-412D22B8BF47", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-open-remove-outline", - "codepoint": "F170A", - "aliases": [ - "slate-open-remove-outline", - "clapperboard-open-remove-outline", - "film-open-remove-outline" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Colton Wiscombe" - }, - { - "id": "FC6ECE54-744A-4A77-B032-897B24064048", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-open-settings", - "codepoint": "F170B", - "aliases": [ - "slate-open-settings", - "clapperboard-open-settings", - "film-open-settings" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie", - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "C481209F-DE3F-4D25-8C4F-0D21CB8D3385", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-open-settings-outline", - "codepoint": "F170C", - "aliases": [ - "slate-open-settings-outline", - "clapperboard-open-settings-outline", - "film-open-settings-outline" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie", - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "D370E43D-3692-4654-B67E-12AA40956EF3", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-open-star", - "codepoint": "F170D", - "aliases": [ - "slate-open-star", - "clapperboard-open-star", - "film-open-star", - "movie-open-favorite" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Colton Wiscombe" - }, - { - "id": "85F303FB-9847-450E-BF4B-7A38C86386AF", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-open-star-outline", - "codepoint": "F170E", - "aliases": [ - "slate-open-star-outline", - "clapperboard-open-star-outline", - "film-open-star-outline", - "movie-open-favorite-outline" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Colton Wiscombe" - }, - { - "id": "8198AA61-F267-4A56-B9D8-5D492B519545", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-outline", - "codepoint": "F0DDD", - "aliases": [ - "slate-outline", - "clapperboard-outline", - "film-outline" - ], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "44B019DA-A010-4B5F-AF03-61DBCC6206DD", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-play", - "codepoint": "F170F", - "aliases": [ - "slate-play", - "clapperboard-play", - "film-play" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Colton Wiscombe" - }, - { - "id": "48071069-C2BD-4B35-97A1-0167DB7B1B13", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-play-outline", - "codepoint": "F1710", - "aliases": [ - "slate-play-outline", - "clapperboard-play-outline", - "film-play-outline" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Colton Wiscombe" - }, - { - "id": "543E83B1-B4CD-4D26-9813-A7F23C44AC5F", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-plus", - "codepoint": "F1711", - "aliases": [ - "slate-plus", - "clapperboard-plus", - "film-plus" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Colton Wiscombe" - }, - { - "id": "1171D3A1-94AD-4DF5-81E0-D7800C05A0AC", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-plus-outline", - "codepoint": "F1712", - "aliases": [ - "slate-plus-outline", - "clapperboard-plus-outline", - "film-plus-outline" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Colton Wiscombe" - }, - { - "id": "A55FA4A8-DD49-4A4E-8DC0-ED7979F2469B", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-remove", - "codepoint": "F1713", - "aliases": [ - "slate-remove", - "clapperboard-remove", - "film-remove" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Colton Wiscombe" - }, - { - "id": "6FC268E0-F315-4818-B25F-0576DA4B9A84", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-remove-outline", - "codepoint": "F1714", - "aliases": [ - "slate-remove-outline", - "clapperboard-remove-outline", - "film-remove-outline" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Colton Wiscombe" - }, - { - "id": "21D0F9FB-6814-4CE7-B37D-FC97EBF1D0D2", - "baseIconId": "21D0F9FB-6814-4CE7-B37D-FC97EBF1D0D2", - "name": "movie-roll", - "codepoint": "F07DE", - "aliases": [ - "film-reel" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "fraaalk" - }, - { - "id": "83E13559-040A-4EB7-BBA5-A2455CCEBBB9", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-search", - "codepoint": "F11D2", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "frankgrinaert" - }, - { - "id": "8BF9EEDF-1AE8-4382-8544-3F650525371B", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-search-outline", - "codepoint": "F11D3", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "frankgrinaert" - }, - { - "id": "0A90A107-BB52-4DBA-BC4F-E285D87EB4DF", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-settings", - "codepoint": "F1715", - "aliases": [ - "slate-settings", - "clapperboard-settings", - "film-settings" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie", - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "D90C8E93-5B99-4604-A597-5DA45FC3CEB2", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-settings-outline", - "codepoint": "F1716", - "aliases": [ - "slate-settings-outline", - "clapperboard-settings-outline", - "film-settings-outline" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie", - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "07D0534A-0D01-428A-8915-0C3930BE8C41", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-star", - "codepoint": "F1717", - "aliases": [ - "slate-star", - "clapperboard-star", - "film-star", - "movie-favorite" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Colton Wiscombe" - }, - { - "id": "31542EFD-68FE-435F-8B00-1BDFB218D9E2", - "baseIconId": "122C53AA-C8BC-41B3-89B2-B9A9F8BB56DC", - "name": "movie-star-outline", - "codepoint": "F1718", - "aliases": [ - "slate-star-outline", - "clapperboard-star-outline", - "film-star-outline", - "movie-favorite-outline" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Colton Wiscombe" - }, - { - "id": "27842852-CDEB-4575-AAEB-D7F15F0928F8", - "baseIconId": "27842852-CDEB-4575-AAEB-D7F15F0928F8", - "name": "mower", - "codepoint": "F166F", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Hardware \/ Tools", - "Home Automation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "1AF71C6B-087D-493D-81B4-8BDD6A07B2ED", - "baseIconId": "27842852-CDEB-4575-AAEB-D7F15F0928F8", - "name": "mower-bag", - "codepoint": "F1670", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Hardware \/ Tools", - "Home Automation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "E6E507D5-3440-4E48-A346-3EAA70810BA6", - "baseIconId": "27842852-CDEB-4575-AAEB-D7F15F0928F8", - "name": "mower-bag-on", - "codepoint": "F1B60", - "aliases": [], - "styles": [ - "variant" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Hardware \/ Tools", - "Home Automation" - ], - "author": "Andrej Sharapov" - }, - { - "id": "6DE40A54-9555-4B66-A698-0B22894BDE68", - "baseIconId": "27842852-CDEB-4575-AAEB-D7F15F0928F8", - "name": "mower-on", - "codepoint": "F1B5F", - "aliases": [], - "styles": [], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Hardware \/ Tools", - "Home Automation" - ], - "author": "Andrej Sharapov" - }, - { - "id": "730FEADE-1281-422D-9E31-9DF7D06AD4E3", - "baseIconId": "730FEADE-1281-422D-9E31-9DF7D06AD4E3", - "name": "muffin", - "codepoint": "F098C", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Nick" - }, - { - "id": "8D4D600F-56EB-488D-992A-24B393EE6D47", - "baseIconId": "8D4D600F-56EB-488D-992A-24B393EE6D47", - "name": "multicast", - "codepoint": "F1893", - "aliases": [ - "multiplex", - "broadcast" - ], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "2EE192A7-497B-41B8-B68A-34A32B8445F2", - "baseIconId": "2EE192A7-497B-41B8-B68A-34A32B8445F2", - "name": "multimedia", - "codepoint": "F1B97", - "aliases": [ - "audio", - "video", - "image", - "music", - "movie", - "picture" - ], - "styles": [], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Audio", - "Video \/ Movie", - "Photography" - ], - "author": "Michael Irigoyen" - }, - { - "id": "489C9004-CF90-483E-83E3-CD40DD5B9ACF", - "baseIconId": "489C9004-CF90-483E-83E3-CD40DD5B9ACF", - "name": "multiplication", - "codepoint": "F0382", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Austin Andrews" - }, - { - "id": "38DF4F2F-85CF-4F71-B170-AAAAF25799E0", - "baseIconId": "489C9004-CF90-483E-83E3-CD40DD5B9ACF", - "name": "multiplication-box", - "codepoint": "F0383", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Austin Andrews" - }, - { - "id": "FCA4F099-5FCB-43DE-8166-2CE30508C1EC", - "baseIconId": "FCA4F099-5FCB-43DE-8166-2CE30508C1EC", - "name": "mushroom", - "codepoint": "F07DF", - "aliases": [ - "fungus" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Nature", - "Food \/ Drink", - "Agriculture" - ], - "author": "Chris Thron" - }, - { - "id": "F061399A-D4F9-49C6-B70A-B4D2603699AC", - "baseIconId": "FCA4F099-5FCB-43DE-8166-2CE30508C1EC", - "name": "mushroom-off", - "codepoint": "F13FA", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Nature", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5421FAF8-CBB9-43C7-A8C1-EE90C949DD56", - "baseIconId": "FCA4F099-5FCB-43DE-8166-2CE30508C1EC", - "name": "mushroom-off-outline", - "codepoint": "F13FB", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Nature", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D6C17EB7-0A54-4ECA-81AA-86311E311934", - "baseIconId": "FCA4F099-5FCB-43DE-8166-2CE30508C1EC", - "name": "mushroom-outline", - "codepoint": "F07E0", - "aliases": [ - "fungus-outline" - ], - "styles": [ - "outline" - ], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Nature", - "Food \/ Drink", - "Agriculture" - ], - "author": "Chris Thron" - }, - { - "id": "E7DA3CF2-C345-441D-BFC2-ABC4DB195A6A", - "baseIconId": "E7DA3CF2-C345-441D-BFC2-ABC4DB195A6A", - "name": "music", - "codepoint": "F075A", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Audio", - "Music" - ], - "author": "Austin Andrews" - }, - { - "id": "0273309C-CE51-4243-8EDF-F86B0B73AAE4", - "baseIconId": "1ED310B2-EE64-4011-B725-3D4FFB10E26A", - "name": "music-accidental-double-flat", - "codepoint": "F0F69", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Michael Irigoyen" - }, - { - "id": "89EC2121-104F-4814-849A-AF9AA744E239", - "baseIconId": "6FD5E083-A276-4433-8D67-FBC8D9163719", - "name": "music-accidental-double-sharp", - "codepoint": "F0F6A", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1ED310B2-EE64-4011-B725-3D4FFB10E26A", - "baseIconId": "1ED310B2-EE64-4011-B725-3D4FFB10E26A", - "name": "music-accidental-flat", - "codepoint": "F0F6B", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Michael Irigoyen" - }, - { - "id": "4AA4E035-3A6F-40FA-8355-A38F9294E399", - "baseIconId": "4AA4E035-3A6F-40FA-8355-A38F9294E399", - "name": "music-accidental-natural", - "codepoint": "F0F6C", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Michael Irigoyen" - }, - { - "id": "6FD5E083-A276-4433-8D67-FBC8D9163719", - "baseIconId": "6FD5E083-A276-4433-8D67-FBC8D9163719", - "name": "music-accidental-sharp", - "codepoint": "F0F6D", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2EDBEBA6-8590-4049-BB28-8959378DC44C", - "baseIconId": "E7DA3CF2-C345-441D-BFC2-ABC4DB195A6A", - "name": "music-box", - "codepoint": "F0384", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio", - "Music" - ], - "author": "Austin Andrews" - }, - { - "id": "56F24AF4-9E5B-4E53-89ED-3472E08C9466", - "baseIconId": "E7DA3CF2-C345-441D-BFC2-ABC4DB195A6A", - "name": "music-box-multiple", - "codepoint": "F0333", - "aliases": [ - "library-music" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Google" - }, - { - "id": "16F694B0-E5B4-4262-91AE-DB3D0C73EEC0", - "baseIconId": "E7DA3CF2-C345-441D-BFC2-ABC4DB195A6A", - "name": "music-box-multiple-outline", - "codepoint": "F0F04", - "aliases": [ - "library-music-outline" - ], - "styles": [ - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9E8ADF62-9136-40F3-BED9-54A2934B4B3B", - "baseIconId": "E7DA3CF2-C345-441D-BFC2-ABC4DB195A6A", - "name": "music-box-outline", - "codepoint": "F0385", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio", - "Music" - ], - "author": "Austin Andrews" - }, - { - "id": "33A79A85-7985-4E08-8AA8-D6242A9C2700", - "baseIconId": "E7DA3CF2-C345-441D-BFC2-ABC4DB195A6A", - "name": "music-circle", - "codepoint": "F0386", - "aliases": [ - "note-circle" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio", - "Music" - ], - "author": "Austin Andrews" - }, - { - "id": "C8E3DFB3-2F22-489D-90F5-D8C47B66DB3C", - "baseIconId": "E7DA3CF2-C345-441D-BFC2-ABC4DB195A6A", - "name": "music-circle-outline", - "codepoint": "F0AD4", - "aliases": [ - "note-circle-outline" - ], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Music", - "Audio" - ], - "author": "Austin Andrews" - }, - { - "id": "9AA4CF34-3341-41F7-AC35-E8556A91787B", - "baseIconId": "9AA4CF34-3341-41F7-AC35-E8556A91787B", - "name": "music-clef-alto", - "codepoint": "F0F6E", - "aliases": [ - "music-c-clef", - "music-clef-tenor", - "music-clef-soprano", - "music-clef-baritone" - ], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Haley Halcyon" - }, - { - "id": "279EAB4C-7D62-4C41-A67F-2928723476DA", - "baseIconId": "7ED69559-58ED-432E-800F-9B8DE4CD53A2", - "name": "music-clef-bass", - "codepoint": "F0F6F", - "aliases": [ - "music-f-clef" - ], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Haley Halcyon" - }, - { - "id": "7ED69559-58ED-432E-800F-9B8DE4CD53A2", - "baseIconId": "7ED69559-58ED-432E-800F-9B8DE4CD53A2", - "name": "music-clef-treble", - "codepoint": "F0F70", - "aliases": [ - "music-g-clef" - ], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Haley Halcyon" - }, - { - "id": "05F3F5DD-59CC-4FBD-9428-0D0CB125A8AE", - "baseIconId": "E7DA3CF2-C345-441D-BFC2-ABC4DB195A6A", - "name": "music-note", - "codepoint": "F0387", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio", - "Music" - ], - "author": "Austin Andrews" - }, - { - "id": "40A9BA37-B1BD-4869-A3F9-8F534258DB3F", - "baseIconId": "E7DA3CF2-C345-441D-BFC2-ABC4DB195A6A", - "name": "music-note-bluetooth", - "codepoint": "F05FE", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio", - "Music" - ], - "author": "Simran" - }, - { - "id": "98CC5D8B-5D4B-4379-8FFF-1C7FEA82672C", - "baseIconId": "E7DA3CF2-C345-441D-BFC2-ABC4DB195A6A", - "name": "music-note-bluetooth-off", - "codepoint": "F05FF", - "aliases": [], - "styles": [ - "off" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio", - "Music" - ], - "author": "Simran" - }, - { - "id": "44EDC206-CF12-4DA5-8DA6-E72FDC35BBD2", - "baseIconId": "E7DA3CF2-C345-441D-BFC2-ABC4DB195A6A", - "name": "music-note-eighth", - "codepoint": "F0388", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio", - "Music" - ], - "author": "Austin Andrews" - }, - { - "id": "9E5589FE-17DF-4167-9DDE-D41D6503B433", - "baseIconId": "E7DA3CF2-C345-441D-BFC2-ABC4DB195A6A", - "name": "music-note-eighth-dotted", - "codepoint": "F0F71", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2F2FC9A9-FAC3-4736-B8EC-B7DF9548586C", - "baseIconId": "E7DA3CF2-C345-441D-BFC2-ABC4DB195A6A", - "name": "music-note-half", - "codepoint": "F0389", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio", - "Music" - ], - "author": "Austin Andrews" - }, - { - "id": "53666387-B7D7-4C48-96B9-3D6CAA6E2468", - "baseIconId": "E7DA3CF2-C345-441D-BFC2-ABC4DB195A6A", - "name": "music-note-half-dotted", - "codepoint": "F0F72", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F6A55EE0-3A9F-4A76-9711-D752F54005FA", - "baseIconId": "05F3F5DD-59CC-4FBD-9428-0D0CB125A8AE", - "name": "music-note-minus", - "codepoint": "F1B89", - "aliases": [], - "styles": [ - "minus" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "08305F79-B7E4-4FC9-9B5B-8E76920C3DCC", - "baseIconId": "E7DA3CF2-C345-441D-BFC2-ABC4DB195A6A", - "name": "music-note-off", - "codepoint": "F038A", - "aliases": [], - "styles": [ - "off" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio", - "Music" - ], - "author": "Austin Andrews" - }, - { - "id": "C47B2AE6-FB1F-4E54-A951-AD26609ECB80", - "baseIconId": "E7DA3CF2-C345-441D-BFC2-ABC4DB195A6A", - "name": "music-note-off-outline", - "codepoint": "F0F73", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5888AA23-7D87-46D3-83F3-1AB820E9F77D", - "baseIconId": "E7DA3CF2-C345-441D-BFC2-ABC4DB195A6A", - "name": "music-note-outline", - "codepoint": "F0F74", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Michael Irigoyen" - }, - { - "id": "ED5D1835-D69E-458A-9CCE-F1B81EB831D2", - "baseIconId": "E7DA3CF2-C345-441D-BFC2-ABC4DB195A6A", - "name": "music-note-plus", - "codepoint": "F0DDE", - "aliases": [ - "music-note-add" - ], - "styles": [ - "plus" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Audio", - "Music" - ], - "author": "GreenTurtwig" - }, - { - "id": "D71DFC98-3401-4268-9956-3EFEEE336235", - "baseIconId": "E7DA3CF2-C345-441D-BFC2-ABC4DB195A6A", - "name": "music-note-quarter", - "codepoint": "F038B", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio", - "Music" - ], - "author": "Austin Andrews" - }, - { - "id": "56364DE5-01AE-4702-BC79-F85D07E485C7", - "baseIconId": "E7DA3CF2-C345-441D-BFC2-ABC4DB195A6A", - "name": "music-note-quarter-dotted", - "codepoint": "F0F75", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Michael Irigoyen" - }, - { - "id": "882DF0E2-C223-4B3F-A538-81EC05421BA9", - "baseIconId": "E7DA3CF2-C345-441D-BFC2-ABC4DB195A6A", - "name": "music-note-sixteenth", - "codepoint": "F038C", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio", - "Music" - ], - "author": "Austin Andrews" - }, - { - "id": "F98989F8-DE11-42A7-A814-5C988CBD7989", - "baseIconId": "E7DA3CF2-C345-441D-BFC2-ABC4DB195A6A", - "name": "music-note-sixteenth-dotted", - "codepoint": "F0F76", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Michael Irigoyen" - }, - { - "id": "13454604-C50C-4381-AC96-552848F0DF9E", - "baseIconId": "E7DA3CF2-C345-441D-BFC2-ABC4DB195A6A", - "name": "music-note-whole", - "codepoint": "F038D", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio", - "Music" - ], - "author": "Austin Andrews" - }, - { - "id": "6A2B3740-C02F-4097-9713-80C34636CA12", - "baseIconId": "E7DA3CF2-C345-441D-BFC2-ABC4DB195A6A", - "name": "music-note-whole-dotted", - "codepoint": "F0F77", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E9D8BB99-B31B-4940-9EEE-B69569060B0D", - "baseIconId": "E7DA3CF2-C345-441D-BFC2-ABC4DB195A6A", - "name": "music-off", - "codepoint": "F075B", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Audio", - "Music" - ], - "author": "Austin Andrews" - }, - { - "id": "D77BE879-A1D5-48F5-9068-B74A2ED4017A", - "baseIconId": "64309B5C-51CC-42D0-B2D1-F42454CC1E2E", - "name": "music-rest-eighth", - "codepoint": "F0F78", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C9124F85-BB56-414C-BEAF-EE02E921B6D2", - "baseIconId": "64309B5C-51CC-42D0-B2D1-F42454CC1E2E", - "name": "music-rest-half", - "codepoint": "F0F79", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Michael Irigoyen" - }, - { - "id": "64309B5C-51CC-42D0-B2D1-F42454CC1E2E", - "baseIconId": "64309B5C-51CC-42D0-B2D1-F42454CC1E2E", - "name": "music-rest-quarter", - "codepoint": "F0F7A", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E7CCD9CF-3FC1-44F0-996B-841B293B1793", - "baseIconId": "64309B5C-51CC-42D0-B2D1-F42454CC1E2E", - "name": "music-rest-sixteenth", - "codepoint": "F0F7B", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E11E01A9-8231-456F-AF61-82A069BBDAAB", - "baseIconId": "64309B5C-51CC-42D0-B2D1-F42454CC1E2E", - "name": "music-rest-whole", - "codepoint": "F0F7C", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Michael Irigoyen" - }, - { - "id": "766E10EA-23CD-42BD-9DB8-633FBF8C584A", - "baseIconId": "766E10EA-23CD-42BD-9DB8-633FBF8C584A", - "name": "mustache", - "codepoint": "F15DE", - "aliases": [], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "D1A8C00E-5FE4-4016-9C38-40CD9804D7C9", - "baseIconId": "744539B5-EC00-481D-9A78-274A157CF130", - "name": "nail", - "codepoint": "F0DDF", - "aliases": [], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Michael Irigoyen" - }, - { - "id": "001157C4-1AAA-41FF-B204-906ACDB427C3", - "baseIconId": "001157C4-1AAA-41FF-B204-906ACDB427C3", - "name": "nas", - "codepoint": "F08F3", - "aliases": [ - "network-attached-storage" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "A69196BD-730F-4684-8604-8668FD60183A", - "baseIconId": "A69196BD-730F-4684-8604-8668FD60183A", - "name": "nativescript", - "codepoint": "F0880", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "C5FCAD4F-C7E6-4BDB-9F2F-A665CB68B7FD", - "baseIconId": "C5FCAD4F-C7E6-4BDB-9F2F-A665CB68B7FD", - "name": "nature", - "codepoint": "F038E", - "aliases": [ - "plant" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Nature", - "Agriculture" - ], - "author": "Google" - }, - { - "id": "EB1EF432-4028-4431-BED1-9E446BCFCA09", - "baseIconId": "C5FCAD4F-C7E6-4BDB-9F2F-A665CB68B7FD", - "name": "nature-outline", - "codepoint": "F1C71", - "aliases": [], - "styles": [ - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Nature" - ], - "author": "Jeff Anders" - }, - { - "id": "B0635A70-D2A9-41CE-82C6-3FB1D1D353B4", - "baseIconId": "C5FCAD4F-C7E6-4BDB-9F2F-A665CB68B7FD", - "name": "nature-people", - "codepoint": "F038F", - "aliases": [ - "plant" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User", - "Nature" - ], - "author": "Google" - }, - { - "id": "2DE09F55-8A0A-4D95-BC0E-3D7C5E55D609", - "baseIconId": "C5FCAD4F-C7E6-4BDB-9F2F-A665CB68B7FD", - "name": "nature-people-outline", - "codepoint": "F1C72", - "aliases": [], - "styles": [ - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Account \/ User", - "Nature" - ], - "author": "Jeff Anders" - }, - { - "id": "DAAF6988-6EE9-4595-A758-294C83C7304B", - "baseIconId": "DAAF6988-6EE9-4595-A758-294C83C7304B", - "name": "navigation", - "codepoint": "F0390", - "aliases": [ - "arrow-compass" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "Google" - }, - { - "id": "8CEE19E5-13B9-4AFF-8880-B04D36B144BA", - "baseIconId": "DAAF6988-6EE9-4595-A758-294C83C7304B", - "name": "navigation-outline", - "codepoint": "F1607", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "Google" - }, - { - "id": "FAF89CE7-022F-4AD0-BCB6-0F4F22EE0B26", - "baseIconId": "DAAF6988-6EE9-4595-A758-294C83C7304B", - "name": "navigation-variant", - "codepoint": "F18F0", - "aliases": [], - "styles": [ - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "Google" - }, - { - "id": "23292DC7-A187-4818-8944-1144B38E183C", - "baseIconId": "DAAF6988-6EE9-4595-A758-294C83C7304B", - "name": "navigation-variant-outline", - "codepoint": "F18F1", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "Google" - }, - { - "id": "6766F53D-88E4-452A-A222-7F50DDFB757C", - "baseIconId": "6766F53D-88E4-452A-A222-7F50DDFB757C", - "name": "near-me", - "codepoint": "F05CD", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "70C6DD45-DD16-4629-8BBA-B60FB5D60382", - "baseIconId": "70C6DD45-DD16-4629-8BBA-B60FB5D60382", - "name": "necklace", - "codepoint": "F0F0B", - "aliases": [], - "styles": [], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Clothing" - ], - "author": "Michael Richins" - }, - { - "id": "2B76647F-92FE-4F8E-B193-7EC20DADD5D2", - "baseIconId": "2B76647F-92FE-4F8E-B193-7EC20DADD5D2", - "name": "needle", - "codepoint": "F0391", - "aliases": [ - "syringe", - "injection", - "medicine", - "shot", - "drug", - "immunization", - "pharmaceutical" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Austin Andrews" - }, - { - "id": "EF95D4D3-9095-412A-A109-BF170FA2A1D9", - "baseIconId": "2B76647F-92FE-4F8E-B193-7EC20DADD5D2", - "name": "needle-off", - "codepoint": "F19D2", - "aliases": [ - "syringe-off", - "injection-off", - "medicine-off", - "shot-off", - "drug-off", - "immunization-off", - "pharmaceutical-off" - ], - "styles": [], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7AEF7097-EC88-4D09-A65E-5244DDA99599", - "baseIconId": "7AEF7097-EC88-4D09-A65E-5244DDA99599", - "name": "netflix", - "codepoint": "F0746", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "089C6F75-2FF5-4B48-B4B4-651AEAD3D24F", - "baseIconId": "089C6F75-2FF5-4B48-B4B4-651AEAD3D24F", - "name": "network", - "codepoint": "F06F3", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "B4F8AA0D-E5C6-4FC1-A91C-A7E47269FB31", - "baseIconId": "089C6F75-2FF5-4B48-B4B4-651AEAD3D24F", - "name": "network-off", - "codepoint": "F0C9B", - "aliases": [], - "styles": [ - "off" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "6CFA3244-3420-4234-BFC6-80DEA8F38CCC", - "baseIconId": "089C6F75-2FF5-4B48-B4B4-651AEAD3D24F", - "name": "network-off-outline", - "codepoint": "F0C9C", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "D6F66231-B4F7-4E89-80D5-D9DDD2354D02", - "baseIconId": "089C6F75-2FF5-4B48-B4B4-651AEAD3D24F", - "name": "network-outline", - "codepoint": "F0C9D", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "D9BB8F7B-1014-42A4-BBC3-3ED704847943", - "baseIconId": "089C6F75-2FF5-4B48-B4B4-651AEAD3D24F", - "name": "network-pos", - "codepoint": "F1ACB", - "aliases": [ - "network-point-of-sale", - "network-cash-box" - ], - "styles": [ - "network" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "emeraldmor" - }, - { - "id": "7AEB6E6A-4B4E-42C3-9AB2-1F47FE1BD29B", - "baseIconId": "87FF7D68-6F78-44AB-80C4-DC7FE976E3A3", - "name": "network-strength-1", - "codepoint": "F08F4", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Simran" - }, - { - "id": "9C2C41A2-7BA9-46C3-B017-941C7B2C2E60", - "baseIconId": "87FF7D68-6F78-44AB-80C4-DC7FE976E3A3", - "name": "network-strength-1-alert", - "codepoint": "F08F5", - "aliases": [ - "network-strength-1-warning" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Alert \/ Error" - ], - "author": "Simran" - }, - { - "id": "DF3CEC8C-F6B7-467B-833C-92FE260C6A73", - "baseIconId": "87FF7D68-6F78-44AB-80C4-DC7FE976E3A3", - "name": "network-strength-2", - "codepoint": "F08F6", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Simran" - }, - { - "id": "DB8EEB5C-3705-4DE7-A770-D63ACE14F1BD", - "baseIconId": "87FF7D68-6F78-44AB-80C4-DC7FE976E3A3", - "name": "network-strength-2-alert", - "codepoint": "F08F7", - "aliases": [ - "network-strength-2-warning" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Alert \/ Error" - ], - "author": "Simran" - }, - { - "id": "7FAA15D1-1E1D-41F5-98F0-1B640DFB0688", - "baseIconId": "87FF7D68-6F78-44AB-80C4-DC7FE976E3A3", - "name": "network-strength-3", - "codepoint": "F08F8", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Simran" - }, - { - "id": "99771A39-B621-45BA-96BE-7589E5A85B9E", - "baseIconId": "87FF7D68-6F78-44AB-80C4-DC7FE976E3A3", - "name": "network-strength-3-alert", - "codepoint": "F08F9", - "aliases": [ - "network-strength-3-warning" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Alert \/ Error" - ], - "author": "Simran" - }, - { - "id": "87FF7D68-6F78-44AB-80C4-DC7FE976E3A3", - "baseIconId": "87FF7D68-6F78-44AB-80C4-DC7FE976E3A3", - "name": "network-strength-4", - "codepoint": "F08FA", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Simran" - }, - { - "id": "1173684B-E68C-4BE5-BD9C-53C01A619896", - "baseIconId": "87FF7D68-6F78-44AB-80C4-DC7FE976E3A3", - "name": "network-strength-4-alert", - "codepoint": "F08FB", - "aliases": [ - "network-strength-4-warning" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Alert \/ Error" - ], - "author": "Simran" - }, - { - "id": "AB7248F1-C9F3-4EF3-ACD5-8B7EE11771C3", - "baseIconId": "87FF7D68-6F78-44AB-80C4-DC7FE976E3A3", - "name": "network-strength-4-cog", - "codepoint": "F191A", - "aliases": [ - "network-strength-4-settings", - "data-settings" - ], - "styles": [], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E3FEE803-9C91-4BAE-9528-D016588E99AD", - "baseIconId": "87FF7D68-6F78-44AB-80C4-DC7FE976E3A3", - "name": "network-strength-off", - "codepoint": "F08FC", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Simran" - }, - { - "id": "E7A4CEE7-C6E2-4FD6-B0BF-B3DD131100CB", - "baseIconId": "87FF7D68-6F78-44AB-80C4-DC7FE976E3A3", - "name": "network-strength-off-outline", - "codepoint": "F08FD", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Simran" - }, - { - "id": "5A80D579-DF12-4B68-AAD8-AFE8039E6657", - "baseIconId": "87FF7D68-6F78-44AB-80C4-DC7FE976E3A3", - "name": "network-strength-outline", - "codepoint": "F08FE", - "aliases": [ - "network-strength-0" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Simran" - }, - { - "id": "1ABEE375-A0DC-4262-9CCD-3B9C78B5FE7D", - "baseIconId": "1ABEE375-A0DC-4262-9CCD-3B9C78B5FE7D", - "name": "new-box", - "codepoint": "F0394", - "aliases": [ - "fiber-new" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "EE440B14-2E25-4C8E-99A7-A3C98CBC9151", - "baseIconId": "EE440B14-2E25-4C8E-99A7-A3C98CBC9151", - "name": "newspaper", - "codepoint": "F0395", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "F329B5C0-F6CC-4402-B4BF-A8744C9D802E", - "baseIconId": "EE440B14-2E25-4C8E-99A7-A3C98CBC9151", - "name": "newspaper-check", - "codepoint": "F1943", - "aliases": [], - "styles": [ - "check" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "4949C4CF-3395-466E-B459-9FEBA1BFD1AC", - "baseIconId": "EE440B14-2E25-4C8E-99A7-A3C98CBC9151", - "name": "newspaper-minus", - "codepoint": "F0F0C", - "aliases": [], - "styles": [ - "minus" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "7B4B8A85-6E8F-4C2B-938C-58DF98E8823B", - "baseIconId": "EE440B14-2E25-4C8E-99A7-A3C98CBC9151", - "name": "newspaper-plus", - "codepoint": "F0F0D", - "aliases": [], - "styles": [ - "plus" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "9E4ABD6C-A1C6-4209-B977-83A7A03667A8", - "baseIconId": "EE440B14-2E25-4C8E-99A7-A3C98CBC9151", - "name": "newspaper-remove", - "codepoint": "F1944", - "aliases": [], - "styles": [ - "remove" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "B7E3A571-DF01-4CBF-A3AE-CDEF835F2A21", - "baseIconId": "B7E3A571-DF01-4CBF-A3AE-CDEF835F2A21", - "name": "newspaper-variant", - "codepoint": "F1001", - "aliases": [], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "2672B224-C14E-41B7-B7F2-632CA02F9D3B", - "baseIconId": "B7E3A571-DF01-4CBF-A3AE-CDEF835F2A21", - "name": "newspaper-variant-multiple", - "codepoint": "F1002", - "aliases": [], - "styles": [ - "multiple" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "687B9CDE-25C6-49DF-B28F-051B30FD11D3", - "baseIconId": "B7E3A571-DF01-4CBF-A3AE-CDEF835F2A21", - "name": "newspaper-variant-multiple-outline", - "codepoint": "F1003", - "aliases": [], - "styles": [ - "multiple", - "outline" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "1859420B-45AE-4AC1-AC8D-91AB0FF84BBA", - "baseIconId": "B7E3A571-DF01-4CBF-A3AE-CDEF835F2A21", - "name": "newspaper-variant-outline", - "codepoint": "F1004", - "aliases": [], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "961106B7-BD56-462C-936C-E2CDC83051B5", - "baseIconId": "961106B7-BD56-462C-936C-E2CDC83051B5", - "name": "nfc", - "codepoint": "F0396", - "aliases": [ - "near-field-communication" - ], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "2AD73512-8D95-4CCB-8A7E-528E70F510B9", - "baseIconId": "4DFF5414-0EA3-4255-BC50-B40B0E3ADB15", - "name": "nfc-search-variant", - "codepoint": "F0E53", - "aliases": [], - "styles": [ - "search" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [], - "author": "Terren" - }, - { - "id": "656C274C-CDC8-4FB6-AFFA-F704784BC997", - "baseIconId": "656C274C-CDC8-4FB6-AFFA-F704784BC997", - "name": "nfc-tap", - "codepoint": "F0397", - "aliases": [ - "near-field-communication-tap" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "4DFF5414-0EA3-4255-BC50-B40B0E3ADB15", - "baseIconId": "4DFF5414-0EA3-4255-BC50-B40B0E3ADB15", - "name": "nfc-variant", - "codepoint": "F0398", - "aliases": [ - "near-field-communication-variant" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "2BD17DBC-5002-4378-B885-A1952D740C0B", - "baseIconId": "4DFF5414-0EA3-4255-BC50-B40B0E3ADB15", - "name": "nfc-variant-off", - "codepoint": "F0E54", - "aliases": [ - "near-field-communication-off" - ], - "styles": [ - "off" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "TheChilliPL" - }, - { - "id": "8E7C1B4B-C4E8-4072-9FB7-90E207038FFB", - "baseIconId": "8E7C1B4B-C4E8-4072-9FB7-90E207038FFB", - "name": "ninja", - "codepoint": "F0774", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "A067CF52-3D9E-43DB-9542-44BE780B4117", - "baseIconId": "A067CF52-3D9E-43DB-9542-44BE780B4117", - "name": "nintendo-game-boy", - "codepoint": "F1393", - "aliases": [], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "GreenTurtwig" - }, - { - "id": "D57C5D23-1122-4DEB-BEC4-77D5A4D685FE", - "baseIconId": "D57C5D23-1122-4DEB-BEC4-77D5A4D685FE", - "name": "nintendo-switch", - "codepoint": "F07E1", - "aliases": [ - "nintendo-switch-online" - ], - "styles": [], - "version": "2.0.46", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "AA2F2BCF-A9BD-4B3A-83A4-880E518F9428", - "baseIconId": "AA2F2BCF-A9BD-4B3A-83A4-880E518F9428", - "name": "nintendo-wii", - "codepoint": "F05AB", - "aliases": [ - "nintendo-wii" - ], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Gaming \/ RPG" - ], - "author": "Contributors" - }, - { - "id": "7D322B2B-5B7D-46B4-ACC3-A8900CFED5C9", - "baseIconId": "7D322B2B-5B7D-46B4-ACC3-A8900CFED5C9", - "name": "nintendo-wiiu", - "codepoint": "F072D", - "aliases": [ - "nintendo-wiiu" - ], - "styles": [], - "version": "1.8.36", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Gaming \/ RPG" - ], - "author": "Contributors" - }, - { - "id": "525A43D5-4292-4C31-9E7D-7B65DB386BF9", - "baseIconId": "525A43D5-4292-4C31-9E7D-7B65DB386BF9", - "name": "nix", - "codepoint": "F1105", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "46A696BA-7A78-40C1-A685-C9B9851286A6", - "baseIconId": "46A696BA-7A78-40C1-A685-C9B9851286A6", - "name": "nodejs", - "codepoint": "F0399", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "1655675D-A197-44BD-83E9-76E2BAD31740", - "baseIconId": "1655675D-A197-44BD-83E9-76E2BAD31740", - "name": "noodles", - "codepoint": "F117E", - "aliases": [ - "food-ramen", - "asian-noodles" - ], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Google" - }, - { - "id": "A301F5C0-B760-4EA0-B803-DEF84D1B01CD", - "baseIconId": "A301F5C0-B760-4EA0-B803-DEF84D1B01CD", - "name": "not-equal", - "codepoint": "F098D", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [], - "author": "Nick" - }, - { - "id": "AF2B1665-3D54-4017-BF7C-AE03A7C6AA52", - "baseIconId": "AF2B1665-3D54-4017-BF7C-AE03A7C6AA52", - "name": "not-equal-variant", - "codepoint": "F098E", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Nick" - }, - { - "id": "5E1DF73F-AEF5-48F8-B766-419FBB05C5D0", - "baseIconId": "5E1DF73F-AEF5-48F8-B766-419FBB05C5D0", - "name": "note", - "codepoint": "F039A", - "aliases": [ - "paper", - "sticky-note", - "post-it-note" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "1673B5E0-CB7A-4430-9D36-9B42F1189D4F", - "baseIconId": "5E1DF73F-AEF5-48F8-B766-419FBB05C5D0", - "name": "note-alert", - "codepoint": "F177D", - "aliases": [ - "paper-alert", - "sticky-note-alert", - "post-it-note-alert" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Colton Wiscombe" - }, - { - "id": "52710BFA-E892-49B7-9157-8C9A5E08BC21", - "baseIconId": "5E1DF73F-AEF5-48F8-B766-419FBB05C5D0", - "name": "note-alert-outline", - "codepoint": "F177E", - "aliases": [ - "paper-alert-outline", - "post-it-note-alert-outline", - "sticky-note-alert-outline" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Colton Wiscombe" - }, - { - "id": "A4B7F3B4-25B2-4786-A02F-FDA4F963E580", - "baseIconId": "5E1DF73F-AEF5-48F8-B766-419FBB05C5D0", - "name": "note-check", - "codepoint": "F177F", - "aliases": [ - "paper-check", - "sticky-note-check", - "post-it-note-check" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "827B10E4-F154-4101-BB5C-492EA37B7D08", - "baseIconId": "5E1DF73F-AEF5-48F8-B766-419FBB05C5D0", - "name": "note-check-outline", - "codepoint": "F1780", - "aliases": [ - "paper-check-outline", - "sticky-note-check-outline", - "post-it-note-check-outline" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "80075448-6EB3-4318-9887-6C199DB9A86E", - "baseIconId": "5E1DF73F-AEF5-48F8-B766-419FBB05C5D0", - "name": "note-edit", - "codepoint": "F1781", - "aliases": [ - "paper-edit", - "sticky-note-edit", - "post-it-note-edit" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Colton Wiscombe" - }, - { - "id": "DD82356F-AF1D-4A08-A740-880F31AE563D", - "baseIconId": "5E1DF73F-AEF5-48F8-B766-419FBB05C5D0", - "name": "note-edit-outline", - "codepoint": "F1782", - "aliases": [ - "paper-edit-outline", - "sticky-note-edit-outline", - "post-it-note-edit-outline" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Colton Wiscombe" - }, - { - "id": "5F9984C8-D7D1-42A8-9167-52B0B849CF22", - "baseIconId": "5E1DF73F-AEF5-48F8-B766-419FBB05C5D0", - "name": "note-minus", - "codepoint": "F164F", - "aliases": [ - "paper-minus", - "sticky-note-minus", - "post-it-note-minus" - ], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "244AEF5D-38E8-42E6-9C4F-8D4AFF831651", - "baseIconId": "5E1DF73F-AEF5-48F8-B766-419FBB05C5D0", - "name": "note-minus-outline", - "codepoint": "F1650", - "aliases": [ - "paper-minus-outline", - "sticky-note-minus-outline", - "post-it-note-minus-outline" - ], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "0A0E42BA-FE9D-44C6-BF6A-D29D6013F2E0", - "baseIconId": "5E1DF73F-AEF5-48F8-B766-419FBB05C5D0", - "name": "note-multiple", - "codepoint": "F06B8", - "aliases": [ - "notes", - "papers", - "sticky-notes", - "post-it-notes" - ], - "styles": [], - "version": "1.7.22", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "6294246C-A524-4121-B141-5262D89FFD4D", - "baseIconId": "5E1DF73F-AEF5-48F8-B766-419FBB05C5D0", - "name": "note-multiple-outline", - "codepoint": "F06B9", - "aliases": [ - "notes-outline", - "papers-outline", - "sticky-notes-outline", - "post-it-notes-outline" - ], - "styles": [], - "version": "1.7.22", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "9EE3CDDD-BFF7-4BCF-B07E-B120D646DE0D", - "baseIconId": "5E1DF73F-AEF5-48F8-B766-419FBB05C5D0", - "name": "note-off", - "codepoint": "F1783", - "aliases": [ - "paper-off", - "sticky-note-off", - "post-it-note-off" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "321C9AFB-4A83-4B8F-A361-ADFA32318258", - "baseIconId": "5E1DF73F-AEF5-48F8-B766-419FBB05C5D0", - "name": "note-off-outline", - "codepoint": "F1784", - "aliases": [ - "paper-off-outline", - "sticky-note-off-outline", - "post-it-note-off-outline" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "DD6D5075-A7F5-4183-9F99-93C295F18B0B", - "baseIconId": "5E1DF73F-AEF5-48F8-B766-419FBB05C5D0", - "name": "note-outline", - "codepoint": "F039B", - "aliases": [ - "paper-outline", - "sticky-note-outline", - "post-it-note-outline" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "753F2E09-A32F-4790-9C07-7CD9AB69104D", - "baseIconId": "5E1DF73F-AEF5-48F8-B766-419FBB05C5D0", - "name": "note-plus", - "codepoint": "F039C", - "aliases": [ - "note-add", - "paper-plus", - "paper-add", - "sticky-note-plus", - "sticky-note-add", - "post-it-note-plus", - "post-it-note-add" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "706F4C63-412B-44CD-81DE-612D4483D09C", - "baseIconId": "5E1DF73F-AEF5-48F8-B766-419FBB05C5D0", - "name": "note-plus-outline", - "codepoint": "F039D", - "aliases": [ - "note-add-outline", - "paper-plus-outline", - "paper-add-outline", - "sticky-note-plus-outline", - "sticky-note-add-outline", - "post-it-note-plus-outline", - "post-it-note-add-outline" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "948C92D0-A16F-48FD-8A25-37898D6B9768", - "baseIconId": "5E1DF73F-AEF5-48F8-B766-419FBB05C5D0", - "name": "note-remove", - "codepoint": "F1651", - "aliases": [ - "paper-remove", - "sticky-note-remove", - "post-it-note-remove" - ], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "4F471FC1-C060-4081-9866-21830957AE90", - "baseIconId": "5E1DF73F-AEF5-48F8-B766-419FBB05C5D0", - "name": "note-remove-outline", - "codepoint": "F1652", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "D914BB12-8F9A-4B71-86A0-DA016AA91B90", - "baseIconId": "5E1DF73F-AEF5-48F8-B766-419FBB05C5D0", - "name": "note-search", - "codepoint": "F1653", - "aliases": [ - "paper-search", - "sticky-note-search", - "post-it-note-search" - ], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "FAA55692-47B7-492B-897A-9225E7F0C766", - "baseIconId": "5E1DF73F-AEF5-48F8-B766-419FBB05C5D0", - "name": "note-search-outline", - "codepoint": "F1654", - "aliases": [ - "paper-search-outline", - "sticky-note-search-outline", - "post-it-note-search-outline" - ], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "2ADC4253-F51B-4BC2-B04C-0DDD139425CF", - "baseIconId": "5E1DF73F-AEF5-48F8-B766-419FBB05C5D0", - "name": "note-text", - "codepoint": "F039E", - "aliases": [ - "paper-text", - "sticky-note-text", - "post-it-note-text" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "E39F6865-3E35-4BE8-8440-643FC83351F7", - "baseIconId": "5E1DF73F-AEF5-48F8-B766-419FBB05C5D0", - "name": "note-text-outline", - "codepoint": "F11D7", - "aliases": [ - "paper-text-outline", - "sticky-note-text-outline", - "post-it-note-text-outline" - ], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "2D28230E-DAF3-4A49-ACB6-7D9C3E9E6495", - "baseIconId": "2D28230E-DAF3-4A49-ACB6-7D9C3E9E6495", - "name": "notebook", - "codepoint": "F082E", - "aliases": [ - "journal", - "planner", - "diary" - ], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [], - "author": "Gabriel Grant" - }, - { - "id": "7DBD97BD-376C-45C2-85BA-74BE45C03F2E", - "baseIconId": "2D28230E-DAF3-4A49-ACB6-7D9C3E9E6495", - "name": "notebook-check", - "codepoint": "F14F5", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "0C11F6D4-B9DE-4927-AB54-B17695167B25", - "baseIconId": "2D28230E-DAF3-4A49-ACB6-7D9C3E9E6495", - "name": "notebook-check-outline", - "codepoint": "F14F6", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "EFBA00EA-395F-47DF-A0B9-8F42C1A697E1", - "baseIconId": "2D28230E-DAF3-4A49-ACB6-7D9C3E9E6495", - "name": "notebook-edit", - "codepoint": "F14E7", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Austin Andrews" - }, - { - "id": "31A232F5-6134-4A8D-A9D1-41DC4404922D", - "baseIconId": "2D28230E-DAF3-4A49-ACB6-7D9C3E9E6495", - "name": "notebook-edit-outline", - "codepoint": "F14E9", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Austin Andrews" - }, - { - "id": "BA533C71-48B2-4D1D-8069-98F53EC6224B", - "baseIconId": "2D28230E-DAF3-4A49-ACB6-7D9C3E9E6495", - "name": "notebook-heart", - "codepoint": "F1A0B", - "aliases": [ - "notebook-favorite", - "notebook-love" - ], - "styles": [], - "version": "6.6.96", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "0F8BCA10-0144-4507-850B-777AE12B3A80", - "baseIconId": "2D28230E-DAF3-4A49-ACB6-7D9C3E9E6495", - "name": "notebook-heart-outline", - "codepoint": "F1A0C", - "aliases": [ - "notebook-favorite-outline", - "notebook-love-outline" - ], - "styles": [ - "outline" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "60952B51-85EE-45B0-9834-7117F8DED9D7", - "baseIconId": "2D28230E-DAF3-4A49-ACB6-7D9C3E9E6495", - "name": "notebook-minus", - "codepoint": "F1610", - "aliases": [], - "styles": [ - "minus" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "0B3667B2-5DB3-4C7B-8E01-4601666EE765", - "baseIconId": "2D28230E-DAF3-4A49-ACB6-7D9C3E9E6495", - "name": "notebook-minus-outline", - "codepoint": "F1611", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "3F75C3D8-9360-4C31-AF58-1C01321620F0", - "baseIconId": "2D28230E-DAF3-4A49-ACB6-7D9C3E9E6495", - "name": "notebook-multiple", - "codepoint": "F0E55", - "aliases": [ - "journal-multiple", - "planner-multiple" - ], - "styles": [ - "multiple" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [], - "author": "Gabriel Grant" - }, - { - "id": "71D72BE3-C04C-40EF-87B7-A08E74045DC0", - "baseIconId": "2D28230E-DAF3-4A49-ACB6-7D9C3E9E6495", - "name": "notebook-outline", - "codepoint": "F0EBF", - "aliases": [ - "journal-outline", - "planner-outline" - ], - "styles": [ - "outline" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "03D29CD4-AFB3-41E3-9B35-80F27ABFDD13", - "baseIconId": "2D28230E-DAF3-4A49-ACB6-7D9C3E9E6495", - "name": "notebook-plus", - "codepoint": "F1612", - "aliases": [], - "styles": [ - "plus" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "8652F3A3-ED31-48CA-B051-A4ADCFC722F6", - "baseIconId": "2D28230E-DAF3-4A49-ACB6-7D9C3E9E6495", - "name": "notebook-plus-outline", - "codepoint": "F1613", - "aliases": [], - "styles": [ - "outline", - "plus" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "318A0AA0-55F5-4242-B377-BA972C7B3AD3", - "baseIconId": "2D28230E-DAF3-4A49-ACB6-7D9C3E9E6495", - "name": "notebook-remove", - "codepoint": "F1614", - "aliases": [], - "styles": [ - "remove" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "92BD7E81-2B29-48FB-B0B0-F38C94BE4B51", - "baseIconId": "2D28230E-DAF3-4A49-ACB6-7D9C3E9E6495", - "name": "notebook-remove-outline", - "codepoint": "F1615", - "aliases": [], - "styles": [ - "outline", - "remove" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "E758A025-3B14-4A2F-A1D7-2D12C38B47E4", - "baseIconId": "E758A025-3B14-4A2F-A1D7-2D12C38B47E4", - "name": "notification-clear-all", - "codepoint": "F039F", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Notification" - ], - "author": "Google" - }, - { - "id": "5E072845-A46E-4D62-A65D-28CD7DAD976B", - "baseIconId": "5E072845-A46E-4D62-A65D-28CD7DAD976B", - "name": "npm", - "codepoint": "F06F7", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "DB44684C-B1E7-4039-8BAA-C7C0BC4EB075", - "baseIconId": "DB44684C-B1E7-4039-8BAA-C7C0BC4EB075", - "name": "nuke", - "codepoint": "F06A4", - "aliases": [ - "nuclear", - "atomic-bomb" - ], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "5004722B-DE0B-4F37-BCAD-36B46477E80F", - "baseIconId": "5004722B-DE0B-4F37-BCAD-36B46477E80F", - "name": "null", - "codepoint": "F07E2", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "1293DBCD-E538-4AD1-97C9-3F17BBD28457", - "baseIconId": "1293DBCD-E538-4AD1-97C9-3F17BBD28457", - "name": "numeric", - "codepoint": "F03A0", - "aliases": [ - "numbers", - "1-2-3", - "one-two-three", - "123" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Austin Andrews" - }, - { - "id": "3396CDF3-94D7-4F1B-B0FF-58FA3935468C", - "baseIconId": "3396CDF3-94D7-4F1B-B0FF-58FA3935468C", - "name": "numeric-0", - "codepoint": "F0B39", - "aliases": [ - "number-0", - "numeric-zero" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "C676CDFC-A808-4BCA-A670-49EE8478ED32", - "baseIconId": "3396CDF3-94D7-4F1B-B0FF-58FA3935468C", - "name": "numeric-0-box", - "codepoint": "F03A1", - "aliases": [ - "numeric-zero-box", - "number-0-box" - ], - "styles": [ - "box" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "D54CC81B-F785-4896-BA17-454BBBE96EC5", - "baseIconId": "3396CDF3-94D7-4F1B-B0FF-58FA3935468C", - "name": "numeric-0-box-multiple", - "codepoint": "F0F0E", - "aliases": [], - "styles": [ - "box", - "multiple" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "B3652E81-9CA5-4B7C-B603-FE94CB2D1323", - "baseIconId": "3396CDF3-94D7-4F1B-B0FF-58FA3935468C", - "name": "numeric-0-box-multiple-outline", - "codepoint": "F03A2", - "aliases": [ - "numeric-zero-box-multiple-outline", - "numeric-0-boxes-outline", - "number-0-box-multiple-outline" - ], - "styles": [ - "box", - "multiple", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "1EB53615-9A62-4377-A2D0-246C8F42CAF8", - "baseIconId": "3396CDF3-94D7-4F1B-B0FF-58FA3935468C", - "name": "numeric-0-box-outline", - "codepoint": "F03A3", - "aliases": [ - "numeric-zero-box-outline", - "number-0-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "802F5332-8865-46C9-890D-130209044E17", - "baseIconId": "3396CDF3-94D7-4F1B-B0FF-58FA3935468C", - "name": "numeric-0-circle", - "codepoint": "F0C9E", - "aliases": [ - "numeric-zero-circle", - "number-0-circle", - "number-zero-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "BB859C27-AAAC-4ED4-A50B-45427C15CF05", - "baseIconId": "3396CDF3-94D7-4F1B-B0FF-58FA3935468C", - "name": "numeric-0-circle-outline", - "codepoint": "F0C9F", - "aliases": [ - "numeric-zero-circle-outline", - "number-0-circle-outline", - "number-zero-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "DF225E4A-DED0-43C3-83B1-4867ABA9D45B", - "baseIconId": "DF225E4A-DED0-43C3-83B1-4867ABA9D45B", - "name": "numeric-1", - "codepoint": "F0B3A", - "aliases": [ - "number-1", - "numeric-one" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "0EF5316E-7978-4F6C-B38E-297837B3CFF5", - "baseIconId": "DF225E4A-DED0-43C3-83B1-4867ABA9D45B", - "name": "numeric-1-box", - "codepoint": "F03A4", - "aliases": [ - "looks-one", - "numeric-one-box", - "number-1-box" - ], - "styles": [ - "box" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "9CF3C6FF-4E68-478B-85B9-02ABA9A7980C", - "baseIconId": "DF225E4A-DED0-43C3-83B1-4867ABA9D45B", - "name": "numeric-1-box-multiple", - "codepoint": "F0F0F", - "aliases": [], - "styles": [ - "box", - "multiple" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "55513DD6-D73E-438E-8834-D6761C47BA4B", - "baseIconId": "DF225E4A-DED0-43C3-83B1-4867ABA9D45B", - "name": "numeric-1-box-multiple-outline", - "codepoint": "F03A5", - "aliases": [ - "filter-1", - "numeric-one-box-multiple-outline", - "numeric-1-boxes-outline", - "number-1-box-multiple-outline" - ], - "styles": [ - "box", - "multiple", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "50AEDC65-99B1-45CA-8078-CD6D8633995A", - "baseIconId": "DF225E4A-DED0-43C3-83B1-4867ABA9D45B", - "name": "numeric-1-box-outline", - "codepoint": "F03A6", - "aliases": [ - "numeric-one-box-outline", - "number-1-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "77E2B22B-C6FB-4759-B2BB-0528DAFA6210", - "baseIconId": "DF225E4A-DED0-43C3-83B1-4867ABA9D45B", - "name": "numeric-1-circle", - "codepoint": "F0CA0", - "aliases": [ - "numeric-one-circle", - "number-1-circle", - "number-one-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "7621E523-93F4-47A9-A7A5-9BC2A01A4DD4", - "baseIconId": "DF225E4A-DED0-43C3-83B1-4867ABA9D45B", - "name": "numeric-1-circle-outline", - "codepoint": "F0CA1", - "aliases": [ - "numeric-one-circle-outline", - "number-1-circle-outline", - "number-one-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "59F26CDB-B593-4675-941C-68F0E99F2CFF", - "baseIconId": "59F26CDB-B593-4675-941C-68F0E99F2CFF", - "name": "numeric-10", - "codepoint": "F0FE9", - "aliases": [], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "BD0566FC-D422-4ABD-8D6E-7E08EED3708D", - "baseIconId": "59F26CDB-B593-4675-941C-68F0E99F2CFF", - "name": "numeric-10-box", - "codepoint": "F0F7D", - "aliases": [], - "styles": [ - "box" - ], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0ABCD0B7-C95E-4BD9-AFBB-C1CF415FE53C", - "baseIconId": "59F26CDB-B593-4675-941C-68F0E99F2CFF", - "name": "numeric-10-box-multiple", - "codepoint": "F0FEA", - "aliases": [], - "styles": [ - "box", - "multiple" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "4C455257-74B0-4140-BA07-71582A9750FD", - "baseIconId": "59F26CDB-B593-4675-941C-68F0E99F2CFF", - "name": "numeric-10-box-multiple-outline", - "codepoint": "F0FEB", - "aliases": [], - "styles": [ - "box", - "multiple", - "outline" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "12AB352E-27A7-43D6-BF2E-EF35BC4CA288", - "baseIconId": "59F26CDB-B593-4675-941C-68F0E99F2CFF", - "name": "numeric-10-box-outline", - "codepoint": "F0F7E", - "aliases": [], - "styles": [ - "box", - "outline" - ], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Michael Irigoyen" - }, - { - "id": "487FE19B-CDA9-4895-B904-606B73BB66E7", - "baseIconId": "59F26CDB-B593-4675-941C-68F0E99F2CFF", - "name": "numeric-10-circle", - "codepoint": "F0FEC", - "aliases": [], - "styles": [ - "circle" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "FAABED75-FE76-4109-824D-F16C54E43FA2", - "baseIconId": "59F26CDB-B593-4675-941C-68F0E99F2CFF", - "name": "numeric-10-circle-outline", - "codepoint": "F0FED", - "aliases": [], - "styles": [ - "circle", - "outline" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "55F915B1-69CB-4394-9313-F8A0B7A8EBB9", - "baseIconId": "55F915B1-69CB-4394-9313-F8A0B7A8EBB9", - "name": "numeric-2", - "codepoint": "F0B3B", - "aliases": [ - "number-2", - "numeric-two" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "0F35B058-84BF-42A1-8EC2-4DF8A5F2CB6D", - "baseIconId": "55F915B1-69CB-4394-9313-F8A0B7A8EBB9", - "name": "numeric-2-box", - "codepoint": "F03A7", - "aliases": [ - "looks-two", - "numeric-two-box", - "number-2-box" - ], - "styles": [ - "box" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "4950EF31-6A39-4EFE-91CD-10CB750A3634", - "baseIconId": "55F915B1-69CB-4394-9313-F8A0B7A8EBB9", - "name": "numeric-2-box-multiple", - "codepoint": "F0F10", - "aliases": [], - "styles": [ - "box", - "multiple" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "989BAC0E-21F6-4AF2-849A-3DA35BA5958F", - "baseIconId": "55F915B1-69CB-4394-9313-F8A0B7A8EBB9", - "name": "numeric-2-box-multiple-outline", - "codepoint": "F03A8", - "aliases": [ - "filter-2", - "numeric-two-box-multiple-outline", - "numeric-2-boxes-outline", - "number-2-box-multiple-outline" - ], - "styles": [ - "box", - "multiple", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "0C255402-1176-46B5-B38C-60118732FCC7", - "baseIconId": "55F915B1-69CB-4394-9313-F8A0B7A8EBB9", - "name": "numeric-2-box-outline", - "codepoint": "F03A9", - "aliases": [ - "numeric-two-box-outline", - "number-2-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "C8CF7706-2522-4EB4-A304-C25BAD47C1C7", - "baseIconId": "55F915B1-69CB-4394-9313-F8A0B7A8EBB9", - "name": "numeric-2-circle", - "codepoint": "F0CA2", - "aliases": [ - "numeric-two-circle", - "number-2-circle", - "number-two-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "36906959-9333-4F37-9BB3-BE1481F2A99A", - "baseIconId": "55F915B1-69CB-4394-9313-F8A0B7A8EBB9", - "name": "numeric-2-circle-outline", - "codepoint": "F0CA3", - "aliases": [ - "numeric-two-circle-outline", - "number-2-circle-outline", - "number-two-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "E7B3F9D9-BC8D-4BE8-B02D-F2E20B3B357A", - "baseIconId": "E7B3F9D9-BC8D-4BE8-B02D-F2E20B3B357A", - "name": "numeric-3", - "codepoint": "F0B3C", - "aliases": [ - "number-3", - "numeric-three" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "F34D170B-4DF1-470D-ABC4-AE0A93035227", - "baseIconId": "E7B3F9D9-BC8D-4BE8-B02D-F2E20B3B357A", - "name": "numeric-3-box", - "codepoint": "F03AA", - "aliases": [ - "looks-3", - "numeric-three-box", - "number-3-box" - ], - "styles": [ - "box" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "9D8EBAFA-19A3-4E74-9800-570AFD910814", - "baseIconId": "E7B3F9D9-BC8D-4BE8-B02D-F2E20B3B357A", - "name": "numeric-3-box-multiple", - "codepoint": "F0F11", - "aliases": [], - "styles": [ - "box", - "multiple" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "394B1DFD-7009-4057-AD14-7F7D99B3A658", - "baseIconId": "E7B3F9D9-BC8D-4BE8-B02D-F2E20B3B357A", - "name": "numeric-3-box-multiple-outline", - "codepoint": "F03AB", - "aliases": [ - "filter-3", - "numeric-three-box-multiple-outline", - "numeric-3-boxes-outline", - "number-3-box-multiple-outline" - ], - "styles": [ - "box", - "multiple", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "0A0F7443-4234-4990-9C0B-A8AC88F924E5", - "baseIconId": "E7B3F9D9-BC8D-4BE8-B02D-F2E20B3B357A", - "name": "numeric-3-box-outline", - "codepoint": "F03AC", - "aliases": [ - "numeric-three-box-outline", - "number-3-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "07FDE137-E119-45E9-8100-3C0194FFF51D", - "baseIconId": "E7B3F9D9-BC8D-4BE8-B02D-F2E20B3B357A", - "name": "numeric-3-circle", - "codepoint": "F0CA4", - "aliases": [ - "numeric-three-circle", - "number-3-circle", - "number-three-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "4AF81318-EC08-4E9D-9853-F7C8AD694E10", - "baseIconId": "E7B3F9D9-BC8D-4BE8-B02D-F2E20B3B357A", - "name": "numeric-3-circle-outline", - "codepoint": "F0CA5", - "aliases": [ - "numeric-three-circle-outline", - "number-3-circle-outline", - "number-three-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "099C1A7A-865B-4BA2-951B-EED8F8665083", - "baseIconId": "099C1A7A-865B-4BA2-951B-EED8F8665083", - "name": "numeric-4", - "codepoint": "F0B3D", - "aliases": [ - "number-4", - "numeric-four" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "9C9EEFA4-B764-41CE-A679-3927454AE59A", - "baseIconId": "099C1A7A-865B-4BA2-951B-EED8F8665083", - "name": "numeric-4-box", - "codepoint": "F03AD", - "aliases": [ - "looks-4", - "numeric-four-box", - "number-4-box" - ], - "styles": [ - "box" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "DB253DAA-77F7-41F0-A1A4-76388FEFA092", - "baseIconId": "099C1A7A-865B-4BA2-951B-EED8F8665083", - "name": "numeric-4-box-multiple", - "codepoint": "F0F12", - "aliases": [], - "styles": [ - "box", - "multiple" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "EB320CFB-296A-4C6F-9585-76CA21DDCD04", - "baseIconId": "099C1A7A-865B-4BA2-951B-EED8F8665083", - "name": "numeric-4-box-multiple-outline", - "codepoint": "F03B2", - "aliases": [ - "filter-4", - "numeric-four-box-multiple-outline", - "numeric-4-boxes-outline", - "number-4-box-multiple-outline" - ], - "styles": [ - "box", - "multiple", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "18423C69-0B97-4590-A690-1AAF99615875", - "baseIconId": "099C1A7A-865B-4BA2-951B-EED8F8665083", - "name": "numeric-4-box-outline", - "codepoint": "F03AE", - "aliases": [ - "numeric-four-box-outline", - "number-4-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "3C8A2386-5BBE-495F-A1BE-BFBB3385D857", - "baseIconId": "099C1A7A-865B-4BA2-951B-EED8F8665083", - "name": "numeric-4-circle", - "codepoint": "F0CA6", - "aliases": [ - "numeric-four-circle", - "number-4-circle", - "number-four-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "898E368A-092D-45E4-B84D-9C99ABFFF2AC", - "baseIconId": "099C1A7A-865B-4BA2-951B-EED8F8665083", - "name": "numeric-4-circle-outline", - "codepoint": "F0CA7", - "aliases": [ - "numeric-four-circle-outline", - "number-4-circle-outline", - "number-four-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "EFB5FA9A-E828-4D71-A35F-011D873DE490", - "baseIconId": "EFB5FA9A-E828-4D71-A35F-011D873DE490", - "name": "numeric-5", - "codepoint": "F0B3E", - "aliases": [ - "number-5", - "numeric-five" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "1F91841C-B56D-486E-8113-187E28F1E53A", - "baseIconId": "EFB5FA9A-E828-4D71-A35F-011D873DE490", - "name": "numeric-5-box", - "codepoint": "F03B1", - "aliases": [ - "looks-5", - "numeric-five-box", - "number-5-box" - ], - "styles": [ - "box" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "C3FBC921-E4A1-4B04-BDEA-E883EE5FB695", - "baseIconId": "EFB5FA9A-E828-4D71-A35F-011D873DE490", - "name": "numeric-5-box-multiple", - "codepoint": "F0F13", - "aliases": [], - "styles": [ - "box", - "multiple" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "A39788D6-B09D-42CF-ADC3-7575B14DBE79", - "baseIconId": "EFB5FA9A-E828-4D71-A35F-011D873DE490", - "name": "numeric-5-box-multiple-outline", - "codepoint": "F03AF", - "aliases": [ - "filter-5", - "numeric-five-box-multiple-outline", - "numeric-5-boxes-outline", - "number-5-box-multiple-outline" - ], - "styles": [ - "box", - "multiple", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "38CB37B2-2BF9-4890-8060-5576DDAE6FC6", - "baseIconId": "EFB5FA9A-E828-4D71-A35F-011D873DE490", - "name": "numeric-5-box-outline", - "codepoint": "F03B0", - "aliases": [ - "numeric-five-box-outline", - "number-5-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "B4079A0A-5D66-4982-B31F-4145B49E5512", - "baseIconId": "EFB5FA9A-E828-4D71-A35F-011D873DE490", - "name": "numeric-5-circle", - "codepoint": "F0CA8", - "aliases": [ - "numeric-five-circle", - "number-5-circle", - "number-five-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "1FFAD3CC-0B61-4A7A-90F0-E5A5D78D7D3A", - "baseIconId": "EFB5FA9A-E828-4D71-A35F-011D873DE490", - "name": "numeric-5-circle-outline", - "codepoint": "F0CA9", - "aliases": [ - "numeric-five-circle-outline", - "number-5-circle-outline", - "number-five-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "8B73A4D3-4AC9-448B-8C60-497EC2167898", - "baseIconId": "8B73A4D3-4AC9-448B-8C60-497EC2167898", - "name": "numeric-6", - "codepoint": "F0B3F", - "aliases": [ - "number-6", - "numeric-six" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "DC1FE999-3DD7-423B-95A5-89005C66875E", - "baseIconId": "8B73A4D3-4AC9-448B-8C60-497EC2167898", - "name": "numeric-6-box", - "codepoint": "F03B3", - "aliases": [ - "looks-6", - "numeric-six-box", - "number-6-box" - ], - "styles": [ - "box" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "231F08AC-E082-407D-9EC9-55C2E654EF16", - "baseIconId": "8B73A4D3-4AC9-448B-8C60-497EC2167898", - "name": "numeric-6-box-multiple", - "codepoint": "F0F14", - "aliases": [], - "styles": [ - "box", - "multiple" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "F3AA6A15-D060-40D7-A301-9EB1BAAF2F12", - "baseIconId": "8B73A4D3-4AC9-448B-8C60-497EC2167898", - "name": "numeric-6-box-multiple-outline", - "codepoint": "F03B4", - "aliases": [ - "filter-6", - "numeric-six-box-multiple-outline", - "numeric-6-boxes-outline", - "number-6-box-multiple-outline" - ], - "styles": [ - "box", - "multiple", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "8ED3719B-D733-46ED-BFCF-0BDE0819F7EF", - "baseIconId": "8B73A4D3-4AC9-448B-8C60-497EC2167898", - "name": "numeric-6-box-outline", - "codepoint": "F03B5", - "aliases": [ - "numeric-six-box-outline", - "number-6-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "E15A2826-796D-439A-9A10-4F068C76C6FC", - "baseIconId": "8B73A4D3-4AC9-448B-8C60-497EC2167898", - "name": "numeric-6-circle", - "codepoint": "F0CAA", - "aliases": [ - "numeric-six-circle", - "number-6-circle", - "number-six-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "6D644C9F-A3C4-45E6-A2E8-E3077A170E4A", - "baseIconId": "8B73A4D3-4AC9-448B-8C60-497EC2167898", - "name": "numeric-6-circle-outline", - "codepoint": "F0CAB", - "aliases": [ - "numeric-six-circle-outline", - "number-6-circle-outline", - "number-six-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "19BDA673-8B20-4A75-87B9-7286F0B14730", - "baseIconId": "19BDA673-8B20-4A75-87B9-7286F0B14730", - "name": "numeric-7", - "codepoint": "F0B40", - "aliases": [ - "number-7", - "numeric-seven" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "C01DF00A-5B63-4B15-B6A5-FEA9E3E084B1", - "baseIconId": "19BDA673-8B20-4A75-87B9-7286F0B14730", - "name": "numeric-7-box", - "codepoint": "F03B6", - "aliases": [ - "numeric-seven-box", - "number-7-box" - ], - "styles": [ - "box" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "C69F2D2A-7226-4D0A-87A8-3D53753C0572", - "baseIconId": "19BDA673-8B20-4A75-87B9-7286F0B14730", - "name": "numeric-7-box-multiple", - "codepoint": "F0F15", - "aliases": [], - "styles": [ - "box", - "multiple" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "CF43DB99-4419-491B-A5E3-2486A36F24DB", - "baseIconId": "19BDA673-8B20-4A75-87B9-7286F0B14730", - "name": "numeric-7-box-multiple-outline", - "codepoint": "F03B7", - "aliases": [ - "filter-7", - "numeric-seven-box-multiple-outline", - "numeric-7-boxes-outline", - "number-7-box-multiple-outline" - ], - "styles": [ - "box", - "multiple", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "373DD873-E15F-4B7C-8328-76389DC81DB0", - "baseIconId": "19BDA673-8B20-4A75-87B9-7286F0B14730", - "name": "numeric-7-box-outline", - "codepoint": "F03B8", - "aliases": [ - "numeric-seven-box-outline", - "number-7-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "FE25714F-69B5-463B-8C11-5E4E057C83C3", - "baseIconId": "19BDA673-8B20-4A75-87B9-7286F0B14730", - "name": "numeric-7-circle", - "codepoint": "F0CAC", - "aliases": [ - "numeric-seven-circle", - "number-7-circle", - "number-seven-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "67707F91-E498-46C6-816B-2A6D1BE437F6", - "baseIconId": "19BDA673-8B20-4A75-87B9-7286F0B14730", - "name": "numeric-7-circle-outline", - "codepoint": "F0CAD", - "aliases": [ - "numeric-seven-circle-outline", - "number-7-circle-outline", - "number-seven-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "F92BFF4C-3D23-466A-BBE6-AF98DB0F43A9", - "baseIconId": "F92BFF4C-3D23-466A-BBE6-AF98DB0F43A9", - "name": "numeric-8", - "codepoint": "F0B41", - "aliases": [ - "number-8", - "numeric-eight" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "863E0667-F376-4303-9261-CAA4B7F073C6", - "baseIconId": "F92BFF4C-3D23-466A-BBE6-AF98DB0F43A9", - "name": "numeric-8-box", - "codepoint": "F03B9", - "aliases": [ - "numeric-eight-box", - "number-8-box" - ], - "styles": [ - "box" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "D032F5F3-670D-4576-AD76-A17562377466", - "baseIconId": "F92BFF4C-3D23-466A-BBE6-AF98DB0F43A9", - "name": "numeric-8-box-multiple", - "codepoint": "F0F16", - "aliases": [], - "styles": [ - "box", - "multiple" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "869A508B-5F8E-41A7-BCE5-E205FC66C80F", - "baseIconId": "F92BFF4C-3D23-466A-BBE6-AF98DB0F43A9", - "name": "numeric-8-box-multiple-outline", - "codepoint": "F03BA", - "aliases": [ - "filter-8", - "numeric-eight-box-multiple-outline", - "numeric-8-boxes-outline", - "number-8-box-multiple-outline" - ], - "styles": [ - "box", - "multiple", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "DC2B6D38-A6B3-4171-AAC6-E08EF2C23710", - "baseIconId": "F92BFF4C-3D23-466A-BBE6-AF98DB0F43A9", - "name": "numeric-8-box-outline", - "codepoint": "F03BB", - "aliases": [ - "numeric-eight-box-outline", - "number-8-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "26382400-22B1-40A6-9C1A-46C649C36783", - "baseIconId": "F92BFF4C-3D23-466A-BBE6-AF98DB0F43A9", - "name": "numeric-8-circle", - "codepoint": "F0CAE", - "aliases": [ - "numeric-eight-circle", - "number-8-circle", - "number-eight-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "C1306EC5-E7F0-4152-A19D-84E851537171", - "baseIconId": "F92BFF4C-3D23-466A-BBE6-AF98DB0F43A9", - "name": "numeric-8-circle-outline", - "codepoint": "F0CAF", - "aliases": [ - "numeric-eight-circle-outline", - "number-8-circle-outline", - "number-eight-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "11F0ADB8-0CC8-48A3-8653-11E7F58B5C9B", - "baseIconId": "11F0ADB8-0CC8-48A3-8653-11E7F58B5C9B", - "name": "numeric-9", - "codepoint": "F0B42", - "aliases": [ - "number-9", - "numeric-nine" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "12DCC44D-8BA2-4D25-A88B-665920C8B730", - "baseIconId": "11F0ADB8-0CC8-48A3-8653-11E7F58B5C9B", - "name": "numeric-9-box", - "codepoint": "F03BC", - "aliases": [ - "numeric-nine-box", - "number-9-box" - ], - "styles": [ - "box" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "3DAA435E-D837-4AD3-9937-0D554F409BB0", - "baseIconId": "11F0ADB8-0CC8-48A3-8653-11E7F58B5C9B", - "name": "numeric-9-box-multiple", - "codepoint": "F0F17", - "aliases": [], - "styles": [ - "box", - "multiple" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "A41F44A0-816E-497E-A08C-C9646FE161BE", - "baseIconId": "11F0ADB8-0CC8-48A3-8653-11E7F58B5C9B", - "name": "numeric-9-box-multiple-outline", - "codepoint": "F03BD", - "aliases": [ - "filter-9", - "numeric-nine-box-multiple-outline", - "numeric-9-boxes-outline", - "number-9-box-multiple-outline" - ], - "styles": [ - "box", - "multiple", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "EE2E9486-0C32-4EC9-9D4F-9B8A7287F696", - "baseIconId": "11F0ADB8-0CC8-48A3-8653-11E7F58B5C9B", - "name": "numeric-9-box-outline", - "codepoint": "F03BE", - "aliases": [ - "numeric-nine-box-outline", - "number-9-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "FB06011B-B2CC-4F3A-8ADE-2F7E78F0AE7C", - "baseIconId": "11F0ADB8-0CC8-48A3-8653-11E7F58B5C9B", - "name": "numeric-9-circle", - "codepoint": "F0CB0", - "aliases": [ - "numeric-nine-circle", - "number-9-circle", - "number-nine-circle" - ], - "styles": [ - "circle" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "F27ABCBB-C6D6-4C1E-AF0C-C406057245AA", - "baseIconId": "11F0ADB8-0CC8-48A3-8653-11E7F58B5C9B", - "name": "numeric-9-circle-outline", - "codepoint": "F0CB1", - "aliases": [ - "numeric-nine-circle-outline", - "number-9-circle-outline", - "number-nine-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "CF313E88-0D2F-49B9-B2BC-6651ACEAA677", - "baseIconId": "11F0ADB8-0CC8-48A3-8653-11E7F58B5C9B", - "name": "numeric-9-plus", - "codepoint": "F0FEE", - "aliases": [], - "styles": [ - "plus" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "GreenTurtwig" - }, - { - "id": "7CF309F0-D751-44A3-A313-BA7F2F8865FD", - "baseIconId": "11F0ADB8-0CC8-48A3-8653-11E7F58B5C9B", - "name": "numeric-9-plus-box", - "codepoint": "F03BF", - "aliases": [ - "numeric-nine-plus-box", - "number-9-plus-box" - ], - "styles": [ - "box", - "plus" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "20E22DC1-795D-432F-9CB9-D339EA3B96DB", - "baseIconId": "11F0ADB8-0CC8-48A3-8653-11E7F58B5C9B", - "name": "numeric-9-plus-box-multiple", - "codepoint": "F0F18", - "aliases": [], - "styles": [ - "box", - "multiple", - "plus" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "46A850FC-F6E6-4000-A93F-6B954DA62886", - "baseIconId": "11F0ADB8-0CC8-48A3-8653-11E7F58B5C9B", - "name": "numeric-9-plus-box-multiple-outline", - "codepoint": "F03C0", - "aliases": [ - "filter-9-plus", - "numeric-nine-plus-box-multiple-outline", - "numeric-9-plus-boxes-outline", - "number-9-plus-box-multiple-outline" - ], - "styles": [ - "box", - "multiple", - "outline", - "plus" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "C1F38C40-BD01-45FE-A94C-B3C1432707E0", - "baseIconId": "11F0ADB8-0CC8-48A3-8653-11E7F58B5C9B", - "name": "numeric-9-plus-box-outline", - "codepoint": "F03C1", - "aliases": [ - "numeric-nine-plus-box-outline", - "number-9-plus-box-outline" - ], - "styles": [ - "box", - "outline", - "plus" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Google" - }, - { - "id": "757FDF81-DCCF-4B75-9A2A-9ED3D2DB966E", - "baseIconId": "11F0ADB8-0CC8-48A3-8653-11E7F58B5C9B", - "name": "numeric-9-plus-circle", - "codepoint": "F0CB2", - "aliases": [ - "numeric-nine-plus-circle", - "number-9-plus-circle", - "number-nine-plus-circle" - ], - "styles": [ - "circle", - "plus" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "00BD21E8-FAF1-470D-8F64-0030C1C222F3", - "baseIconId": "11F0ADB8-0CC8-48A3-8653-11E7F58B5C9B", - "name": "numeric-9-plus-circle-outline", - "codepoint": "F0CB3", - "aliases": [ - "numeric-nine-plus-circle-outline", - "number-9-plus-circle-outline", - "number-nine-plus-circle-outline" - ], - "styles": [ - "circle", - "outline", - "plus" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "B198FE0B-15C3-4FFB-B5C9-2D6E60E825A1", - "baseIconId": "DF225E4A-DED0-43C3-83B1-4867ABA9D45B", - "name": "numeric-negative-1", - "codepoint": "F1052", - "aliases": [ - "decrement", - "minus-one" - ], - "styles": [ - "minus" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "560615BB-A023-4B98-88A6-F38FBF3272E2", - "baseIconId": "1293DBCD-E538-4AD1-97C9-3F17BBD28457", - "name": "numeric-off", - "codepoint": "F19D3", - "aliases": [ - "numbers-off", - "123-off", - "one-two-three-off" - ], - "styles": [ - "off" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Piotr \u0141ado\u0144ski" - }, - { - "id": "73DE8F6E-A301-42D1-B2C3-3699265BA2BB", - "baseIconId": "DF225E4A-DED0-43C3-83B1-4867ABA9D45B", - "name": "numeric-positive-1", - "codepoint": "F15CB", - "aliases": [ - "increment", - "plus-one" - ], - "styles": [ - "plus" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Michael Irigoyen" - }, - { - "id": "8B702257-4232-459E-BDA8-C4E698DF8E8E", - "baseIconId": "8B702257-4232-459E-BDA8-C4E698DF8E8E", - "name": "nut", - "codepoint": "F06F8", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Simran" - }, - { - "id": "723E0BBB-78CC-4192-98B1-426B17D694B9", - "baseIconId": "723E0BBB-78CC-4192-98B1-426B17D694B9", - "name": "nutrition", - "codepoint": "F03C2", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Austin Andrews" - }, - { - "id": "EDCDD59F-BD6B-49C9-B93A-36879031CEA3", - "baseIconId": "EDCDD59F-BD6B-49C9-B93A-36879031CEA3", - "name": "nuxt", - "codepoint": "F1106", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "A065A53E-118C-424A-8A81-0D300975AB04", - "baseIconId": "A065A53E-118C-424A-8A81-0D300975AB04", - "name": "oar", - "codepoint": "F067C", - "aliases": [], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [], - "author": "Thomas Hunsaker" - }, - { - "id": "1C1A3850-DB11-4F6D-B031-8E4CE14E9760", - "baseIconId": "1C1A3850-DB11-4F6D-B031-8E4CE14E9760", - "name": "ocarina", - "codepoint": "F0DE0", - "aliases": [], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Music", - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "53021908-1FB5-4293-896E-94C5330E6101", - "baseIconId": "53021908-1FB5-4293-896E-94C5330E6101", - "name": "oci", - "codepoint": "F12E9", - "aliases": [ - "open-container-initiative" - ], - "styles": [], - "version": "4.8.95", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "2943D362-A548-448C-A868-19E6D37C8B2D", - "baseIconId": "2943D362-A548-448C-A868-19E6D37C8B2D", - "name": "ocr", - "codepoint": "F113A", - "aliases": [ - "optical-character-recognition" - ], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "5E3C88DE-A208-471A-9096-7C7868CC957C", - "baseIconId": "5E3C88DE-A208-471A-9096-7C7868CC957C", - "name": "octagon", - "codepoint": "F03C3", - "aliases": [ - "stop" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Shape", - "Transportation + Road" - ], - "author": "Simran" - }, - { - "id": "3CF63E10-42E7-4E13-8BFF-10E9257953AB", - "baseIconId": "5E3C88DE-A208-471A-9096-7C7868CC957C", - "name": "octagon-outline", - "codepoint": "F03C4", - "aliases": [ - "stop-outline" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Shape", - "Transportation + Road" - ], - "author": "Simran" - }, - { - "id": "455C8475-5555-49B7-825B-206581104AB2", - "baseIconId": "455C8475-5555-49B7-825B-206581104AB2", - "name": "octagram", - "codepoint": "F06F9", - "aliases": [ - "starburst" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Austin Andrews" - }, - { - "id": "7069C1C4-8C2E-4E67-B167-FA1A1FE61418", - "baseIconId": "455C8475-5555-49B7-825B-206581104AB2", - "name": "octagram-edit", - "codepoint": "F1C34", - "aliases": [ - "starburst-edit" - ], - "styles": [ - "edit" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Jeff Anders" - }, - { - "id": "02D856A6-74E6-41EA-8938-054DD39B627D", - "baseIconId": "455C8475-5555-49B7-825B-206581104AB2", - "name": "octagram-edit-outline", - "codepoint": "F1C35", - "aliases": [ - "starburst-edit-outline" - ], - "styles": [ - "edit", - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Jeff Anders" - }, - { - "id": "FA0E4A6E-0AED-4C67-B4AD-B52CF53C6D92", - "baseIconId": "455C8475-5555-49B7-825B-206581104AB2", - "name": "octagram-minus", - "codepoint": "F1C36", - "aliases": [ - "starburst-plus" - ], - "styles": [ - "plus" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Jeff Anders" - }, - { - "id": "E11403C7-999F-4EEF-BD97-5598280C54A2", - "baseIconId": "455C8475-5555-49B7-825B-206581104AB2", - "name": "octagram-minus-outline", - "codepoint": "F1C37", - "aliases": [ - "starburst-minus-outline" - ], - "styles": [ - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Jeff Anders" - }, - { - "id": "8316E0F1-5F66-4C4E-ACA8-EE61AD93A42A", - "baseIconId": "455C8475-5555-49B7-825B-206581104AB2", - "name": "octagram-outline", - "codepoint": "F0775", - "aliases": [ - "starburst-outline" - ], - "styles": [ - "outline" - ], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Austin Andrews" - }, - { - "id": "DF81ADEE-1450-4D83-A54C-25D9868FCF3F", - "baseIconId": "455C8475-5555-49B7-825B-206581104AB2", - "name": "octagram-plus", - "codepoint": "F1C38", - "aliases": [ - "starburst-plus" - ], - "styles": [ - "plus" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Jeff Anders" - }, - { - "id": "EC917461-058B-41D0-8BEA-FDB91DCCB63F", - "baseIconId": "8316E0F1-5F66-4C4E-ACA8-EE61AD93A42A", - "name": "octagram-plus-outline", - "codepoint": "F1C39", - "aliases": [], - "styles": [ - "outline", - "plus" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "45CD61D9-B0D0-43FA-B50E-F6E71A95128A", - "baseIconId": "45CD61D9-B0D0-43FA-B50E-F6E71A95128A", - "name": "octahedron", - "codepoint": "F1950", - "aliases": [], - "styles": [], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Colton Wiscombe" - }, - { - "id": "AD67A41D-5524-4F72-8658-C3F78A06333E", - "baseIconId": "45CD61D9-B0D0-43FA-B50E-F6E71A95128A", - "name": "octahedron-off", - "codepoint": "F1951", - "aliases": [], - "styles": [ - "off" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Colton Wiscombe" - }, - { - "id": "8BB24B94-491F-4465-8E87-45FF8FED7C4A", - "baseIconId": "8BB24B94-491F-4465-8E87-45FF8FED7C4A", - "name": "odnoklassniki", - "codepoint": "F03C5", - "aliases": [ - "ok-ru" - ], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "64C3CB40-BBDF-4A82-9B07-62CA527A258C", - "baseIconId": "64C3CB40-BBDF-4A82-9B07-62CA527A258C", - "name": "offer", - "codepoint": "F121B", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "C6BEE3A0-C734-48D4-A2E4-622E9B16CA06", - "baseIconId": "C6BEE3A0-C734-48D4-A2E4-622E9B16CA06", - "name": "office-building", - "codepoint": "F0991", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Places" - ], - "author": "GreenTurtwig" - }, - { - "id": "4A51F91C-857B-454A-8753-7AACF3B085A9", - "baseIconId": "C6BEE3A0-C734-48D4-A2E4-622E9B16CA06", - "name": "office-building-cog", - "codepoint": "F1949", - "aliases": [ - "office-building-settings" - ], - "styles": [ - "cog" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Settings", - "Places" - ], - "author": "Joshua Solomon" - }, - { - "id": "09BF7DAE-15CA-4539-BD8A-A741EB7E6405", - "baseIconId": "C6BEE3A0-C734-48D4-A2E4-622E9B16CA06", - "name": "office-building-cog-outline", - "codepoint": "F194A", - "aliases": [ - "office-building-settings-outline" - ], - "styles": [ - "cog", - "outline" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Settings", - "Places" - ], - "author": "Joshua Solomon" - }, - { - "id": "8409886F-203E-45A5-8A70-C1670406BBA2", - "baseIconId": "C6BEE3A0-C734-48D4-A2E4-622E9B16CA06", - "name": "office-building-marker", - "codepoint": "F1520", - "aliases": [ - "office-building-location" - ], - "styles": [ - "variant" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Navigation", - "Places" - ], - "author": "Joshua Solomon" - }, - { - "id": "B9C8DF7B-34D7-4D58-B769-B3ABAD0990FC", - "baseIconId": "C6BEE3A0-C734-48D4-A2E4-622E9B16CA06", - "name": "office-building-marker-outline", - "codepoint": "F1521", - "aliases": [ - "office-building-location-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Navigation", - "Places" - ], - "author": "Joshua Solomon" - }, - { - "id": "F328F94A-8174-49FC-9FB9-C2F28B1F7A4E", - "baseIconId": "C6BEE3A0-C734-48D4-A2E4-622E9B16CA06", - "name": "office-building-minus", - "codepoint": "F1BAA", - "aliases": [], - "styles": [ - "minus" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "C993C6FF-1C20-4E52-BC40-A62004B89D56", - "baseIconId": "C6BEE3A0-C734-48D4-A2E4-622E9B16CA06", - "name": "office-building-minus-outline", - "codepoint": "F1BAB", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "1171525F-C510-44B9-9E5C-0F5CAC7A71D2", - "baseIconId": "C6BEE3A0-C734-48D4-A2E4-622E9B16CA06", - "name": "office-building-outline", - "codepoint": "F151F", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Places" - ], - "author": "Joshua Solomon" - }, - { - "id": "DD2249E8-1290-41DB-9D68-DD3142413A2A", - "baseIconId": "DD2249E8-1290-41DB-9D68-DD3142413A2A", - "name": "office-building-plus", - "codepoint": "F1BA8", - "aliases": [], - "styles": [ - "plus" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "061CBB0D-D91D-4E6C-9C69-BCE3D119D45F", - "baseIconId": "061CBB0D-D91D-4E6C-9C69-BCE3D119D45F", - "name": "office-building-plus-outline", - "codepoint": "F1BA9", - "aliases": [], - "styles": [ - "outline", - "plus" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "arnoldlepineux" - }, - { - "id": "9FDDD96F-B993-47DD-BE60-1995CBBA973C", - "baseIconId": "C6BEE3A0-C734-48D4-A2E4-622E9B16CA06", - "name": "office-building-remove", - "codepoint": "F1BAC", - "aliases": [], - "styles": [ - "remove" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "1B9F3A92-AC49-4D8E-8CE9-07A70164548F", - "baseIconId": "C6BEE3A0-C734-48D4-A2E4-622E9B16CA06", - "name": "office-building-remove-outline", - "codepoint": "F1BAD", - "aliases": [], - "styles": [ - "outline", - "remove" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "DE398350-B7B7-4E6B-AE4C-F99AAE56C7CF", - "baseIconId": "DE398350-B7B7-4E6B-AE4C-F99AAE56C7CF", - "name": "oil", - "codepoint": "F03C7", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Austin Andrews" - }, - { - "id": "790DAFDA-8291-47F5-A5B9-9563AE201832", - "baseIconId": "790DAFDA-8291-47F5-A5B9-9563AE201832", - "name": "oil-lamp", - "codepoint": "F0F19", - "aliases": [ - "wish", - "genie-lamp" - ], - "styles": [], - "version": "3.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "A6579EB0-C38D-4052-A6C9-C1ECD97E482C", - "baseIconId": "DE398350-B7B7-4E6B-AE4C-F99AAE56C7CF", - "name": "oil-level", - "codepoint": "F1053", - "aliases": [], - "styles": [ - "variant" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C8743DBF-39CD-43E8-8EC3-B99D422422FC", - "baseIconId": "DE398350-B7B7-4E6B-AE4C-F99AAE56C7CF", - "name": "oil-temperature", - "codepoint": "F0FF8", - "aliases": [], - "styles": [ - "variant" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F1EE1708-7EAF-4929-97AA-D4BAC093D157", - "baseIconId": "F1EE1708-7EAF-4929-97AA-D4BAC093D157", - "name": "om", - "codepoint": "F0973", - "aliases": [ - "religion-hindu", - "hinduism" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Religion" - ], - "author": "Nick" - }, - { - "id": "A98F63CB-AB27-4A2D-B76C-6994507BCDBB", - "baseIconId": "A98F63CB-AB27-4A2D-B76C-6994507BCDBB", - "name": "omega", - "codepoint": "F03C9", - "aliases": [ - "ohm", - "electrical-resistance" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "DF8CCF67-8BD2-4632-8647-2B42BA2047A5", - "baseIconId": "DF8CCF67-8BD2-4632-8647-2B42BA2047A5", - "name": "one-up", - "codepoint": "F0BAD", - "aliases": [ - "1up", - "extra-life" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2B9B64C7-B799-45C5-BDCC-BEC3B8672CFE", - "baseIconId": "2B9B64C7-B799-45C5-BDCC-BEC3B8672CFE", - "name": "onepassword", - "codepoint": "F0881", - "aliases": [ - "1password" - ], - "styles": [], - "version": "2.1.99", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "27C36043-E269-4223-ADCE-568B1EFB4623", - "baseIconId": "27C36043-E269-4223-ADCE-568B1EFB4623", - "name": "opacity", - "codepoint": "F05CC", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "AF69E2E1-8119-49A2-8E24-915E2254522A", - "baseIconId": "AF69E2E1-8119-49A2-8E24-915E2254522A", - "name": "open-in-app", - "codepoint": "F03CB", - "aliases": [ - "open-in-browser" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "12B95238-1D74-4C6C-9BBD-C055B4DD0E4D", - "baseIconId": "12B95238-1D74-4C6C-9BBD-C055B4DD0E4D", - "name": "open-in-new", - "codepoint": "F03CC", - "aliases": [ - "external-link" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "DA48F078-4BE9-42DC-AF35-F557E16DD2AE", - "baseIconId": "DA48F078-4BE9-42DC-AF35-F557E16DD2AE", - "name": "open-source-initiative", - "codepoint": "F0BAE", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "C9525FF9-FE74-467C-99CE-F8DD8FE3576C", - "baseIconId": "C9525FF9-FE74-467C-99CE-F8DD8FE3576C", - "name": "openid", - "codepoint": "F03CD", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "A0BCE6D1-D558-487E-9629-F7CCC495C27B", - "baseIconId": "A0BCE6D1-D558-487E-9629-F7CCC495C27B", - "name": "opera", - "codepoint": "F03CE", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "D672819E-C3D1-49FC-A1E7-9F4732D034DC", - "baseIconId": "D672819E-C3D1-49FC-A1E7-9F4732D034DC", - "name": "orbit", - "codepoint": "F0018", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Roberto Graham" - }, - { - "id": "4A0C34D7-1D3D-472B-9E5D-858DBBCBC7B2", - "baseIconId": "D672819E-C3D1-49FC-A1E7-9F4732D034DC", - "name": "orbit-variant", - "codepoint": "F15DB", - "aliases": [ - "camera-flip" - ], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B6FBB02F-98A0-4521-BA9B-D00EA8A2FC57", - "baseIconId": "B6FBB02F-98A0-4521-BA9B-D00EA8A2FC57", - "name": "order-alphabetical-ascending", - "codepoint": "F020D", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Simran" - }, - { - "id": "D9CEAAB0-32D3-4A42-A0F3-74B1FC50E9F0", - "baseIconId": "B6FBB02F-98A0-4521-BA9B-D00EA8A2FC57", - "name": "order-alphabetical-descending", - "codepoint": "F0D07", - "aliases": [], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Simran" - }, - { - "id": "2D12922D-3C06-4916-9575-CA9A1014C4BF", - "baseIconId": "2D12922D-3C06-4916-9575-CA9A1014C4BF", - "name": "order-bool-ascending", - "codepoint": "F02BE", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Simran" - }, - { - "id": "FA5DB7BA-69CB-4DF5-9DE9-B0681889CB2D", - "baseIconId": "2D12922D-3C06-4916-9575-CA9A1014C4BF", - "name": "order-bool-ascending-variant", - "codepoint": "F098F", - "aliases": [ - "order-checkbox-ascending" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Simran" - }, - { - "id": "62006FDB-1540-4E32-B74D-A758C8974661", - "baseIconId": "2D12922D-3C06-4916-9575-CA9A1014C4BF", - "name": "order-bool-descending", - "codepoint": "F1384", - "aliases": [ - "order-checkbox-descending" - ], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Simran" - }, - { - "id": "56E79669-E557-4D22-A21D-E07FFDB1C2B6", - "baseIconId": "2D12922D-3C06-4916-9575-CA9A1014C4BF", - "name": "order-bool-descending-variant", - "codepoint": "F0990", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Simran" - }, - { - "id": "1ADB886B-B791-42BF-AC04-5EB73E665EA6", - "baseIconId": "1ADB886B-B791-42BF-AC04-5EB73E665EA6", - "name": "order-numeric-ascending", - "codepoint": "F0545", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Simran" - }, - { - "id": "3979C805-4C53-4F45-A6E5-9CAADE1C2D80", - "baseIconId": "1ADB886B-B791-42BF-AC04-5EB73E665EA6", - "name": "order-numeric-descending", - "codepoint": "F0546", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Simran" - }, - { - "id": "E41855D5-FB0E-4FAD-8CD8-D085B1577D2F", - "baseIconId": "E41855D5-FB0E-4FAD-8CD8-D085B1577D2F", - "name": "origin", - "codepoint": "F0B43", - "aliases": [], - "styles": [], - "version": "2.8.94", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "ADC4F1DD-B840-4C28-8D5C-08F3BE15A424", - "baseIconId": "ADC4F1DD-B840-4C28-8D5C-08F3BE15A424", - "name": "ornament", - "codepoint": "F03CF", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Holiday" - ], - "author": "Austin Andrews" - }, - { - "id": "9C3E1D75-FB73-44AA-8BCC-9B30692D8D79", - "baseIconId": "ADC4F1DD-B840-4C28-8D5C-08F3BE15A424", - "name": "ornament-variant", - "codepoint": "F03D0", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Holiday" - ], - "author": "Austin Andrews" - }, - { - "id": "09F61849-C1AA-4755-B49E-75DB800B5273", - "baseIconId": "09F61849-C1AA-4755-B49E-75DB800B5273", - "name": "outdoor-lamp", - "codepoint": "F1054", - "aliases": [ - "outdoor-light" - ], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Borre Haugen" - }, - { - "id": "059B5D2A-9B8B-412D-BAF1-F3F9B7E14A44", - "baseIconId": "059B5D2A-9B8B-412D-BAF1-F3F9B7E14A44", - "name": "overscan", - "codepoint": "F1005", - "aliases": [ - "fullscreen" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "1F963457-7A4F-4BEE-AE9C-0E54CF804DD3", - "baseIconId": "1F963457-7A4F-4BEE-AE9C-0E54CF804DD3", - "name": "owl", - "codepoint": "F03D2", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Animal", - "Holiday" - ], - "author": "Simran" - }, - { - "id": "29FC6427-61B9-4961-9004-FCD4A6E6522D", - "baseIconId": "29FC6427-61B9-4961-9004-FCD4A6E6522D", - "name": "pac-man", - "codepoint": "F0BAF", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Richins" - }, - { - "id": "57771FFC-0E2C-40DE-AF7C-F3F51EFFE2C0", - "baseIconId": "57771FFC-0E2C-40DE-AF7C-F3F51EFFE2C0", - "name": "package", - "codepoint": "F03D3", - "aliases": [ - "box" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "B1DB46BF-FA20-40F6-88CD-A5B06CB3E488", - "baseIconId": "57771FFC-0E2C-40DE-AF7C-F3F51EFFE2C0", - "name": "package-check", - "codepoint": "F1B51", - "aliases": [ - "package-delivered" - ], - "styles": [ - "check" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Hans B\u00f6hm" - }, - { - "id": "0C18B335-700A-4D68-BF88-C95A69479F2E", - "baseIconId": "57771FFC-0E2C-40DE-AF7C-F3F51EFFE2C0", - "name": "package-down", - "codepoint": "F03D4", - "aliases": [ - "archive", - "box-down", - "this-side-down" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "383EF914-6014-473D-8C54-0314432007E3", - "baseIconId": "57771FFC-0E2C-40DE-AF7C-F3F51EFFE2C0", - "name": "package-up", - "codepoint": "F03D5", - "aliases": [ - "unarchive", - "box-up", - "this-side-up" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "558C8C17-E4E1-4921-874D-F9ACB26C35C8", - "baseIconId": "57771FFC-0E2C-40DE-AF7C-F3F51EFFE2C0", - "name": "package-variant", - "codepoint": "F03D6", - "aliases": [ - "box-variant" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "290F16B3-147C-446D-B14B-56AECCA76276", - "baseIconId": "57771FFC-0E2C-40DE-AF7C-F3F51EFFE2C0", - "name": "package-variant-closed", - "codepoint": "F03D7", - "aliases": [ - "box-variant-closed" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "CAA724DF-E0C7-4010-8265-0C2E594D3094", - "baseIconId": "57771FFC-0E2C-40DE-AF7C-F3F51EFFE2C0", - "name": "package-variant-closed-check", - "codepoint": "F1B52", - "aliases": [ - "package-variant-closed-delivered" - ], - "styles": [ - "check", - "variant" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Hans B\u00f6hm" - }, - { - "id": "DF9F88A2-7B9A-4881-A2E4-6BC6F4387A0F", - "baseIconId": "57771FFC-0E2C-40DE-AF7C-F3F51EFFE2C0", - "name": "package-variant-closed-minus", - "codepoint": "F19D4", - "aliases": [ - "package-variant-closed-subtract", - "box-variant-closed-minus", - "box-variant-closed-subtract" - ], - "styles": [ - "minus", - "variant" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [], - "author": "Ferenc Szabo" - }, - { - "id": "749AB237-2B69-4BB9-9B2D-6F22B1F85D50", - "baseIconId": "57771FFC-0E2C-40DE-AF7C-F3F51EFFE2C0", - "name": "package-variant-closed-plus", - "codepoint": "F19D5", - "aliases": [ - "box-variant-closed-plus", - "package-variant-closed-add", - "box-variant-closed-add" - ], - "styles": [ - "plus", - "variant" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [], - "author": "Ferenc Szabo" - }, - { - "id": "425F62CE-0308-47E5-9825-CEE711EE34B2", - "baseIconId": "57771FFC-0E2C-40DE-AF7C-F3F51EFFE2C0", - "name": "package-variant-closed-remove", - "codepoint": "F19D6", - "aliases": [ - "box-variant-closed-remove" - ], - "styles": [ - "remove", - "variant" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [], - "author": "Ferenc Szabo" - }, - { - "id": "C204643B-C7FA-48A9-9910-C2258F77E707", - "baseIconId": "57771FFC-0E2C-40DE-AF7C-F3F51EFFE2C0", - "name": "package-variant-minus", - "codepoint": "F19D7", - "aliases": [ - "box-variant-minus", - "package-variant-subtract", - "box-variant-subtract" - ], - "styles": [ - "minus", - "variant" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "8E0543FE-6EC4-4D0F-9109-E77254414DD7", - "baseIconId": "57771FFC-0E2C-40DE-AF7C-F3F51EFFE2C0", - "name": "package-variant-plus", - "codepoint": "F19D8", - "aliases": [ - "box-variant-plus", - "package-variant-add", - "box-variant-add" - ], - "styles": [ - "plus", - "variant" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "1E482E98-310D-4A28-B461-DD48ADE915E8", - "baseIconId": "57771FFC-0E2C-40DE-AF7C-F3F51EFFE2C0", - "name": "package-variant-remove", - "codepoint": "F19D9", - "aliases": [ - "box-variant-remove" - ], - "styles": [ - "remove", - "variant" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "DF23FF47-4DD3-4CB3-9BEC-6EE986B0FA65", - "baseIconId": "DF23FF47-4DD3-4CB3-9BEC-6EE986B0FA65", - "name": "page-first", - "codepoint": "F0600", - "aliases": [ - "first-page", - "chevron-left-first" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "CF9B4635-FE27-4DA5-BE51-F5F4116AFC54", - "baseIconId": "CF9B4635-FE27-4DA5-BE51-F5F4116AFC54", - "name": "page-last", - "codepoint": "F0601", - "aliases": [ - "last-page", - "chevron-right-last" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "39AF8334-4244-49DD-A8A4-D4F638B9D939", - "baseIconId": "39AF8334-4244-49DD-A8A4-D4F638B9D939", - "name": "page-layout-body", - "codepoint": "F06FA", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "74636C38-381A-46B8-97FD-B312735DE60D", - "baseIconId": "74636C38-381A-46B8-97FD-B312735DE60D", - "name": "page-layout-footer", - "codepoint": "F06FB", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "3606AC64-ABC8-4DA6-ACE8-64D58E0B0A46", - "baseIconId": "3606AC64-ABC8-4DA6-ACE8-64D58E0B0A46", - "name": "page-layout-header", - "codepoint": "F06FC", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "C1258752-7002-4714-81E3-D90828B5A896", - "baseIconId": "C1258752-7002-4714-81E3-D90828B5A896", - "name": "page-layout-header-footer", - "codepoint": "F0F7F", - "aliases": [ - "page-layout-marginals" - ], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "6E39564D-2B4B-4940-9E74-5274ED12E800", - "baseIconId": "6E39564D-2B4B-4940-9E74-5274ED12E800", - "name": "page-layout-sidebar-left", - "codepoint": "F06FD", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "29C8714B-1CAD-41B8-829B-2A14F6F87684", - "baseIconId": "29C8714B-1CAD-41B8-829B-2A14F6F87684", - "name": "page-layout-sidebar-right", - "codepoint": "F06FE", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "760D3DDF-F710-4BE1-A4E6-CC5AD6AF49DB", - "baseIconId": "760D3DDF-F710-4BE1-A4E6-CC5AD6AF49DB", - "name": "page-next", - "codepoint": "F0BB0", - "aliases": [ - "read-more" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "9213C60D-0232-4ECB-91C6-8D2BF812FE6A", - "baseIconId": "760D3DDF-F710-4BE1-A4E6-CC5AD6AF49DB", - "name": "page-next-outline", - "codepoint": "F0BB1", - "aliases": [ - "read-more-outline" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "AF1A8DA7-B3AC-4E11-A50B-59FBA8B34CF5", - "baseIconId": "AF1A8DA7-B3AC-4E11-A50B-59FBA8B34CF5", - "name": "page-previous", - "codepoint": "F0BB2", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "A26AE0CE-1223-4A40-B7B6-E4FDCC5AE820", - "baseIconId": "AF1A8DA7-B3AC-4E11-A50B-59FBA8B34CF5", - "name": "page-previous-outline", - "codepoint": "F0BB3", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "C4C17ED6-0DB6-4A13-9C6F-0C3146B0CD80", - "baseIconId": "C4C17ED6-0DB6-4A13-9C6F-0C3146B0CD80", - "name": "pail", - "codepoint": "F1417", - "aliases": [ - "bucket" - ], - "styles": [], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "ECD25F41-E1C8-438E-BFF3-54F529504071", - "baseIconId": "C4C17ED6-0DB6-4A13-9C6F-0C3146B0CD80", - "name": "pail-minus", - "codepoint": "F1437", - "aliases": [ - "bucket-minus" - ], - "styles": [ - "minus" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "599354BE-5249-40F9-8E62-466F89203E5B", - "baseIconId": "C4C17ED6-0DB6-4A13-9C6F-0C3146B0CD80", - "name": "pail-minus-outline", - "codepoint": "F143C", - "aliases": [ - "bucket-minus-outline" - ], - "styles": [ - "minus", - "outline" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "2F1D4972-0025-4EB4-ADFC-2ACBEF34C7EA", - "baseIconId": "C4C17ED6-0DB6-4A13-9C6F-0C3146B0CD80", - "name": "pail-off", - "codepoint": "F1439", - "aliases": [ - "bucket-off" - ], - "styles": [ - "off" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "896E500B-797D-4687-917C-063906BB503F", - "baseIconId": "C4C17ED6-0DB6-4A13-9C6F-0C3146B0CD80", - "name": "pail-off-outline", - "codepoint": "F143E", - "aliases": [ - "bucket-off-outline" - ], - "styles": [ - "off", - "outline" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "02152202-9609-4E5D-A6C5-1C7FE35F97E8", - "baseIconId": "C4C17ED6-0DB6-4A13-9C6F-0C3146B0CD80", - "name": "pail-outline", - "codepoint": "F143A", - "aliases": [ - "bucket-outline" - ], - "styles": [ - "outline" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "ED64CE31-8F78-4383-A3BF-2AFBE5485E38", - "baseIconId": "C4C17ED6-0DB6-4A13-9C6F-0C3146B0CD80", - "name": "pail-plus", - "codepoint": "F1436", - "aliases": [ - "bucket-plus" - ], - "styles": [ - "plus" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "63B16204-CDD1-425F-8DDD-7DD80F2639D9", - "baseIconId": "C4C17ED6-0DB6-4A13-9C6F-0C3146B0CD80", - "name": "pail-plus-outline", - "codepoint": "F143B", - "aliases": [ - "bucket-plus-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "FC5A2451-43C6-40D1-905D-7E473ACA134C", - "baseIconId": "C4C17ED6-0DB6-4A13-9C6F-0C3146B0CD80", - "name": "pail-remove", - "codepoint": "F1438", - "aliases": [ - "bucket-remove" - ], - "styles": [ - "remove" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "48413062-A335-454F-9349-04CD2B7BC628", - "baseIconId": "C4C17ED6-0DB6-4A13-9C6F-0C3146B0CD80", - "name": "pail-remove-outline", - "codepoint": "F143D", - "aliases": [ - "bucket-remove-outline" - ], - "styles": [ - "outline", - "remove" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "954CCE2B-7FEE-4F9C-9923-4E1D567607C3", - "baseIconId": "954CCE2B-7FEE-4F9C-9923-4E1D567607C3", - "name": "palette", - "codepoint": "F03D8", - "aliases": [ - "color-lens", - "colour-lens", - "paint", - "art", - "color" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Color", - "Drawing \/ Art" - ], - "author": "Google" - }, - { - "id": "3617B5EE-9A4A-4C3C-9C9A-8C69C7569EB4", - "baseIconId": "3617B5EE-9A4A-4C3C-9C9A-8C69C7569EB4", - "name": "palette-advanced", - "codepoint": "F03D9", - "aliases": [ - "paint" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Color", - "Drawing \/ Art" - ], - "author": "Austin Andrews" - }, - { - "id": "6C41ED7D-CA9F-45BA-B94D-F20ABB54519B", - "baseIconId": "954CCE2B-7FEE-4F9C-9923-4E1D567607C3", - "name": "palette-outline", - "codepoint": "F0E0C", - "aliases": [ - "paint-outline" - ], - "styles": [ - "outline" - ], - "version": "3.5.95", - "deprecated": false, - "tags": [ - "Drawing \/ Art", - "Color", - "Geographic Information System" - ], - "author": "Google" - }, - { - "id": "158F8306-CE63-45E8-94E5-58484FF5F050", - "baseIconId": "158F8306-CE63-45E8-94E5-58484FF5F050", - "name": "palette-swatch", - "codepoint": "F08B5", - "aliases": [ - "style", - "paint", - "material" - ], - "styles": [], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Drawing \/ Art", - "Color" - ], - "author": "Google" - }, - { - "id": "3D2690B4-4A3D-4B7C-B384-1C0AB180DD0B", - "baseIconId": "158F8306-CE63-45E8-94E5-58484FF5F050", - "name": "palette-swatch-outline", - "codepoint": "F135C", - "aliases": [ - "style-outline", - "paint-outline" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Drawing \/ Art", - "Color" - ], - "author": "Google" - }, - { - "id": "C4B3CA22-1868-4216-807B-ED852BAA3C21", - "baseIconId": "158F8306-CE63-45E8-94E5-58484FF5F050", - "name": "palette-swatch-variant", - "codepoint": "F195A", - "aliases": [ - "style", - "paint", - "material" - ], - "styles": [ - "variant" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Drawing \/ Art", - "Color" - ], - "author": "Erdem YILMAZ" - }, - { - "id": "787F9145-5272-4028-94C8-46B0623FE039", - "baseIconId": "787F9145-5272-4028-94C8-46B0623FE039", - "name": "palm-tree", - "codepoint": "F1055", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Nature" - ], - "author": "Michael Irigoyen" - }, - { - "id": "FEDAC98D-95D1-44FE-81DE-2BAACA196408", - "baseIconId": "FEDAC98D-95D1-44FE-81DE-2BAACA196408", - "name": "pan", - "codepoint": "F0BB4", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "F5AFD529-AD6F-4A1B-AB69-E3E10FD0E654", - "baseIconId": "FEDAC98D-95D1-44FE-81DE-2BAACA196408", - "name": "pan-bottom-left", - "codepoint": "F0BB5", - "aliases": [ - "pan-down-left" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "BAAF741C-C242-49A8-8A16-DA1EC373385D", - "baseIconId": "FEDAC98D-95D1-44FE-81DE-2BAACA196408", - "name": "pan-bottom-right", - "codepoint": "F0BB6", - "aliases": [ - "pan-down-right" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "408FB11D-9531-4C8F-A592-48CD10A1AF4B", - "baseIconId": "FEDAC98D-95D1-44FE-81DE-2BAACA196408", - "name": "pan-down", - "codepoint": "F0BB7", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "9881BB2E-CCAF-4698-83B5-452ED749C314", - "baseIconId": "FEDAC98D-95D1-44FE-81DE-2BAACA196408", - "name": "pan-horizontal", - "codepoint": "F0BB8", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "59CEB0A5-75F5-4D3D-AF4D-2F0D8AEAEB0C", - "baseIconId": "FEDAC98D-95D1-44FE-81DE-2BAACA196408", - "name": "pan-left", - "codepoint": "F0BB9", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "D563253F-1895-4DB7-95E9-A0C4C5562D12", - "baseIconId": "FEDAC98D-95D1-44FE-81DE-2BAACA196408", - "name": "pan-right", - "codepoint": "F0BBA", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "C497D005-A9A3-4B1A-B440-CE574E81AF2F", - "baseIconId": "FEDAC98D-95D1-44FE-81DE-2BAACA196408", - "name": "pan-top-left", - "codepoint": "F0BBB", - "aliases": [ - "pan-up-left" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "E9886955-5257-4E95-A017-C903F5F850C2", - "baseIconId": "FEDAC98D-95D1-44FE-81DE-2BAACA196408", - "name": "pan-top-right", - "codepoint": "F0BBC", - "aliases": [ - "pan-up-right" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "989DC863-1210-44A7-88A3-B414994983F6", - "baseIconId": "FEDAC98D-95D1-44FE-81DE-2BAACA196408", - "name": "pan-up", - "codepoint": "F0BBD", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "A27AD714-E988-4970-B995-8EEADCDA5D55", - "baseIconId": "FEDAC98D-95D1-44FE-81DE-2BAACA196408", - "name": "pan-vertical", - "codepoint": "F0BBE", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "A797FE46-DF68-4179-85BE-172BD79F0667", - "baseIconId": "A797FE46-DF68-4179-85BE-172BD79F0667", - "name": "panda", - "codepoint": "F03DA", - "aliases": [ - "emoji-panda", - "emoticon-panda" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Austin Andrews" - }, - { - "id": "24BCD03F-8D84-4154-95F5-086230CE3BBA", - "baseIconId": "24BCD03F-8D84-4154-95F5-086230CE3BBA", - "name": "pandora", - "codepoint": "F03DB", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "4054A322-F348-49BA-B85F-B978EFC1BDAD", - "baseIconId": "4054A322-F348-49BA-B85F-B978EFC1BDAD", - "name": "panorama", - "codepoint": "F03DC", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "6D0BD840-6985-440A-9C55-782B5C3F4F9C", - "baseIconId": "4054A322-F348-49BA-B85F-B978EFC1BDAD", - "name": "panorama-fisheye", - "codepoint": "F03DD", - "aliases": [ - "panorama-fish-eye" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "FCE8C530-5626-4B4A-9260-ECD7C1E93956", - "baseIconId": "4054A322-F348-49BA-B85F-B978EFC1BDAD", - "name": "panorama-horizontal", - "codepoint": "F1928", - "aliases": [], - "styles": [], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "42B1DAD8-8731-49DB-B415-9BFD78A8DDEA", - "baseIconId": "4054A322-F348-49BA-B85F-B978EFC1BDAD", - "name": "panorama-horizontal-outline", - "codepoint": "F03DE", - "aliases": [], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "E676EFD3-32EC-4F24-9A9A-65EF5518AA01", - "baseIconId": "4054A322-F348-49BA-B85F-B978EFC1BDAD", - "name": "panorama-outline", - "codepoint": "F198C", - "aliases": [], - "styles": [ - "outline" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "B0B17758-277D-4AA6-8567-E87451EF1139", - "baseIconId": "4054A322-F348-49BA-B85F-B978EFC1BDAD", - "name": "panorama-sphere", - "codepoint": "F198D", - "aliases": [ - "panorama-360" - ], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "F364E6E7-1129-4076-B915-0DA77003C891", - "baseIconId": "4054A322-F348-49BA-B85F-B978EFC1BDAD", - "name": "panorama-sphere-outline", - "codepoint": "F198E", - "aliases": [ - "panorama-360-outline" - ], - "styles": [ - "outline" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "06830F7E-C93D-445A-AED5-7832A9E885C5", - "baseIconId": "4054A322-F348-49BA-B85F-B978EFC1BDAD", - "name": "panorama-variant", - "codepoint": "F198F", - "aliases": [ - "panorama-vr", - "image-vr", - "picture-vr", - "picture-360", - "image-360" - ], - "styles": [ - "variant" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "BE67BFD1-97AD-4EC3-B3E7-19BA48708172", - "baseIconId": "4054A322-F348-49BA-B85F-B978EFC1BDAD", - "name": "panorama-variant-outline", - "codepoint": "F1990", - "aliases": [ - "panorama-vr-outline", - "image-vr-outline", - "picture-vr-outline", - "picture-360-outline", - "image-360-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "DB54A44E-20B6-435E-9CFE-D53966AE0855", - "baseIconId": "4054A322-F348-49BA-B85F-B978EFC1BDAD", - "name": "panorama-vertical", - "codepoint": "F1929", - "aliases": [], - "styles": [], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "7EC1E0AF-1AC5-4CC8-BDCC-5E2D3BF2AC70", - "baseIconId": "4054A322-F348-49BA-B85F-B978EFC1BDAD", - "name": "panorama-vertical-outline", - "codepoint": "F03DF", - "aliases": [], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "64F3926D-42E9-4819-92A2-C524031CD9BA", - "baseIconId": "4054A322-F348-49BA-B85F-B978EFC1BDAD", - "name": "panorama-wide-angle", - "codepoint": "F195F", - "aliases": [], - "styles": [], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "12D83006-87DE-49CE-B8C3-7D6492934CDA", - "baseIconId": "4054A322-F348-49BA-B85F-B978EFC1BDAD", - "name": "panorama-wide-angle-outline", - "codepoint": "F03E0", - "aliases": [], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "4E8B4DBC-83EE-4CBD-BEDD-5866DE057324", - "baseIconId": "4E8B4DBC-83EE-4CBD-BEDD-5866DE057324", - "name": "paper-cut-vertical", - "codepoint": "F03E1", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "1666E605-F46A-4AD2-8345-A599811B7D45", - "baseIconId": "1666E605-F46A-4AD2-8345-A599811B7D45", - "name": "paper-roll", - "codepoint": "F1157", - "aliases": [ - "lavatory-roll", - "bathroom-tissue", - "toilet-paper", - "kitchen-roll", - "paper-towels", - "receipt-roll" - ], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Printer" - ], - "author": "Simran" - }, - { - "id": "2A7CBB78-4672-450C-8578-48AFB13243CD", - "baseIconId": "1666E605-F46A-4AD2-8345-A599811B7D45", - "name": "paper-roll-outline", - "codepoint": "F1158", - "aliases": [ - "lavatory-roll-outline", - "bathroom-tissue-outline", - "kitchen-roll-outline", - "paper-towels-outline", - "toilet-paper-outline", - "receipt-roll-outline" - ], - "styles": [ - "outline" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Printer" - ], - "author": "Simran" - }, - { - "id": "27BCEC7F-ABF8-4506-B339-EE2425E1BAF9", - "baseIconId": "27BCEC7F-ABF8-4506-B339-EE2425E1BAF9", - "name": "paperclip", - "codepoint": "F03E2", - "aliases": [ - "attachment-vertical", - "attach-file" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "8B0FAA58-E315-4474-B9B0-E7E10CBC9542", - "baseIconId": "27BCEC7F-ABF8-4506-B339-EE2425E1BAF9", - "name": "paperclip-check", - "codepoint": "F1AC6", - "aliases": [ - "paperclip-tick", - "attachment-check", - "attachment-tick" - ], - "styles": [ - "check" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "3A005420-791A-45DA-A903-EED63E35C1C6", - "baseIconId": "27BCEC7F-ABF8-4506-B339-EE2425E1BAF9", - "name": "paperclip-lock", - "codepoint": "F19DA", - "aliases": [ - "attachment-lock" - ], - "styles": [ - "lock" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Simran" - }, - { - "id": "9D2D90D0-260E-4465-817D-875B741B62F3", - "baseIconId": "27BCEC7F-ABF8-4506-B339-EE2425E1BAF9", - "name": "paperclip-minus", - "codepoint": "F1AC7", - "aliases": [ - "paperclip-subtract", - "attachment-minus", - "attachment-subtract" - ], - "styles": [ - "minus" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "1DA3EF2F-D91E-40AD-B325-FF4E42BF76DD", - "baseIconId": "27BCEC7F-ABF8-4506-B339-EE2425E1BAF9", - "name": "paperclip-off", - "codepoint": "F1AC8", - "aliases": [ - "attachment-off" - ], - "styles": [ - "off" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "3AC39192-3F6B-4BCB-9F13-110C362619FA", - "baseIconId": "27BCEC7F-ABF8-4506-B339-EE2425E1BAF9", - "name": "paperclip-plus", - "codepoint": "F1AC9", - "aliases": [ - "paperclip-add", - "attachment-plus", - "attachment-add" - ], - "styles": [ - "plus" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "BF4A933D-776E-4533-B9ED-88F9795E1598", - "baseIconId": "27BCEC7F-ABF8-4506-B339-EE2425E1BAF9", - "name": "paperclip-remove", - "codepoint": "F1ACA", - "aliases": [ - "attachment-remove" - ], - "styles": [ - "remove" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "47070C5A-B989-49C6-A635-3B764DC112CB", - "baseIconId": "47070C5A-B989-49C6-A635-3B764DC112CB", - "name": "parachute", - "codepoint": "F0CB4", - "aliases": [], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Transportation + Flying" - ], - "author": "Michael Irigoyen" - }, - { - "id": "739633DB-1136-4AD6-8E4E-80077562E9F1", - "baseIconId": "47070C5A-B989-49C6-A635-3B764DC112CB", - "name": "parachute-outline", - "codepoint": "F0CB5", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Transportation + Flying" - ], - "author": "Michael Irigoyen" - }, - { - "id": "24CD918E-9458-4D8D-A00C-746F8AB5D17E", - "baseIconId": "24CD918E-9458-4D8D-A00C-746F8AB5D17E", - "name": "paragliding", - "codepoint": "F1745", - "aliases": [ - "parasail", - "paraglide" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Google" - }, - { - "id": "07C8266A-A135-443C-B2DD-4148CD718C51", - "baseIconId": "07C8266A-A135-443C-B2DD-4148CD718C51", - "name": "parking", - "codepoint": "F03E3", - "aliases": [ - "car-park", - "local-parking" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Places" - ], - "author": "Google" - }, - { - "id": "AED614C4-13E2-4009-9D9F-950258DB5124", - "baseIconId": "AED614C4-13E2-4009-9D9F-950258DB5124", - "name": "party-popper", - "codepoint": "F1056", - "aliases": [ - "celebration" - ], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Holiday" - ], - "author": "Google" - }, - { - "id": "31BE5768-FCE0-46D5-A20B-E8CBFED471E0", - "baseIconId": "31BE5768-FCE0-46D5-A20B-E8CBFED471E0", - "name": "passport", - "codepoint": "F07E3", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "86A974C4-6E5A-48F6-A3B9-35B3DCD1DE7A", - "baseIconId": "31BE5768-FCE0-46D5-A20B-E8CBFED471E0", - "name": "passport-biometric", - "codepoint": "F0DE1", - "aliases": [ - "passport-electronic" - ], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "8288CA76-67E5-4EEA-82CD-DE0E0842F34D", - "baseIconId": "8288CA76-67E5-4EEA-82CD-DE0E0842F34D", - "name": "pasta", - "codepoint": "F1160", - "aliases": [ - "food-italian", - "spaghetti" - ], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Google" - }, - { - "id": "03B35003-B782-475E-AE4C-13021109AD97", - "baseIconId": "03B35003-B782-475E-AE4C-13021109AD97", - "name": "patio-heater", - "codepoint": "F0F80", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9B72D845-E704-489C-A447-D02306AF5228", - "baseIconId": "9B72D845-E704-489C-A447-D02306AF5228", - "name": "patreon", - "codepoint": "F0882", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "2A1F0831-13CA-4419-BBD7-1F1FAF62A32B", - "baseIconId": "2A1F0831-13CA-4419-BBD7-1F1FAF62A32B", - "name": "pause", - "codepoint": "F03E4", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "6B7FCAFD-C14A-49FC-A959-A2B6C7C2C5BC", - "baseIconId": "2A1F0831-13CA-4419-BBD7-1F1FAF62A32B", - "name": "pause-box", - "codepoint": "F00BC", - "aliases": [], - "styles": [ - "box" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio", - "Music" - ], - "author": "Michael Irigoyen" - }, - { - "id": "8F48F520-011A-4B09-853E-33E1C7D5714A", - "baseIconId": "2A1F0831-13CA-4419-BBD7-1F1FAF62A32B", - "name": "pause-box-outline", - "codepoint": "F1B7A", - "aliases": [], - "styles": [ - "box", - "outline" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Audio", - "Music" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7AA13CBC-D472-4462-8263-88DA2BDCD6BB", - "baseIconId": "2A1F0831-13CA-4419-BBD7-1F1FAF62A32B", - "name": "pause-circle", - "codepoint": "F03E5", - "aliases": [ - "pause-circle-filled" - ], - "styles": [ - "circle" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "6F271406-B475-45D0-9B37-EF3DBE7D0DAA", - "baseIconId": "2A1F0831-13CA-4419-BBD7-1F1FAF62A32B", - "name": "pause-circle-outline", - "codepoint": "F03E6", - "aliases": [], - "styles": [ - "circle", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "D0A95719-9B9F-4E86-A6E5-8013C1A6D4A7", - "baseIconId": "2A1F0831-13CA-4419-BBD7-1F1FAF62A32B", - "name": "pause-octagon", - "codepoint": "F03E7", - "aliases": [ - "stop-pause" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "95AA0ED2-4221-4123-B3BF-9FACF3702CA4", - "baseIconId": "2A1F0831-13CA-4419-BBD7-1F1FAF62A32B", - "name": "pause-octagon-outline", - "codepoint": "F03E8", - "aliases": [ - "stop-pause-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "802EBFA2-6D86-4E93-BEBF-7F69F6C98C01", - "baseIconId": "802EBFA2-6D86-4E93-BEBF-7F69F6C98C01", - "name": "paw", - "codepoint": "F03E9", - "aliases": [ - "pets" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Animal", - "Nature" - ], - "author": "Simran" - }, - { - "id": "039D7C7E-AB09-4364-B08D-1FC120442AFE", - "baseIconId": "802EBFA2-6D86-4E93-BEBF-7F69F6C98C01", - "name": "paw-off", - "codepoint": "F0657", - "aliases": [], - "styles": [ - "off" - ], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Simran" - }, - { - "id": "EADDFE7F-B2A0-40AD-B060-555080D02BCB", - "baseIconId": "802EBFA2-6D86-4E93-BEBF-7F69F6C98C01", - "name": "paw-off-outline", - "codepoint": "F1676", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Colton Wiscombe" - }, - { - "id": "C0FB173F-3D34-4DC2-9D54-C82BEE350FFB", - "baseIconId": "802EBFA2-6D86-4E93-BEBF-7F69F6C98C01", - "name": "paw-outline", - "codepoint": "F1675", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Colton Wiscombe" - }, - { - "id": "7E574E80-7DB1-4722-9BC4-60F53509AACD", - "baseIconId": "7E574E80-7DB1-4722-9BC4-60F53509AACD", - "name": "peace", - "codepoint": "F0884", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "87A5BD64-6069-4C5B-8D50-69D9049B80BC", - "baseIconId": "87A5BD64-6069-4C5B-8D50-69D9049B80BC", - "name": "peanut", - "codepoint": "F0FFC", - "aliases": [ - "allergen", - "food-allergy" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Agriculture" - ], - "author": "Michael Richins" - }, - { - "id": "D8BD17A2-5CE7-4219-8363-E87D80C2E7DF", - "baseIconId": "87A5BD64-6069-4C5B-8D50-69D9049B80BC", - "name": "peanut-off", - "codepoint": "F0FFD", - "aliases": [ - "allergen-off", - "food-allergy-off" - ], - "styles": [ - "off" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Agriculture" - ], - "author": "Michael Richins" - }, - { - "id": "A3B86034-EAD9-4DE1-AF76-A11F21285DF9", - "baseIconId": "87A5BD64-6069-4C5B-8D50-69D9049B80BC", - "name": "peanut-off-outline", - "codepoint": "F0FFF", - "aliases": [ - "allergen-off-outline", - "food-allergy-off-outline" - ], - "styles": [ - "off", - "outline" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Agriculture" - ], - "author": "Michael Richins" - }, - { - "id": "C3883026-99A7-48ED-898E-37AC117A6C4F", - "baseIconId": "87A5BD64-6069-4C5B-8D50-69D9049B80BC", - "name": "peanut-outline", - "codepoint": "F0FFE", - "aliases": [ - "allergen-outline", - "food-allergy-outline" - ], - "styles": [ - "outline" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Agriculture" - ], - "author": "Michael Richins" - }, - { - "id": "054B1710-EE28-4AA8-9D7E-705B5703E33E", - "baseIconId": "054B1710-EE28-4AA8-9D7E-705B5703E33E", - "name": "pen", - "codepoint": "F03EA", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Drawing \/ Art" - ], - "author": "Austin Andrews" - }, - { - "id": "BDCCD15F-231E-4449-AADF-E2D21286396A", - "baseIconId": "054B1710-EE28-4AA8-9D7E-705B5703E33E", - "name": "pen-lock", - "codepoint": "F0DE2", - "aliases": [], - "styles": [ - "lock" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Michael Irigoyen" - }, - { - "id": "19D98B8F-B4D1-49B2-A870-20F7E72E4133", - "baseIconId": "054B1710-EE28-4AA8-9D7E-705B5703E33E", - "name": "pen-minus", - "codepoint": "F0DE3", - "aliases": [], - "styles": [ - "minus" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "9D2F36EB-BE54-482B-9EBD-083699503E16", - "baseIconId": "054B1710-EE28-4AA8-9D7E-705B5703E33E", - "name": "pen-off", - "codepoint": "F0DE4", - "aliases": [], - "styles": [ - "off" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "299ED912-E240-41D8-AA28-5FB0025BC782", - "baseIconId": "054B1710-EE28-4AA8-9D7E-705B5703E33E", - "name": "pen-plus", - "codepoint": "F0DE5", - "aliases": [ - "pen-add" - ], - "styles": [ - "plus" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "71997C15-3E04-4212-B08D-3F03AA110261", - "baseIconId": "054B1710-EE28-4AA8-9D7E-705B5703E33E", - "name": "pen-remove", - "codepoint": "F0DE6", - "aliases": [], - "styles": [ - "remove" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "BB27CE6C-769A-4C0C-A53C-F1B10B9C4423", - "baseIconId": "BB27CE6C-769A-4C0C-A53C-F1B10B9C4423", - "name": "pencil", - "codepoint": "F03EB", - "aliases": [ - "edit", - "create", - "mode-edit" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Drawing \/ Art", - "Edit \/ Modify" - ], - "author": "Google" - }, - { - "id": "56CC04F4-4E58-434D-962A-C824F5959D20", - "baseIconId": "BB27CE6C-769A-4C0C-A53C-F1B10B9C4423", - "name": "pencil-box", - "codepoint": "F03EC", - "aliases": [ - "edit-box" - ], - "styles": [ - "box" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Drawing \/ Art" - ], - "author": "Austin Andrews" - }, - { - "id": "3E7031C9-56EE-458C-BE57-B1A737E09998", - "baseIconId": "BB27CE6C-769A-4C0C-A53C-F1B10B9C4423", - "name": "pencil-box-multiple", - "codepoint": "F1144", - "aliases": [ - "library-edit" - ], - "styles": [ - "box", - "multiple" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Michael Irigoyen" - }, - { - "id": "071E2A53-1647-4747-98BE-A7787AF39C15", - "baseIconId": "BB27CE6C-769A-4C0C-A53C-F1B10B9C4423", - "name": "pencil-box-multiple-outline", - "codepoint": "F1145", - "aliases": [ - "library-edit-outline" - ], - "styles": [ - "box", - "multiple", - "outline" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Michael Irigoyen" - }, - { - "id": "48A9B269-08B8-4DCB-85F1-68F2334DC004", - "baseIconId": "BB27CE6C-769A-4C0C-A53C-F1B10B9C4423", - "name": "pencil-box-outline", - "codepoint": "F03ED", - "aliases": [ - "edit-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Drawing \/ Art" - ], - "author": "Austin Andrews" - }, - { - "id": "F5C5B903-7160-4B46-AC15-28C965289469", - "baseIconId": "BB27CE6C-769A-4C0C-A53C-F1B10B9C4423", - "name": "pencil-circle", - "codepoint": "F06FF", - "aliases": [ - "edit-circle" - ], - "styles": [ - "circle" - ], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Drawing \/ Art" - ], - "author": "GreenTurtwig" - }, - { - "id": "5D68DE43-969F-40BE-8A2D-F5C25F2B0853", - "baseIconId": "BB27CE6C-769A-4C0C-A53C-F1B10B9C4423", - "name": "pencil-circle-outline", - "codepoint": "F0776", - "aliases": [ - "edit-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Drawing \/ Art" - ], - "author": "Austin Andrews" - }, - { - "id": "33BBFD25-1E97-49AA-BA9A-0B42369DF4A6", - "baseIconId": "BB27CE6C-769A-4C0C-A53C-F1B10B9C4423", - "name": "pencil-lock", - "codepoint": "F03EE", - "aliases": [], - "styles": [ - "lock" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Simran" - }, - { - "id": "0EDDA4FC-DC06-4621-AE19-5E0CF693997B", - "baseIconId": "BB27CE6C-769A-4C0C-A53C-F1B10B9C4423", - "name": "pencil-lock-outline", - "codepoint": "F0DE7", - "aliases": [], - "styles": [ - "lock", - "outline" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Michael Irigoyen" - }, - { - "id": "07FDD339-D255-4ED3-BDEB-00B57F521A0E", - "baseIconId": "BB27CE6C-769A-4C0C-A53C-F1B10B9C4423", - "name": "pencil-minus", - "codepoint": "F0DE8", - "aliases": [], - "styles": [ - "minus" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "030723AA-4B87-4648-8A6A-CECB909A3140", - "baseIconId": "BB27CE6C-769A-4C0C-A53C-F1B10B9C4423", - "name": "pencil-minus-outline", - "codepoint": "F0DE9", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "AEB0F9CD-B3FF-4F64-9D6E-4916D5C720C3", - "baseIconId": "BB27CE6C-769A-4C0C-A53C-F1B10B9C4423", - "name": "pencil-off", - "codepoint": "F03EF", - "aliases": [ - "edit-off" - ], - "styles": [ - "off" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "5B4952DA-7867-403A-AC98-12CFA78B52C0", - "baseIconId": "BB27CE6C-769A-4C0C-A53C-F1B10B9C4423", - "name": "pencil-off-outline", - "codepoint": "F0DEA", - "aliases": [ - "edit-off-outline" - ], - "styles": [ - "off", - "outline" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "A17D67B7-C5FF-45E2-91AE-975584067388", - "baseIconId": "BB27CE6C-769A-4C0C-A53C-F1B10B9C4423", - "name": "pencil-outline", - "codepoint": "F0CB6", - "aliases": [ - "edit-outline", - "create-outline", - "mode-edit-outline" - ], - "styles": [ - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Drawing \/ Art", - "Edit \/ Modify" - ], - "author": "Google" - }, - { - "id": "F6194D2A-B09D-416D-98B9-C80FDA45D831", - "baseIconId": "BB27CE6C-769A-4C0C-A53C-F1B10B9C4423", - "name": "pencil-plus", - "codepoint": "F0DEB", - "aliases": [ - "pencil-add" - ], - "styles": [ - "plus" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "831CF37A-6530-48BB-8CB7-B3FF50D61860", - "baseIconId": "BB27CE6C-769A-4C0C-A53C-F1B10B9C4423", - "name": "pencil-plus-outline", - "codepoint": "F0DEC", - "aliases": [ - "pencil-add-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "B536A740-BC15-4F6B-A923-28450B1ED3BD", - "baseIconId": "BB27CE6C-769A-4C0C-A53C-F1B10B9C4423", - "name": "pencil-remove", - "codepoint": "F0DED", - "aliases": [], - "styles": [ - "remove" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "EEEC97B0-5E06-4D77-9934-6AC66B8F8538", - "baseIconId": "BB27CE6C-769A-4C0C-A53C-F1B10B9C4423", - "name": "pencil-remove-outline", - "codepoint": "F0DEE", - "aliases": [], - "styles": [ - "outline", - "remove" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "B8F0B132-5AD7-4E4B-ADDB-311FDBDD35CC", - "baseIconId": "B8F0B132-5AD7-4E4B-ADDB-311FDBDD35CC", - "name": "pencil-ruler", - "codepoint": "F1353", - "aliases": [ - "design" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Drawing \/ Art" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1D79B079-87DB-4956-A68D-DE69EE3C371E", - "baseIconId": "B8F0B132-5AD7-4E4B-ADDB-311FDBDD35CC", - "name": "pencil-ruler-outline", - "codepoint": "F1C11", - "aliases": [], - "styles": [ - "outline" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Drawing \/ Art" - ], - "author": "frankgrinaert" - }, - { - "id": "B2649A8A-D1EC-43AF-9C99-F233AF709155", - "baseIconId": "B2649A8A-D1EC-43AF-9C99-F233AF709155", - "name": "penguin", - "codepoint": "F0EC0", - "aliases": [ - "emoji-penguin", - "emoticon-penguin", - "linux" - ], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Augustin Ursu" - }, - { - "id": "A1E0EA60-79AF-42FD-966D-485276671F9C", - "baseIconId": "A1E0EA60-79AF-42FD-966D-485276671F9C", - "name": "pentagon", - "codepoint": "F0701", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7251D20A-5A23-456D-9A68-0107EF2BF01B", - "baseIconId": "A1E0EA60-79AF-42FD-966D-485276671F9C", - "name": "pentagon-outline", - "codepoint": "F0700", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Michael Irigoyen" - }, - { - "id": "EA9C6D1A-79AE-4114-9AF6-59A2A39FC8DF", - "baseIconId": "EA9C6D1A-79AE-4114-9AF6-59A2A39FC8DF", - "name": "pentagram", - "codepoint": "F1667", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "3AB307BF-41D9-4CA4-9D44-58C82304C7BB", - "baseIconId": "3AB307BF-41D9-4CA4-9D44-58C82304C7BB", - "name": "percent", - "codepoint": "F03F0", - "aliases": [ - "discount", - "sale" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math", - "Shopping" - ], - "author": "Simran" - }, - { - "id": "DD3C1F53-8265-4133-8C96-BC9EFF0A30D5", - "baseIconId": "3AB307BF-41D9-4CA4-9D44-58C82304C7BB", - "name": "percent-box", - "codepoint": "F1A02", - "aliases": [ - "discount-box", - "sale-box" - ], - "styles": [ - "box" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Math", - "Shopping" - ], - "author": "Colton Wiscombe" - }, - { - "id": "4B5165F6-736B-44F7-961C-420A1F2EEFE7", - "baseIconId": "3AB307BF-41D9-4CA4-9D44-58C82304C7BB", - "name": "percent-box-outline", - "codepoint": "F1A03", - "aliases": [ - "discount-box-outline", - "sale-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Math", - "Shopping" - ], - "author": "Colton Wiscombe" - }, - { - "id": "CA4A3F7A-B20E-4937-9FD6-207B1F974DE8", - "baseIconId": "3AB307BF-41D9-4CA4-9D44-58C82304C7BB", - "name": "percent-circle", - "codepoint": "F1A04", - "aliases": [ - "discount-circle", - "sale-circle" - ], - "styles": [ - "circle" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Math", - "Shopping" - ], - "author": "Colton Wiscombe" - }, - { - "id": "30332F97-18B5-4866-A31F-912C262ACDBE", - "baseIconId": "3AB307BF-41D9-4CA4-9D44-58C82304C7BB", - "name": "percent-circle-outline", - "codepoint": "F1A05", - "aliases": [ - "discount-circle-outline", - "sale-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Math", - "Shopping" - ], - "author": "Colton Wiscombe" - }, - { - "id": "0625AC7C-AD52-4221-8F53-A9AE6DAA57BD", - "baseIconId": "3AB307BF-41D9-4CA4-9D44-58C82304C7BB", - "name": "percent-outline", - "codepoint": "F1278", - "aliases": [ - "discount-outline", - "sale-outline" - ], - "styles": [ - "outline" - ], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Math", - "Shopping" - ], - "author": "MC\u7684wither\u83cc" - }, - { - "id": "1DB2BD6D-830D-4A4F-8E04-94D14901895A", - "baseIconId": "1DB2BD6D-830D-4A4F-8E04-94D14901895A", - "name": "periodic-table", - "codepoint": "F08B6", - "aliases": [], - "styles": [], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Simran" - }, - { - "id": "408FA22D-2054-4579-A991-DF061CDE5A00", - "baseIconId": "6F54CAE0-D2B7-4E00-83AA-0B98A7601CF6", - "name": "perspective-less", - "codepoint": "F0D23", - "aliases": [ - "perspective-decrease" - ], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Irigoyen" - }, - { - "id": "6F54CAE0-D2B7-4E00-83AA-0B98A7601CF6", - "baseIconId": "6F54CAE0-D2B7-4E00-83AA-0B98A7601CF6", - "name": "perspective-more", - "codepoint": "F0D24", - "aliases": [ - "perspective-increase" - ], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Irigoyen" - }, - { - "id": "57738B55-57CB-47EF-9758-32686AA78212", - "baseIconId": "57738B55-57CB-47EF-9758-32686AA78212", - "name": "ph", - "codepoint": "F17C5", - "aliases": [ - "acid", - "base", - "potential-of-hydrogen", - "power-of-hydrogen" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Science", - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone", - "codepoint": "F03F2", - "aliases": [ - "call", - "local-phone", - "telephone" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "B7AE9DEE-6F1D-4CAF-9FD8-C6A6BF5D739D", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-alert", - "codepoint": "F0F1A", - "aliases": [], - "styles": [ - "alert" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Alert \/ Error" - ], - "author": "Patricia Cadenas" - }, - { - "id": "A4D67201-7E48-469A-A424-0D772DBAD344", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-alert-outline", - "codepoint": "F118E", - "aliases": [], - "styles": [ - "alert", - "outline" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "34F52268-8571-4501-93C1-D4BF606BB10E", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-bluetooth", - "codepoint": "F03F3", - "aliases": [ - "phone-bluetooth-speaker", - "telephone-bluetooth" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "64F560E8-6BEE-4CDC-81D4-FE87B76C906C", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-bluetooth-outline", - "codepoint": "F118F", - "aliases": [], - "styles": [ - "outline" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "C97B6119-5EB1-4930-AEFA-7E3E216D3875", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-cancel", - "codepoint": "F10BC", - "aliases": [ - "phone-block" - ], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Patricia Cadenas" - }, - { - "id": "70F0895F-EF78-404A-9CBE-D3FCAD39CE32", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-cancel-outline", - "codepoint": "F1190", - "aliases": [], - "styles": [ - "outline" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7FA6178B-0275-4545-BBCB-F10B77E9603D", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-check", - "codepoint": "F11A9", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Michael Richins" - }, - { - "id": "A91DFA4F-355A-4CB2-9013-F2ADFAA482D4", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-check-outline", - "codepoint": "F11AA", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Michael Richins" - }, - { - "id": "A9ED94F7-0ADB-4CB3-AAF1-35B87D9B7724", - "baseIconId": "A9ED94F7-0ADB-4CB3-AAF1-35B87D9B7724", - "name": "phone-classic", - "codepoint": "F0602", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Simran" - }, - { - "id": "4D938684-537A-4ED1-B227-6859EA3DADAF", - "baseIconId": "A9ED94F7-0ADB-4CB3-AAF1-35B87D9B7724", - "name": "phone-classic-off", - "codepoint": "F1279", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "1B8EA976-32FD-4A71-94FA-EF40FC346FBD", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-clock", - "codepoint": "F19DB", - "aliases": [ - "phone-schedule", - "phone-time" - ], - "styles": [ - "clock" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Date \/ Time" - ], - "author": "Simran" - }, - { - "id": "8F4DBE23-BD53-447F-917D-5343B4DDE8B8", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-dial", - "codepoint": "F1559", - "aliases": [ - "phone-keypad" - ], - "styles": [ - "variant" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "90BA0013-C6A8-47E9-960C-A1DE13516B25", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-dial-outline", - "codepoint": "F155A", - "aliases": [ - "phone-keypad-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "5EF77B27-31D7-47F8-8D72-8BC040CD154E", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-forward", - "codepoint": "F03F4", - "aliases": [ - "phone-forwarded", - "telephone-forward" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "B168C56E-76CD-47CC-AD20-BA116911E3F8", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-forward-outline", - "codepoint": "F1191", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "2018B4C8-A296-4D62-A30A-85F988B206EA", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-hangup", - "codepoint": "F03F5", - "aliases": [ - "call-end", - "telephone-hangup" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "56BBAAEB-F773-4C5D-B122-74F698048F5C", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-hangup-outline", - "codepoint": "F1192", - "aliases": [], - "styles": [ - "outline" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "F9BA7066-C1F8-4B19-9860-37BDCEB6F11C", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-in-talk", - "codepoint": "F03F6", - "aliases": [ - "telephone-in-talk" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "BC90A08C-75FB-4E14-9795-3E408CB021AB", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-in-talk-outline", - "codepoint": "F1182", - "aliases": [ - "telephone-in-talk-outline" - ], - "styles": [ - "outline" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "AA8EEDF8-EB34-46C5-8117-9258E1349197", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-incoming", - "codepoint": "F03F7", - "aliases": [ - "telephone-incoming" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Simran" - }, - { - "id": "2B5D9AA8-0D2D-455F-8585-B8BB5D69717B", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-incoming-outgoing", - "codepoint": "F1B3F", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Michael Irigoyen" - }, - { - "id": "3F877B20-07A5-43A8-BAAE-C89686C4E043", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-incoming-outgoing-outline", - "codepoint": "F1B40", - "aliases": [], - "styles": [ - "outline" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Michael Irigoyen" - }, - { - "id": "75D9229A-5E93-4E44-8259-0808D47D6458", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-incoming-outline", - "codepoint": "F1193", - "aliases": [], - "styles": [ - "outline" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "31349A83-A803-48DF-98C8-55D5E27B81E4", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-lock", - "codepoint": "F03F8", - "aliases": [ - "telephone-locked", - "phone-locked", - "telephone-lock" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Lock" - ], - "author": "Google" - }, - { - "id": "436AB859-CF22-4225-9606-5D2F603C102C", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-lock-outline", - "codepoint": "F1194", - "aliases": [], - "styles": [ - "lock", - "outline" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Lock" - ], - "author": "Google" - }, - { - "id": "B87821E3-2131-4C50-BB88-880BE6D0066F", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-log", - "codepoint": "F03F9", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Simran" - }, - { - "id": "232EE7DD-4AC1-442D-B8E4-B914038E92CB", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-log-outline", - "codepoint": "F1195", - "aliases": [], - "styles": [ - "outline" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Simran" - }, - { - "id": "16930FBE-3379-43F2-BEA6-057D64D18348", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-message", - "codepoint": "F1196", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "CBA2C764-2B58-4914-A5C9-F0DAB190BB4C", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-message-outline", - "codepoint": "F1197", - "aliases": [], - "styles": [ - "outline" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "7F431DF5-245C-4572-962C-CC57177BD8D0", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-minus", - "codepoint": "F0658", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "F27193C4-051E-4142-A17D-9AFD5D15687D", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-minus-outline", - "codepoint": "F1198", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "BF6662C4-D1D0-42E6-8C0A-B071F12975F2", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-missed", - "codepoint": "F03FA", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "1E87E90C-5DCD-4250-81EF-61138B268FBB", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-missed-outline", - "codepoint": "F11A5", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "43E0E6E7-ABC0-4146-A3D3-B2355FA84A5E", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-off", - "codepoint": "F0DEF", - "aliases": [], - "styles": [ - "off" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "GreenTurtwig" - }, - { - "id": "DDD4308D-34BE-4708-B9B6-E547DDAFC6B3", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-off-outline", - "codepoint": "F11A6", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "52280181-270B-4624-97FE-F46126C65BE7", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-outgoing", - "codepoint": "F03FB", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Simran" - }, - { - "id": "AE3A49AE-0125-448B-8EFF-0146293FD123", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-outgoing-outline", - "codepoint": "F1199", - "aliases": [], - "styles": [ - "outline" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Simran" - }, - { - "id": "79252282-1FDF-4DE8-A00F-51CD9D23311D", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-outline", - "codepoint": "F0DF0", - "aliases": [ - "telephone-outline", - "call-outline" - ], - "styles": [ - "outline" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "1ABFB2C1-72CB-46C7-8E8B-B8A24C0285EA", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-paused", - "codepoint": "F03FC", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "3DF9D1F2-FE29-4385-9741-4B7F4B381EE6", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-paused-outline", - "codepoint": "F119A", - "aliases": [], - "styles": [ - "outline" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "E58A5CD8-2D42-4A3A-BCC2-70870B43752C", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-plus", - "codepoint": "F0659", - "aliases": [ - "add-call" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "64C853E0-F60C-435D-9E93-261CCE84B0EB", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-plus-outline", - "codepoint": "F119B", - "aliases": [], - "styles": [ - "outline", - "plus" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "F8A826E0-7094-488F-ADF4-ACC23B865B8E", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-refresh", - "codepoint": "F1993", - "aliases": [ - "phone-redial" - ], - "styles": [ - "refresh" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7B9734DE-AFAE-451B-B4DD-D10361B8148C", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-refresh-outline", - "codepoint": "F1994", - "aliases": [ - "phone-redial-outline" - ], - "styles": [ - "outline", - "refresh" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7AE0A1C1-0FFD-4182-93B5-95F2419AEE8E", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-remove", - "codepoint": "F152F", - "aliases": [], - "styles": [ - "remove" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E829DF09-29F7-4FEF-A934-9C7A2119A628", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-remove-outline", - "codepoint": "F1530", - "aliases": [], - "styles": [ - "outline", - "remove" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B0FC2BB4-6C44-42CA-8F90-52CBCD0F1AD4", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-return", - "codepoint": "F082F", - "aliases": [], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Michael Richins" - }, - { - "id": "7D826B1C-8945-48EA-95F8-30F864E4EA7D", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-return-outline", - "codepoint": "F119C", - "aliases": [], - "styles": [ - "outline" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Michael Richins" - }, - { - "id": "280ECA2D-5D38-4B9E-81FA-58EEB580481A", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-ring", - "codepoint": "F11AB", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "172E080A-5125-42C8-83FB-980DDE41715C", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-ring-outline", - "codepoint": "F11AC", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "48667BD8-2891-45D0-92E9-F4FF292527A4", - "baseIconId": "48667BD8-2891-45D0-92E9-F4FF292527A4", - "name": "phone-rotate-landscape", - "codepoint": "F0885", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Michael Richins" - }, - { - "id": "B839A0B6-9E89-40C2-811F-2253514267C9", - "baseIconId": "B839A0B6-9E89-40C2-811F-2253514267C9", - "name": "phone-rotate-portrait", - "codepoint": "F0886", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Michael Richins" - }, - { - "id": "C9E81E97-C4DA-4612-AC4D-0F81C7986CD8", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-settings", - "codepoint": "F03FD", - "aliases": [ - "settings-phone" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Settings", - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "E4A0F700-DF2C-4A72-AE99-8249ADDBB5FD", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-settings-outline", - "codepoint": "F119D", - "aliases": [], - "styles": [ - "outline", - "settings" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Settings" - ], - "author": "Google" - }, - { - "id": "038DA763-AA65-43B6-B6D6-F6967EE0DC4C", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-sync", - "codepoint": "F1995", - "aliases": [ - "phone-redial" - ], - "styles": [ - "sync" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E463CA1E-92BB-4389-9EE8-BBA74EDA159F", - "baseIconId": "B5BA809F-FCE8-476C-8388-6A9CFFF73015", - "name": "phone-sync-outline", - "codepoint": "F1996", - "aliases": [ - "phone-redial-outline" - ], - "styles": [ - "outline", - "sync" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Michael Irigoyen" - }, - { - "id": "43DAD9DC-C484-452A-9450-1F9C83C6B50E", - "baseIconId": "43DAD9DC-C484-452A-9450-1F9C83C6B50E", - "name": "phone-voip", - "codepoint": "F03FE", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Simran" - }, - { - "id": "0E3F11DA-8458-4A89-BB7B-D3A6972D3E30", - "baseIconId": "0E3F11DA-8458-4A89-BB7B-D3A6972D3E30", - "name": "pi", - "codepoint": "F03FF", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Simran" - }, - { - "id": "7C14B1F3-D836-42D6-AC5F-9FD31ADEBFFD", - "baseIconId": "0E3F11DA-8458-4A89-BB7B-D3A6972D3E30", - "name": "pi-box", - "codepoint": "F0400", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Simran" - }, - { - "id": "C41264FE-89C3-47A7-AE24-36F4B419B4E4", - "baseIconId": "C41264FE-89C3-47A7-AE24-36F4B419B4E4", - "name": "pi-hole", - "codepoint": "F0DF1", - "aliases": [], - "styles": [], - "version": "3.5.94", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "E7651219-1BF9-4D06-9B4A-7599A2E0A407", - "baseIconId": "E7651219-1BF9-4D06-9B4A-7599A2E0A407", - "name": "piano", - "codepoint": "F067D", - "aliases": [], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Google" - }, - { - "id": "F33DB278-2B2B-4731-9FDD-6D053EC2CBAB", - "baseIconId": "E7651219-1BF9-4D06-9B4A-7599A2E0A407", - "name": "piano-off", - "codepoint": "F0698", - "aliases": [], - "styles": [ - "off" - ], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Google" - }, - { - "id": "A4DE211E-02E2-4514-9059-17AEFADA22F7", - "baseIconId": "A4DE211E-02E2-4514-9059-17AEFADA22F7", - "name": "pickaxe", - "codepoint": "F08B7", - "aliases": [], - "styles": [], - "version": "2.2.43", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "D184F762-16C9-4266-A485-8AA14A83A575", - "baseIconId": "D184F762-16C9-4266-A485-8AA14A83A575", - "name": "picture-in-picture-bottom-right", - "codepoint": "F0E57", - "aliases": [], - "styles": [], - "version": "3.6.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "C9D5809D-900A-418A-98C3-2EF4106E620E", - "baseIconId": "D184F762-16C9-4266-A485-8AA14A83A575", - "name": "picture-in-picture-bottom-right-outline", - "codepoint": "F0E58", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "C75700F6-A468-4452-BFFB-FFB4A496563B", - "baseIconId": "C75700F6-A468-4452-BFFB-FFB4A496563B", - "name": "picture-in-picture-top-right", - "codepoint": "F0E59", - "aliases": [], - "styles": [], - "version": "3.6.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "3910AABC-4BEB-4D91-B35D-AAE58A1115C8", - "baseIconId": "C75700F6-A468-4452-BFFB-FFB4A496563B", - "name": "picture-in-picture-top-right-outline", - "codepoint": "F0E5A", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "68AE7D9F-95E4-4AAC-B39F-748FD8677ACF", - "baseIconId": "68AE7D9F-95E4-4AAC-B39F-748FD8677ACF", - "name": "pier", - "codepoint": "F0887", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Places", - "Transportation + Water" - ], - "author": "Michael Irigoyen" - }, - { - "id": "547D5950-A129-411D-92AF-B8477D21230D", - "baseIconId": "68AE7D9F-95E4-4AAC-B39F-748FD8677ACF", - "name": "pier-crane", - "codepoint": "F0888", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Transportation + Water", - "Places" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5E4A3F96-7779-44C8-86EF-948EDBD53C20", - "baseIconId": "5E4A3F96-7779-44C8-86EF-948EDBD53C20", - "name": "pig", - "codepoint": "F0401", - "aliases": [ - "emoji-pig", - "emoticon-pig" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Animal", - "Agriculture" - ], - "author": "Austin Andrews" - }, - { - "id": "A25A5576-C967-444E-989D-750CD275BF27", - "baseIconId": "5E4A3F96-7779-44C8-86EF-948EDBD53C20", - "name": "pig-variant", - "codepoint": "F1006", - "aliases": [], - "styles": [ - "variant" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Animal", - "Agriculture" - ], - "author": "Google" - }, - { - "id": "04A432B2-ABA5-49D7-9650-D6518D5D0A94", - "baseIconId": "5E4A3F96-7779-44C8-86EF-948EDBD53C20", - "name": "pig-variant-outline", - "codepoint": "F1678", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Agriculture", - "Animal" - ], - "author": "Google" - }, - { - "id": "7168E9C8-32AE-4E0F-B3A4-EA05452C63C0", - "baseIconId": "7168E9C8-32AE-4E0F-B3A4-EA05452C63C0", - "name": "piggy-bank", - "codepoint": "F1007", - "aliases": [], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Google" - }, - { - "id": "37D67BA6-70A1-44C4-9C62-0647BBB7CDA2", - "baseIconId": "7168E9C8-32AE-4E0F-B3A4-EA05452C63C0", - "name": "piggy-bank-outline", - "codepoint": "F1679", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "Google" - }, - { - "id": "6487E4ED-C501-416C-9DCE-1B7C1F676050", - "baseIconId": "6487E4ED-C501-416C-9DCE-1B7C1F676050", - "name": "pill", - "codepoint": "F0402", - "aliases": [ - "medicine", - "capsule", - "drug", - "pharmaceutical" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Austin Andrews" - }, - { - "id": "F4398329-8140-4053-A17D-D96501E7C467", - "baseIconId": "6487E4ED-C501-416C-9DCE-1B7C1F676050", - "name": "pill-multiple", - "codepoint": "F1B4C", - "aliases": [ - "medicine", - "medication", - "drugs" - ], - "styles": [ - "multiple" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Hans B\u00f6hm" - }, - { - "id": "70E290E6-75B8-4976-8206-C066C02C5344", - "baseIconId": "6487E4ED-C501-416C-9DCE-1B7C1F676050", - "name": "pill-off", - "codepoint": "F1A5C", - "aliases": [ - "medicine-off", - "capsule-off", - "drug-off", - "pharmaceutical-off" - ], - "styles": [ - "off" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Contributors" - }, - { - "id": "AD451D24-BA4B-466E-8146-D3FBBDA6E275", - "baseIconId": "AD451D24-BA4B-466E-8146-D3FBBDA6E275", - "name": "pillar", - "codepoint": "F0702", - "aliases": [ - "historic", - "column" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "B1337135-0E57-465F-8C0C-E658C9981A19", - "baseIconId": "B1337135-0E57-465F-8C0C-E658C9981A19", - "name": "pin", - "codepoint": "F0403", - "aliases": [ - "keep" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "8C59FE68-D89C-4A86-8E01-5C8109D1B028", - "baseIconId": "B1337135-0E57-465F-8C0C-E658C9981A19", - "name": "pin-off", - "codepoint": "F0404", - "aliases": [ - "keep-off" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "0ED785A3-7387-4989-BF3A-11F2F53C81B5", - "baseIconId": "B1337135-0E57-465F-8C0C-E658C9981A19", - "name": "pin-off-outline", - "codepoint": "F0930", - "aliases": [ - "keep-off-outline" - ], - "styles": [], - "version": "2.3.54", - "deprecated": false, - "tags": [], - "author": "At Abbey's side" - }, - { - "id": "BF736212-EE8D-49D0-8C8B-63A463488E88", - "baseIconId": "B1337135-0E57-465F-8C0C-E658C9981A19", - "name": "pin-outline", - "codepoint": "F0931", - "aliases": [ - "keep-outline" - ], - "styles": [], - "version": "2.3.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "F053196C-66BC-4D0D-B75F-24773CA618E5", - "baseIconId": "F053196C-66BC-4D0D-B75F-24773CA618E5", - "name": "pine-tree", - "codepoint": "F0405", - "aliases": [ - "forest", - "plant" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Holiday", - "Nature", - "Places", - "Agriculture" - ], - "author": "Austin Andrews" - }, - { - "id": "A8F37CBB-10AA-42DE-9CD6-BDCE10C2AF8C", - "baseIconId": "F053196C-66BC-4D0D-B75F-24773CA618E5", - "name": "pine-tree-box", - "codepoint": "F0406", - "aliases": [ - "plant" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Holiday", - "Nature", - "Agriculture" - ], - "author": "Austin Andrews" - }, - { - "id": "707539BB-56A1-4346-B907-95DEE51799A3", - "baseIconId": "F053196C-66BC-4D0D-B75F-24773CA618E5", - "name": "pine-tree-fire", - "codepoint": "F141A", - "aliases": [ - "wildfire", - "controlled-burn" - ], - "styles": [], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Nature", - "Agriculture" - ], - "author": "Austin Andrews" - }, - { - "id": "04EE87F5-A61D-4CD0-89E5-BE7032F07A00", - "baseIconId": "F053196C-66BC-4D0D-B75F-24773CA618E5", - "name": "pine-tree-variant", - "codepoint": "F1C73", - "aliases": [], - "styles": [ - "variant" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Nature", - "Places", - "Agriculture" - ], - "author": "Jeff Anders" - }, - { - "id": "77B7101F-D4EC-4E5E-9BF0-F4C83A5FD10F", - "baseIconId": "F053196C-66BC-4D0D-B75F-24773CA618E5", - "name": "pine-tree-variant-outline", - "codepoint": "F1C74", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Places", - "Nature", - "Agriculture" - ], - "author": "Jeff Anders" - }, - { - "id": "6BAC7A7E-340B-474D-8448-2DEC0FE66146", - "baseIconId": "6BAC7A7E-340B-474D-8448-2DEC0FE66146", - "name": "pinterest", - "codepoint": "F0407", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "BB298846-B608-4289-987C-A8F2A904409F", - "baseIconId": "BB298846-B608-4289-987C-A8F2A904409F", - "name": "pinwheel", - "codepoint": "F0AD5", - "aliases": [ - "toys" - ], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "279BF513-8015-4F28-83FD-B69CE7E0EB78", - "baseIconId": "BB298846-B608-4289-987C-A8F2A904409F", - "name": "pinwheel-outline", - "codepoint": "F0AD6", - "aliases": [ - "toys-outline" - ], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "840AF950-F514-452B-AD1F-18EC878CB1F8", - "baseIconId": "840AF950-F514-452B-AD1F-18EC878CB1F8", - "name": "pipe", - "codepoint": "F07E5", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "01D59BE4-7863-471D-840D-8C810F934344", - "baseIconId": "840AF950-F514-452B-AD1F-18EC878CB1F8", - "name": "pipe-disconnected", - "codepoint": "F07E6", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "A39D910A-D5C9-4A9D-86CF-F61A60486758", - "baseIconId": "840AF950-F514-452B-AD1F-18EC878CB1F8", - "name": "pipe-leak", - "codepoint": "F0889", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "CAF49DCD-781B-4F6A-B692-9E2ED6D68786", - "baseIconId": "840AF950-F514-452B-AD1F-18EC878CB1F8", - "name": "pipe-valve", - "codepoint": "F184D", - "aliases": [], - "styles": [ - "variant" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5767EA8C-592F-4CEF-A01D-52F3CD0D111E", - "baseIconId": "5767EA8C-592F-4CEF-A01D-52F3CD0D111E", - "name": "pipe-wrench", - "codepoint": "F1354", - "aliases": [ - "monkey-wrench" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Google" - }, - { - "id": "5CDFFABD-F3B4-4E4D-97A3-F8B1AE403809", - "baseIconId": "5CDFFABD-F3B4-4E4D-97A3-F8B1AE403809", - "name": "pirate", - "codepoint": "F0A08", - "aliases": [], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "34C9947D-5943-4C3E-9E7A-2CD95061222B", - "baseIconId": "34C9947D-5943-4C3E-9E7A-2CD95061222B", - "name": "pistol", - "codepoint": "F0703", - "aliases": [ - "gun" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "212476A4-B98A-4A84-BE27-37F28847A7D2", - "baseIconId": "212476A4-B98A-4A84-BE27-37F28847A7D2", - "name": "piston", - "codepoint": "F088A", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Richins" - }, - { - "id": "BD8E12AD-25AA-42FA-9C9C-EA023794A93D", - "baseIconId": "BD8E12AD-25AA-42FA-9C9C-EA023794A93D", - "name": "pitchfork", - "codepoint": "F1553", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E617E8BD-2C63-4E59-B1F4-EB3F9F3916D3", - "baseIconId": "E617E8BD-2C63-4E59-B1F4-EB3F9F3916D3", - "name": "pizza", - "codepoint": "F0409", - "aliases": [ - "pizzeria", - "local-pizza" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Places" - ], - "author": "Google" - }, - { - "id": "604EF539-0143-4862-957A-AA04EFF9CD4E", - "baseIconId": "604EF539-0143-4862-957A-AA04EFF9CD4E", - "name": "plane-car", - "codepoint": "F1AFF", - "aliases": [ - "airport-shuttle", - "airport-taxi", - "airplane-car" - ], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Transportation + Flying", - "Transportation + Road" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F485C550-203A-48D9-BFFC-35400109374C", - "baseIconId": "F485C550-203A-48D9-BFFC-35400109374C", - "name": "plane-train", - "codepoint": "F1B00", - "aliases": [ - "airport-shuttle", - "airplane-train" - ], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Transportation + Flying", - "Transportation + Other" - ], - "author": "Michael Irigoyen" - }, - { - "id": "90AD6D2A-7986-49D0-8DA5-DC92F9F92A15", - "baseIconId": "90AD6D2A-7986-49D0-8DA5-DC92F9F92A15", - "name": "play", - "codepoint": "F040A", - "aliases": [ - "play-arrow" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "B60DF8C7-F693-4E2B-B5AB-65CA6DC21A8E", - "baseIconId": "90AD6D2A-7986-49D0-8DA5-DC92F9F92A15", - "name": "play-box", - "codepoint": "F127A", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "frankgrinaert" - }, - { - "id": "11C9308E-3310-49C4-90AF-79ECA629386A", - "baseIconId": "90AD6D2A-7986-49D0-8DA5-DC92F9F92A15", - "name": "play-box-edit-outline", - "codepoint": "F1C3A", - "aliases": [], - "styles": [ - "box", - "edit", - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Sintija" - }, - { - "id": "0B180C29-3ADF-47C2-ACC6-C5EE5E744AD4", - "baseIconId": "90AD6D2A-7986-49D0-8DA5-DC92F9F92A15", - "name": "play-box-lock", - "codepoint": "F1A16", - "aliases": [], - "styles": [ - "box", - "lock" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Video \/ Movie", - "Lock" - ], - "author": "Simran" - }, - { - "id": "560E6993-9435-4447-8A14-235913D80579", - "baseIconId": "90AD6D2A-7986-49D0-8DA5-DC92F9F92A15", - "name": "play-box-lock-open", - "codepoint": "F1A17", - "aliases": [], - "styles": [ - "box", - "lock" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Video \/ Movie", - "Lock" - ], - "author": "Simran" - }, - { - "id": "3C88B8D8-AFDD-4A9F-A976-BCD74895D1F5", - "baseIconId": "90AD6D2A-7986-49D0-8DA5-DC92F9F92A15", - "name": "play-box-lock-open-outline", - "codepoint": "F1A18", - "aliases": [], - "styles": [ - "box", - "lock", - "outline" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Video \/ Movie", - "Lock" - ], - "author": "Simran" - }, - { - "id": "F7617311-2473-4D67-A62D-1B06033CFAE7", - "baseIconId": "90AD6D2A-7986-49D0-8DA5-DC92F9F92A15", - "name": "play-box-lock-outline", - "codepoint": "F1A19", - "aliases": [], - "styles": [ - "box", - "lock", - "outline" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Video \/ Movie", - "Lock" - ], - "author": "Simran" - }, - { - "id": "9700DCD7-8658-479A-A817-1241A09F9654", - "baseIconId": "90AD6D2A-7986-49D0-8DA5-DC92F9F92A15", - "name": "play-box-multiple", - "codepoint": "F0D19", - "aliases": [], - "styles": [ - "box", - "multiple" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "73F0C681-0A20-484A-B276-3EE052090089", - "baseIconId": "90AD6D2A-7986-49D0-8DA5-DC92F9F92A15", - "name": "play-box-multiple-outline", - "codepoint": "F13E6", - "aliases": [], - "styles": [ - "box", - "multiple", - "outline" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "D0431F42-A1C2-409B-9D44-2EDDEF3F9AB3", - "baseIconId": "90AD6D2A-7986-49D0-8DA5-DC92F9F92A15", - "name": "play-box-outline", - "codepoint": "F040B", - "aliases": [ - "slideshow" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "79F68E60-010F-4A8E-8E30-06CB64A5DBF6", - "baseIconId": "90AD6D2A-7986-49D0-8DA5-DC92F9F92A15", - "name": "play-circle", - "codepoint": "F040C", - "aliases": [ - "play-circle-filled" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "E0C875C2-16F3-4C92-BABF-DAB2D08258DC", - "baseIconId": "90AD6D2A-7986-49D0-8DA5-DC92F9F92A15", - "name": "play-circle-outline", - "codepoint": "F040D", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "5B10237B-B7AA-4B35-B8C0-C97747F1E3E7", - "baseIconId": "90AD6D2A-7986-49D0-8DA5-DC92F9F92A15", - "name": "play-network", - "codepoint": "F088B", - "aliases": [ - "media-network" - ], - "styles": [ - "variant" - ], - "version": "2.1.99", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "951FE34F-7D2E-45FF-8014-FB4EBC49BED1", - "baseIconId": "90AD6D2A-7986-49D0-8DA5-DC92F9F92A15", - "name": "play-network-outline", - "codepoint": "F0CB7", - "aliases": [ - "media-network-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "554AC834-1F9C-401A-86F5-E26FFD201683", - "baseIconId": "90AD6D2A-7986-49D0-8DA5-DC92F9F92A15", - "name": "play-outline", - "codepoint": "F0F1B", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "93DAA69E-9A21-4D5A-B6B1-0AF0A24B7FEB", - "baseIconId": "93DAA69E-9A21-4D5A-B6B1-0AF0A24B7FEB", - "name": "play-pause", - "codepoint": "F040E", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "FEB9507A-DA7D-4CB3-918A-E64BBB9D4CC9", - "baseIconId": "FEB9507A-DA7D-4CB3-918A-E64BBB9D4CC9", - "name": "play-protected-content", - "codepoint": "F040F", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "72410FAF-5315-452B-ACE1-C0FEB3B897F8", - "baseIconId": "90AD6D2A-7986-49D0-8DA5-DC92F9F92A15", - "name": "play-speed", - "codepoint": "F08FF", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "F3E26F6E-9F9A-490B-A28A-1BD32A60D143", - "baseIconId": "F7BFD179-3B1E-4347-BD64-C51686B00E65", - "name": "playlist-check", - "codepoint": "F05C7", - "aliases": [ - "subscriptions", - "playlist-add-check", - "playlist-tick" - ], - "styles": [ - "check" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "EBBE4C11-9C6D-40AA-844A-167B274A4E81", - "baseIconId": "F7BFD179-3B1E-4347-BD64-C51686B00E65", - "name": "playlist-edit", - "codepoint": "F0900", - "aliases": [], - "styles": [ - "edit" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "GreenTurtwig" - }, - { - "id": "1D472295-8F79-4F51-B68A-63A2CD2DF634", - "baseIconId": "F7BFD179-3B1E-4347-BD64-C51686B00E65", - "name": "playlist-minus", - "codepoint": "F0410", - "aliases": [], - "styles": [ - "minus" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "F7BFD179-3B1E-4347-BD64-C51686B00E65", - "baseIconId": "F7BFD179-3B1E-4347-BD64-C51686B00E65", - "name": "playlist-music", - "codepoint": "F0CB8", - "aliases": [ - "playlist-note", - "queue-music" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Google" - }, - { - "id": "97526C1D-E3B9-4900-8C13-3969E80949B3", - "baseIconId": "F7BFD179-3B1E-4347-BD64-C51686B00E65", - "name": "playlist-music-outline", - "codepoint": "F0CB9", - "aliases": [ - "playlist-note-outline", - "queue-music-outline" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Google" - }, - { - "id": "313918D8-1CB9-40FC-B24F-3A974F1A6EAF", - "baseIconId": "F7BFD179-3B1E-4347-BD64-C51686B00E65", - "name": "playlist-play", - "codepoint": "F0411", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "350D7B60-3F36-4FB0-9959-B90625F5267C", - "baseIconId": "F7BFD179-3B1E-4347-BD64-C51686B00E65", - "name": "playlist-plus", - "codepoint": "F0412", - "aliases": [ - "playlist-add" - ], - "styles": [ - "plus" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "526856F3-6DF1-454A-B905-3DA120370563", - "baseIconId": "F7BFD179-3B1E-4347-BD64-C51686B00E65", - "name": "playlist-remove", - "codepoint": "F0413", - "aliases": [], - "styles": [ - "remove" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "80A0AA10-9B8E-4AAA-BDEA-EDDADB94A7CC", - "baseIconId": "F7BFD179-3B1E-4347-BD64-C51686B00E65", - "name": "playlist-star", - "codepoint": "F0DF2", - "aliases": [ - "playlist-favorite" - ], - "styles": [ - "star" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "D390D1E2-571E-49DB-BBB9-9D3821EAF819", - "baseIconId": "D390D1E2-571E-49DB-BBB9-9D3821EAF819", - "name": "plex", - "codepoint": "F06BA", - "aliases": [], - "styles": [], - "version": "1.7.22", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "7AD950E9-0961-4D65-9B78-40FC56D5D206", - "baseIconId": "7AD950E9-0961-4D65-9B78-40FC56D5D206", - "name": "pliers", - "codepoint": "F19A4", - "aliases": [], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2DE4F8E6-F25C-4FCA-8405-109FA8918B78", - "baseIconId": "2DE4F8E6-F25C-4FCA-8405-109FA8918B78", - "name": "plus", - "codepoint": "F0415", - "aliases": [ - "add" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Google" - }, - { - "id": "87EE041D-81D2-4F1A-A757-F76E9D8686EF", - "baseIconId": "2DE4F8E6-F25C-4FCA-8405-109FA8918B78", - "name": "plus-box", - "codepoint": "F0416", - "aliases": [ - "add-box" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Google" - }, - { - "id": "BF1B666E-57AC-41B0-950B-4F4060BDF601", - "baseIconId": "2DE4F8E6-F25C-4FCA-8405-109FA8918B78", - "name": "plus-box-multiple", - "codepoint": "F0334", - "aliases": [ - "add-to-photos", - "library-add", - "queue", - "library-plus" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "910CB053-6597-49C2-A20D-EBC310D03364", - "baseIconId": "2DE4F8E6-F25C-4FCA-8405-109FA8918B78", - "name": "plus-box-multiple-outline", - "codepoint": "F1143", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "75A7BDE6-40BC-4938-AFCD-D4DDF1B65B2A", - "baseIconId": "2DE4F8E6-F25C-4FCA-8405-109FA8918B78", - "name": "plus-box-outline", - "codepoint": "F0704", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Google" - }, - { - "id": "0F76DADF-2A8D-4C1F-B43E-DC3C6D282BBF", - "baseIconId": "2DE4F8E6-F25C-4FCA-8405-109FA8918B78", - "name": "plus-circle", - "codepoint": "F0417", - "aliases": [ - "add-circle" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "93BBA1EA-76F8-4D2E-B4D0-98F684B15AC3", - "baseIconId": "2DE4F8E6-F25C-4FCA-8405-109FA8918B78", - "name": "plus-circle-multiple", - "codepoint": "F034C", - "aliases": [ - "coins-plus" - ], - "styles": [ - "circle", - "multiple", - "plus" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "0C5565E9-9E74-4E50-BF9E-6F904BB83E52", - "baseIconId": "2DE4F8E6-F25C-4FCA-8405-109FA8918B78", - "name": "plus-circle-multiple-outline", - "codepoint": "F0418", - "aliases": [ - "control-point-duplicate", - "plus-circles-outline", - "coins-plus-outline" - ], - "styles": [ - "circle", - "multiple", - "outline", - "plus" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "EFB8C700-D60B-4995-B8DE-F3A3E2DA75F3", - "baseIconId": "2DE4F8E6-F25C-4FCA-8405-109FA8918B78", - "name": "plus-circle-outline", - "codepoint": "F0419", - "aliases": [ - "add-circle-outline", - "control-point", - "circles-add" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "04ACEC00-DCEE-4FC8-9608-A2875F7A92A1", - "baseIconId": "2DE4F8E6-F25C-4FCA-8405-109FA8918B78", - "name": "plus-lock", - "codepoint": "F1A5D", - "aliases": [ - "plus-secure" - ], - "styles": [ - "lock" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Contributors" - }, - { - "id": "A147BEF7-1952-44F9-98EB-BF2D2F4F625E", - "baseIconId": "2DE4F8E6-F25C-4FCA-8405-109FA8918B78", - "name": "plus-lock-open", - "codepoint": "F1A5E", - "aliases": [], - "styles": [ - "lock" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Contributors" - }, - { - "id": "34BDA78C-9BF6-441A-9924-E8619719C333", - "baseIconId": "34BDA78C-9BF6-441A-9924-E8619719C333", - "name": "plus-minus", - "codepoint": "F0992", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Nick" - }, - { - "id": "C8A8A7E4-7745-4CA1-A99B-724C2471CAF5", - "baseIconId": "34BDA78C-9BF6-441A-9924-E8619719C333", - "name": "plus-minus-box", - "codepoint": "F0993", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Nick" - }, - { - "id": "D86C99FA-DFA7-4DD2-9EB8-CBB094BD1366", - "baseIconId": "34BDA78C-9BF6-441A-9924-E8619719C333", - "name": "plus-minus-variant", - "codepoint": "F14C9", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Austin Andrews" - }, - { - "id": "14F6A9EC-BD40-4181-B084-05A9FCFA3973", - "baseIconId": "2DE4F8E6-F25C-4FCA-8405-109FA8918B78", - "name": "plus-network", - "codepoint": "F041A", - "aliases": [ - "add-network" - ], - "styles": [ - "plus" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "349600D3-B39C-46C2-8E61-5A256C4BA98C", - "baseIconId": "2DE4F8E6-F25C-4FCA-8405-109FA8918B78", - "name": "plus-network-outline", - "codepoint": "F0CBA", - "aliases": [ - "add-network-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "680B6AD6-C9AD-44D1-9228-EDDB8C242343", - "baseIconId": "2DE4F8E6-F25C-4FCA-8405-109FA8918B78", - "name": "plus-outline", - "codepoint": "F0705", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "2FD9933D-7226-4745-B5DB-C8E6245FB170", - "baseIconId": "2DE4F8E6-F25C-4FCA-8405-109FA8918B78", - "name": "plus-thick", - "codepoint": "F11EC", - "aliases": [ - "add-thick", - "add-bold", - "plus-bold" - ], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Austin Andrews" - }, - { - "id": "56B37BA8-E973-4B53-812A-7F47BCFF217A", - "baseIconId": "56B37BA8-E973-4B53-812A-7F47BCFF217A", - "name": "podcast", - "codepoint": "F0994", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "9C9AF6D4-1E8A-414A-9935-B7B8BE9F0962", - "baseIconId": "9C9AF6D4-1E8A-414A-9935-B7B8BE9F0962", - "name": "podium", - "codepoint": "F0D25", - "aliases": [], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Michael Richins" - }, - { - "id": "4F2BE6B3-071D-4EE3-8E86-71F0AF06619F", - "baseIconId": "9C9AF6D4-1E8A-414A-9935-B7B8BE9F0962", - "name": "podium-bronze", - "codepoint": "F0D26", - "aliases": [ - "podium-third" - ], - "styles": [ - "variant" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Michael Richins" - }, - { - "id": "CB4B60CC-1B22-4288-997F-D59FE2AFC198", - "baseIconId": "9C9AF6D4-1E8A-414A-9935-B7B8BE9F0962", - "name": "podium-gold", - "codepoint": "F0D27", - "aliases": [ - "podium-first" - ], - "styles": [ - "variant" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Michael Richins" - }, - { - "id": "FF783CFF-DD54-492C-A1E1-323AB6CAAFC1", - "baseIconId": "9C9AF6D4-1E8A-414A-9935-B7B8BE9F0962", - "name": "podium-silver", - "codepoint": "F0D28", - "aliases": [ - "podium-second" - ], - "styles": [ - "variant" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Michael Richins" - }, - { - "id": "1DDDF76A-2C40-4BEE-87B1-0B95D4E233DA", - "baseIconId": "1DDDF76A-2C40-4BEE-87B1-0B95D4E233DA", - "name": "point-of-sale", - "codepoint": "F0D92", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Alex Efremo" - }, - { - "id": "48329A9B-7B16-469C-9D64-B2E9381620BF", - "baseIconId": "48329A9B-7B16-469C-9D64-B2E9381620BF", - "name": "pokeball", - "codepoint": "F041D", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "A1D5B3DC-2A72-4548-AB36-985E98BB6FCE", - "baseIconId": "A1D5B3DC-2A72-4548-AB36-985E98BB6FCE", - "name": "pokemon-go", - "codepoint": "F0A09", - "aliases": [], - "styles": [], - "version": "2.5.94", - "deprecated": true, - "tags": [ - "Gaming \/ RPG", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "D73F724D-EEE6-43EC-BA3A-E185ABD7A258", - "baseIconId": "D73F724D-EEE6-43EC-BA3A-E185ABD7A258", - "name": "poker-chip", - "codepoint": "F0830", - "aliases": [ - "casino-chip", - "gambling-chip" - ], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Richins" - }, - { - "id": "8408CE08-26C2-49B9-95CE-C5A9AAF4455E", - "baseIconId": "8408CE08-26C2-49B9-95CE-C5A9AAF4455E", - "name": "polaroid", - "codepoint": "F041E", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "80E26409-5A5C-4BDC-9722-8A8CC6981B90", - "baseIconId": "80E26409-5A5C-4BDC-9722-8A8CC6981B90", - "name": "police-badge", - "codepoint": "F1167", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "9262CC3D-85E6-4881-AE14-B760E93DBBFE", - "baseIconId": "80E26409-5A5C-4BDC-9722-8A8CC6981B90", - "name": "police-badge-outline", - "codepoint": "F1168", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "E0ED9455-85A4-4C77-9C79-533CE242ABA5", - "baseIconId": "E0ED9455-85A4-4C77-9C79-533CE242ABA5", - "name": "police-station", - "codepoint": "F1839", - "aliases": [], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Places" - ], - "author": "Colton Wiscombe" - }, - { - "id": "C4A1DAE5-04E0-47EF-84D8-CB81FA58EF87", - "baseIconId": "C4A1DAE5-04E0-47EF-84D8-CB81FA58EF87", - "name": "poll", - "codepoint": "F041F", - "aliases": [ - "bar-chart", - "report", - "performance", - "analytics" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "5ACE4E72-9576-405A-A17F-314A1FF864C8", - "baseIconId": "5ACE4E72-9576-405A-A17F-314A1FF864C8", - "name": "polo", - "codepoint": "F14C3", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Google" - }, - { - "id": "528FF16A-C55C-43F9-8E0B-3879A209AEDE", - "baseIconId": "528FF16A-C55C-43F9-8E0B-3879A209AEDE", - "name": "polymer", - "codepoint": "F0421", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Developer \/ Languages" - ], - "author": "Contributors" - }, - { - "id": "F42C2F0C-BEFC-46EB-A46C-665032BD6641", - "baseIconId": "F42C2F0C-BEFC-46EB-A46C-665032BD6641", - "name": "pool", - "codepoint": "F0606", - "aliases": [ - "swimming-pool" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Places", - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "7216DA73-CAB3-46A6-8940-809FFE3DBD26", - "baseIconId": "F42C2F0C-BEFC-46EB-A46C-665032BD6641", - "name": "pool-thermometer", - "codepoint": "F1A5F", - "aliases": [ - "pool-temperature" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "3401BCC7-DECF-4A92-9B6C-34AF063B2FED", - "baseIconId": "3401BCC7-DECF-4A92-9B6C-34AF063B2FED", - "name": "popcorn", - "codepoint": "F0422", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Austin Andrews" - }, - { - "id": "9B1DF082-5266-408A-A057-92E9AEB81BFA", - "baseIconId": "9B1DF082-5266-408A-A057-92E9AEB81BFA", - "name": "post", - "codepoint": "F1008", - "aliases": [ - "blog" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "DA9F3CE2-81E2-4113-B8E7-64CE579D0890", - "baseIconId": "DA9F3CE2-81E2-4113-B8E7-64CE579D0890", - "name": "post-lamp", - "codepoint": "F1A60", - "aliases": [ - "post-light" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "benjocaz45" - }, - { - "id": "A7CB61B3-B3C5-4EEE-AC94-D0B2347FFA1B", - "baseIconId": "9B1DF082-5266-408A-A057-92E9AEB81BFA", - "name": "post-outline", - "codepoint": "F1009", - "aliases": [ - "blog-outline" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "D76042A4-6370-4DF4-BF35-B00BE339805A", - "baseIconId": "D76042A4-6370-4DF4-BF35-B00BE339805A", - "name": "postage-stamp", - "codepoint": "F0CBB", - "aliases": [], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "267AF23F-D48A-493E-91BD-E78CD3EFCCBA", - "baseIconId": "267AF23F-D48A-493E-91BD-E78CD3EFCCBA", - "name": "pot", - "codepoint": "F02E5", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Holiday" - ], - "author": "Simran" - }, - { - "id": "C264A721-9CFD-4AE5-BD97-404E7DCDC6C2", - "baseIconId": "267AF23F-D48A-493E-91BD-E78CD3EFCCBA", - "name": "pot-mix", - "codepoint": "F065B", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Holiday" - ], - "author": "Simran" - }, - { - "id": "857C302E-0AC9-438D-A8E5-DE3DC9680FAB", - "baseIconId": "267AF23F-D48A-493E-91BD-E78CD3EFCCBA", - "name": "pot-mix-outline", - "codepoint": "F0677", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Holiday" - ], - "author": "Simran" - }, - { - "id": "EB68865A-2308-4667-9B2F-C550923180A9", - "baseIconId": "267AF23F-D48A-493E-91BD-E78CD3EFCCBA", - "name": "pot-outline", - "codepoint": "F02FF", - "aliases": [], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Holiday" - ], - "author": "Simran" - }, - { - "id": "444286FD-F41C-4945-BF9D-7C2913EC663E", - "baseIconId": "267AF23F-D48A-493E-91BD-E78CD3EFCCBA", - "name": "pot-steam", - "codepoint": "F065A", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Holiday" - ], - "author": "Simran" - }, - { - "id": "A6C14603-8189-4CC5-82CF-1231422B6F70", - "baseIconId": "267AF23F-D48A-493E-91BD-E78CD3EFCCBA", - "name": "pot-steam-outline", - "codepoint": "F0326", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Holiday" - ], - "author": "Simran" - }, - { - "id": "9344AA1D-FF8B-432F-A314-C416DFA37F12", - "baseIconId": "9344AA1D-FF8B-432F-A314-C416DFA37F12", - "name": "pound", - "codepoint": "F0423", - "aliases": [ - "hashtag" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "597DF175-F0F5-4892-9F13-EA712DBC947E", - "baseIconId": "9344AA1D-FF8B-432F-A314-C416DFA37F12", - "name": "pound-box", - "codepoint": "F0424", - "aliases": [ - "hashtag-box" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "BC212E3B-C9D9-4FC5-B73B-DDA77D94A5C9", - "baseIconId": "9344AA1D-FF8B-432F-A314-C416DFA37F12", - "name": "pound-box-outline", - "codepoint": "F117F", - "aliases": [ - "hashtag-box-outline" - ], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "C945D203-9737-4C25-87CA-29D97B862DD2", - "baseIconId": "C945D203-9737-4C25-87CA-29D97B862DD2", - "name": "power", - "codepoint": "F0425", - "aliases": [ - "power-settings-new", - "shutdown" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "DD119EDC-92B2-48F6-8014-73AD2AB65DA7", - "baseIconId": "C945D203-9737-4C25-87CA-29D97B862DD2", - "name": "power-cycle", - "codepoint": "F0901", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "39D3928C-2739-4A57-A81C-3DF67328A160", - "baseIconId": "C945D203-9737-4C25-87CA-29D97B862DD2", - "name": "power-off", - "codepoint": "F0902", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "566141F9-DB64-4210-8384-EB77CFA9E8A0", - "baseIconId": "C945D203-9737-4C25-87CA-29D97B862DD2", - "name": "power-on", - "codepoint": "F0903", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "60E77DB8-2D58-462F-8512-41D9E0E42795", - "baseIconId": "60E77DB8-2D58-462F-8512-41D9E0E42795", - "name": "power-plug", - "codepoint": "F06A5", - "aliases": [], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "1F41CB15-B611-4FBF-A789-7A404C7D81D1", - "baseIconId": "60E77DB8-2D58-462F-8512-41D9E0E42795", - "name": "power-plug-battery", - "codepoint": "F1C3B", - "aliases": [ - "battery-backup" - ], - "styles": [], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Home Automation", - "Battery" - ], - "author": "Jeff Anders" - }, - { - "id": "936AF163-1DC9-4F38-8B7E-5F165695F56C", - "baseIconId": "60E77DB8-2D58-462F-8512-41D9E0E42795", - "name": "power-plug-battery-outline", - "codepoint": "F1C3C", - "aliases": [ - "battery-backup-outline" - ], - "styles": [ - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Home Automation", - "Battery" - ], - "author": "Jeff Anders" - }, - { - "id": "ACF38F54-4726-4F8F-9916-8C582137FA69", - "baseIconId": "60E77DB8-2D58-462F-8512-41D9E0E42795", - "name": "power-plug-off", - "codepoint": "F06A6", - "aliases": [ - "power-off" - ], - "styles": [ - "off" - ], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "D4F5AEAB-DD00-4101-8661-13260BE9D087", - "baseIconId": "60E77DB8-2D58-462F-8512-41D9E0E42795", - "name": "power-plug-off-outline", - "codepoint": "F1424", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E439723C-E8DA-4BD6-8AE8-F944FD96B31D", - "baseIconId": "60E77DB8-2D58-462F-8512-41D9E0E42795", - "name": "power-plug-outline", - "codepoint": "F1425", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B5587844-E70A-4F55-A2DA-CE85D8F79689", - "baseIconId": "C945D203-9737-4C25-87CA-29D97B862DD2", - "name": "power-settings", - "codepoint": "F0426", - "aliases": [ - "settings-power" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Google" - }, - { - "id": "AA011772-1BE4-4E00-A838-9D0D1DCA2773", - "baseIconId": "AA011772-1BE4-4E00-A838-9D0D1DCA2773", - "name": "power-sleep", - "codepoint": "F0904", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "175A9E67-3723-4D49-85EC-8D34B4BA0C14", - "baseIconId": "175A9E67-3723-4D49-85EC-8D34B4BA0C14", - "name": "power-socket", - "codepoint": "F0427", - "aliases": [ - "plug-socket" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "CFCF8409-65AC-4E1C-885B-107F9D8B4413", - "baseIconId": "CFCF8409-65AC-4E1C-885B-107F9D8B4413", - "name": "power-socket-au", - "codepoint": "F0905", - "aliases": [ - "plug-socket-au", - "power-socket-type-i", - "power-socket-cn", - "power-socket-ar", - "power-socket-nz", - "power-socket-pg", - "power-socket-australia", - "power-socket-china", - "power-socket-argentina", - "power-socket-new-zealand", - "power-socket-papua-new-guinea" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "27B28F1C-C311-49C2-B3EE-6D288A9F1165", - "baseIconId": "27B28F1C-C311-49C2-B3EE-6D288A9F1165", - "name": "power-socket-ch", - "codepoint": "F0FB3", - "aliases": [ - "plug-socket-ch", - "power-socket-type-j", - "plug-socket-type-j", - "power-socket-switzerland", - "plug-socket-switzerland" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Stautob" - }, - { - "id": "14654BFB-0D87-43E0-8A47-7CF1EE1CF418", - "baseIconId": "14654BFB-0D87-43E0-8A47-7CF1EE1CF418", - "name": "power-socket-de", - "codepoint": "F1107", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "07F4FD1C-A171-4088-BE30-53758CFF45E5", - "baseIconId": "07F4FD1C-A171-4088-BE30-53758CFF45E5", - "name": "power-socket-eu", - "codepoint": "F07E7", - "aliases": [ - "plug-socket-eu", - "power-socket-europe" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "85338D53-181D-46E9-AEA7-D524B0DFBA4A", - "baseIconId": "85338D53-181D-46E9-AEA7-D524B0DFBA4A", - "name": "power-socket-fr", - "codepoint": "F1108", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "D7106221-1ABC-4E8E-9345-E2B23D5D74B9", - "baseIconId": "D7106221-1ABC-4E8E-9345-E2B23D5D74B9", - "name": "power-socket-it", - "codepoint": "F14FF", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Angelo Fan" - }, - { - "id": "98D7A146-D68E-4E80-B8F1-5235DAECD976", - "baseIconId": "98D7A146-D68E-4E80-B8F1-5235DAECD976", - "name": "power-socket-jp", - "codepoint": "F1109", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Haley Halcyon" - }, - { - "id": "E9F0AC95-A660-4FB1-BE5D-20153B709E15", - "baseIconId": "E9F0AC95-A660-4FB1-BE5D-20153B709E15", - "name": "power-socket-uk", - "codepoint": "F07E8", - "aliases": [ - "plug-socket-uk", - "power-socket-type-g", - "power-socket-ie", - "power-socket-hk", - "power-socket-my", - "power-socket-cy", - "power-socket-mt", - "power-socket-sg", - "power-socket-united-kingdom", - "power-socket-ireland", - "power-socket-hong-kong", - "power-socket-malaysia", - "power-socket-cyprus", - "power-socket-malta", - "power-socket-singapore" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "C4F7F8FF-3465-4F85-B615-B852A6919100", - "baseIconId": "C4F7F8FF-3465-4F85-B615-B852A6919100", - "name": "power-socket-us", - "codepoint": "F07E9", - "aliases": [ - "plug-socket-us", - "power-socket-ca", - "power-socket-mx", - "power-socket-type-b", - "power-socket-united-states", - "power-socket-japan", - "power-socket-canada", - "power-socket-mexico" - ], - "styles": [ - "box" - ], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "3AC74CF9-0EC1-475D-A164-7C9CA0D48B58", - "baseIconId": "3AC74CF9-0EC1-475D-A164-7C9CA0D48B58", - "name": "power-standby", - "codepoint": "F0906", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "2DB269A5-0CD6-4139-8C24-A4A1F7D96596", - "baseIconId": "2DB269A5-0CD6-4139-8C24-A4A1F7D96596", - "name": "powershell", - "codepoint": "F0A0A", - "aliases": [], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Contributors" - }, - { - "id": "DEF7F9EA-ACA8-452E-B587-6524BE7D67EE", - "baseIconId": "DEF7F9EA-ACA8-452E-B587-6524BE7D67EE", - "name": "prescription", - "codepoint": "F0706", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Roberto Graham" - }, - { - "id": "DAEB5F87-858A-4677-B023-C9EC71F99F6C", - "baseIconId": "DAEB5F87-858A-4677-B023-C9EC71F99F6C", - "name": "presentation", - "codepoint": "F0428", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "E182F4B3-B2B0-41CD-90DC-5ADFBE25DA90", - "baseIconId": "DAEB5F87-858A-4677-B023-C9EC71F99F6C", - "name": "presentation-play", - "codepoint": "F0429", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "607F7E94-DBF5-4D5D-8F3A-5E1F90E1FF61", - "baseIconId": "607F7E94-DBF5-4D5D-8F3A-5E1F90E1FF61", - "name": "pretzel", - "codepoint": "F1562", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Nicolas Gres" - }, - { - "id": "7365D689-4C10-4EBA-AD9A-09189B8091EE", - "baseIconId": "7365D689-4C10-4EBA-AD9A-09189B8091EE", - "name": "printer", - "codepoint": "F042A", - "aliases": [ - "local-printshop", - "local-print-shop" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Printer", - "Home Automation" - ], - "author": "Google" - }, - { - "id": "86A3D6B7-6C8B-4883-B51B-753DEF0F4A62", - "baseIconId": "7365D689-4C10-4EBA-AD9A-09189B8091EE", - "name": "printer-3d", - "codepoint": "F042B", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Printer", - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "3A3AA67C-5DB4-40CA-9D0B-43843190CCDC", - "baseIconId": "3A3AA67C-5DB4-40CA-9D0B-43843190CCDC", - "name": "printer-3d-nozzle", - "codepoint": "F0E5B", - "aliases": [], - "styles": [], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Jon-Luke West" - }, - { - "id": "5AB50A00-46F7-4294-8462-EDD32EA7309A", - "baseIconId": "3A3AA67C-5DB4-40CA-9D0B-43843190CCDC", - "name": "printer-3d-nozzle-alert", - "codepoint": "F11C0", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Alert \/ Error", - "Printer" - ], - "author": "Austin Andrews" - }, - { - "id": "5EEF9AB7-11DF-4612-A037-55705DA3AB19", - "baseIconId": "3A3AA67C-5DB4-40CA-9D0B-43843190CCDC", - "name": "printer-3d-nozzle-alert-outline", - "codepoint": "F11C1", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Alert \/ Error", - "Printer" - ], - "author": "Austin Andrews" - }, - { - "id": "EB4E1E2E-C462-43D0-8D25-4853F62A5397", - "baseIconId": "3A3AA67C-5DB4-40CA-9D0B-43843190CCDC", - "name": "printer-3d-nozzle-heat", - "codepoint": "F18B8", - "aliases": [], - "styles": [ - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Kinetic Screen" - }, - { - "id": "94D5AB5D-C507-4C0A-9C1C-A25C0ADCEC1E", - "baseIconId": "3A3AA67C-5DB4-40CA-9D0B-43843190CCDC", - "name": "printer-3d-nozzle-heat-outline", - "codepoint": "F18B9", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Kinetic Screen" - }, - { - "id": "6172358F-1F0D-4735-B880-613E2E69FFBA", - "baseIconId": "3A3AA67C-5DB4-40CA-9D0B-43843190CCDC", - "name": "printer-3d-nozzle-off", - "codepoint": "F1B19", - "aliases": [], - "styles": [ - "off" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Michael Irigoyen" - }, - { - "id": "188B9B62-C20F-4813-AAAE-F4FA6DE3A6BC", - "baseIconId": "3A3AA67C-5DB4-40CA-9D0B-43843190CCDC", - "name": "printer-3d-nozzle-off-outline", - "codepoint": "F1B1A", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7B1B16E0-AB42-490D-8D84-62B9AA0AB4BD", - "baseIconId": "3A3AA67C-5DB4-40CA-9D0B-43843190CCDC", - "name": "printer-3d-nozzle-outline", - "codepoint": "F0E5C", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Jon-Luke West" - }, - { - "id": "887D316B-F8E0-40D4-8961-4A6C00111CDB", - "baseIconId": "86A3D6B7-6C8B-4883-B51B-753DEF0F4A62", - "name": "printer-3d-off", - "codepoint": "F1B0E", - "aliases": [], - "styles": [ - "off" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Hans B\u00f6hm" - }, - { - "id": "DD64AF52-2610-43D3-A992-9F3FCCB4A576", - "baseIconId": "7365D689-4C10-4EBA-AD9A-09189B8091EE", - "name": "printer-alert", - "codepoint": "F042C", - "aliases": [ - "printer-warning", - "paper-jam" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Printer", - "Home Automation", - "Alert \/ Error" - ], - "author": "Austin Andrews" - }, - { - "id": "3C750D11-158A-4FED-A7A8-22B4D74DF4BC", - "baseIconId": "7365D689-4C10-4EBA-AD9A-09189B8091EE", - "name": "printer-check", - "codepoint": "F1146", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Terren" - }, - { - "id": "22BB79BD-B17E-4002-923E-5B6766B967DC", - "baseIconId": "7365D689-4C10-4EBA-AD9A-09189B8091EE", - "name": "printer-eye", - "codepoint": "F1458", - "aliases": [ - "printer-preview", - "printer-view" - ], - "styles": [ - "variant" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Michael Irigoyen" - }, - { - "id": "328D470F-EEB4-486D-953B-6F84CE809C3C", - "baseIconId": "7365D689-4C10-4EBA-AD9A-09189B8091EE", - "name": "printer-off", - "codepoint": "F0E5D", - "aliases": [], - "styles": [ - "off" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "GreenTurtwig" - }, - { - "id": "6AE8D5BF-CEFD-40DD-A764-9C9FFE38A003", - "baseIconId": "7365D689-4C10-4EBA-AD9A-09189B8091EE", - "name": "printer-off-outline", - "codepoint": "F1785", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Google" - }, - { - "id": "514C36A5-3B40-4493-A1CE-275B9C482012", - "baseIconId": "7365D689-4C10-4EBA-AD9A-09189B8091EE", - "name": "printer-outline", - "codepoint": "F1786", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Google" - }, - { - "id": "F9D30BAE-7AF6-4C02-83AD-18045895B8B0", - "baseIconId": "7365D689-4C10-4EBA-AD9A-09189B8091EE", - "name": "printer-pos", - "codepoint": "F1057", - "aliases": [ - "printer-point-of-sale", - "printer-receipt" - ], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Michael Richins" - }, - { - "id": "8303B276-1999-4F62-8C48-22EBA47B5781", - "baseIconId": "F9D30BAE-7AF6-4C02-83AD-18045895B8B0", - "name": "printer-pos-alert", - "codepoint": "F1BBC", - "aliases": [ - "printer-point-of-sale-alert", - "printer-receipt-alert" - ], - "styles": [ - "alert" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Alert \/ Error", - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "EACC7108-609E-4681-BAE9-BEB8EBBFF77F", - "baseIconId": "4206F292-9583-42F9-91CD-2DEA9F273C9F", - "name": "printer-pos-alert-outline", - "codepoint": "F1BBD", - "aliases": [ - "printer-point-of-sale-alert-outline", - "printer-receipt-alert-outline" - ], - "styles": [ - "alert" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer", - "Alert \/ Error" - ], - "author": "Colton Wiscombe" - }, - { - "id": "CF5532E5-1956-430A-A661-A5361A8BEBF1", - "baseIconId": "F9D30BAE-7AF6-4C02-83AD-18045895B8B0", - "name": "printer-pos-cancel", - "codepoint": "F1BBE", - "aliases": [ - "printer-point-of-sale-cancel", - "printer-receipt-cancel" - ], - "styles": [ - "cancel" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "7D88DD62-B00E-4950-8A0A-CF5C895578E7", - "baseIconId": "4206F292-9583-42F9-91CD-2DEA9F273C9F", - "name": "printer-pos-cancel-outline", - "codepoint": "F1BBF", - "aliases": [ - "printer-point-of-sale-cancel-outline", - "printer-receipt-cancel-outline" - ], - "styles": [ - "cancel" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "77D3FA23-E73B-4FF9-89A3-D507B44D113C", - "baseIconId": "F9D30BAE-7AF6-4C02-83AD-18045895B8B0", - "name": "printer-pos-check", - "codepoint": "F1BC0", - "aliases": [ - "printer-point-of-sale-check", - "printer-receipt-check" - ], - "styles": [ - "check" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "A48714B0-4E0D-480D-9766-C73919F28B73", - "baseIconId": "4206F292-9583-42F9-91CD-2DEA9F273C9F", - "name": "printer-pos-check-outline", - "codepoint": "F1BC1", - "aliases": [ - "printer-point-of-sale-check-outline", - "printer-receipt-check-outline" - ], - "styles": [ - "check" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "6566732F-0DDF-4F23-B478-AC3A93B822BE", - "baseIconId": "F9D30BAE-7AF6-4C02-83AD-18045895B8B0", - "name": "printer-pos-cog", - "codepoint": "F1BC2", - "aliases": [ - "printer-point-of-sale-cog", - "printer-receipt-cog" - ], - "styles": [ - "cog" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "7D634FE7-3A63-4850-9AC4-B62775160D58", - "baseIconId": "4206F292-9583-42F9-91CD-2DEA9F273C9F", - "name": "printer-pos-cog-outline", - "codepoint": "F1BC3", - "aliases": [ - "printer-point-of-sale-cog-outline", - "printer-receipt-cog-outline" - ], - "styles": [ - "cog" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "954D4E9A-A4EF-414E-9AC3-0B07DA479BE9", - "baseIconId": "F9D30BAE-7AF6-4C02-83AD-18045895B8B0", - "name": "printer-pos-edit", - "codepoint": "F1BC4", - "aliases": [ - "printer-point-of-sale-edit", - "printer-receipt-edit" - ], - "styles": [ - "edit" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "401FC546-94DF-4C01-9B08-24EEB602A4C3", - "baseIconId": "4206F292-9583-42F9-91CD-2DEA9F273C9F", - "name": "printer-pos-edit-outline", - "codepoint": "F1BC5", - "aliases": [ - "printer-point-of-sale-edit-outline", - "printer-receipt-edit-outline" - ], - "styles": [ - "edit" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "636E0D3E-A92D-4369-9C04-00C92DB0C1B2", - "baseIconId": "F9D30BAE-7AF6-4C02-83AD-18045895B8B0", - "name": "printer-pos-minus", - "codepoint": "F1BC6", - "aliases": [ - "printer-point-of-sale-minus", - "printer-receipt-minus" - ], - "styles": [ - "minus" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "DD9AE6D3-6DF8-4CBC-A40F-CA25E4E6B310", - "baseIconId": "4206F292-9583-42F9-91CD-2DEA9F273C9F", - "name": "printer-pos-minus-outline", - "codepoint": "F1BC7", - "aliases": [ - "printer-point-of-sale-minus-outline", - "printer-receipt-minus-outline" - ], - "styles": [ - "minus" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "B91F589E-8733-47ED-8B29-7D1BBCFBC98F", - "baseIconId": "F9D30BAE-7AF6-4C02-83AD-18045895B8B0", - "name": "printer-pos-network", - "codepoint": "F1BC8", - "aliases": [ - "printer-point-of-sale-network", - "printer-receipt-network" - ], - "styles": [ - "network" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "3FD6D2F6-5BBB-45D9-BE28-1B216BEB4D5E", - "baseIconId": "4206F292-9583-42F9-91CD-2DEA9F273C9F", - "name": "printer-pos-network-outline", - "codepoint": "F1BC9", - "aliases": [ - "printer-point-of-sale-network-outline", - "printer-receipt-network-outline" - ], - "styles": [ - "network" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "50590358-DEC9-4F92-B1AF-0F005C35A3DA", - "baseIconId": "F9D30BAE-7AF6-4C02-83AD-18045895B8B0", - "name": "printer-pos-off", - "codepoint": "F1BCA", - "aliases": [ - "printer-point-of-sale-off", - "printer-receipt-off" - ], - "styles": [ - "off" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "B5A792CB-A191-44B7-AC15-148FC242803E", - "baseIconId": "4206F292-9583-42F9-91CD-2DEA9F273C9F", - "name": "printer-pos-off-outline", - "codepoint": "F1BCB", - "aliases": [ - "printer-point-of-sale-off-outline", - "printer-receipt-off-outline" - ], - "styles": [ - "off" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "4206F292-9583-42F9-91CD-2DEA9F273C9F", - "baseIconId": "4206F292-9583-42F9-91CD-2DEA9F273C9F", - "name": "printer-pos-outline", - "codepoint": "F1BCC", - "aliases": [ - "printer-point-of-sale-outline", - "printer-receipt-outline" - ], - "styles": [], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "FC8CF9C9-3DCD-46DC-8B3C-A4000A7B00DD", - "baseIconId": "F9D30BAE-7AF6-4C02-83AD-18045895B8B0", - "name": "printer-pos-pause", - "codepoint": "F1BCD", - "aliases": [ - "printer-point-of-sale-pause", - "printer-receipt-pause" - ], - "styles": [], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "FCF57215-34E5-44F7-9DF9-BDFF862CAAF6", - "baseIconId": "4206F292-9583-42F9-91CD-2DEA9F273C9F", - "name": "printer-pos-pause-outline", - "codepoint": "F1BCE", - "aliases": [ - "printer-point-of-sale-pause-outline", - "printer-receipt-pause-outline" - ], - "styles": [], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "6737548E-6689-4D50-B84A-186B16B1CE9C", - "baseIconId": "F9D30BAE-7AF6-4C02-83AD-18045895B8B0", - "name": "printer-pos-play", - "codepoint": "F1BCF", - "aliases": [ - "printer-point-of-sale-play", - "printer-receipt-play" - ], - "styles": [], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "C725674B-6092-43B7-9F0D-D878910CE943", - "baseIconId": "4206F292-9583-42F9-91CD-2DEA9F273C9F", - "name": "printer-pos-play-outline", - "codepoint": "F1BD0", - "aliases": [ - "printer-point-of-sale-play-outline", - "printer-receipt-play-outline" - ], - "styles": [], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "45895F8B-BD11-410E-859F-E48AC25AA0EF", - "baseIconId": "F9D30BAE-7AF6-4C02-83AD-18045895B8B0", - "name": "printer-pos-plus", - "codepoint": "F1BD1", - "aliases": [ - "printer-point-of-sale-plus", - "printer-receipt-plus" - ], - "styles": [ - "plus" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "B842534E-FF25-45A4-B2E1-F5FC581FD017", - "baseIconId": "4206F292-9583-42F9-91CD-2DEA9F273C9F", - "name": "printer-pos-plus-outline", - "codepoint": "F1BD2", - "aliases": [ - "printer-point-of-sale-plus-outline", - "printer-receipt-plus-outline" - ], - "styles": [ - "plus" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "9C26E188-105E-45DE-A8D3-42DA8829FE34", - "baseIconId": "F9D30BAE-7AF6-4C02-83AD-18045895B8B0", - "name": "printer-pos-refresh", - "codepoint": "F1BD3", - "aliases": [ - "printer-point-of-sale-refresh", - "printer-receipt-refresh" - ], - "styles": [ - "refresh" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "D5843C28-5203-42D5-A874-8BE28012EFA8", - "baseIconId": "4206F292-9583-42F9-91CD-2DEA9F273C9F", - "name": "printer-pos-refresh-outline", - "codepoint": "F1BD4", - "aliases": [ - "printer-point-of-sale-refresh-outline", - "printer-receipt-refresh-outline" - ], - "styles": [ - "refresh" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "21A677FB-E227-4D63-A4FE-08FE9A1D7065", - "baseIconId": "F9D30BAE-7AF6-4C02-83AD-18045895B8B0", - "name": "printer-pos-remove", - "codepoint": "F1BD5", - "aliases": [ - "printer-point-of-sale-remove", - "printer-receipt-remove" - ], - "styles": [ - "remove" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "796FA5DE-0B9F-4CC4-9FC9-6361639B8751", - "baseIconId": "4206F292-9583-42F9-91CD-2DEA9F273C9F", - "name": "printer-pos-remove-outline", - "codepoint": "F1BD6", - "aliases": [ - "printer-point-of-sale-remove-outline", - "printer-receipt-remove-outline" - ], - "styles": [ - "remove" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "6771B76B-C7D3-4F4A-B8AA-1656DF5C445A", - "baseIconId": "F9D30BAE-7AF6-4C02-83AD-18045895B8B0", - "name": "printer-pos-star", - "codepoint": "F1BD7", - "aliases": [ - "printer-point-of-sale-star", - "printer-receipt-star", - "printer-favorite", - "printer-primary" - ], - "styles": [ - "star" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "E7889DB0-6E76-4CA9-BD0B-92B7E8304381", - "baseIconId": "4206F292-9583-42F9-91CD-2DEA9F273C9F", - "name": "printer-pos-star-outline", - "codepoint": "F1BD8", - "aliases": [ - "printer-point-of-sale-star-outline", - "printer-receipt-star-outline" - ], - "styles": [ - "star" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "8DE1FE3F-D679-44B4-AECA-7A9B5F0CC2A7", - "baseIconId": "F9D30BAE-7AF6-4C02-83AD-18045895B8B0", - "name": "printer-pos-stop", - "codepoint": "F1BD9", - "aliases": [ - "printer-point-of-sale-stop", - "printer-receipt-stop" - ], - "styles": [], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "E789327B-828B-4E02-976E-1522B0E92151", - "baseIconId": "4206F292-9583-42F9-91CD-2DEA9F273C9F", - "name": "printer-pos-stop-outline", - "codepoint": "F1BDA", - "aliases": [ - "printer-point-of-sale-stop-outline", - "printer-receipt-stop-outline" - ], - "styles": [], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "E8726305-549E-45BE-9E41-D624A57B5D6A", - "baseIconId": "F9D30BAE-7AF6-4C02-83AD-18045895B8B0", - "name": "printer-pos-sync", - "codepoint": "F1BDB", - "aliases": [ - "printer-point-of-sale-sync", - "printer-receipt-sync" - ], - "styles": [ - "sync" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "0F86AA93-8706-4290-B11A-FDC58392F543", - "baseIconId": "4206F292-9583-42F9-91CD-2DEA9F273C9F", - "name": "printer-pos-sync-outline", - "codepoint": "F1BDC", - "aliases": [ - "printer-point-of-sale-sync-outline", - "printer-receipt-sync-outline" - ], - "styles": [ - "sync" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "458EB3B4-89F2-4E46-A6D6-485A2081F627", - "baseIconId": "F9D30BAE-7AF6-4C02-83AD-18045895B8B0", - "name": "printer-pos-wrench", - "codepoint": "F1BDD", - "aliases": [ - "printer-point-of-sale-wrench", - "printer-receipt-wrench" - ], - "styles": [], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "C998386E-C3FA-44DC-9513-D2BFA68D7D12", - "baseIconId": "4206F292-9583-42F9-91CD-2DEA9F273C9F", - "name": "printer-pos-wrench-outline", - "codepoint": "F1BDE", - "aliases": [ - "printer-point-of-sale-wrench-outline", - "printer-receipt-wrench-outline" - ], - "styles": [], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Colton Wiscombe" - }, - { - "id": "18383BEA-BF9A-43AD-87BB-F47CEC92F9C3", - "baseIconId": "7365D689-4C10-4EBA-AD9A-09189B8091EE", - "name": "printer-search", - "codepoint": "F1457", - "aliases": [ - "printer-preview", - "printer-magnify" - ], - "styles": [ - "search" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Michael Irigoyen" - }, - { - "id": "33E4D9A3-F8C1-4C58-9E88-977AE4F4E4CA", - "baseIconId": "7365D689-4C10-4EBA-AD9A-09189B8091EE", - "name": "printer-settings", - "codepoint": "F0707", - "aliases": [], - "styles": [ - "settings" - ], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Settings", - "Printer" - ], - "author": "Simran" - }, - { - "id": "E9B8B42B-CA7D-4499-B610-CABBDCF51C0E", - "baseIconId": "7365D689-4C10-4EBA-AD9A-09189B8091EE", - "name": "printer-wireless", - "codepoint": "F0A0B", - "aliases": [], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Printer" - ], - "author": "Michael Richins" - }, - { - "id": "FA96A5AC-D499-4C13-93C7-7A422A5DE4B7", - "baseIconId": "FA96A5AC-D499-4C13-93C7-7A422A5DE4B7", - "name": "priority-high", - "codepoint": "F0603", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "DFC698A7-3040-48F4-A341-C1E667A4FE22", - "baseIconId": "DFC698A7-3040-48F4-A341-C1E667A4FE22", - "name": "priority-low", - "codepoint": "F0604", - "aliases": [ - "low-priority" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "53EA516B-544D-4DC3-90BD-3A5C4838923C", - "baseIconId": "53EA516B-544D-4DC3-90BD-3A5C4838923C", - "name": "professional-hexagon", - "codepoint": "F042D", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "82FBA8C9-B8BE-4CA6-883C-E07C36723627", - "baseIconId": "82FBA8C9-B8BE-4CA6-883C-E07C36723627", - "name": "progress-alert", - "codepoint": "F0CBC", - "aliases": [ - "progress-warning" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Michael Richins" - }, - { - "id": "943E027B-964A-4CE2-BDD7-44A9703A73B1", - "baseIconId": "943E027B-964A-4CE2-BDD7-44A9703A73B1", - "name": "progress-check", - "codepoint": "F0995", - "aliases": [ - "progress-tick" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "D7A33F97-FA45-4719-901A-A1F91E671FC2", - "baseIconId": "D7A33F97-FA45-4719-901A-A1F91E671FC2", - "name": "progress-clock", - "codepoint": "F0996", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Peter Noble" - }, - { - "id": "294CC691-6D3C-47DB-B142-8F4DE633DE92", - "baseIconId": "294CC691-6D3C-47DB-B142-8F4DE633DE92", - "name": "progress-close", - "codepoint": "F110A", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "9D94B21B-52A0-4F73-AEFB-85FEA76C8624", - "baseIconId": "9D94B21B-52A0-4F73-AEFB-85FEA76C8624", - "name": "progress-download", - "codepoint": "F0997", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "25466EC4-FF10-4925-A285-0356FA093FC2", - "baseIconId": "25466EC4-FF10-4925-A285-0356FA093FC2", - "name": "progress-helper", - "codepoint": "F1BA2", - "aliases": [], - "styles": [], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "2434DDA0-2B39-428D-9764-E8F9A46BF22F", - "baseIconId": "2434DDA0-2B39-428D-9764-E8F9A46BF22F", - "name": "progress-pencil", - "codepoint": "F1787", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Teodor Sandu" - }, - { - "id": "DBF80F38-9B3D-4390-B366-51827F97CC0F", - "baseIconId": "DBF80F38-9B3D-4390-B366-51827F97CC0F", - "name": "progress-question", - "codepoint": "F1522", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "FF05067C-B5B4-48B1-B63C-75D3CBB24E45", - "baseIconId": "FF05067C-B5B4-48B1-B63C-75D3CBB24E45", - "name": "progress-star", - "codepoint": "F1788", - "aliases": [], - "styles": [ - "star" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Teodor Sandu" - }, - { - "id": "C8BCB1CF-5259-4BC0-B368-4F5C2A3C194B", - "baseIconId": "FF05067C-B5B4-48B1-B63C-75D3CBB24E45", - "name": "progress-star-four-points", - "codepoint": "F1C3D", - "aliases": [ - "progress-auto" - ], - "styles": [ - "star" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "699B5A10-1C4C-448C-A3F4-36A3CACD82EA", - "baseIconId": "699B5A10-1C4C-448C-A3F4-36A3CACD82EA", - "name": "progress-upload", - "codepoint": "F0998", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "D0721C85-4507-43CE-8E0B-21522D641993", - "baseIconId": "D0721C85-4507-43CE-8E0B-21522D641993", - "name": "progress-wrench", - "codepoint": "F0CBD", - "aliases": [ - "progress-spanner" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D23095BD-C1C0-4FED-B114-CE9CF9DD5DB6", - "baseIconId": "D23095BD-C1C0-4FED-B114-CE9CF9DD5DB6", - "name": "projector", - "codepoint": "F042E", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Device \/ Tech", - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "BCC3FC58-92BE-4C05-9273-FA1EB03C3E3E", - "baseIconId": "D23095BD-C1C0-4FED-B114-CE9CF9DD5DB6", - "name": "projector-off", - "codepoint": "F1A23", - "aliases": [], - "styles": [ - "off" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Device \/ Tech", - "Home Automation" - ], - "author": "Terren" - }, - { - "id": "A152DD64-B013-4AE7-B89F-49FC90B2E471", - "baseIconId": "A152DD64-B013-4AE7-B89F-49FC90B2E471", - "name": "projector-screen", - "codepoint": "F042F", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Device \/ Tech", - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "074F1A3B-91A7-47EE-8C68-8C3B64321AC2", - "baseIconId": "A152DD64-B013-4AE7-B89F-49FC90B2E471", - "name": "projector-screen-off", - "codepoint": "F180D", - "aliases": [], - "styles": [ - "off" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "pp81381" - }, - { - "id": "2E4DBF28-60B7-43E2-8786-376D26DDC431", - "baseIconId": "A152DD64-B013-4AE7-B89F-49FC90B2E471", - "name": "projector-screen-off-outline", - "codepoint": "F180E", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "pp81381" - }, - { - "id": "F2AC4968-73F6-4D91-BF2B-D8653E6863E2", - "baseIconId": "A152DD64-B013-4AE7-B89F-49FC90B2E471", - "name": "projector-screen-outline", - "codepoint": "F1724", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "96090E84-D472-4A0E-B65C-27E1FAB4BCC8", - "baseIconId": "A152DD64-B013-4AE7-B89F-49FC90B2E471", - "name": "projector-screen-variant", - "codepoint": "F180F", - "aliases": [], - "styles": [ - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "pp81381" - }, - { - "id": "BE2FFED1-BB12-4CBD-A809-7E5BEA984E2F", - "baseIconId": "A152DD64-B013-4AE7-B89F-49FC90B2E471", - "name": "projector-screen-variant-off", - "codepoint": "F1810", - "aliases": [], - "styles": [ - "off", - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "pp81381" - }, - { - "id": "4EED4028-BD43-40F8-B087-D28BCB46DC3F", - "baseIconId": "A152DD64-B013-4AE7-B89F-49FC90B2E471", - "name": "projector-screen-variant-off-outline", - "codepoint": "F1811", - "aliases": [], - "styles": [ - "off", - "outline", - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "pp81381" - }, - { - "id": "DCA776E3-A4EF-4B2F-A3F4-D8BEC9236502", - "baseIconId": "A152DD64-B013-4AE7-B89F-49FC90B2E471", - "name": "projector-screen-variant-outline", - "codepoint": "F1812", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "pp81381" - }, - { - "id": "F6911BCA-14B1-4DD4-9407-20E138FAB878", - "baseIconId": "F6911BCA-14B1-4DD4-9407-20E138FAB878", - "name": "propane-tank", - "codepoint": "F1357", - "aliases": [], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "03A9105D-F79F-454C-9EE2-4E96A1BBA908", - "baseIconId": "F6911BCA-14B1-4DD4-9407-20E138FAB878", - "name": "propane-tank-outline", - "codepoint": "F1358", - "aliases": [], - "styles": [ - "outline" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "16D49AC9-5D43-4401-980B-C9DF4593838A", - "baseIconId": "16D49AC9-5D43-4401-980B-C9DF4593838A", - "name": "protocol", - "codepoint": "F0FD8", - "aliases": [], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "7E1AC29D-46E3-4C7C-9A00-D8803E502795", - "baseIconId": "7E1AC29D-46E3-4C7C-9A00-D8803E502795", - "name": "publish", - "codepoint": "F06A7", - "aliases": [], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "57375CB0-5F7F-492E-BB25-3EE90669FE6D", - "baseIconId": "7E1AC29D-46E3-4C7C-9A00-D8803E502795", - "name": "publish-off", - "codepoint": "F1945", - "aliases": [ - "publish-disabled" - ], - "styles": [ - "off" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2A0F7B5D-5D23-4E76-B97D-9D2281D3C4EA", - "baseIconId": "2A0F7B5D-5D23-4E76-B97D-9D2281D3C4EA", - "name": "pulse", - "codepoint": "F0430", - "aliases": [ - "vitals" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Austin Andrews" - }, - { - "id": "4FDD16EB-0E78-46BF-B077-A9C077C3C1B8", - "baseIconId": "4FDD16EB-0E78-46BF-B077-A9C077C3C1B8", - "name": "pump", - "codepoint": "F1402", - "aliases": [], - "styles": [], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Anton Verburg" - }, - { - "id": "C7CB1E0B-D85F-42EF-8A06-0BD4A1E11102", - "baseIconId": "4FDD16EB-0E78-46BF-B077-A9C077C3C1B8", - "name": "pump-off", - "codepoint": "F1B22", - "aliases": [], - "styles": [ - "off" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "CAA05089-AC62-40FF-96F1-82E34B93F18F", - "baseIconId": "CAA05089-AC62-40FF-96F1-82E34B93F18F", - "name": "pumpkin", - "codepoint": "F0BBF", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Holiday" - ], - "author": "Austin Andrews" - }, - { - "id": "4B431C82-5923-49D9-8849-6E7EF6C7661D", - "baseIconId": "4B431C82-5923-49D9-8849-6E7EF6C7661D", - "name": "purse", - "codepoint": "F0F1C", - "aliases": [], - "styles": [], - "version": "3.8.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "16CB0045-C446-4384-8031-B3CEDDE555EE", - "baseIconId": "4B431C82-5923-49D9-8849-6E7EF6C7661D", - "name": "purse-outline", - "codepoint": "F0F1D", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "0773D18C-C6A2-41B5-9685-F3E0507E1770", - "baseIconId": "0773D18C-C6A2-41B5-9685-F3E0507E1770", - "name": "puzzle", - "codepoint": "F0431", - "aliases": [ - "extension", - "jigsaw" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Google" - }, - { - "id": "034B7820-702C-45F8-ABE3-473AC1770BB2", - "baseIconId": "0773D18C-C6A2-41B5-9685-F3E0507E1770", - "name": "puzzle-check", - "codepoint": "F1426", - "aliases": [], - "styles": [ - "check" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "BA363BBC-F40B-4D14-B677-6FEFD1D48B87", - "baseIconId": "0773D18C-C6A2-41B5-9685-F3E0507E1770", - "name": "puzzle-check-outline", - "codepoint": "F1427", - "aliases": [], - "styles": [ - "check", - "outline" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "DA95A80F-202E-48F3-9BCD-302C5AAD3BA2", - "baseIconId": "0773D18C-C6A2-41B5-9685-F3E0507E1770", - "name": "puzzle-edit", - "codepoint": "F14D3", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Gaming \/ RPG", - "Edit \/ Modify" - ], - "author": "Michael Irigoyen" - }, - { - "id": "824D28CA-335E-4C36-BAD7-8685FF2FB8A7", - "baseIconId": "0773D18C-C6A2-41B5-9685-F3E0507E1770", - "name": "puzzle-edit-outline", - "codepoint": "F14D9", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Gaming \/ RPG", - "Edit \/ Modify" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F489D7C7-0696-4970-86B0-6216D73177D0", - "baseIconId": "0773D18C-C6A2-41B5-9685-F3E0507E1770", - "name": "puzzle-heart", - "codepoint": "F14D4", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B588380E-4BAD-4787-B699-906B8926068D", - "baseIconId": "0773D18C-C6A2-41B5-9685-F3E0507E1770", - "name": "puzzle-heart-outline", - "codepoint": "F14DA", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "8DAE6108-0411-473A-B835-528DC330D1DF", - "baseIconId": "0773D18C-C6A2-41B5-9685-F3E0507E1770", - "name": "puzzle-minus", - "codepoint": "F14D1", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "56014EED-5E51-46CE-B231-D48463CFBF30", - "baseIconId": "0773D18C-C6A2-41B5-9685-F3E0507E1770", - "name": "puzzle-minus-outline", - "codepoint": "F14D7", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "BBAC40CD-6A3A-4EEF-A381-DB7C8950995E", - "baseIconId": "0773D18C-C6A2-41B5-9685-F3E0507E1770", - "name": "puzzle-outline", - "codepoint": "F0A66", - "aliases": [ - "jigsaw-outline", - "extension-outline" - ], - "styles": [ - "outline" - ], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Google" - }, - { - "id": "72A20545-216C-4CD8-B1E4-808B8B2B96B6", - "baseIconId": "0773D18C-C6A2-41B5-9685-F3E0507E1770", - "name": "puzzle-plus", - "codepoint": "F14D0", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "46577FE3-F2BF-4B41-B50D-3E6ABD7484B0", - "baseIconId": "0773D18C-C6A2-41B5-9685-F3E0507E1770", - "name": "puzzle-plus-outline", - "codepoint": "F14D6", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "29CE71EA-2734-48D2-9FFD-FEB8ADF50C12", - "baseIconId": "0773D18C-C6A2-41B5-9685-F3E0507E1770", - "name": "puzzle-remove", - "codepoint": "F14D2", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "05B602BB-4734-4D4B-A268-FE31171DBD66", - "baseIconId": "0773D18C-C6A2-41B5-9685-F3E0507E1770", - "name": "puzzle-remove-outline", - "codepoint": "F14D8", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0DA18E4C-075B-4DE5-A428-31FB0BA791E4", - "baseIconId": "0773D18C-C6A2-41B5-9685-F3E0507E1770", - "name": "puzzle-star", - "codepoint": "F14D5", - "aliases": [ - "puzzle-favorite" - ], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "72BEE187-7B9C-4106-92EA-CD040D56815F", - "baseIconId": "0773D18C-C6A2-41B5-9685-F3E0507E1770", - "name": "puzzle-star-outline", - "codepoint": "F14DB", - "aliases": [ - "puzzle-favorite-outline" - ], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "EB4E13BA-AB0B-4D32-BAAE-2D37A685768B", - "baseIconId": "EB4E13BA-AB0B-4D32-BAAE-2D37A685768B", - "name": "pyramid", - "codepoint": "F1952", - "aliases": [], - "styles": [], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Colton Wiscombe" - }, - { - "id": "2E5C5383-D159-4741-8970-2E9CCAD0D27D", - "baseIconId": "EB4E13BA-AB0B-4D32-BAAE-2D37A685768B", - "name": "pyramid-off", - "codepoint": "F1953", - "aliases": [], - "styles": [ - "off" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Colton Wiscombe" - }, - { - "id": "1F897ED3-17CC-43F5-9A0B-F7804A8DFABF", - "baseIconId": "1F897ED3-17CC-43F5-9A0B-F7804A8DFABF", - "name": "qi", - "codepoint": "F0999", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "6EAADAE4-30AE-4F69-888F-364BBAFFF5E7", - "baseIconId": "6EAADAE4-30AE-4F69-888F-364BBAFFF5E7", - "name": "qqchat", - "codepoint": "F0605", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "779E7DDE-0ACE-4752-9966-22761E2A128A", - "baseIconId": "779E7DDE-0ACE-4752-9966-22761E2A128A", - "name": "qrcode", - "codepoint": "F0432", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "603BF7E7-03A6-4141-8A50-CA124B62C621", - "baseIconId": "779E7DDE-0ACE-4752-9966-22761E2A128A", - "name": "qrcode-edit", - "codepoint": "F08B8", - "aliases": [], - "styles": [ - "edit", - "variant" - ], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Michael Richins" - }, - { - "id": "2DD6D091-2E48-41D6-A9E1-67BF485B103E", - "baseIconId": "779E7DDE-0ACE-4752-9966-22761E2A128A", - "name": "qrcode-minus", - "codepoint": "F118C", - "aliases": [], - "styles": [ - "minus" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [], - "author": "Peter Noble" - }, - { - "id": "B86DA56E-59D6-4B0B-BE63-D66496C8E6EB", - "baseIconId": "779E7DDE-0ACE-4752-9966-22761E2A128A", - "name": "qrcode-plus", - "codepoint": "F118B", - "aliases": [], - "styles": [ - "plus" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [], - "author": "Peter Noble" - }, - { - "id": "D41EE63E-AFC3-4A60-891F-841AF0AEBF22", - "baseIconId": "779E7DDE-0ACE-4752-9966-22761E2A128A", - "name": "qrcode-remove", - "codepoint": "F118D", - "aliases": [], - "styles": [ - "remove" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [], - "author": "Peter Noble" - }, - { - "id": "C8A7580B-5288-4A60-8033-797EB07A05AC", - "baseIconId": "779E7DDE-0ACE-4752-9966-22761E2A128A", - "name": "qrcode-scan", - "codepoint": "F0433", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "E81082B7-E851-4407-B0D2-08CC105C6A5D", - "baseIconId": "E81082B7-E851-4407-B0D2-08CC105C6A5D", - "name": "quadcopter", - "codepoint": "F0434", - "aliases": [ - "drone" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "C07BA504-080D-4B47-AD4D-7F772E5C92F3", - "baseIconId": "C07BA504-080D-4B47-AD4D-7F772E5C92F3", - "name": "quality-high", - "codepoint": "F0435", - "aliases": [ - "high-quality", - "hq" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "51E44ABD-8132-4758-905E-4F46784ED768", - "baseIconId": "51E44ABD-8132-4758-905E-4F46784ED768", - "name": "quality-low", - "codepoint": "F0A0C", - "aliases": [ - "low-quality", - "lq" - ], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "C987C0CA-2D23-427B-8F9C-F3E10B32156C", - "baseIconId": "C987C0CA-2D23-427B-8F9C-F3E10B32156C", - "name": "quality-medium", - "codepoint": "F0A0D", - "aliases": [ - "medium-quality", - "mq" - ], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "F4C8FDC5-0F7D-4EDA-8242-B356F5E542A4", - "baseIconId": "F4C8FDC5-0F7D-4EDA-8242-B356F5E542A4", - "name": "quora", - "codepoint": "F0D29", - "aliases": [], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [], - "author": "Contributors" - }, - { - "id": "1D7338F8-4F44-43E3-906B-571178E63E49", - "baseIconId": "1D7338F8-4F44-43E3-906B-571178E63E49", - "name": "rabbit", - "codepoint": "F0907", - "aliases": [ - "bunny", - "hare" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Animal", - "Nature" - ], - "author": "Augustin Ursu" - }, - { - "id": "8CEA8CC8-F495-4F1B-B28B-BAA2D2F2EA44", - "baseIconId": "1D7338F8-4F44-43E3-906B-571178E63E49", - "name": "rabbit-variant", - "codepoint": "F1A61", - "aliases": [ - "bunny", - "easter", - "hare", - "cruelty-free" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Animal", - "Holiday", - "Nature" - ], - "author": "Google" - }, - { - "id": "3A22546F-5A22-4E53-A13D-05FB82BAB08F", - "baseIconId": "1D7338F8-4F44-43E3-906B-571178E63E49", - "name": "rabbit-variant-outline", - "codepoint": "F1A62", - "aliases": [ - "easter-outline", - "bunny-outline", - "hare-outline", - "cruelty-free-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Animal", - "Holiday", - "Nature" - ], - "author": "Google" - }, - { - "id": "59B7D141-A76F-4794-A484-CE089FCF7C46", - "baseIconId": "59B7D141-A76F-4794-A484-CE089FCF7C46", - "name": "racing-helmet", - "codepoint": "F0D93", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Google" - }, - { - "id": "0E46DC98-E185-4B26-A4E9-FC1CEC750172", - "baseIconId": "0E46DC98-E185-4B26-A4E9-FC1CEC750172", - "name": "racquetball", - "codepoint": "F0D94", - "aliases": [ - "lacrosse", - "squash" - ], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Google" - }, - { - "id": "73BD6C2A-0D5B-4DF6-9FA3-EC489AFBF947", - "baseIconId": "73BD6C2A-0D5B-4DF6-9FA3-EC489AFBF947", - "name": "radar", - "codepoint": "F0437", - "aliases": [ - "track-changes" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "BFFA61BF-959B-4E15-BE31-4D9AFB5E3FDF", - "baseIconId": "BFFA61BF-959B-4E15-BE31-4D9AFB5E3FDF", - "name": "radiator", - "codepoint": "F0438", - "aliases": [ - "heater" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "79B0F153-88BE-4FCD-94CB-E44D648DAAE2", - "baseIconId": "BFFA61BF-959B-4E15-BE31-4D9AFB5E3FDF", - "name": "radiator-disabled", - "codepoint": "F0AD7", - "aliases": [ - "heater-disabled" - ], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F1BF1F5D-82C7-41EA-B9CD-325265C3D760", - "baseIconId": "BFFA61BF-959B-4E15-BE31-4D9AFB5E3FDF", - "name": "radiator-off", - "codepoint": "F0AD8", - "aliases": [ - "heater-off" - ], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2FA21C1E-99C3-4C9B-AF46-8DF6B9F2A8FC", - "baseIconId": "2FA21C1E-99C3-4C9B-AF46-8DF6B9F2A8FC", - "name": "radio", - "codepoint": "F0439", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio", - "Device \/ Tech" - ], - "author": "Google" - }, - { - "id": "D0AEFF89-C011-4445-B685-A1366099D920", - "baseIconId": "2FA21C1E-99C3-4C9B-AF46-8DF6B9F2A8FC", - "name": "radio-am", - "codepoint": "F0CBE", - "aliases": [], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Audio" - ], - "author": "Michael Richins" - }, - { - "id": "55BADC53-06EE-4199-8761-80AF2240DE1D", - "baseIconId": "2FA21C1E-99C3-4C9B-AF46-8DF6B9F2A8FC", - "name": "radio-fm", - "codepoint": "F0CBF", - "aliases": [], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Audio" - ], - "author": "Michael Richins" - }, - { - "id": "6EE69D5F-CF42-4257-B974-470E397E0DC1", - "baseIconId": "2FA21C1E-99C3-4C9B-AF46-8DF6B9F2A8FC", - "name": "radio-handheld", - "codepoint": "F043A", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "Simran" - }, - { - "id": "B39962EE-105B-4093-9B4C-6078FEA43DA2", - "baseIconId": "2FA21C1E-99C3-4C9B-AF46-8DF6B9F2A8FC", - "name": "radio-off", - "codepoint": "F121C", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "zoara" - }, - { - "id": "8E5FC366-E9F8-40ED-A16D-CD6C87B0C5B1", - "baseIconId": "8E5FC366-E9F8-40ED-A16D-CD6C87B0C5B1", - "name": "radio-tower", - "codepoint": "F043B", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "D70016AF-1FEE-4E66-8D51-3DE1BAAC0031", - "baseIconId": "D70016AF-1FEE-4E66-8D51-3DE1BAAC0031", - "name": "radioactive", - "codepoint": "F043C", - "aliases": [ - "radiation" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Yasmina Lembachar" - }, - { - "id": "DBCBBE8F-7DFA-4C05-8A2C-8BDE851A0322", - "baseIconId": "D70016AF-1FEE-4E66-8D51-3DE1BAAC0031", - "name": "radioactive-circle", - "codepoint": "F185D", - "aliases": [ - "radiation-circle" - ], - "styles": [ - "circle" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Michael Miday" - }, - { - "id": "1C482356-F93E-46FB-B4FF-6142BB859A7F", - "baseIconId": "D70016AF-1FEE-4E66-8D51-3DE1BAAC0031", - "name": "radioactive-circle-outline", - "codepoint": "F185E", - "aliases": [ - "radiation-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Michael Miday" - }, - { - "id": "3AD51A23-9040-4D23-AE50-B28C6DFF82F6", - "baseIconId": "D70016AF-1FEE-4E66-8D51-3DE1BAAC0031", - "name": "radioactive-off", - "codepoint": "F0EC1", - "aliases": [ - "radiation-off" - ], - "styles": [ - "off" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "TheChilliPL" - }, - { - "id": "10BF2326-3190-4C27-9040-E2F8F4961238", - "baseIconId": "10BF2326-3190-4C27-9040-E2F8F4961238", - "name": "radiobox-blank", - "codepoint": "F043D", - "aliases": [ - "radio-button-unchecked" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Google" - }, - { - "id": "36F9BAE6-DB6B-4CE5-B7CA-B777ABA8CB1B", - "baseIconId": "10BF2326-3190-4C27-9040-E2F8F4961238", - "name": "radiobox-indeterminate-variant", - "codepoint": "F1C5E", - "aliases": [ - "radio-button-indeterminate", - "radiobox-intermediate-variant" - ], - "styles": [ - "variant" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Jeff Anders" - }, - { - "id": "BA101E5E-CDA9-45AA-B249-BD176AF11D95", - "baseIconId": "10BF2326-3190-4C27-9040-E2F8F4961238", - "name": "radiobox-marked", - "codepoint": "F043E", - "aliases": [ - "radio-button-checked", - "record" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Google" - }, - { - "id": "17B9888B-F36F-4D44-9318-BBB6ADA0F61B", - "baseIconId": "17B9888B-F36F-4D44-9318-BBB6ADA0F61B", - "name": "radiology-box", - "codepoint": "F14C5", - "aliases": [ - "x-ray-box" - ], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Simran" - }, - { - "id": "75708207-7E52-443D-B1DE-5BA088AED95E", - "baseIconId": "17B9888B-F36F-4D44-9318-BBB6ADA0F61B", - "name": "radiology-box-outline", - "codepoint": "F14C6", - "aliases": [ - "x-ray-box-outline" - ], - "styles": [ - "outline" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DFD4C66B-CD4A-4524-A6DB-E3C2331C5DC6", - "baseIconId": "DFD4C66B-CD4A-4524-A6DB-E3C2331C5DC6", - "name": "radius", - "codepoint": "F0CC0", - "aliases": [ - "circle-radius", - "sphere-radius" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Richins" - }, - { - "id": "51C82800-F946-45C3-A88B-B5D52BD6B80B", - "baseIconId": "DFD4C66B-CD4A-4524-A6DB-E3C2331C5DC6", - "name": "radius-outline", - "codepoint": "F0CC1", - "aliases": [ - "circle-radius-outline", - "sphere-radius-outline" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Richins" - }, - { - "id": "7FC3FA6E-ED0B-4BCD-AF44-1125CC2CE3C4", - "baseIconId": "7FC3FA6E-ED0B-4BCD-AF44-1125CC2CE3C4", - "name": "railroad-light", - "codepoint": "F0F1E", - "aliases": [ - "railroad-crossing-light", - "train-crossing-light", - "level-crossing-signals" - ], - "styles": [], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Michael Richins" - }, - { - "id": "0523157C-6328-499C-A114-FDAD94CFDDAE", - "baseIconId": "0523157C-6328-499C-A114-FDAD94CFDDAE", - "name": "rake", - "codepoint": "F1544", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Michael Irigoyen" - }, - { - "id": "AFC49CE3-9442-4F15-B3EE-6C841A226040", - "baseIconId": "AFC49CE3-9442-4F15-B3EE-6C841A226040", - "name": "raspberry-pi", - "codepoint": "F043F", - "aliases": [ - "raspberrypi" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "0B304D53-8218-4F49-9330-1AB9CCB11C01", - "baseIconId": "0B304D53-8218-4F49-9330-1AB9CCB11C01", - "name": "raw", - "codepoint": "F1A0F", - "aliases": [], - "styles": [], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "8882E66A-7C74-4F2A-B38F-94AF59CFB92B", - "baseIconId": "0B304D53-8218-4F49-9330-1AB9CCB11C01", - "name": "raw-off", - "codepoint": "F1A10", - "aliases": [], - "styles": [ - "off" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "935371AF-0FF0-4D1E-86F8-DB6E5C5510F9", - "baseIconId": "935371AF-0FF0-4D1E-86F8-DB6E5C5510F9", - "name": "ray-end", - "codepoint": "F0440", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "16DEE563-B4C3-4B6D-A47F-B23151965007", - "baseIconId": "16DEE563-B4C3-4B6D-A47F-B23151965007", - "name": "ray-end-arrow", - "codepoint": "F0441", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "932F0926-4F5D-4ACA-B4E3-461837361212", - "baseIconId": "932F0926-4F5D-4ACA-B4E3-461837361212", - "name": "ray-start", - "codepoint": "F0442", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "5D6F58F7-61B8-4461-B284-4B0D6B031CA2", - "baseIconId": "5D6F58F7-61B8-4461-B284-4B0D6B031CA2", - "name": "ray-start-arrow", - "codepoint": "F0443", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "0C572F61-2EF1-4F4D-9B53-8FE285BC0BFB", - "baseIconId": "0C572F61-2EF1-4F4D-9B53-8FE285BC0BFB", - "name": "ray-start-end", - "codepoint": "F0444", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "B911CCA3-1237-45C3-BCE1-34CB034F8739", - "baseIconId": "B911CCA3-1237-45C3-BCE1-34CB034F8739", - "name": "ray-start-vertex-end", - "codepoint": "F15D8", - "aliases": [], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "B391C303-5456-4746-83DD-7862952E281E", - "baseIconId": "B391C303-5456-4746-83DD-7862952E281E", - "name": "ray-vertex", - "codepoint": "F0445", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "5BA6A47A-C308-46D9-B991-1B79CDF92000", - "baseIconId": "5BA6A47A-C308-46D9-B991-1B79CDF92000", - "name": "razor-double-edge", - "codepoint": "F1997", - "aliases": [], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Health \/ Beauty", - "Hardware \/ Tools" - ], - "author": "Simran" - }, - { - "id": "FE06C355-A6BB-464A-9B7D-B07CE7D551FC", - "baseIconId": "FE06C355-A6BB-464A-9B7D-B07CE7D551FC", - "name": "razor-single-edge", - "codepoint": "F1998", - "aliases": [], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F13DC81C-DF03-4A33-99D6-489FBDB5B29C", - "baseIconId": "F13DC81C-DF03-4A33-99D6-489FBDB5B29C", - "name": "react", - "codepoint": "F0708", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Developer \/ Languages" - ], - "author": "Contributors" - }, - { - "id": "36EB4754-ADCF-47B6-9863-4EFFB819FC93", - "baseIconId": "36EB4754-ADCF-47B6-9863-4EFFB819FC93", - "name": "read", - "codepoint": "F0447", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "EEB46F1F-4996-4B65-A1C6-70DC4D38C34E", - "baseIconId": "EEB46F1F-4996-4B65-A1C6-70DC4D38C34E", - "name": "receipt", - "codepoint": "F0824", - "aliases": [ - "cloth", - "fabric", - "swatch" - ], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "74B3AD4D-BDC1-4C72-9151-54D295195D39", - "baseIconId": "EEB46F1F-4996-4B65-A1C6-70DC4D38C34E", - "name": "receipt-clock", - "codepoint": "F1C3E", - "aliases": [ - "receipt-pending" - ], - "styles": [ - "clock" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "BE5F88B6-E3FF-48FC-91B1-1FD331F2E055", - "baseIconId": "EEB46F1F-4996-4B65-A1C6-70DC4D38C34E", - "name": "receipt-clock-outline", - "codepoint": "F1C3F", - "aliases": [ - "receipt-pending" - ], - "styles": [ - "clock", - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "179831B0-F175-4694-9313-3B745C133F96", - "baseIconId": "EEB46F1F-4996-4B65-A1C6-70DC4D38C34E", - "name": "receipt-outline", - "codepoint": "F04F7", - "aliases": [ - "cloth-outline", - "fabric-outline", - "swatch-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "21480B9D-5F5E-4899-823E-3ED8C14EB4F4", - "baseIconId": "EEB46F1F-4996-4B65-A1C6-70DC4D38C34E", - "name": "receipt-send", - "codepoint": "F1C40", - "aliases": [], - "styles": [ - "send" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "C09E8F37-086D-425D-9984-639C3251F340", - "baseIconId": "EEB46F1F-4996-4B65-A1C6-70DC4D38C34E", - "name": "receipt-send-outline", - "codepoint": "F1C41", - "aliases": [], - "styles": [ - "outline", - "send" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "80E9E435-2478-4B48-99B8-D8BEF353AE5F", - "baseIconId": "EEB46F1F-4996-4B65-A1C6-70DC4D38C34E", - "name": "receipt-text", - "codepoint": "F0449", - "aliases": [ - "invoice" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "F52947B9-1965-4E8C-824E-6DC5AE572CB9", - "baseIconId": "EEB46F1F-4996-4B65-A1C6-70DC4D38C34E", - "name": "receipt-text-arrow-left", - "codepoint": "F1C42", - "aliases": [ - "invoice-arrow-left", - "invoice-receive" - ], - "styles": [ - "arrow" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "463BE742-B0EA-4291-BF09-8C782D3D833E", - "baseIconId": "EEB46F1F-4996-4B65-A1C6-70DC4D38C34E", - "name": "receipt-text-arrow-left-outline", - "codepoint": "F1C43", - "aliases": [ - "invoice-arrow-left-outline", - "invoice-receive-outline" - ], - "styles": [ - "arrow", - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "E979926E-BF4E-4ECA-B5DF-500D1886425F", - "baseIconId": "EEB46F1F-4996-4B65-A1C6-70DC4D38C34E", - "name": "receipt-text-arrow-right", - "codepoint": "F1C44", - "aliases": [ - "invoice-arrow-right", - "invoice-send" - ], - "styles": [ - "arrow" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "EA3FD778-1C6B-485F-942D-79BAC534BDB3", - "baseIconId": "EEB46F1F-4996-4B65-A1C6-70DC4D38C34E", - "name": "receipt-text-arrow-right-outline", - "codepoint": "F1C45", - "aliases": [ - "invoice-arrow-right-outline", - "invoice-send-outline" - ], - "styles": [ - "arrow", - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "9B57706E-4682-4A41-8E2E-D05601DE5FC4", - "baseIconId": "EEB46F1F-4996-4B65-A1C6-70DC4D38C34E", - "name": "receipt-text-check", - "codepoint": "F1A63", - "aliases": [ - "invoice-check" - ], - "styles": [ - "check", - "variant" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "14E01759-3C9F-42FE-8831-4634FFF35029", - "baseIconId": "EEB46F1F-4996-4B65-A1C6-70DC4D38C34E", - "name": "receipt-text-check-outline", - "codepoint": "F1A64", - "aliases": [ - "invoice-check-outline" - ], - "styles": [ - "check", - "outline", - "variant" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "A71F277A-8855-4E75-A0A9-1201E5384AFA", - "baseIconId": "EEB46F1F-4996-4B65-A1C6-70DC4D38C34E", - "name": "receipt-text-clock", - "codepoint": "F1C46", - "aliases": [ - "invoice-clock", - "invoice-schedule", - "receipt-text-pending" - ], - "styles": [ - "clock" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "8176D192-811A-4765-977D-28CA778B6FED", - "baseIconId": "EEB46F1F-4996-4B65-A1C6-70DC4D38C34E", - "name": "receipt-text-clock-outline", - "codepoint": "F1C47", - "aliases": [ - "invoice-clock-outline", - "invoice-schedule-outline", - "receipt-text-pending" - ], - "styles": [ - "clock", - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "22E18520-2818-4F5F-85CA-6CCEA382D333", - "baseIconId": "EEB46F1F-4996-4B65-A1C6-70DC4D38C34E", - "name": "receipt-text-edit", - "codepoint": "F1C48", - "aliases": [ - "invoice-edit" - ], - "styles": [ - "edit" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "4D213837-3918-4D9E-B4AC-C3CC9EE686FA", - "baseIconId": "EEB46F1F-4996-4B65-A1C6-70DC4D38C34E", - "name": "receipt-text-edit-outline", - "codepoint": "F1C49", - "aliases": [ - "invoice-edit-outline" - ], - "styles": [ - "edit", - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "E923B212-FD3F-40F0-AFD5-1C91F3649E68", - "baseIconId": "EEB46F1F-4996-4B65-A1C6-70DC4D38C34E", - "name": "receipt-text-minus", - "codepoint": "F1A65", - "aliases": [ - "invoice-minus" - ], - "styles": [ - "minus", - "variant" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "0AED24B5-1FC4-4E34-8617-A80675E9B2E4", - "baseIconId": "EEB46F1F-4996-4B65-A1C6-70DC4D38C34E", - "name": "receipt-text-minus-outline", - "codepoint": "F1A66", - "aliases": [ - "invoice-minus-outline" - ], - "styles": [ - "minus", - "outline", - "variant" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "C5A53971-FD74-4C82-8CA6-9C1216713365", - "baseIconId": "EEB46F1F-4996-4B65-A1C6-70DC4D38C34E", - "name": "receipt-text-outline", - "codepoint": "F19DC", - "aliases": [ - "invoice-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "044F6733-211D-496D-B957-F523D80A6F91", - "baseIconId": "EEB46F1F-4996-4B65-A1C6-70DC4D38C34E", - "name": "receipt-text-plus", - "codepoint": "F1A67", - "aliases": [ - "invoice-plus", - "invoice-add", - "receipt-text-add" - ], - "styles": [ - "plus", - "variant" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "E376A548-0B7B-4493-9984-842CFC18A87E", - "baseIconId": "EEB46F1F-4996-4B65-A1C6-70DC4D38C34E", - "name": "receipt-text-plus-outline", - "codepoint": "F1A68", - "aliases": [ - "invoice-plus", - "invoice-add", - "receipt-text-add" - ], - "styles": [ - "outline", - "plus", - "variant" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "66F972AC-ADC8-4583-B358-C5D6FD241316", - "baseIconId": "EEB46F1F-4996-4B65-A1C6-70DC4D38C34E", - "name": "receipt-text-remove", - "codepoint": "F1A69", - "aliases": [ - "invoice-remove" - ], - "styles": [ - "remove", - "variant" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "5FDC843B-FE27-461B-B511-D78947092DF3", - "baseIconId": "EEB46F1F-4996-4B65-A1C6-70DC4D38C34E", - "name": "receipt-text-remove-outline", - "codepoint": "F1A6A", - "aliases": [ - "invoice-remove-outline" - ], - "styles": [ - "outline", - "remove", - "variant" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "A305117A-42D3-4B2A-954E-9BAD0C500751", - "baseIconId": "EEB46F1F-4996-4B65-A1C6-70DC4D38C34E", - "name": "receipt-text-send", - "codepoint": "F1C4A", - "aliases": [], - "styles": [ - "send" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "1B042272-E659-42B1-ABDA-93DC9610463D", - "baseIconId": "EEB46F1F-4996-4B65-A1C6-70DC4D38C34E", - "name": "receipt-text-send-outline", - "codepoint": "F1C4B", - "aliases": [], - "styles": [ - "outline", - "send" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "F84F1E59-868C-42CE-80EA-159588E83462", - "baseIconId": "F84F1E59-868C-42CE-80EA-159588E83462", - "name": "record", - "codepoint": "F044A", - "aliases": [ - "fiber-manual-record" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "4B8F147B-1AE7-4CB5-BAD1-4F6793B79303", - "baseIconId": "4B8F147B-1AE7-4CB5-BAD1-4F6793B79303", - "name": "record-circle", - "codepoint": "F0EC2", - "aliases": [], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [], - "author": "Peter Noble" - }, - { - "id": "E9D05E0B-362E-4D08-A812-D8A6C8D8F0DB", - "baseIconId": "4B8F147B-1AE7-4CB5-BAD1-4F6793B79303", - "name": "record-circle-outline", - "codepoint": "F0EC3", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [], - "author": "Peter Noble" - }, - { - "id": "E62E5C13-5DC0-4881-BBD6-EFDEF13B73BB", - "baseIconId": "E62E5C13-5DC0-4881-BBD6-EFDEF13B73BB", - "name": "record-player", - "codepoint": "F099A", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "8C452244-41D8-46F9-AF74-665F62EF5E50", - "baseIconId": "8C452244-41D8-46F9-AF74-665F62EF5E50", - "name": "record-rec", - "codepoint": "F044B", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "795894B8-2599-4FC8-9B4C-0A0896C6BBB4", - "baseIconId": "795894B8-2599-4FC8-9B4C-0A0896C6BBB4", - "name": "rectangle", - "codepoint": "F0E5E", - "aliases": [], - "styles": [], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Terren" - }, - { - "id": "14FABBBE-A903-4400-AC7A-338B46DA0342", - "baseIconId": "795894B8-2599-4FC8-9B4C-0A0896C6BBB4", - "name": "rectangle-outline", - "codepoint": "F0E5F", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Terren" - }, - { - "id": "93C67522-76EA-4A1D-8C9D-29B0901BE55A", - "baseIconId": "93C67522-76EA-4A1D-8C9D-29B0901BE55A", - "name": "recycle", - "codepoint": "F044C", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "E4222CF9-9449-4325-A296-1E2897AF0720", - "baseIconId": "93C67522-76EA-4A1D-8C9D-29B0901BE55A", - "name": "recycle-variant", - "codepoint": "F139D", - "aliases": [], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [], - "author": "Moma Design Studio" - }, - { - "id": "8CDBB9B4-921B-47CC-9A06-D0F391666654", - "baseIconId": "8CDBB9B4-921B-47CC-9A06-D0F391666654", - "name": "reddit", - "codepoint": "F044D", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Social Media", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "C225AD71-CD53-4F22-8A24-7D055457E5A5", - "baseIconId": "C225AD71-CD53-4F22-8A24-7D055457E5A5", - "name": "redhat", - "codepoint": "F111B", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "7061BAB7-4413-4666-A919-9DD8C4F405F9", - "baseIconId": "7061BAB7-4413-4666-A919-9DD8C4F405F9", - "name": "redo", - "codepoint": "F044E", - "aliases": [ - "arrow" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "72717CF3-6D1D-4032-9799-1F553CAD067E", - "baseIconId": "72717CF3-6D1D-4032-9799-1F553CAD067E", - "name": "redo-variant", - "codepoint": "F044F", - "aliases": [ - "arrow" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "345B3651-D634-4069-8D6F-CB4A2CAD63B9", - "baseIconId": "345B3651-D634-4069-8D6F-CB4A2CAD63B9", - "name": "reflect-horizontal", - "codepoint": "F0A0E", - "aliases": [], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "998E1E1F-98A2-4DA8-9FAD-E31C2677B8D6", - "baseIconId": "998E1E1F-98A2-4DA8-9FAD-E31C2677B8D6", - "name": "reflect-vertical", - "codepoint": "F0A0F", - "aliases": [], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "AD3C7A2B-0B64-4183-9452-C96EAAF3E08E", - "baseIconId": "AD3C7A2B-0B64-4183-9452-C96EAAF3E08E", - "name": "refresh", - "codepoint": "F0450", - "aliases": [ - "loop" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "AD1242A1-160E-4DF0-9E29-15F0A0ECF974", - "baseIconId": "AD1242A1-160E-4DF0-9E29-15F0A0ECF974", - "name": "refresh-auto", - "codepoint": "F18F2", - "aliases": [ - "auto-start", - "automatic-start", - "auto-stop", - "automatic-stop", - "automatic", - "refresh-automatic" - ], - "styles": [], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9D88AEE3-9749-4B74-8F60-2995BD811AAA", - "baseIconId": "AD3C7A2B-0B64-4183-9452-C96EAAF3E08E", - "name": "refresh-circle", - "codepoint": "F1377", - "aliases": [], - "styles": [ - "circle" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "3313CE4A-E2EF-4E46-8110-C0BF297D0C16", - "baseIconId": "3313CE4A-E2EF-4E46-8110-C0BF297D0C16", - "name": "regex", - "codepoint": "F0451", - "aliases": [ - "regular-expression" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Doug C. Hardester" - }, - { - "id": "7FDB507F-A062-479D-8401-AFD4B723BA60", - "baseIconId": "7FDB507F-A062-479D-8401-AFD4B723BA60", - "name": "registered-trademark", - "codepoint": "F0A67", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "DBD21D6F-818C-46D0-860A-89257B1BAB90", - "baseIconId": "DBD21D6F-818C-46D0-860A-89257B1BAB90", - "name": "reiterate", - "codepoint": "F1588", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Nicolas Gres" - }, - { - "id": "FF422947-C9DA-45C1-BEBF-47A450A035CA", - "baseIconId": "FF422947-C9DA-45C1-BEBF-47A450A035CA", - "name": "relation-many-to-many", - "codepoint": "F1496", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "DC16CBA8-F156-4EF8-A18C-56A0DBA8B2D5", - "baseIconId": "DC16CBA8-F156-4EF8-A18C-56A0DBA8B2D5", - "name": "relation-many-to-one", - "codepoint": "F1497", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "A7E9839D-C578-4FE4-ABEB-84FA70BC1926", - "baseIconId": "A7E9839D-C578-4FE4-ABEB-84FA70BC1926", - "name": "relation-many-to-one-or-many", - "codepoint": "F1498", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "2F3ABDAA-9F84-45DC-8913-51EEE0769D13", - "baseIconId": "2F3ABDAA-9F84-45DC-8913-51EEE0769D13", - "name": "relation-many-to-only-one", - "codepoint": "F1499", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "187F026D-5528-4DDB-AEDD-B921AD57DEEF", - "baseIconId": "187F026D-5528-4DDB-AEDD-B921AD57DEEF", - "name": "relation-many-to-zero-or-many", - "codepoint": "F149A", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "0389409A-7A71-49DC-8296-2F38C2A6E7FE", - "baseIconId": "0389409A-7A71-49DC-8296-2F38C2A6E7FE", - "name": "relation-many-to-zero-or-one", - "codepoint": "F149B", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "C3AABB15-5720-463D-B37C-4552C1F4BE34", - "baseIconId": "C3AABB15-5720-463D-B37C-4552C1F4BE34", - "name": "relation-one-or-many-to-many", - "codepoint": "F149C", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "5EABC280-A332-4EA2-A6EE-D5D1E5DE6812", - "baseIconId": "5EABC280-A332-4EA2-A6EE-D5D1E5DE6812", - "name": "relation-one-or-many-to-one", - "codepoint": "F149D", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "F6B51EA0-D90A-4B65-9B0C-8AD08392C943", - "baseIconId": "F6B51EA0-D90A-4B65-9B0C-8AD08392C943", - "name": "relation-one-or-many-to-one-or-many", - "codepoint": "F149E", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "2DC9A1E1-BE10-4643-B02E-7DE27F7F140C", - "baseIconId": "2DC9A1E1-BE10-4643-B02E-7DE27F7F140C", - "name": "relation-one-or-many-to-only-one", - "codepoint": "F149F", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "E19D3A76-6993-4948-8F18-F777E3CA7383", - "baseIconId": "E19D3A76-6993-4948-8F18-F777E3CA7383", - "name": "relation-one-or-many-to-zero-or-many", - "codepoint": "F14A0", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "F7CAF815-B3D6-490B-8AC6-B2FAB8F5134D", - "baseIconId": "F7CAF815-B3D6-490B-8AC6-B2FAB8F5134D", - "name": "relation-one-or-many-to-zero-or-one", - "codepoint": "F14A1", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "9FCECCB1-41CC-4569-9912-58256B627F37", - "baseIconId": "9FCECCB1-41CC-4569-9912-58256B627F37", - "name": "relation-one-to-many", - "codepoint": "F14A2", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "BDF61FAA-2D63-4114-93A8-5E13404E7B03", - "baseIconId": "BDF61FAA-2D63-4114-93A8-5E13404E7B03", - "name": "relation-one-to-one", - "codepoint": "F14A3", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "757670CA-87BA-452B-A0D9-ECBB3EF21AA8", - "baseIconId": "757670CA-87BA-452B-A0D9-ECBB3EF21AA8", - "name": "relation-one-to-one-or-many", - "codepoint": "F14A4", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "56A95C81-F579-4D28-A5E5-32F44CF67BD3", - "baseIconId": "56A95C81-F579-4D28-A5E5-32F44CF67BD3", - "name": "relation-one-to-only-one", - "codepoint": "F14A5", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "0FC49382-3ED0-437F-8522-29C5F5352C30", - "baseIconId": "0FC49382-3ED0-437F-8522-29C5F5352C30", - "name": "relation-one-to-zero-or-many", - "codepoint": "F14A6", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "543B9D69-53A1-4DC3-8074-86123BC0CC70", - "baseIconId": "543B9D69-53A1-4DC3-8074-86123BC0CC70", - "name": "relation-one-to-zero-or-one", - "codepoint": "F14A7", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "55569D10-FC5C-4E3C-8A35-876DCC12D543", - "baseIconId": "55569D10-FC5C-4E3C-8A35-876DCC12D543", - "name": "relation-only-one-to-many", - "codepoint": "F14A8", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "26A310F2-347A-45E5-AD73-1D92443A1827", - "baseIconId": "26A310F2-347A-45E5-AD73-1D92443A1827", - "name": "relation-only-one-to-one", - "codepoint": "F14A9", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "57C9B4B7-CE27-4769-9D2F-50926D1F1A29", - "baseIconId": "57C9B4B7-CE27-4769-9D2F-50926D1F1A29", - "name": "relation-only-one-to-one-or-many", - "codepoint": "F14AA", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "23DF7622-E2D4-45E0-A646-CA10B71EBC10", - "baseIconId": "23DF7622-E2D4-45E0-A646-CA10B71EBC10", - "name": "relation-only-one-to-only-one", - "codepoint": "F14AB", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "53287B7C-9B73-48F6-B558-BBFC529D1D48", - "baseIconId": "53287B7C-9B73-48F6-B558-BBFC529D1D48", - "name": "relation-only-one-to-zero-or-many", - "codepoint": "F14AC", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "F93B3000-FF04-4374-94AB-7E703AE780AD", - "baseIconId": "F93B3000-FF04-4374-94AB-7E703AE780AD", - "name": "relation-only-one-to-zero-or-one", - "codepoint": "F14AD", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "3F67D802-700C-4692-9B30-88129AF5C954", - "baseIconId": "3F67D802-700C-4692-9B30-88129AF5C954", - "name": "relation-zero-or-many-to-many", - "codepoint": "F14AE", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "8884AF49-A6E9-4442-A648-72C365E8B7B8", - "baseIconId": "8884AF49-A6E9-4442-A648-72C365E8B7B8", - "name": "relation-zero-or-many-to-one", - "codepoint": "F14AF", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "DB4A4065-5FCF-4563-A725-7FF82BF05524", - "baseIconId": "DB4A4065-5FCF-4563-A725-7FF82BF05524", - "name": "relation-zero-or-many-to-one-or-many", - "codepoint": "F14B0", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "D5FECDF0-F04F-40DA-A4EE-5F1659883460", - "baseIconId": "D5FECDF0-F04F-40DA-A4EE-5F1659883460", - "name": "relation-zero-or-many-to-only-one", - "codepoint": "F14B1", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "1E86EED5-2458-46D6-8AD0-E14DC65FE7FA", - "baseIconId": "1E86EED5-2458-46D6-8AD0-E14DC65FE7FA", - "name": "relation-zero-or-many-to-zero-or-many", - "codepoint": "F14B2", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "26C96921-576B-42F4-B424-2E3F3FF83346", - "baseIconId": "26C96921-576B-42F4-B424-2E3F3FF83346", - "name": "relation-zero-or-many-to-zero-or-one", - "codepoint": "F14B3", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "C09E5EAE-BC42-480C-842F-EBADFD035886", - "baseIconId": "C09E5EAE-BC42-480C-842F-EBADFD035886", - "name": "relation-zero-or-one-to-many", - "codepoint": "F14B4", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "E262BBDE-079C-4DF6-8C5C-00F9FB3503B5", - "baseIconId": "E262BBDE-079C-4DF6-8C5C-00F9FB3503B5", - "name": "relation-zero-or-one-to-one", - "codepoint": "F14B5", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "4A6CE6A7-7F49-42E3-8EC5-DEA80D1A2559", - "baseIconId": "4A6CE6A7-7F49-42E3-8EC5-DEA80D1A2559", - "name": "relation-zero-or-one-to-one-or-many", - "codepoint": "F14B6", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "78BC5AAC-0D19-49F6-AF3F-523739CA933C", - "baseIconId": "78BC5AAC-0D19-49F6-AF3F-523739CA933C", - "name": "relation-zero-or-one-to-only-one", - "codepoint": "F14B7", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "79676BBB-E83B-4661-AEAB-E3FC622BDD00", - "baseIconId": "79676BBB-E83B-4661-AEAB-E3FC622BDD00", - "name": "relation-zero-or-one-to-zero-or-many", - "codepoint": "F14B8", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "1B446467-7655-425C-A7C1-ED97D7599D80", - "baseIconId": "1B446467-7655-425C-A7C1-ED97D7599D80", - "name": "relation-zero-or-one-to-zero-or-one", - "codepoint": "F14B9", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Michael Richins" - }, - { - "id": "912AD329-9B77-4959-9407-0F64BABFAC7D", - "baseIconId": "912AD329-9B77-4959-9407-0F64BABFAC7D", - "name": "relative-scale", - "codepoint": "F0452", - "aliases": [ - "image-aspect-ratio" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "8E25B2CE-4DAF-4BD1-9D3F-27F86DA55D21", - "baseIconId": "8E25B2CE-4DAF-4BD1-9D3F-27F86DA55D21", - "name": "reload", - "codepoint": "F0453", - "aliases": [ - "car-engine-start", - "loop", - "rotate-clockwise" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Automotive", - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "01D5FD19-E2FA-4BD0-9F6C-ECA058F469F1", - "baseIconId": "8E25B2CE-4DAF-4BD1-9D3F-27F86DA55D21", - "name": "reload-alert", - "codepoint": "F110B", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1BD93F0A-87D1-4B55-A0EF-D9F05A8B3826", - "baseIconId": "1BD93F0A-87D1-4B55-A0EF-D9F05A8B3826", - "name": "reminder", - "codepoint": "F088C", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "49C7BBC2-6C7F-442E-A6EE-B58AB758A8D4", - "baseIconId": "49C7BBC2-6C7F-442E-A6EE-B58AB758A8D4", - "name": "remote", - "codepoint": "F0454", - "aliases": [ - "settings-remote" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "A237199B-0B22-475F-93D1-DB45FA4D3205", - "baseIconId": "A237199B-0B22-475F-93D1-DB45FA4D3205", - "name": "remote-desktop", - "codepoint": "F08B9", - "aliases": [], - "styles": [], - "version": "2.2.43", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "6DC5640C-42D8-45A0-8CEC-B78E045600FE", - "baseIconId": "49C7BBC2-6C7F-442E-A6EE-B58AB758A8D4", - "name": "remote-off", - "codepoint": "F0EC4", - "aliases": [], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [], - "author": "idevo89" - }, - { - "id": "7B245C49-09E7-425A-AFF2-714E9634436E", - "baseIconId": "7B245C49-09E7-425A-AFF2-714E9634436E", - "name": "remote-tv", - "codepoint": "F0EC5", - "aliases": [], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "GreenTurtwig" - }, - { - "id": "D0485B00-63FF-44F5-8DE2-480F970D5ADD", - "baseIconId": "7B245C49-09E7-425A-AFF2-714E9634436E", - "name": "remote-tv-off", - "codepoint": "F0EC6", - "aliases": [], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "idevo89" - }, - { - "id": "43D55245-34B8-4F1B-953A-CCE75AF35866", - "baseIconId": "43D55245-34B8-4F1B-953A-CCE75AF35866", - "name": "rename", - "codepoint": "F1C18", - "aliases": [], - "styles": [], - "version": "7.1.96", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "1DFADA84-47E4-40EF-B1F8-D0A34D1482BA", - "baseIconId": "43D55245-34B8-4F1B-953A-CCE75AF35866", - "name": "rename-box", - "codepoint": "F0455", - "aliases": [], - "styles": [ - "box" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "frankgrinaert" - }, - { - "id": "7EDB6900-E536-4424-96D4-71C36753BE76", - "baseIconId": "43D55245-34B8-4F1B-953A-CCE75AF35866", - "name": "rename-box-outline", - "codepoint": "F1C19", - "aliases": [], - "styles": [ - "box", - "outline" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "1F4744E0-37F4-4D51-82FF-B332A0CCE347", - "baseIconId": "43D55245-34B8-4F1B-953A-CCE75AF35866", - "name": "rename-outline", - "codepoint": "F1C1A", - "aliases": [], - "styles": [ - "outline" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "08CB23B7-EC19-4FE5-9CBB-C308CC89C10B", - "baseIconId": "08CB23B7-EC19-4FE5-9CBB-C308CC89C10B", - "name": "reorder-horizontal", - "codepoint": "F0688", - "aliases": [], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "F189DB12-9323-47A1-89C9-451EF2A886CB", - "baseIconId": "F189DB12-9323-47A1-89C9-451EF2A886CB", - "name": "reorder-vertical", - "codepoint": "F0689", - "aliases": [], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "9AEE0CB7-46B9-414F-A8A8-AFB127CB7057", - "baseIconId": "9AEE0CB7-46B9-414F-A8A8-AFB127CB7057", - "name": "repeat", - "codepoint": "F0456", - "aliases": [ - "repost" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "06540FC6-0AF2-40C7-895A-B8C98BD143D1", - "baseIconId": "9AEE0CB7-46B9-414F-A8A8-AFB127CB7057", - "name": "repeat-off", - "codepoint": "F0457", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "D27E266C-5F69-4E4F-9DE3-65A47B5208F5", - "baseIconId": "9AEE0CB7-46B9-414F-A8A8-AFB127CB7057", - "name": "repeat-once", - "codepoint": "F0458", - "aliases": [ - "repeat-one" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "2788034C-2A06-46C0-82B9-A34CB23C88E0", - "baseIconId": "9AEE0CB7-46B9-414F-A8A8-AFB127CB7057", - "name": "repeat-variant", - "codepoint": "F0547", - "aliases": [ - "twitter-retweet", - "repost" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "A15D2CB0-E938-4894-8BF3-BC6C628E6433", - "baseIconId": "A15D2CB0-E938-4894-8BF3-BC6C628E6433", - "name": "replay", - "codepoint": "F0459", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "CC3BEE2C-0FEA-46D2-BC53-F7D248AAF47C", - "baseIconId": "CC3BEE2C-0FEA-46D2-BC53-F7D248AAF47C", - "name": "reply", - "codepoint": "F045A", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "0BDA0697-946D-4B4C-AD02-2FC6ECA4A528", - "baseIconId": "CC3BEE2C-0FEA-46D2-BC53-F7D248AAF47C", - "name": "reply-all", - "codepoint": "F045B", - "aliases": [], - "styles": [ - "multiple" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "C89953B0-3E41-4F03-B0C3-4ED8F96C1234", - "baseIconId": "CC3BEE2C-0FEA-46D2-BC53-F7D248AAF47C", - "name": "reply-all-outline", - "codepoint": "F0F1F", - "aliases": [], - "styles": [ - "multiple", - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "25084C11-A1EE-4158-BC41-5E80E00E837E", - "baseIconId": "CC3BEE2C-0FEA-46D2-BC53-F7D248AAF47C", - "name": "reply-circle", - "codepoint": "F11AE", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7FBB6798-7E14-45FC-973A-8F4FD184F92A", - "baseIconId": "CC3BEE2C-0FEA-46D2-BC53-F7D248AAF47C", - "name": "reply-outline", - "codepoint": "F0F20", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A522A51F-EE61-473F-97D6-9D5106FD11CA", - "baseIconId": "A522A51F-EE61-473F-97D6-9D5106FD11CA", - "name": "reproduction", - "codepoint": "F045C", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Austin Andrews" - }, - { - "id": "37D62FB9-6BB0-49D6-8C3E-DF75338DD275", - "baseIconId": "37D62FB9-6BB0-49D6-8C3E-DF75338DD275", - "name": "resistor", - "codepoint": "F0B44", - "aliases": [], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [], - "author": "Louistwee" - }, - { - "id": "8DB0A5C4-31AD-42A8-A42E-4690B20D5AA0", - "baseIconId": "37D62FB9-6BB0-49D6-8C3E-DF75338DD275", - "name": "resistor-nodes", - "codepoint": "F0B45", - "aliases": [], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [], - "author": "Louistwee" - }, - { - "id": "5D2EF9DD-38C1-4D2B-A24B-7270C66A6667", - "baseIconId": "5D2EF9DD-38C1-4D2B-A24B-7270C66A6667", - "name": "resize", - "codepoint": "F0A68", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "84916A68-B413-4D71-B4E7-5FD64914B354", - "baseIconId": "84916A68-B413-4D71-B4E7-5FD64914B354", - "name": "resize-bottom-right", - "codepoint": "F045D", - "aliases": [ - "drag" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "0C72C131-779D-460F-A059-B9DF2B79E40C", - "baseIconId": "0C72C131-779D-460F-A059-B9DF2B79E40C", - "name": "responsive", - "codepoint": "F045E", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Gabriel" - }, - { - "id": "15954B5D-3ADA-4B6B-BE15-F95B6A5D4659", - "baseIconId": "15954B5D-3ADA-4B6B-BE15-F95B6A5D4659", - "name": "restart", - "codepoint": "F0709", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "08CBB3AA-B72C-4381-A295-37EC2550AF63", - "baseIconId": "15954B5D-3ADA-4B6B-BE15-F95B6A5D4659", - "name": "restart-alert", - "codepoint": "F110C", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "CE31B2C3-939B-4039-9ADC-797509A68F35", - "baseIconId": "15954B5D-3ADA-4B6B-BE15-F95B6A5D4659", - "name": "restart-off", - "codepoint": "F0D95", - "aliases": [], - "styles": [ - "off" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "FF1CAAB4-2192-442F-88F1-08DEB67E21F0", - "baseIconId": "FF1CAAB4-2192-442F-88F1-08DEB67E21F0", - "name": "restore", - "codepoint": "F099B", - "aliases": [ - "loop", - "rotate-counter-clockwise" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "A9EF3AB2-700F-422A-AE07-0F6C3DB5BDB6", - "baseIconId": "FF1CAAB4-2192-442F-88F1-08DEB67E21F0", - "name": "restore-alert", - "codepoint": "F110D", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "28BCDF41-AA93-4C25-B87A-95A3F5DD8805", - "baseIconId": "28BCDF41-AA93-4C25-B87A-95A3F5DD8805", - "name": "rewind", - "codepoint": "F045F", - "aliases": [ - "fast-rewind" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "3A7C53D9-B7BB-49A7-9393-38F16B0F5D52", - "baseIconId": "3A7C53D9-B7BB-49A7-9393-38F16B0F5D52", - "name": "rewind-10", - "codepoint": "F0D2A", - "aliases": [], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "2DB4A76F-04DC-4E7A-88F0-72C936921B48", - "baseIconId": "2DB4A76F-04DC-4E7A-88F0-72C936921B48", - "name": "rewind-15", - "codepoint": "F1946", - "aliases": [], - "styles": [], - "version": "6.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "21F6D751-0E5A-41F8-980C-2C4385A59CC4", - "baseIconId": "21F6D751-0E5A-41F8-980C-2C4385A59CC4", - "name": "rewind-30", - "codepoint": "F0D96", - "aliases": [], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "6F87706E-D3BC-4789-9274-D80FA47FE5E1", - "baseIconId": "6F87706E-D3BC-4789-9274-D80FA47FE5E1", - "name": "rewind-45", - "codepoint": "F1B13", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "167E7244-A6F8-400E-8CF7-F71B3FAEEEBE", - "baseIconId": "167E7244-A6F8-400E-8CF7-F71B3FAEEEBE", - "name": "rewind-5", - "codepoint": "F11F9", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "7C7A1566-44FB-4A53-AE61-95F5A03F6978", - "baseIconId": "7C7A1566-44FB-4A53-AE61-95F5A03F6978", - "name": "rewind-60", - "codepoint": "F160C", - "aliases": [], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [], - "author": "Terren" - }, - { - "id": "61E83433-F6D1-442D-9EDE-EDEF27AB789D", - "baseIconId": "28BCDF41-AA93-4C25-B87A-95A3F5DD8805", - "name": "rewind-outline", - "codepoint": "F070A", - "aliases": [], - "styles": [ - "outline" - ], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "68CFD178-A6FE-4DB5-9C39-FCA6A3EA83A5", - "baseIconId": "68CFD178-A6FE-4DB5-9C39-FCA6A3EA83A5", - "name": "rhombus", - "codepoint": "F070B", - "aliases": [ - "diamond" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F6FA48B9-85C9-4287-8883-6A549AC290D2", - "baseIconId": "68CFD178-A6FE-4DB5-9C39-FCA6A3EA83A5", - "name": "rhombus-medium", - "codepoint": "F0A10", - "aliases": [], - "styles": [ - "variant" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Michael Irigoyen" - }, - { - "id": "01D071A4-DA5C-4735-A72F-53D0B8EC9EDF", - "baseIconId": "68CFD178-A6FE-4DB5-9C39-FCA6A3EA83A5", - "name": "rhombus-medium-outline", - "codepoint": "F14DC", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Simran" - }, - { - "id": "101A7558-A38E-48E8-93EA-A21F37238E78", - "baseIconId": "68CFD178-A6FE-4DB5-9C39-FCA6A3EA83A5", - "name": "rhombus-outline", - "codepoint": "F070C", - "aliases": [ - "diamond-outline" - ], - "styles": [ - "outline" - ], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A19BB3EC-ED3D-41C6-9088-ACB372959E01", - "baseIconId": "68CFD178-A6FE-4DB5-9C39-FCA6A3EA83A5", - "name": "rhombus-split", - "codepoint": "F0A11", - "aliases": [ - "collection" - ], - "styles": [ - "variant" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E9499838-BF7F-48DB-843A-F98796B0D8BB", - "baseIconId": "68CFD178-A6FE-4DB5-9C39-FCA6A3EA83A5", - "name": "rhombus-split-outline", - "codepoint": "F14DD", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Simran" - }, - { - "id": "1C09CB9B-162B-486B-966C-1FCB18C0F633", - "baseIconId": "1C09CB9B-162B-486B-966C-1FCB18C0F633", - "name": "ribbon", - "codepoint": "F0460", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "B90B4B7C-9FDD-427A-834C-F3DFB5EC1823", - "baseIconId": "B90B4B7C-9FDD-427A-834C-F3DFB5EC1823", - "name": "rice", - "codepoint": "F07EA", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Colton Wiscombe" - }, - { - "id": "5B4966BE-753B-4777-A8D8-B67B3BC57C0D", - "baseIconId": "5B4966BE-753B-4777-A8D8-B67B3BC57C0D", - "name": "rickshaw", - "codepoint": "F15BB", - "aliases": [], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Transportation + Other" - ], - "author": "nilsfast" - }, - { - "id": "8869DCB9-04E3-41B9-B56C-D4BC5CF2DD7A", - "baseIconId": "5B4966BE-753B-4777-A8D8-B67B3BC57C0D", - "name": "rickshaw-electric", - "codepoint": "F15BC", - "aliases": [], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Transportation + Other" - ], - "author": "nilsfast" - }, - { - "id": "7D845AED-5EA2-44C0-8F38-6A2C4E08C8A3", - "baseIconId": "7D845AED-5EA2-44C0-8F38-6A2C4E08C8A3", - "name": "ring", - "codepoint": "F07EB", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "DA8B7A3A-5971-4875-AA0A-ED17E8A69E22", - "baseIconId": "744539B5-EC00-481D-9A78-274A157CF130", - "name": "rivet", - "codepoint": "F0E60", - "aliases": [], - "styles": [], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Simran" - }, - { - "id": "2AA1C93A-17BE-4BB6-A85C-C477A4FF1069", - "baseIconId": "2AA1C93A-17BE-4BB6-A85C-C477A4FF1069", - "name": "road", - "codepoint": "F0461", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Simran" - }, - { - "id": "0BBDD64A-3C67-43DD-9B3A-580E12DDA2D7", - "baseIconId": "2AA1C93A-17BE-4BB6-A85C-C477A4FF1069", - "name": "road-variant", - "codepoint": "F0462", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Austin Andrews" - }, - { - "id": "45B05AE1-4E78-431F-AAB3-669A72AED11E", - "baseIconId": "45B05AE1-4E78-431F-AAB3-669A72AED11E", - "name": "robber", - "codepoint": "F1058", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [], - "author": "Andrew Nenakhov" - }, - { - "id": "EC6C8D3D-0315-4C3A-B37A-97411758DF34", - "baseIconId": "EC6C8D3D-0315-4C3A-B37A-97411758DF34", - "name": "robot", - "codepoint": "F06A9", - "aliases": [ - "emoji-robot", - "emoticon-robot" - ], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "D77B4057-E06B-49B7-BBC7-DD4A7B39BC2A", - "baseIconId": "EC6C8D3D-0315-4C3A-B37A-97411758DF34", - "name": "robot-angry", - "codepoint": "F169D", - "aliases": [ - "emoji-robot-angry", - "emoticon-robot-angry" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "D922E043-E4B6-4FAA-9717-51C1935DD20A", - "baseIconId": "EC6C8D3D-0315-4C3A-B37A-97411758DF34", - "name": "robot-angry-outline", - "codepoint": "F169E", - "aliases": [ - "emoji-robot-angry-outline", - "emoticon-robot-angry-outline" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "535C4A09-5555-45A6-8409-BF12E1CDA2DE", - "baseIconId": "EC6C8D3D-0315-4C3A-B37A-97411758DF34", - "name": "robot-confused", - "codepoint": "F169F", - "aliases": [ - "emoji-robot-confused", - "emoticon-robot-confused" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "8361794A-9B3E-44CA-9AA4-EA842227D7C2", - "baseIconId": "EC6C8D3D-0315-4C3A-B37A-97411758DF34", - "name": "robot-confused-outline", - "codepoint": "F16A0", - "aliases": [ - "emoji-robot-confused-outline", - "emoticon-robot-confused-outline" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "04405E02-7C38-409E-8F92-785431ECC76F", - "baseIconId": "EC6C8D3D-0315-4C3A-B37A-97411758DF34", - "name": "robot-dead", - "codepoint": "F16A1", - "aliases": [ - "emoji-robot-dead", - "emoticon-robot-dead" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "15D146E0-3683-43D8-8500-905EEAC98010", - "baseIconId": "EC6C8D3D-0315-4C3A-B37A-97411758DF34", - "name": "robot-dead-outline", - "codepoint": "F16A2", - "aliases": [ - "emoji-robot-dead-outline", - "emoticon-robot-dead-outline" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "B32D5968-FE0C-46FB-916E-52D0103DA2C7", - "baseIconId": "EC6C8D3D-0315-4C3A-B37A-97411758DF34", - "name": "robot-excited", - "codepoint": "F16A3", - "aliases": [ - "emoticon-robot-excited", - "emoji-robot-excited" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "8013E3FE-34B6-49F3-919B-85A5E0A5873C", - "baseIconId": "EC6C8D3D-0315-4C3A-B37A-97411758DF34", - "name": "robot-excited-outline", - "codepoint": "F16A4", - "aliases": [ - "emoji-robot-excited-outline", - "emoticon-robot-excited-outline" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "6AE4D050-1B64-4AAB-B57B-DD738276E82F", - "baseIconId": "EC6C8D3D-0315-4C3A-B37A-97411758DF34", - "name": "robot-happy", - "codepoint": "F1719", - "aliases": [ - "emoji-robot-happy", - "emoticon-robot-happy" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "62023A79-6DF7-4B3B-BDCA-FEEAE73C9F89", - "baseIconId": "EC6C8D3D-0315-4C3A-B37A-97411758DF34", - "name": "robot-happy-outline", - "codepoint": "F171A", - "aliases": [ - "emoji-robot-happy-outline", - "emoticon-robot-happy-outline" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "C008FBCE-4D0A-4003-8811-FF15D08C3313", - "baseIconId": "C008FBCE-4D0A-4003-8811-FF15D08C3313", - "name": "robot-industrial", - "codepoint": "F0B46", - "aliases": [ - "autonomous", - "assembly" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "318E8495-2191-4315-A58D-77D697743290", - "baseIconId": "C008FBCE-4D0A-4003-8811-FF15D08C3313", - "name": "robot-industrial-outline", - "codepoint": "F1A1A", - "aliases": [], - "styles": [], - "version": "6.6.96", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "2EFA6B95-27BD-4A52-90AF-991A3574FD2C", - "baseIconId": "EC6C8D3D-0315-4C3A-B37A-97411758DF34", - "name": "robot-love", - "codepoint": "F16A5", - "aliases": [ - "emoji-robot-love", - "emoticon-robot-love" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "FA128C47-3C41-4B0D-8F18-8E28E9F3EA0C", - "baseIconId": "EC6C8D3D-0315-4C3A-B37A-97411758DF34", - "name": "robot-love-outline", - "codepoint": "F16A6", - "aliases": [], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "2029DE02-EC25-4242-945F-D7495F35D071", - "baseIconId": "2029DE02-EC25-4242-945F-D7495F35D071", - "name": "robot-mower", - "codepoint": "F11F7", - "aliases": [ - "lawn-mower" - ], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Kristian Mohl" - }, - { - "id": "D40FCE9F-E14E-4F2E-83BD-39704B38E446", - "baseIconId": "2029DE02-EC25-4242-945F-D7495F35D071", - "name": "robot-mower-outline", - "codepoint": "F11F3", - "aliases": [ - "lawn-mower-outline" - ], - "styles": [ - "outline" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Kristian Mohl" - }, - { - "id": "B62D8FF2-AF07-4D20-8C8B-93E585EF6EFB", - "baseIconId": "EC6C8D3D-0315-4C3A-B37A-97411758DF34", - "name": "robot-off", - "codepoint": "F16A7", - "aliases": [ - "emoji-robot-off", - "emoticon-robot-off" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "0BA0757D-0E1F-4484-86AF-7476790AE21C", - "baseIconId": "EC6C8D3D-0315-4C3A-B37A-97411758DF34", - "name": "robot-off-outline", - "codepoint": "F167B", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "C0F3E15B-2DFB-4EAF-B41A-2D18EEA22C25", - "baseIconId": "EC6C8D3D-0315-4C3A-B37A-97411758DF34", - "name": "robot-outline", - "codepoint": "F167A", - "aliases": [ - "emoji-robot-outline", - "emoticon-robot-outline" - ], - "styles": [ - "outline" - ], - "version": "5.7.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "E091C285-7AA8-4907-9398-EBFDAC7A179D", - "baseIconId": "E091C285-7AA8-4907-9398-EBFDAC7A179D", - "name": "robot-vacuum", - "codepoint": "F070D", - "aliases": [ - "roomba" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Device \/ Tech", - "Home Automation" - ], - "author": "Roberto Graham" - }, - { - "id": "05DDCBE1-561A-4961-87F7-CA9BE0C182BE", - "baseIconId": "E091C285-7AA8-4907-9398-EBFDAC7A179D", - "name": "robot-vacuum-alert", - "codepoint": "F1B5D", - "aliases": [ - "robot-vacuum-error" - ], - "styles": [ - "alert" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Alert \/ Error", - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0EF94574-EBEE-40D6-8D73-613C2D108B75", - "baseIconId": "E091C285-7AA8-4907-9398-EBFDAC7A179D", - "name": "robot-vacuum-off", - "codepoint": "F1C01", - "aliases": [], - "styles": [ - "off" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C7938632-FA58-4686-9B82-5E9CCDD0EC83", - "baseIconId": "E091C285-7AA8-4907-9398-EBFDAC7A179D", - "name": "robot-vacuum-variant", - "codepoint": "F0908", - "aliases": [ - "neato" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "DC45B355-D0D4-4616-B1A0-34D22285FE1F", - "baseIconId": "E091C285-7AA8-4907-9398-EBFDAC7A179D", - "name": "robot-vacuum-variant-alert", - "codepoint": "F1B5E", - "aliases": [ - "robot-vacuum-variant-error" - ], - "styles": [ - "alert", - "variant" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Alert \/ Error", - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "03508026-E2C8-4A8F-A13E-9D685EF26E14", - "baseIconId": "E091C285-7AA8-4907-9398-EBFDAC7A179D", - "name": "robot-vacuum-variant-off", - "codepoint": "F1C02", - "aliases": [], - "styles": [ - "off", - "variant" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "96BE0E43-42AB-4F93-8045-0C7B61BF69CC", - "baseIconId": "96BE0E43-42AB-4F93-8045-0C7B61BF69CC", - "name": "rocket", - "codepoint": "F0463", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Flying", - "Science" - ], - "author": "Google" - }, - { - "id": "E2791217-9CAB-41CA-9899-9BD0964B4DF9", - "baseIconId": "96BE0E43-42AB-4F93-8045-0C7B61BF69CC", - "name": "rocket-launch", - "codepoint": "F14DE", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Science", - "Transportation + Flying" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F6DA21B8-C4AD-48D1-9F97-9A59F721956B", - "baseIconId": "96BE0E43-42AB-4F93-8045-0C7B61BF69CC", - "name": "rocket-launch-outline", - "codepoint": "F14DF", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Science", - "Transportation + Flying" - ], - "author": "Michael Irigoyen" - }, - { - "id": "934FA95E-C5B3-4A5E-B99D-85B0E65CBDBA", - "baseIconId": "96BE0E43-42AB-4F93-8045-0C7B61BF69CC", - "name": "rocket-outline", - "codepoint": "F13AF", - "aliases": [], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [ - "Science", - "Transportation + Flying" - ], - "author": "Google" - }, - { - "id": "AA8B7EA9-2DB2-4591-94E0-A457373E64C1", - "baseIconId": "AA8B7EA9-2DB2-4591-94E0-A457373E64C1", - "name": "rodent", - "codepoint": "F1327", - "aliases": [ - "mouse", - "rat" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Google" - }, - { - "id": "223BB690-0799-4F91-A756-5425358A7C4D", - "baseIconId": "223BB690-0799-4F91-A756-5425358A7C4D", - "name": "roller-shade", - "codepoint": "F1A6B", - "aliases": [ - "blinds-open", - "window-open" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "796C645E-B8C8-4898-AE15-981077DEC280", - "baseIconId": "223BB690-0799-4F91-A756-5425358A7C4D", - "name": "roller-shade-closed", - "codepoint": "F1A6C", - "aliases": [ - "blinds-closed", - "window-closed" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "6EFB213D-87A6-454A-AB37-AB87CE853E4B", - "baseIconId": "6EFB213D-87A6-454A-AB37-AB87CE853E4B", - "name": "roller-skate", - "codepoint": "F0D2B", - "aliases": [], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A6387660-7DB0-41DC-9ECF-EBBA5A78FC82", - "baseIconId": "6EFB213D-87A6-454A-AB37-AB87CE853E4B", - "name": "roller-skate-off", - "codepoint": "F0145", - "aliases": [], - "styles": [ - "off" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Michael Irigoyen" - }, - { - "id": "366C920F-6DC6-46FF-94C6-44A8D22A7D1D", - "baseIconId": "6EFB213D-87A6-454A-AB37-AB87CE853E4B", - "name": "rollerblade", - "codepoint": "F0D2C", - "aliases": [], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Michael Irigoyen" - }, - { - "id": "BC1934AD-28E6-4E7C-8C7E-1557CE482CCB", - "baseIconId": "366C920F-6DC6-46FF-94C6-44A8D22A7D1D", - "name": "rollerblade-off", - "codepoint": "F002E", - "aliases": [], - "styles": [ - "off" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9BBAB3C0-02B2-436A-94C8-0EBD388289D8", - "baseIconId": "9BBAB3C0-02B2-436A-94C8-0EBD388289D8", - "name": "rollupjs", - "codepoint": "F0BC0", - "aliases": [ - "rollup-js" - ], - "styles": [], - "version": "3.0.39", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Developer \/ Languages" - ], - "author": "Contributors" - }, - { - "id": "19AA4DCD-7270-48A6-ADB1-819098F2250A", - "baseIconId": "19AA4DCD-7270-48A6-ADB1-819098F2250A", - "name": "rolodex", - "codepoint": "F1AB9", - "aliases": [], - "styles": [], - "version": "6.8.96", - "deprecated": false, - "tags": [], - "author": "arnoldlepineux" - }, - { - "id": "A00CFDF9-821F-4F98-9767-22163517ED0F", - "baseIconId": "19AA4DCD-7270-48A6-ADB1-819098F2250A", - "name": "rolodex-outline", - "codepoint": "F1ABA", - "aliases": [], - "styles": [], - "version": "6.8.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "7E900912-C3AE-4D82-BCF0-1162ACC7EB15", - "baseIconId": "7E900912-C3AE-4D82-BCF0-1162ACC7EB15", - "name": "roman-numeral-1", - "codepoint": "F1088", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "76685845-20ED-49A8-A8ED-EA967F25B5CF", - "baseIconId": "76685845-20ED-49A8-A8ED-EA967F25B5CF", - "name": "roman-numeral-10", - "codepoint": "F1091", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "4C14E293-1951-4481-9ECC-3D868B764444", - "baseIconId": "4C14E293-1951-4481-9ECC-3D868B764444", - "name": "roman-numeral-2", - "codepoint": "F1089", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Michael Irigoyen" - }, - { - "id": "6594655A-5BB0-43B5-B3BD-CF04D4B59562", - "baseIconId": "6594655A-5BB0-43B5-B3BD-CF04D4B59562", - "name": "roman-numeral-3", - "codepoint": "F108A", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9D572A82-B0D2-4961-B467-32AD78FF551C", - "baseIconId": "9D572A82-B0D2-4961-B467-32AD78FF551C", - "name": "roman-numeral-4", - "codepoint": "F108B", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Michael Irigoyen" - }, - { - "id": "EF5F2939-4E4A-4688-B7F5-DD6BC5C14CD1", - "baseIconId": "EF5F2939-4E4A-4688-B7F5-DD6BC5C14CD1", - "name": "roman-numeral-5", - "codepoint": "F108C", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Contributors" - }, - { - "id": "8E746FAF-3C9D-48B9-8378-A73EAB7C69F4", - "baseIconId": "8E746FAF-3C9D-48B9-8378-A73EAB7C69F4", - "name": "roman-numeral-6", - "codepoint": "F108D", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D725A70F-2F5D-43B1-99B5-A70220CCAD7A", - "baseIconId": "D725A70F-2F5D-43B1-99B5-A70220CCAD7A", - "name": "roman-numeral-7", - "codepoint": "F108E", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Michael Irigoyen" - }, - { - "id": "CD729113-BA16-44AE-A012-D8C5BE2D2D7F", - "baseIconId": "CD729113-BA16-44AE-A012-D8C5BE2D2D7F", - "name": "roman-numeral-8", - "codepoint": "F108F", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A53BFEB9-4F94-42AA-928D-0A0A28A44FD9", - "baseIconId": "A53BFEB9-4F94-42AA-928D-0A0A28A44FD9", - "name": "roman-numeral-9", - "codepoint": "F1090", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C525BD2B-2BA8-4158-AC0A-FAEE9E353047", - "baseIconId": "C525BD2B-2BA8-4158-AC0A-FAEE9E353047", - "name": "room-service", - "codepoint": "F088D", - "aliases": [ - "call-bell" - ], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "A94493FF-30FD-4490-8ABC-F6F03F958D17", - "baseIconId": "C525BD2B-2BA8-4158-AC0A-FAEE9E353047", - "name": "room-service-outline", - "codepoint": "F0D97", - "aliases": [ - "call-bell-outline" - ], - "styles": [ - "outline" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "38F235DA-809D-4F32-B88E-870A02826E75", - "baseIconId": "38F235DA-809D-4F32-B88E-870A02826E75", - "name": "rotate-360", - "codepoint": "F1999", - "aliases": [], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "E288FD83-7397-4DF3-BAB8-DF7094955B83", - "baseIconId": "E288FD83-7397-4DF3-BAB8-DF7094955B83", - "name": "rotate-3d", - "codepoint": "F0EC7", - "aliases": [], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "D09D0551-14A0-470B-A24C-0AC38F739FFA", - "baseIconId": "E288FD83-7397-4DF3-BAB8-DF7094955B83", - "name": "rotate-3d-variant", - "codepoint": "F0464", - "aliases": [ - "3d-rotation" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "1E960D83-0632-47D2-8CC9-D8A137887BAB", - "baseIconId": "1E960D83-0632-47D2-8CC9-D8A137887BAB", - "name": "rotate-left", - "codepoint": "F0465", - "aliases": [ - "arrow-rotate-left" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "CC6E0E23-9F7B-40F5-B00F-0690A5F7B400", - "baseIconId": "CC6E0E23-9F7B-40F5-B00F-0690A5F7B400", - "name": "rotate-left-variant", - "codepoint": "F0466", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "41DBDBBC-7E7A-4E2A-A7E9-A22707957334", - "baseIconId": "41DBDBBC-7E7A-4E2A-A7E9-A22707957334", - "name": "rotate-orbit", - "codepoint": "F0D98", - "aliases": [ - "gyro", - "accelerometer" - ], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "5324E881-FACF-4CAC-9118-FD963EDCDD27", - "baseIconId": "5324E881-FACF-4CAC-9118-FD963EDCDD27", - "name": "rotate-right", - "codepoint": "F0467", - "aliases": [ - "arrow-rotate-right" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "02105B39-715B-4989-93DC-1DDC338A4552", - "baseIconId": "02105B39-715B-4989-93DC-1DDC338A4552", - "name": "rotate-right-variant", - "codepoint": "F0468", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "FEBD153A-F07E-4329-A727-D75F13F3133D", - "baseIconId": "FEBD153A-F07E-4329-A727-D75F13F3133D", - "name": "rounded-corner", - "codepoint": "F0607", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "7D8AE8B4-4A72-45DE-9EA7-B4B6502C0FDD", - "baseIconId": "7D8AE8B4-4A72-45DE-9EA7-B4B6502C0FDD", - "name": "router", - "codepoint": "F11E2", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [], - "author": "sergiocarlotto" - }, - { - "id": "8CCE5060-8983-4F75-B672-32B7599F1082", - "baseIconId": "8CCE5060-8983-4F75-B672-32B7599F1082", - "name": "router-network", - "codepoint": "F1087", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "331F3E71-198F-4A8D-95B2-EA348B4F55C3", - "baseIconId": "8CCE5060-8983-4F75-B672-32B7599F1082", - "name": "router-network-wireless", - "codepoint": "F1C97", - "aliases": [ - "wireless-router" - ], - "styles": [ - "network" - ], - "version": "7.3.96", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "Michael Richins" - }, - { - "id": "3244EAC8-8349-4CFB-BE35-A0812368CEDA", - "baseIconId": "3244EAC8-8349-4CFB-BE35-A0812368CEDA", - "name": "router-wireless", - "codepoint": "F0469", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "E6CF3E53-C5EF-48AF-BA3B-AD339E6A3FA3", - "baseIconId": "3244EAC8-8349-4CFB-BE35-A0812368CEDA", - "name": "router-wireless-off", - "codepoint": "F15A3", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "3881E4FA-15D1-4051-991C-B4B4F0791576", - "baseIconId": "3244EAC8-8349-4CFB-BE35-A0812368CEDA", - "name": "router-wireless-settings", - "codepoint": "F0A69", - "aliases": [], - "styles": [ - "settings" - ], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Google" - }, - { - "id": "4E7234E7-AB5F-491D-BA6F-674B3BAD9027", - "baseIconId": "4E7234E7-AB5F-491D-BA6F-674B3BAD9027", - "name": "routes", - "codepoint": "F046A", - "aliases": [ - "sign-routes" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "70E2EE84-23BF-4C5A-9AE7-06D1156042CA", - "baseIconId": "4E7234E7-AB5F-491D-BA6F-674B3BAD9027", - "name": "routes-clock", - "codepoint": "F1059", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "72F11BA0-1557-4500-8235-2E3F2346FE69", - "baseIconId": "72F11BA0-1557-4500-8235-2E3F2346FE69", - "name": "rowing", - "codepoint": "F0608", - "aliases": [ - "human-rowing" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Sport", - "Transportation + Water", - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "9E877D76-9BC5-496D-99E4-1E6029DE1B4D", - "baseIconId": "9E877D76-9BC5-496D-99E4-1E6029DE1B4D", - "name": "rss", - "codepoint": "F046B", - "aliases": [ - "rss-feed" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "649343BD-3C91-43EA-9000-AE10520CAA2D", - "baseIconId": "9E877D76-9BC5-496D-99E4-1E6029DE1B4D", - "name": "rss-box", - "codepoint": "F046C", - "aliases": [ - "rss-feed-box" - ], - "styles": [ - "box" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Gabriel" - }, - { - "id": "45AA2B72-8538-41CB-BAD4-20C43E40D21C", - "baseIconId": "9E877D76-9BC5-496D-99E4-1E6029DE1B4D", - "name": "rss-off", - "codepoint": "F0F21", - "aliases": [], - "styles": [ - "off" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "C43D28FD-C647-41B4-A710-E8FFE81D8EAF", - "baseIconId": "C43D28FD-C647-41B4-A710-E8FFE81D8EAF", - "name": "rug", - "codepoint": "F1475", - "aliases": [ - "carpet" - ], - "styles": [], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "19489FCE-DD25-4670-BC6F-4FC3AF1E66D3", - "baseIconId": "19489FCE-DD25-4670-BC6F-4FC3AF1E66D3", - "name": "rugby", - "codepoint": "F0D99", - "aliases": [ - "rugby-ball" - ], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Google" - }, - { - "id": "66A2EA92-0743-4740-B3F2-254C38E9027F", - "baseIconId": "66A2EA92-0743-4740-B3F2-254C38E9027F", - "name": "ruler", - "codepoint": "F046D", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Hardware \/ Tools", - "Drawing \/ Art" - ], - "author": "Austin Andrews" - }, - { - "id": "A94D1ED1-576F-4E2C-B165-ABAD797E8192", - "baseIconId": "66A2EA92-0743-4740-B3F2-254C38E9027F", - "name": "ruler-square", - "codepoint": "F0CC2", - "aliases": [ - "square", - "carpentry", - "architecture" - ], - "styles": [ - "variant" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Hardware \/ Tools", - "Drawing \/ Art" - ], - "author": "Michael Richins" - }, - { - "id": "2E24CF4F-2EC9-46C2-ABB9-341869D562EE", - "baseIconId": "2E24CF4F-2EC9-46C2-ABB9-341869D562EE", - "name": "ruler-square-compass", - "codepoint": "F0EBE", - "aliases": [ - "mason", - "masonic", - "freemasonry" - ], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Michael Richins" - }, - { - "id": "2A869029-60EB-4965-9BE4-9B3DB964C707", - "baseIconId": "2A869029-60EB-4965-9BE4-9B3DB964C707", - "name": "run", - "codepoint": "F070E", - "aliases": [ - "directions-run", - "human-run" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Sport", - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "D541EB73-227A-419B-A5F7-7242EB02D916", - "baseIconId": "2A869029-60EB-4965-9BE4-9B3DB964C707", - "name": "run-fast", - "codepoint": "F046E", - "aliases": [ - "velocity", - "human-run-fast" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation", - "Sport", - "People \/ Family" - ], - "author": "Austin Andrews" - }, - { - "id": "43C3E250-2842-4973-8D19-CA1E48BCF61C", - "baseIconId": "CB49A868-3317-4445-BFED-13CB6533000E", - "name": "rv-truck", - "codepoint": "F11D4", - "aliases": [ - "recreational-vehicle", - "campervan" - ], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Michael Richins" - }, - { - "id": "025FEA9C-17F9-4293-BD59-A8D53B7B4124", - "baseIconId": "025FEA9C-17F9-4293-BD59-A8D53B7B4124", - "name": "sack", - "codepoint": "F0D2E", - "aliases": [], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "961ADDC5-B7FC-4CB8-8AD7-5F6293C5A973", - "baseIconId": "025FEA9C-17F9-4293-BD59-A8D53B7B4124", - "name": "sack-outline", - "codepoint": "F1C4C", - "aliases": [], - "styles": [ - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "9DA8E933-0065-43E6-9416-0EAA104BEF6F", - "baseIconId": "025FEA9C-17F9-4293-BD59-A8D53B7B4124", - "name": "sack-percent", - "codepoint": "F0D2F", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "013E121E-A100-48D2-941B-854832E70793", - "baseIconId": "013E121E-A100-48D2-941B-854832E70793", - "name": "safe", - "codepoint": "F0A6A", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "GreenTurtwig" - }, - { - "id": "B12FE612-BEB7-45A2-BB7D-B04C6F33AE1B", - "baseIconId": "013E121E-A100-48D2-941B-854832E70793", - "name": "safe-square", - "codepoint": "F127C", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Yaroslav Bandura" - }, - { - "id": "6F471894-793E-4F7F-848D-CE2AA2F4C67D", - "baseIconId": "013E121E-A100-48D2-941B-854832E70793", - "name": "safe-square-outline", - "codepoint": "F127D", - "aliases": [], - "styles": [ - "outline" - ], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Yaroslav Bandura" - }, - { - "id": "438888DA-342B-4861-95EA-026A3F4E2F95", - "baseIconId": "438888DA-342B-4861-95EA-026A3F4E2F95", - "name": "safety-goggles", - "codepoint": "F0D30", - "aliases": [ - "safety-glasses" - ], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F1921E38-A25D-41F6-94B6-B6D01C3E0593", - "baseIconId": "F1921E38-A25D-41F6-94B6-B6D01C3E0593", - "name": "sail-boat", - "codepoint": "F0EC8", - "aliases": [ - "sailing", - "boat" - ], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Sport", - "Transportation + Water" - ], - "author": "Google" - }, - { - "id": "BEF26F95-E584-4585-BBD7-3766740FBEBD", - "baseIconId": "F1921E38-A25D-41F6-94B6-B6D01C3E0593", - "name": "sail-boat-sink", - "codepoint": "F1AEF", - "aliases": [ - "sail-boat-crash", - "sail-boat-wreck" - ], - "styles": [ - "variant" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Transportation + Water" - ], - "author": "Michael Irigoyen" - }, - { - "id": "688543EC-EC01-474C-883C-C2EA2EDE75BF", - "baseIconId": "688543EC-EC01-474C-883C-C2EA2EDE75BF", - "name": "sale", - "codepoint": "F046F", - "aliases": [ - "discount" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Simran" - }, - { - "id": "EC5767A6-FA73-4A93-AA73-3EE66CB7374B", - "baseIconId": "688543EC-EC01-474C-883C-C2EA2EDE75BF", - "name": "sale-outline", - "codepoint": "F1A06", - "aliases": [ - "discount-outline" - ], - "styles": [ - "outline" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Austin Andrews" - }, - { - "id": "D7963D7C-396F-45DB-A5D7-AA18AE32FE53", - "baseIconId": "D7963D7C-396F-45DB-A5D7-AA18AE32FE53", - "name": "salesforce", - "codepoint": "F088E", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "2AFE6E3E-61AB-48D2-A333-E5324AD534CD", - "baseIconId": "2AFE6E3E-61AB-48D2-A333-E5324AD534CD", - "name": "sass", - "codepoint": "F07EC", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Developer \/ Languages" - ], - "author": "Contributors" - }, - { - "id": "D77BED79-19CC-45A9-9940-5EB621E95C11", - "baseIconId": "D77BED79-19CC-45A9-9940-5EB621E95C11", - "name": "satellite", - "codepoint": "F0470", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "9627DDC0-A33C-4B0E-A14F-915809E377AA", - "baseIconId": "9627DDC0-A33C-4B0E-A14F-915809E377AA", - "name": "satellite-uplink", - "codepoint": "F0909", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "3945E491-7E92-4A9F-BD2A-C436200B3716", - "baseIconId": "3945E491-7E92-4A9F-BD2A-C436200B3716", - "name": "satellite-variant", - "codepoint": "F0471", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "191AE0C8-5DBD-4B51-8D52-2872CA89E376", - "baseIconId": "191AE0C8-5DBD-4B51-8D52-2872CA89E376", - "name": "sausage", - "codepoint": "F08BA", - "aliases": [], - "styles": [], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Nick" - }, - { - "id": "AA9C348E-83F3-4EC8-87D5-0E7C8BAAA2DB", - "baseIconId": "191AE0C8-5DBD-4B51-8D52-2872CA89E376", - "name": "sausage-off", - "codepoint": "F1789", - "aliases": [], - "styles": [ - "off" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "SvenVdv" - }, - { - "id": "65F29350-AC15-4F53-B3D0-B7304BA8791A", - "baseIconId": "65F29350-AC15-4F53-B3D0-B7304BA8791A", - "name": "saw-blade", - "codepoint": "F0E61", - "aliases": [], - "styles": [], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2C8473E2-22E8-4E6E-B929-99D2FCE9937B", - "baseIconId": "2C8473E2-22E8-4E6E-B929-99D2FCE9937B", - "name": "sawtooth-wave", - "codepoint": "F147A", - "aliases": [], - "styles": [], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Audio" - ], - "author": "Haley Halcyon" - }, - { - "id": "64F494E1-5B39-488D-B46E-0FC1B9567478", - "baseIconId": "64F494E1-5B39-488D-B46E-0FC1B9567478", - "name": "saxophone", - "codepoint": "F0609", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Google" - }, - { - "id": "3FE1D769-A292-44DB-BB8A-E60F3A020D2A", - "baseIconId": "3FE1D769-A292-44DB-BB8A-E60F3A020D2A", - "name": "scale", - "codepoint": "F0472", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "82048BA4-F949-4572-B59B-23197F9B36D6", - "baseIconId": "82048BA4-F949-4572-B59B-23197F9B36D6", - "name": "scale-balance", - "codepoint": "F05D1", - "aliases": [ - "justice", - "legal" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Simran" - }, - { - "id": "F4501EC3-6AB0-4A69-B840-F07DDFC45A19", - "baseIconId": "F4501EC3-6AB0-4A69-B840-F07DDFC45A19", - "name": "scale-bathroom", - "codepoint": "F0473", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation", - "Medical \/ Hospital" - ], - "author": "Austin Andrews" - }, - { - "id": "69824E77-BE70-49EB-9F26-C06042E86F1D", - "baseIconId": "3FE1D769-A292-44DB-BB8A-E60F3A020D2A", - "name": "scale-off", - "codepoint": "F105A", - "aliases": [], - "styles": [ - "off" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Michael Richins" - }, - { - "id": "18C68B6F-89AD-4F9D-B0AF-AF6185C86AD6", - "baseIconId": "82048BA4-F949-4572-B59B-23197F9B36D6", - "name": "scale-unbalanced", - "codepoint": "F19B8", - "aliases": [], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "C74BA4DC-A838-471E-AA2D-A5C2D0B74BF3", - "baseIconId": "C74BA4DC-A838-471E-AA2D-A5C2D0B74BF3", - "name": "scan-helper", - "codepoint": "F13D8", - "aliases": [], - "styles": [], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Peter Noble" - }, - { - "id": "BE9A1BD3-1DF7-407F-98B7-24070994D472", - "baseIconId": "BE9A1BD3-1DF7-407F-98B7-24070994D472", - "name": "scanner", - "codepoint": "F06AB", - "aliases": [], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "Google" - }, - { - "id": "B2E1C852-B55A-40D0-969B-0CD7389660A4", - "baseIconId": "BE9A1BD3-1DF7-407F-98B7-24070994D472", - "name": "scanner-off", - "codepoint": "F090A", - "aliases": [], - "styles": [ - "off" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "GreenTurtwig" - }, - { - "id": "5DE8E9D7-420A-43BE-AF94-B1364BC46D41", - "baseIconId": "5DE8E9D7-420A-43BE-AF94-B1364BC46D41", - "name": "scatter-plot", - "codepoint": "F0EC9", - "aliases": [], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "C438C63A-0E60-4EA8-B795-EE6D329253F1", - "baseIconId": "5DE8E9D7-420A-43BE-AF94-B1364BC46D41", - "name": "scatter-plot-outline", - "codepoint": "F0ECA", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "B473C27C-5557-4B1F-89F1-46DC7700E73A", - "baseIconId": "B473C27C-5557-4B1F-89F1-46DC7700E73A", - "name": "scent", - "codepoint": "F1958", - "aliases": [ - "aroma", - "fragrance", - "smell", - "odor" - ], - "styles": [], - "version": "6.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "2263B3A2-8BC3-4E1B-B86F-46E9E7CAA92A", - "baseIconId": "B473C27C-5557-4B1F-89F1-46DC7700E73A", - "name": "scent-off", - "codepoint": "F1959", - "aliases": [ - "aroma-off", - "smell-off", - "fragrance-off", - "odor-off" - ], - "styles": [ - "off" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "A671C11E-0A75-4F41-AA32-EAA99955DEDE", - "baseIconId": "A671C11E-0A75-4F41-AA32-EAA99955DEDE", - "name": "school", - "codepoint": "F0474", - "aliases": [ - "graduation-cap", - "university", - "college", - "academic-cap", - "education", - "learn" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "282BA7AF-AFFD-491F-BA34-8DFD88378AFF", - "baseIconId": "A671C11E-0A75-4F41-AA32-EAA99955DEDE", - "name": "school-outline", - "codepoint": "F1180", - "aliases": [ - "academic-cap-outline", - "college-outline", - "graduation-cap-outline", - "university-outline", - "education-outline", - "learn-outline" - ], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "D5D8FF62-F955-4DB5-8EC3-1C314F401ECD", - "baseIconId": "D5D8FF62-F955-4DB5-8EC3-1C314F401ECD", - "name": "scissors-cutting", - "codepoint": "F0A6B", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "0299DD49-341B-4979-91A9-FB3BF6AEFB87", - "baseIconId": "0299DD49-341B-4979-91A9-FB3BF6AEFB87", - "name": "scooter", - "codepoint": "F15BD", - "aliases": [], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Google" - }, - { - "id": "09653048-04BF-4EDE-A6F5-7DAAE4157D21", - "baseIconId": "0299DD49-341B-4979-91A9-FB3BF6AEFB87", - "name": "scooter-electric", - "codepoint": "F15BE", - "aliases": [], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Google" - }, - { - "id": "C20508AC-CC67-48DF-9B05-72DE40E417AF", - "baseIconId": "C20508AC-CC67-48DF-9B05-72DE40E417AF", - "name": "scoreboard", - "codepoint": "F127E", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Yaroslav Bandura" - }, - { - "id": "3E4214BB-1283-436F-A658-7F6015745C88", - "baseIconId": "C20508AC-CC67-48DF-9B05-72DE40E417AF", - "name": "scoreboard-outline", - "codepoint": "F127F", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Yaroslav Bandura" - }, - { - "id": "913EA106-BCB3-410B-A5F4-6FAAA1B79880", - "baseIconId": "913EA106-BCB3-410B-A5F4-6FAAA1B79880", - "name": "screen-rotation", - "codepoint": "F0475", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "0C15E49D-5D29-4A3D-803B-0B9695295E04", - "baseIconId": "913EA106-BCB3-410B-A5F4-6FAAA1B79880", - "name": "screen-rotation-lock", - "codepoint": "F0478", - "aliases": [ - "screen-lock-rotation" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Google" - }, - { - "id": "744539B5-EC00-481D-9A78-274A157CF130", - "baseIconId": "744539B5-EC00-481D-9A78-274A157CF130", - "name": "screw-flat-top", - "codepoint": "F0DF3", - "aliases": [], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Michael Irigoyen" - }, - { - "id": "34D5E55D-131E-4EB2-9053-53B10F6F40D5", - "baseIconId": "744539B5-EC00-481D-9A78-274A157CF130", - "name": "screw-lag", - "codepoint": "F0DF4", - "aliases": [], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Michael Irigoyen" - }, - { - "id": "AD403C97-C12B-4590-A156-EEF43629F655", - "baseIconId": "744539B5-EC00-481D-9A78-274A157CF130", - "name": "screw-machine-flat-top", - "codepoint": "F0DF5", - "aliases": [], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C19DAE9D-F5EE-4968-99AD-7F1C55B6ACB4", - "baseIconId": "744539B5-EC00-481D-9A78-274A157CF130", - "name": "screw-machine-round-top", - "codepoint": "F0DF6", - "aliases": [], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Michael Irigoyen" - }, - { - "id": "AC9042F5-C2D0-4C97-AA6E-C364026950B0", - "baseIconId": "744539B5-EC00-481D-9A78-274A157CF130", - "name": "screw-round-top", - "codepoint": "F0DF7", - "aliases": [], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2F75C2DC-FAAD-4D59-BAAB-3922EF9AF376", - "baseIconId": "2F75C2DC-FAAD-4D59-BAAB-3922EF9AF376", - "name": "screwdriver", - "codepoint": "F0476", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Simran" - }, - { - "id": "89D63ACC-0EB2-4C0C-BAFF-65846D32B937", - "baseIconId": "89D63ACC-0EB2-4C0C-BAFF-65846D32B937", - "name": "script", - "codepoint": "F0BC1", - "aliases": [ - "scroll" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "6E18A0EA-1F19-47E3-83DD-25732C1D318D", - "baseIconId": "89D63ACC-0EB2-4C0C-BAFF-65846D32B937", - "name": "script-outline", - "codepoint": "F0477", - "aliases": [ - "scroll-outline" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "100A6987-09AC-4A60-B6D6-E9DA1E4FCBCE", - "baseIconId": "89D63ACC-0EB2-4C0C-BAFF-65846D32B937", - "name": "script-text", - "codepoint": "F0BC2", - "aliases": [ - "scroll-text" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2789A595-8195-448F-BD8A-2FB71B712BD8", - "baseIconId": "89D63ACC-0EB2-4C0C-BAFF-65846D32B937", - "name": "script-text-key", - "codepoint": "F1725", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "Claire Casaregola" - }, - { - "id": "1343F1A4-86DB-432D-BE9D-F3EFEB1321F8", - "baseIconId": "89D63ACC-0EB2-4C0C-BAFF-65846D32B937", - "name": "script-text-key-outline", - "codepoint": "F1726", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "DF9F9175-8E37-4241-8AFD-360606A444A5", - "baseIconId": "89D63ACC-0EB2-4C0C-BAFF-65846D32B937", - "name": "script-text-outline", - "codepoint": "F0BC3", - "aliases": [ - "scroll-text-outline" - ], - "styles": [ - "outline" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "0F931BB6-3336-430E-85C2-9EDEDCC4E9B4", - "baseIconId": "89D63ACC-0EB2-4C0C-BAFF-65846D32B937", - "name": "script-text-play", - "codepoint": "F1727", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "Claire Casaregola" - }, - { - "id": "7357F674-281E-49F1-8161-424877AC6DD3", - "baseIconId": "89D63ACC-0EB2-4C0C-BAFF-65846D32B937", - "name": "script-text-play-outline", - "codepoint": "F1728", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "68B68EDB-6CDA-4488-A213-5E6DF4146EA6", - "baseIconId": "68B68EDB-6CDA-4488-A213-5E6DF4146EA6", - "name": "sd", - "codepoint": "F0479", - "aliases": [ - "sd-card", - "sd-storage" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "82C413A0-A055-4527-87B7-F977B6CD3F74", - "baseIconId": "82C413A0-A055-4527-87B7-F977B6CD3F74", - "name": "seal", - "codepoint": "F047A", - "aliases": [ - "ribbon", - "prize", - "award" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "9B878309-6513-4C41-B2F5-B69D24F6024B", - "baseIconId": "82C413A0-A055-4527-87B7-F977B6CD3F74", - "name": "seal-variant", - "codepoint": "F0FD9", - "aliases": [ - "ribbon", - "prize", - "award" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [], - "author": "Tarilonte" - }, - { - "id": "F6E7F332-1625-4A46-8E10-B6DEC4059E7E", - "baseIconId": "F6E7F332-1625-4A46-8E10-B6DEC4059E7E", - "name": "search-web", - "codepoint": "F070F", - "aliases": [ - "search-globe", - "global-search", - "internet-search" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "C9A796D6-1A7D-47AD-A036-B3B9035FBDA3", - "baseIconId": "C9A796D6-1A7D-47AD-A036-B3B9035FBDA3", - "name": "seat", - "codepoint": "F0CC3", - "aliases": [ - "event-seat", - "chair", - "chair-accent", - "home-theater", - "home-theatre" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "FDDF112E-DFF5-4D31-9821-69902F92E6CF", - "baseIconId": "FDDF112E-DFF5-4D31-9821-69902F92E6CF", - "name": "seat-flat", - "codepoint": "F047B", - "aliases": [ - "airline-seat-flat" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "22BC78FF-895C-497C-B6F0-143F60901C20", - "baseIconId": "FDDF112E-DFF5-4D31-9821-69902F92E6CF", - "name": "seat-flat-angled", - "codepoint": "F047C", - "aliases": [ - "airline-seat-flat-angled" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "A8F9F185-D2AE-4DEE-845C-3C74801E2CD0", - "baseIconId": "A8F9F185-D2AE-4DEE-845C-3C74801E2CD0", - "name": "seat-individual-suite", - "codepoint": "F047D", - "aliases": [ - "airline-seat-individual-suite" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "F73EE06A-6898-40A7-9B0E-784A4280C075", - "baseIconId": "1FC39B1E-567E-452C-B923-581F9A90F06D", - "name": "seat-legroom-extra", - "codepoint": "F047E", - "aliases": [ - "airline-seat-legroom-extra" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "1FC39B1E-567E-452C-B923-581F9A90F06D", - "baseIconId": "1FC39B1E-567E-452C-B923-581F9A90F06D", - "name": "seat-legroom-normal", - "codepoint": "F047F", - "aliases": [ - "airline-seat-legroom-normal" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "4306743D-7833-44E7-88AB-659DD694C8B0", - "baseIconId": "1FC39B1E-567E-452C-B923-581F9A90F06D", - "name": "seat-legroom-reduced", - "codepoint": "F0480", - "aliases": [ - "airline-seat-legroom-reduced" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "2F61EAD1-DF0E-4E90-8260-875EA5221F35", - "baseIconId": "C9A796D6-1A7D-47AD-A036-B3B9035FBDA3", - "name": "seat-outline", - "codepoint": "F0CC4", - "aliases": [ - "event-seat-outline", - "chair-outline", - "chair-accent-outline", - "home-theater", - "home-theatre" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "BF015C93-A5AD-47BF-9451-A9B5DFFAD50C", - "baseIconId": "BF015C93-A5AD-47BF-9451-A9B5DFFAD50C", - "name": "seat-passenger", - "codepoint": "F1249", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "EB83D5D9-0439-476C-9BFD-04B5D6789940", - "baseIconId": "BF015C93-A5AD-47BF-9451-A9B5DFFAD50C", - "name": "seat-recline-extra", - "codepoint": "F0481", - "aliases": [ - "airline-seat-recline-extra" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "B6642D7A-EE36-4C22-945E-88A218708CB6", - "baseIconId": "BF015C93-A5AD-47BF-9451-A9B5DFFAD50C", - "name": "seat-recline-normal", - "codepoint": "F0482", - "aliases": [ - "airline-seat-recline-normal" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "00F06E5E-5A05-4D5E-9D07-0573CA62E0BA", - "baseIconId": "00F06E5E-5A05-4D5E-9D07-0573CA62E0BA", - "name": "seatbelt", - "codepoint": "F0CC5", - "aliases": [ - "seat-belt", - "safety-belt" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0C2F3617-9710-4265-AFB5-29C52AD2FBE0", - "baseIconId": "0C2F3617-9710-4265-AFB5-29C52AD2FBE0", - "name": "security", - "codepoint": "F0483", - "aliases": [ - "shield", - "uac", - "user-access-control", - "administrator" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "C9FA8517-7CD1-4AB7-86AD-0A2BF1016466", - "baseIconId": "0C2F3617-9710-4265-AFB5-29C52AD2FBE0", - "name": "security-network", - "codepoint": "F0484", - "aliases": [ - "shield-network", - "uac-network", - "administrator-network" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "75A03574-02AA-4377-8DE3-86CBE77A0957", - "baseIconId": "75A03574-02AA-4377-8DE3-86CBE77A0957", - "name": "seed", - "codepoint": "F0E62", - "aliases": [], - "styles": [], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Agriculture", - "Nature", - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "22CC568F-81CD-4DEA-A4E1-7DE207BD15F3", - "baseIconId": "75A03574-02AA-4377-8DE3-86CBE77A0957", - "name": "seed-off", - "codepoint": "F13FD", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Nature", - "Food \/ Drink", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "372ACCAF-E322-40AC-8CE9-1F2066D3BF97", - "baseIconId": "75A03574-02AA-4377-8DE3-86CBE77A0957", - "name": "seed-off-outline", - "codepoint": "F13FE", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Nature", - "Food \/ Drink", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "80AE8DF8-0E9B-4A56-B2EF-2CA1244D99D3", - "baseIconId": "75A03574-02AA-4377-8DE3-86CBE77A0957", - "name": "seed-outline", - "codepoint": "F0E63", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Agriculture", - "Nature", - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "06E48E27-F112-4D54-ABE4-95FB216A5DEB", - "baseIconId": "75A03574-02AA-4377-8DE3-86CBE77A0957", - "name": "seed-plus", - "codepoint": "F1A6D", - "aliases": [ - "seed-add" - ], - "styles": [ - "plus" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Agriculture", - "Nature" - ], - "author": "Jeff Anders" - }, - { - "id": "01263D30-0B40-46AA-A17B-31EABA51DD48", - "baseIconId": "75A03574-02AA-4377-8DE3-86CBE77A0957", - "name": "seed-plus-outline", - "codepoint": "F1A6E", - "aliases": [ - "seed-add-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Agriculture", - "Nature" - ], - "author": "Jeff Anders" - }, - { - "id": "B2FB9E28-A275-4BC8-AFD9-8A8D90153ED9", - "baseIconId": "B2FB9E28-A275-4BC8-AFD9-8A8D90153ED9", - "name": "seesaw", - "codepoint": "F15A4", - "aliases": [ - "playground-seesaw" - ], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "5AFE282B-CAE1-4D7F-A2BF-37E8655537DD", - "baseIconId": "E56EAB24-6D70-49E0-BEC8-D9164A93CB63", - "name": "segment", - "codepoint": "F0ECB", - "aliases": [], - "styles": [], - "version": "3.7.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "B350D031-599B-4BB7-9D21-EC955B7FEF43", - "baseIconId": "B350D031-599B-4BB7-9D21-EC955B7FEF43", - "name": "select", - "codepoint": "F0485", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "7C2879B0-6BFE-42A3-9EDF-4A42AC3C9D70", - "baseIconId": "B350D031-599B-4BB7-9D21-EC955B7FEF43", - "name": "select-all", - "codepoint": "F0486", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "9CBEF68E-FE84-4690-A9E3-9505E496FF5F", - "baseIconId": "B350D031-599B-4BB7-9D21-EC955B7FEF43", - "name": "select-arrow-down", - "codepoint": "F1B59", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Sintija" - }, - { - "id": "92D297D5-0F0F-4D37-A292-FCDA5D3F05C2", - "baseIconId": "B350D031-599B-4BB7-9D21-EC955B7FEF43", - "name": "select-arrow-up", - "codepoint": "F1B58", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Sintija" - }, - { - "id": "8B757895-25B7-4C24-B6A2-7C71C9C12138", - "baseIconId": "B350D031-599B-4BB7-9D21-EC955B7FEF43", - "name": "select-color", - "codepoint": "F0D31", - "aliases": [ - "select-colour" - ], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Color" - ], - "author": "Google" - }, - { - "id": "4BC4C702-7484-4B80-95EB-F98125F1332D", - "baseIconId": "B350D031-599B-4BB7-9D21-EC955B7FEF43", - "name": "select-compare", - "codepoint": "F0AD9", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "BA35374B-03BB-421D-ABCD-5F8C4B492C4C", - "baseIconId": "B350D031-599B-4BB7-9D21-EC955B7FEF43", - "name": "select-drag", - "codepoint": "F0A6C", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "FEDE670C-F1CD-493D-B201-0C0410DB04C8", - "baseIconId": "B350D031-599B-4BB7-9D21-EC955B7FEF43", - "name": "select-group", - "codepoint": "F0F82", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "DAA46B9D-9215-4BF8-BDA7-52E575817ABC", - "baseIconId": "B350D031-599B-4BB7-9D21-EC955B7FEF43", - "name": "select-inverse", - "codepoint": "F0487", - "aliases": [ - "selection-invert" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "A312AB96-5A12-4223-AF67-7067653E17E5", - "baseIconId": "B350D031-599B-4BB7-9D21-EC955B7FEF43", - "name": "select-marker", - "codepoint": "F1280", - "aliases": [ - "select-location" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "Austin Andrews" - }, - { - "id": "1958E6ED-3D6C-4341-8F21-DDE80D030CEF", - "baseIconId": "B350D031-599B-4BB7-9D21-EC955B7FEF43", - "name": "select-multiple", - "codepoint": "F1281", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "0A8AB6EF-B388-4086-BF8D-1F0015ADC972", - "baseIconId": "B350D031-599B-4BB7-9D21-EC955B7FEF43", - "name": "select-multiple-marker", - "codepoint": "F1282", - "aliases": [ - "select-multiple-location" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "Austin Andrews" - }, - { - "id": "B2C462E1-44F0-456A-8A73-919DB480D978", - "baseIconId": "B350D031-599B-4BB7-9D21-EC955B7FEF43", - "name": "select-off", - "codepoint": "F0488", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "0090BCFA-124B-484B-BFA1-AA39413F0156", - "baseIconId": "B350D031-599B-4BB7-9D21-EC955B7FEF43", - "name": "select-place", - "codepoint": "F0FDA", - "aliases": [], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "1421D2ED-7592-4771-81F9-53A9EADFA95A", - "baseIconId": "B350D031-599B-4BB7-9D21-EC955B7FEF43", - "name": "select-remove", - "codepoint": "F17C1", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "John Martini" - }, - { - "id": "5D558A02-EC98-47D7-AD04-D02E225AF4C6", - "baseIconId": "B350D031-599B-4BB7-9D21-EC955B7FEF43", - "name": "select-search", - "codepoint": "F1204", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "33A5D3FF-E2A7-4E3A-95B5-86D4C6604911", - "baseIconId": "33A5D3FF-E2A7-4E3A-95B5-86D4C6604911", - "name": "selection", - "codepoint": "F0489", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Doug C. Hardester" - }, - { - "id": "62E94CCE-BCD0-4DF3-9AFB-B14169345612", - "baseIconId": "33A5D3FF-E2A7-4E3A-95B5-86D4C6604911", - "name": "selection-drag", - "codepoint": "F0A6D", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "F1A52E3C-0E56-48FA-ADC4-A20A6CE2E4DF", - "baseIconId": "33A5D3FF-E2A7-4E3A-95B5-86D4C6604911", - "name": "selection-ellipse", - "codepoint": "F0D32", - "aliases": [], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "DD7E2731-0D5F-42EC-8F73-99DC2E80398C", - "baseIconId": "33A5D3FF-E2A7-4E3A-95B5-86D4C6604911", - "name": "selection-ellipse-arrow-inside", - "codepoint": "F0F22", - "aliases": [], - "styles": [], - "version": "3.8.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "44145803-0893-44BE-9B63-8BC586FFCCAB", - "baseIconId": "33A5D3FF-E2A7-4E3A-95B5-86D4C6604911", - "name": "selection-ellipse-remove", - "codepoint": "F17C2", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "John Martini" - }, - { - "id": "DA670815-123E-4443-B813-5BB4A556AB1C", - "baseIconId": "33A5D3FF-E2A7-4E3A-95B5-86D4C6604911", - "name": "selection-marker", - "codepoint": "F1283", - "aliases": [ - "selection-location" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "Austin Andrews" - }, - { - "id": "31DDE08D-A49D-4B2D-9D90-3E79FDDF49C9", - "baseIconId": "33A5D3FF-E2A7-4E3A-95B5-86D4C6604911", - "name": "selection-multiple", - "codepoint": "F1285", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "5B06BC81-DA70-41F2-B05C-31E9BD7F571E", - "baseIconId": "33A5D3FF-E2A7-4E3A-95B5-86D4C6604911", - "name": "selection-multiple-marker", - "codepoint": "F1284", - "aliases": [ - "selection-multiple-location" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "Austin Andrews" - }, - { - "id": "DE8BF55F-05A8-4CB8-86FC-63D6EAC57A6C", - "baseIconId": "33A5D3FF-E2A7-4E3A-95B5-86D4C6604911", - "name": "selection-off", - "codepoint": "F0777", - "aliases": [], - "styles": [ - "off" - ], - "version": "1.9.32", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "374F7C71-E33D-47CD-9A4E-898B853094C0", - "baseIconId": "33A5D3FF-E2A7-4E3A-95B5-86D4C6604911", - "name": "selection-remove", - "codepoint": "F17C3", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "John Martini" - }, - { - "id": "2123E467-F48C-4AC6-8061-FEEB686ADB19", - "baseIconId": "33A5D3FF-E2A7-4E3A-95B5-86D4C6604911", - "name": "selection-search", - "codepoint": "F1205", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "43AB1D06-4033-4F02-8147-B692F4534174", - "baseIconId": "43AB1D06-4033-4F02-8147-B692F4534174", - "name": "semantic-web", - "codepoint": "F1316", - "aliases": [ - "rdf", - "resource-description-framework", - "owl", - "web-ontology-language", - "w3c" - ], - "styles": [], - "version": "4.8.95", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "6791A1E4-DBF8-471C-AA27-0D4540A23678", - "baseIconId": "6791A1E4-DBF8-471C-AA27-0D4540A23678", - "name": "send", - "codepoint": "F048A", - "aliases": [ - "paper-airplane", - "paper-plane" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "688C66E3-B436-4900-83EF-ADCEBBEDE627", - "baseIconId": "6791A1E4-DBF8-471C-AA27-0D4540A23678", - "name": "send-check", - "codepoint": "F1161", - "aliases": [], - "styles": [ - "check" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "0C6541E7-CC47-4FF5-BEB4-F261296D7DAD", - "baseIconId": "6791A1E4-DBF8-471C-AA27-0D4540A23678", - "name": "send-check-outline", - "codepoint": "F1162", - "aliases": [], - "styles": [ - "check", - "outline" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "52E3C504-34AB-4EE5-954F-768B1044B2A6", - "baseIconId": "6791A1E4-DBF8-471C-AA27-0D4540A23678", - "name": "send-circle", - "codepoint": "F0DF8", - "aliases": [], - "styles": [ - "circle" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "DE0BE96B-9A65-4B97-B3F3-67FBDF240B7A", - "baseIconId": "6791A1E4-DBF8-471C-AA27-0D4540A23678", - "name": "send-circle-outline", - "codepoint": "F0DF9", - "aliases": [], - "styles": [ - "circle", - "outline" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "1225563F-5E41-4B85-8E01-FF53C5453B56", - "baseIconId": "6791A1E4-DBF8-471C-AA27-0D4540A23678", - "name": "send-clock", - "codepoint": "F1163", - "aliases": [], - "styles": [ - "clock" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "281F054F-8F0A-4790-9165-154E297B9283", - "baseIconId": "6791A1E4-DBF8-471C-AA27-0D4540A23678", - "name": "send-clock-outline", - "codepoint": "F1164", - "aliases": [], - "styles": [ - "clock", - "outline" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "343A4B08-D77B-453B-A8A7-AF40D1A98DD2", - "baseIconId": "6791A1E4-DBF8-471C-AA27-0D4540A23678", - "name": "send-lock", - "codepoint": "F07ED", - "aliases": [ - "send-secure" - ], - "styles": [ - "lock" - ], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Michael Richins" - }, - { - "id": "23F855E5-3F55-48BA-8C2A-7FBA5EAE8CED", - "baseIconId": "6791A1E4-DBF8-471C-AA27-0D4540A23678", - "name": "send-lock-outline", - "codepoint": "F1166", - "aliases": [], - "styles": [ - "lock", - "outline" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B4F0331A-3E21-40C4-AED4-A28FD929AD21", - "baseIconId": "6791A1E4-DBF8-471C-AA27-0D4540A23678", - "name": "send-outline", - "codepoint": "F1165", - "aliases": [ - "paper-airplane-outline", - "paper-plane-outline" - ], - "styles": [ - "outline" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "EBB8E627-2F7B-4B33-94C6-440DD5C293E4", - "baseIconId": "6791A1E4-DBF8-471C-AA27-0D4540A23678", - "name": "send-variant", - "codepoint": "F1C4D", - "aliases": [ - "paper-plane-variant", - "paper-airplane-variant" - ], - "styles": [ - "variant" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "7A3CAC77-82FE-4D6A-B1D4-2421193D6670", - "baseIconId": "6791A1E4-DBF8-471C-AA27-0D4540A23678", - "name": "send-variant-clock", - "codepoint": "F1C7E", - "aliases": [], - "styles": [ - "clock", - "variant" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "7113E063-4446-4BC0-9981-1959374B11E2", - "baseIconId": "6791A1E4-DBF8-471C-AA27-0D4540A23678", - "name": "send-variant-clock-outline", - "codepoint": "F1C7F", - "aliases": [], - "styles": [ - "clock", - "outline", - "variant" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "5F6A5994-FF0D-417E-9845-8BF18225CE3C", - "baseIconId": "6791A1E4-DBF8-471C-AA27-0D4540A23678", - "name": "send-variant-outline", - "codepoint": "F1C4E", - "aliases": [ - "paper-airplane-variant-outline", - "paper-plane-variant-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "5D18BB49-3214-49C0-BD5C-B4581172C650", - "baseIconId": "5D18BB49-3214-49C0-BD5C-B4581172C650", - "name": "serial-port", - "codepoint": "F065C", - "aliases": [ - "vga" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "692F85E2-79A8-4207-ACF7-DEC8D675BE38", - "baseIconId": "692F85E2-79A8-4207-ACF7-DEC8D675BE38", - "name": "server", - "codepoint": "F048B", - "aliases": [ - "storage" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "09F53FF1-31D7-44CA-A00E-8CDDF55DB716", - "baseIconId": "692F85E2-79A8-4207-ACF7-DEC8D675BE38", - "name": "server-minus", - "codepoint": "F048C", - "aliases": [ - "server-remove" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "1BFB5C91-DDE1-4902-A46F-27E80C5502E3", - "baseIconId": "692F85E2-79A8-4207-ACF7-DEC8D675BE38", - "name": "server-minus-outline", - "codepoint": "F1C98", - "aliases": [ - "server-remove-outline" - ], - "styles": [ - "minus", - "outline" - ], - "version": "7.3.96", - "deprecated": false, - "tags": [], - "author": "Kadensvw" - }, - { - "id": "21F268BE-CC44-49CE-B59A-121D073ADBA5", - "baseIconId": "692F85E2-79A8-4207-ACF7-DEC8D675BE38", - "name": "server-network", - "codepoint": "F048D", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "E01B3638-DE80-4D1E-93D1-1A0C5E9AFCF4", - "baseIconId": "692F85E2-79A8-4207-ACF7-DEC8D675BE38", - "name": "server-network-off", - "codepoint": "F048E", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "273CC459-F7EC-4296-9436-7BD1A8F805DF", - "baseIconId": "692F85E2-79A8-4207-ACF7-DEC8D675BE38", - "name": "server-network-outline", - "codepoint": "F1C99", - "aliases": [], - "styles": [ - "network", - "outline" - ], - "version": "7.3.96", - "deprecated": false, - "tags": [], - "author": "Kadensvw" - }, - { - "id": "578A1213-5F0D-4C6B-A929-9157D126A9F8", - "baseIconId": "692F85E2-79A8-4207-ACF7-DEC8D675BE38", - "name": "server-off", - "codepoint": "F048F", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "02EE1E63-F47D-4BFE-8B6B-C8CB6DED24D3", - "baseIconId": "692F85E2-79A8-4207-ACF7-DEC8D675BE38", - "name": "server-outline", - "codepoint": "F1C9A", - "aliases": [], - "styles": [ - "outline" - ], - "version": "7.3.96", - "deprecated": false, - "tags": [], - "author": "Kadensvw" - }, - { - "id": "99AC1D59-A2F0-4B53-872D-0374D0804E0A", - "baseIconId": "692F85E2-79A8-4207-ACF7-DEC8D675BE38", - "name": "server-plus", - "codepoint": "F0490", - "aliases": [ - "server-add" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "9F0E48B8-D7E7-40D9-A985-76FBDC113F4D", - "baseIconId": "692F85E2-79A8-4207-ACF7-DEC8D675BE38", - "name": "server-plus-outline", - "codepoint": "F1C9B", - "aliases": [ - "server-add-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "7.3.96", - "deprecated": false, - "tags": [], - "author": "Kadensvw" - }, - { - "id": "C7C1A659-403B-44E0-9EF5-94B5C722CAFD", - "baseIconId": "692F85E2-79A8-4207-ACF7-DEC8D675BE38", - "name": "server-remove", - "codepoint": "F0491", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "E42A523C-D28D-4AAB-8A86-4816DD872B78", - "baseIconId": "692F85E2-79A8-4207-ACF7-DEC8D675BE38", - "name": "server-security", - "codepoint": "F0492", - "aliases": [ - "server-shield" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "501D1421-A50E-470A-A05B-87864461C4ED", - "baseIconId": "501D1421-A50E-470A-A05B-87864461C4ED", - "name": "set-all", - "codepoint": "F0778", - "aliases": [ - "set-union", - "set-or", - "full-outer-join", - "sql-full-outer-join" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Simran" - }, - { - "id": "0267D77C-9968-45EF-87FC-CD3368D56383", - "baseIconId": "501D1421-A50E-470A-A05B-87864461C4ED", - "name": "set-center", - "codepoint": "F0779", - "aliases": [ - "set-centre", - "set-intersection", - "set-and", - "inner-join", - "sql-inner-join" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Simran" - }, - { - "id": "614D2F8D-5170-4FE8-87C7-419903F205CB", - "baseIconId": "501D1421-A50E-470A-A05B-87864461C4ED", - "name": "set-center-right", - "codepoint": "F077A", - "aliases": [ - "set-centre-right", - "outer-join-right", - "sql-right-outer-join" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Simran" - }, - { - "id": "FB4645C1-DF04-49E0-BA0B-7C02C87AF3A9", - "baseIconId": "501D1421-A50E-470A-A05B-87864461C4ED", - "name": "set-left", - "codepoint": "F077B", - "aliases": [ - "difference-left" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Simran" - }, - { - "id": "9C04991C-6A68-4634-885F-A4D6E2816AFF", - "baseIconId": "501D1421-A50E-470A-A05B-87864461C4ED", - "name": "set-left-center", - "codepoint": "F077C", - "aliases": [ - "set-left-centre", - "outer-join-left", - "sql-left-outer-join" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Simran" - }, - { - "id": "E1BE2EC4-D5D5-475C-A562-9855DA1612FB", - "baseIconId": "501D1421-A50E-470A-A05B-87864461C4ED", - "name": "set-left-right", - "codepoint": "F077D", - "aliases": [ - "exclusion", - "set-xor" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Simran" - }, - { - "id": "414C136F-7BB5-47BB-BB58-136C5E1C2E5B", - "baseIconId": "414C136F-7BB5-47BB-BB58-136C5E1C2E5B", - "name": "set-merge", - "codepoint": "F14E0", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [], - "author": "s-ki" - }, - { - "id": "9674B809-B544-45E8-BBD8-4E8D9E1A966E", - "baseIconId": "501D1421-A50E-470A-A05B-87864461C4ED", - "name": "set-none", - "codepoint": "F077E", - "aliases": [ - "set-null", - "set-not", - "venn-diagram" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Simran" - }, - { - "id": "27D4B799-E231-49DF-AB06-0201493C83E9", - "baseIconId": "501D1421-A50E-470A-A05B-87864461C4ED", - "name": "set-right", - "codepoint": "F077F", - "aliases": [ - "difference-right" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Database" - ], - "author": "Simran" - }, - { - "id": "7100DDA3-3A7A-4A02-A717-D33D1A170E41", - "baseIconId": "7100DDA3-3A7A-4A02-A717-D33D1A170E41", - "name": "set-split", - "codepoint": "F14E1", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [], - "author": "s-ki" - }, - { - "id": "C57170BC-B363-470F-B209-D713700B7C89", - "baseIconId": "C57170BC-B363-470F-B209-D713700B7C89", - "name": "set-square", - "codepoint": "F145D", - "aliases": [], - "styles": [], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Google" - }, - { - "id": "944304C3-3513-4544-8DC2-B14307049311", - "baseIconId": "944304C3-3513-4544-8DC2-B14307049311", - "name": "set-top-box", - "codepoint": "F099F", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "6AE3B6F5-8896-4AED-A4B2-B1B021DE1DE9", - "baseIconId": "6AE3B6F5-8896-4AED-A4B2-B1B021DE1DE9", - "name": "settings-helper", - "codepoint": "F0A6E", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Peter Noble" - }, - { - "id": "4E49931C-2FF9-4957-942A-F2F0B8485E68", - "baseIconId": "4E49931C-2FF9-4957-942A-F2F0B8485E68", - "name": "shaker", - "codepoint": "F110E", - "aliases": [ - "pepper", - "fish-food" - ], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1A2E13B0-421D-460F-87C2-63C1DEC6525A", - "baseIconId": "4E49931C-2FF9-4957-942A-F2F0B8485E68", - "name": "shaker-outline", - "codepoint": "F110F", - "aliases": [ - "salt", - "fish-food-outline" - ], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B29246C8-6014-4019-8CCC-F803DBC0FA95", - "baseIconId": "B29246C8-6014-4019-8CCC-F803DBC0FA95", - "name": "shape", - "codepoint": "F0831", - "aliases": [ - "category", - "theme" - ], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Google" - }, - { - "id": "C989421F-7F77-45D9-9BB4-97D3DE8C8FB4", - "baseIconId": "C989421F-7F77-45D9-9BB4-97D3DE8C8FB4", - "name": "shape-circle-plus", - "codepoint": "F065D", - "aliases": [ - "shape-circle-add" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Kai Faust" - }, - { - "id": "FC3A1E7D-F8CD-443E-A685-9C7F0FA9FC10", - "baseIconId": "B29246C8-6014-4019-8CCC-F803DBC0FA95", - "name": "shape-outline", - "codepoint": "F0832", - "aliases": [ - "theme-outline", - "category-outline" - ], - "styles": [ - "outline" - ], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Google" - }, - { - "id": "CE4CFCD5-20D8-4248-A3E8-0B1EFDCC8EC4", - "baseIconId": "CE4CFCD5-20D8-4248-A3E8-0B1EFDCC8EC4", - "name": "shape-oval-plus", - "codepoint": "F11FA", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "C91D9DCD-5ADA-4D48-857C-39D38CD37A6B", - "baseIconId": "C91D9DCD-5ADA-4D48-857C-39D38CD37A6B", - "name": "shape-plus", - "codepoint": "F0495", - "aliases": [ - "shape-add", - "category-plus" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Austin Andrews" - }, - { - "id": "3800615A-AAC6-43C8-9ACD-F8C7A0910C07", - "baseIconId": "B29246C8-6014-4019-8CCC-F803DBC0FA95", - "name": "shape-plus-outline", - "codepoint": "F1C4F", - "aliases": [ - "shape-add-outline", - "category-plus-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Jeff Anders" - }, - { - "id": "CFE631FF-AAD1-49D9-BA22-84BAC90B8787", - "baseIconId": "CFE631FF-AAD1-49D9-BA22-84BAC90B8787", - "name": "shape-polygon-plus", - "codepoint": "F065E", - "aliases": [ - "shape-polygon-add" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Kai Faust" - }, - { - "id": "C92D4248-E908-4B39-A6D0-296E6FB5FFE1", - "baseIconId": "C92D4248-E908-4B39-A6D0-296E6FB5FFE1", - "name": "shape-rectangle-plus", - "codepoint": "F065F", - "aliases": [ - "shape-rectangle-add" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Kai Faust" - }, - { - "id": "56A31026-C5C6-45D5-A9D4-1C660357F430", - "baseIconId": "56A31026-C5C6-45D5-A9D4-1C660357F430", - "name": "shape-square-plus", - "codepoint": "F0660", - "aliases": [ - "shape-square-add" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Kai Faust" - }, - { - "id": "783621A3-B8D0-4340-BE29-0399B02EAE6B", - "baseIconId": "783621A3-B8D0-4340-BE29-0399B02EAE6B", - "name": "shape-square-rounded-plus", - "codepoint": "F14FA", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "F0053E35-64B2-45D5-92D6-EE9F8A8839A1", - "baseIconId": "F0053E35-64B2-45D5-92D6-EE9F8A8839A1", - "name": "share", - "codepoint": "F0496", - "aliases": [ - "forward" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "3A9176D6-A724-4E82-9F8B-00CEEC8A9D64", - "baseIconId": "F0053E35-64B2-45D5-92D6-EE9F8A8839A1", - "name": "share-all", - "codepoint": "F11F4", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "sergiocarlotto" - }, - { - "id": "E9397228-BC9E-4B65-9301-948CBB1D0905", - "baseIconId": "F0053E35-64B2-45D5-92D6-EE9F8A8839A1", - "name": "share-all-outline", - "codepoint": "F11F5", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "sergiocarlotto" - }, - { - "id": "2381C112-2883-4B31-829E-D656430AB707", - "baseIconId": "F0053E35-64B2-45D5-92D6-EE9F8A8839A1", - "name": "share-circle", - "codepoint": "F11AD", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "8F694E89-2460-4790-820F-BCFA1A4CB660", - "baseIconId": "F0053E35-64B2-45D5-92D6-EE9F8A8839A1", - "name": "share-off", - "codepoint": "F0F23", - "aliases": [ - "forward-off" - ], - "styles": [ - "off" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "GreenTurtwig" - }, - { - "id": "E65D2036-B0D1-4957-B114-A6FA6DFC67A5", - "baseIconId": "F0053E35-64B2-45D5-92D6-EE9F8A8839A1", - "name": "share-off-outline", - "codepoint": "F0F24", - "aliases": [ - "forward-off-outline" - ], - "styles": [ - "off", - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "GreenTurtwig" - }, - { - "id": "B8DDA534-033E-42FF-9F81-62EC636DD3C6", - "baseIconId": "F0053E35-64B2-45D5-92D6-EE9F8A8839A1", - "name": "share-outline", - "codepoint": "F0932", - "aliases": [ - "forward-outline" - ], - "styles": [ - "outline" - ], - "version": "2.3.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Nick" - }, - { - "id": "C25D5913-39C7-4215-B372-88F90EE2B6E5", - "baseIconId": "F0053E35-64B2-45D5-92D6-EE9F8A8839A1", - "name": "share-variant", - "codepoint": "F0497", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "82009437-57EA-4B83-97A2-A6AA6F305CBE", - "baseIconId": "F0053E35-64B2-45D5-92D6-EE9F8A8839A1", - "name": "share-variant-outline", - "codepoint": "F1514", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "4D7D5865-0AEE-40A3-9015-86661A60DA8C", - "baseIconId": "4D7D5865-0AEE-40A3-9015-86661A60DA8C", - "name": "shark", - "codepoint": "F18BA", - "aliases": [ - "jaws" - ], - "styles": [], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Colton Wiscombe" - }, - { - "id": "7A618386-2E3E-4B23-BF63-184B76C9CF61", - "baseIconId": "7A618386-2E3E-4B23-BF63-184B76C9CF61", - "name": "shark-fin", - "codepoint": "F1673", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Colton Wiscombe" - }, - { - "id": "15736C41-B312-436C-B081-67F0C561A97A", - "baseIconId": "7A618386-2E3E-4B23-BF63-184B76C9CF61", - "name": "shark-fin-outline", - "codepoint": "F1674", - "aliases": [], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Colton Wiscombe" - }, - { - "id": "4CF1A54B-034F-4AB6-A3B2-6ED16E550261", - "baseIconId": "4D7D5865-0AEE-40A3-9015-86661A60DA8C", - "name": "shark-off", - "codepoint": "F18BB", - "aliases": [ - "jaws-off" - ], - "styles": [ - "off" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Colton Wiscombe" - }, - { - "id": "DEA01DF4-6FBD-45B7-AC58-CBF70545FBBA", - "baseIconId": "DEA01DF4-6FBD-45B7-AC58-CBF70545FBBA", - "name": "sheep", - "codepoint": "F0CC6", - "aliases": [ - "emoji-sheep", - "emoticon-sheep" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Animal", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield", - "codepoint": "F0498", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "CA71D276-C056-45E5-883E-B3D15868D859", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-account", - "codepoint": "F088F", - "aliases": [ - "security-account", - "shield-user", - "shield-person", - "alarm-arm-home" - ], - "styles": [ - "account" - ], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Account \/ User", - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "E74ADD51-598F-4194-868C-3A9F7B62BCFA", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-account-outline", - "codepoint": "F0A12", - "aliases": [ - "security-account-outline", - "shield-user-outline", - "shield-person-outline", - "alarm-arm-home-outline" - ], - "styles": [ - "account", - "outline" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Account \/ User", - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "54FF705E-9453-4D1A-B2AC-1EB2F815F518", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-account-variant", - "codepoint": "F15A7", - "aliases": [], - "styles": [ - "account", - "variant" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "8229B887-45A8-496A-9A8D-0140F438CB65", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-account-variant-outline", - "codepoint": "F15A8", - "aliases": [], - "styles": [ - "account", - "outline", - "variant" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "B8FB8784-2E21-4D35-9DE8-95E8E2A42591", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-airplane", - "codepoint": "F06BB", - "aliases": [ - "shield-aeroplane", - "shield-plane", - "plane-shield" - ], - "styles": [ - "variant" - ], - "version": "1.7.22", - "deprecated": false, - "tags": [ - "Transportation + Flying" - ], - "author": "GreenTurtwig" - }, - { - "id": "C14BAFFB-948A-45C3-ABFD-4F6215318D65", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-airplane-outline", - "codepoint": "F0CC7", - "aliases": [ - "shield-aeroplane-outline", - "shield-plane-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Transportation + Flying" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B5DC36AC-6F79-4CDE-B1CD-02F221BF8CE4", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-alert", - "codepoint": "F0ECC", - "aliases": [ - "shield-warning" - ], - "styles": [ - "alert" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Peter Noble" - }, - { - "id": "51584101-DF6C-49FF-8ACB-13F7064DEE89", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-alert-outline", - "codepoint": "F0ECD", - "aliases": [ - "shield-warning-outline" - ], - "styles": [ - "alert", - "outline" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Peter Noble" - }, - { - "id": "1FB00AC4-94AE-4677-8F7F-0B6A47F7382C", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-bug", - "codepoint": "F13DA", - "aliases": [ - "antivirus" - ], - "styles": [ - "variant" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "DCD9B7FB-8730-4C65-8805-50B6B51A5EF7", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-bug-outline", - "codepoint": "F13DB", - "aliases": [ - "antivirus-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "MaksUr" - }, - { - "id": "2A7B43E0-4BA1-41EB-9040-F943AA9FD02C", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-car", - "codepoint": "F0F83", - "aliases": [ - "car-security", - "car-insurance" - ], - "styles": [ - "variant" - ], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Nick" - }, - { - "id": "FC112FD8-5338-49C0-B4E0-FE1816A71E74", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-check", - "codepoint": "F0565", - "aliases": [ - "verified-user", - "shield-tick", - "verified" - ], - "styles": [ - "check" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Google" - }, - { - "id": "26E9DF2C-21C8-48FF-B402-733E33673C7E", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-check-outline", - "codepoint": "F0CC8", - "aliases": [ - "shield-tick-outline" - ], - "styles": [ - "check", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "8D47ED6A-831A-49F2-8E43-67F16F8351E6", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-cross", - "codepoint": "F0CC9", - "aliases": [ - "shield-templar", - "shield-christianity" - ], - "styles": [ - "variant" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Gaming \/ RPG", - "Religion" - ], - "author": "Michael Irigoyen" - }, - { - "id": "6C722CF2-67CA-4CEC-9197-56C4F99D2866", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-cross-outline", - "codepoint": "F0CCA", - "aliases": [ - "shield-templar-outline", - "shield-christianity-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Gaming \/ RPG", - "Religion" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E251CF58-8A10-4069-AB6C-CF9DD2383335", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-crown", - "codepoint": "F18BC", - "aliases": [ - "administrator" - ], - "styles": [ - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Miday" - }, - { - "id": "97DA53AC-FC83-467F-A814-752C981BFEDE", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-crown-outline", - "codepoint": "F18BD", - "aliases": [ - "administrator-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Miday" - }, - { - "id": "8CF352CF-2ED0-4DFB-ADCF-AD77FDA6DD25", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-edit", - "codepoint": "F11A0", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "F55E4962-5730-4735-B362-42FFB640F202", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-edit-outline", - "codepoint": "F11A1", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "DC82606F-2ABB-4C09-BAC5-1C3C4DA38BEC", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-half", - "codepoint": "F1360", - "aliases": [], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "9E908727-9325-4FC6-B8B8-C5CA52A7A827", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-half-full", - "codepoint": "F0780", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.9.32", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "2A5A98F5-ED95-40DE-8EC5-1293795CF661", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-home", - "codepoint": "F068A", - "aliases": [ - "security-home", - "shield-house", - "alarm-arm-home" - ], - "styles": [ - "variant" - ], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "4D4B922B-D9AA-47AC-8E02-33F88EC69B38", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-home-outline", - "codepoint": "F0CCB", - "aliases": [ - "shield-house-outline", - "alarm-arm-home" - ], - "styles": [ - "outline", - "variant" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9894EABF-10A1-4A07-BB4B-D94F596F5D6A", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-key", - "codepoint": "F0BC4", - "aliases": [], - "styles": [ - "key" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "90122FEA-99CC-4B64-BD21-E3DD8CB83948", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-key-outline", - "codepoint": "F0BC5", - "aliases": [], - "styles": [ - "key", - "outline" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "9F5D8008-32E1-4A90-B040-2C8AF2C00F81", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-link-variant", - "codepoint": "F0D33", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "8A6D2649-CF2C-43AF-A90B-79B554B1385A", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-link-variant-outline", - "codepoint": "F0D34", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "C2E5EBC9-F1AD-4D93-BA3F-C81E18411E09", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-lock", - "codepoint": "F099D", - "aliases": [ - "security-lock", - "alarm-arm-away" - ], - "styles": [ - "lock" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Lock", - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "5B854DDA-2B72-49FC-881D-E88ED51EA636", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-lock-open", - "codepoint": "F199A", - "aliases": [ - "shield-unlocked" - ], - "styles": [ - "lock", - "variant" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Lock" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F9C92AC8-D26D-4AAD-8C34-22759EA2CA2D", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-lock-open-outline", - "codepoint": "F199B", - "aliases": [ - "shield-unlocked-outline" - ], - "styles": [ - "lock", - "outline", - "variant" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Lock" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7F797AEE-648F-4FB8-BA7F-4EF60235A061", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-lock-outline", - "codepoint": "F0CCC", - "aliases": [ - "alarm-arm-away-outline", - "security-lock-outline" - ], - "styles": [ - "lock", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Lock", - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "622FF7DE-FDD6-4831-9D3D-09157A5FC8AE", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-moon", - "codepoint": "F1828", - "aliases": [ - "alarm-arm-night" - ], - "styles": [ - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C70DD8EF-9F17-41E0-825C-C5AAC60DBF1E", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-moon-outline", - "codepoint": "F1829", - "aliases": [ - "alarm-arm-night-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "BC537F52-4A49-433B-A031-5C698A234A35", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-off", - "codepoint": "F099E", - "aliases": [ - "security-off" - ], - "styles": [ - "off" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "8ED2BB68-83C4-49BE-A730-1853C228781B", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-off-outline", - "codepoint": "F099C", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "A8FF94DD-6BA5-4DBA-AE23-59BB22DD733B", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-outline", - "codepoint": "F0499", - "aliases": [], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "872F02FE-ABEF-4187-B6B2-87A548988EAA", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-plus", - "codepoint": "F0ADA", - "aliases": [ - "shield-add" - ], - "styles": [ - "plus" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "4348C9BA-B7EE-4DC9-9B75-102726C978F7", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-plus-outline", - "codepoint": "F0ADB", - "aliases": [ - "shield-add-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "2E0E0624-1F5D-4998-B0F9-A957EC2ADD49", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-refresh", - "codepoint": "F00AA", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "D3FD64E5-2836-4527-8861-29D53D101672", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-refresh-outline", - "codepoint": "F01E0", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "F6E9D9DF-7266-4D03-BE3E-4F3B4612B77F", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-remove", - "codepoint": "F0ADC", - "aliases": [], - "styles": [ - "remove" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "4C54DF65-6F23-4FEE-A579-C329A32192BA", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-remove-outline", - "codepoint": "F0ADD", - "aliases": [], - "styles": [ - "outline", - "remove" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "89E736DC-2E57-413E-A044-40871A51CB72", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-search", - "codepoint": "F0D9A", - "aliases": [], - "styles": [ - "search" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "9C6B0512-02BF-4C33-ADAF-54D75B3AD2FB", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-star", - "codepoint": "F113B", - "aliases": [ - "badge", - "shield-favorite" - ], - "styles": [ - "star" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "122D14B5-1EB6-4ED3-8765-7C8A58D6071B", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-star-outline", - "codepoint": "F113C", - "aliases": [ - "badge-outline", - "shield-favorite-outline" - ], - "styles": [ - "outline", - "star" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "144E5B1F-A406-440D-B8B0-CC662F359D12", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-sun", - "codepoint": "F105D", - "aliases": [ - "sun-protection" - ], - "styles": [ - "variant" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Perth Totty" - }, - { - "id": "36B9C70C-5576-459A-AF44-A8E8F97B5DA8", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-sun-outline", - "codepoint": "F105E", - "aliases": [ - "sun-protection-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Perth Totty" - }, - { - "id": "614C104E-8424-4D0B-AAFB-3D35CCBDF291", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-sword", - "codepoint": "F18BE", - "aliases": [ - "moderator" - ], - "styles": [ - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Miday" - }, - { - "id": "3F8FADE9-864C-4B66-921A-A0DC30683E2A", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-sword-outline", - "codepoint": "F18BF", - "aliases": [ - "moderator-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Miday" - }, - { - "id": "AE87ED6F-DF56-449E-A3EF-D010AB6F4D17", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-sync", - "codepoint": "F11A2", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "55F6BCDE-A55A-4206-B079-1684F6E1FF0F", - "baseIconId": "A3709A80-3219-4E83-9D4F-EF74F31EEAAE", - "name": "shield-sync-outline", - "codepoint": "F11A3", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "C09567B5-B5C0-4C51-A246-0CA46C928F96", - "baseIconId": "C09567B5-B5C0-4C51-A246-0CA46C928F96", - "name": "shimmer", - "codepoint": "F1545", - "aliases": [ - "sparkles" - ], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "1F35A20C-CF6C-4C2A-9A72-82269F4ECCF7", - "baseIconId": "1F35A20C-CF6C-4C2A-9A72-82269F4ECCF7", - "name": "ship-wheel", - "codepoint": "F0833", - "aliases": [ - "voyager", - "helm" - ], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Transportation + Water" - ], - "author": "Google" - }, - { - "id": "E5A72C59-D7AF-47F4-939E-F9F882E3F2FF", - "baseIconId": "E5A72C59-D7AF-47F4-939E-F9F882E3F2FF", - "name": "shipping-pallet", - "codepoint": "F184E", - "aliases": [], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [], - "author": "Teodor Sandu" - }, - { - "id": "B5B68323-60DD-45BF-83FC-892B436D0400", - "baseIconId": "B5B68323-60DD-45BF-83FC-892B436D0400", - "name": "shoe-ballet", - "codepoint": "F15CA", - "aliases": [ - "slippers-ballet" - ], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Sport", - "Clothing" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F6831C58-3C18-44F4-A2A8-4AD96444F012", - "baseIconId": "F6831C58-3C18-44F4-A2A8-4AD96444F012", - "name": "shoe-cleat", - "codepoint": "F15C7", - "aliases": [], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Sport", - "Clothing" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DFEA1FD2-F6A5-4670-83D6-9861A0FA272C", - "baseIconId": "DFEA1FD2-F6A5-4670-83D6-9861A0FA272C", - "name": "shoe-formal", - "codepoint": "F0B47", - "aliases": [], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Clothing" - ], - "author": "SarinManS" - }, - { - "id": "E97AD67E-DD75-4FD8-9E25-44F3042B4172", - "baseIconId": "E97AD67E-DD75-4FD8-9E25-44F3042B4172", - "name": "shoe-heel", - "codepoint": "F0B48", - "aliases": [], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Clothing" - ], - "author": "SarinManS" - }, - { - "id": "4008AB1C-4D92-4D8B-9423-5182FC505664", - "baseIconId": "4008AB1C-4D92-4D8B-9423-5182FC505664", - "name": "shoe-print", - "codepoint": "F0DFA", - "aliases": [ - "footprints" - ], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "EA78AFA5-70F2-4878-A1D5-746B410E1DA0", - "baseIconId": "EA78AFA5-70F2-4878-A1D5-746B410E1DA0", - "name": "shoe-sneaker", - "codepoint": "F15C8", - "aliases": [ - "shoe-running" - ], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Sport", - "Clothing" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7A5ED547-B142-4921-8050-647B2B9F4DC0", - "baseIconId": "7A5ED547-B142-4921-8050-647B2B9F4DC0", - "name": "shopping", - "codepoint": "F049A", - "aliases": [ - "local-mall", - "marketplace" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Google" - }, - { - "id": "E3FDDEB1-6D36-4E18-914E-06E2887E7D96", - "baseIconId": "7A5ED547-B142-4921-8050-647B2B9F4DC0", - "name": "shopping-music", - "codepoint": "F049B", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Austin Andrews" - }, - { - "id": "EBE771F9-2EF2-41D9-AE7D-8FDBA1B4C684", - "baseIconId": "7A5ED547-B142-4921-8050-647B2B9F4DC0", - "name": "shopping-outline", - "codepoint": "F11D5", - "aliases": [ - "local-mall-outline", - "marketplace-outline" - ], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Google" - }, - { - "id": "6FB38390-3C7C-423A-AC1C-691C3358E04B", - "baseIconId": "7A5ED547-B142-4921-8050-647B2B9F4DC0", - "name": "shopping-search", - "codepoint": "F0F84", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Michael Richins" - }, - { - "id": "68885584-9904-492E-AEC4-0FEC2C266F6E", - "baseIconId": "7A5ED547-B142-4921-8050-647B2B9F4DC0", - "name": "shopping-search-outline", - "codepoint": "F1A6F", - "aliases": [], - "styles": [ - "outline", - "search" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Shopping" - ], - "author": "Ken Gregory" - }, - { - "id": "9F0501F0-7F2C-4806-8AC4-F8D76AA194CD", - "baseIconId": "9F0501F0-7F2C-4806-8AC4-F8D76AA194CD", - "name": "shore", - "codepoint": "F14F9", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "16D35D19-90C2-42DD-9E83-8F47E21A53DF", - "baseIconId": "16D35D19-90C2-42DD-9E83-8F47E21A53DF", - "name": "shovel", - "codepoint": "F0710", - "aliases": [ - "gardening" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Michael Richins" - }, - { - "id": "01E7F800-E769-4A3F-9A30-D1B8E96F617B", - "baseIconId": "16D35D19-90C2-42DD-9E83-8F47E21A53DF", - "name": "shovel-off", - "codepoint": "F0711", - "aliases": [], - "styles": [ - "off" - ], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Michael Richins" - }, - { - "id": "1F29D513-0EFE-454A-B766-579A010C51B6", - "baseIconId": "1F29D513-0EFE-454A-B766-579A010C51B6", - "name": "shower", - "codepoint": "F09A0", - "aliases": [ - "bathtub", - "bathroom" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Augustin Ursu" - }, - { - "id": "F0E6B2EB-7E10-42C8-AEF1-84A461E1E2B3", - "baseIconId": "F0E6B2EB-7E10-42C8-AEF1-84A461E1E2B3", - "name": "shower-head", - "codepoint": "F09A1", - "aliases": [ - "bathroom" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Augustin Ursu" - }, - { - "id": "BCE4CF23-0A2B-430F-89C9-7597F1132919", - "baseIconId": "BCE4CF23-0A2B-430F-89C9-7597F1132919", - "name": "shredder", - "codepoint": "F049C", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "99537665-2115-40D6-9725-0F4B4730C99A", - "baseIconId": "99537665-2115-40D6-9725-0F4B4730C99A", - "name": "shuffle", - "codepoint": "F049D", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "DAA3B240-E394-46A8-83FE-6EE6712BF806", - "baseIconId": "DAA3B240-E394-46A8-83FE-6EE6712BF806", - "name": "shuffle-disabled", - "codepoint": "F049E", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Simran" - }, - { - "id": "84D958BE-5145-4490-BA8F-D00E6870CC9D", - "baseIconId": "84D958BE-5145-4490-BA8F-D00E6870CC9D", - "name": "shuffle-variant", - "codepoint": "F049F", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Simran" - }, - { - "id": "70BBF348-E5D1-4C4C-AD93-17246A78DE13", - "baseIconId": "70BBF348-E5D1-4C4C-AD93-17246A78DE13", - "name": "shuriken", - "codepoint": "F137F", - "aliases": [ - "ninja-star" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "AEA5AABF-3305-44A8-9E85-67F2351CB2E6", - "baseIconId": "AEA5AABF-3305-44A8-9E85-67F2351CB2E6", - "name": "sickle", - "codepoint": "F18C0", - "aliases": [], - "styles": [], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Michael Irigoyen" - }, - { - "id": "59A98F47-9067-492A-8454-42BEFA2391C1", - "baseIconId": "59A98F47-9067-492A-8454-42BEFA2391C1", - "name": "sigma", - "codepoint": "F04A0", - "aliases": [ - "summation" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Google" - }, - { - "id": "DD1EAF89-C6AC-4E61-BF78-93425B16DD24", - "baseIconId": "DD1EAF89-C6AC-4E61-BF78-93425B16DD24", - "name": "sigma-lower", - "codepoint": "F062B", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "159F7B23-A336-4F8C-A3BB-D8AB143D6661", - "baseIconId": "159F7B23-A336-4F8C-A3BB-D8AB143D6661", - "name": "sign-caution", - "codepoint": "F04A1", - "aliases": [ - "barrier" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Austin Andrews" - }, - { - "id": "93E3355E-36F9-4B26-A337-C5F794D98941", - "baseIconId": "93E3355E-36F9-4B26-A337-C5F794D98941", - "name": "sign-direction", - "codepoint": "F0781", - "aliases": [ - "milestone" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "110700C4-EF32-4835-B9C6-ECE259438B80", - "baseIconId": "93E3355E-36F9-4B26-A337-C5F794D98941", - "name": "sign-direction-minus", - "codepoint": "F1000", - "aliases": [ - "milestone-minus" - ], - "styles": [ - "minus" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "298F86D9-24E7-4780-A891-1A7C36D65D77", - "baseIconId": "93E3355E-36F9-4B26-A337-C5F794D98941", - "name": "sign-direction-plus", - "codepoint": "F0FDC", - "aliases": [ - "milestone-plus", - "sign-direction-add", - "milestone-add" - ], - "styles": [ - "plus" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "93DA424E-0D38-4DD4-B06A-2E3D0754EEC0", - "baseIconId": "93E3355E-36F9-4B26-A337-C5F794D98941", - "name": "sign-direction-remove", - "codepoint": "F0FDD", - "aliases": [ - "milestone-remove" - ], - "styles": [ - "remove" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "7E8BA92D-403E-41B0-BA79-7E22E36ADFA8", - "baseIconId": "7E8BA92D-403E-41B0-BA79-7E22E36ADFA8", - "name": "sign-language", - "codepoint": "F1B4D", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "8EA84803-C50A-463F-8061-606F0CBF08A8", - "baseIconId": "7E8BA92D-403E-41B0-BA79-7E22E36ADFA8", - "name": "sign-language-outline", - "codepoint": "F1B4E", - "aliases": [], - "styles": [ - "outline" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "AE565EF0-BC09-44FB-B94A-A5F2CF2B2CB2", - "baseIconId": "AE565EF0-BC09-44FB-B94A-A5F2CF2B2CB2", - "name": "sign-pole", - "codepoint": "F14F8", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "A24BD314-F1AF-4BAF-A33B-F9BAD9D54089", - "baseIconId": "A24BD314-F1AF-4BAF-A33B-F9BAD9D54089", - "name": "sign-real-estate", - "codepoint": "F1118", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "6AC6C6C2-8925-4ECC-BD95-6B961B2CD0A5", - "baseIconId": "6AC6C6C2-8925-4ECC-BD95-6B961B2CD0A5", - "name": "sign-text", - "codepoint": "F0782", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "C325938C-B13A-47A1-BD51-7F6F34B6CE16", - "baseIconId": "C325938C-B13A-47A1-BD51-7F6F34B6CE16", - "name": "sign-yield", - "codepoint": "F1BAF", - "aliases": [ - "give-way" - ], - "styles": [], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7099FDF8-B653-4C49-BE2B-5B96147A709D", - "baseIconId": "7099FDF8-B653-4C49-BE2B-5B96147A709D", - "name": "signal", - "codepoint": "F04A2", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Simran" - }, - { - "id": "C281EBBF-23FD-4F0A-8908-BFBA18F75FDD", - "baseIconId": "C281EBBF-23FD-4F0A-8908-BFBA18F75FDD", - "name": "signal-2g", - "codepoint": "F0712", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "GreenTurtwig" - }, - { - "id": "F0ACC092-8F79-43C9-9F8F-72E41AE557F2", - "baseIconId": "F0ACC092-8F79-43C9-9F8F-72E41AE557F2", - "name": "signal-3g", - "codepoint": "F0713", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "GreenTurtwig" - }, - { - "id": "7D633D1D-C265-4D2F-860E-43263B34A06F", - "baseIconId": "7D633D1D-C265-4D2F-860E-43263B34A06F", - "name": "signal-4g", - "codepoint": "F0714", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "GreenTurtwig" - }, - { - "id": "5E2711B0-C417-434F-BE9A-F4FA6A666A56", - "baseIconId": "5E2711B0-C417-434F-BE9A-F4FA6A666A56", - "name": "signal-5g", - "codepoint": "F0A6F", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "GreenTurtwig" - }, - { - "id": "F5CC42C0-FA38-488C-AD3F-DCF5329DFBB8", - "baseIconId": "7099FDF8-B653-4C49-BE2B-5B96147A709D", - "name": "signal-cellular-1", - "codepoint": "F08BC", - "aliases": [], - "styles": [], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Michael Richins" - }, - { - "id": "5E21DB8A-BFFC-4038-8EBF-D3E462A43CD9", - "baseIconId": "7099FDF8-B653-4C49-BE2B-5B96147A709D", - "name": "signal-cellular-2", - "codepoint": "F08BD", - "aliases": [], - "styles": [], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Michael Richins" - }, - { - "id": "85A2D38F-5AB3-430C-9794-032E991A4956", - "baseIconId": "7099FDF8-B653-4C49-BE2B-5B96147A709D", - "name": "signal-cellular-3", - "codepoint": "F08BE", - "aliases": [], - "styles": [], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Michael Richins" - }, - { - "id": "AA11AD00-4A6D-4D7F-911C-137CDDCF34B6", - "baseIconId": "7099FDF8-B653-4C49-BE2B-5B96147A709D", - "name": "signal-cellular-outline", - "codepoint": "F08BF", - "aliases": [ - "signal-cellular-0" - ], - "styles": [], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Michael Richins" - }, - { - "id": "D0767E67-DC33-4B2B-9715-7408FD4F502D", - "baseIconId": "F4D628E8-ADAA-48B7-9ED2-83560FF4583F", - "name": "signal-distance-variant", - "codepoint": "F0E64", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "A960C38F-7EFE-4FE6-94AB-C7B0CD07DD50", - "baseIconId": "A960C38F-7EFE-4FE6-94AB-C7B0CD07DD50", - "name": "signal-hspa", - "codepoint": "F0715", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "GreenTurtwig" - }, - { - "id": "CDCB7012-AD69-4B80-A64E-FDA1375271AD", - "baseIconId": "A960C38F-7EFE-4FE6-94AB-C7B0CD07DD50", - "name": "signal-hspa-plus", - "codepoint": "F0716", - "aliases": [], - "styles": [ - "plus" - ], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "GreenTurtwig" - }, - { - "id": "9DAFE242-BF4B-43F8-8A6E-89EBB0EEDCAA", - "baseIconId": "9DAFE242-BF4B-43F8-8A6E-89EBB0EEDCAA", - "name": "signal-off", - "codepoint": "F0783", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "GreenTurtwig" - }, - { - "id": "F4D628E8-ADAA-48B7-9ED2-83560FF4583F", - "baseIconId": "7099FDF8-B653-4C49-BE2B-5B96147A709D", - "name": "signal-variant", - "codepoint": "F060A", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "CA1E5FB5-D8FA-4B61-9C96-988F6829C4F5", - "baseIconId": "CA1E5FB5-D8FA-4B61-9C96-988F6829C4F5", - "name": "signature", - "codepoint": "F0DFB", - "aliases": [], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Michael Irigoyen" - }, - { - "id": "4DD4EB10-012B-4A70-8C9A-256B3F575BD5", - "baseIconId": "CA1E5FB5-D8FA-4B61-9C96-988F6829C4F5", - "name": "signature-freehand", - "codepoint": "F0DFC", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Michael Irigoyen" - }, - { - "id": "3A24A33E-C173-4E3C-8D8B-BA7E7E3E093A", - "baseIconId": "CA1E5FB5-D8FA-4B61-9C96-988F6829C4F5", - "name": "signature-image", - "codepoint": "F0DFD", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Michael Irigoyen" - }, - { - "id": "70DE882E-E115-42F9-A023-FBEE394DA396", - "baseIconId": "CA1E5FB5-D8FA-4B61-9C96-988F6829C4F5", - "name": "signature-text", - "codepoint": "F0DFE", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Form" - ], - "author": "Michael Irigoyen" - }, - { - "id": "120915C9-09F2-48A5-99FE-6BF045917A56", - "baseIconId": "120915C9-09F2-48A5-99FE-6BF045917A56", - "name": "silo", - "codepoint": "F1B9F", - "aliases": [ - "farm" - ], - "styles": [], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Agriculture" - ], - "author": "Jeff Anders" - }, - { - "id": "73A40E8E-7F62-454C-BFD9-A10796BA4A0A", - "baseIconId": "73A40E8E-7F62-454C-BFD9-A10796BA4A0A", - "name": "silo-outline", - "codepoint": "F0B49", - "aliases": [ - "farm-outline" - ], - "styles": [ - "outline" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Agriculture" - ], - "author": "Benjamin Watson" - }, - { - "id": "F7C26535-863F-4295-9E48-9847B740FEE7", - "baseIconId": "F7C26535-863F-4295-9E48-9847B740FEE7", - "name": "silverware", - "codepoint": "F04A3", - "aliases": [ - "local-dining", - "restaurant-menu", - "local-restaurant", - "cutlery" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Google" - }, - { - "id": "57F11CAE-4E4B-4406-A5A8-2F5A283ABF99", - "baseIconId": "F7C26535-863F-4295-9E48-9847B740FEE7", - "name": "silverware-clean", - "codepoint": "F0FDE", - "aliases": [ - "silverware-shimmer", - "cutlery-clean" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Simran" - }, - { - "id": "7B00A99C-3766-4939-993F-657333EE430B", - "baseIconId": "7B00A99C-3766-4939-993F-657333EE430B", - "name": "silverware-fork", - "codepoint": "F04A4", - "aliases": [ - "cutlery-fork" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Austin Andrews" - }, - { - "id": "C3D19BD6-D474-4F86-94AA-1A4B04FE8E3A", - "baseIconId": "C3D19BD6-D474-4F86-94AA-1A4B04FE8E3A", - "name": "silverware-fork-knife", - "codepoint": "F0A70", - "aliases": [ - "restaurant", - "fortnite", - "cutlery-fork-knife", - "place-setting" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Google" - }, - { - "id": "5FCBB812-F381-4E83-B60E-E126992910FB", - "baseIconId": "5FCBB812-F381-4E83-B60E-E126992910FB", - "name": "silverware-spoon", - "codepoint": "F04A5", - "aliases": [ - "cutlery-spoon" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Austin Andrews" - }, - { - "id": "A91FC6E1-2613-41E7-A8CA-58740B3322DA", - "baseIconId": "F7C26535-863F-4295-9E48-9847B740FEE7", - "name": "silverware-variant", - "codepoint": "F04A6", - "aliases": [ - "cutlery-variant" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Places" - ], - "author": "Austin Andrews" - }, - { - "id": "93020F21-A0FE-427D-8685-B74EE39B9921", - "baseIconId": "93020F21-A0FE-427D-8685-B74EE39B9921", - "name": "sim", - "codepoint": "F04A7", - "aliases": [ - "sim-card", - "subscriber-identity-module", - "subscriber-identification-module" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "43CD286A-D183-474F-9B8A-93D43A355117", - "baseIconId": "93020F21-A0FE-427D-8685-B74EE39B9921", - "name": "sim-alert", - "codepoint": "F04A8", - "aliases": [ - "sim-warning", - "sim-card-alert" - ], - "styles": [ - "alert" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alert \/ Error", - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "23E2DADA-D539-422C-B925-9DCB1445B344", - "baseIconId": "93020F21-A0FE-427D-8685-B74EE39B9921", - "name": "sim-alert-outline", - "codepoint": "F15D3", - "aliases": [], - "styles": [ - "alert", - "outline" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "65B6C060-C1A9-4049-A6B6-FEAC02A899D3", - "baseIconId": "93020F21-A0FE-427D-8685-B74EE39B9921", - "name": "sim-off", - "codepoint": "F04A9", - "aliases": [ - "signal-cellular-no-sim" - ], - "styles": [ - "off" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "D7CAB5D9-2494-4528-B45E-A8EA49EA8262", - "baseIconId": "93020F21-A0FE-427D-8685-B74EE39B9921", - "name": "sim-off-outline", - "codepoint": "F15D4", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C886D757-3CAE-4BAF-9F51-0747142FC508", - "baseIconId": "93020F21-A0FE-427D-8685-B74EE39B9921", - "name": "sim-outline", - "codepoint": "F15D5", - "aliases": [ - "sim-card-outline", - "subscriber-identity-module-outline", - "subscriber-identification-module-outline" - ], - "styles": [ - "outline" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A062A6A1-E475-41CD-AFB2-283199B67CC8", - "baseIconId": "A062A6A1-E475-41CD-AFB2-283199B67CC8", - "name": "simple-icons", - "codepoint": "F131D", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "2AA993E0-4C1C-4993-84E6-D0BA0AC89EB0", - "baseIconId": "2AA993E0-4C1C-4993-84E6-D0BA0AC89EB0", - "name": "sina-weibo", - "codepoint": "F0ADF", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "2099C23C-E6F6-4C9B-AA3C-49A693E73E2E", - "baseIconId": "2099C23C-E6F6-4C9B-AA3C-49A693E73E2E", - "name": "sine-wave", - "codepoint": "F095B", - "aliases": [ - "alternating-current", - "current-ac", - "wave", - "analog", - "frequency", - "amplitude" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Audio" - ], - "author": "Nick" - }, - { - "id": "673CE0A7-8AA2-4BFD-9308-B51589FBF520", - "baseIconId": "673CE0A7-8AA2-4BFD-9308-B51589FBF520", - "name": "sitemap", - "codepoint": "F04AA", - "aliases": [ - "workflow", - "flowchart" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "34B0F8F6-2E20-4B64-B683-2B1789140CA9", - "baseIconId": "673CE0A7-8AA2-4BFD-9308-B51589FBF520", - "name": "sitemap-outline", - "codepoint": "F199C", - "aliases": [ - "workflow-outline", - "flowchart-outline" - ], - "styles": [ - "outline" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "81D1F53A-2A63-4C9A-9CA9-547E68BB1329", - "baseIconId": "81D1F53A-2A63-4C9A-9CA9-547E68BB1329", - "name": "size-l", - "codepoint": "F13A6", - "aliases": [ - "size-large" - ], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "D0FECA65-0432-4231-AFA5-EDD331188CD6", - "baseIconId": "D0FECA65-0432-4231-AFA5-EDD331188CD6", - "name": "size-m", - "codepoint": "F13A5", - "aliases": [ - "size-medium" - ], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "AE5079DB-D7D6-4F38-85C1-FAE6CDF14CC2", - "baseIconId": "AE5079DB-D7D6-4F38-85C1-FAE6CDF14CC2", - "name": "size-s", - "codepoint": "F13A4", - "aliases": [ - "size-small" - ], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "E7FCE878-E3CA-4EF8-B0B5-D926ACE33122", - "baseIconId": "E7FCE878-E3CA-4EF8-B0B5-D926ACE33122", - "name": "size-xl", - "codepoint": "F13A7", - "aliases": [ - "size-extra-large" - ], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "D0173A61-33D3-43A2-8DB3-2E95EEEF7D7E", - "baseIconId": "D0173A61-33D3-43A2-8DB3-2E95EEEF7D7E", - "name": "size-xs", - "codepoint": "F13A3", - "aliases": [ - "size-extra-small" - ], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "5E24686F-4675-4E74-93B4-DA7886270F3B", - "baseIconId": "5E24686F-4675-4E74-93B4-DA7886270F3B", - "name": "size-xxl", - "codepoint": "F13A8", - "aliases": [ - "size-extra-extra-large" - ], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "97AAC6A1-8F86-49CD-AAE2-3F9CFDDCBD82", - "baseIconId": "97AAC6A1-8F86-49CD-AAE2-3F9CFDDCBD82", - "name": "size-xxs", - "codepoint": "F13A2", - "aliases": [ - "size-extra-extra-small" - ], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "3B3E6BCE-E0D1-4A4E-B720-D73C03C88C64", - "baseIconId": "3B3E6BCE-E0D1-4A4E-B720-D73C03C88C64", - "name": "size-xxxl", - "codepoint": "F13A9", - "aliases": [], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "CB0C6DC2-0A4E-41C8-9E6A-9A8531F754CF", - "baseIconId": "CB0C6DC2-0A4E-41C8-9E6A-9A8531F754CF", - "name": "skate", - "codepoint": "F0D35", - "aliases": [ - "ice-skate" - ], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Google" - }, - { - "id": "092B5CD3-BB99-492C-9784-4BE71B0C7F5B", - "baseIconId": "CB0C6DC2-0A4E-41C8-9E6A-9A8531F754CF", - "name": "skate-off", - "codepoint": "F0699", - "aliases": [], - "styles": [ - "off" - ], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Michael Irigoyen" - }, - { - "id": "56BF6222-BEC1-44B6-845C-AD6F84552D90", - "baseIconId": "56BF6222-BEC1-44B6-845C-AD6F84552D90", - "name": "skateboard", - "codepoint": "F14C2", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Google" - }, - { - "id": "47F1C290-ED78-4459-B33C-6E2ACC867CC6", - "baseIconId": "47F1C290-ED78-4459-B33C-6E2ACC867CC6", - "name": "skateboarding", - "codepoint": "F0501", - "aliases": [ - "human-skateboarding" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Sport", - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "43E5E22F-AEEB-406D-BEF3-898BE3C91FC1", - "baseIconId": "6F54CAE0-D2B7-4E00-83AA-0B98A7601CF6", - "name": "skew-less", - "codepoint": "F0D36", - "aliases": [ - "skew-decrease" - ], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D84076D2-8C7C-4CD7-98EA-05108B10FF1A", - "baseIconId": "6F54CAE0-D2B7-4E00-83AA-0B98A7601CF6", - "name": "skew-more", - "codepoint": "F0D37", - "aliases": [ - "skew-increase" - ], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Irigoyen" - }, - { - "id": "197B0D1A-34DB-4FD7-825B-FFE5C28297BB", - "baseIconId": "197B0D1A-34DB-4FD7-825B-FFE5C28297BB", - "name": "ski", - "codepoint": "F1304", - "aliases": [ - "human-ski" - ], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Sport", - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "BD9C05A6-55EA-4F72-A216-85F990F65EDA", - "baseIconId": "BD9C05A6-55EA-4F72-A216-85F990F65EDA", - "name": "ski-cross-country", - "codepoint": "F1305", - "aliases": [ - "nordic-walking", - "human-ski-cross-country" - ], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Sport", - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "51D8DB1F-FA7C-4527-AD8E-495024CD4E2D", - "baseIconId": "51D8DB1F-FA7C-4527-AD8E-495024CD4E2D", - "name": "ski-water", - "codepoint": "F1306", - "aliases": [ - "human-ski-water" - ], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Sport", - "People \/ Family", - "Transportation + Water" - ], - "author": "Michael Irigoyen" - }, - { - "id": "45260E4C-E8EB-4E35-85A8-F19A91FE1A2C", - "baseIconId": "45260E4C-E8EB-4E35-85A8-F19A91FE1A2C", - "name": "skip-backward", - "codepoint": "F04AB", - "aliases": [ - "title-backward", - "previous-title" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "22E55747-AE80-4DE9-8BC8-10B61C69F161", - "baseIconId": "45260E4C-E8EB-4E35-85A8-F19A91FE1A2C", - "name": "skip-backward-outline", - "codepoint": "F0F25", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "760EA0AB-7906-4FA4-86E0-CD18A4073302", - "baseIconId": "760EA0AB-7906-4FA4-86E0-CD18A4073302", - "name": "skip-forward", - "codepoint": "F04AC", - "aliases": [ - "title-forward", - "next-title" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "1EB18C03-3143-42C6-ACA9-D62086DA371D", - "baseIconId": "760EA0AB-7906-4FA4-86E0-CD18A4073302", - "name": "skip-forward-outline", - "codepoint": "F0F26", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "D2F19A25-4EF4-41A7-A91A-C03C77E32186", - "baseIconId": "D2F19A25-4EF4-41A7-A91A-C03C77E32186", - "name": "skip-next", - "codepoint": "F04AD", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "0D688B5D-27F8-47CF-9234-87DB3F25D28E", - "baseIconId": "D2F19A25-4EF4-41A7-A91A-C03C77E32186", - "name": "skip-next-circle", - "codepoint": "F0661", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "5AE3DE91-B2E8-48DD-A170-1F26E391F830", - "baseIconId": "D2F19A25-4EF4-41A7-A91A-C03C77E32186", - "name": "skip-next-circle-outline", - "codepoint": "F0662", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "FB14BE1B-5BAD-44CD-9E68-CABE4A79F527", - "baseIconId": "D2F19A25-4EF4-41A7-A91A-C03C77E32186", - "name": "skip-next-outline", - "codepoint": "F0F27", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "8D8B924F-0AD5-4458-9BCE-0A5887D935B6", - "baseIconId": "8D8B924F-0AD5-4458-9BCE-0A5887D935B6", - "name": "skip-previous", - "codepoint": "F04AE", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "3584845F-971C-45BB-8184-CFEBE0044474", - "baseIconId": "8D8B924F-0AD5-4458-9BCE-0A5887D935B6", - "name": "skip-previous-circle", - "codepoint": "F0663", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "FF83529F-FAA5-4FAD-9EE8-9F9A74409F93", - "baseIconId": "8D8B924F-0AD5-4458-9BCE-0A5887D935B6", - "name": "skip-previous-circle-outline", - "codepoint": "F0664", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "F1415D50-592B-4480-94D6-1FA82CDBA7B9", - "baseIconId": "8D8B924F-0AD5-4458-9BCE-0A5887D935B6", - "name": "skip-previous-outline", - "codepoint": "F0F28", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "AD1B00BA-C98D-4961-A444-9484EF434BEC", - "baseIconId": "AD1B00BA-C98D-4961-A444-9484EF434BEC", - "name": "skull", - "codepoint": "F068C", - "aliases": [], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Holiday", - "Gaming \/ RPG" - ], - "author": "Haley Halcyon" - }, - { - "id": "C85F31B5-3C18-480D-B3A6-7F4FB7095273", - "baseIconId": "C85F31B5-3C18-480D-B3A6-7F4FB7095273", - "name": "skull-crossbones", - "codepoint": "F0BC6", - "aliases": [ - "jolly-roger" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Gaming \/ RPG", - "Holiday" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5DBA18AE-EED4-4F73-A0FD-ACC5E731A70C", - "baseIconId": "C85F31B5-3C18-480D-B3A6-7F4FB7095273", - "name": "skull-crossbones-outline", - "codepoint": "F0BC7", - "aliases": [ - "jolly-roger-outline" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Gaming \/ RPG", - "Holiday" - ], - "author": "Michael Irigoyen" - }, - { - "id": "31E17B6D-1AD2-43C5-9FF3-6A8D2FA32C17", - "baseIconId": "AD1B00BA-C98D-4961-A444-9484EF434BEC", - "name": "skull-outline", - "codepoint": "F0BC8", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Holiday", - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "3FF20BCB-0BFF-4F46-ABE9-954C8F2EB154", - "baseIconId": "AD1B00BA-C98D-4961-A444-9484EF434BEC", - "name": "skull-scan", - "codepoint": "F14C7", - "aliases": [ - "x-ray", - "radiology" - ], - "styles": [ - "variant" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Simran" - }, - { - "id": "FFA72D4C-C2EE-4492-B556-95C873FF1677", - "baseIconId": "AD1B00BA-C98D-4961-A444-9484EF434BEC", - "name": "skull-scan-outline", - "codepoint": "F14C8", - "aliases": [ - "x-ray-outline", - "radiology-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Michael Irigoyen" - }, - { - "id": "07E9D89D-2D58-40C6-9D41-49722CFC0DAE", - "baseIconId": "07E9D89D-2D58-40C6-9D41-49722CFC0DAE", - "name": "skype", - "codepoint": "F04AF", - "aliases": [ - "microsoft-skype" - ], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "813333B0-4A34-4AC6-819C-0FBEABC06246", - "baseIconId": "07E9D89D-2D58-40C6-9D41-49722CFC0DAE", - "name": "skype-business", - "codepoint": "F04B0", - "aliases": [], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "EA0E061F-B48E-4443-BBE8-6080C2258730", - "baseIconId": "EA0E061F-B48E-4443-BBE8-6080C2258730", - "name": "slack", - "codepoint": "F04B1", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "355F6D86-E6B6-4EA4-91BA-95370240E9CF", - "baseIconId": "355F6D86-E6B6-4EA4-91BA-95370240E9CF", - "name": "slash-forward", - "codepoint": "F0FDF", - "aliases": [ - "divide", - "division" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D6A5CF49-38A9-4911-ACAC-FF9A09BBEC76", - "baseIconId": "355F6D86-E6B6-4EA4-91BA-95370240E9CF", - "name": "slash-forward-box", - "codepoint": "F0FE0", - "aliases": [ - "divide-box", - "division-box" - ], - "styles": [ - "box" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E67044BA-8025-4D61-916C-56DF4D6FFE6D", - "baseIconId": "E67044BA-8025-4D61-916C-56DF4D6FFE6D", - "name": "sledding", - "codepoint": "F041B", - "aliases": [ - "human-sledding" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Sport", - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "C9CF20D8-55F4-4997-8019-F8056ED86702", - "baseIconId": "C9CF20D8-55F4-4997-8019-F8056ED86702", - "name": "sleep", - "codepoint": "F04B2", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "0801B02C-2187-40D1-8A03-D521D0214662", - "baseIconId": "C9CF20D8-55F4-4997-8019-F8056ED86702", - "name": "sleep-off", - "codepoint": "F04B3", - "aliases": [], - "styles": [ - "off" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "799D9561-AC12-4E30-8CA8-2FBF9E5597B8", - "baseIconId": "799D9561-AC12-4E30-8CA8-2FBF9E5597B8", - "name": "slide", - "codepoint": "F15A5", - "aliases": [ - "playground-slide" - ], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "34D7190A-2B00-4B61-9A55-1E97E6F962A5", - "baseIconId": "99641F5F-1036-4092-B230-C1CBC7E6A746", - "name": "slope-downhill", - "codepoint": "F0DFF", - "aliases": [], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "99641F5F-1036-4092-B230-C1CBC7E6A746", - "baseIconId": "99641F5F-1036-4092-B230-C1CBC7E6A746", - "name": "slope-uphill", - "codepoint": "F0E00", - "aliases": [], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "8DAEB736-3A62-475D-81A5-47BD881EA912", - "baseIconId": "8DAEB736-3A62-475D-81A5-47BD881EA912", - "name": "slot-machine", - "codepoint": "F1114", - "aliases": [ - "casino", - "gambling" - ], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "5A083823-77FD-4C5E-98B8-EF320E8493CD", - "baseIconId": "8DAEB736-3A62-475D-81A5-47BD881EA912", - "name": "slot-machine-outline", - "codepoint": "F1115", - "aliases": [ - "casino-outline", - "gambling-outline" - ], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "9682A6D2-A7FA-47BF-A94E-6CDEC8B55446", - "baseIconId": "9682A6D2-A7FA-47BF-A94E-6CDEC8B55446", - "name": "smart-card", - "codepoint": "F10BD", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Richins" - }, - { - "id": "4A41F4FC-7E7C-4EA6-80F7-61274B13CBF4", - "baseIconId": "9682A6D2-A7FA-47BF-A94E-6CDEC8B55446", - "name": "smart-card-off", - "codepoint": "F18F7", - "aliases": [], - "styles": [ - "off" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Irigoyen" - }, - { - "id": "8DB35D1C-0F5C-4E09-BB38-45B6F57943B4", - "baseIconId": "9682A6D2-A7FA-47BF-A94E-6CDEC8B55446", - "name": "smart-card-off-outline", - "codepoint": "F18F8", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D5EED689-19F3-4198-9A00-27C6DAE518E7", - "baseIconId": "9682A6D2-A7FA-47BF-A94E-6CDEC8B55446", - "name": "smart-card-outline", - "codepoint": "F10BE", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Richins" - }, - { - "id": "143C16AD-B22C-4E1D-915D-3FE9C962DD2F", - "baseIconId": "9682A6D2-A7FA-47BF-A94E-6CDEC8B55446", - "name": "smart-card-reader", - "codepoint": "F10BF", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Richins" - }, - { - "id": "FCC195C4-2DB3-45DE-B9D2-4535A63EDB0E", - "baseIconId": "9682A6D2-A7FA-47BF-A94E-6CDEC8B55446", - "name": "smart-card-reader-outline", - "codepoint": "F10C0", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Richins" - }, - { - "id": "FD344F98-3CED-4CDD-88FF-8A21A1DFDE47", - "baseIconId": "FD344F98-3CED-4CDD-88FF-8A21A1DFDE47", - "name": "smog", - "codepoint": "F0A71", - "aliases": [], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "EE8752CF-6D3B-4D58-AFD4-1868AAA30933", - "baseIconId": "EE8752CF-6D3B-4D58-AFD4-1868AAA30933", - "name": "smoke", - "codepoint": "F1799", - "aliases": [ - "smog", - "fire" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "1DDC71A0-A86A-4E8F-BF1D-CD33C0B0BEA4", - "baseIconId": "1DDC71A0-A86A-4E8F-BF1D-CD33C0B0BEA4", - "name": "smoke-detector", - "codepoint": "F0392", - "aliases": [ - "nest-protect", - "subwoofer" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Device \/ Tech", - "Home Automation" - ], - "author": "Google" - }, - { - "id": "1BF163FB-02C8-4CE6-98AA-87EFBA04294D", - "baseIconId": "1DDC71A0-A86A-4E8F-BF1D-CD33C0B0BEA4", - "name": "smoke-detector-alert", - "codepoint": "F192E", - "aliases": [], - "styles": [ - "alert" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "60E74F0E-5537-4021-8223-BAD2B0130463", - "baseIconId": "1DDC71A0-A86A-4E8F-BF1D-CD33C0B0BEA4", - "name": "smoke-detector-alert-outline", - "codepoint": "F192F", - "aliases": [], - "styles": [ - "alert", - "outline" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E523AF46-986A-4E8F-9662-45C61A70A887", - "baseIconId": "1DDC71A0-A86A-4E8F-BF1D-CD33C0B0BEA4", - "name": "smoke-detector-off", - "codepoint": "F1809", - "aliases": [], - "styles": [ - "off" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "50719FA7-F144-4C4E-9A1E-DF4F431B117C", - "baseIconId": "1DDC71A0-A86A-4E8F-BF1D-CD33C0B0BEA4", - "name": "smoke-detector-off-outline", - "codepoint": "F180A", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "D1429C1F-766F-4F96-B784-15E6C3ECC588", - "baseIconId": "1DDC71A0-A86A-4E8F-BF1D-CD33C0B0BEA4", - "name": "smoke-detector-outline", - "codepoint": "F1808", - "aliases": [], - "styles": [ - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "99D5165C-0609-4349-9046-E3180B32E684", - "baseIconId": "1DDC71A0-A86A-4E8F-BF1D-CD33C0B0BEA4", - "name": "smoke-detector-variant", - "codepoint": "F180B", - "aliases": [], - "styles": [ - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1159B2CB-5BF1-4DB6-AC9D-80CEA88FC227", - "baseIconId": "1DDC71A0-A86A-4E8F-BF1D-CD33C0B0BEA4", - "name": "smoke-detector-variant-alert", - "codepoint": "F1930", - "aliases": [], - "styles": [ - "alert", - "variant" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C3D42E4D-5DBB-4E57-AF01-4D8E948F050E", - "baseIconId": "1DDC71A0-A86A-4E8F-BF1D-CD33C0B0BEA4", - "name": "smoke-detector-variant-off", - "codepoint": "F180C", - "aliases": [], - "styles": [ - "off", - "variant" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "20A9F2BB-C53E-410E-A433-4CEE2305AD49", - "baseIconId": "20A9F2BB-C53E-410E-A433-4CEE2305AD49", - "name": "smoking", - "codepoint": "F04B4", - "aliases": [ - "cigarette", - "smoking-area", - "smoking-rooms" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Google" - }, - { - "id": "5F974B83-AEEC-4C52-B281-1A8663B70027", - "baseIconId": "20A9F2BB-C53E-410E-A433-4CEE2305AD49", - "name": "smoking-off", - "codepoint": "F04B5", - "aliases": [ - "no-smoking", - "cigarette-off", - "smoke-free" - ], - "styles": [ - "off" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "8F75261A-E650-4B58-84AE-C805677DCC44", - "baseIconId": "8F75261A-E650-4B58-84AE-C805677DCC44", - "name": "smoking-pipe", - "codepoint": "F140D", - "aliases": [], - "styles": [], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Haley Halcyon" - }, - { - "id": "D43EF949-5B56-488A-91AE-1B19CDE64ED8", - "baseIconId": "8F75261A-E650-4B58-84AE-C805677DCC44", - "name": "smoking-pipe-off", - "codepoint": "F1428", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.2.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "529CCAF2-D35F-4A40-BEF2-213159AE5DD9", - "baseIconId": "529CCAF2-D35F-4A40-BEF2-213159AE5DD9", - "name": "snail", - "codepoint": "F1677", - "aliases": [ - "gastropod" - ], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Colton Wiscombe" - }, - { - "id": "C525609F-8CAF-40A8-A3FC-724F6C699E0A", - "baseIconId": "C525609F-8CAF-40A8-A3FC-724F6C699E0A", - "name": "snake", - "codepoint": "F150E", - "aliases": [ - "reptile" - ], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Colton Wiscombe" - }, - { - "id": "6DA57C23-2ADA-4CA1-8D1D-AFBBFA59C4FA", - "baseIconId": "6DA57C23-2ADA-4CA1-8D1D-AFBBFA59C4FA", - "name": "snapchat", - "codepoint": "F04B6", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "C2A03E16-166E-4FAA-A5DB-462CE38C44FE", - "baseIconId": "C2A03E16-166E-4FAA-A5DB-462CE38C44FE", - "name": "snowboard", - "codepoint": "F1307", - "aliases": [ - "human-snowboard" - ], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Sport", - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "5675A747-D467-473E-9A1D-1C61E1B5C619", - "baseIconId": "5675A747-D467-473E-9A1D-1C61E1B5C619", - "name": "snowflake", - "codepoint": "F0717", - "aliases": [ - "power-hibernate" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Weather", - "Holiday", - "Automotive" - ], - "author": "Google" - }, - { - "id": "5F856EA3-F987-439D-AAFF-ED545ECBBA75", - "baseIconId": "5675A747-D467-473E-9A1D-1C61E1B5C619", - "name": "snowflake-alert", - "codepoint": "F0F29", - "aliases": [ - "cold-alert", - "snow-advisory", - "freeze-advisory" - ], - "styles": [ - "alert" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Weather", - "Alert \/ Error", - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F489E6B1-12CD-4847-B039-8577751B2DFE", - "baseIconId": "5675A747-D467-473E-9A1D-1C61E1B5C619", - "name": "snowflake-check", - "codepoint": "F1A70", - "aliases": [ - "snowflake-approve" - ], - "styles": [ - "check" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "017BAEB6-E5B4-4BEF-8CA3-D0ABA689DE2C", - "baseIconId": "5675A747-D467-473E-9A1D-1C61E1B5C619", - "name": "snowflake-melt", - "codepoint": "F12CB", - "aliases": [ - "defrost" - ], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C80A9F84-F736-4E92-8D93-05F9F72D32B8", - "baseIconId": "5675A747-D467-473E-9A1D-1C61E1B5C619", - "name": "snowflake-off", - "codepoint": "F14E3", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C9E4ABED-D38C-45EC-9340-C6C8ADAD1CDF", - "baseIconId": "5675A747-D467-473E-9A1D-1C61E1B5C619", - "name": "snowflake-thermometer", - "codepoint": "F1A71", - "aliases": [ - "frost-point", - "freezing-point", - "snowflake-temperature" - ], - "styles": [ - "variant" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Weather", - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "50B6D484-E7DC-4B88-9981-9C962C9A9EB6", - "baseIconId": "5675A747-D467-473E-9A1D-1C61E1B5C619", - "name": "snowflake-variant", - "codepoint": "F0F2A", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Holiday", - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "06497E01-D87F-479B-90DC-B4E33497C8D8", - "baseIconId": "06497E01-D87F-479B-90DC-B4E33497C8D8", - "name": "snowman", - "codepoint": "F04B7", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Holiday" - ], - "author": "Austin Andrews" - }, - { - "id": "A4C7D4DF-2B1F-424B-9502-6618F88C9A65", - "baseIconId": "A4C7D4DF-2B1F-424B-9502-6618F88C9A65", - "name": "snowmobile", - "codepoint": "F06DD", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Transportation + Other", - "Sport" - ], - "author": "Google" - }, - { - "id": "D9F59FE2-7B27-4B54-8935-AC2A83CE084B", - "baseIconId": "D9F59FE2-7B27-4B54-8935-AC2A83CE084B", - "name": "snowshoeing", - "codepoint": "F1A72", - "aliases": [], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Google" - }, - { - "id": "B4AFB6A4-C315-4B06-AE4D-AC633F3ED0A7", - "baseIconId": "B4AFB6A4-C315-4B06-AE4D-AC633F3ED0A7", - "name": "soccer", - "codepoint": "F04B8", - "aliases": [ - "football" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Google" - }, - { - "id": "C24D4262-700B-46E1-82C1-01449C16205E", - "baseIconId": "C24D4262-700B-46E1-82C1-01449C16205E", - "name": "soccer-field", - "codepoint": "F0834", - "aliases": [ - "football-pitch" - ], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "GreenTurtwig" - }, - { - "id": "D6384EF6-9386-4287-BE34-7038841AABD5", - "baseIconId": "D6384EF6-9386-4287-BE34-7038841AABD5", - "name": "social-distance-2-meters", - "codepoint": "F1579", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Michael Irigoyen" - }, - { - "id": "59F69A6A-5DB4-4938-A90A-B186655409C5", - "baseIconId": "59F69A6A-5DB4-4938-A90A-B186655409C5", - "name": "social-distance-6-feet", - "codepoint": "F157A", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Google" - }, - { - "id": "5560ABF9-E635-4D73-A39B-5404443F099F", - "baseIconId": "5560ABF9-E635-4D73-A39B-5404443F099F", - "name": "sofa", - "codepoint": "F04B9", - "aliases": [ - "couch", - "living-room", - "family-room" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "37B31F21-3190-4E2D-A824-C5CC4FF66493", - "baseIconId": "5560ABF9-E635-4D73-A39B-5404443F099F", - "name": "sofa-outline", - "codepoint": "F156D", - "aliases": [ - "couch-outline", - "living-room-outline", - "family-room-outline" - ], - "styles": [ - "outline" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "61A9F431-1946-4F8F-9DB4-19E75151D397", - "baseIconId": "5560ABF9-E635-4D73-A39B-5404443F099F", - "name": "sofa-single", - "codepoint": "F156E", - "aliases": [ - "loveseat", - "love-seat", - "couch", - "chair-accent", - "living-room", - "family-room" - ], - "styles": [ - "variant" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C4595FA1-E495-4BFE-900A-A1D764B6019E", - "baseIconId": "5560ABF9-E635-4D73-A39B-5404443F099F", - "name": "sofa-single-outline", - "codepoint": "F156F", - "aliases": [ - "loveseat-outline", - "love-seat-outline", - "couch-outline", - "chair-accent-outline", - "living-room-outline", - "family-room-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "46CD8278-94CE-46F4-B2A5-01D4595E48A0", - "baseIconId": "46CD8278-94CE-46F4-B2A5-01D4595E48A0", - "name": "solar-panel", - "codepoint": "F0D9B", - "aliases": [ - "solar-energy", - "solar-electricity" - ], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Kristian Mohl" - }, - { - "id": "13BD6DBE-90E0-42A0-8FE6-A168974483CA", - "baseIconId": "46CD8278-94CE-46F4-B2A5-01D4595E48A0", - "name": "solar-panel-large", - "codepoint": "F0D9C", - "aliases": [ - "solar-panel-energy", - "solar-panel-electricity" - ], - "styles": [ - "variant" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Kristian Mohl" - }, - { - "id": "727F32FC-051B-43FE-9888-4616927AE828", - "baseIconId": "727F32FC-051B-43FE-9888-4616927AE828", - "name": "solar-power", - "codepoint": "F0A72", - "aliases": [ - "solar-energy", - "solar-electricity" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "9A0563D4-0CEB-4F7F-8CA2-27606F24603F", - "baseIconId": "727F32FC-051B-43FE-9888-4616927AE828", - "name": "solar-power-variant", - "codepoint": "F1A73", - "aliases": [ - "solar-energy", - "solar-electricity" - ], - "styles": [ - "variant" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "3EF2EC63-DBE4-4825-9AFD-5567C0A081E2", - "baseIconId": "727F32FC-051B-43FE-9888-4616927AE828", - "name": "solar-power-variant-outline", - "codepoint": "F1A74", - "aliases": [ - "solar-energy-outline", - "solar-electricity-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "4A90CB52-2637-4E5D-8333-467DD85B36F6", - "baseIconId": "4A90CB52-2637-4E5D-8333-467DD85B36F6", - "name": "soldering-iron", - "codepoint": "F1092", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "F0E0017F-DD8C-4811-9428-613238CA66A4", - "baseIconId": "F0E0017F-DD8C-4811-9428-613238CA66A4", - "name": "solid", - "codepoint": "F068D", - "aliases": [], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "FF92F5A9-DE89-4E7D-BCAB-98920EA96FFE", - "baseIconId": "FF92F5A9-DE89-4E7D-BCAB-98920EA96FFE", - "name": "sony-playstation", - "codepoint": "F0414", - "aliases": [ - "sony-playstation", - "playstation-network" - ], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Gaming \/ RPG" - ], - "author": "Contributors" - }, - { - "id": "3052FDE9-791A-43E8-ACF4-A5EB7DF8296F", - "baseIconId": "3052FDE9-791A-43E8-ACF4-A5EB7DF8296F", - "name": "sort", - "codepoint": "F04BA", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Simran" - }, - { - "id": "496476A3-F614-4925-90E6-3BB83C1C4E37", - "baseIconId": "496476A3-F614-4925-90E6-3BB83C1C4E37", - "name": "sort-alphabetical-ascending", - "codepoint": "F05BD", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "frankgrinaert" - }, - { - "id": "96571AB7-B3D4-4A76-ADE0-47D931FF1F0A", - "baseIconId": "496476A3-F614-4925-90E6-3BB83C1C4E37", - "name": "sort-alphabetical-ascending-variant", - "codepoint": "F1148", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Samuele Dassatti" - }, - { - "id": "7F545D3A-5E66-42D4-88AB-8A2BD817D731", - "baseIconId": "496476A3-F614-4925-90E6-3BB83C1C4E37", - "name": "sort-alphabetical-descending", - "codepoint": "F05BF", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "frankgrinaert" - }, - { - "id": "D4F8234D-4EE3-4825-861E-C46E8FE6F438", - "baseIconId": "496476A3-F614-4925-90E6-3BB83C1C4E37", - "name": "sort-alphabetical-descending-variant", - "codepoint": "F1149", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Samuele Dassatti" - }, - { - "id": "C2687EF2-6AEB-48BC-98E5-9A010C6E2BE7", - "baseIconId": "496476A3-F614-4925-90E6-3BB83C1C4E37", - "name": "sort-alphabetical-variant", - "codepoint": "F04BB", - "aliases": [ - "sort-by-alpha", - "sort-alphabetically" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "F36D1111-54BF-4BB8-AE34-DE4809105551", - "baseIconId": "3052FDE9-791A-43E8-ACF4-A5EB7DF8296F", - "name": "sort-ascending", - "codepoint": "F04BC", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "frankgrinaert" - }, - { - "id": "BDB3C0CD-D017-4895-82AD-41FEE4351FA6", - "baseIconId": "BDB3C0CD-D017-4895-82AD-41FEE4351FA6", - "name": "sort-bool-ascending", - "codepoint": "F1385", - "aliases": [], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "frankgrinaert" - }, - { - "id": "9F0F11BF-8F55-45CD-B185-7C8BC278954C", - "baseIconId": "BDB3C0CD-D017-4895-82AD-41FEE4351FA6", - "name": "sort-bool-ascending-variant", - "codepoint": "F1386", - "aliases": [ - "sort-checkbox-ascending" - ], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "frankgrinaert" - }, - { - "id": "36E782AF-0396-45C7-B5C2-61FB37C01E2F", - "baseIconId": "BDB3C0CD-D017-4895-82AD-41FEE4351FA6", - "name": "sort-bool-descending", - "codepoint": "F1387", - "aliases": [], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "frankgrinaert" - }, - { - "id": "549371B9-36F9-45E7-918A-72EEB98F9572", - "baseIconId": "BDB3C0CD-D017-4895-82AD-41FEE4351FA6", - "name": "sort-bool-descending-variant", - "codepoint": "F1388", - "aliases": [ - "sort-checkbox-descending" - ], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "frankgrinaert" - }, - { - "id": "87CE4E85-7911-415C-89AB-133A2AB8BC57", - "baseIconId": "87CE4E85-7911-415C-89AB-133A2AB8BC57", - "name": "sort-calendar-ascending", - "codepoint": "F1547", - "aliases": [ - "sort-date-ascending" - ], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format", - "Date \/ Time" - ], - "author": "Austin Andrews" - }, - { - "id": "D01B3C7C-64DC-4486-A656-55F7024C96AA", - "baseIconId": "87CE4E85-7911-415C-89AB-133A2AB8BC57", - "name": "sort-calendar-descending", - "codepoint": "F1548", - "aliases": [ - "sort-date-descending" - ], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format", - "Date \/ Time" - ], - "author": "Austin Andrews" - }, - { - "id": "2A4F548A-F4C1-48F2-BFB1-A6A1ACB794A6", - "baseIconId": "2A4F548A-F4C1-48F2-BFB1-A6A1ACB794A6", - "name": "sort-clock-ascending", - "codepoint": "F1549", - "aliases": [ - "sort-time-ascending" - ], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format", - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "85579FDA-7E54-483B-B1DD-A1920DFBEED6", - "baseIconId": "2A4F548A-F4C1-48F2-BFB1-A6A1ACB794A6", - "name": "sort-clock-ascending-outline", - "codepoint": "F154A", - "aliases": [ - "sort-time-ascending-outline" - ], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format", - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "8064DE58-939A-4179-A65E-0F5FA4AD6A18", - "baseIconId": "2A4F548A-F4C1-48F2-BFB1-A6A1ACB794A6", - "name": "sort-clock-descending", - "codepoint": "F154B", - "aliases": [ - "sort-time-descending" - ], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format", - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B574E857-7AE0-493E-82E1-36DC10882508", - "baseIconId": "2A4F548A-F4C1-48F2-BFB1-A6A1ACB794A6", - "name": "sort-clock-descending-outline", - "codepoint": "F154C", - "aliases": [ - "sort-time-descending-outline" - ], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format", - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F0028BDF-0589-400F-8596-100CCB029D6E", - "baseIconId": "3052FDE9-791A-43E8-ACF4-A5EB7DF8296F", - "name": "sort-descending", - "codepoint": "F04BD", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "frankgrinaert" - }, - { - "id": "68CF5B27-ACB2-468B-BD75-1DAE92A7D242", - "baseIconId": "68CF5B27-ACB2-468B-BD75-1DAE92A7D242", - "name": "sort-numeric-ascending", - "codepoint": "F1389", - "aliases": [], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "frankgrinaert" - }, - { - "id": "D3472197-9E32-440B-9F56-E84F2D35C657", - "baseIconId": "68CF5B27-ACB2-468B-BD75-1DAE92A7D242", - "name": "sort-numeric-ascending-variant", - "codepoint": "F090D", - "aliases": [], - "styles": [ - "variant" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E0ABC4A1-3840-48EF-82F8-BFF825D02F64", - "baseIconId": "68CF5B27-ACB2-468B-BD75-1DAE92A7D242", - "name": "sort-numeric-descending", - "codepoint": "F138A", - "aliases": [], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "frankgrinaert" - }, - { - "id": "618ED59F-832C-4DA8-A8F6-421CC6A10305", - "baseIconId": "68CF5B27-ACB2-468B-BD75-1DAE92A7D242", - "name": "sort-numeric-descending-variant", - "codepoint": "F0AD2", - "aliases": [], - "styles": [ - "variant" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2CD8E0F3-0AF4-4BBD-B1C8-EEF6391F62C3", - "baseIconId": "68CF5B27-ACB2-468B-BD75-1DAE92A7D242", - "name": "sort-numeric-variant", - "codepoint": "F04BE", - "aliases": [ - "sort-numerically" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "A00FD3F3-01E7-489E-AB22-66F3B94AF6C0", - "baseIconId": "3052FDE9-791A-43E8-ACF4-A5EB7DF8296F", - "name": "sort-reverse-variant", - "codepoint": "F033C", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Simran" - }, - { - "id": "9E32B54D-9759-4233-B358-C00A11300713", - "baseIconId": "3052FDE9-791A-43E8-ACF4-A5EB7DF8296F", - "name": "sort-variant", - "codepoint": "F04BF", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "450895A4-8BFF-4F63-A567-2010226F7464", - "baseIconId": "3052FDE9-791A-43E8-ACF4-A5EB7DF8296F", - "name": "sort-variant-lock", - "codepoint": "F0CCD", - "aliases": [], - "styles": [ - "lock" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format", - "Lock" - ], - "author": "Christopher Schreiner" - }, - { - "id": "30DC202C-F695-4A76-B3BB-293BCC995A6E", - "baseIconId": "3052FDE9-791A-43E8-ACF4-A5EB7DF8296F", - "name": "sort-variant-lock-open", - "codepoint": "F0CCE", - "aliases": [], - "styles": [ - "lock" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format", - "Lock" - ], - "author": "Christopher Schreiner" - }, - { - "id": "9F5F2EFA-5AED-4914-9ADC-3C2C7EC60386", - "baseIconId": "3052FDE9-791A-43E8-ACF4-A5EB7DF8296F", - "name": "sort-variant-off", - "codepoint": "F1ABB", - "aliases": [], - "styles": [ - "off", - "variant" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Michael Irigoyen" - }, - { - "id": "51D1A98E-7CD7-4BD7-88C9-333B5435C580", - "baseIconId": "3052FDE9-791A-43E8-ACF4-A5EB7DF8296F", - "name": "sort-variant-remove", - "codepoint": "F1147", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1A5FBE33-5A69-4ED4-8A33-416EFA9B24CD", - "baseIconId": "1A5FBE33-5A69-4ED4-8A33-416EFA9B24CD", - "name": "soundbar", - "codepoint": "F17DB", - "aliases": [ - "speaker-bar" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "5952089F-872D-454C-AD1F-18B205938245", - "baseIconId": "5952089F-872D-454C-AD1F-18B205938245", - "name": "soundcloud", - "codepoint": "F04C0", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "AADA1B60-0161-4417-9726-75AFB5C7AC31", - "baseIconId": "AADA1B60-0161-4417-9726-75AFB5C7AC31", - "name": "source-branch", - "codepoint": "F062C", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Austin Andrews" - }, - { - "id": "66701C6C-D1D4-42FF-AA03-74C3F4E65AC1", - "baseIconId": "AADA1B60-0161-4417-9726-75AFB5C7AC31", - "name": "source-branch-check", - "codepoint": "F14CF", - "aliases": [], - "styles": [ - "check" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Michael Irigoyen" - }, - { - "id": "288DC509-ABA1-436D-8D8D-F54FEE2DA4B8", - "baseIconId": "AADA1B60-0161-4417-9726-75AFB5C7AC31", - "name": "source-branch-minus", - "codepoint": "F14CB", - "aliases": [], - "styles": [ - "minus" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D5EAA72B-6FF0-4520-8207-A7E3E47B35F5", - "baseIconId": "AADA1B60-0161-4417-9726-75AFB5C7AC31", - "name": "source-branch-plus", - "codepoint": "F14CA", - "aliases": [], - "styles": [ - "plus" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Michael Irigoyen" - }, - { - "id": "58A72E01-DBCC-4C66-AAFE-FB37845FB50E", - "baseIconId": "AADA1B60-0161-4417-9726-75AFB5C7AC31", - "name": "source-branch-refresh", - "codepoint": "F14CD", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Michael Irigoyen" - }, - { - "id": "EB47CC8C-8EF2-4FE2-9530-2360C26378B6", - "baseIconId": "AADA1B60-0161-4417-9726-75AFB5C7AC31", - "name": "source-branch-remove", - "codepoint": "F14CC", - "aliases": [], - "styles": [ - "remove" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0A420930-2315-468C-B639-0D7E96D6937A", - "baseIconId": "AADA1B60-0161-4417-9726-75AFB5C7AC31", - "name": "source-branch-sync", - "codepoint": "F14CE", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B0400135-C84A-47D8-AD30-B6BD8292E6A4", - "baseIconId": "B0400135-C84A-47D8-AD30-B6BD8292E6A4", - "name": "source-commit", - "codepoint": "F0718", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Case Sandberg" - }, - { - "id": "5558E497-77AD-48F4-9456-E6D6B4CA991B", - "baseIconId": "B0400135-C84A-47D8-AD30-B6BD8292E6A4", - "name": "source-commit-end", - "codepoint": "F0719", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Case Sandberg" - }, - { - "id": "5681B6C8-CC7F-42B0-9B6F-B53D9A72D12F", - "baseIconId": "B0400135-C84A-47D8-AD30-B6BD8292E6A4", - "name": "source-commit-end-local", - "codepoint": "F071A", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Case Sandberg" - }, - { - "id": "DF889541-FEF0-42C0-BF6E-E29D4503C3FB", - "baseIconId": "B0400135-C84A-47D8-AD30-B6BD8292E6A4", - "name": "source-commit-local", - "codepoint": "F071B", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Case Sandberg" - }, - { - "id": "42A5B80B-C7A6-42F4-8437-458F504B7AF5", - "baseIconId": "B0400135-C84A-47D8-AD30-B6BD8292E6A4", - "name": "source-commit-next-local", - "codepoint": "F071C", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Case Sandberg" - }, - { - "id": "6647D5DC-4BF4-47FB-9B11-F1ABB94B3769", - "baseIconId": "B0400135-C84A-47D8-AD30-B6BD8292E6A4", - "name": "source-commit-start", - "codepoint": "F071D", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Case Sandberg" - }, - { - "id": "64F8200C-7866-46A6-9E8B-1CAF621517CC", - "baseIconId": "B0400135-C84A-47D8-AD30-B6BD8292E6A4", - "name": "source-commit-start-next-local", - "codepoint": "F071E", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Case Sandberg" - }, - { - "id": "F2A480EB-B06A-4472-88B9-C881754675FE", - "baseIconId": "AADA1B60-0161-4417-9726-75AFB5C7AC31", - "name": "source-fork", - "codepoint": "F04C1", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Austin Andrews" - }, - { - "id": "C4A094D6-A68C-41F8-A2EC-C87997DACE70", - "baseIconId": "AADA1B60-0161-4417-9726-75AFB5C7AC31", - "name": "source-merge", - "codepoint": "F062D", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Austin Andrews" - }, - { - "id": "6555FD23-E5EE-4F40-91CF-B72476ADED54", - "baseIconId": "AADA1B60-0161-4417-9726-75AFB5C7AC31", - "name": "source-pull", - "codepoint": "F04C2", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Austin Andrews" - }, - { - "id": "1D318024-029E-4654-A318-6647D265CDD9", - "baseIconId": "1D318024-029E-4654-A318-6647D265CDD9", - "name": "source-repository", - "codepoint": "F0CCF", - "aliases": [], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Austin Andrews" - }, - { - "id": "16D37AE7-409E-48A5-BE24-9DCBA0792FD7", - "baseIconId": "1D318024-029E-4654-A318-6647D265CDD9", - "name": "source-repository-multiple", - "codepoint": "F0CD0", - "aliases": [ - "source-repositories" - ], - "styles": [ - "multiple" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Austin Andrews" - }, - { - "id": "62A5E551-73E0-4C84-89E4-C0F34BDACEFA", - "baseIconId": "62A5E551-73E0-4C84-89E4-C0F34BDACEFA", - "name": "soy-sauce", - "codepoint": "F07EE", - "aliases": [ - "soya-sauce" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Colton Wiscombe" - }, - { - "id": "31D89882-A6D2-4E79-B441-582B1497C3D2", - "baseIconId": "62A5E551-73E0-4C84-89E4-C0F34BDACEFA", - "name": "soy-sauce-off", - "codepoint": "F13FC", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "84F00C86-0380-4554-B142-286C3B80BA3A", - "baseIconId": "84F00C86-0380-4554-B142-286C3B80BA3A", - "name": "spa", - "codepoint": "F0CD1", - "aliases": [ - "flower-lotus", - "plant" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Nature" - ], - "author": "Google" - }, - { - "id": "B0D344FE-8924-48EF-BFBA-93DB1C77DFD1", - "baseIconId": "84F00C86-0380-4554-B142-286C3B80BA3A", - "name": "spa-outline", - "codepoint": "F0CD2", - "aliases": [ - "flower-lotus-outline", - "plant" - ], - "styles": [ - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Nature" - ], - "author": "Google" - }, - { - "id": "0C50BCF5-076C-4DBB-BBFC-8B74B3CC64E7", - "baseIconId": "0C50BCF5-076C-4DBB-BBFC-8B74B3CC64E7", - "name": "space-invaders", - "codepoint": "F0BC9", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Richins" - }, - { - "id": "0F961F30-F687-4232-98E7-C27F2FC64293", - "baseIconId": "0F961F30-F687-4232-98E7-C27F2FC64293", - "name": "space-station", - "codepoint": "F1383", - "aliases": [], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "nilsfast" - }, - { - "id": "7D15FB8A-6AD7-47C9-93AD-4E968C39CDBF", - "baseIconId": "16D35D19-90C2-42DD-9E83-8F47E21A53DF", - "name": "spade", - "codepoint": "F0E65", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "GreenTurtwig" - }, - { - "id": "43C37FC5-E271-40FA-BB50-C139DDD5B15B", - "baseIconId": "43C37FC5-E271-40FA-BB50-C139DDD5B15B", - "name": "speaker", - "codepoint": "F04C3", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio", - "Home Automation" - ], - "author": "Google" - }, - { - "id": "E9F560A8-FFD9-44CD-8736-00C627756591", - "baseIconId": "43C37FC5-E271-40FA-BB50-C139DDD5B15B", - "name": "speaker-bluetooth", - "codepoint": "F09A2", - "aliases": [], - "styles": [ - "variant" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Audio" - ], - "author": "GreenTurtwig" - }, - { - "id": "57CDD6CF-360C-4B79-B9D3-1AADC9B969AD", - "baseIconId": "43C37FC5-E271-40FA-BB50-C139DDD5B15B", - "name": "speaker-message", - "codepoint": "F1B11", - "aliases": [ - "text-to-speech" - ], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Home Automation", - "Audio" - ], - "author": "Michael Irigoyen" - }, - { - "id": "6CBEB113-DF44-4DCE-A490-5AAD4766CE28", - "baseIconId": "43C37FC5-E271-40FA-BB50-C139DDD5B15B", - "name": "speaker-multiple", - "codepoint": "F0D38", - "aliases": [ - "speakers" - ], - "styles": [ - "multiple" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Audio" - ], - "author": "Michael Richins" - }, - { - "id": "9B55ECCE-270B-4A52-9A96-80BEECAD1E0B", - "baseIconId": "43C37FC5-E271-40FA-BB50-C139DDD5B15B", - "name": "speaker-off", - "codepoint": "F04C4", - "aliases": [], - "styles": [ - "off" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio", - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "2B755A5C-4AC3-4077-9D11-29DC807BBEBA", - "baseIconId": "43C37FC5-E271-40FA-BB50-C139DDD5B15B", - "name": "speaker-pause", - "codepoint": "F1B73", - "aliases": [], - "styles": [], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Audio", - "Music" - ], - "author": "Michael Irigoyen" - }, - { - "id": "CB32FC8E-E6ED-4CAB-A92B-2F922EF02AD8", - "baseIconId": "43C37FC5-E271-40FA-BB50-C139DDD5B15B", - "name": "speaker-play", - "codepoint": "F1B72", - "aliases": [], - "styles": [], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Audio", - "Music" - ], - "author": "Michael Irigoyen" - }, - { - "id": "8B5A1E60-E54F-4416-AB60-6138113BBFA7", - "baseIconId": "43C37FC5-E271-40FA-BB50-C139DDD5B15B", - "name": "speaker-stop", - "codepoint": "F1B74", - "aliases": [], - "styles": [], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Audio", - "Music" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F9EA980F-2C75-48DE-9D56-9A15CFE52865", - "baseIconId": "43C37FC5-E271-40FA-BB50-C139DDD5B15B", - "name": "speaker-wireless", - "codepoint": "F071F", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Audio", - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "B8B83A21-D267-47BD-868F-BECB081CEC1C", - "baseIconId": "B8B83A21-D267-47BD-868F-BECB081CEC1C", - "name": "spear", - "codepoint": "F1845", - "aliases": [ - "staff", - "fishing" - ], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Colton Wiscombe" - }, - { - "id": "F0EE6F6A-2B43-4880-8DC9-6E7515B3BEDE", - "baseIconId": "F0EE6F6A-2B43-4880-8DC9-6E7515B3BEDE", - "name": "speedometer", - "codepoint": "F04C5", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Austin Andrews" - }, - { - "id": "86833899-057F-4099-AF77-0EECD2BAE698", - "baseIconId": "F0EE6F6A-2B43-4880-8DC9-6E7515B3BEDE", - "name": "speedometer-medium", - "codepoint": "F0F85", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "GreenTurtwig" - }, - { - "id": "9500D7AF-3917-41AB-8694-94FABA5F94ED", - "baseIconId": "F0EE6F6A-2B43-4880-8DC9-6E7515B3BEDE", - "name": "speedometer-slow", - "codepoint": "F0F86", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "GreenTurtwig" - }, - { - "id": "72253002-9545-40A4-95A4-49401269B553", - "baseIconId": "72253002-9545-40A4-95A4-49401269B553", - "name": "spellcheck", - "codepoint": "F04C6", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "C599941B-1EE8-44E8-8FE9-D8AD503BB57B", - "baseIconId": "C599941B-1EE8-44E8-8FE9-D8AD503BB57B", - "name": "sphere", - "codepoint": "F1954", - "aliases": [], - "styles": [], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Colton Wiscombe" - }, - { - "id": "9E6A501E-659C-4C6B-8ADE-4BF61DAADDD2", - "baseIconId": "C599941B-1EE8-44E8-8FE9-D8AD503BB57B", - "name": "sphere-off", - "codepoint": "F1955", - "aliases": [], - "styles": [ - "off" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Colton Wiscombe" - }, - { - "id": "BCDD4A6F-3064-4FF3-9172-0BBF8BED2D2C", - "baseIconId": "BCDD4A6F-3064-4FF3-9172-0BBF8BED2D2C", - "name": "spider", - "codepoint": "F11EA", - "aliases": [ - "arachnid", - "bug" - ], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Holiday", - "Nature", - "Animal" - ], - "author": "Michael Richins" - }, - { - "id": "52BB8EB9-6227-4EFD-BEFF-F20BE1670AEC", - "baseIconId": "BCDD4A6F-3064-4FF3-9172-0BBF8BED2D2C", - "name": "spider-outline", - "codepoint": "F1C75", - "aliases": [ - "arachnid-outline" - ], - "styles": [ - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Animal", - "Holiday", - "Nature" - ], - "author": "Jeff Anders" - }, - { - "id": "1F613123-9D4B-4C5A-84FB-F6B804BBFB21", - "baseIconId": "1F613123-9D4B-4C5A-84FB-F6B804BBFB21", - "name": "spider-thread", - "codepoint": "F11EB", - "aliases": [ - "arachnid-thread", - "bug" - ], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Holiday", - "Nature", - "Animal" - ], - "author": "Michael Richins" - }, - { - "id": "8464C75D-EA57-4E89-80E9-BE6A48793809", - "baseIconId": "8464C75D-EA57-4E89-80E9-BE6A48793809", - "name": "spider-web", - "codepoint": "F0BCA", - "aliases": [ - "cobweb", - "arachnid-web" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Holiday" - ], - "author": "Austin Andrews" - }, - { - "id": "B647E730-0D7E-4F13-A051-74D92C2A6F0A", - "baseIconId": "B647E730-0D7E-4F13-A051-74D92C2A6F0A", - "name": "spirit-level", - "codepoint": "F14F1", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D68EF8DE-C9F5-47FB-BCD4-C0DD4D7FCBFD", - "baseIconId": "D68EF8DE-C9F5-47FB-BCD4-C0DD4D7FCBFD", - "name": "spoon-sugar", - "codepoint": "F1429", - "aliases": [], - "styles": [], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "51C1DE39-1C25-49B7-A295-DD13B874C48B", - "baseIconId": "51C1DE39-1C25-49B7-A295-DD13B874C48B", - "name": "spotify", - "codepoint": "F04C7", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "A4956491-730F-4BC9-A6C1-03AF3C54C134", - "baseIconId": "A4956491-730F-4BC9-A6C1-03AF3C54C134", - "name": "spotlight", - "codepoint": "F04C8", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "13AE04D2-BB67-4CA4-89F6-11C88C2A217E", - "baseIconId": "A4956491-730F-4BC9-A6C1-03AF3C54C134", - "name": "spotlight-beam", - "codepoint": "F04C9", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "0CDAFE95-E28B-4A8D-9634-C6BBB99EE598", - "baseIconId": "0CDAFE95-E28B-4A8D-9634-C6BBB99EE598", - "name": "spray", - "codepoint": "F0665", - "aliases": [ - "paint", - "aerosol" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Agriculture", - "Drawing \/ Art", - "Color" - ], - "author": "Austin Andrews" - }, - { - "id": "997059BA-96F4-456C-8B53-8355521AE536", - "baseIconId": "997059BA-96F4-456C-8B53-8355521AE536", - "name": "spray-bottle", - "codepoint": "F0AE0", - "aliases": [ - "cleaning" - ], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "3B348D41-66D2-4CC7-894A-1C2E9EE64C7F", - "baseIconId": "3B348D41-66D2-4CC7-894A-1C2E9EE64C7F", - "name": "sprinkler", - "codepoint": "F105F", - "aliases": [ - "irrigation" - ], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "ECE05EC2-192B-4450-A0CB-78249EC9140A", - "baseIconId": "ECE05EC2-192B-4450-A0CB-78249EC9140A", - "name": "sprinkler-fire", - "codepoint": "F199D", - "aliases": [ - "sprinkler-mist", - "mister", - "sprinkler-head" - ], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "4CE94553-ECA2-4C72-B66B-EEE5106F1438", - "baseIconId": "3B348D41-66D2-4CC7-894A-1C2E9EE64C7F", - "name": "sprinkler-variant", - "codepoint": "F1060", - "aliases": [ - "irrigation" - ], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "58F40CA4-567A-42EF-A5D9-DD6A1BB42437", - "baseIconId": "58F40CA4-567A-42EF-A5D9-DD6A1BB42437", - "name": "sprout", - "codepoint": "F0E66", - "aliases": [ - "seedling", - "plant", - "ecology", - "environment" - ], - "styles": [], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Agriculture", - "Nature" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DDE9D3A4-FF81-4182-8FEE-3A0DD30F88F8", - "baseIconId": "58F40CA4-567A-42EF-A5D9-DD6A1BB42437", - "name": "sprout-outline", - "codepoint": "F0E67", - "aliases": [ - "seedling-outline", - "plant-outline", - "ecology-outline", - "environment-outline" - ], - "styles": [ - "outline" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Agriculture", - "Nature" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5659F8EC-377D-41D2-AB3A-52DC40815DC7", - "baseIconId": "5659F8EC-377D-41D2-AB3A-52DC40815DC7", - "name": "square", - "codepoint": "F0764", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Austin Andrews" - }, - { - "id": "F49668FC-6B0F-43E9-BB4E-044C3C9229AA", - "baseIconId": "5659F8EC-377D-41D2-AB3A-52DC40815DC7", - "name": "square-circle", - "codepoint": "F1500", - "aliases": [ - "vegetarian", - "lacto-vegetarian" - ], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "30192641-5B4D-4197-AEA1-499E250481FA", - "baseIconId": "5659F8EC-377D-41D2-AB3A-52DC40815DC7", - "name": "square-circle-outline", - "codepoint": "F1C50", - "aliases": [], - "styles": [ - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "22469E65-F1CB-408D-B6B5-1E599A85E368", - "baseIconId": "5659F8EC-377D-41D2-AB3A-52DC40815DC7", - "name": "square-edit-outline", - "codepoint": "F090C", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "GreenTurtwig" - }, - { - "id": "0267FB77-EB23-41D4-92B4-FF65796BDF40", - "baseIconId": "5659F8EC-377D-41D2-AB3A-52DC40815DC7", - "name": "square-medium", - "codepoint": "F0A13", - "aliases": [], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1EC70A02-36D5-4C3B-A721-018653864C6D", - "baseIconId": "5659F8EC-377D-41D2-AB3A-52DC40815DC7", - "name": "square-medium-outline", - "codepoint": "F0A14", - "aliases": [], - "styles": [ - "outline" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Michael Irigoyen" - }, - { - "id": "19F3DC9F-4861-4220-944C-8BE8D543902B", - "baseIconId": "5659F8EC-377D-41D2-AB3A-52DC40815DC7", - "name": "square-off", - "codepoint": "F12EE", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "32823532-5FAC-4894-8577-EAED930DE4C2", - "baseIconId": "5659F8EC-377D-41D2-AB3A-52DC40815DC7", - "name": "square-off-outline", - "codepoint": "F12EF", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "6F9AA4F8-ECC6-495E-87C0-84DCE1327F4D", - "baseIconId": "5659F8EC-377D-41D2-AB3A-52DC40815DC7", - "name": "square-opacity", - "codepoint": "F1854", - "aliases": [ - "square-transparent" - ], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Drawing \/ Art", - "Shape" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5ED659B5-F175-445F-950D-0B4DDAB3F8B3", - "baseIconId": "5659F8EC-377D-41D2-AB3A-52DC40815DC7", - "name": "square-outline", - "codepoint": "F0763", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Austin Andrews" - }, - { - "id": "D0835CDD-0255-4A0D-B86F-DAB300C5ADCC", - "baseIconId": "D0835CDD-0255-4A0D-B86F-DAB300C5ADCC", - "name": "square-root", - "codepoint": "F0784", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Austin Andrews" - }, - { - "id": "4DD48496-5BE6-4866-A298-1D9D399651B0", - "baseIconId": "D0835CDD-0255-4A0D-B86F-DAB300C5ADCC", - "name": "square-root-box", - "codepoint": "F09A3", - "aliases": [], - "styles": [ - "box" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [], - "author": "Nick" - }, - { - "id": "56B32490-2AEB-4EF7-B0F8-72D918829BE2", - "baseIconId": "5659F8EC-377D-41D2-AB3A-52DC40815DC7", - "name": "square-rounded", - "codepoint": "F14FB", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "D8486DF6-E4E4-4EAF-B362-8A9FD1CF27C3", - "baseIconId": "5659F8EC-377D-41D2-AB3A-52DC40815DC7", - "name": "square-rounded-badge", - "codepoint": "F1A07", - "aliases": [ - "app-badge", - "push-notification" - ], - "styles": [ - "badge" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Shape", - "Notification" - ], - "author": "Jeff Anders" - }, - { - "id": "336D96D3-5E97-434B-BEF7-651BF94FA347", - "baseIconId": "5659F8EC-377D-41D2-AB3A-52DC40815DC7", - "name": "square-rounded-badge-outline", - "codepoint": "F1A08", - "aliases": [ - "app-badge-outline", - "push-notification-outline" - ], - "styles": [ - "badge", - "outline" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Shape", - "Notification" - ], - "author": "Jeff Anders" - }, - { - "id": "9E46259E-F519-4CCA-BE7E-0DAC8230B3A4", - "baseIconId": "5659F8EC-377D-41D2-AB3A-52DC40815DC7", - "name": "square-rounded-outline", - "codepoint": "F14FC", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "E4490267-ACAE-4E86-8747-8D2D620DC707", - "baseIconId": "5659F8EC-377D-41D2-AB3A-52DC40815DC7", - "name": "square-small", - "codepoint": "F0A15", - "aliases": [ - "bullet" - ], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "F55F6161-5EE4-4168-881C-A50E671AC25F", - "baseIconId": "F55F6161-5EE4-4168-881C-A50E671AC25F", - "name": "square-wave", - "codepoint": "F147B", - "aliases": [], - "styles": [], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Audio" - ], - "author": "Haley Halcyon" - }, - { - "id": "363A0CD3-194D-4F7F-9287-82B8D565B064", - "baseIconId": "363A0CD3-194D-4F7F-9287-82B8D565B064", - "name": "squeegee", - "codepoint": "F0AE1", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "EC87D6AA-77FC-462A-82AC-715550CD98AB", - "baseIconId": "EC87D6AA-77FC-462A-82AC-715550CD98AB", - "name": "ssh", - "codepoint": "F08C0", - "aliases": [], - "styles": [], - "version": "2.2.43", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "D76A8752-ED97-4E90-95EC-B1D6E81ABA9E", - "baseIconId": "D76A8752-ED97-4E90-95EC-B1D6E81ABA9E", - "name": "stack-exchange", - "codepoint": "F060B", - "aliases": [ - "stackexchange" - ], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "72E7037B-1C3B-44BB-A9EC-FC2D6B3EA745", - "baseIconId": "72E7037B-1C3B-44BB-A9EC-FC2D6B3EA745", - "name": "stack-overflow", - "codepoint": "F04CC", - "aliases": [ - "stackoverflow" - ], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "7FB125A0-875A-4766-BFAF-02CC45226530", - "baseIconId": "7FB125A0-875A-4766-BFAF-02CC45226530", - "name": "stackpath", - "codepoint": "F0359", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "5FDB24B6-FF16-4575-A794-E5CCEB95CC81", - "baseIconId": "5FDB24B6-FF16-4575-A794-E5CCEB95CC81", - "name": "stadium", - "codepoint": "F0FF9", - "aliases": [ - "arena" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Sport", - "Places" - ], - "author": "Google" - }, - { - "id": "AB07DE31-2215-49E8-925E-8E4B235664FA", - "baseIconId": "5FDB24B6-FF16-4575-A794-E5CCEB95CC81", - "name": "stadium-outline", - "codepoint": "F1B03", - "aliases": [ - "arena-outline" - ], - "styles": [ - "outline" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Sport", - "Places" - ], - "author": "Google" - }, - { - "id": "0407BE27-099D-4170-BA1C-A87A4239F9DA", - "baseIconId": "5FDB24B6-FF16-4575-A794-E5CCEB95CC81", - "name": "stadium-variant", - "codepoint": "F0720", - "aliases": [ - "arena" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Places", - "Sport" - ], - "author": "Alex Efremo" - }, - { - "id": "D5BBEF8B-FC7A-4FA5-9DA6-4D970AC6A530", - "baseIconId": "D5BBEF8B-FC7A-4FA5-9DA6-4D970AC6A530", - "name": "stairs", - "codepoint": "F04CD", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Simran" - }, - { - "id": "58C2BC63-FCF5-445B-B351-23CF48253FEF", - "baseIconId": "D5BBEF8B-FC7A-4FA5-9DA6-4D970AC6A530", - "name": "stairs-box", - "codepoint": "F139E", - "aliases": [], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [], - "author": "Moma Design Studio" - }, - { - "id": "5B344682-C177-40CC-97EC-418D010EAE07", - "baseIconId": "D5BBEF8B-FC7A-4FA5-9DA6-4D970AC6A530", - "name": "stairs-down", - "codepoint": "F12BE", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Austin Andrews" - }, - { - "id": "8F09C6B0-DFE8-4700-A90A-476EFA6454F4", - "baseIconId": "D5BBEF8B-FC7A-4FA5-9DA6-4D970AC6A530", - "name": "stairs-up", - "codepoint": "F12BD", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Austin Andrews" - }, - { - "id": "2D9C68D6-6DFA-42CC-B69C-E28011FC2BF7", - "baseIconId": "2D9C68D6-6DFA-42CC-B69C-E28011FC2BF7", - "name": "stamper", - "codepoint": "F0D39", - "aliases": [], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [], - "author": "Nick" - }, - { - "id": "DAA79A7B-03FB-431A-85DD-AB9749783DC0", - "baseIconId": "DAA79A7B-03FB-431A-85DD-AB9749783DC0", - "name": "standard-definition", - "codepoint": "F07EF", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Austin Andrews" - }, - { - "id": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star", - "codepoint": "F04CE", - "aliases": [ - "grade", - "star-rate", - "favorite" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Google" - }, - { - "id": "07CA9ED6-5D94-4145-AB3E-EA9FD7283E0A", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-box", - "codepoint": "F0A73", - "aliases": [ - "favorite-box" - ], - "styles": [ - "box" - ], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "9270C3C4-1ADB-4965-9DAE-444F9448B39E", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-box-multiple", - "codepoint": "F1286", - "aliases": [ - "favorite-box-multiple" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Yaroslav Bandura" - }, - { - "id": "2B9ACC0A-EA3D-478D-935E-EAFA8F8580CF", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-box-multiple-outline", - "codepoint": "F1287", - "aliases": [ - "favorite-box-multiple-outline" - ], - "styles": [ - "outline" - ], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Yaroslav Bandura" - }, - { - "id": "B22FEE66-3EC9-466A-9014-EF53030FA3D9", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-box-outline", - "codepoint": "F0A74", - "aliases": [ - "favorite-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "6AB2A77F-C9ED-4EF1-BDD3-4E060E690A7E", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-check", - "codepoint": "F1566", - "aliases": [ - "favorite-check" - ], - "styles": [ - "check" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Michael Irigoyen" - }, - { - "id": "94E37A05-1F0E-49EE-92D8-5FE57B54123F", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-check-outline", - "codepoint": "F156A", - "aliases": [ - "favorite-check-outline" - ], - "styles": [ - "check", - "outline" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Michael Irigoyen" - }, - { - "id": "76D19C8B-0302-436A-A19F-5AC5EE8AC88C", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-circle", - "codepoint": "F04CF", - "aliases": [ - "stars", - "favorite-circle" - ], - "styles": [ - "circle" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Google" - }, - { - "id": "9E034CD9-F400-4D4A-A2CB-6030313F2CED", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-circle-outline", - "codepoint": "F09A4", - "aliases": [ - "feature-highlight", - "favorite-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Google" - }, - { - "id": "82407F8C-2E0B-4F79-9409-0C267A248470", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-cog", - "codepoint": "F1668", - "aliases": [ - "favorite-cog" - ], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "D1100539-0788-4C74-AD03-8C5F8383DF2E", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-cog-outline", - "codepoint": "F1669", - "aliases": [ - "favorite-cog-outline" - ], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "94C88D65-EE50-4DC5-920D-FA4181DE0413", - "baseIconId": "94C88D65-EE50-4DC5-920D-FA4181DE0413", - "name": "star-crescent", - "codepoint": "F0979", - "aliases": [ - "islam", - "religion-islamic", - "religion-muslim" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Religion" - ], - "author": "Nick" - }, - { - "id": "7EF95029-012C-456C-A1E8-BB96961071FD", - "baseIconId": "7EF95029-012C-456C-A1E8-BB96961071FD", - "name": "star-david", - "codepoint": "F097A", - "aliases": [ - "jewish", - "religion-judaic", - "judaism", - "magen-david" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Religion" - ], - "author": "Nick" - }, - { - "id": "20FBE06D-72C3-4E1C-945D-C7E69DC0736D", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-face", - "codepoint": "F09A5", - "aliases": [ - "favorite-face", - "emoji-star", - "emoticon-star" - ], - "styles": [ - "variant" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Google" - }, - { - "id": "4F7E1FD5-FE11-4509-8253-D0B2EB7E3CFF", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-four-points", - "codepoint": "F0AE2", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2DF46C9A-650D-486D-B242-36AD17F82227", - "baseIconId": "4F7E1FD5-FE11-4509-8253-D0B2EB7E3CFF", - "name": "star-four-points-box", - "codepoint": "F1C51", - "aliases": [ - "auto-box" - ], - "styles": [ - "box" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Jeff Anders" - }, - { - "id": "CB3E6FC0-B9F1-4CAE-AAB9-72946D7E7064", - "baseIconId": "4F7E1FD5-FE11-4509-8253-D0B2EB7E3CFF", - "name": "star-four-points-box-outline", - "codepoint": "F1C52", - "aliases": [ - "auto-box-outline" - ], - "styles": [ - "box", - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Jeff Anders" - }, - { - "id": "ABA4EF5C-BB66-4FEA-85A0-74ABAC4B0222", - "baseIconId": "4F7E1FD5-FE11-4509-8253-D0B2EB7E3CFF", - "name": "star-four-points-circle", - "codepoint": "F1C53", - "aliases": [ - "auto-circle" - ], - "styles": [ - "circle" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Jeff Anders" - }, - { - "id": "8393BD57-7249-40BE-B342-7CF50CAEAF29", - "baseIconId": "4F7E1FD5-FE11-4509-8253-D0B2EB7E3CFF", - "name": "star-four-points-circle-outline", - "codepoint": "F1C54", - "aliases": [ - "auto-circle-outline" - ], - "styles": [ - "circle", - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Jeff Anders" - }, - { - "id": "F74484E2-76FB-4671-9960-AE18E95F04FA", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-four-points-outline", - "codepoint": "F0AE3", - "aliases": [], - "styles": [ - "outline" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Michael Irigoyen" - }, - { - "id": "871110B6-9A38-4AEC-89DB-5570E84F109A", - "baseIconId": "4F7E1FD5-FE11-4509-8253-D0B2EB7E3CFF", - "name": "star-four-points-small", - "codepoint": "F1C55", - "aliases": [], - "styles": [], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Jeff Anders" - }, - { - "id": "E86BFC0D-B4A4-41F2-A8E3-D1AE79072A45", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-half", - "codepoint": "F0246", - "aliases": [ - "favorite-half" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Simran" - }, - { - "id": "52E97617-C7F4-45D0-98E0-E9B4407EC179", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-half-full", - "codepoint": "F04D0", - "aliases": [ - "favorite-half-full" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "CA24758C-3B0C-44DE-9395-C5CAF2981E5D", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-minus", - "codepoint": "F1564", - "aliases": [ - "favorite-minus" - ], - "styles": [ - "minus" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Michael Irigoyen" - }, - { - "id": "24A0E7F1-32AA-4B4B-B0BC-93AD9F7E2F8A", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-minus-outline", - "codepoint": "F1568", - "aliases": [ - "favorite-minus-outline" - ], - "styles": [ - "minus", - "outline" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Michael Irigoyen" - }, - { - "id": "3CE96C58-D12F-474D-916F-D0509E3BA408", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-off", - "codepoint": "F04D1", - "aliases": [ - "favorite-off" - ], - "styles": [ - "off" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "297E76E3-B7A2-44A1-A340-F479AEFEF282", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-off-outline", - "codepoint": "F155B", - "aliases": [ - "favorite-off-outline" - ], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "D443AD2F-291D-496E-ACD2-109891446FF2", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-outline", - "codepoint": "F04D2", - "aliases": [ - "star-border", - "favorite-outline" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Google" - }, - { - "id": "A782B3BE-28DC-4BF8-A209-42DC8F1CE287", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-plus", - "codepoint": "F1563", - "aliases": [ - "favorite-plus", - "star-add", - "favorite-add" - ], - "styles": [ - "plus" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0CBFD9AD-12B1-4AAF-A9CC-9CA46FEB47FD", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-plus-outline", - "codepoint": "F1567", - "aliases": [ - "star-add-outline", - "favorite-plus-outline", - "favorite-add-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Michael Irigoyen" - }, - { - "id": "49254980-CD72-42B5-A87B-F24EFC2E4EA5", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-remove", - "codepoint": "F1565", - "aliases": [ - "favorite-remove" - ], - "styles": [ - "remove" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Michael Irigoyen" - }, - { - "id": "40769B91-9676-413A-8D6D-9D21132637E2", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-remove-outline", - "codepoint": "F1569", - "aliases": [ - "favorite-remove-outline" - ], - "styles": [ - "outline", - "remove" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Michael Irigoyen" - }, - { - "id": "30D8C8F6-3BDE-40B8-A015-6E607C370360", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-settings", - "codepoint": "F166A", - "aliases": [ - "favorite-settings" - ], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "AA6C9E76-AC9C-4373-8AC4-F5C706741FC9", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-settings-outline", - "codepoint": "F166B", - "aliases": [ - "favorite-settings-outline" - ], - "styles": [], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "18267D80-A569-4013-84F4-7024F3990F47", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-shooting", - "codepoint": "F1741", - "aliases": [ - "favorite-shooting" - ], - "styles": [ - "variant" - ], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "27A6F1B6-E095-494B-8CC7-660695DC6E70", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-shooting-outline", - "codepoint": "F1742", - "aliases": [ - "favorite-shooting-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "815B35DE-0C4D-46AD-90EC-2AFEE0A5FC17", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-three-points", - "codepoint": "F0AE4", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Michael Irigoyen" - }, - { - "id": "3BA12DC6-1D79-4B2A-BCF2-52FAF2160E23", - "baseIconId": "53D81A11-D8FF-46F4-A0CB-B7F668BA720D", - "name": "star-three-points-outline", - "codepoint": "F0AE5", - "aliases": [], - "styles": [ - "outline" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Michael Irigoyen" - }, - { - "id": "77FB59F8-81D3-4919-BBEE-3B897EC24C4E", - "baseIconId": "77FB59F8-81D3-4919-BBEE-3B897EC24C4E", - "name": "state-machine", - "codepoint": "F11EF", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [], - "author": "frankgrinaert" - }, - { - "id": "FBD721A3-7CD8-4769-902C-2B434CA107EE", - "baseIconId": "FBD721A3-7CD8-4769-902C-2B434CA107EE", - "name": "steam", - "codepoint": "F04D3", - "aliases": [], - "styles": [ - "circle" - ], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Gaming \/ RPG" - ], - "author": "Contributors" - }, - { - "id": "A2FE9DC5-BC17-4265-9D2C-4CA20135C4BB", - "baseIconId": "A2FE9DC5-BC17-4265-9D2C-4CA20135C4BB", - "name": "steering", - "codepoint": "F04D4", - "aliases": [ - "search-hands-free" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Google" - }, - { - "id": "1489D950-AD3A-47BD-A0CD-2E0A33943F54", - "baseIconId": "A2FE9DC5-BC17-4265-9D2C-4CA20135C4BB", - "name": "steering-off", - "codepoint": "F090E", - "aliases": [ - "search-hands-free-off" - ], - "styles": [ - "off" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Google" - }, - { - "id": "3056B0E6-E30C-4F6D-8647-AC5559FD7DCF", - "baseIconId": "3056B0E6-E30C-4F6D-8647-AC5559FD7DCF", - "name": "step-backward", - "codepoint": "F04D5", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "9815CAC2-7390-4AE1-AE72-2B49546987EC", - "baseIconId": "3056B0E6-E30C-4F6D-8647-AC5559FD7DCF", - "name": "step-backward-2", - "codepoint": "F04D6", - "aliases": [ - "frame-backward" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "6773EDAB-CBAA-4C56-80D6-E029EB45115E", - "baseIconId": "6773EDAB-CBAA-4C56-80D6-E029EB45115E", - "name": "step-forward", - "codepoint": "F04D7", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "890D584F-45C1-4D2C-96C0-373465DB6477", - "baseIconId": "6773EDAB-CBAA-4C56-80D6-E029EB45115E", - "name": "step-forward-2", - "codepoint": "F04D8", - "aliases": [ - "frame-forward" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "641202BA-294A-4A0F-851D-FB83FEC9D7EE", - "baseIconId": "641202BA-294A-4A0F-851D-FB83FEC9D7EE", - "name": "stethoscope", - "codepoint": "F04D9", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Simran" - }, - { - "id": "D2115A9A-4F13-4F9E-888D-3E8CE835A7C3", - "baseIconId": "D2115A9A-4F13-4F9E-888D-3E8CE835A7C3", - "name": "sticker", - "codepoint": "F1364", - "aliases": [], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "6E585638-20B9-4347-B991-62027390FCE4", - "baseIconId": "D2115A9A-4F13-4F9E-888D-3E8CE835A7C3", - "name": "sticker-alert", - "codepoint": "F1365", - "aliases": [], - "styles": [ - "alert" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Colton Wiscombe" - }, - { - "id": "795CD51D-0887-4AC1-B7C1-137248AE0EB3", - "baseIconId": "D2115A9A-4F13-4F9E-888D-3E8CE835A7C3", - "name": "sticker-alert-outline", - "codepoint": "F1366", - "aliases": [], - "styles": [ - "alert", - "outline" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Colton Wiscombe" - }, - { - "id": "A972E9E6-C525-4162-96DA-6A66951A2547", - "baseIconId": "D2115A9A-4F13-4F9E-888D-3E8CE835A7C3", - "name": "sticker-check", - "codepoint": "F1367", - "aliases": [], - "styles": [ - "check" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "4239323B-AA14-4177-8F94-AB7F1577D111", - "baseIconId": "D2115A9A-4F13-4F9E-888D-3E8CE835A7C3", - "name": "sticker-check-outline", - "codepoint": "F1368", - "aliases": [], - "styles": [ - "check", - "outline" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "F4C92E8A-A238-4F7C-B2FC-CBA914C5CE04", - "baseIconId": "D2115A9A-4F13-4F9E-888D-3E8CE835A7C3", - "name": "sticker-circle-outline", - "codepoint": "F05D0", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Christopher Schreiner" - }, - { - "id": "9E28CC83-5155-4620-80C1-62875D117A79", - "baseIconId": "D2115A9A-4F13-4F9E-888D-3E8CE835A7C3", - "name": "sticker-emoji", - "codepoint": "F0785", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Emoji" - ], - "author": "Google" - }, - { - "id": "D0DB0495-F23A-4DF1-AE7B-704259C648F1", - "baseIconId": "D2115A9A-4F13-4F9E-888D-3E8CE835A7C3", - "name": "sticker-minus", - "codepoint": "F1369", - "aliases": [], - "styles": [ - "minus" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "F8C4F362-C8D2-40FD-A631-B79E0341572C", - "baseIconId": "D2115A9A-4F13-4F9E-888D-3E8CE835A7C3", - "name": "sticker-minus-outline", - "codepoint": "F136A", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "6F7361D9-E44F-4BBC-B5E6-D6862467A849", - "baseIconId": "D2115A9A-4F13-4F9E-888D-3E8CE835A7C3", - "name": "sticker-outline", - "codepoint": "F136B", - "aliases": [], - "styles": [ - "outline" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "48F11F1C-7501-4EDB-B4C9-FEA63EF1C090", - "baseIconId": "D2115A9A-4F13-4F9E-888D-3E8CE835A7C3", - "name": "sticker-plus", - "codepoint": "F136C", - "aliases": [], - "styles": [ - "plus" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "A28B1EF0-2538-4104-980A-D6F044F461AF", - "baseIconId": "D2115A9A-4F13-4F9E-888D-3E8CE835A7C3", - "name": "sticker-plus-outline", - "codepoint": "F136D", - "aliases": [], - "styles": [ - "outline", - "plus" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "27A4E71C-CF92-4AA2-9B1B-4CC6FC06B58C", - "baseIconId": "D2115A9A-4F13-4F9E-888D-3E8CE835A7C3", - "name": "sticker-remove", - "codepoint": "F136E", - "aliases": [], - "styles": [ - "remove" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "CA6D437A-FDC6-48F6-9414-A5B7832053F1", - "baseIconId": "D2115A9A-4F13-4F9E-888D-3E8CE835A7C3", - "name": "sticker-remove-outline", - "codepoint": "F136F", - "aliases": [], - "styles": [ - "outline", - "remove" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "9BEC4C74-48A6-4A63-94E5-2F5FF0C06173", - "baseIconId": "D2115A9A-4F13-4F9E-888D-3E8CE835A7C3", - "name": "sticker-text", - "codepoint": "F178E", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "7AFB88BB-BCCF-4A79-AFC1-92BEB8E2EDBA", - "baseIconId": "D2115A9A-4F13-4F9E-888D-3E8CE835A7C3", - "name": "sticker-text-outline", - "codepoint": "F178F", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "3C90040A-0B3F-4849-B21D-E16240D7A699", - "baseIconId": "3C90040A-0B3F-4849-B21D-E16240D7A699", - "name": "stocking", - "codepoint": "F04DA", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Holiday" - ], - "author": "Austin Andrews" - }, - { - "id": "675A613A-F713-458A-970C-86883FF6C2B0", - "baseIconId": "675A613A-F713-458A-970C-86883FF6C2B0", - "name": "stomach", - "codepoint": "F1093", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Michael Irigoyen" - }, - { - "id": "411BA388-1AF1-4197-AD0A-CF2313071836", - "baseIconId": "411BA388-1AF1-4197-AD0A-CF2313071836", - "name": "stool", - "codepoint": "F195D", - "aliases": [], - "styles": [], - "version": "6.4.95", - "deprecated": false, - "tags": [], - "author": "Teodor Sandu" - }, - { - "id": "5237A946-C396-4C75-B369-751CD362AB5E", - "baseIconId": "411BA388-1AF1-4197-AD0A-CF2313071836", - "name": "stool-outline", - "codepoint": "F195E", - "aliases": [], - "styles": [], - "version": "6.4.95", - "deprecated": false, - "tags": [], - "author": "Teodor Sandu" - }, - { - "id": "F1057179-EA45-4D87-A14D-D05442C06503", - "baseIconId": "F1057179-EA45-4D87-A14D-D05442C06503", - "name": "stop", - "codepoint": "F04DB", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "EC57EC60-1C8E-45CE-BF4A-D019AFD1F148", - "baseIconId": "F1057179-EA45-4D87-A14D-D05442C06503", - "name": "stop-circle", - "codepoint": "F0666", - "aliases": [], - "styles": [ - "circle" - ], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "B343DEEB-A0ED-41BF-8C86-37D04A1040A6", - "baseIconId": "F1057179-EA45-4D87-A14D-D05442C06503", - "name": "stop-circle-outline", - "codepoint": "F0667", - "aliases": [], - "styles": [ - "circle", - "outline" - ], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "2C19B9EA-AB7C-401A-B84F-A0DCD2336BBE", - "baseIconId": "2C19B9EA-AB7C-401A-B84F-A0DCD2336BBE", - "name": "storage-tank", - "codepoint": "F1A75", - "aliases": [ - "propane-tank", - "gas-tank" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "6140C9BE-C66B-4ADC-957F-74A59541EA1A", - "baseIconId": "2C19B9EA-AB7C-401A-B84F-A0DCD2336BBE", - "name": "storage-tank-outline", - "codepoint": "F1A76", - "aliases": [ - "propane-tank-outline", - "gas-tank-outline" - ], - "styles": [ - "outline" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "3C3AEDE0-B6DA-4CB9-A686-869634678D5D", - "baseIconId": "3C3AEDE0-B6DA-4CB9-A686-869634678D5D", - "name": "store", - "codepoint": "F04DC", - "aliases": [ - "shop", - "store-mall-directory" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Places", - "Shopping" - ], - "author": "Google" - }, - { - "id": "417393DA-3C7F-4BF2-9283-AB1429FFA068", - "baseIconId": "417393DA-3C7F-4BF2-9283-AB1429FFA068", - "name": "store-24-hour", - "codepoint": "F04DD", - "aliases": [ - "local-convenience-store", - "shop-24-hour" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Places", - "Shopping" - ], - "author": "Google" - }, - { - "id": "84CE3480-8C26-4B78-9524-CB8E6AA23F1D", - "baseIconId": "3C3AEDE0-B6DA-4CB9-A686-869634678D5D", - "name": "store-alert", - "codepoint": "F18C1", - "aliases": [ - "shop-alert" - ], - "styles": [ - "alert" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Places", - "Shopping", - "Alert \/ Error" - ], - "author": "Colton Wiscombe" - }, - { - "id": "3D34BFA8-56E0-4FDB-A8CF-7C19AFE14277", - "baseIconId": "3C3AEDE0-B6DA-4CB9-A686-869634678D5D", - "name": "store-alert-outline", - "codepoint": "F18C2", - "aliases": [ - "shop-alert-outline" - ], - "styles": [ - "alert", - "outline" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Places", - "Shopping", - "Alert \/ Error" - ], - "author": "Colton Wiscombe" - }, - { - "id": "37B5401A-4A00-47AF-AF1D-678AB4C502FD", - "baseIconId": "3C3AEDE0-B6DA-4CB9-A686-869634678D5D", - "name": "store-check", - "codepoint": "F18C3", - "aliases": [ - "shop-check", - "shop-complete", - "store-complete" - ], - "styles": [ - "check" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Shopping", - "Places" - ], - "author": "Colton Wiscombe" - }, - { - "id": "35E8862F-A95A-4B1E-AD0A-FAD4C408D4F6", - "baseIconId": "3C3AEDE0-B6DA-4CB9-A686-869634678D5D", - "name": "store-check-outline", - "codepoint": "F18C4", - "aliases": [ - "shop-complete", - "store-complete-outline", - "shop-check-outline" - ], - "styles": [ - "check", - "outline" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Shopping", - "Places" - ], - "author": "Colton Wiscombe" - }, - { - "id": "F1AABCBC-7F1F-4803-B2B9-CC5E8EF11FEE", - "baseIconId": "3C3AEDE0-B6DA-4CB9-A686-869634678D5D", - "name": "store-clock", - "codepoint": "F18C5", - "aliases": [ - "store-schedule", - "store-hours", - "shop-clock", - "shop-hours", - "shop-schedule", - "store-time", - "shop-time" - ], - "styles": [ - "clock" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Places", - "Shopping" - ], - "author": "Colton Wiscombe" - }, - { - "id": "78BFCE81-D4A5-48E9-812D-82417EE9CDC9", - "baseIconId": "3C3AEDE0-B6DA-4CB9-A686-869634678D5D", - "name": "store-clock-outline", - "codepoint": "F18C6", - "aliases": [ - "shop-clock-outline", - "store-hours-outline", - "shop-hours-outline", - "store-time-outline", - "shop-time-outline", - "store-schedule-outline", - "shop-schedule-outline" - ], - "styles": [ - "clock", - "outline" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Places", - "Shopping", - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "0D8DEFE4-8A1E-4106-96FA-4663891F40FD", - "baseIconId": "3C3AEDE0-B6DA-4CB9-A686-869634678D5D", - "name": "store-cog", - "codepoint": "F18C7", - "aliases": [ - "store-settings", - "shop-settings" - ], - "styles": [ - "settings" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Places", - "Shopping", - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "E6D19187-D3DA-42DE-B61F-AF703112D8E3", - "baseIconId": "3C3AEDE0-B6DA-4CB9-A686-869634678D5D", - "name": "store-cog-outline", - "codepoint": "F18C8", - "aliases": [ - "store-settings-outline", - "shop-settings-outline", - "shop-cog-outline" - ], - "styles": [ - "outline", - "settings" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Places", - "Shopping", - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "738C22C4-6605-437A-821A-10CF8E151422", - "baseIconId": "3C3AEDE0-B6DA-4CB9-A686-869634678D5D", - "name": "store-edit", - "codepoint": "F18C9", - "aliases": [ - "shop-edit" - ], - "styles": [ - "edit" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Places", - "Shopping", - "Edit \/ Modify" - ], - "author": "Colton Wiscombe" - }, - { - "id": "02C64DBE-89C9-4190-80FF-1EB52327BFB5", - "baseIconId": "3C3AEDE0-B6DA-4CB9-A686-869634678D5D", - "name": "store-edit-outline", - "codepoint": "F18CA", - "aliases": [ - "shop-edit-outline" - ], - "styles": [ - "edit", - "outline" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Places", - "Shopping", - "Edit \/ Modify" - ], - "author": "Colton Wiscombe" - }, - { - "id": "9F2B1901-978F-4186-93BA-2B2871A1858A", - "baseIconId": "3C3AEDE0-B6DA-4CB9-A686-869634678D5D", - "name": "store-marker", - "codepoint": "F18CB", - "aliases": [ - "store-location", - "shop-marker", - "shop-location" - ], - "styles": [ - "marker" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Places", - "Shopping", - "Navigation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "EA9439C2-511C-4A27-BABD-D0C1F8E824A0", - "baseIconId": "3C3AEDE0-B6DA-4CB9-A686-869634678D5D", - "name": "store-marker-outline", - "codepoint": "F18CC", - "aliases": [ - "store-location-outline", - "shop-marker-outline", - "shop-location-outline" - ], - "styles": [ - "marker", - "outline" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Places", - "Shopping", - "Navigation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "D52803B6-8580-4C06-AA9F-96B4748286DB", - "baseIconId": "3C3AEDE0-B6DA-4CB9-A686-869634678D5D", - "name": "store-minus", - "codepoint": "F165E", - "aliases": [ - "shop-minus" - ], - "styles": [ - "minus" - ], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Places", - "Shopping" - ], - "author": "Dylan Oli" - }, - { - "id": "A5A36489-1F54-4A27-AF99-A0D77723FD1F", - "baseIconId": "3C3AEDE0-B6DA-4CB9-A686-869634678D5D", - "name": "store-minus-outline", - "codepoint": "F18CD", - "aliases": [ - "shop-minus-outline" - ], - "styles": [ - "minus", - "outline" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Places", - "Shopping" - ], - "author": "Colton Wiscombe" - }, - { - "id": "93E71904-C645-4682-B4C9-B61124B5C468", - "baseIconId": "3C3AEDE0-B6DA-4CB9-A686-869634678D5D", - "name": "store-off", - "codepoint": "F18CE", - "aliases": [ - "shop-off" - ], - "styles": [ - "off" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Places", - "Shopping" - ], - "author": "Colton Wiscombe" - }, - { - "id": "2681BADF-4EE8-4290-A8C9-1BE86077BEC1", - "baseIconId": "3C3AEDE0-B6DA-4CB9-A686-869634678D5D", - "name": "store-off-outline", - "codepoint": "F18CF", - "aliases": [ - "shop-off-outline" - ], - "styles": [ - "off", - "outline" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Places", - "Shopping" - ], - "author": "Colton Wiscombe" - }, - { - "id": "6BF9FB77-DF50-40B5-9A93-43E2A22E8633", - "baseIconId": "3C3AEDE0-B6DA-4CB9-A686-869634678D5D", - "name": "store-outline", - "codepoint": "F1361", - "aliases": [ - "shop-outline", - "store-mall-directory-outline" - ], - "styles": [ - "outline" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Places", - "Shopping" - ], - "author": "Google" - }, - { - "id": "00DB5451-A5BF-4F9C-AC74-041916EACCB6", - "baseIconId": "3C3AEDE0-B6DA-4CB9-A686-869634678D5D", - "name": "store-plus", - "codepoint": "F165F", - "aliases": [ - "shop-plus" - ], - "styles": [ - "plus" - ], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Places", - "Shopping" - ], - "author": "Dylan Oli" - }, - { - "id": "585744D8-92B8-4874-81F5-70F659DA0DFE", - "baseIconId": "3C3AEDE0-B6DA-4CB9-A686-869634678D5D", - "name": "store-plus-outline", - "codepoint": "F18D0", - "aliases": [ - "shop-plus-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Places", - "Shopping" - ], - "author": "Colton Wiscombe" - }, - { - "id": "FB5C0EA4-DAA2-4415-856F-2A4E6FA78BA5", - "baseIconId": "3C3AEDE0-B6DA-4CB9-A686-869634678D5D", - "name": "store-remove", - "codepoint": "F1660", - "aliases": [ - "shop-remove", - "store-delete", - "shop-delete" - ], - "styles": [ - "remove" - ], - "version": "5.7.55", - "deprecated": false, - "tags": [ - "Places", - "Shopping" - ], - "author": "Dylan Oli" - }, - { - "id": "2EDD35EF-2F8B-4EA9-BED4-D211B29C0012", - "baseIconId": "3C3AEDE0-B6DA-4CB9-A686-869634678D5D", - "name": "store-remove-outline", - "codepoint": "F18D1", - "aliases": [ - "shop-remove-outline", - "store-delete-outline", - "shop-delete-outline" - ], - "styles": [ - "outline", - "remove" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Places", - "Shopping" - ], - "author": "Colton Wiscombe" - }, - { - "id": "C631A061-FDAF-4686-9136-FD37C05FA12B", - "baseIconId": "3C3AEDE0-B6DA-4CB9-A686-869634678D5D", - "name": "store-search", - "codepoint": "F18D2", - "aliases": [ - "shop-search", - "store-find", - "shop-find", - "store-locator", - "shop-locator", - "store-look-up", - "shop-look-up" - ], - "styles": [ - "search" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Places", - "Shopping" - ], - "author": "Colton Wiscombe" - }, - { - "id": "1FD8091B-5C35-4157-89E0-7211C77B1E19", - "baseIconId": "3C3AEDE0-B6DA-4CB9-A686-869634678D5D", - "name": "store-search-outline", - "codepoint": "F18D3", - "aliases": [ - "store-find-outline", - "shop-search-outline", - "shop-find-outline", - "store-locator-outline", - "shop-locator-outline", - "store-look-up-outline", - "shop-look-up-outline" - ], - "styles": [ - "outline", - "search" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Places", - "Shopping" - ], - "author": "Colton Wiscombe" - }, - { - "id": "A8AE1FBA-2DA6-47AA-9B12-910E7FCD8D43", - "baseIconId": "3C3AEDE0-B6DA-4CB9-A686-869634678D5D", - "name": "store-settings", - "codepoint": "F18D4", - "aliases": [ - "shop-settings" - ], - "styles": [ - "settings" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Places", - "Shopping", - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "3FC392DC-44A8-475E-8082-7DBF80A61519", - "baseIconId": "3C3AEDE0-B6DA-4CB9-A686-869634678D5D", - "name": "store-settings-outline", - "codepoint": "F18D5", - "aliases": [ - "shop-settings-outline" - ], - "styles": [ - "outline", - "settings" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Places", - "Shopping", - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "8ABE8FB2-F704-4095-9E65-F614F86FCE99", - "baseIconId": "8ABE8FB2-F704-4095-9E65-F614F86FCE99", - "name": "storefront", - "codepoint": "F07C7", - "aliases": [ - "awning" - ], - "styles": [ - "check" - ], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Places" - ], - "author": "Simran" - }, - { - "id": "9FA49C4A-746E-4055-A94C-DBBBEB416FB0", - "baseIconId": "8ABE8FB2-F704-4095-9E65-F614F86FCE99", - "name": "storefront-check", - "codepoint": "F1B7D", - "aliases": [], - "styles": [ - "check" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "9E46C613-2CD0-4110-8F13-07855DFDBC5B", - "baseIconId": "8ABE8FB2-F704-4095-9E65-F614F86FCE99", - "name": "storefront-check-outline", - "codepoint": "F1B7E", - "aliases": [], - "styles": [ - "check", - "outline" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "E1FEA0E4-C612-47D1-9776-0692900AFD9A", - "baseIconId": "8ABE8FB2-F704-4095-9E65-F614F86FCE99", - "name": "storefront-edit", - "codepoint": "F1B7F", - "aliases": [], - "styles": [ - "edit" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Jeff Anders" - }, - { - "id": "1070748B-46F5-4657-99E2-8B1BF87FC5E6", - "baseIconId": "8ABE8FB2-F704-4095-9E65-F614F86FCE99", - "name": "storefront-edit-outline", - "codepoint": "F1B80", - "aliases": [], - "styles": [ - "edit", - "outline" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Jeff Anders" - }, - { - "id": "9D9F2374-F718-4122-84E4-AD90697F9833", - "baseIconId": "8ABE8FB2-F704-4095-9E65-F614F86FCE99", - "name": "storefront-minus", - "codepoint": "F1B83", - "aliases": [], - "styles": [ - "minus" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "4F0A88BC-20A5-44D7-898C-258941B91CA0", - "baseIconId": "8ABE8FB2-F704-4095-9E65-F614F86FCE99", - "name": "storefront-minus-outline", - "codepoint": "F1B84", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "CFC9D5C9-A60F-48D0-880E-71F2A06BB94D", - "baseIconId": "8ABE8FB2-F704-4095-9E65-F614F86FCE99", - "name": "storefront-outline", - "codepoint": "F10C1", - "aliases": [ - "awning" - ], - "styles": [ - "outline" - ], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Shopping", - "Places" - ], - "author": "Google" - }, - { - "id": "7DBC0D08-5218-4DA7-970C-3A4974124F98", - "baseIconId": "8ABE8FB2-F704-4095-9E65-F614F86FCE99", - "name": "storefront-plus", - "codepoint": "F1B81", - "aliases": [], - "styles": [ - "plus" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "A9D0C9F5-059E-4EF1-8927-0203B5CE4AE8", - "baseIconId": "8ABE8FB2-F704-4095-9E65-F614F86FCE99", - "name": "storefront-plus-outline", - "codepoint": "F1B82", - "aliases": [], - "styles": [ - "outline", - "plus" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "94EF8FB9-635E-4293-946B-C544594A16B0", - "baseIconId": "8ABE8FB2-F704-4095-9E65-F614F86FCE99", - "name": "storefront-remove", - "codepoint": "F1B85", - "aliases": [], - "styles": [ - "remove" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "71DE2725-2E14-4A65-ADC8-B7DF63038DA0", - "baseIconId": "8ABE8FB2-F704-4095-9E65-F614F86FCE99", - "name": "storefront-remove-outline", - "codepoint": "F1B86", - "aliases": [], - "styles": [ - "outline", - "remove" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "18EF6E1E-8EF9-4A62-AAB9-6E8BE591408A", - "baseIconId": "18EF6E1E-8EF9-4A62-AAB9-6E8BE591408A", - "name": "stove", - "codepoint": "F04DE", - "aliases": [ - "cooker", - "oven" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Food \/ Drink", - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "854C16E8-58EA-49E3-B1AE-7EC84B313005", - "baseIconId": "854C16E8-58EA-49E3-B1AE-7EC84B313005", - "name": "strategy", - "codepoint": "F11D6", - "aliases": [ - "football-play" - ], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Michael Richins" - }, - { - "id": "8E85E624-D1D8-4BA3-A99C-3067863D355C", - "baseIconId": "8E85E624-D1D8-4BA3-A99C-3067863D355C", - "name": "stretch-to-page", - "codepoint": "F0F2B", - "aliases": [], - "styles": [], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format", - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7F50D690-0790-42F3-B9C3-B0AB9338DAC7", - "baseIconId": "8E85E624-D1D8-4BA3-A99C-3067863D355C", - "name": "stretch-to-page-outline", - "codepoint": "F0F2C", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format", - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "6CCDB34F-9B02-4712-B615-A7E1056B534D", - "baseIconId": "6CCDB34F-9B02-4712-B615-A7E1056B534D", - "name": "string-lights", - "codepoint": "F12BA", - "aliases": [ - "italian-lights", - "christmas-lights", - "fairy-lights" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F1B6F6EB-6D20-4C27-A631-8FAF759D183A", - "baseIconId": "6CCDB34F-9B02-4712-B615-A7E1056B534D", - "name": "string-lights-off", - "codepoint": "F12BB", - "aliases": [ - "italian-lights-off", - "christmas-lights-off", - "fairy-lights-off" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "FC46F7BD-E8E2-452C-868C-E168E13B278D", - "baseIconId": "FC46F7BD-E8E2-452C-868C-E168E13B278D", - "name": "subdirectory-arrow-left", - "codepoint": "F060C", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "AFD661FE-31E3-4BB5-8977-10113C7AC3F4", - "baseIconId": "AFD661FE-31E3-4BB5-8977-10113C7AC3F4", - "name": "subdirectory-arrow-right", - "codepoint": "F060D", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "C6D1D0D8-7FEF-4F4B-B0E8-1B87B9413209", - "baseIconId": "C6D1D0D8-7FEF-4F4B-B0E8-1B87B9413209", - "name": "submarine", - "codepoint": "F156C", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [], - "author": "Andrew Laws" - }, - { - "id": "9808EEC5-35FB-45B1-AFCB-065E9CF469E4", - "baseIconId": "9808EEC5-35FB-45B1-AFCB-065E9CF469E4", - "name": "subtitles", - "codepoint": "F0A16", - "aliases": [], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "451E9683-F30C-4B0A-95EE-5AD92B012F26", - "baseIconId": "9808EEC5-35FB-45B1-AFCB-065E9CF469E4", - "name": "subtitles-outline", - "codepoint": "F0A17", - "aliases": [], - "styles": [ - "outline" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "769FB684-BA81-4E2A-B623-4C8B6F3DCD2C", - "baseIconId": "769FB684-BA81-4E2A-B623-4C8B6F3DCD2C", - "name": "subway", - "codepoint": "F06AC", - "aliases": [ - "metro", - "tube", - "underground" - ], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Google" - }, - { - "id": "486507F3-9E59-4037-B0EA-8EE514AFFABB", - "baseIconId": "769FB684-BA81-4E2A-B623-4C8B6F3DCD2C", - "name": "subway-alert-variant", - "codepoint": "F0D9D", - "aliases": [ - "subway-warning-variant" - ], - "styles": [ - "alert", - "variant" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Alert \/ Error", - "Transportation + Other" - ], - "author": "Austin Andrews" - }, - { - "id": "EBD55581-BE34-4D0D-A151-974FD5FD7D92", - "baseIconId": "769FB684-BA81-4E2A-B623-4C8B6F3DCD2C", - "name": "subway-variant", - "codepoint": "F04DF", - "aliases": [ - "metro-variant", - "tube-variant", - "underground-variant", - "directions-subway", - "directions-transit" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Google" - }, - { - "id": "052D93D8-A1F1-450C-99F3-AEEE07D77CF4", - "baseIconId": "052D93D8-A1F1-450C-99F3-AEEE07D77CF4", - "name": "summit", - "codepoint": "F0786", - "aliases": [ - "peak" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "18B8F0B3-FEE0-4DF6-A6FB-701BCAB19F3A", - "baseIconId": "7F85265E-304C-4575-A73F-F0FCF0CA951B", - "name": "sun-angle", - "codepoint": "F1B27", - "aliases": [ - "solar-angle" - ], - "styles": [ - "variant" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "EFBF30D4-A767-490C-883D-9C94E0789C0D", - "baseIconId": "7F85265E-304C-4575-A73F-F0FCF0CA951B", - "name": "sun-angle-outline", - "codepoint": "F1B28", - "aliases": [ - "solar-angle-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B467AA69-1E9D-444C-B6E4-764F1D180140", - "baseIconId": "7F85265E-304C-4575-A73F-F0FCF0CA951B", - "name": "sun-clock", - "codepoint": "F1A77", - "aliases": [ - "sun-schedule", - "sun-time", - "time-of-day" - ], - "styles": [ - "clock" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Weather", - "Home Automation" - ], - "author": "Hans B\u00f6hm" - }, - { - "id": "39AB9880-94EC-44BF-96FC-D5ACA1AA3356", - "baseIconId": "7F85265E-304C-4575-A73F-F0FCF0CA951B", - "name": "sun-clock-outline", - "codepoint": "F1A78", - "aliases": [ - "sun-schedule-outline", - "sun-time-outline", - "time-of-day-outline" - ], - "styles": [ - "clock", - "outline" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Weather", - "Home Automation", - "Date \/ Time" - ], - "author": "Hans B\u00f6hm" - }, - { - "id": "1F513D40-444E-475D-9C1F-E5A95CE61A02", - "baseIconId": "1F513D40-444E-475D-9C1F-E5A95CE61A02", - "name": "sun-compass", - "codepoint": "F19A5", - "aliases": [ - "sun-azimuth", - "solar-compass", - "solar-asimuth" - ], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Weather", - "Home Automation", - "Navigation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2294E545-CE17-4605-8DBD-FFAE9CFDFED6", - "baseIconId": "2294E545-CE17-4605-8DBD-FFAE9CFDFED6", - "name": "sun-snowflake", - "codepoint": "F1796", - "aliases": [ - "hot-cold", - "heat-cool" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Weather", - "Home Automation" - ], - "author": "Google" - }, - { - "id": "57D0B351-8C4C-4F9C-9D62-23DE9E00C9AA", - "baseIconId": "2294E545-CE17-4605-8DBD-FFAE9CFDFED6", - "name": "sun-snowflake-variant", - "codepoint": "F1A79", - "aliases": [ - "hot-cold", - "heat-cool" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation", - "Weather" - ], - "author": "Hans B\u00f6hm" - }, - { - "id": "A915898D-3218-4A0E-9732-CEB0701DADA1", - "baseIconId": "7F85265E-304C-4575-A73F-F0FCF0CA951B", - "name": "sun-thermometer", - "codepoint": "F18D6", - "aliases": [ - "heat-index", - "sun-temperature", - "day-temperature", - "external-temperature", - "outdoor-temperature" - ], - "styles": [], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Weather", - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A92400D5-89B6-46B0-9D55-4980BE45C51D", - "baseIconId": "7F85265E-304C-4575-A73F-F0FCF0CA951B", - "name": "sun-thermometer-outline", - "codepoint": "F18D7", - "aliases": [ - "external-temperature", - "outside-temperature", - "heat-index", - "day-temperature" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1A5DE4DC-5B3B-4378-ADB2-5D51AA64896D", - "baseIconId": "7F85265E-304C-4575-A73F-F0FCF0CA951B", - "name": "sun-wireless", - "codepoint": "F17FE", - "aliases": [ - "weather-sun-wireless", - "illuminance", - "uv-ray", - "ultraviolet" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2CFA10C3-9284-4120-B104-D196DBF0BF07", - "baseIconId": "7F85265E-304C-4575-A73F-F0FCF0CA951B", - "name": "sun-wireless-outline", - "codepoint": "F17FF", - "aliases": [ - "weather-sun-wireless-outline", - "illuminance-outline", - "uv-ray-outline", - "ultraviolet-outline" - ], - "styles": [ - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E52FC33A-09BD-4B34-AF94-92C891020CDC", - "baseIconId": "E52FC33A-09BD-4B34-AF94-92C891020CDC", - "name": "sunglasses", - "codepoint": "F04E0", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Clothing" - ], - "author": "Simran" - }, - { - "id": "13371A33-E911-4D02-B921-CECC9D1BDB50", - "baseIconId": "13371A33-E911-4D02-B921-CECC9D1BDB50", - "name": "surfing", - "codepoint": "F1746", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "AB38BBD9-58A6-4D21-8A76-8940B7717550", - "baseIconId": "AB38BBD9-58A6-4D21-8A76-8940B7717550", - "name": "surround-sound", - "codepoint": "F05C5", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio" - ], - "author": "Google" - }, - { - "id": "13009B66-7459-4C86-8EB0-3CAED977BB98", - "baseIconId": "13009B66-7459-4C86-8EB0-3CAED977BB98", - "name": "surround-sound-2-0", - "codepoint": "F07F0", - "aliases": [ - "stereo" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Audio" - ], - "author": "Austin Andrews" - }, - { - "id": "901A06AA-7C77-43B3-90CD-10B329C42DB7", - "baseIconId": "13009B66-7459-4C86-8EB0-3CAED977BB98", - "name": "surround-sound-2-1", - "codepoint": "F1729", - "aliases": [], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "4B744BE0-A739-44FF-ADA6-CFC9BC520B1D", - "baseIconId": "4B744BE0-A739-44FF-ADA6-CFC9BC520B1D", - "name": "surround-sound-3-1", - "codepoint": "F07F1", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Audio" - ], - "author": "Austin Andrews" - }, - { - "id": "CFD48DE8-0DA8-455C-9C4C-337EDC54D7C0", - "baseIconId": "CFD48DE8-0DA8-455C-9C4C-337EDC54D7C0", - "name": "surround-sound-5-1", - "codepoint": "F07F2", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Audio" - ], - "author": "Austin Andrews" - }, - { - "id": "0CA5BC19-D66A-4126-B2DB-A90546826760", - "baseIconId": "CFD48DE8-0DA8-455C-9C4C-337EDC54D7C0", - "name": "surround-sound-5-1-2", - "codepoint": "F172A", - "aliases": [], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "BC85CD47-E52C-4A7D-8E05-DD45596C5822", - "baseIconId": "BC85CD47-E52C-4A7D-8E05-DD45596C5822", - "name": "surround-sound-7-1", - "codepoint": "F07F3", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Audio" - ], - "author": "Austin Andrews" - }, - { - "id": "5E34C73B-E200-4BD3-A10E-A00D1D47BFF4", - "baseIconId": "5E34C73B-E200-4BD3-A10E-A00D1D47BFF4", - "name": "svg", - "codepoint": "F0721", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Austin Andrews" - }, - { - "id": "D1E543C5-6ECA-43AA-B04D-438319BC5562", - "baseIconId": "D1E543C5-6ECA-43AA-B04D-438319BC5562", - "name": "swap-horizontal", - "codepoint": "F04E1", - "aliases": [ - "arrow-left-right", - "transfer", - "exchange", - "switch" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "3082F9ED-7ADE-491E-9FA5-39BC937D1F95", - "baseIconId": "D1E543C5-6ECA-43AA-B04D-438319BC5562", - "name": "swap-horizontal-bold", - "codepoint": "F0BCD", - "aliases": [ - "arrow-left-right-bold" - ], - "styles": [ - "bold" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "11867345-3F46-40E5-91A4-4EBBE393226D", - "baseIconId": "D1E543C5-6ECA-43AA-B04D-438319BC5562", - "name": "swap-horizontal-circle", - "codepoint": "F0FE1", - "aliases": [], - "styles": [ - "circle" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "4A41DEBC-9D40-4C27-A48E-EDF8E64ADBC2", - "baseIconId": "D1E543C5-6ECA-43AA-B04D-438319BC5562", - "name": "swap-horizontal-circle-outline", - "codepoint": "F0FE2", - "aliases": [], - "styles": [ - "circle", - "outline" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "23A48C18-9950-436D-9948-29EE7EE13054", - "baseIconId": "D1E543C5-6ECA-43AA-B04D-438319BC5562", - "name": "swap-horizontal-variant", - "codepoint": "F08C1", - "aliases": [], - "styles": [ - "variant" - ], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "DA7FB76D-58FA-4AED-9DF9-033E994AE000", - "baseIconId": "DA7FB76D-58FA-4AED-9DF9-033E994AE000", - "name": "swap-vertical", - "codepoint": "F04E2", - "aliases": [ - "import-export", - "arrow-up-down" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "0903A829-EB64-4B39-B066-FECF7908DA8A", - "baseIconId": "DA7FB76D-58FA-4AED-9DF9-033E994AE000", - "name": "swap-vertical-bold", - "codepoint": "F0BCE", - "aliases": [ - "arrow-up-down-bold", - "import-export-bold" - ], - "styles": [ - "bold" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "F47E2ADA-9203-4D5A-9537-D0C93E45F1B3", - "baseIconId": "DA7FB76D-58FA-4AED-9DF9-033E994AE000", - "name": "swap-vertical-circle", - "codepoint": "F0FE3", - "aliases": [], - "styles": [ - "circle" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "3B14BF34-4B82-4CAD-8F11-55E4013F7734", - "baseIconId": "DA7FB76D-58FA-4AED-9DF9-033E994AE000", - "name": "swap-vertical-circle-outline", - "codepoint": "F0FE4", - "aliases": [], - "styles": [ - "circle", - "outline" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Irigoyen" - }, - { - "id": "FC1C62DB-A06D-48F8-962F-F60FE41E4F65", - "baseIconId": "DA7FB76D-58FA-4AED-9DF9-033E994AE000", - "name": "swap-vertical-variant", - "codepoint": "F08C2", - "aliases": [ - "swap-calls" - ], - "styles": [ - "variant" - ], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Google" - }, - { - "id": "668BF75C-2B3B-46CB-8731-AE6BF10244BD", - "baseIconId": "668BF75C-2B3B-46CB-8731-AE6BF10244BD", - "name": "swim", - "codepoint": "F04E3", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Austin Andrews" - }, - { - "id": "A2ED8CF0-EAE1-4B83-9469-448260288DDE", - "baseIconId": "A2ED8CF0-EAE1-4B83-9469-448260288DDE", - "name": "switch", - "codepoint": "F04E4", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "D73618B2-062C-40B2-BF8D-43DC48809F9B", - "baseIconId": "D73618B2-062C-40B2-BF8D-43DC48809F9B", - "name": "sword", - "codepoint": "F04E5", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "37B336A5-5827-4929-93B5-C12373966731", - "baseIconId": "D73618B2-062C-40B2-BF8D-43DC48809F9B", - "name": "sword-cross", - "codepoint": "F0787", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Michael Richins" - }, - { - "id": "9201098E-A360-4BF2-8EC7-683EB2AA7FEF", - "baseIconId": "9201098E-A360-4BF2-8EC7-683EB2AA7FEF", - "name": "syllabary-hangul", - "codepoint": "F1333", - "aliases": [ - "writing-system-hangul" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Haley Halcyon" - }, - { - "id": "8B8AF349-F9B5-483B-90CC-387F3791AF69", - "baseIconId": "8B8AF349-F9B5-483B-90CC-387F3791AF69", - "name": "syllabary-hiragana", - "codepoint": "F1334", - "aliases": [ - "writing-system-hiragana" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Haley Halcyon" - }, - { - "id": "220577A0-1D92-46EA-8116-DF964F6C57F0", - "baseIconId": "220577A0-1D92-46EA-8116-DF964F6C57F0", - "name": "syllabary-katakana", - "codepoint": "F1335", - "aliases": [ - "writing-system-katakana" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Haley Halcyon" - }, - { - "id": "BEDFC0D3-5AC2-46E4-BD69-07048CC47710", - "baseIconId": "220577A0-1D92-46EA-8116-DF964F6C57F0", - "name": "syllabary-katakana-halfwidth", - "codepoint": "F1336", - "aliases": [ - "writing-system-katakana-half-width" - ], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Alpha \/ Numeric" - ], - "author": "Haley Halcyon" - }, - { - "id": "6A604429-C9A6-45F3-8042-D29AB7828789", - "baseIconId": "6A604429-C9A6-45F3-8042-D29AB7828789", - "name": "symbol", - "codepoint": "F1501", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Haley Halcyon" - }, - { - "id": "2BCCEE64-583D-4EC7-9BBA-72FF58354181", - "baseIconId": "2BCCEE64-583D-4EC7-9BBA-72FF58354181", - "name": "symfony", - "codepoint": "F0AE6", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "9013848A-21D4-4AF4-BA8A-6CF76128FE17", - "baseIconId": "9013848A-21D4-4AF4-BA8A-6CF76128FE17", - "name": "synagogue", - "codepoint": "F1B04", - "aliases": [ - "shul", - "temple", - "jewish" - ], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Places", - "Religion" - ], - "author": "Google" - }, - { - "id": "D070E9A9-6327-4F19-ADBC-A24A15398C7F", - "baseIconId": "9013848A-21D4-4AF4-BA8A-6CF76128FE17", - "name": "synagogue-outline", - "codepoint": "F1B05", - "aliases": [ - "temple-outline", - "shul-outline", - "jewish-outline" - ], - "styles": [ - "outline" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Places", - "Religion" - ], - "author": "Google" - }, - { - "id": "E8CE455E-8C08-48F4-B989-8D91E185E8AE", - "baseIconId": "E8CE455E-8C08-48F4-B989-8D91E185E8AE", - "name": "sync", - "codepoint": "F04E6", - "aliases": [ - "loop", - "counterclockwise-arrows", - "circular-arrows", - "circle-arrows" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "66A07118-4C78-44D0-8B73-930144C74BD1", - "baseIconId": "E8CE455E-8C08-48F4-B989-8D91E185E8AE", - "name": "sync-alert", - "codepoint": "F04E7", - "aliases": [ - "sync-warning", - "sync-problem" - ], - "styles": [ - "alert" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Google" - }, - { - "id": "26250B6D-8879-4DAA-8DFA-A04738E855FE", - "baseIconId": "E8CE455E-8C08-48F4-B989-8D91E185E8AE", - "name": "sync-circle", - "codepoint": "F1378", - "aliases": [], - "styles": [ - "circle" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Fran\u00e7ois Risoud" - }, - { - "id": "538457F5-44DB-404B-92FE-5FB8597B258E", - "baseIconId": "E8CE455E-8C08-48F4-B989-8D91E185E8AE", - "name": "sync-off", - "codepoint": "F04E8", - "aliases": [ - "sync-disabled" - ], - "styles": [ - "off" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "76D6AAA9-7D7F-4C7A-818E-D9947744A23C", - "baseIconId": "76D6AAA9-7D7F-4C7A-818E-D9947744A23C", - "name": "tab", - "codepoint": "F04E9", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "BA5FCCBE-ED06-4819-B2F3-532034AB09BB", - "baseIconId": "76D6AAA9-7D7F-4C7A-818E-D9947744A23C", - "name": "tab-minus", - "codepoint": "F0B4B", - "aliases": [], - "styles": [ - "minus" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "9E23B225-E972-4369-A94A-C2AAF4C93870", - "baseIconId": "76D6AAA9-7D7F-4C7A-818E-D9947744A23C", - "name": "tab-plus", - "codepoint": "F075C", - "aliases": [ - "tab-add" - ], - "styles": [ - "plus" - ], - "version": "1.9.32", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "D851AFED-34E5-4166-9923-CC4A5D6A1A44", - "baseIconId": "76D6AAA9-7D7F-4C7A-818E-D9947744A23C", - "name": "tab-remove", - "codepoint": "F0B4C", - "aliases": [], - "styles": [ - "remove" - ], - "version": "2.8.94", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "BF6060AC-37F8-4236-B9D1-0C37A9AF09E9", - "baseIconId": "76D6AAA9-7D7F-4C7A-818E-D9947744A23C", - "name": "tab-search", - "codepoint": "F199E", - "aliases": [ - "tab-find" - ], - "styles": [ - "search" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [], - "author": "Arno Cellarier" - }, - { - "id": "9A9059F0-CADA-47EF-82DC-4B1FB2B9E4C5", - "baseIconId": "76D6AAA9-7D7F-4C7A-818E-D9947744A23C", - "name": "tab-unselected", - "codepoint": "F04EA", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "984D8348-AB61-4DD8-838C-3F2542577F73", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table", - "codepoint": "F04EB", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "4E3E7C78-5217-4B8A-8B95-9DE8433CFADA", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-account", - "codepoint": "F13B9", - "aliases": [ - "table-user" - ], - "styles": [ - "variant" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5957DCA4-9A4D-4BC1-98EC-58065564EBFF", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-alert", - "codepoint": "F13BA", - "aliases": [], - "styles": [ - "alert" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "846F0539-E30D-40E8-BC00-3F10A0C0321E", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-arrow-down", - "codepoint": "F13BB", - "aliases": [ - "table-download" - ], - "styles": [ - "arrow" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "44768ACF-C1A3-477D-91BC-74DA3B0A746E", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-arrow-left", - "codepoint": "F13BC", - "aliases": [ - "table-import" - ], - "styles": [ - "arrow" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "A4A68FD7-82B8-4BE8-8110-DA54D1A888D4", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-arrow-right", - "codepoint": "F13BD", - "aliases": [ - "table-share", - "table-export" - ], - "styles": [ - "arrow" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "2A9EE017-5EDD-4A0B-A531-E552D4C8AB66", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-arrow-up", - "codepoint": "F13BE", - "aliases": [ - "table-upload" - ], - "styles": [ - "arrow" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "4AB13D38-7B5C-49E6-B41C-C48C0F8E7DA3", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-border", - "codepoint": "F0A18", - "aliases": [], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Michael Irigoyen" - }, - { - "id": "989D1B4B-5D28-4335-B410-8DAF917F788F", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-cancel", - "codepoint": "F13BF", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "6EB52FC2-32D9-427D-80DE-32C60C8F78AD", - "baseIconId": "6EB52FC2-32D9-427D-80DE-32C60C8F78AD", - "name": "table-chair", - "codepoint": "F1061", - "aliases": [ - "restaurant", - "kitchen", - "dining", - "dining-room" - ], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "15FE548D-D08F-44C4-AF25-B853452E1AFE", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-check", - "codepoint": "F13C0", - "aliases": [], - "styles": [ - "check" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "8C3DCF5F-7E50-48A6-A596-0BA2D299B37F", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-clock", - "codepoint": "F13C1", - "aliases": [], - "styles": [ - "clock" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "540E0DD7-BA28-46B1-A0A7-2A0820E73432", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-cog", - "codepoint": "F13C2", - "aliases": [ - "table-settings" - ], - "styles": [ - "settings", - "variant" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D45D7513-AA4C-43CA-8435-CA6AD2B7F868", - "baseIconId": "D45D7513-AA4C-43CA-8435-CA6AD2B7F868", - "name": "table-column", - "codepoint": "F0835", - "aliases": [], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "0EB91CE4-3223-4799-9BB7-3BA0C923BC40", - "baseIconId": "D45D7513-AA4C-43CA-8435-CA6AD2B7F868", - "name": "table-column-plus-after", - "codepoint": "F04EC", - "aliases": [ - "table-column-add-after" - ], - "styles": [ - "plus", - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "67B4875F-B08F-4006-AFE1-9C243F8B873A", - "baseIconId": "D45D7513-AA4C-43CA-8435-CA6AD2B7F868", - "name": "table-column-plus-before", - "codepoint": "F04ED", - "aliases": [ - "table-column-add-before" - ], - "styles": [ - "plus", - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "455B9D6F-1842-434F-8C31-16F68A2C1BA9", - "baseIconId": "D45D7513-AA4C-43CA-8435-CA6AD2B7F868", - "name": "table-column-remove", - "codepoint": "F04EE", - "aliases": [], - "styles": [ - "remove" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "2343FF2B-E5D3-4BEC-90EA-FB3F5291D4B0", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-column-width", - "codepoint": "F04EF", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "DDC0FFBC-73D2-49E8-8B8C-22D65A5719A6", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-edit", - "codepoint": "F04F0", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Edit \/ Modify", - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "6F81B89D-EBF1-41BF-9619-90E148AD9951", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-eye", - "codepoint": "F1094", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [], - "author": "Terren" - }, - { - "id": "2F3C45C9-277B-4751-8F5C-4356739AC3A4", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-eye-off", - "codepoint": "F13C3", - "aliases": [], - "styles": [ - "off", - "variant" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "1CFB10BF-E5C8-4401-B491-3BC830082D6E", - "baseIconId": "1CFB10BF-E5C8-4401-B491-3BC830082D6E", - "name": "table-filter", - "codepoint": "F1B8C", - "aliases": [], - "styles": [], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Andrej Sharapov" - }, - { - "id": "9A7A9F69-9BC4-4619-981D-DF8423A22FF2", - "baseIconId": "9A7A9F69-9BC4-4619-981D-DF8423A22FF2", - "name": "table-furniture", - "codepoint": "F05BC", - "aliases": [ - "kitchen", - "dining-room" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "nilsfast" - }, - { - "id": "9AB8E55A-A51C-4384-A6C6-1F88BFBBD63B", - "baseIconId": "9AB8E55A-A51C-4384-A6C6-1F88BFBBD63B", - "name": "table-headers-eye", - "codepoint": "F121D", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "2F8C23A5-717B-4483-9C22-A8C5D4F7C31A", - "baseIconId": "9AB8E55A-A51C-4384-A6C6-1F88BFBBD63B", - "name": "table-headers-eye-off", - "codepoint": "F121E", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "550B70E0-414F-44F5-A09F-DF418ABB7D26", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-heart", - "codepoint": "F13C4", - "aliases": [ - "table-favorite" - ], - "styles": [ - "heart" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "8B04C6AF-6886-4693-8806-6C4BC8D60E9A", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-key", - "codepoint": "F13C5", - "aliases": [], - "styles": [ - "key" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "99BE0AB4-A123-4745-839F-DC355DA8C3D4", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-large", - "codepoint": "F04F1", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format", - "Geographic Information System" - ], - "author": "Austin Andrews" - }, - { - "id": "3C206937-03CF-4690-B022-30099AEAE0F3", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-large-plus", - "codepoint": "F0F87", - "aliases": [ - "table-large-add" - ], - "styles": [ - "plus", - "variant" - ], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format", - "Geographic Information System" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E6F6EF7E-C78C-4670-9E96-43AD92F24429", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-large-remove", - "codepoint": "F0F88", - "aliases": [], - "styles": [ - "remove", - "variant" - ], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format", - "Geographic Information System" - ], - "author": "Michael Irigoyen" - }, - { - "id": "370E7D91-6ACA-464F-A30C-DCB35B8DFC55", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-lock", - "codepoint": "F13C6", - "aliases": [], - "styles": [ - "lock" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Michael Irigoyen" - }, - { - "id": "BE891E33-2018-4619-BF4C-C006B4063785", - "baseIconId": "BE891E33-2018-4619-BF4C-C006B4063785", - "name": "table-merge-cells", - "codepoint": "F09A6", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "C40DA2CA-4FCA-4144-AD38-0DD457D6D6CF", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-minus", - "codepoint": "F13C7", - "aliases": [], - "styles": [ - "minus" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "FB123A84-A0AE-41F6-8C61-B86E93EEA08C", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-multiple", - "codepoint": "F13C8", - "aliases": [], - "styles": [ - "multiple" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "94745B4E-14D8-4B8C-B8C4-E25D1A123B27", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-network", - "codepoint": "F13C9", - "aliases": [], - "styles": [ - "network" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "70A0953D-9FEF-4858-8ACB-A90C5613360A", - "baseIconId": "70A0953D-9FEF-4858-8ACB-A90C5613360A", - "name": "table-of-contents", - "codepoint": "F0836", - "aliases": [ - "toc" - ], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "AF58D08D-14CD-41F6-9CF1-53D002D7EEB1", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-off", - "codepoint": "F13CA", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "68ABC903-3D76-4C38-8165-4DB5F0353A20", - "baseIconId": "68ABC903-3D76-4C38-8165-4DB5F0353A20", - "name": "table-picnic", - "codepoint": "F1743", - "aliases": [], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "95F556B1-87B0-4219-8E96-B5AF5D652DF4", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-pivot", - "codepoint": "F183C", - "aliases": [], - "styles": [ - "variant" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Teodor Sandu" - }, - { - "id": "4547E3CF-042C-431F-8B99-4DBE22F1ADEC", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-plus", - "codepoint": "F0A75", - "aliases": [ - "table-add" - ], - "styles": [ - "plus" - ], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DD9EA6CC-9992-418C-8664-2254FC64A41F", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-question", - "codepoint": "F1B21", - "aliases": [ - "table-help" - ], - "styles": [ - "question" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Andrej Sharapov" - }, - { - "id": "202CC1A0-B339-493E-99B0-607A209E8A53", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-refresh", - "codepoint": "F13A0", - "aliases": [], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "E04307B8-EA93-41C0-B7B8-6AAC6C9B580F", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-remove", - "codepoint": "F0A76", - "aliases": [], - "styles": [ - "remove" - ], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Michael Irigoyen" - }, - { - "id": "8EA23E11-D670-4D09-8AA6-7DAFBEAA54FD", - "baseIconId": "8EA23E11-D670-4D09-8AA6-7DAFBEAA54FD", - "name": "table-row", - "codepoint": "F0837", - "aliases": [], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "5B9A6186-2C24-4D16-9FE4-F0E23C8E5B5F", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-row-height", - "codepoint": "F04F2", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "0B2B45F7-3597-4049-9643-9E972826F67C", - "baseIconId": "8EA23E11-D670-4D09-8AA6-7DAFBEAA54FD", - "name": "table-row-plus-after", - "codepoint": "F04F3", - "aliases": [ - "table-row-add-after" - ], - "styles": [ - "plus", - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "784BF375-370F-4DAE-985D-7BEF2FDA6951", - "baseIconId": "8EA23E11-D670-4D09-8AA6-7DAFBEAA54FD", - "name": "table-row-plus-before", - "codepoint": "F04F4", - "aliases": [ - "table-row-add-before" - ], - "styles": [ - "plus", - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "017D1949-234A-4C27-A653-FF0EAF33AD92", - "baseIconId": "8EA23E11-D670-4D09-8AA6-7DAFBEAA54FD", - "name": "table-row-remove", - "codepoint": "F04F5", - "aliases": [], - "styles": [ - "remove" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Austin Andrews" - }, - { - "id": "6053118D-7921-45FC-BC83-9F08BF2AE6DF", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-search", - "codepoint": "F090F", - "aliases": [], - "styles": [ - "search" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "B506843C-4832-4F30-8266-9B02632AB582", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-settings", - "codepoint": "F0838", - "aliases": [], - "styles": [ - "settings" - ], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Che de Bruin" - }, - { - "id": "6E502BA0-5D71-4607-BA94-CDEF31BBF07C", - "baseIconId": "6E502BA0-5D71-4607-BA94-CDEF31BBF07C", - "name": "table-split-cell", - "codepoint": "F142A", - "aliases": [], - "styles": [], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Micha\u0142 Kleszczy\u0144ski" - }, - { - "id": "646B67D0-16F5-429C-93ED-C57131031B63", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-star", - "codepoint": "F13CB", - "aliases": [ - "table-favorite" - ], - "styles": [ - "star" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "DEC516BA-2102-4CE7-B77E-6D95A9A525EC", - "baseIconId": "984D8348-AB61-4DD8-838C-3F2542577F73", - "name": "table-sync", - "codepoint": "F13A1", - "aliases": [], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "4E13AA68-FF88-415B-A813-A9D5023F71E3", - "baseIconId": "4E13AA68-FF88-415B-A813-A9D5023F71E3", - "name": "table-tennis", - "codepoint": "F0E68", - "aliases": [ - "ping-pong", - "whiff-whaff" - ], - "styles": [], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Google" - }, - { - "id": "703B639C-E17D-40F1-8025-2B2950B1961D", - "baseIconId": "703B639C-E17D-40F1-8025-2B2950B1961D", - "name": "tablet", - "codepoint": "F04F6", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "Google" - }, - { - "id": "804E3CCD-99B5-4F54-898A-9477D69E6951", - "baseIconId": "804E3CCD-99B5-4F54-898A-9477D69E6951", - "name": "tablet-cellphone", - "codepoint": "F09A7", - "aliases": [ - "mobile-devices", - "tablet-mobile-phone", - "tablet-smartphone" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Device \/ Tech" - ], - "author": "Google" - }, - { - "id": "71DAA530-D02E-45D9-84AB-68CE1CD1E44E", - "baseIconId": "703B639C-E17D-40F1-8025-2B2950B1961D", - "name": "tablet-dashboard", - "codepoint": "F0ECE", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9E259FF6-513C-44B0-BB10-7F930DFA47DD", - "baseIconId": "9E259FF6-513C-44B0-BB10-7F930DFA47DD", - "name": "taco", - "codepoint": "F0762", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Austin Andrews" - }, - { - "id": "0BE85AB2-0D51-411C-B119-789E9E317216", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag", - "codepoint": "F04F9", - "aliases": [ - "local-offer" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "141B8C02-DA96-4054-AA99-C83CF2B10118", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-arrow-down", - "codepoint": "F172B", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "8C304479-B37A-4837-8887-F4880359C9BB", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-arrow-down-outline", - "codepoint": "F172C", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "56E3ECFD-CE76-4CE2-9075-7673ABEA78D1", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-arrow-left", - "codepoint": "F172D", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "BCD665AC-5B08-4E99-8BF4-7F43030447F6", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-arrow-left-outline", - "codepoint": "F172E", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "98AEA4C4-D0E2-4B94-9EE3-47F97A7AFC0D", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-arrow-right", - "codepoint": "F172F", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "B9FED1D0-B219-4483-A30E-AA201561DCB4", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-arrow-right-outline", - "codepoint": "F1730", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "5040B027-3283-413C-8424-E2E02108E69D", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-arrow-up", - "codepoint": "F1731", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "A632F2B8-4D1B-4F60-AB06-EB79D45E13A3", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-arrow-up-outline", - "codepoint": "F1732", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "A15E3DAA-A545-434C-A876-C141B28A074D", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-check", - "codepoint": "F1A7A", - "aliases": [ - "tag-approve" - ], - "styles": [ - "check" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "1E060329-9C85-4470-8140-DD96F6877E76", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-check-outline", - "codepoint": "F1A7B", - "aliases": [ - "tag-approve-outline" - ], - "styles": [ - "check", - "outline" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "73C1CBA6-4848-4AE0-82D4-4A7FDD29F12C", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-edit", - "codepoint": "F1C9C", - "aliases": [], - "styles": [ - "edit" - ], - "version": "7.3.96", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "5181F023-E6E2-424F-B35B-9E3219A0C25D", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-edit-outline", - "codepoint": "F1C9D", - "aliases": [], - "styles": [ - "edit", - "outline" - ], - "version": "7.3.96", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "5DCE0F4D-F740-4D9A-AC93-281D3477E9AF", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-faces", - "codepoint": "F04FA", - "aliases": [ - "tag-emoji", - "tag-emoticon" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "2D9E735C-EA23-4EB2-9AC4-C92D69218577", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-heart", - "codepoint": "F068B", - "aliases": [ - "loyalty" - ], - "styles": [ - "heart", - "variant" - ], - "version": "1.7.12", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "1A877919-79F5-4B22-A309-6681E10B4A06", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-heart-outline", - "codepoint": "F0BCF", - "aliases": [], - "styles": [ - "heart", - "outline" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "5BF0535D-7E79-4BE2-A3A7-E96E4B50E5A0", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-hidden", - "codepoint": "F1C76", - "aliases": [], - "styles": [], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "1F2E41E2-6509-4C1B-B95B-145C9A8375DA", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-minus", - "codepoint": "F0910", - "aliases": [], - "styles": [ - "minus" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "E8EF5D5C-B3EE-459C-9C6D-B6A045B8052C", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-minus-outline", - "codepoint": "F121F", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "408AB5A3-F100-4175-96CD-8602BE101150", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-multiple", - "codepoint": "F04FB", - "aliases": [ - "tags" - ], - "styles": [ - "multiple" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "340D1192-13CE-4752-86C3-186FEA8DC315", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-multiple-outline", - "codepoint": "F12F7", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "A85425D5-61FC-46C8-B604-4105C407967B", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-off", - "codepoint": "F1220", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "E6157F0C-1143-4F4D-B308-CCA13CC24BFC", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-off-outline", - "codepoint": "F1221", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "2022546E-45D4-4AC5-B24F-6D6AAEA0F452", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-outline", - "codepoint": "F04FC", - "aliases": [], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "83C0C7C5-26FF-4EF7-A05B-B05472FC40FC", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-plus", - "codepoint": "F0722", - "aliases": [ - "tag-add" - ], - "styles": [ - "plus" - ], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "0BCB9F00-8D30-4DD7-85CB-31930035DF0E", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-plus-outline", - "codepoint": "F1222", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "E90C088F-8DFD-4B7D-962C-BE2DD9DB61BD", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-remove", - "codepoint": "F0723", - "aliases": [], - "styles": [ - "remove" - ], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "DD1E4B8E-E8C2-4B72-A56D-F42B3259AD49", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-remove-outline", - "codepoint": "F1223", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "2728D780-6100-4AD5-B5B3-67C64DAF983C", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-search", - "codepoint": "F1907", - "aliases": [ - "tag-find" - ], - "styles": [ - "search" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "4747C432-2B54-4686-8689-A8B931F417DE", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-search-outline", - "codepoint": "F1908", - "aliases": [ - "tag-find-outline" - ], - "styles": [ - "outline", - "search" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "92B97B44-052D-48B5-993F-1AB16F76DC65", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-text", - "codepoint": "F1224", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "8ED927D3-84B9-43D1-82B4-3859653006D6", - "baseIconId": "0BE85AB2-0D51-411C-B119-789E9E317216", - "name": "tag-text-outline", - "codepoint": "F04FD", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "7D58F2F1-A97E-4EBE-A0E6-E8F9999F1799", - "baseIconId": "7D58F2F1-A97E-4EBE-A0E6-E8F9999F1799", - "name": "tailwind", - "codepoint": "F13FF", - "aliases": [], - "styles": [], - "version": "5.1.45", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "1F0D9425-0B92-46C6-AEBE-39FB5E062AA5", - "baseIconId": "1F0D9425-0B92-46C6-AEBE-39FB5E062AA5", - "name": "tally-mark-1", - "codepoint": "F1ABC", - "aliases": [ - "counting-1", - "one" - ], - "styles": [], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Irigoyen" - }, - { - "id": "3324BD04-3F49-4759-9C4E-8C94F513F977", - "baseIconId": "1F0D9425-0B92-46C6-AEBE-39FB5E062AA5", - "name": "tally-mark-2", - "codepoint": "F1ABD", - "aliases": [ - "counting-2", - "two" - ], - "styles": [], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Irigoyen" - }, - { - "id": "37C95AE2-2AB4-4800-9683-49806B29599A", - "baseIconId": "1F0D9425-0B92-46C6-AEBE-39FB5E062AA5", - "name": "tally-mark-3", - "codepoint": "F1ABE", - "aliases": [ - "counting-3", - "three" - ], - "styles": [], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Irigoyen" - }, - { - "id": "85D71807-B7C3-48C8-8E8D-951AA54B68C7", - "baseIconId": "1F0D9425-0B92-46C6-AEBE-39FB5E062AA5", - "name": "tally-mark-4", - "codepoint": "F1ABF", - "aliases": [ - "counting-4", - "four" - ], - "styles": [], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0D7E150C-A65F-4A77-86A4-B0F5F2B60347", - "baseIconId": "1F0D9425-0B92-46C6-AEBE-39FB5E062AA5", - "name": "tally-mark-5", - "codepoint": "F1AC0", - "aliases": [ - "counting-5", - "five" - ], - "styles": [], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A7147BE3-0B04-4B61-94F3-48B0D9C5551E", - "baseIconId": "A7147BE3-0B04-4B61-94F3-48B0D9C5551E", - "name": "tangram", - "codepoint": "F04F8", - "aliases": [ - "puzzle" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Jeff Anders" - }, - { - "id": "C673D464-FC7A-4574-8EE6-6CCF7E39902F", - "baseIconId": "C673D464-FC7A-4574-8EE6-6CCF7E39902F", - "name": "tank", - "codepoint": "F0D3A", - "aliases": [], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [], - "author": "SLembas" - }, - { - "id": "E7134093-7DFD-48A0-A687-299B70E6D42D", - "baseIconId": "CB49A868-3317-4445-BFED-13CB6533000E", - "name": "tanker-truck", - "codepoint": "F0FE5", - "aliases": [ - "fuel-truck", - "oil-truck", - "water-truck", - "tanker" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Michael Irigoyen" - }, - { - "id": "76B2D13C-4AA4-4AA1-A0CA-F4E5CA53FFE2", - "baseIconId": "76B2D13C-4AA4-4AA1-A0CA-F4E5CA53FFE2", - "name": "tape-drive", - "codepoint": "F16DF", - "aliases": [], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Zach Gover" - }, - { - "id": "C9C3F657-65A6-418E-91EF-E6FD8F0357C1", - "baseIconId": "C9C3F657-65A6-418E-91EF-E6FD8F0357C1", - "name": "tape-measure", - "codepoint": "F0B4D", - "aliases": [ - "measuring-tape" - ], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "GreenTurtwig" - }, - { - "id": "363D29C5-9F0F-43EA-BE7E-D1C2C1418517", - "baseIconId": "363D29C5-9F0F-43EA-BE7E-D1C2C1418517", - "name": "target", - "codepoint": "F04FE", - "aliases": [ - "registration-mark" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Doug C. Hardester" - }, - { - "id": "9B5EC357-642F-4790-BD58-E45A217DD9B9", - "baseIconId": "363D29C5-9F0F-43EA-BE7E-D1C2C1418517", - "name": "target-account", - "codepoint": "F0BD0", - "aliases": [ - "crosshairs-account", - "target-user" - ], - "styles": [ - "variant" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Austin Andrews" - }, - { - "id": "C8208D76-55E5-41A2-9540-AF3731D16D74", - "baseIconId": "363D29C5-9F0F-43EA-BE7E-D1C2C1418517", - "name": "target-variant", - "codepoint": "F0A77", - "aliases": [ - "registration-mark" - ], - "styles": [ - "variant" - ], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "32F3835A-EBD0-4927-9497-6F67F7075EAF", - "baseIconId": "32F3835A-EBD0-4927-9497-6F67F7075EAF", - "name": "taxi", - "codepoint": "F04FF", - "aliases": [ - "local-taxi", - "cab" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Navigation" - ], - "author": "Google" - }, - { - "id": "D1759BBF-821F-4902-AAF5-8323A179912F", - "baseIconId": "C95D04C5-F5EE-411A-88F7-A9872B2B4021", - "name": "tea", - "codepoint": "F0D9E", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Google" - }, - { - "id": "002B1000-5D8B-4EC1-9D10-21E9EE62EE4C", - "baseIconId": "C95D04C5-F5EE-411A-88F7-A9872B2B4021", - "name": "tea-outline", - "codepoint": "F0D9F", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Food \/ Drink" - ], - "author": "Michael Irigoyen" - }, - { - "id": "3335C183-CD35-4D66-87AB-C5E3A7FCAFBF", - "baseIconId": "3335C183-CD35-4D66-87AB-C5E3A7FCAFBF", - "name": "teamviewer", - "codepoint": "F0500", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "A9D12403-70AF-4022-9AB1-B9CE5EF1F9E9", - "baseIconId": "A9D12403-70AF-4022-9AB1-B9CE5EF1F9E9", - "name": "teddy-bear", - "codepoint": "F18FB", - "aliases": [ - "child-toy", - "children-toy", - "kids-room", - "childrens-room", - "play-room" - ], - "styles": [], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Holiday", - "Home Automation" - ], - "author": "Andy Allsopp" - }, - { - "id": "66FE04C6-5941-4728-A256-17F9B25534F1", - "baseIconId": "66FE04C6-5941-4728-A256-17F9B25534F1", - "name": "telescope", - "codepoint": "F0B4E", - "aliases": [], - "styles": [], - "version": "2.8.94", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "SarinManS" - }, - { - "id": "1B699A99-578E-450C-9523-934F4D281F72", - "baseIconId": "1B699A99-578E-450C-9523-934F4D281F72", - "name": "television", - "codepoint": "F0502", - "aliases": [ - "tv" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Device \/ Tech", - "Home Automation" - ], - "author": "Google" - }, - { - "id": "09374787-27B8-43D7-92CA-B35050B1FA63", - "baseIconId": "1B699A99-578E-450C-9523-934F4D281F72", - "name": "television-ambient-light", - "codepoint": "F1356", - "aliases": [], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "CB446614-AE63-403E-BBF8-0B0ED3E367AE", - "baseIconId": "CB446614-AE63-403E-BBF8-0B0ED3E367AE", - "name": "television-box", - "codepoint": "F0839", - "aliases": [ - "tv-box", - "tv-guide" - ], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "EB7FD483-EAF9-4FEE-8B82-25186D26827A", - "baseIconId": "1B699A99-578E-450C-9523-934F4D281F72", - "name": "television-classic", - "codepoint": "F07F4", - "aliases": [ - "tv-classic" - ], - "styles": [ - "variant" - ], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Device \/ Tech", - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "C8E89001-2566-4676-B12B-7AAFAFCA0276", - "baseIconId": "1B699A99-578E-450C-9523-934F4D281F72", - "name": "television-classic-off", - "codepoint": "F083A", - "aliases": [ - "tv-classic-off" - ], - "styles": [ - "off", - "variant" - ], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Device \/ Tech", - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "6E5CAF6F-F00B-4613-B520-BDC1E5DD2832", - "baseIconId": "1B699A99-578E-450C-9523-934F4D281F72", - "name": "television-guide", - "codepoint": "F0503", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Device \/ Tech", - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "9E9D949B-13EC-43FB-9068-2BED76224BD8", - "baseIconId": "1B699A99-578E-450C-9523-934F4D281F72", - "name": "television-off", - "codepoint": "F083B", - "aliases": [ - "tv-off" - ], - "styles": [ - "off" - ], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Device \/ Tech", - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "EE3F2E38-D8CD-42BD-B50F-187A77FBC630", - "baseIconId": "1B699A99-578E-450C-9523-934F4D281F72", - "name": "television-pause", - "codepoint": "F0F89", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "GreenTurtwig" - }, - { - "id": "BFCE431D-2F97-4023-A690-F34199CA79F8", - "baseIconId": "1B699A99-578E-450C-9523-934F4D281F72", - "name": "television-play", - "codepoint": "F0ECF", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "Google" - }, - { - "id": "9132E544-8FAA-43BA-98B4-8D752CB3E251", - "baseIconId": "1B699A99-578E-450C-9523-934F4D281F72", - "name": "television-shimmer", - "codepoint": "F1110", - "aliases": [ - "television-clean" - ], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "kevin-hens" - }, - { - "id": "5C82B28E-DA98-4A40-B03A-9E309018F8C6", - "baseIconId": "1B699A99-578E-450C-9523-934F4D281F72", - "name": "television-speaker", - "codepoint": "F1B1B", - "aliases": [], - "styles": [ - "variant" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Audio", - "Video \/ Movie" - ], - "author": "Hans B\u00f6hm" - }, - { - "id": "1E85CDE3-96F9-4652-8E25-7B91F50E4D1C", - "baseIconId": "1B699A99-578E-450C-9523-934F4D281F72", - "name": "television-speaker-off", - "codepoint": "F1B1C", - "aliases": [], - "styles": [ - "off", - "variant" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Audio", - "Video \/ Movie" - ], - "author": "Hans B\u00f6hm" - }, - { - "id": "52228864-9BDD-4D12-82EC-AF730D68E47B", - "baseIconId": "1B699A99-578E-450C-9523-934F4D281F72", - "name": "television-stop", - "codepoint": "F0F8A", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "GreenTurtwig" - }, - { - "id": "A94E333D-F8C5-4726-B81A-6DDF4CC37FD0", - "baseIconId": "A94E333D-F8C5-4726-B81A-6DDF4CC37FD0", - "name": "temperature-celsius", - "codepoint": "F0504", - "aliases": [ - "temperature-centigrade" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Austin Andrews" - }, - { - "id": "9A1DF8BB-627A-47C9-B609-BAC145D320DF", - "baseIconId": "9A1DF8BB-627A-47C9-B609-BAC145D320DF", - "name": "temperature-fahrenheit", - "codepoint": "F0505", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Austin Andrews" - }, - { - "id": "DF9D47EE-157B-4E1E-85CE-A043E5F2AE51", - "baseIconId": "DF9D47EE-157B-4E1E-85CE-A043E5F2AE51", - "name": "temperature-kelvin", - "codepoint": "F0506", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Austin Andrews" - }, - { - "id": "8645763E-4D58-4BD2-99F0-1E1C3CA3F254", - "baseIconId": "8645763E-4D58-4BD2-99F0-1E1C3CA3F254", - "name": "temple-buddhist", - "codepoint": "F1B06", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Places", - "Religion" - ], - "author": "Google" - }, - { - "id": "8CE5A3E3-845D-479F-99F1-BAB02BEAAFC7", - "baseIconId": "8645763E-4D58-4BD2-99F0-1E1C3CA3F254", - "name": "temple-buddhist-outline", - "codepoint": "F1B07", - "aliases": [], - "styles": [ - "outline" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Places", - "Religion" - ], - "author": "Google" - }, - { - "id": "5271162F-477F-4B2C-9E8D-4078A9B7861C", - "baseIconId": "5271162F-477F-4B2C-9E8D-4078A9B7861C", - "name": "temple-hindu", - "codepoint": "F1B08", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Places", - "Religion" - ], - "author": "Google" - }, - { - "id": "4FB9F00B-42E2-4DA4-B1DF-E2895866B7CF", - "baseIconId": "5271162F-477F-4B2C-9E8D-4078A9B7861C", - "name": "temple-hindu-outline", - "codepoint": "F1B09", - "aliases": [], - "styles": [ - "outline" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Places", - "Religion" - ], - "author": "Google" - }, - { - "id": "CE166270-170C-4292-8D6F-FE787AF6B021", - "baseIconId": "CE166270-170C-4292-8D6F-FE787AF6B021", - "name": "tennis", - "codepoint": "F0DA0", - "aliases": [ - "tennis-racquet", - "tennis-racket" - ], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Google" - }, - { - "id": "DE92B1F1-31FB-4551-84A2-32F5B5D842EC", - "baseIconId": "DE92B1F1-31FB-4551-84A2-32F5B5D842EC", - "name": "tennis-ball", - "codepoint": "F0507", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Google" - }, - { - "id": "0B976004-97EB-486D-ACFF-5EBFED611D87", - "baseIconId": "DE92B1F1-31FB-4551-84A2-32F5B5D842EC", - "name": "tennis-ball-outline", - "codepoint": "F1C5F", - "aliases": [], - "styles": [ - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Jeff Anders" - }, - { - "id": "688277DE-082A-4BE2-8E59-129245E02DD7", - "baseIconId": "688277DE-082A-4BE2-8E59-129245E02DD7", - "name": "tent", - "codepoint": "F0508", - "aliases": [ - "camping", - "holiday" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "D3339724-6ECB-4328-83C8-7E956C0271C0", - "baseIconId": "D3339724-6ECB-4328-83C8-7E956C0271C0", - "name": "terraform", - "codepoint": "F1062", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "1F98A781-6023-4368-AC06-5A421D166FCC", - "baseIconId": "1F98A781-6023-4368-AC06-5A421D166FCC", - "name": "terrain", - "codepoint": "F0509", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Nature" - ], - "author": "Google" - }, - { - "id": "0B88F54B-7522-4D7D-85EC-3C0C3E7D36FE", - "baseIconId": "0B88F54B-7522-4D7D-85EC-3C0C3E7D36FE", - "name": "test-tube", - "codepoint": "F0668", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Kai Faust" - }, - { - "id": "A6F17875-0B9B-467B-85F5-4C4804D3A367", - "baseIconId": "0B88F54B-7522-4D7D-85EC-3C0C3E7D36FE", - "name": "test-tube-empty", - "codepoint": "F0911", - "aliases": [], - "styles": [ - "variant" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "8B2E6A86-9CC3-4F9B-8B77-F5DD9BAE7898", - "baseIconId": "0B88F54B-7522-4D7D-85EC-3C0C3E7D36FE", - "name": "test-tube-off", - "codepoint": "F0912", - "aliases": [], - "styles": [ - "off" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Austin Andrews" - }, - { - "id": "E56EAB24-6D70-49E0-BEC8-D9164A93CB63", - "baseIconId": "E56EAB24-6D70-49E0-BEC8-D9164A93CB63", - "name": "text", - "codepoint": "F09A8", - "aliases": [ - "notes" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Text \/ Content \/ Format" - ], - "author": "Google" - }, - { - "id": "15B2BA3F-53A2-4151-9B90-20000264FE54", - "baseIconId": "E56EAB24-6D70-49E0-BEC8-D9164A93CB63", - "name": "text-account", - "codepoint": "F1570", - "aliases": [ - "biography", - "text-user" - ], - "styles": [ - "account" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Brooke Clifton" - }, - { - "id": "32E03B3D-EAFA-4483-AE94-E43944F0F0AE", - "baseIconId": "32E03B3D-EAFA-4483-AE94-E43944F0F0AE", - "name": "text-box", - "codepoint": "F021A", - "aliases": [ - "drive-document", - "file-document-box" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Google" - }, - { - "id": "291424C4-8874-4D0D-8D89-0C3349C021ED", - "baseIconId": "32E03B3D-EAFA-4483-AE94-E43944F0F0AE", - "name": "text-box-check", - "codepoint": "F0EA6", - "aliases": [ - "file-document-box-tick", - "file-document-box-check" - ], - "styles": [ - "check" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "mocking-mike" - }, - { - "id": "A24C1161-73F2-43F0-B955-7D4E5F398372", - "baseIconId": "32E03B3D-EAFA-4483-AE94-E43944F0F0AE", - "name": "text-box-check-outline", - "codepoint": "F0EA7", - "aliases": [ - "file-document-box-tick-outline", - "file-document-box-check-outline" - ], - "styles": [ - "check", - "outline" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "mocking-mike" - }, - { - "id": "1AB9A345-F896-42F2-A7AF-5E61A8F17D15", - "baseIconId": "E56EAB24-6D70-49E0-BEC8-D9164A93CB63", - "name": "text-box-edit", - "codepoint": "F1A7C", - "aliases": [], - "styles": [ - "box", - "edit" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Edit \/ Modify" - ], - "author": "Michael Irigoyen" - }, - { - "id": "694846A9-15AD-4FA3-9130-20863F5ED8EE", - "baseIconId": "E56EAB24-6D70-49E0-BEC8-D9164A93CB63", - "name": "text-box-edit-outline", - "codepoint": "F1A7D", - "aliases": [], - "styles": [ - "box", - "edit", - "outline" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Files \/ Folders", - "Edit \/ Modify" - ], - "author": "Michael Irigoyen" - }, - { - "id": "60E9BECF-1FDF-4077-9BD7-F7B1863C2F66", - "baseIconId": "32E03B3D-EAFA-4483-AE94-E43944F0F0AE", - "name": "text-box-minus", - "codepoint": "F0EA8", - "aliases": [ - "file-document-box-minus" - ], - "styles": [ - "minus" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "89E44C7C-4A52-4BBE-8EF4-2127A320E444", - "baseIconId": "32E03B3D-EAFA-4483-AE94-E43944F0F0AE", - "name": "text-box-minus-outline", - "codepoint": "F0EA9", - "aliases": [ - "file-document-box-minus-outline" - ], - "styles": [ - "minus", - "outline" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "3F7FCD03-4E12-4D4D-AB63-C8D51F938284", - "baseIconId": "E56EAB24-6D70-49E0-BEC8-D9164A93CB63", - "name": "text-box-multiple", - "codepoint": "F0AB7", - "aliases": [ - "file-document-boxes", - "file-document-box-multiple" - ], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "02EF54D9-4D5D-463C-A3E8-0B44BDCB9523", - "baseIconId": "E56EAB24-6D70-49E0-BEC8-D9164A93CB63", - "name": "text-box-multiple-outline", - "codepoint": "F0AB8", - "aliases": [ - "file-document-boxes-outline", - "file-document-box-multiple-outline" - ], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "E12AE178-0546-4CD3-81F6-BD1F17AA50EE", - "baseIconId": "E56EAB24-6D70-49E0-BEC8-D9164A93CB63", - "name": "text-box-outline", - "codepoint": "F09ED", - "aliases": [ - "file-document-box-outline" - ], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "GreenTurtwig" - }, - { - "id": "8979EEB0-B475-4229-A7D8-F5D48A58DB85", - "baseIconId": "32E03B3D-EAFA-4483-AE94-E43944F0F0AE", - "name": "text-box-plus", - "codepoint": "F0EAA", - "aliases": [ - "file-document-box-plus" - ], - "styles": [ - "plus" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "467C2198-D7C5-4B95-88F1-71B269D2AEAC", - "baseIconId": "32E03B3D-EAFA-4483-AE94-E43944F0F0AE", - "name": "text-box-plus-outline", - "codepoint": "F0EAB", - "aliases": [ - "file-document-box-plus-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B599787B-9A9F-45C1-AD76-45FB4B00EFFC", - "baseIconId": "32E03B3D-EAFA-4483-AE94-E43944F0F0AE", - "name": "text-box-remove", - "codepoint": "F0EAC", - "aliases": [ - "file-document-box-remove" - ], - "styles": [ - "remove" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C822984D-33BC-4A48-A9A3-E679ABF13595", - "baseIconId": "32E03B3D-EAFA-4483-AE94-E43944F0F0AE", - "name": "text-box-remove-outline", - "codepoint": "F0EAD", - "aliases": [ - "file-document-box-remove-outline" - ], - "styles": [ - "outline", - "remove" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "08B85EF9-81EC-4DEE-B1C7-1C14D4CBECA5", - "baseIconId": "32E03B3D-EAFA-4483-AE94-E43944F0F0AE", - "name": "text-box-search", - "codepoint": "F0EAE", - "aliases": [ - "file-document-box-search" - ], - "styles": [ - "search" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "D32F390E-2888-4C63-99FA-9662902B6694", - "baseIconId": "32E03B3D-EAFA-4483-AE94-E43944F0F0AE", - "name": "text-box-search-outline", - "codepoint": "F0EAF", - "aliases": [ - "file-document-box-search-outline" - ], - "styles": [ - "outline", - "search" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Austin Andrews" - }, - { - "id": "CA8CE1CF-1F6E-4B8B-9972-B3F36E865E67", - "baseIconId": "E56EAB24-6D70-49E0-BEC8-D9164A93CB63", - "name": "text-long", - "codepoint": "F09AA", - "aliases": [ - "text-subject" - ], - "styles": [ - "variant" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "8F37BBCB-35D2-4FAF-88ED-59252659885D", - "baseIconId": "8F37BBCB-35D2-4FAF-88ED-59252659885D", - "name": "text-recognition", - "codepoint": "F113D", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [], - "author": "Haley Halcyon" - }, - { - "id": "3C1714C4-ACE1-45F2-ADE8-D90DD2E9742C", - "baseIconId": "3C1714C4-ACE1-45F2-ADE8-D90DD2E9742C", - "name": "text-search", - "codepoint": "F13B8", - "aliases": [ - "notes-search" - ], - "styles": [], - "version": "5.1.45", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "B1B403FA-FBA6-4219-8561-23DE3833029F", - "baseIconId": "E56EAB24-6D70-49E0-BEC8-D9164A93CB63", - "name": "text-search-variant", - "codepoint": "F1A7E", - "aliases": [ - "notes-search-variant" - ], - "styles": [ - "search", - "variant" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "4595BB97-16B7-4B19-8AC5-9C33167A6D20", - "baseIconId": "4595BB97-16B7-4B19-8AC5-9C33167A6D20", - "name": "text-shadow", - "codepoint": "F0669", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "F80F249A-898B-4690-888A-EC11F79B4E56", - "baseIconId": "E56EAB24-6D70-49E0-BEC8-D9164A93CB63", - "name": "text-short", - "codepoint": "F09A9", - "aliases": [], - "styles": [ - "variant" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "E3A06403-51B5-4D00-9349-53517553A324", - "baseIconId": "E3A06403-51B5-4D00-9349-53517553A324", - "name": "texture", - "codepoint": "F050C", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "7B46F16A-AF86-4A7A-B3AB-1D2297831078", - "baseIconId": "E3A06403-51B5-4D00-9349-53517553A324", - "name": "texture-box", - "codepoint": "F0FE6", - "aliases": [ - "surface-area" - ], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Math" - ], - "author": "Michael Irigoyen" - }, - { - "id": "37350655-CB4D-4D9F-8C90-B8049CA0E48E", - "baseIconId": "37350655-CB4D-4D9F-8C90-B8049CA0E48E", - "name": "theater", - "codepoint": "F050D", - "aliases": [ - "cinema", - "theatre" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Places", - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "AE66BEF4-7040-4A15-8BF3-639B116853CC", - "baseIconId": "AE66BEF4-7040-4A15-8BF3-639B116853CC", - "name": "theme-light-dark", - "codepoint": "F050E", - "aliases": [ - "sun-moon-stars" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Austin Andrews" - }, - { - "id": "F41863ED-B66A-4FF4-B436-0876C8D3665B", - "baseIconId": "F41863ED-B66A-4FF4-B436-0876C8D3665B", - "name": "thermometer", - "codepoint": "F050F", - "aliases": [ - "temperature" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Weather", - "Home Automation", - "Automotive" - ], - "author": "Austin Andrews" - }, - { - "id": "DB3D5088-E7A7-47AD-87E3-43D5B41BF0C2", - "baseIconId": "F41863ED-B66A-4FF4-B436-0876C8D3665B", - "name": "thermometer-alert", - "codepoint": "F0E01", - "aliases": [ - "thermometer-warning", - "temperature-alert", - "temperature-warning" - ], - "styles": [ - "alert" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Home Automation", - "Weather", - "Alert \/ Error" - ], - "author": "Michael Richins" - }, - { - "id": "EBC857F8-EDAD-46AF-9F34-0DCB03E27998", - "baseIconId": "F41863ED-B66A-4FF4-B436-0876C8D3665B", - "name": "thermometer-auto", - "codepoint": "F1B0F", - "aliases": [ - "temperature-auto" - ], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Home Automation", - "Weather" - ], - "author": "Hans B\u00f6hm" - }, - { - "id": "D3767EC9-5C06-42A0-B6BE-F5D2CF89FFD1", - "baseIconId": "F41863ED-B66A-4FF4-B436-0876C8D3665B", - "name": "thermometer-bluetooth", - "codepoint": "F1895", - "aliases": [ - "temperature-bluetooth" - ], - "styles": [ - "variant" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Weather", - "Home Automation", - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E01A628C-01EA-4F7E-B150-FCCDBED99EF9", - "baseIconId": "F41863ED-B66A-4FF4-B436-0876C8D3665B", - "name": "thermometer-check", - "codepoint": "F1A7F", - "aliases": [ - "thermometer-approve", - "temperature-check", - "temperature-approve" - ], - "styles": [ - "check" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Weather", - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C888E2C1-306A-4BCB-821E-5B33AC93572D", - "baseIconId": "F41863ED-B66A-4FF4-B436-0876C8D3665B", - "name": "thermometer-chevron-down", - "codepoint": "F0E02", - "aliases": [ - "temperature-chevron-down", - "temperature-decrease", - "thermometer-decrease" - ], - "styles": [ - "arrow" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Home Automation", - "Weather" - ], - "author": "Michael Richins" - }, - { - "id": "79E7C071-7AEE-48B1-802E-922925E94247", - "baseIconId": "F41863ED-B66A-4FF4-B436-0876C8D3665B", - "name": "thermometer-chevron-up", - "codepoint": "F0E03", - "aliases": [ - "temperature-chevron-up", - "temperature-increase", - "thermometer-increase" - ], - "styles": [ - "arrow" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Home Automation", - "Weather" - ], - "author": "Michael Richins" - }, - { - "id": "DF51BF5D-831D-4FD1-8786-498CAC97DBB6", - "baseIconId": "F41863ED-B66A-4FF4-B436-0876C8D3665B", - "name": "thermometer-high", - "codepoint": "F10C2", - "aliases": [ - "temperature-high" - ], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Weather" - ], - "author": "Michael Richins" - }, - { - "id": "A9FC898C-8CC5-44F2-822D-05C5625E95C8", - "baseIconId": "F41863ED-B66A-4FF4-B436-0876C8D3665B", - "name": "thermometer-lines", - "codepoint": "F0510", - "aliases": [ - "temperature-lines" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Weather", - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "DBD8C754-85C4-43C4-BEA8-BCFEDB30B382", - "baseIconId": "F41863ED-B66A-4FF4-B436-0876C8D3665B", - "name": "thermometer-low", - "codepoint": "F10C3", - "aliases": [ - "temperature-low" - ], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Weather" - ], - "author": "Michael Richins" - }, - { - "id": "310F50E9-D74E-4753-A6D8-60EDBFC332B7", - "baseIconId": "F41863ED-B66A-4FF4-B436-0876C8D3665B", - "name": "thermometer-minus", - "codepoint": "F0E04", - "aliases": [ - "temperature-minus", - "thermometer-decrease", - "temperature-decrease" - ], - "styles": [ - "minus" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Home Automation", - "Weather" - ], - "author": "Michael Richins" - }, - { - "id": "BF73A396-DB1C-46BC-8078-3CF0D7E0277F", - "baseIconId": "F41863ED-B66A-4FF4-B436-0876C8D3665B", - "name": "thermometer-off", - "codepoint": "F1531", - "aliases": [ - "temperature-off" - ], - "styles": [ - "off" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Weather", - "Home Automation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "511387A0-FD3A-4335-B82E-9C68E02BABDD", - "baseIconId": "F41863ED-B66A-4FF4-B436-0876C8D3665B", - "name": "thermometer-plus", - "codepoint": "F0E05", - "aliases": [ - "thermometer-add", - "thermometer-increase", - "temperature-plus", - "temperature-add", - "temperature-increase" - ], - "styles": [ - "plus" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Home Automation", - "Weather" - ], - "author": "Michael Richins" - }, - { - "id": "75048CA6-0E85-45B6-9DC4-3F4CDC45E14E", - "baseIconId": "75048CA6-0E85-45B6-9DC4-3F4CDC45E14E", - "name": "thermometer-probe", - "codepoint": "F1B2B", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "F4CAA724-0072-475C-82A8-BD8AD3DEE74B", - "baseIconId": "F4CAA724-0072-475C-82A8-BD8AD3DEE74B", - "name": "thermometer-probe-off", - "codepoint": "F1B2C", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "23736622-5488-4BE7-BB70-225F5F17AF2B", - "baseIconId": "F41863ED-B66A-4FF4-B436-0876C8D3665B", - "name": "thermometer-water", - "codepoint": "F1A80", - "aliases": [ - "dew-point", - "water-temperature", - "boiling-point" - ], - "styles": [ - "variant" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Weather", - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "628D16E2-7E57-43CA-8451-012B8AB852DA", - "baseIconId": "628D16E2-7E57-43CA-8451-012B8AB852DA", - "name": "thermostat", - "codepoint": "F0393", - "aliases": [ - "nest" - ], - "styles": [ - "circle" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Device \/ Tech", - "Home Automation" - ], - "author": "Google" - }, - { - "id": "35160CD5-6140-45AE-BE6B-AC73C11DE3E1", - "baseIconId": "628D16E2-7E57-43CA-8451-012B8AB852DA", - "name": "thermostat-auto", - "codepoint": "F1B17", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Hans B\u00f6hm" - }, - { - "id": "E0A6898F-3F08-4E13-8B61-DA63E5CBF949", - "baseIconId": "628D16E2-7E57-43CA-8451-012B8AB852DA", - "name": "thermostat-box", - "codepoint": "F0891", - "aliases": [], - "styles": [ - "box" - ], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Home Automation", - "Device \/ Tech" - ], - "author": "GreenTurtwig" - }, - { - "id": "9753B373-A5AD-4E33-B5F1-133B30FAFD55", - "baseIconId": "628D16E2-7E57-43CA-8451-012B8AB852DA", - "name": "thermostat-box-auto", - "codepoint": "F1B18", - "aliases": [], - "styles": [ - "box" - ], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A22B6267-3CAE-44F8-A818-DF22A850E1B0", - "baseIconId": "628D16E2-7E57-43CA-8451-012B8AB852DA", - "name": "thermostat-cog", - "codepoint": "F1C80", - "aliases": [], - "styles": [ - "cog" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jeff Anders" - }, - { - "id": "46ACA864-4B1C-4DBD-94FB-7A0D6B9A500E", - "baseIconId": "46ACA864-4B1C-4DBD-94FB-7A0D6B9A500E", - "name": "thought-bubble", - "codepoint": "F07F6", - "aliases": [ - "comic-bubble", - "thinking" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "2C82E0CA-9872-431C-8739-0EA33825EBF7", - "baseIconId": "46ACA864-4B1C-4DBD-94FB-7A0D6B9A500E", - "name": "thought-bubble-outline", - "codepoint": "F07F7", - "aliases": [ - "comic-thought-bubble-outline", - "thinking-outline", - "think-outline" - ], - "styles": [ - "outline" - ], - "version": "2.0.46", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "83D606E3-69A1-4583-854D-5C44477D038D", - "baseIconId": "83D606E3-69A1-4583-854D-5C44477D038D", - "name": "thumb-down", - "codepoint": "F0511", - "aliases": [ - "dislike", - "thumbs-down" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "00EE8027-00FE-43B8-ACEC-7779E39D6E29", - "baseIconId": "83D606E3-69A1-4583-854D-5C44477D038D", - "name": "thumb-down-outline", - "codepoint": "F0512", - "aliases": [ - "dislike-outline", - "thumbs-down-outline" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "C32E4FC9-F3DC-4C67-81FB-62648E3F1AB5", - "baseIconId": "C32E4FC9-F3DC-4C67-81FB-62648E3F1AB5", - "name": "thumb-up", - "codepoint": "F0513", - "aliases": [ - "like", - "thumbs-up" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "BFA3B3A3-0D00-459A-8BDB-DAC2D4233023", - "baseIconId": "C32E4FC9-F3DC-4C67-81FB-62648E3F1AB5", - "name": "thumb-up-outline", - "codepoint": "F0514", - "aliases": [ - "like-outline", - "thumbs-up-outline" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "C38D6CEC-4D8E-44DB-B704-9A76552733D4", - "baseIconId": "C38D6CEC-4D8E-44DB-B704-9A76552733D4", - "name": "thumbs-up-down", - "codepoint": "F0515", - "aliases": [ - "like-dislike" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "B5F74959-A897-4A3F-9E76-2154AB4B8930", - "baseIconId": "C38D6CEC-4D8E-44DB-B704-9A76552733D4", - "name": "thumbs-up-down-outline", - "codepoint": "F1914", - "aliases": [ - "like-dislike-outline" - ], - "styles": [ - "outline" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "18F55984-07FD-4630-BB11-8285F83AA838", - "baseIconId": "18F55984-07FD-4630-BB11-8285F83AA838", - "name": "ticket", - "codepoint": "F0516", - "aliases": [ - "local-activity", - "local-play", - "local-attraction" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "DE2E8A6C-33F1-4148-A228-C512C26B3159", - "baseIconId": "18F55984-07FD-4630-BB11-8285F83AA838", - "name": "ticket-account", - "codepoint": "F0517", - "aliases": [ - "ticket-user" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User" - ], - "author": "Austin Andrews" - }, - { - "id": "F19DA1EC-CBDA-456E-BC19-F03C635C886F", - "baseIconId": "18F55984-07FD-4630-BB11-8285F83AA838", - "name": "ticket-confirmation", - "codepoint": "F0518", - "aliases": [ - "confirmation-number" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "A1B45743-22F5-49E8-B466-120024F2C4C3", - "baseIconId": "18F55984-07FD-4630-BB11-8285F83AA838", - "name": "ticket-confirmation-outline", - "codepoint": "F13AA", - "aliases": [ - "confirmation-number-outline" - ], - "styles": [ - "outline" - ], - "version": "5.0.45", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "6D7F0E99-A86F-4AAB-A468-F1D3214E1B60", - "baseIconId": "18F55984-07FD-4630-BB11-8285F83AA838", - "name": "ticket-outline", - "codepoint": "F0913", - "aliases": [], - "styles": [ - "outline" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "297864D0-935F-4EF0-9A2C-28F018544581", - "baseIconId": "18F55984-07FD-4630-BB11-8285F83AA838", - "name": "ticket-percent", - "codepoint": "F0724", - "aliases": [ - "coupon", - "voucher" - ], - "styles": [ - "variant" - ], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "43EDCFCF-4AFB-45E7-8F83-56CC40FC93B7", - "baseIconId": "18F55984-07FD-4630-BB11-8285F83AA838", - "name": "ticket-percent-outline", - "codepoint": "F142B", - "aliases": [ - "coupon-outline", - "voucher-outline" - ], - "styles": [], - "version": "5.2.45", - "deprecated": false, - "tags": [], - "author": "\u00d6zg\u00fcr G\u00f6rg\u00fcl\u00fc" - }, - { - "id": "475062F1-407D-43B6-8FBF-1E0D4C7D690C", - "baseIconId": "475062F1-407D-43B6-8FBF-1E0D4C7D690C", - "name": "tie", - "codepoint": "F0519", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Clothing" - ], - "author": "Austin Andrews" - }, - { - "id": "708986EE-2BC9-401D-8ACD-0BC5A3E20EA3", - "baseIconId": "708986EE-2BC9-401D-8ACD-0BC5A3E20EA3", - "name": "tilde", - "codepoint": "F0725", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "06A80087-C9FF-4A60-A370-BD183676DC0A", - "baseIconId": "708986EE-2BC9-401D-8ACD-0BC5A3E20EA3", - "name": "tilde-off", - "codepoint": "F18F3", - "aliases": [], - "styles": [ - "off" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "348DB89A-B4E2-4CB9-A7A4-B86973243ADE", - "baseIconId": "348DB89A-B4E2-4CB9-A7A4-B86973243ADE", - "name": "timelapse", - "codepoint": "F051A", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "087D891A-1B90-42FA-97E4-9381D8D7CCF8", - "baseIconId": "087D891A-1B90-42FA-97E4-9381D8D7CCF8", - "name": "timeline", - "codepoint": "F0BD1", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "3965A310-F8FE-4077-8DAB-722CF2A44E78", - "baseIconId": "087D891A-1B90-42FA-97E4-9381D8D7CCF8", - "name": "timeline-alert", - "codepoint": "F0F95", - "aliases": [], - "styles": [ - "alert" - ], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Austin Andrews" - }, - { - "id": "E6B39705-7058-4C26-BE2B-D85FAF69F614", - "baseIconId": "087D891A-1B90-42FA-97E4-9381D8D7CCF8", - "name": "timeline-alert-outline", - "codepoint": "F0F98", - "aliases": [], - "styles": [ - "alert", - "outline" - ], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Austin Andrews" - }, - { - "id": "56EABFF0-9689-4078-98F6-8E0EDAAD6A19", - "baseIconId": "087D891A-1B90-42FA-97E4-9381D8D7CCF8", - "name": "timeline-check", - "codepoint": "F1532", - "aliases": [], - "styles": [ - "check" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "0A75C1CB-0AF6-4A5E-BBE2-C14C31DDBBB6", - "baseIconId": "087D891A-1B90-42FA-97E4-9381D8D7CCF8", - "name": "timeline-check-outline", - "codepoint": "F1533", - "aliases": [], - "styles": [ - "check", - "outline" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "2671B127-348C-47F5-B016-F30389D649CF", - "baseIconId": "087D891A-1B90-42FA-97E4-9381D8D7CCF8", - "name": "timeline-clock", - "codepoint": "F11FB", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Austin Andrews" - }, - { - "id": "2C73EA7B-CAD0-439D-8D8F-8779B100F927", - "baseIconId": "087D891A-1B90-42FA-97E4-9381D8D7CCF8", - "name": "timeline-clock-outline", - "codepoint": "F11FC", - "aliases": [], - "styles": [ - "outline" - ], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Austin Andrews" - }, - { - "id": "4086C75B-4BB4-4307-A953-22F4F7AEDE9F", - "baseIconId": "087D891A-1B90-42FA-97E4-9381D8D7CCF8", - "name": "timeline-minus", - "codepoint": "F1534", - "aliases": [], - "styles": [ - "minus" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "E984C3EB-C8F3-4357-BAA4-93F9ED3049BC", - "baseIconId": "087D891A-1B90-42FA-97E4-9381D8D7CCF8", - "name": "timeline-minus-outline", - "codepoint": "F1535", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "82363A48-4E61-4594-A3DA-AA94FBBA4BE8", - "baseIconId": "087D891A-1B90-42FA-97E4-9381D8D7CCF8", - "name": "timeline-outline", - "codepoint": "F0BD2", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "6DDA8E22-8819-4EA4-A239-57349E7B1C7C", - "baseIconId": "087D891A-1B90-42FA-97E4-9381D8D7CCF8", - "name": "timeline-plus", - "codepoint": "F0F96", - "aliases": [], - "styles": [ - "plus" - ], - "version": "3.9.97", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "230196A7-AFE4-4722-810C-B845246A42A8", - "baseIconId": "087D891A-1B90-42FA-97E4-9381D8D7CCF8", - "name": "timeline-plus-outline", - "codepoint": "F0F97", - "aliases": [], - "styles": [ - "outline", - "plus" - ], - "version": "3.9.97", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "92637DDF-E9A3-43E1-986D-DA5DE7FA8CDE", - "baseIconId": "087D891A-1B90-42FA-97E4-9381D8D7CCF8", - "name": "timeline-question", - "codepoint": "F0F99", - "aliases": [ - "timeline-help" - ], - "styles": [ - "question" - ], - "version": "3.9.97", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "E844C160-56F3-431B-B971-00178D4B5D59", - "baseIconId": "087D891A-1B90-42FA-97E4-9381D8D7CCF8", - "name": "timeline-question-outline", - "codepoint": "F0F9A", - "aliases": [ - "timeline-help-outline" - ], - "styles": [ - "outline", - "question" - ], - "version": "3.9.97", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "1855D5A7-8C35-4621-BFFB-E10D9F0C0726", - "baseIconId": "087D891A-1B90-42FA-97E4-9381D8D7CCF8", - "name": "timeline-remove", - "codepoint": "F1536", - "aliases": [], - "styles": [ - "remove" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "748EF30E-992C-41C9-94DA-A95F4F80A4EF", - "baseIconId": "087D891A-1B90-42FA-97E4-9381D8D7CCF8", - "name": "timeline-remove-outline", - "codepoint": "F1537", - "aliases": [], - "styles": [ - "outline", - "remove" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "DBC01596-0759-4095-9BAA-3D582324A836", - "baseIconId": "087D891A-1B90-42FA-97E4-9381D8D7CCF8", - "name": "timeline-text", - "codepoint": "F0BD3", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "F949D410-50B0-49DD-B4CE-E2FA9160052F", - "baseIconId": "087D891A-1B90-42FA-97E4-9381D8D7CCF8", - "name": "timeline-text-outline", - "codepoint": "F0BD4", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer", - "codepoint": "F13AB", - "aliases": [ - "stopwatch" - ], - "styles": [], - "version": "5.0.45", - "deprecated": false, - "tags": [ - "Sport", - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "BDC89918-A38F-41C6-997E-DE9F779D4435", - "baseIconId": "BDC89918-A38F-41C6-997E-DE9F779D4435", - "name": "timer-10", - "codepoint": "F051C", - "aliases": [ - "timer-ten" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "3DEFEFB6-57CE-4C82-9D0C-16DBDBEF5950", - "baseIconId": "3DEFEFB6-57CE-4C82-9D0C-16DBDBEF5950", - "name": "timer-3", - "codepoint": "F051D", - "aliases": [ - "timer-three" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "7A645EAB-94F5-49FA-8A73-D9D1045D3B34", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-alert", - "codepoint": "F1ACC", - "aliases": [ - "stopwatch-alert" - ], - "styles": [ - "alert" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Alert \/ Error" - ], - "author": "Colton Wiscombe" - }, - { - "id": "4F3E2A6F-20C4-4EB4-8086-C8A7D1B55283", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-alert-outline", - "codepoint": "F1ACD", - "aliases": [ - "stopwatch-alert-outline" - ], - "styles": [ - "alert", - "outline" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Alert \/ Error" - ], - "author": "Colton Wiscombe" - }, - { - "id": "B155A30F-D5A6-4981-A072-B565DA53872D", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-cancel", - "codepoint": "F1ACE", - "aliases": [ - "stopwatch-cancel" - ], - "styles": [ - "cancel" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "F36D3C1A-6148-491D-AED6-B6F1883229BD", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-cancel-outline", - "codepoint": "F1ACF", - "aliases": [ - "stopwatch-cancel-outline" - ], - "styles": [ - "cancel", - "outline" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "C9193A95-3EFC-420B-A97A-2B688BE03647", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-check", - "codepoint": "F1AD0", - "aliases": [ - "stopwatch-check", - "timer-tick", - "stopwatch-tick" - ], - "styles": [ - "check" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "AA368E7E-E808-48E4-9DFF-826156E12D8B", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-check-outline", - "codepoint": "F1AD1", - "aliases": [ - "timer-tick-outline", - "stopwatch-check-outline", - "stopwatch-tick-outline" - ], - "styles": [ - "check", - "outline" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "94B9E2FB-1589-418F-A128-C071B10B10EB", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-cog", - "codepoint": "F1925", - "aliases": [ - "timer-settings" - ], - "styles": [ - "settings" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "78B70624-89F7-4041-B247-9A39EA39957F", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-cog-outline", - "codepoint": "F1926", - "aliases": [ - "timer-settings-outline" - ], - "styles": [ - "outline", - "settings" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "046D48AE-58AE-472A-826A-F13F4859C0A3", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-edit", - "codepoint": "F1AD2", - "aliases": [ - "stopwatch-edit" - ], - "styles": [ - "edit" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Edit \/ Modify" - ], - "author": "Colton Wiscombe" - }, - { - "id": "D16F03BE-957E-44F1-AD89-C18C340311BD", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-edit-outline", - "codepoint": "F1AD3", - "aliases": [ - "stopwatch-edit-outline" - ], - "styles": [ - "edit", - "outline" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Edit \/ Modify" - ], - "author": "Colton Wiscombe" - }, - { - "id": "E2B4F7F7-FF17-4CCE-A1C7-BD677E2F32D5", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-lock", - "codepoint": "F1AD4", - "aliases": [ - "stopwatch-lock", - "timer-secure", - "stopwatch-secure" - ], - "styles": [ - "lock" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "DEA728EB-8545-4E23-B31B-C9B1AA2229FD", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-lock-open", - "codepoint": "F1AD5", - "aliases": [ - "stopwatch-lock-open" - ], - "styles": [ - "lock" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "2972C8F4-C75F-4AF0-AE70-2FFEBE34461E", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-lock-open-outline", - "codepoint": "F1AD6", - "aliases": [ - "stopwatch-lock-open-outline" - ], - "styles": [ - "lock", - "outline" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "5849E09F-FAFC-40A5-9A30-D4B9BFB87BCC", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-lock-outline", - "codepoint": "F1AD7", - "aliases": [ - "stopwatch-lock-outline", - "stopwatch-secure-outline", - "timer-secure-outline" - ], - "styles": [ - "lock", - "outline" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "821CEDA0-CD59-45AF-BF1A-EE56399BC374", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-marker", - "codepoint": "F1AD8", - "aliases": [ - "stopwatch-marker", - "timer-location", - "stopwatch-location" - ], - "styles": [ - "marker" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Navigation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "D31E92C3-4D5C-4029-9D91-0C41DDFDB164", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-marker-outline", - "codepoint": "F1AD9", - "aliases": [ - "stopwatch-marker-outline", - "timer-location-outline", - "stopwatch-location-outline" - ], - "styles": [ - "marker", - "outline" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Navigation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "B6BD7263-1491-4D66-9847-D9E7F1B78967", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-minus", - "codepoint": "F1ADA", - "aliases": [ - "timer-subtract", - "stopwatch-minus", - "stopwatch-subtract" - ], - "styles": [ - "minus" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "4F6F9FA4-0D4F-4543-95D4-9FF0AA8678BE", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-minus-outline", - "codepoint": "F1ADB", - "aliases": [ - "timer-subtract-outline", - "stopwatch-minus-outline", - "stopwatch-subtract-outline" - ], - "styles": [ - "minus", - "outline" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "2BE4E342-BEAB-4B48-8CE5-E1B83D86E0D7", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-music", - "codepoint": "F1ADC", - "aliases": [ - "stopwatch-music" - ], - "styles": [ - "variant" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Music" - ], - "author": "Colton Wiscombe" - }, - { - "id": "CAEA0928-8B03-4139-B58F-DAD1865FDC12", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-music-outline", - "codepoint": "F1ADD", - "aliases": [ - "stopwatch-music-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Music" - ], - "author": "Colton Wiscombe" - }, - { - "id": "CC698648-1A71-4EC8-A1E3-B5ACC42F2FDB", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-off", - "codepoint": "F13AC", - "aliases": [ - "stopwatch-off" - ], - "styles": [ - "off" - ], - "version": "5.0.45", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "BE74C70B-7E47-4E25-957C-C83CFEB73D6D", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-off-outline", - "codepoint": "F051E", - "aliases": [ - "stopwatch-off-outline" - ], - "styles": [ - "off", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "017E0965-CD2E-4B39-B0C5-410335848B12", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-outline", - "codepoint": "F051B", - "aliases": [ - "stopwatch-outline" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Sport" - ], - "author": "Google" - }, - { - "id": "3BF45E47-3FE7-43FE-AE4B-FFD605289C60", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-pause", - "codepoint": "F1ADE", - "aliases": [ - "stopwatch-pause" - ], - "styles": [], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "7C566FCC-EC47-409A-8E7B-5769C82CEF01", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-pause-outline", - "codepoint": "F1ADF", - "aliases": [ - "stopwatch-pause-outline" - ], - "styles": [ - "outline" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "81E15BC1-262E-435E-82BD-C4342A92D6E1", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-play", - "codepoint": "F1AE0", - "aliases": [ - "timer-start", - "stopwatch-play", - "stopwatch-start" - ], - "styles": [], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "0E6F9270-1D27-4E36-9352-0BACC428A548", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-play-outline", - "codepoint": "F1AE1", - "aliases": [ - "timer-start-outline", - "stopwatch-play-outline", - "stopwatch-start-outline" - ], - "styles": [ - "outline" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "2C80851E-E2B2-4CB3-9B95-A7807473F48C", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-plus", - "codepoint": "F1AE2", - "aliases": [ - "timer-add", - "stopwatch-plus", - "stopwatch-add" - ], - "styles": [ - "plus" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "5068DEF2-6E6D-469B-8770-2540F781A8BF", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-plus-outline", - "codepoint": "F1AE3", - "aliases": [ - "timer-add-outline", - "stopwatch-plus-outline", - "stopwatch-add-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "131A1665-D2D6-4C5B-B30B-DBDD097EA773", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-refresh", - "codepoint": "F1AE4", - "aliases": [ - "stopwatch-refresh" - ], - "styles": [ - "refresh" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "406B38E4-1E8C-4493-A1DF-804BB1FCD620", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-refresh-outline", - "codepoint": "F1AE5", - "aliases": [ - "stopwatch-refresh-outline" - ], - "styles": [ - "outline", - "refresh" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "558B0DE6-0A7D-4BC6-ACAD-EB52A8B58A86", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-remove", - "codepoint": "F1AE6", - "aliases": [ - "stopwatch-remove" - ], - "styles": [ - "remove" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "B4E196AF-73B9-4693-806F-1267ECA46EB6", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-remove-outline", - "codepoint": "F1AE7", - "aliases": [ - "stopwatch-remove-outline" - ], - "styles": [ - "outline", - "remove" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "64EFBA89-F8CB-4193-8656-A83CCBC66A76", - "baseIconId": "64EFBA89-F8CB-4193-8656-A83CCBC66A76", - "name": "timer-sand", - "codepoint": "F051F", - "aliases": [ - "hourglass" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Austin Andrews" - }, - { - "id": "A3EC03DF-2DAD-4B48-AFA8-681324AE2460", - "baseIconId": "64EFBA89-F8CB-4193-8656-A83CCBC66A76", - "name": "timer-sand-complete", - "codepoint": "F199F", - "aliases": [ - "hourglass-complete" - ], - "styles": [ - "variant" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Jeff Anders" - }, - { - "id": "DD31FFF2-A93B-41F5-BA6C-1732E8A8DEFF", - "baseIconId": "64EFBA89-F8CB-4193-8656-A83CCBC66A76", - "name": "timer-sand-empty", - "codepoint": "F06AD", - "aliases": [ - "hourglass-empty" - ], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "E603301B-7DF4-43C2-9035-0DDB2A50B88E", - "baseIconId": "64EFBA89-F8CB-4193-8656-A83CCBC66A76", - "name": "timer-sand-full", - "codepoint": "F078C", - "aliases": [ - "hourglass-full" - ], - "styles": [ - "variant" - ], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "24C73172-9253-4C99-B214-B1C523115D79", - "baseIconId": "64EFBA89-F8CB-4193-8656-A83CCBC66A76", - "name": "timer-sand-paused", - "codepoint": "F19A0", - "aliases": [ - "hourglass-paused" - ], - "styles": [ - "variant" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Jeff Anders" - }, - { - "id": "F8FF1136-69B0-4DCA-9BC6-092AE2CE23F2", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-settings", - "codepoint": "F1923", - "aliases": [], - "styles": [ - "settings" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "33E186AB-8B36-40C1-BC72-D9614A115B74", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-settings-outline", - "codepoint": "F1924", - "aliases": [], - "styles": [ - "outline", - "settings" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "EEC275B0-442C-4C00-A1AE-662EF4477A13", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-star", - "codepoint": "F1AE8", - "aliases": [ - "timer-favorite", - "stopwatch-star", - "stopwatch-favorite" - ], - "styles": [ - "star" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "8C07F7EA-8924-43A8-91E2-55A7D0DAE7AF", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-star-outline", - "codepoint": "F1AE9", - "aliases": [ - "timer-favorite-outline", - "stopwatch-star-outline", - "stopwatch-favorite-outline" - ], - "styles": [ - "outline", - "star" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "8D48AE22-A80B-4DFA-9F37-01C48E8D42DD", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-stop", - "codepoint": "F1AEA", - "aliases": [ - "stopwatch-stop" - ], - "styles": [], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "6692667B-8BD3-4234-92CA-F51D796CF521", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-stop-outline", - "codepoint": "F1AEB", - "aliases": [ - "stopwatch-stop-outline" - ], - "styles": [ - "outline" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "38A07095-B521-4D7C-8021-FD6CEAD49F10", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-sync", - "codepoint": "F1AEC", - "aliases": [ - "stopwatch-sync" - ], - "styles": [ - "sync" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "D5BE4AB4-3E09-4D9C-9329-C32E34796677", - "baseIconId": "7F6AFDDE-8C90-44FB-A000-D5F6EF93A943", - "name": "timer-sync-outline", - "codepoint": "F1AED", - "aliases": [ - "stopwatch-sync-outline" - ], - "styles": [ - "outline", - "sync" - ], - "version": "6.8.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Colton Wiscombe" - }, - { - "id": "F06ED6E0-0EB1-4B39-8E85-1A82A273F473", - "baseIconId": "F06ED6E0-0EB1-4B39-8E85-1A82A273F473", - "name": "timetable", - "codepoint": "F0520", - "aliases": [], - "styles": [ - "clock" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Austin Andrews" - }, - { - "id": "5F99B55B-0B1C-4FD7-B9F6-DD35A16DBCF1", - "baseIconId": "5F99B55B-0B1C-4FD7-B9F6-DD35A16DBCF1", - "name": "tire", - "codepoint": "F1896", - "aliases": [ - "tyre", - "wheel" - ], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Automotive", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5042FF4E-78E5-43D5-B992-1AAEAE51AB25", - "baseIconId": "5042FF4E-78E5-43D5-B992-1AAEAE51AB25", - "name": "toaster", - "codepoint": "F1063", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "97660B13-F700-455E-9C04-CACAC4450118", - "baseIconId": "5042FF4E-78E5-43D5-B992-1AAEAE51AB25", - "name": "toaster-off", - "codepoint": "F11B7", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "BA8D8327-7F94-4BB9-8199-9C012BAAF549", - "baseIconId": "62F69C7A-4CBA-444A-8BFE-E5B7A891CF5D", - "name": "toaster-oven", - "codepoint": "F0CD3", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Home Automation", - "Food \/ Drink" - ], - "author": "GreenTurtwig" - }, - { - "id": "D1AD4F4E-3CFE-4F51-932D-D3942A26C418", - "baseIconId": "D1AD4F4E-3CFE-4F51-932D-D3942A26C418", - "name": "toggle-switch", - "codepoint": "F0521", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "A54ADA14-0917-432E-9288-3364FBAEBCE2", - "baseIconId": "D1AD4F4E-3CFE-4F51-932D-D3942A26C418", - "name": "toggle-switch-off", - "codepoint": "F0522", - "aliases": [], - "styles": [ - "off" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "1DCEDC73-941F-4412-B0B7-B7042888F91A", - "baseIconId": "D1AD4F4E-3CFE-4F51-932D-D3942A26C418", - "name": "toggle-switch-off-outline", - "codepoint": "F0A19", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "2645C66C-41C1-4536-9BB5-4530B8C8E89B", - "baseIconId": "D1AD4F4E-3CFE-4F51-932D-D3942A26C418", - "name": "toggle-switch-outline", - "codepoint": "F0A1A", - "aliases": [], - "styles": [ - "outline" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "7B449AE2-593A-435F-A5C2-FEA8E1BE0FBB", - "baseIconId": "D1AD4F4E-3CFE-4F51-932D-D3942A26C418", - "name": "toggle-switch-variant", - "codepoint": "F1A25", - "aliases": [ - "light-switch-on" - ], - "styles": [], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Matthias de Baat" - }, - { - "id": "E22551ED-0CEC-46B4-9CAE-FF9CC5C11CF2", - "baseIconId": "D1AD4F4E-3CFE-4F51-932D-D3942A26C418", - "name": "toggle-switch-variant-off", - "codepoint": "F1A26", - "aliases": [ - "light-switch-off", - "rocker-switch-off" - ], - "styles": [], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Matthias de Baat" - }, - { - "id": "5A1815F9-FC9E-4420-B723-AF4B324262A4", - "baseIconId": "5A1815F9-FC9E-4420-B723-AF4B324262A4", - "name": "toilet", - "codepoint": "F09AB", - "aliases": [ - "bathroom", - "lavatory", - "bidet" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Augustin Ursu" - }, - { - "id": "79D1B3B8-FC3E-4978-AA8E-C78A1360B880", - "baseIconId": "79D1B3B8-FC3E-4978-AA8E-C78A1360B880", - "name": "toolbox", - "codepoint": "F09AC", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Google" - }, - { - "id": "F016813A-4390-482A-8FFF-D081FDD21362", - "baseIconId": "79D1B3B8-FC3E-4978-AA8E-C78A1360B880", - "name": "toolbox-outline", - "codepoint": "F09AD", - "aliases": [ - "service-toolbox" - ], - "styles": [ - "outline" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Google" - }, - { - "id": "CF5ABC25-55E6-4B19-B338-85F45926DEE1", - "baseIconId": "CF5ABC25-55E6-4B19-B338-85F45926DEE1", - "name": "tools", - "codepoint": "F1064", - "aliases": [ - "wrench", - "screwdriver" - ], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Michael Richins" - }, - { - "id": "D6AD70EE-33F4-4C3A-8ED1-3CD3236222F8", - "baseIconId": "D6AD70EE-33F4-4C3A-8ED1-3CD3236222F8", - "name": "tooltip", - "codepoint": "F0523", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Tooltip" - ], - "author": "Austin Andrews" - }, - { - "id": "CA087C29-F27F-4DBE-8617-1369C18DF51D", - "baseIconId": "D6AD70EE-33F4-4C3A-8ED1-3CD3236222F8", - "name": "tooltip-account", - "codepoint": "F000C", - "aliases": [ - "tooltip-user", - "tooltip-person", - "account-location" - ], - "styles": [ - "account" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Account \/ User", - "Tooltip" - ], - "author": "Google" - }, - { - "id": "F2CBC47D-4716-44EB-81E0-71915241860E", - "baseIconId": "D6AD70EE-33F4-4C3A-8ED1-3CD3236222F8", - "name": "tooltip-cellphone", - "codepoint": "F183B", - "aliases": [ - "cellphone-location", - "cellphone-gps", - "find-my-phone" - ], - "styles": [ - "variant" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Tooltip" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B2FDABD3-4E66-461C-8DC0-10D9A18441B8", - "baseIconId": "D6AD70EE-33F4-4C3A-8ED1-3CD3236222F8", - "name": "tooltip-check", - "codepoint": "F155C", - "aliases": [], - "styles": [ - "check" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Tooltip" - ], - "author": "Colton Wiscombe" - }, - { - "id": "255D95B4-1A63-408F-9CED-17AE2D05F38B", - "baseIconId": "D6AD70EE-33F4-4C3A-8ED1-3CD3236222F8", - "name": "tooltip-check-outline", - "codepoint": "F155D", - "aliases": [], - "styles": [ - "check", - "outline" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Tooltip" - ], - "author": "Colton Wiscombe" - }, - { - "id": "C1684CDD-9C71-4A10-B3BA-5B26706B3B28", - "baseIconId": "D6AD70EE-33F4-4C3A-8ED1-3CD3236222F8", - "name": "tooltip-edit", - "codepoint": "F0524", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Tooltip", - "Edit \/ Modify" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B9D8D642-EFDD-4AFF-B1CD-86AB7E914347", - "baseIconId": "D6AD70EE-33F4-4C3A-8ED1-3CD3236222F8", - "name": "tooltip-edit-outline", - "codepoint": "F12C5", - "aliases": [], - "styles": [], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Edit \/ Modify", - "Tooltip" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1DF33E50-EBEA-4A62-8455-84C28271C8D2", - "baseIconId": "D6AD70EE-33F4-4C3A-8ED1-3CD3236222F8", - "name": "tooltip-image", - "codepoint": "F0525", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Tooltip" - ], - "author": "Austin Andrews" - }, - { - "id": "9E49D099-C7CD-42A3-BFA1-8AC8966898B5", - "baseIconId": "D6AD70EE-33F4-4C3A-8ED1-3CD3236222F8", - "name": "tooltip-image-outline", - "codepoint": "F0BD5", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Tooltip" - ], - "author": "Austin Andrews" - }, - { - "id": "A8D3907B-9528-4EB0-AB75-EA6013F042F1", - "baseIconId": "D6AD70EE-33F4-4C3A-8ED1-3CD3236222F8", - "name": "tooltip-minus", - "codepoint": "F155E", - "aliases": [], - "styles": [ - "minus" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Tooltip" - ], - "author": "Colton Wiscombe" - }, - { - "id": "674242D7-81B2-4C9E-BC60-3F96AD379C52", - "baseIconId": "D6AD70EE-33F4-4C3A-8ED1-3CD3236222F8", - "name": "tooltip-minus-outline", - "codepoint": "F155F", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Tooltip" - ], - "author": "Colton Wiscombe" - }, - { - "id": "C14A3C70-357F-4AE8-963C-B45ED543A4DB", - "baseIconId": "D6AD70EE-33F4-4C3A-8ED1-3CD3236222F8", - "name": "tooltip-outline", - "codepoint": "F0526", - "aliases": [], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Tooltip" - ], - "author": "Austin Andrews" - }, - { - "id": "E1ED044C-BD73-4844-A33D-7ED9A1D232F5", - "baseIconId": "D6AD70EE-33F4-4C3A-8ED1-3CD3236222F8", - "name": "tooltip-plus", - "codepoint": "F0BD6", - "aliases": [ - "tooltip-add" - ], - "styles": [ - "plus" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Tooltip" - ], - "author": "Austin Andrews" - }, - { - "id": "CAA5F3A3-2044-48AC-94CA-04899F9459ED", - "baseIconId": "D6AD70EE-33F4-4C3A-8ED1-3CD3236222F8", - "name": "tooltip-plus-outline", - "codepoint": "F0527", - "aliases": [ - "tooltip-outline-plus", - "tooltip-add-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Tooltip" - ], - "author": "Austin Andrews" - }, - { - "id": "99CABA6D-9506-4EC7-8721-8CE38B157E75", - "baseIconId": "D6AD70EE-33F4-4C3A-8ED1-3CD3236222F8", - "name": "tooltip-question", - "codepoint": "F1BBA", - "aliases": [ - "tooltip-help" - ], - "styles": [ - "question" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Tooltip" - ], - "author": "Jeff Anders" - }, - { - "id": "CD2A99C9-F223-42EB-BD90-5786EACF9A52", - "baseIconId": "D6AD70EE-33F4-4C3A-8ED1-3CD3236222F8", - "name": "tooltip-question-outline", - "codepoint": "F1BBB", - "aliases": [ - "tooltip-help-outline" - ], - "styles": [ - "outline", - "question" - ], - "version": "7.1.96", - "deprecated": false, - "tags": [ - "Tooltip" - ], - "author": "Jeff Anders" - }, - { - "id": "A54A45EF-9C4B-4AFB-8734-610B14D521A5", - "baseIconId": "D6AD70EE-33F4-4C3A-8ED1-3CD3236222F8", - "name": "tooltip-remove", - "codepoint": "F1560", - "aliases": [], - "styles": [ - "remove" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Tooltip" - ], - "author": "Colton Wiscombe" - }, - { - "id": "192D99F7-B04B-476A-B638-70F27A7FF1E6", - "baseIconId": "D6AD70EE-33F4-4C3A-8ED1-3CD3236222F8", - "name": "tooltip-remove-outline", - "codepoint": "F1561", - "aliases": [], - "styles": [ - "outline", - "remove" - ], - "version": "5.5.55", - "deprecated": false, - "tags": [ - "Tooltip" - ], - "author": "Colton Wiscombe" - }, - { - "id": "B608ACE2-279D-4C66-9169-32BD86BDF5F3", - "baseIconId": "D6AD70EE-33F4-4C3A-8ED1-3CD3236222F8", - "name": "tooltip-text", - "codepoint": "F0528", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Tooltip" - ], - "author": "Austin Andrews" - }, - { - "id": "B0E2F01D-A8A8-4945-A0C2-FB1866C2C1F2", - "baseIconId": "D6AD70EE-33F4-4C3A-8ED1-3CD3236222F8", - "name": "tooltip-text-outline", - "codepoint": "F0BD7", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Tooltip" - ], - "author": "Austin Andrews" - }, - { - "id": "486D33E1-B181-40D4-B088-BBB49221B91F", - "baseIconId": "486D33E1-B181-40D4-B088-BBB49221B91F", - "name": "tooth", - "codepoint": "F08C3", - "aliases": [ - "dentist" - ], - "styles": [], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Christopher Schreiner" - }, - { - "id": "BFD05B50-CF42-49C4-B76D-447DB0AEFEEE", - "baseIconId": "486D33E1-B181-40D4-B088-BBB49221B91F", - "name": "tooth-outline", - "codepoint": "F0529", - "aliases": [], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Christopher Schreiner" - }, - { - "id": "1BA32EF0-94A2-4F7E-BD93-5A9102143F8E", - "baseIconId": "1BA32EF0-94A2-4F7E-BD93-5A9102143F8E", - "name": "toothbrush", - "codepoint": "F1129", - "aliases": [ - "dentist", - "oral-hygiene" - ], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Michael Irigoyen" - }, - { - "id": "6CC31B35-04D6-4883-A0CF-3CD35E81AB98", - "baseIconId": "1BA32EF0-94A2-4F7E-BD93-5A9102143F8E", - "name": "toothbrush-electric", - "codepoint": "F112C", - "aliases": [ - "dentist", - "oral-hygiene" - ], - "styles": [ - "variant" - ], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Simran" - }, - { - "id": "E06A1B1A-ACE7-43AD-BC75-5C3191D0AB1D", - "baseIconId": "1BA32EF0-94A2-4F7E-BD93-5A9102143F8E", - "name": "toothbrush-paste", - "codepoint": "F112A", - "aliases": [ - "dentist", - "oral-hygiene" - ], - "styles": [ - "variant" - ], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Simran" - }, - { - "id": "5E37234B-E874-4FB7-AC74-BD836129C433", - "baseIconId": "5E37234B-E874-4FB7-AC74-BD836129C433", - "name": "torch", - "codepoint": "F1606", - "aliases": [ - "olympics" - ], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E66ECEE5-0382-4406-B0AB-CFE819AE7684", - "baseIconId": "E66ECEE5-0382-4406-B0AB-CFE819AE7684", - "name": "tortoise", - "codepoint": "F0D3B", - "aliases": [ - "turtle", - "reptile" - ], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Nick" - }, - { - "id": "207A1D36-F4A1-4ACB-B588-7BEA51C2E285", - "baseIconId": "207A1D36-F4A1-4ACB-B588-7BEA51C2E285", - "name": "toslink", - "codepoint": "F12B8", - "aliases": [ - "optical-audio" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Audio" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1502E0E9-3E1B-43A4-A23A-B7A48BB68FDB", - "baseIconId": "1502E0E9-3E1B-43A4-A23A-B7A48BB68FDB", - "name": "touch-text-outline", - "codepoint": "F1C60", - "aliases": [], - "styles": [], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Jackie Yang" - }, - { - "id": "E2623132-7507-4FFD-8382-E192DDC62D17", - "baseIconId": "E2623132-7507-4FFD-8382-E192DDC62D17", - "name": "tournament", - "codepoint": "F09AE", - "aliases": [ - "bracket" - ], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Gaming \/ RPG", - "Sport" - ], - "author": "GreenTurtwig" - }, - { - "id": "BC8926AA-02C6-4755-B5A8-D3BD29C2CDE0", - "baseIconId": "CB49A868-3317-4445-BFED-13CB6533000E", - "name": "tow-truck", - "codepoint": "F083C", - "aliases": [ - "auto-towing", - "truck" - ], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Google" - }, - { - "id": "70D21CFE-DC3C-4615-9524-4CD2F2FDC44E", - "baseIconId": "70D21CFE-DC3C-4615-9524-4CD2F2FDC44E", - "name": "tower-beach", - "codepoint": "F0681", - "aliases": [], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [], - "author": "Thomas Hunsaker" - }, - { - "id": "11E0C03B-7522-4247-B0D3-F04AE1ECB166", - "baseIconId": "11E0C03B-7522-4247-B0D3-F04AE1ECB166", - "name": "tower-fire", - "codepoint": "F0682", - "aliases": [], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [], - "author": "Thomas Hunsaker" - }, - { - "id": "C0E839BC-5537-4219-8040-24466FB2F311", - "baseIconId": "C0E839BC-5537-4219-8040-24466FB2F311", - "name": "town-hall", - "codepoint": "F1875", - "aliases": [ - "school" - ], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Places" - ], - "author": "nilsfast" - }, - { - "id": "DDCE3E75-1E43-45A9-8D94-E24CFD8284B0", - "baseIconId": "DDCE3E75-1E43-45A9-8D94-E24CFD8284B0", - "name": "toy-brick", - "codepoint": "F1288", - "aliases": [ - "lego", - "plugin", - "extension" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "602DF6D1-21C6-4540-960D-79D7C37AECF9", - "baseIconId": "DDCE3E75-1E43-45A9-8D94-E24CFD8284B0", - "name": "toy-brick-marker", - "codepoint": "F1289", - "aliases": [ - "lego", - "plugin", - "extension", - "lego-location", - "toy-brick-location" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "Michael Richins" - }, - { - "id": "6EE7FD45-3389-4007-A362-0EDB4B9DF9BD", - "baseIconId": "DDCE3E75-1E43-45A9-8D94-E24CFD8284B0", - "name": "toy-brick-marker-outline", - "codepoint": "F128A", - "aliases": [ - "extension-outline", - "lego-location-outline", - "toy-brick-location-outline", - "plugin-outline", - "lego-outline" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "Michael Richins" - }, - { - "id": "03BB26E3-61C3-4FCF-9532-056FC8DC1E4D", - "baseIconId": "DDCE3E75-1E43-45A9-8D94-E24CFD8284B0", - "name": "toy-brick-minus", - "codepoint": "F128B", - "aliases": [ - "lego", - "plugin", - "extension" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "BA71CE05-DEA6-4638-AF5C-2194D6FB946E", - "baseIconId": "DDCE3E75-1E43-45A9-8D94-E24CFD8284B0", - "name": "toy-brick-minus-outline", - "codepoint": "F128C", - "aliases": [ - "lego", - "plugin", - "extension" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "E178F91C-A54C-41B1-892F-F17A96283D14", - "baseIconId": "DDCE3E75-1E43-45A9-8D94-E24CFD8284B0", - "name": "toy-brick-outline", - "codepoint": "F128D", - "aliases": [ - "lego", - "plugin", - "extension" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "9426C325-5C35-40D8-9CA4-DA230CCC2736", - "baseIconId": "DDCE3E75-1E43-45A9-8D94-E24CFD8284B0", - "name": "toy-brick-plus", - "codepoint": "F128E", - "aliases": [ - "lego", - "plugin", - "extension" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "A710B239-7C1A-4BDE-B337-AFEF3CD9E067", - "baseIconId": "DDCE3E75-1E43-45A9-8D94-E24CFD8284B0", - "name": "toy-brick-plus-outline", - "codepoint": "F128F", - "aliases": [ - "lego", - "plugin", - "extension" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "F5773738-AE3C-423C-8B64-6C951B9A4B3A", - "baseIconId": "DDCE3E75-1E43-45A9-8D94-E24CFD8284B0", - "name": "toy-brick-remove", - "codepoint": "F1290", - "aliases": [ - "lego", - "plugin", - "extension" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "497261EB-0B21-4829-8659-1B1EB39043D1", - "baseIconId": "DDCE3E75-1E43-45A9-8D94-E24CFD8284B0", - "name": "toy-brick-remove-outline", - "codepoint": "F1291", - "aliases": [ - "lego", - "plugin", - "extension" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "AEED3DA4-5EAF-4630-BA5B-6E4675E29FA1", - "baseIconId": "DDCE3E75-1E43-45A9-8D94-E24CFD8284B0", - "name": "toy-brick-search", - "codepoint": "F1292", - "aliases": [ - "lego", - "plugin", - "extension" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "86074918-B854-4C06-AAD5-C02EA910A6A2", - "baseIconId": "DDCE3E75-1E43-45A9-8D94-E24CFD8284B0", - "name": "toy-brick-search-outline", - "codepoint": "F1293", - "aliases": [ - "lego", - "plugin", - "extension" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "6BF0AEDF-F822-460F-8CEB-AEF0D83815F5", - "baseIconId": "6BF0AEDF-F822-460F-8CEB-AEF0D83815F5", - "name": "track-light", - "codepoint": "F0914", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "04986CC2-FE3B-4997-935E-EEE86DEA657A", - "baseIconId": "6BF0AEDF-F822-460F-8CEB-AEF0D83815F5", - "name": "track-light-off", - "codepoint": "F1B01", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "C06AFD8C-C769-41B1-8E5C-355CE5DBEE8E", - "baseIconId": "C06AFD8C-C769-41B1-8E5C-355CE5DBEE8E", - "name": "trackpad", - "codepoint": "F07F8", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "92AB470E-CDB3-43F8-A299-D32C94043D83", - "baseIconId": "C06AFD8C-C769-41B1-8E5C-355CE5DBEE8E", - "name": "trackpad-lock", - "codepoint": "F0933", - "aliases": [], - "styles": [ - "variant" - ], - "version": "2.3.54", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Simran" - }, - { - "id": "D5993895-5ECF-4B4A-8C84-7E3D9C1F6ADB", - "baseIconId": "D5993895-5ECF-4B4A-8C84-7E3D9C1F6ADB", - "name": "tractor", - "codepoint": "F0892", - "aliases": [ - "farm" - ], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Agriculture", - "Transportation + Road" - ], - "author": "GreenTurtwig" - }, - { - "id": "C80B9924-A19D-440E-8543-E1E232FAA90B", - "baseIconId": "D5993895-5ECF-4B4A-8C84-7E3D9C1F6ADB", - "name": "tractor-variant", - "codepoint": "F14C4", - "aliases": [ - "agriculture" - ], - "styles": [ - "variant" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Agriculture" - ], - "author": "Google" - }, - { - "id": "E1849947-175A-4347-BFC7-D8C7811F0B2B", - "baseIconId": "E1849947-175A-4347-BFC7-D8C7811F0B2B", - "name": "trademark", - "codepoint": "F0A78", - "aliases": [ - "tm" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "BA597840-6D3A-4D89-B8DC-63C5B2DA6638", - "baseIconId": "BA597840-6D3A-4D89-B8DC-63C5B2DA6638", - "name": "traffic-cone", - "codepoint": "F137C", - "aliases": [], - "styles": [], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Michael Richins" - }, - { - "id": "073B4489-5787-432C-9D10-50B270182D34", - "baseIconId": "073B4489-5787-432C-9D10-50B270182D34", - "name": "traffic-light", - "codepoint": "F052B", - "aliases": [ - "traffic-signal", - "stop-light" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Google" - }, - { - "id": "912B0C1C-8E8A-4AA4-9166-C1BCCC85BDF9", - "baseIconId": "073B4489-5787-432C-9D10-50B270182D34", - "name": "traffic-light-outline", - "codepoint": "F182A", - "aliases": [ - "traffic-signal-outline", - "stop-light-outline" - ], - "styles": [ - "outline" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Google" - }, - { - "id": "B6E1232A-3A43-4200-BE34-1BC436B34BF1", - "baseIconId": "B6E1232A-3A43-4200-BE34-1BC436B34BF1", - "name": "train", - "codepoint": "F052C", - "aliases": [ - "directions-railway", - "locomotive", - "railroad" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Navigation", - "Transportation + Other" - ], - "author": "Google" - }, - { - "id": "20588836-2EC7-467D-9E72-15D3C4FE7C93", - "baseIconId": "B6E1232A-3A43-4200-BE34-1BC436B34BF1", - "name": "train-car", - "codepoint": "F0BD8", - "aliases": [ - "commute", - "transportation", - "travel" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Google" - }, - { - "id": "BDD26393-231D-4F57-ACEE-302525377A8D", - "baseIconId": "BDD26393-231D-4F57-ACEE-302525377A8D", - "name": "train-car-autorack", - "codepoint": "F1B2D", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Colton Wiscombe" - }, - { - "id": "8DF65675-7278-40D7-BA32-B7A3251051F4", - "baseIconId": "8DF65675-7278-40D7-BA32-B7A3251051F4", - "name": "train-car-box", - "codepoint": "F1B2E", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Colton Wiscombe" - }, - { - "id": "C419A958-3875-46FC-BED3-07C409C4FC82", - "baseIconId": "C419A958-3875-46FC-BED3-07C409C4FC82", - "name": "train-car-box-full", - "codepoint": "F1B2F", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Colton Wiscombe" - }, - { - "id": "3891AAAF-6681-44D3-955A-B0099F136716", - "baseIconId": "3891AAAF-6681-44D3-955A-B0099F136716", - "name": "train-car-box-open", - "codepoint": "F1B30", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Colton Wiscombe" - }, - { - "id": "F358F596-31EA-4304-A06E-1AAB158DA527", - "baseIconId": "F358F596-31EA-4304-A06E-1AAB158DA527", - "name": "train-car-caboose", - "codepoint": "F1B31", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Colton Wiscombe" - }, - { - "id": "D8D0E296-67AA-4BA1-9268-46D29BF7113E", - "baseIconId": "D8D0E296-67AA-4BA1-9268-46D29BF7113E", - "name": "train-car-centerbeam", - "codepoint": "F1B32", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Colton Wiscombe" - }, - { - "id": "58F04478-F917-48D8-974E-C02CCA88085A", - "baseIconId": "58F04478-F917-48D8-974E-C02CCA88085A", - "name": "train-car-centerbeam-full", - "codepoint": "F1B33", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Colton Wiscombe" - }, - { - "id": "6EC41725-E54E-405F-AFCC-6CB7B1D1E529", - "baseIconId": "6EC41725-E54E-405F-AFCC-6CB7B1D1E529", - "name": "train-car-container", - "codepoint": "F1B34", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Colton Wiscombe" - }, - { - "id": "10D3216B-36F7-4151-B875-53136AE56E27", - "baseIconId": "10D3216B-36F7-4151-B875-53136AE56E27", - "name": "train-car-flatbed", - "codepoint": "F1B35", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Colton Wiscombe" - }, - { - "id": "A8C14CC3-D012-4822-8D89-A53EBAFA503E", - "baseIconId": "A8C14CC3-D012-4822-8D89-A53EBAFA503E", - "name": "train-car-flatbed-car", - "codepoint": "F1B36", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Colton Wiscombe" - }, - { - "id": "D2CF0BD5-C3D2-47E9-B1D4-C90F3D22050D", - "baseIconId": "D2CF0BD5-C3D2-47E9-B1D4-C90F3D22050D", - "name": "train-car-flatbed-tank", - "codepoint": "F1B37", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Colton Wiscombe" - }, - { - "id": "89CDC858-78E9-4358-8FC7-19E3CAA0F2F3", - "baseIconId": "89CDC858-78E9-4358-8FC7-19E3CAA0F2F3", - "name": "train-car-gondola", - "codepoint": "F1B38", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Colton Wiscombe" - }, - { - "id": "5B2EA1B8-10D5-4770-812F-3CC3ADF33B59", - "baseIconId": "5B2EA1B8-10D5-4770-812F-3CC3ADF33B59", - "name": "train-car-gondola-full", - "codepoint": "F1B39", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Colton Wiscombe" - }, - { - "id": "BADFBFC4-21C7-4BDA-B6A7-16C83B32C37C", - "baseIconId": "BADFBFC4-21C7-4BDA-B6A7-16C83B32C37C", - "name": "train-car-hopper", - "codepoint": "F1B3A", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Colton Wiscombe" - }, - { - "id": "154D64C8-79CC-4389-87B0-BDC5941D3B47", - "baseIconId": "154D64C8-79CC-4389-87B0-BDC5941D3B47", - "name": "train-car-hopper-covered", - "codepoint": "F1B3B", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Colton Wiscombe" - }, - { - "id": "76561F30-B98D-49D1-9369-9B95DF14D863", - "baseIconId": "76561F30-B98D-49D1-9369-9B95DF14D863", - "name": "train-car-hopper-full", - "codepoint": "F1B3C", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Colton Wiscombe" - }, - { - "id": "E4050AC7-118E-45F6-8A87-571F9C52A02B", - "baseIconId": "E4050AC7-118E-45F6-8A87-571F9C52A02B", - "name": "train-car-intermodal", - "codepoint": "F1B3D", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Colton Wiscombe" - }, - { - "id": "04821E67-5037-46E7-8F5E-740C7EBFAC1D", - "baseIconId": "04821E67-5037-46E7-8F5E-740C7EBFAC1D", - "name": "train-car-passenger", - "codepoint": "F1733", - "aliases": [], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Colton Wiscombe" - }, - { - "id": "9F9E31CB-361B-40D6-8754-157401124ED2", - "baseIconId": "04821E67-5037-46E7-8F5E-740C7EBFAC1D", - "name": "train-car-passenger-door", - "codepoint": "F1734", - "aliases": [], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Colton Wiscombe" - }, - { - "id": "042CE4C4-087F-49EC-9F67-A5467318C068", - "baseIconId": "04821E67-5037-46E7-8F5E-740C7EBFAC1D", - "name": "train-car-passenger-door-open", - "codepoint": "F1735", - "aliases": [], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Colton Wiscombe" - }, - { - "id": "1A9FFFAE-5581-4E22-B87C-3798A9E97FD1", - "baseIconId": "04821E67-5037-46E7-8F5E-740C7EBFAC1D", - "name": "train-car-passenger-variant", - "codepoint": "F1736", - "aliases": [], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Colton Wiscombe" - }, - { - "id": "58D39303-215B-4530-AA97-74BCC0AE450B", - "baseIconId": "58D39303-215B-4530-AA97-74BCC0AE450B", - "name": "train-car-tank", - "codepoint": "F1B3E", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Colton Wiscombe" - }, - { - "id": "C0A4E604-3829-4605-A7BC-CA0BFF138B18", - "baseIconId": "B6E1232A-3A43-4200-BE34-1BC436B34BF1", - "name": "train-variant", - "codepoint": "F08C4", - "aliases": [ - "locomotive-variant", - "railroad-variant" - ], - "styles": [ - "variant" - ], - "version": "2.2.43", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Google" - }, - { - "id": "13AE3C37-5323-4FE6-86F7-3B30B635969F", - "baseIconId": "13AE3C37-5323-4FE6-86F7-3B30B635969F", - "name": "tram", - "codepoint": "F052D", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Navigation", - "Transportation + Other" - ], - "author": "Google" - }, - { - "id": "BEB0D58A-A99B-40FE-9E6C-C81218E683F8", - "baseIconId": "13AE3C37-5323-4FE6-86F7-3B30B635969F", - "name": "tram-side", - "codepoint": "F0FE7", - "aliases": [], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Google" - }, - { - "id": "6DD88A18-582D-400D-A5AB-12996F26A05D", - "baseIconId": "6DD88A18-582D-400D-A5AB-12996F26A05D", - "name": "transcribe", - "codepoint": "F052E", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "2D2FB32D-B253-4D3E-BA04-7AD5D5FE2C2E", - "baseIconId": "6DD88A18-582D-400D-A5AB-12996F26A05D", - "name": "transcribe-close", - "codepoint": "F052F", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "E9B887E6-76B3-45D5-8F69-43982EE59423", - "baseIconId": "E9B887E6-76B3-45D5-8F69-43982EE59423", - "name": "transfer", - "codepoint": "F1065", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "D4CB36CD-4F30-45BE-940D-CC2AFFCA078A", - "baseIconId": "3821BF79-5857-47BE-84E3-A100B7247535", - "name": "transfer-down", - "codepoint": "F0DA1", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Richins" - }, - { - "id": "03FA1C8F-8808-4293-A12A-7D9B7F8890D4", - "baseIconId": "C21995A9-094F-4EA8-9127-BA0506B240A6", - "name": "transfer-left", - "codepoint": "F0DA2", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Richins" - }, - { - "id": "D2895587-8DBA-4EDC-8624-3A32C20AB638", - "baseIconId": "05F25B05-A6D6-4863-8B21-6969E10329CF", - "name": "transfer-right", - "codepoint": "F0530", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Austin Andrews" - }, - { - "id": "A7928BA3-AC13-42A2-9AC2-5AFBD60E3243", - "baseIconId": "3AF49B97-A909-4961-9FBB-82C60D7CC773", - "name": "transfer-up", - "codepoint": "F0DA3", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "Michael Richins" - }, - { - "id": "370C931A-E40F-4950-B9CE-87D337720400", - "baseIconId": "370C931A-E40F-4950-B9CE-87D337720400", - "name": "transit-connection", - "codepoint": "F0D3C", - "aliases": [], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Transportation + Other", - "Navigation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5F428B0A-E91D-48E5-8896-0CE072C919E4", - "baseIconId": "370C931A-E40F-4950-B9CE-87D337720400", - "name": "transit-connection-horizontal", - "codepoint": "F1546", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Jeff Anders" - }, - { - "id": "9E27C6FE-B44C-4A92-BDD7-A546A4F83E9D", - "baseIconId": "370C931A-E40F-4950-B9CE-87D337720400", - "name": "transit-connection-variant", - "codepoint": "F0D3D", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Transportation + Other", - "Navigation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "247F5D41-FA03-4D63-97AF-B39A4D4A7BFC", - "baseIconId": "370C931A-E40F-4950-B9CE-87D337720400", - "name": "transit-detour", - "codepoint": "F0F8B", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Transportation + Other", - "Navigation" - ], - "author": "Myron Netterlund" - }, - { - "id": "A52E6E56-7AE7-45E3-B854-A2DF41F3141B", - "baseIconId": "370C931A-E40F-4950-B9CE-87D337720400", - "name": "transit-skip", - "codepoint": "F1515", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Jeff Anders" - }, - { - "id": "CE6451FA-EF46-40B4-B87B-BCF93DDE6E54", - "baseIconId": "DA42DA16-21E0-4A08-89E4-F634EBBCF85A", - "name": "transit-transfer", - "codepoint": "F06AE", - "aliases": [ - "transfer-within-a-station" - ], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Transportation + Other", - "Navigation" - ], - "author": "Google" - }, - { - "id": "2650CA0F-8423-4DE2-A821-9D7D1E5547C0", - "baseIconId": "2650CA0F-8423-4DE2-A821-9D7D1E5547C0", - "name": "transition", - "codepoint": "F0915", - "aliases": [ - "animation", - "motion", - "translate" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "D254EE82-37CA-4897-BE12-6FD0ED708E38", - "baseIconId": "2650CA0F-8423-4DE2-A821-9D7D1E5547C0", - "name": "transition-masked", - "codepoint": "F0916", - "aliases": [ - "masked-transitions" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "4486DD26-4110-457E-BBD7-B5D19DF72E4E", - "baseIconId": "4486DD26-4110-457E-BBD7-B5D19DF72E4E", - "name": "translate", - "codepoint": "F05CA", - "aliases": [ - "language" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "B65945C4-51D4-464A-985F-E6F9995BE40D", - "baseIconId": "4486DD26-4110-457E-BBD7-B5D19DF72E4E", - "name": "translate-off", - "codepoint": "F0E06", - "aliases": [], - "styles": [ - "off" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Joshua Solomon" - }, - { - "id": "F2BD1021-2575-4F57-A18A-F746EE262E15", - "baseIconId": "4486DD26-4110-457E-BBD7-B5D19DF72E4E", - "name": "translate-variant", - "codepoint": "F1B99", - "aliases": [ - "spoken-language" - ], - "styles": [ - "variant" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DBA97655-B2ED-4FA6-95E0-02E7273549C9", - "baseIconId": "DBA97655-B2ED-4FA6-95E0-02E7273549C9", - "name": "transmission-tower", - "codepoint": "F0D3E", - "aliases": [ - "pylon", - "powerline", - "electricity", - "energy", - "power", - "grid" - ], - "styles": [], - "version": "3.3.92", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F1AC7C0E-CA03-4ED0-AFE9-CE0CEB3C9806", - "baseIconId": "DBA97655-B2ED-4FA6-95E0-02E7273549C9", - "name": "transmission-tower-export", - "codepoint": "F192C", - "aliases": [ - "power-from-grid", - "energy-from-grid", - "electricity-from-grid" - ], - "styles": [ - "arrow" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7CCBC365-A3F5-46BA-869B-AADA93F5D027", - "baseIconId": "DBA97655-B2ED-4FA6-95E0-02E7273549C9", - "name": "transmission-tower-import", - "codepoint": "F192D", - "aliases": [ - "power-to-grid", - "energy-to-grid", - "electricity-to-grid", - "return-to-grid" - ], - "styles": [ - "arrow" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C54CC9F5-7BCA-4368-B379-E0CCD221A567", - "baseIconId": "DBA97655-B2ED-4FA6-95E0-02E7273549C9", - "name": "transmission-tower-off", - "codepoint": "F19DD", - "aliases": [ - "powerline-off", - "pylon-off", - "grid-off" - ], - "styles": [ - "off" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Simran" - }, - { - "id": "260712C5-252B-484C-B5A7-33827BBC5487", - "baseIconId": "260712C5-252B-484C-B5A7-33827BBC5487", - "name": "trash-can", - "codepoint": "F0A79", - "aliases": [ - "delete", - "rubbish-bin", - "trashcan", - "garbage-can" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "A586B5B1-1D48-4BC8-B31C-F8E93DC8CD49", - "baseIconId": "260712C5-252B-484C-B5A7-33827BBC5487", - "name": "trash-can-outline", - "codepoint": "F0A7A", - "aliases": [ - "delete-outline", - "rubbish-bin-outline", - "trashcan-outline", - "garbage-can-outline" - ], - "styles": [ - "outline" - ], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "F9A7F6AA-7379-4215-A97A-0E2FCAF3A9ED", - "baseIconId": "F9A7F6AA-7379-4215-A97A-0E2FCAF3A9ED", - "name": "tray", - "codepoint": "F1294", - "aliases": [ - "queue", - "printer", - "inbox" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "A1CCEE33-5CCA-43B9-B056-23F3EAFBE506", - "baseIconId": "F9A7F6AA-7379-4215-A97A-0E2FCAF3A9ED", - "name": "tray-alert", - "codepoint": "F1295", - "aliases": [ - "queue", - "printer", - "inbox" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Michael Richins" - }, - { - "id": "8B1B6ED1-8AA5-4888-8477-B122FB236E1D", - "baseIconId": "F9A7F6AA-7379-4215-A97A-0E2FCAF3A9ED", - "name": "tray-arrow-down", - "codepoint": "F0120", - "aliases": [ - "tray-download" - ], - "styles": [ - "arrow" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "arnoldlepineux" - }, - { - "id": "C633DDA7-FB93-4041-98C2-92117B970114", - "baseIconId": "F9A7F6AA-7379-4215-A97A-0E2FCAF3A9ED", - "name": "tray-arrow-up", - "codepoint": "F011D", - "aliases": [ - "tray-upload" - ], - "styles": [ - "arrow" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Arrow" - ], - "author": "arnoldlepineux" - }, - { - "id": "B81435D3-9FE4-470D-A46A-7FEDA1773D15", - "baseIconId": "F9A7F6AA-7379-4215-A97A-0E2FCAF3A9ED", - "name": "tray-full", - "codepoint": "F1296", - "aliases": [ - "queue", - "printer", - "inbox" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "F7F07C92-4531-466D-AC3E-F7822D2FDFBD", - "baseIconId": "F9A7F6AA-7379-4215-A97A-0E2FCAF3A9ED", - "name": "tray-minus", - "codepoint": "F1297", - "aliases": [ - "queue", - "printer", - "inbox" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "BF55355C-56CC-4C1F-9136-D92AA0800706", - "baseIconId": "F9A7F6AA-7379-4215-A97A-0E2FCAF3A9ED", - "name": "tray-plus", - "codepoint": "F1298", - "aliases": [ - "queue", - "printer", - "inbox" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "FACF04CD-2633-47EC-97BE-59A3341289C3", - "baseIconId": "F9A7F6AA-7379-4215-A97A-0E2FCAF3A9ED", - "name": "tray-remove", - "codepoint": "F1299", - "aliases": [ - "queue", - "printer", - "inbox" - ], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "A0678E6D-C3D3-42AB-B9E7-C1B12D368B70", - "baseIconId": "A0678E6D-C3D3-42AB-B9E7-C1B12D368B70", - "name": "treasure-chest", - "codepoint": "F0726", - "aliases": [ - "jewelry-box", - "jewel-case" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Gaming \/ RPG", - "Shopping", - "Lock" - ], - "author": "Alex Efremo" - }, - { - "id": "234877A7-B920-4592-8305-EFF7AFE3E13C", - "baseIconId": "A0678E6D-C3D3-42AB-B9E7-C1B12D368B70", - "name": "treasure-chest-outline", - "codepoint": "F1C77", - "aliases": [ - "jewel-case-outline", - "jewelry-box-outline" - ], - "styles": [ - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Gaming \/ RPG", - "Lock", - "Shopping" - ], - "author": "Jeff Anders" - }, - { - "id": "58E298BD-F32E-420D-9E55-BDB44D583AB7", - "baseIconId": "58E298BD-F32E-420D-9E55-BDB44D583AB7", - "name": "tree", - "codepoint": "F0531", - "aliases": [ - "plant" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Nature", - "Agriculture" - ], - "author": "Austin Andrews" - }, - { - "id": "81548212-EBFA-48B0-B0EB-D95EB5C0CC91", - "baseIconId": "58E298BD-F32E-420D-9E55-BDB44D583AB7", - "name": "tree-outline", - "codepoint": "F0E69", - "aliases": [ - "plant" - ], - "styles": [ - "outline" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Nature", - "Agriculture" - ], - "author": "Simran" - }, - { - "id": "25CA8276-A876-459D-B203-C81C58F88342", - "baseIconId": "25CA8276-A876-459D-B203-C81C58F88342", - "name": "trello", - "codepoint": "F0532", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "ACC5BB4D-9439-472F-9DD5-F026FF36D023", - "baseIconId": "ACC5BB4D-9439-472F-9DD5-F026FF36D023", - "name": "trending-down", - "codepoint": "F0533", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "A39F489B-ABB1-4420-A6DC-20AF0E2CF6DA", - "baseIconId": "A39F489B-ABB1-4420-A6DC-20AF0E2CF6DA", - "name": "trending-neutral", - "codepoint": "F0534", - "aliases": [ - "trending-flat" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "4277434D-74AD-48E7-9C5F-BB7226C4FC39", - "baseIconId": "4277434D-74AD-48E7-9C5F-BB7226C4FC39", - "name": "trending-up", - "codepoint": "F0535", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "78EC62FE-EC63-407F-BCF3-92C441398DDA", - "baseIconId": "78EC62FE-EC63-407F-BCF3-92C441398DDA", - "name": "triangle", - "codepoint": "F0536", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Simran" - }, - { - "id": "D7A8DF8D-096F-420D-B14C-5F523A5171CF", - "baseIconId": "78EC62FE-EC63-407F-BCF3-92C441398DDA", - "name": "triangle-down", - "codepoint": "F1C56", - "aliases": [], - "styles": [], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Jeff Anders" - }, - { - "id": "ED39F995-49AB-4F63-9EEB-A5CAE8FDBE7F", - "baseIconId": "78EC62FE-EC63-407F-BCF3-92C441398DDA", - "name": "triangle-down-outline", - "codepoint": "F1C57", - "aliases": [], - "styles": [ - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Jeff Anders" - }, - { - "id": "74A6BF3E-CEC2-40C3-A900-109D5E05E218", - "baseIconId": "78EC62FE-EC63-407F-BCF3-92C441398DDA", - "name": "triangle-outline", - "codepoint": "F0537", - "aliases": [], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Simran" - }, - { - "id": "C5F5CD46-5905-406B-8C0B-7109E8393218", - "baseIconId": "78EC62FE-EC63-407F-BCF3-92C441398DDA", - "name": "triangle-small-down", - "codepoint": "F1A09", - "aliases": [ - "trending-down-variant" - ], - "styles": [ - "variant" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Jeff Anders" - }, - { - "id": "D7C0A028-070C-4E9B-88B8-910365A3FE41", - "baseIconId": "78EC62FE-EC63-407F-BCF3-92C441398DDA", - "name": "triangle-small-up", - "codepoint": "F1A0A", - "aliases": [ - "trending-up-variant" - ], - "styles": [ - "variant" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Shape" - ], - "author": "Jeff Anders" - }, - { - "id": "59CAC75D-7028-4672-9EC2-1B9E797BA9D1", - "baseIconId": "59CAC75D-7028-4672-9EC2-1B9E797BA9D1", - "name": "triangle-wave", - "codepoint": "F147C", - "aliases": [], - "styles": [], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Audio" - ], - "author": "Haley Halcyon" - }, - { - "id": "835C3AA9-800B-4767-BDED-97FB875B19DF", - "baseIconId": "835C3AA9-800B-4767-BDED-97FB875B19DF", - "name": "triforce", - "codepoint": "F0BD9", - "aliases": [ - "zelda" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Gaming \/ RPG" - ], - "author": "Austin Andrews" - }, - { - "id": "0B9368A1-FC31-4D0D-8909-C2D44DCC0B83", - "baseIconId": "0B9368A1-FC31-4D0D-8909-C2D44DCC0B83", - "name": "trophy", - "codepoint": "F0538", - "aliases": [ - "achievement" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Doug C. Hardester" - }, - { - "id": "39F70CE8-5C56-4AAB-A4F7-93F871B1CB96", - "baseIconId": "0B9368A1-FC31-4D0D-8909-C2D44DCC0B83", - "name": "trophy-award", - "codepoint": "F0539", - "aliases": [ - "achievement-award" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Doug C. Hardester" - }, - { - "id": "3AC48F23-1321-4B8E-80D7-B050CCBA0255", - "baseIconId": "0B9368A1-FC31-4D0D-8909-C2D44DCC0B83", - "name": "trophy-broken", - "codepoint": "F0DA4", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Nikos Pappas" - }, - { - "id": "D7B01958-C212-49B9-B58B-146B4017348C", - "baseIconId": "0B9368A1-FC31-4D0D-8909-C2D44DCC0B83", - "name": "trophy-outline", - "codepoint": "F053A", - "aliases": [ - "achievement-outline" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Simran" - }, - { - "id": "C6664923-EE26-4175-90CB-AD87B517F2FF", - "baseIconId": "0B9368A1-FC31-4D0D-8909-C2D44DCC0B83", - "name": "trophy-variant", - "codepoint": "F053B", - "aliases": [ - "achievement-variant" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Doug C. Hardester" - }, - { - "id": "C3A5133F-0462-40DB-863A-3659FC5DFE0E", - "baseIconId": "0B9368A1-FC31-4D0D-8909-C2D44DCC0B83", - "name": "trophy-variant-outline", - "codepoint": "F053C", - "aliases": [ - "achievement-variant-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Simran" - }, - { - "id": "A0B91DEA-DB9A-4737-B2F4-26B805B88648", - "baseIconId": "A0B91DEA-DB9A-4737-B2F4-26B805B88648", - "name": "truck", - "codepoint": "F053D", - "aliases": [ - "lorry", - "local-shipping", - "courier" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Google" - }, - { - "id": "8650D94A-71BC-4B6B-9BA9-A6A2A756063C", - "baseIconId": "A0B91DEA-DB9A-4737-B2F4-26B805B88648", - "name": "truck-alert", - "codepoint": "F19DE", - "aliases": [ - "truck-error" - ], - "styles": [ - "alert" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Alert \/ Error" - ], - "author": "Simran" - }, - { - "id": "FCE10225-CA09-4B2E-8BE3-5B9D718B13D5", - "baseIconId": "A0B91DEA-DB9A-4737-B2F4-26B805B88648", - "name": "truck-alert-outline", - "codepoint": "F19DF", - "aliases": [ - "truck-error-outline" - ], - "styles": [ - "alert", - "outline" - ], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Alert \/ Error" - ], - "author": "Simran" - }, - { - "id": "8C535C82-EAA1-431A-90AE-D0A5032024EB", - "baseIconId": "A0B91DEA-DB9A-4737-B2F4-26B805B88648", - "name": "truck-cargo-container", - "codepoint": "F18D8", - "aliases": [ - "truck-shipping" - ], - "styles": [ - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Colton Wiscombe" - }, - { - "id": "39C645BD-15AE-42BE-B571-5744CB77E97D", - "baseIconId": "A0B91DEA-DB9A-4737-B2F4-26B805B88648", - "name": "truck-check", - "codepoint": "F0CD4", - "aliases": [ - "truck-tick", - "lorry-check", - "courier-check" - ], - "styles": [ - "check" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Austin Andrews" - }, - { - "id": "BCEE78F4-69D9-40FC-8174-D299610C0690", - "baseIconId": "A0B91DEA-DB9A-4737-B2F4-26B805B88648", - "name": "truck-check-outline", - "codepoint": "F129A", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Austin Andrews" - }, - { - "id": "D0EB091D-C62C-4A93-9AE4-AE942F5738C7", - "baseIconId": "A0B91DEA-DB9A-4737-B2F4-26B805B88648", - "name": "truck-delivery", - "codepoint": "F053E", - "aliases": [ - "lorry-delivery" - ], - "styles": [ - "arrow" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Simran" - }, - { - "id": "E65E8E41-4516-4C25-B3C1-F6B71894B5B2", - "baseIconId": "A0B91DEA-DB9A-4737-B2F4-26B805B88648", - "name": "truck-delivery-outline", - "codepoint": "F129B", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Austin Andrews" - }, - { - "id": "401AC514-6441-4DDC-80DC-48CF851C5B5E", - "baseIconId": "A0B91DEA-DB9A-4737-B2F4-26B805B88648", - "name": "truck-fast", - "codepoint": "F0788", - "aliases": [ - "lorry-fast", - "courier-fast" - ], - "styles": [ - "variant" - ], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Austin Andrews" - }, - { - "id": "42696369-BAF9-4854-A57D-355F89630929", - "baseIconId": "A0B91DEA-DB9A-4737-B2F4-26B805B88648", - "name": "truck-fast-outline", - "codepoint": "F129C", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Austin Andrews" - }, - { - "id": "4A29028B-25F3-423F-B924-BB93FAEC2DCF", - "baseIconId": "A0B91DEA-DB9A-4737-B2F4-26B805B88648", - "name": "truck-flatbed", - "codepoint": "F1891", - "aliases": [ - "truck-flatbed-tow" - ], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Automotive", - "Transportation + Road" - ], - "author": "Colton Wiscombe" - }, - { - "id": "3F802DD6-094E-4C91-B78B-9790D1F39D9F", - "baseIconId": "A0B91DEA-DB9A-4737-B2F4-26B805B88648", - "name": "truck-minus", - "codepoint": "F19AE", - "aliases": [ - "truck-subtract" - ], - "styles": [ - "minus" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Michael Richins" - }, - { - "id": "583767E2-4272-4483-99B5-5677E6EAB027", - "baseIconId": "A0B91DEA-DB9A-4737-B2F4-26B805B88648", - "name": "truck-minus-outline", - "codepoint": "F19BD", - "aliases": [ - "truck-subtract-outline" - ], - "styles": [ - "minus", - "outline" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Colton Wiscombe" - }, - { - "id": "BFDBF912-A62A-4E06-AC82-F0356BA02188", - "baseIconId": "A0B91DEA-DB9A-4737-B2F4-26B805B88648", - "name": "truck-off-road", - "codepoint": "F1C9E", - "aliases": [], - "styles": [], - "version": "7.3.96", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Michael Richins" - }, - { - "id": "654D7249-607D-453A-A514-5DB3F5FFF86F", - "baseIconId": "A0B91DEA-DB9A-4737-B2F4-26B805B88648", - "name": "truck-off-road-off", - "codepoint": "F1C9F", - "aliases": [], - "styles": [ - "off" - ], - "version": "7.3.96", - "deprecated": false, - "tags": [ - "Transportation + Other" - ], - "author": "Michael Richins" - }, - { - "id": "09111629-7960-46BA-A70E-DC85128E4F4A", - "baseIconId": "A0B91DEA-DB9A-4737-B2F4-26B805B88648", - "name": "truck-outline", - "codepoint": "F129D", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Google" - }, - { - "id": "CE4CCBED-7E6E-4F0C-ADF9-AC3347BF897D", - "baseIconId": "A0B91DEA-DB9A-4737-B2F4-26B805B88648", - "name": "truck-plus", - "codepoint": "F19AD", - "aliases": [ - "truck-add" - ], - "styles": [ - "plus" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Medical \/ Hospital" - ], - "author": "Michael Richins" - }, - { - "id": "E920C53D-E340-42C1-86D6-9A1317D9A584", - "baseIconId": "A0B91DEA-DB9A-4737-B2F4-26B805B88648", - "name": "truck-plus-outline", - "codepoint": "F19BC", - "aliases": [ - "truck-add-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Medical \/ Hospital" - ], - "author": "Colton Wiscombe" - }, - { - "id": "AD0B6233-8DDB-4E1F-85E4-63EB669C8E79", - "baseIconId": "A0B91DEA-DB9A-4737-B2F4-26B805B88648", - "name": "truck-remove", - "codepoint": "F19AF", - "aliases": [], - "styles": [ - "remove" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Michael Richins" - }, - { - "id": "537D027D-BD0C-43DC-B772-1F0FD0E0041A", - "baseIconId": "A0B91DEA-DB9A-4737-B2F4-26B805B88648", - "name": "truck-remove-outline", - "codepoint": "F19BE", - "aliases": [], - "styles": [ - "outline", - "remove" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Colton Wiscombe" - }, - { - "id": "EEE6A113-50D3-4216-B103-C60D857D7E31", - "baseIconId": "A0B91DEA-DB9A-4737-B2F4-26B805B88648", - "name": "truck-snowflake", - "codepoint": "F19A6", - "aliases": [ - "truck-refrigerator", - "truck-freezer" - ], - "styles": [ - "variant" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Erdem YILMAZ" - }, - { - "id": "6F488FA3-B882-443D-8619-0124217E267C", - "baseIconId": "CB49A868-3317-4445-BFED-13CB6533000E", - "name": "truck-trailer", - "codepoint": "F0727", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "Michael Richins" - }, - { - "id": "CCE02F94-2930-488B-A39C-17A8DD8BE591", - "baseIconId": "CCE02F94-2930-488B-A39C-17A8DD8BE591", - "name": "trumpet", - "codepoint": "F1096", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E46BD04B-78BF-4243-8608-46930051A694", - "baseIconId": "E46BD04B-78BF-4243-8608-46930051A694", - "name": "tshirt-crew", - "codepoint": "F0A7B", - "aliases": [ - "t-shirt-crew" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Clothing" - ], - "author": "Michael Richins" - }, - { - "id": "6B67D149-AE33-40CF-997F-C57A7ECB8D42", - "baseIconId": "E46BD04B-78BF-4243-8608-46930051A694", - "name": "tshirt-crew-outline", - "codepoint": "F053F", - "aliases": [ - "t-shirt-crew-outline" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Clothing" - ], - "author": "Austin Andrews" - }, - { - "id": "618A5FB1-7308-4C2B-BCE1-461BA9DBFD13", - "baseIconId": "618A5FB1-7308-4C2B-BCE1-461BA9DBFD13", - "name": "tshirt-v", - "codepoint": "F0A7C", - "aliases": [ - "t-shirt-v" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [ - "Clothing" - ], - "author": "Michael Richins" - }, - { - "id": "94791D5D-EEC5-4562-98DD-DF285E972EC8", - "baseIconId": "618A5FB1-7308-4C2B-BCE1-461BA9DBFD13", - "name": "tshirt-v-outline", - "codepoint": "F0540", - "aliases": [ - "t-shirt-v-outline" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Clothing" - ], - "author": "Austin Andrews" - }, - { - "id": "23DCD596-6B2A-4556-AF71-A37AE9FE4D99", - "baseIconId": "23DCD596-6B2A-4556-AF71-A37AE9FE4D99", - "name": "tsunami", - "codepoint": "F1A81", - "aliases": [], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Nature", - "Weather" - ], - "author": "Google" - }, - { - "id": "7796F195-34DA-4CAA-8F58-1179343EFB18", - "baseIconId": "7796F195-34DA-4CAA-8F58-1179343EFB18", - "name": "tumble-dryer", - "codepoint": "F0917", - "aliases": [ - "laundry-room" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "D21E17B9-0D84-4C21-977C-D1056E934449", - "baseIconId": "7796F195-34DA-4CAA-8F58-1179343EFB18", - "name": "tumble-dryer-alert", - "codepoint": "F11BA", - "aliases": [ - "laundry-room-alert" - ], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E9DC2320-5FD4-403B-8445-9EB68B4468B6", - "baseIconId": "7796F195-34DA-4CAA-8F58-1179343EFB18", - "name": "tumble-dryer-off", - "codepoint": "F11BB", - "aliases": [ - "laundry-room-off" - ], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B1F7C2ED-4017-4162-A4C7-31D8761D8DC3", - "baseIconId": "B1F7C2ED-4017-4162-A4C7-31D8761D8DC3", - "name": "tune", - "codepoint": "F062E", - "aliases": [ - "mixer-settings", - "equaliser", - "settings" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Settings", - "Audio" - ], - "author": "Google" - }, - { - "id": "B0AFC3B0-B718-407F-A51C-F4D932D7FCB2", - "baseIconId": "B1F7C2ED-4017-4162-A4C7-31D8761D8DC3", - "name": "tune-variant", - "codepoint": "F1542", - "aliases": [ - "settings", - "equalizer" - ], - "styles": [ - "variant" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Audio", - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "AB147073-9D20-4DA1-A108-3856FC1764C1", - "baseIconId": "AB147073-9D20-4DA1-A108-3856FC1764C1", - "name": "tune-vertical", - "codepoint": "F066A", - "aliases": [ - "equaliser-vertical", - "instant-mix", - "settings-vertical", - "mixer-settings-vertical" - ], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [ - "Settings", - "Audio" - ], - "author": "Google" - }, - { - "id": "FF706504-28DF-4752-BD75-E50FFE794421", - "baseIconId": "AB147073-9D20-4DA1-A108-3856FC1764C1", - "name": "tune-vertical-variant", - "codepoint": "F1543", - "aliases": [ - "settings-vertical", - "equalizer-vertical" - ], - "styles": [ - "variant" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Audio", - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "316E6516-22BC-4191-9DF6-BB4FCA8ECCDE", - "baseIconId": "316E6516-22BC-4191-9DF6-BB4FCA8ECCDE", - "name": "tunnel", - "codepoint": "F183D", - "aliases": [], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Transportation + Other" - ], - "author": "Colton Wiscombe" - }, - { - "id": "1F64ACCA-5D8A-40FF-9E9A-CC640E9B9002", - "baseIconId": "316E6516-22BC-4191-9DF6-BB4FCA8ECCDE", - "name": "tunnel-outline", - "codepoint": "F183E", - "aliases": [], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Transportation + Road", - "Transportation + Other" - ], - "author": "Colton Wiscombe" - }, - { - "id": "1F12944F-0802-431A-AA2C-7E0FEB23829B", - "baseIconId": "1F12944F-0802-431A-AA2C-7E0FEB23829B", - "name": "turbine", - "codepoint": "F1A82", - "aliases": [ - "jet-engine", - "wind-turbine" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Transportation + Flying" - ], - "author": "Hans B\u00f6hm" - }, - { - "id": "2BD0CF2B-70B8-4CFB-9350-A613C189EE7D", - "baseIconId": "2BD0CF2B-70B8-4CFB-9350-A613C189EE7D", - "name": "turkey", - "codepoint": "F171B", - "aliases": [ - "thanksgiving" - ], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [ - "Animal", - "Holiday", - "Agriculture" - ], - "author": "Colton Wiscombe" - }, - { - "id": "40E06CC0-82EE-4EE0-976B-C6388BBFDD9D", - "baseIconId": "40E06CC0-82EE-4EE0-976B-C6388BBFDD9D", - "name": "turnstile", - "codepoint": "F0CD5", - "aliases": [], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "22E6056D-46AF-4249-93DF-D0D5465DD6CA", - "baseIconId": "40E06CC0-82EE-4EE0-976B-C6388BBFDD9D", - "name": "turnstile-outline", - "codepoint": "F0CD6", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "36BB53AA-DFB4-46DB-AAD7-FE4D266D8EC7", - "baseIconId": "36BB53AA-DFB4-46DB-AAD7-FE4D266D8EC7", - "name": "turtle", - "codepoint": "F0CD7", - "aliases": [ - "reptile" - ], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Nick" - }, - { - "id": "8BA5EB2D-7C4F-4336-8994-20CAA433BB26", - "baseIconId": "8BA5EB2D-7C4F-4336-8994-20CAA433BB26", - "name": "twitch", - "codepoint": "F0543", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Social Media", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "A95F7C7C-DE85-4564-BA65-DEDCF3BE105A", - "baseIconId": "A95F7C7C-DE85-4564-BA65-DEDCF3BE105A", - "name": "twitter", - "codepoint": "F0544", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Social Media" - ], - "author": "Contributors" - }, - { - "id": "B4BC8D17-225E-44B1-A44F-3A6DC21C9A7B", - "baseIconId": "B4BC8D17-225E-44B1-A44F-3A6DC21C9A7B", - "name": "two-factor-authentication", - "codepoint": "F09AF", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "C5841F2E-EFD9-4589-BDB1-554DFE6A623C", - "baseIconId": "C5841F2E-EFD9-4589-BDB1-554DFE6A623C", - "name": "typewriter", - "codepoint": "F0F2D", - "aliases": [], - "styles": [], - "version": "3.8.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "F8C3B22E-D72C-4A1C-BCB8-A24CBB3CAF46", - "baseIconId": "F8C3B22E-D72C-4A1C-BCB8-A24CBB3CAF46", - "name": "ubisoft", - "codepoint": "F0BDA", - "aliases": [ - "uplay" - ], - "styles": [], - "version": "3.0.39", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Gaming \/ RPG" - ], - "author": "Contributors" - }, - { - "id": "D0B38B4B-389B-49A8-9797-BE1092231DE9", - "baseIconId": "D0B38B4B-389B-49A8-9797-BE1092231DE9", - "name": "ubuntu", - "codepoint": "F0548", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "D2609FE7-60FE-4372-94A9-7BB3C7AD18DE", - "baseIconId": "D2609FE7-60FE-4372-94A9-7BB3C7AD18DE", - "name": "ufo", - "codepoint": "F10C4", - "aliases": [ - "unidentified-flying-object", - "alien" - ], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "A0C08D07-838C-426F-8EA5-EBCA5C117684", - "baseIconId": "D2609FE7-60FE-4372-94A9-7BB3C7AD18DE", - "name": "ufo-outline", - "codepoint": "F10C5", - "aliases": [ - "unidentified-flying-object-outline", - "alien" - ], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "A7C08392-F82F-4910-8D0F-6A1907AE19E3", - "baseIconId": "A7C08392-F82F-4910-8D0F-6A1907AE19E3", - "name": "ultra-high-definition", - "codepoint": "F07F9", - "aliases": [ - "uhd" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Austin Andrews" - }, - { - "id": "EB029748-89CF-4E75-BBC9-9747BEF7AE29", - "baseIconId": "EB029748-89CF-4E75-BBC9-9747BEF7AE29", - "name": "umbraco", - "codepoint": "F0549", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "6E7A679E-94FE-4BBD-931F-59B9F25B54EE", - "baseIconId": "6E7A679E-94FE-4BBD-931F-59B9F25B54EE", - "name": "umbrella", - "codepoint": "F054A", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Simran" - }, - { - "id": "20EBCC12-192B-49F0-9641-C61D7B8CD33A", - "baseIconId": "6E7A679E-94FE-4BBD-931F-59B9F25B54EE", - "name": "umbrella-beach", - "codepoint": "F188A", - "aliases": [], - "styles": [ - "variant" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Google" - }, - { - "id": "C48A57EA-07D6-40E8-9DFC-189BE630A7ED", - "baseIconId": "6E7A679E-94FE-4BBD-931F-59B9F25B54EE", - "name": "umbrella-beach-outline", - "codepoint": "F188B", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Google" - }, - { - "id": "591C025F-58CC-4E5D-9D63-FB43A8B7BA78", - "baseIconId": "6E7A679E-94FE-4BBD-931F-59B9F25B54EE", - "name": "umbrella-closed", - "codepoint": "F09B0", - "aliases": [], - "styles": [ - "variant" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Simran" - }, - { - "id": "4B483491-948F-4126-9041-DE8D3A4A9A10", - "baseIconId": "6E7A679E-94FE-4BBD-931F-59B9F25B54EE", - "name": "umbrella-closed-outline", - "codepoint": "F13E2", - "aliases": [], - "styles": [], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Simran" - }, - { - "id": "B17B3489-56A4-490D-828E-61A64754EB1A", - "baseIconId": "6E7A679E-94FE-4BBD-931F-59B9F25B54EE", - "name": "umbrella-closed-variant", - "codepoint": "F13E1", - "aliases": [], - "styles": [], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Moma Design Studio" - }, - { - "id": "7E42C11A-74C3-4C0F-BE6B-9794F343925A", - "baseIconId": "6E7A679E-94FE-4BBD-931F-59B9F25B54EE", - "name": "umbrella-outline", - "codepoint": "F054B", - "aliases": [], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Simran" - }, - { - "id": "C9D6F6DE-E9F7-4AC9-B9F1-41160A4C2B0E", - "baseIconId": "C9D6F6DE-E9F7-4AC9-B9F1-41160A4C2B0E", - "name": "undo", - "codepoint": "F054C", - "aliases": [ - "arrow" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "C262C766-4474-4BC5-AE66-23E5735F86F1", - "baseIconId": "C9D6F6DE-E9F7-4AC9-B9F1-41160A4C2B0E", - "name": "undo-variant", - "codepoint": "F054D", - "aliases": [ - "arrow" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "E533CB7E-48C2-4D9D-B935-B51C918703C0", - "baseIconId": "E533CB7E-48C2-4D9D-B935-B51C918703C0", - "name": "unfold-less-horizontal", - "codepoint": "F054E", - "aliases": [ - "chevron-down-up", - "collapse-horizontal" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "E4DFDADF-60F8-4E90-A501-38381F4346A0", - "baseIconId": "E4DFDADF-60F8-4E90-A501-38381F4346A0", - "name": "unfold-less-vertical", - "codepoint": "F0760", - "aliases": [ - "chevron-right-left", - "collapse-vertical" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "E85F4170-11D3-4757-8247-17EBD07A08D4", - "baseIconId": "E85F4170-11D3-4757-8247-17EBD07A08D4", - "name": "unfold-more-horizontal", - "codepoint": "F054F", - "aliases": [ - "chevron-up-down", - "expand-horizontal" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "AE8D43D2-00EC-46D9-A21C-4D0024A539D7", - "baseIconId": "AE8D43D2-00EC-46D9-A21C-4D0024A539D7", - "name": "unfold-more-vertical", - "codepoint": "F0761", - "aliases": [ - "chevron-left-right", - "expand-vertical" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "87E56CEE-67B1-427E-9A28-303F8B6D29A7", - "baseIconId": "87E56CEE-67B1-427E-9A28-303F8B6D29A7", - "name": "ungroup", - "codepoint": "F0550", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "0A232580-AB10-422D-B5B0-D0F4EFE7AD6A", - "baseIconId": "0A232580-AB10-422D-B5B0-D0F4EFE7AD6A", - "name": "unicode", - "codepoint": "F0ED0", - "aliases": [], - "styles": [], - "version": "3.7.94", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "B3A5FE32-259C-4FBA-B6EB-A4A1CE7590DE", - "baseIconId": "B3A5FE32-259C-4FBA-B6EB-A4A1CE7590DE", - "name": "unicorn", - "codepoint": "F15C2", - "aliases": [ - "fantasy" - ], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Colton Wiscombe" - }, - { - "id": "D0825387-637B-4EB5-BCF5-470A7FCE1F05", - "baseIconId": "B3A5FE32-259C-4FBA-B6EB-A4A1CE7590DE", - "name": "unicorn-variant", - "codepoint": "F15C3", - "aliases": [ - "fantasy-variant" - ], - "styles": [ - "variant" - ], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Animal" - ], - "author": "Colton Wiscombe" - }, - { - "id": "A0632550-1C97-49AF-B0B3-463625A8C3FB", - "baseIconId": "A0632550-1C97-49AF-B0B3-463625A8C3FB", - "name": "unicycle", - "codepoint": "F15E5", - "aliases": [], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Sport", - "Transportation + Other" - ], - "author": "Colton Wiscombe" - }, - { - "id": "50CFC57C-9C70-4953-BDC4-F6340EB7A243", - "baseIconId": "50CFC57C-9C70-4953-BDC4-F6340EB7A243", - "name": "unity", - "codepoint": "F06AF", - "aliases": [], - "styles": [], - "version": "1.7.12", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Gaming \/ RPG" - ], - "author": "Contributors" - }, - { - "id": "4AC79EF3-5BCA-41EC-976E-CB821416A905", - "baseIconId": "4AC79EF3-5BCA-41EC-976E-CB821416A905", - "name": "unreal", - "codepoint": "F09B1", - "aliases": [ - "unreal-engine" - ], - "styles": [], - "version": "2.4.85", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Gaming \/ RPG" - ], - "author": "Contributors" - }, - { - "id": "1B274396-AAE7-4CD8-8D57-27E31D915F68", - "baseIconId": "1B274396-AAE7-4CD8-8D57-27E31D915F68", - "name": "update", - "codepoint": "F06B0", - "aliases": [ - "clockwise", - "clock-arrow" - ], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Google" - }, - { - "id": "08F8FCE9-67A0-4696-9B83-0B1F11EA959E", - "baseIconId": "08F8FCE9-67A0-4696-9B83-0B1F11EA959E", - "name": "upload", - "codepoint": "F0552", - "aliases": [ - "file-upload" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "961ECD2E-2849-42C0-909A-5431B0273DA0", - "baseIconId": "08F8FCE9-67A0-4696-9B83-0B1F11EA959E", - "name": "upload-lock", - "codepoint": "F1373", - "aliases": [], - "styles": [ - "lock" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Michael Richins" - }, - { - "id": "AB9A1FD5-FAAC-4E6F-8B6D-D642D7066E96", - "baseIconId": "08F8FCE9-67A0-4696-9B83-0B1F11EA959E", - "name": "upload-lock-outline", - "codepoint": "F1374", - "aliases": [], - "styles": [ - "lock", - "outline" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Michael Richins" - }, - { - "id": "2B1A438E-4795-43D1-B4FD-3997C8E1BA9F", - "baseIconId": "08F8FCE9-67A0-4696-9B83-0B1F11EA959E", - "name": "upload-multiple", - "codepoint": "F083D", - "aliases": [ - "uploads" - ], - "styles": [ - "multiple" - ], - "version": "2.1.19", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "B473675B-DF1E-4450-B85E-786B483C9FA4", - "baseIconId": "08F8FCE9-67A0-4696-9B83-0B1F11EA959E", - "name": "upload-network", - "codepoint": "F06F6", - "aliases": [], - "styles": [ - "network" - ], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "279E2BEC-B829-49A3-A9C5-0FC58781975C", - "baseIconId": "08F8FCE9-67A0-4696-9B83-0B1F11EA959E", - "name": "upload-network-outline", - "codepoint": "F0CD8", - "aliases": [], - "styles": [ - "network", - "outline" - ], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "B6A90F94-944A-4B64-B551-1163605C6A30", - "baseIconId": "08F8FCE9-67A0-4696-9B83-0B1F11EA959E", - "name": "upload-off", - "codepoint": "F10C6", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "432A3BF4-56B2-4567-890C-F60CE8CE2F34", - "baseIconId": "08F8FCE9-67A0-4696-9B83-0B1F11EA959E", - "name": "upload-off-outline", - "codepoint": "F10C7", - "aliases": [], - "styles": [], - "version": "4.2.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "02F82A66-CEB3-4F54-825A-811342975170", - "baseIconId": "08F8FCE9-67A0-4696-9B83-0B1F11EA959E", - "name": "upload-outline", - "codepoint": "F0E07", - "aliases": [ - "file-upload-outline" - ], - "styles": [ - "outline" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "25033E0B-3AD4-414D-9972-559F2690FC1D", - "baseIconId": "25033E0B-3AD4-414D-9972-559F2690FC1D", - "name": "usb", - "codepoint": "F0553", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "DB728530-EAF2-488E-8971-9567A31354DE", - "baseIconId": "DB728530-EAF2-488E-8971-9567A31354DE", - "name": "usb-flash-drive", - "codepoint": "F129E", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Yaroslav Bandura" - }, - { - "id": "9FD568CE-B873-45FC-8F8A-8D8172FB4C7E", - "baseIconId": "DB728530-EAF2-488E-8971-9567A31354DE", - "name": "usb-flash-drive-outline", - "codepoint": "F129F", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [], - "author": "Yaroslav Bandura" - }, - { - "id": "B271CD5A-6340-440A-896E-6A53BAE3B685", - "baseIconId": "B271CD5A-6340-440A-896E-6A53BAE3B685", - "name": "usb-port", - "codepoint": "F11F0", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "280D39D7-C3B6-4C48-827F-D944B4773B0C", - "baseIconId": "280D39D7-C3B6-4C48-827F-D944B4773B0C", - "name": "vacuum", - "codepoint": "F19A1", - "aliases": [ - "vacuum-cleaner" - ], - "styles": [], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "DE1B37E2-0CDF-4998-8E91-8A84F3D084BC", - "baseIconId": "280D39D7-C3B6-4C48-827F-D944B4773B0C", - "name": "vacuum-outline", - "codepoint": "F19A2", - "aliases": [ - "vacuum-cleaner-outline" - ], - "styles": [ - "outline" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "304B1BC9-DF83-41FF-B0F9-1FF4D83A95CB", - "baseIconId": "304B1BC9-DF83-41FF-B0F9-1FF4D83A95CB", - "name": "valve", - "codepoint": "F1066", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "753E83CB-F6D2-4162-B3B4-6D2B8E0DC642", - "baseIconId": "304B1BC9-DF83-41FF-B0F9-1FF4D83A95CB", - "name": "valve-closed", - "codepoint": "F1067", - "aliases": [], - "styles": [ - "variant" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "E9E77FBB-F72A-4A82-9565-6BE2885D5138", - "baseIconId": "304B1BC9-DF83-41FF-B0F9-1FF4D83A95CB", - "name": "valve-open", - "codepoint": "F1068", - "aliases": [], - "styles": [ - "variant" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "293262AA-69E7-4D04-B441-AAA13D22C63C", - "baseIconId": "293262AA-69E7-4D04-B441-AAA13D22C63C", - "name": "van-passenger", - "codepoint": "F07FA", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "GreenTurtwig" - }, - { - "id": "517A8F96-14C9-4FAB-8AC2-27321C91E1BF", - "baseIconId": "517A8F96-14C9-4FAB-8AC2-27321C91E1BF", - "name": "van-utility", - "codepoint": "F07FB", - "aliases": [ - "van-candy" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Transportation + Road" - ], - "author": "GreenTurtwig" - }, - { - "id": "437A175D-CA2F-44C9-9FA0-A59A43E7C590", - "baseIconId": "437A175D-CA2F-44C9-9FA0-A59A43E7C590", - "name": "vanish", - "codepoint": "F07FC", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [], - "author": "ginlime" - }, - { - "id": "2BEF3471-36F9-4813-AC45-3C3FF9FC329C", - "baseIconId": "2BEF3471-36F9-4813-AC45-3C3FF9FC329C", - "name": "vanish-quarter", - "codepoint": "F1554", - "aliases": [], - "styles": [], - "version": "5.5.55", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "D8231C86-FA8B-4450-96FC-5C2820DD7DCC", - "baseIconId": "D8231C86-FA8B-4450-96FC-5C2820DD7DCC", - "name": "vanity-light", - "codepoint": "F11E1", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "6D34F114-FA91-4815-8148-A4C6B3BF128C", - "baseIconId": "6D34F114-FA91-4815-8148-A4C6B3BF128C", - "name": "variable", - "codepoint": "F0AE7", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Developer \/ Languages", - "Math" - ], - "author": "Michael Richins" - }, - { - "id": "AAC0D31F-ABF0-4A36-862E-BAEF2979E243", - "baseIconId": "6D34F114-FA91-4815-8148-A4C6B3BF128C", - "name": "variable-box", - "codepoint": "F1111", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Michael Irigoyen" - }, - { - "id": "576A1B80-550B-46BD-90A6-A497D8A29BC5", - "baseIconId": "576A1B80-550B-46BD-90A6-A497D8A29BC5", - "name": "vector-arrange-above", - "codepoint": "F0554", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Vector", - "Arrange", - "Geographic Information System" - ], - "author": "Simran" - }, - { - "id": "C2EC8280-2EFC-44F4-BA6D-89DE72F06CA3", - "baseIconId": "576A1B80-550B-46BD-90A6-A497D8A29BC5", - "name": "vector-arrange-below", - "codepoint": "F0555", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Vector", - "Arrange", - "Geographic Information System" - ], - "author": "Simran" - }, - { - "id": "1D649850-7C33-41FE-8FBA-E6DFAB384AEC", - "baseIconId": "1D649850-7C33-41FE-8FBA-E6DFAB384AEC", - "name": "vector-bezier", - "codepoint": "F0AE8", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [ - "Vector" - ], - "author": "Louistwee" - }, - { - "id": "5C73E245-C6D4-42F0-A5D6-C14F53982661", - "baseIconId": "5C73E245-C6D4-42F0-A5D6-C14F53982661", - "name": "vector-circle", - "codepoint": "F0556", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Vector", - "Geographic Information System" - ], - "author": "Simran" - }, - { - "id": "D5741976-7530-4859-97C1-F170BCE7C8B3", - "baseIconId": "D5741976-7530-4859-97C1-F170BCE7C8B3", - "name": "vector-circle-variant", - "codepoint": "F0557", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Vector" - ], - "author": "Simran" - }, - { - "id": "7845F254-C78F-44D3-84E3-421B0B2AFF31", - "baseIconId": "7845F254-C78F-44D3-84E3-421B0B2AFF31", - "name": "vector-combine", - "codepoint": "F0558", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Vector", - "Geographic Information System" - ], - "author": "Simran" - }, - { - "id": "546B7A4F-6D63-46CD-B74D-DEF09CE8D8FB", - "baseIconId": "546B7A4F-6D63-46CD-B74D-DEF09CE8D8FB", - "name": "vector-curve", - "codepoint": "F0559", - "aliases": [ - "bezier" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Vector", - "Geographic Information System" - ], - "author": "Austin Andrews" - }, - { - "id": "C4CA626C-23C3-495A-A73B-4B55A6FBC1F9", - "baseIconId": "C4CA626C-23C3-495A-A73B-4B55A6FBC1F9", - "name": "vector-difference", - "codepoint": "F055A", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Vector", - "Geographic Information System" - ], - "author": "Simran" - }, - { - "id": "9D39AD1D-F643-43EF-B55B-6CF2EC4637EC", - "baseIconId": "C4CA626C-23C3-495A-A73B-4B55A6FBC1F9", - "name": "vector-difference-ab", - "codepoint": "F055B", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Vector", - "Geographic Information System" - ], - "author": "Simran" - }, - { - "id": "A327D00A-F451-4B88-AEBA-EA87016806CB", - "baseIconId": "C4CA626C-23C3-495A-A73B-4B55A6FBC1F9", - "name": "vector-difference-ba", - "codepoint": "F055C", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Vector", - "Geographic Information System" - ], - "author": "Simran" - }, - { - "id": "EE98FF75-8AAA-4912-AFDE-6D5290FD6800", - "baseIconId": "EE98FF75-8AAA-4912-AFDE-6D5290FD6800", - "name": "vector-ellipse", - "codepoint": "F0893", - "aliases": [], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Vector", - "Geographic Information System" - ], - "author": "Austin Andrews" - }, - { - "id": "DACB8CA9-A0A9-4766-B1A3-EC334425514A", - "baseIconId": "DACB8CA9-A0A9-4766-B1A3-EC334425514A", - "name": "vector-intersection", - "codepoint": "F055D", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Vector", - "Geographic Information System" - ], - "author": "Simran" - }, - { - "id": "8C2D4FBB-00B1-4815-971F-03F0788093C2", - "baseIconId": "8C2D4FBB-00B1-4815-971F-03F0788093C2", - "name": "vector-line", - "codepoint": "F055E", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Vector", - "Geographic Information System" - ], - "author": "Simran" - }, - { - "id": "FC1F3637-2FBC-4A77-AB1F-FF74FE2B7D78", - "baseIconId": "FC1F3637-2FBC-4A77-AB1F-FF74FE2B7D78", - "name": "vector-link", - "codepoint": "F0FE8", - "aliases": [], - "styles": [], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Vector", - "Geographic Information System" - ], - "author": "Simran" - }, - { - "id": "4B4C339D-D581-44A3-95DE-4254CC42AC8D", - "baseIconId": "4B4C339D-D581-44A3-95DE-4254CC42AC8D", - "name": "vector-point", - "codepoint": "F01C4", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Vector" - ], - "author": "Andrea Antonello" - }, - { - "id": "A3CC4F14-35C0-421B-A818-9B8E4E852522", - "baseIconId": "4B4C339D-D581-44A3-95DE-4254CC42AC8D", - "name": "vector-point-edit", - "codepoint": "F09E8", - "aliases": [], - "styles": [ - "edit" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Vector", - "Edit \/ Modify" - ], - "author": "Andrea Antonello" - }, - { - "id": "A1B2C0E5-8F8A-40B8-8EE4-A619DE840E9A", - "baseIconId": "4B4C339D-D581-44A3-95DE-4254CC42AC8D", - "name": "vector-point-minus", - "codepoint": "F1B78", - "aliases": [], - "styles": [ - "minus" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Vector" - ], - "author": "Andrea Antonello" - }, - { - "id": "8722C5FB-0644-4837-B497-D16517B9F08D", - "baseIconId": "4B4C339D-D581-44A3-95DE-4254CC42AC8D", - "name": "vector-point-plus", - "codepoint": "F1B79", - "aliases": [ - "vector-point-add" - ], - "styles": [ - "plus" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Vector" - ], - "author": "Andrea Antonello" - }, - { - "id": "C8B18CF5-BD7E-41FC-A653-6B46D85F982A", - "baseIconId": "4B4C339D-D581-44A3-95DE-4254CC42AC8D", - "name": "vector-point-select", - "codepoint": "F055F", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Vector", - "Geographic Information System" - ], - "author": "Austin Andrews" - }, - { - "id": "6CD0A5FB-8FB8-45E7-9955-A876E4B2ABB4", - "baseIconId": "6CD0A5FB-8FB8-45E7-9955-A876E4B2ABB4", - "name": "vector-polygon", - "codepoint": "F0560", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Vector", - "Geographic Information System" - ], - "author": "Simran" - }, - { - "id": "26BC525C-08EA-4929-9114-8FB8F35B32AD", - "baseIconId": "6CD0A5FB-8FB8-45E7-9955-A876E4B2ABB4", - "name": "vector-polygon-variant", - "codepoint": "F1856", - "aliases": [], - "styles": [ - "variant" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Vector" - ], - "author": "Jeff Anders" - }, - { - "id": "1D1C3847-C645-42AE-A93C-DE1E64685762", - "baseIconId": "1D1C3847-C645-42AE-A93C-DE1E64685762", - "name": "vector-polyline", - "codepoint": "F0561", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Vector", - "Geographic Information System" - ], - "author": "Andrea Antonello" - }, - { - "id": "D2CE645F-5DC0-4E94-AD3C-346D59DD6AB1", - "baseIconId": "1D1C3847-C645-42AE-A93C-DE1E64685762", - "name": "vector-polyline-edit", - "codepoint": "F1225", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Edit \/ Modify" - ], - "author": "Andrea Antonello" - }, - { - "id": "ADB52436-4BAD-40E2-8A13-48C76188FCE6", - "baseIconId": "1D1C3847-C645-42AE-A93C-DE1E64685762", - "name": "vector-polyline-minus", - "codepoint": "F1226", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "Andrea Antonello" - }, - { - "id": "EFE8791E-593A-4B6F-8EFE-553A00C8E5A4", - "baseIconId": "1D1C3847-C645-42AE-A93C-DE1E64685762", - "name": "vector-polyline-plus", - "codepoint": "F1227", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "Andrea Antonello" - }, - { - "id": "0B173B1A-A4BE-4B96-A33F-2C332150B5AE", - "baseIconId": "1D1C3847-C645-42AE-A93C-DE1E64685762", - "name": "vector-polyline-remove", - "codepoint": "F1228", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "1B112A31-E2A7-4BAD-B1F1-5289B8811F08", - "baseIconId": "1B112A31-E2A7-4BAD-B1F1-5289B8811F08", - "name": "vector-radius", - "codepoint": "F074A", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Vector", - "Geographic Information System" - ], - "author": "Austin Andrews" - }, - { - "id": "2A12555B-0CBC-4FC9-9F86-88F7785B3B2C", - "baseIconId": "2A12555B-0CBC-4FC9-9F86-88F7785B3B2C", - "name": "vector-rectangle", - "codepoint": "F05C6", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Vector", - "Geographic Information System" - ], - "author": "Austin Andrews" - }, - { - "id": "B7C380C9-13D8-4A0E-8EEC-1B4FB23F1FB9", - "baseIconId": "B7C380C9-13D8-4A0E-8EEC-1B4FB23F1FB9", - "name": "vector-selection", - "codepoint": "F0562", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Vector", - "Geographic Information System" - ], - "author": "Simran" - }, - { - "id": "039be9b8-08ad-11e4-bf19-842b2b6cfe1b", - "baseIconId": "039be9b8-08ad-11e4-bf19-842b2b6cfe1b", - "name": "vector-square", - "codepoint": "F0001", - "aliases": [ - "mdi" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Vector", - "Geographic Information System" - ], - "author": "Austin Andrews" - }, - { - "id": "4B18056D-33ED-4AD5-888D-AF90713CBC73", - "baseIconId": "039be9b8-08ad-11e4-bf19-842b2b6cfe1b", - "name": "vector-square-close", - "codepoint": "F1857", - "aliases": [], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Vector" - ], - "author": "Jeff Anders" - }, - { - "id": "613DA7AD-4B76-4514-96D8-4F6964222FF0", - "baseIconId": "039be9b8-08ad-11e4-bf19-842b2b6cfe1b", - "name": "vector-square-edit", - "codepoint": "F18D9", - "aliases": [], - "styles": [ - "edit" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Vector", - "Edit \/ Modify" - ], - "author": "Andrea Antonello" - }, - { - "id": "5B415AB4-7F0B-458F-8CB5-CA456D6A48A5", - "baseIconId": "039be9b8-08ad-11e4-bf19-842b2b6cfe1b", - "name": "vector-square-minus", - "codepoint": "F18DA", - "aliases": [ - "vector-square-subtract" - ], - "styles": [ - "minus" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Vector" - ], - "author": "Andrea Antonello" - }, - { - "id": "B2FDC7FE-A762-45BE-9405-77F41514BAED", - "baseIconId": "039be9b8-08ad-11e4-bf19-842b2b6cfe1b", - "name": "vector-square-open", - "codepoint": "F1858", - "aliases": [], - "styles": [ - "variant" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Vector" - ], - "author": "Jeff Anders" - }, - { - "id": "9373C6A3-8FDD-499A-97EB-34855A15C937", - "baseIconId": "039be9b8-08ad-11e4-bf19-842b2b6cfe1b", - "name": "vector-square-plus", - "codepoint": "F18DB", - "aliases": [ - "vector-square-add" - ], - "styles": [ - "plus" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Vector" - ], - "author": "Andrea Antonello" - }, - { - "id": "453AE0C4-2846-4EF0-AD04-D3981FC002A0", - "baseIconId": "039be9b8-08ad-11e4-bf19-842b2b6cfe1b", - "name": "vector-square-remove", - "codepoint": "F18DC", - "aliases": [ - "vector-square-delete" - ], - "styles": [ - "remove" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Vector" - ], - "author": "Andrea Antonello" - }, - { - "id": "CE6EAE27-922A-48B9-83AF-5C333B20724F", - "baseIconId": "CE6EAE27-922A-48B9-83AF-5C333B20724F", - "name": "vector-triangle", - "codepoint": "F0563", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Vector", - "Geographic Information System" - ], - "author": "Simran" - }, - { - "id": "2FD284B6-3DC1-4733-B08E-BAD459E87B87", - "baseIconId": "2FD284B6-3DC1-4733-B08E-BAD459E87B87", - "name": "vector-union", - "codepoint": "F0564", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Vector", - "Geographic Information System" - ], - "author": "Simran" - }, - { - "id": "551637A8-2091-4439-9710-71199B7AC0C1", - "baseIconId": "551637A8-2091-4439-9710-71199B7AC0C1", - "name": "vhs", - "codepoint": "F0A1B", - "aliases": [ - "video-home-system", - "vhs-cassette", - "vhs-tape" - ], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "GreenTurtwig" - }, - { - "id": "68E64FD4-A020-4DEF-B2CB-5EA5BAA80E42", - "baseIconId": "68E64FD4-A020-4DEF-B2CB-5EA5BAA80E42", - "name": "vibrate", - "codepoint": "F0566", - "aliases": [ - "vibration" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "36F2725C-4346-4EB3-9AA8-288DC3E27AFD", - "baseIconId": "68E64FD4-A020-4DEF-B2CB-5EA5BAA80E42", - "name": "vibrate-off", - "codepoint": "F0CD9", - "aliases": [], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "B1337ECC-EF1F-481B-9E75-6A8DB7A01BB9", - "baseIconId": "B1337ECC-EF1F-481B-9E75-6A8DB7A01BB9", - "name": "video", - "codepoint": "F0567", - "aliases": [ - "videocam" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Video \/ Movie", - "Home Automation" - ], - "author": "Google" - }, - { - "id": "0E676B63-2A2E-4182-91BD-F2A5D8D89595", - "baseIconId": "0E676B63-2A2E-4182-91BD-F2A5D8D89595", - "name": "video-2d", - "codepoint": "F1A1C", - "aliases": [], - "styles": [], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Austin Andrews" - }, - { - "id": "3F4D3E00-72CA-4167-A269-F9DD1A94540D", - "baseIconId": "3F4D3E00-72CA-4167-A269-F9DD1A94540D", - "name": "video-3d", - "codepoint": "F07FD", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Austin Andrews" - }, - { - "id": "F9B5EF59-C66B-445A-B37D-0CD3FDD5F47A", - "baseIconId": "3F4D3E00-72CA-4167-A269-F9DD1A94540D", - "name": "video-3d-off", - "codepoint": "F13D9", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "cezar-darac" - }, - { - "id": "29FC25BE-88B2-4311-ACD7-F85EFB43D0E9", - "baseIconId": "3F4D3E00-72CA-4167-A269-F9DD1A94540D", - "name": "video-3d-variant", - "codepoint": "F0ED1", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Matther Miller" - }, - { - "id": "FD1999E4-4780-48E5-8F18-606871BA0581", - "baseIconId": "FD1999E4-4780-48E5-8F18-606871BA0581", - "name": "video-4k-box", - "codepoint": "F083E", - "aliases": [ - "4k" - ], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "F02BE782-F323-40E5-B245-DF7B6AFB2B15", - "baseIconId": "B1337ECC-EF1F-481B-9E75-6A8DB7A01BB9", - "name": "video-account", - "codepoint": "F0919", - "aliases": [ - "video-user" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Account \/ User", - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "9E0AEA4A-7A90-43F7-8A7F-D49F374F11FF", - "baseIconId": "B1337ECC-EF1F-481B-9E75-6A8DB7A01BB9", - "name": "video-box", - "codepoint": "F00FD", - "aliases": [], - "styles": [ - "box" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "A8AD0C27-54CD-4362-A862-C6865B1EE750", - "baseIconId": "B1337ECC-EF1F-481B-9E75-6A8DB7A01BB9", - "name": "video-box-off", - "codepoint": "F00FE", - "aliases": [], - "styles": [ - "box", - "off" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "9E4CFE98-3E4E-4C70-B1F1-7316F21427E3", - "baseIconId": "B1337ECC-EF1F-481B-9E75-6A8DB7A01BB9", - "name": "video-check", - "codepoint": "F1069", - "aliases": [], - "styles": [ - "check" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Michael Irigoyen" - }, - { - "id": "206175B7-4215-412C-A30B-979BADCCCEE3", - "baseIconId": "B1337ECC-EF1F-481B-9E75-6A8DB7A01BB9", - "name": "video-check-outline", - "codepoint": "F106A", - "aliases": [], - "styles": [ - "check", - "outline" - ], - "version": "4.1.95", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C8098652-E839-4E39-8465-8488B2D6502E", - "baseIconId": "B1337ECC-EF1F-481B-9E75-6A8DB7A01BB9", - "name": "video-high-definition", - "codepoint": "F152E", - "aliases": [], - "styles": [ - "variant" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1A06058D-FA25-4AAE-A7C8-225CD0D79F06", - "baseIconId": "B1337ECC-EF1F-481B-9E75-6A8DB7A01BB9", - "name": "video-image", - "codepoint": "F091A", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "D7B7AA15-66CB-4AA5-AD75-E96B78B89AB9", - "baseIconId": "D7B7AA15-66CB-4AA5-AD75-E96B78B89AB9", - "name": "video-input-antenna", - "codepoint": "F083F", - "aliases": [ - "settings-input-antenna" - ], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "55F413A7-319D-4419-87D4-97FF9ED96791", - "baseIconId": "55F413A7-319D-4419-87D4-97FF9ED96791", - "name": "video-input-component", - "codepoint": "F0840", - "aliases": [ - "video-input-composite", - "settings-input-component", - "settings-input-composite", - "video-input-ypbpr", - "rca" - ], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "D371C4A6-40A8-4C03-95DA-2ACF2A5ABC4B", - "baseIconId": "D371C4A6-40A8-4C03-95DA-2ACF2A5ABC4B", - "name": "video-input-hdmi", - "codepoint": "F0841", - "aliases": [ - "settings-input-hdmi" - ], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "7F6FD88C-27A6-4E0D-BD8D-FDF34AAEB1A9", - "baseIconId": "7F6FD88C-27A6-4E0D-BD8D-FDF34AAEB1A9", - "name": "video-input-scart", - "codepoint": "F0F8C", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "GreenTurtwig" - }, - { - "id": "EA3FB3E6-9696-4F01-AD34-5253E19EA34C", - "baseIconId": "EA3FB3E6-9696-4F01-AD34-5253E19EA34C", - "name": "video-input-svideo", - "codepoint": "F0842", - "aliases": [ - "settings-input-svideo" - ], - "styles": [], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "08B1B983-F8CC-4CE2-B9FA-4A292766BE31", - "baseIconId": "B1337ECC-EF1F-481B-9E75-6A8DB7A01BB9", - "name": "video-marker", - "codepoint": "F19A9", - "aliases": [ - "video-location" - ], - "styles": [ - "marker" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Video \/ Movie", - "Navigation" - ], - "author": "Simran" - }, - { - "id": "D2C8C1CD-F565-4549-8030-8549512C6905", - "baseIconId": "B1337ECC-EF1F-481B-9E75-6A8DB7A01BB9", - "name": "video-marker-outline", - "codepoint": "F19AA", - "aliases": [ - "video-location-outline" - ], - "styles": [ - "marker", - "outline" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Video \/ Movie", - "Navigation" - ], - "author": "Simran" - }, - { - "id": "9453CFB6-B0CA-469B-87A0-48C51EA1B64D", - "baseIconId": "B1337ECC-EF1F-481B-9E75-6A8DB7A01BB9", - "name": "video-minus", - "codepoint": "F09B2", - "aliases": [ - "video-remove" - ], - "styles": [ - "minus" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "DEC0A182-36E6-47D2-ABC4-AF717946C412", - "baseIconId": "B1337ECC-EF1F-481B-9E75-6A8DB7A01BB9", - "name": "video-minus-outline", - "codepoint": "F02BA", - "aliases": [], - "styles": [ - "minus", - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F4C3A814-205E-4F0A-9B3D-34B5777A4237", - "baseIconId": "B1337ECC-EF1F-481B-9E75-6A8DB7A01BB9", - "name": "video-off", - "codepoint": "F0568", - "aliases": [ - "videocam-off" - ], - "styles": [ - "off" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Video \/ Movie", - "Home Automation" - ], - "author": "Google" - }, - { - "id": "4CD11F14-5EB9-4532-910A-D9329CB1CE48", - "baseIconId": "B1337ECC-EF1F-481B-9E75-6A8DB7A01BB9", - "name": "video-off-outline", - "codepoint": "F0BDB", - "aliases": [ - "videocam-off-outline" - ], - "styles": [ - "off", - "outline" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "993D76B5-D3E5-4360-986D-3F13A04F29A7", - "baseIconId": "B1337ECC-EF1F-481B-9E75-6A8DB7A01BB9", - "name": "video-outline", - "codepoint": "F0BDC", - "aliases": [ - "videocam-outline" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "7C399890-F840-44F0-834E-409C1D9F1337", - "baseIconId": "B1337ECC-EF1F-481B-9E75-6A8DB7A01BB9", - "name": "video-plus", - "codepoint": "F09B3", - "aliases": [ - "video-call", - "video-add" - ], - "styles": [ - "plus" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "66BF0ABD-9688-49F1-B260-382B15D53432", - "baseIconId": "B1337ECC-EF1F-481B-9E75-6A8DB7A01BB9", - "name": "video-plus-outline", - "codepoint": "F01D3", - "aliases": [], - "styles": [ - "outline", - "plus" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DF10672F-0064-47B8-A327-797095F0F6A1", - "baseIconId": "DF10672F-0064-47B8-A327-797095F0F6A1", - "name": "video-stabilization", - "codepoint": "F091B", - "aliases": [ - "video-stabilisation" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "EAEE3AC5-7C61-4513-9AB1-692E20E99F9E", - "baseIconId": "B1337ECC-EF1F-481B-9E75-6A8DB7A01BB9", - "name": "video-standard-definition", - "codepoint": "F1CA0", - "aliases": [ - "video-sd", - "video-quality-sd" - ], - "styles": [], - "version": "7.3.96", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Michael Richins" - }, - { - "id": "465D18D8-ABEA-4D2B-8A05-C6555C36803F", - "baseIconId": "B1337ECC-EF1F-481B-9E75-6A8DB7A01BB9", - "name": "video-switch", - "codepoint": "F0569", - "aliases": [ - "switch-video" - ], - "styles": [ - "arrow" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "FF441E7F-8F7E-4B03-876E-FD65C2A847C9", - "baseIconId": "B1337ECC-EF1F-481B-9E75-6A8DB7A01BB9", - "name": "video-switch-outline", - "codepoint": "F0790", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "2.0.46", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Google" - }, - { - "id": "1A8E4CC1-97A7-4593-BE20-0E9C5686C2D3", - "baseIconId": "B1337ECC-EF1F-481B-9E75-6A8DB7A01BB9", - "name": "video-vintage", - "codepoint": "F0A1C", - "aliases": [ - "video-film", - "video-classic" - ], - "styles": [ - "variant" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Mike G Chambers" - }, - { - "id": "CB8F2A33-9238-40E0-9B1E-935586CF1FBA", - "baseIconId": "B1337ECC-EF1F-481B-9E75-6A8DB7A01BB9", - "name": "video-wireless", - "codepoint": "F0ED2", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Michael Irigoyen" - }, - { - "id": "178F6478-2B6F-43B7-AC0C-050481FA0BF2", - "baseIconId": "B1337ECC-EF1F-481B-9E75-6A8DB7A01BB9", - "name": "video-wireless-outline", - "codepoint": "F0ED3", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "3.7.94", - "deprecated": false, - "tags": [ - "Video \/ Movie" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E0B1CD58-0403-430F-AA9A-30B9E0122314", - "baseIconId": "E0B1CD58-0403-430F-AA9A-30B9E0122314", - "name": "view-agenda", - "codepoint": "F056A", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "33C2B7B8-82DB-41C9-8B4E-2EFEE60C0D6E", - "baseIconId": "E0B1CD58-0403-430F-AA9A-30B9E0122314", - "name": "view-agenda-outline", - "codepoint": "F11D8", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "B3E07750-AF3A-49FA-BA72-7CE5D4A3C7AB", - "baseIconId": "B3E07750-AF3A-49FA-BA72-7CE5D4A3C7AB", - "name": "view-array", - "codepoint": "F056B", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "C9B8EF68-CB6B-4B4E-BEEC-4BC30C04BE5F", - "baseIconId": "B3E07750-AF3A-49FA-BA72-7CE5D4A3C7AB", - "name": "view-array-outline", - "codepoint": "F1485", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "99C269BA-B1CD-4BC0-9BCC-7C5D95F881AC", - "baseIconId": "99C269BA-B1CD-4BC0-9BCC-7C5D95F881AC", - "name": "view-carousel", - "codepoint": "F056C", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "27DE61C6-7B1F-429C-A396-AF9895CE5AD0", - "baseIconId": "99C269BA-B1CD-4BC0-9BCC-7C5D95F881AC", - "name": "view-carousel-outline", - "codepoint": "F1486", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "163CB77E-4663-4F8E-B73E-20FCC5C5BED3", - "baseIconId": "163CB77E-4663-4F8E-B73E-20FCC5C5BED3", - "name": "view-column", - "codepoint": "F056D", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "73732965-3E0C-4746-8D18-785E318F005D", - "baseIconId": "163CB77E-4663-4F8E-B73E-20FCC5C5BED3", - "name": "view-column-outline", - "codepoint": "F1487", - "aliases": [], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "CBBB6642-EA10-4B28-8D7B-7FD2E5252A2C", - "baseIconId": "CBBB6642-EA10-4B28-8D7B-7FD2E5252A2C", - "name": "view-comfy", - "codepoint": "F0E6A", - "aliases": [], - "styles": [], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "31233545-9224-4135-87F7-7B1257F23767", - "baseIconId": "CBBB6642-EA10-4B28-8D7B-7FD2E5252A2C", - "name": "view-comfy-outline", - "codepoint": "F1488", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "CD9C04DB-710E-4FD1-A679-535C5EF50BFB", - "baseIconId": "CD9C04DB-710E-4FD1-A679-535C5EF50BFB", - "name": "view-compact", - "codepoint": "F0E6B", - "aliases": [], - "styles": [], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "8FD1F3B0-682D-47BD-A4C8-C2526C674229", - "baseIconId": "CD9C04DB-710E-4FD1-A679-535C5EF50BFB", - "name": "view-compact-outline", - "codepoint": "F0E6C", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "B6D8B213-DC5F-40D3-97E4-EFA9B499A19D", - "baseIconId": "B6D8B213-DC5F-40D3-97E4-EFA9B499A19D", - "name": "view-dashboard", - "codepoint": "F056E", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "F55B37EB-4DE9-49E8-88BC-1D339FA3EF4D", - "baseIconId": "B6D8B213-DC5F-40D3-97E4-EFA9B499A19D", - "name": "view-dashboard-edit", - "codepoint": "F1947", - "aliases": [], - "styles": [ - "edit" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "View", - "Edit \/ Modify" - ], - "author": "Michael Irigoyen" - }, - { - "id": "89F1A6E9-103A-4ABE-8A01-4A60A7781734", - "baseIconId": "B6D8B213-DC5F-40D3-97E4-EFA9B499A19D", - "name": "view-dashboard-edit-outline", - "codepoint": "F1948", - "aliases": [], - "styles": [ - "edit", - "outline" - ], - "version": "6.4.95", - "deprecated": false, - "tags": [ - "View", - "Edit \/ Modify" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B44B2BB0-0BF9-42B7-BF70-ECC7FF102520", - "baseIconId": "B6D8B213-DC5F-40D3-97E4-EFA9B499A19D", - "name": "view-dashboard-outline", - "codepoint": "F0A1D", - "aliases": [], - "styles": [ - "outline" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "26B319A5-9CF7-4637-94A2-DB633BD22ABA", - "baseIconId": "B6D8B213-DC5F-40D3-97E4-EFA9B499A19D", - "name": "view-dashboard-variant", - "codepoint": "F0843", - "aliases": [], - "styles": [ - "variant" - ], - "version": "2.1.19", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "F05DF9FC-A193-444F-8B6E-24862443BA63", - "baseIconId": "B6D8B213-DC5F-40D3-97E4-EFA9B499A19D", - "name": "view-dashboard-variant-outline", - "codepoint": "F1489", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Michael Irigoyen" - }, - { - "id": "AD31242E-143E-475E-822B-E363C9E9F2F4", - "baseIconId": "AD31242E-143E-475E-822B-E363C9E9F2F4", - "name": "view-day", - "codepoint": "F056F", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "B478F822-6D6B-4A47-BCFE-0236D5766711", - "baseIconId": "AD31242E-143E-475E-822B-E363C9E9F2F4", - "name": "view-day-outline", - "codepoint": "F148A", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "39D66F7E-C38A-4CDC-9A50-6C4A60F70B82", - "baseIconId": "39D66F7E-C38A-4CDC-9A50-6C4A60F70B82", - "name": "view-gallery", - "codepoint": "F1888", - "aliases": [], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Saulo Pratti" - }, - { - "id": "EBE654D8-89C1-4DAC-92E5-3534C55281F0", - "baseIconId": "39D66F7E-C38A-4CDC-9A50-6C4A60F70B82", - "name": "view-gallery-outline", - "codepoint": "F1889", - "aliases": [], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E788F50B-B654-4AEC-ACD7-6E9F5AE8B789", - "baseIconId": "E788F50B-B654-4AEC-ACD7-6E9F5AE8B789", - "name": "view-grid", - "codepoint": "F0570", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Simran" - }, - { - "id": "666FC249-C056-4311-8548-D7F648A53DD9", - "baseIconId": "666FC249-C056-4311-8548-D7F648A53DD9", - "name": "view-grid-compact", - "codepoint": "F1C61", - "aliases": [], - "styles": [], - "version": "7.2.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "33566CF8-43DC-48FF-9891-557946141997", - "baseIconId": "E788F50B-B654-4AEC-ACD7-6E9F5AE8B789", - "name": "view-grid-outline", - "codepoint": "F11D9", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Michael Richins" - }, - { - "id": "74FA0104-E5C4-4FE8-A9CD-45DC574D64C9", - "baseIconId": "74FA0104-E5C4-4FE8-A9CD-45DC574D64C9", - "name": "view-grid-plus", - "codepoint": "F0F8D", - "aliases": [ - "view-grid-add" - ], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "120B7778-EAE8-444B-AEDF-9F7793BF6A35", - "baseIconId": "74FA0104-E5C4-4FE8-A9CD-45DC574D64C9", - "name": "view-grid-plus-outline", - "codepoint": "F11DA", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Michael Richins" - }, - { - "id": "86DC0560-F109-4301-ACC7-46A6F74F441A", - "baseIconId": "86DC0560-F109-4301-ACC7-46A6F74F441A", - "name": "view-headline", - "codepoint": "F0571", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "D9FCEB1D-004D-442E-A979-320101768F99", - "baseIconId": "D9FCEB1D-004D-442E-A979-320101768F99", - "name": "view-list", - "codepoint": "F0572", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "FA9A5868-724C-429E-897B-72AD25186E2D", - "baseIconId": "D9FCEB1D-004D-442E-A979-320101768F99", - "name": "view-list-outline", - "codepoint": "F148B", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "467C52AB-0DEA-43AF-BAE4-76FD66D6C7F0", - "baseIconId": "467C52AB-0DEA-43AF-BAE4-76FD66D6C7F0", - "name": "view-module", - "codepoint": "F0573", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "69AAF987-9993-4E5D-952D-ED815244B1F6", - "baseIconId": "467C52AB-0DEA-43AF-BAE4-76FD66D6C7F0", - "name": "view-module-outline", - "codepoint": "F148C", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "A085C7C7-F5C5-441C-84C0-05EB3B6A8767", - "baseIconId": "A085C7C7-F5C5-441C-84C0-05EB3B6A8767", - "name": "view-parallel", - "codepoint": "F0728", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C14FCE1C-4ACB-4876-94AA-93C2E5DB362B", - "baseIconId": "A085C7C7-F5C5-441C-84C0-05EB3B6A8767", - "name": "view-parallel-outline", - "codepoint": "F148D", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Michael Irigoyen" - }, - { - "id": "F3640F38-D10F-42C8-8A68-751D965B1F65", - "baseIconId": "F3640F38-D10F-42C8-8A68-751D965B1F65", - "name": "view-quilt", - "codepoint": "F0574", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "2797C36A-5A29-4679-AAB7-4F4832FA7DC5", - "baseIconId": "F3640F38-D10F-42C8-8A68-751D965B1F65", - "name": "view-quilt-outline", - "codepoint": "F148E", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "350F115F-0C20-4AB3-8206-81D2A25A2EF4", - "baseIconId": "350F115F-0C20-4AB3-8206-81D2A25A2EF4", - "name": "view-sequential", - "codepoint": "F0729", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1B8CD437-1CE6-4493-9C57-5E367B47A0BF", - "baseIconId": "350F115F-0C20-4AB3-8206-81D2A25A2EF4", - "name": "view-sequential-outline", - "codepoint": "F148F", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7FE1CF30-B16F-4626-8450-1881934D2FDF", - "baseIconId": "7FE1CF30-B16F-4626-8450-1881934D2FDF", - "name": "view-split-horizontal", - "codepoint": "F0BCB", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "25E0A405-7A96-4159-8A63-9088BFA330F1", - "baseIconId": "25E0A405-7A96-4159-8A63-9088BFA330F1", - "name": "view-split-vertical", - "codepoint": "F0BCC", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "1B42A4BC-3B55-4C21-BDEF-94DC970012F9", - "baseIconId": "1B42A4BC-3B55-4C21-BDEF-94DC970012F9", - "name": "view-stream", - "codepoint": "F0575", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "26CE4165-E7A4-425A-8175-8A8C392F08D3", - "baseIconId": "1B42A4BC-3B55-4C21-BDEF-94DC970012F9", - "name": "view-stream-outline", - "codepoint": "F1490", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "8ED74862-BA7D-43FC-91EA-283D655B451F", - "baseIconId": "8ED74862-BA7D-43FC-91EA-283D655B451F", - "name": "view-week", - "codepoint": "F0576", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "163700DD-5F95-4BEC-82AC-7E5F1FD20BC8", - "baseIconId": "8ED74862-BA7D-43FC-91EA-283D655B451F", - "name": "view-week-outline", - "codepoint": "F1491", - "aliases": [], - "styles": [ - "outline" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "View" - ], - "author": "Google" - }, - { - "id": "0FF21C45-66B4-492A-829C-9F46778323A9", - "baseIconId": "0FF21C45-66B4-492A-829C-9F46778323A9", - "name": "vimeo", - "codepoint": "F0577", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "D6702650-990F-416E-BF27-F6F2B86BFB8D", - "baseIconId": "D6702650-990F-416E-BF27-F6F2B86BFB8D", - "name": "violin", - "codepoint": "F060F", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Music" - ], - "author": "Google" - }, - { - "id": "AE3F0BAE-DE0A-4BFE-82B6-3268D1B21006", - "baseIconId": "AE3F0BAE-DE0A-4BFE-82B6-3268D1B21006", - "name": "virtual-reality", - "codepoint": "F0894", - "aliases": [ - "vr" - ], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "B413B8B5-E20E-41BF-B6F1-696050D47421", - "baseIconId": "B413B8B5-E20E-41BF-B6F1-696050D47421", - "name": "virus", - "codepoint": "F13B6", - "aliases": [], - "styles": [], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Science", - "Medical \/ Hospital" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7DE3EC50-BFF3-4402-85ED-DC43EE995DCB", - "baseIconId": "B413B8B5-E20E-41BF-B6F1-696050D47421", - "name": "virus-off", - "codepoint": "F18E1", - "aliases": [], - "styles": [ - "off" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E2FA3916-A37A-4BB9-8892-DD0079581DAC", - "baseIconId": "B413B8B5-E20E-41BF-B6F1-696050D47421", - "name": "virus-off-outline", - "codepoint": "F18E2", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Science" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0F7EE89B-C9E3-4365-B9DC-D3A28D328F66", - "baseIconId": "B413B8B5-E20E-41BF-B6F1-696050D47421", - "name": "virus-outline", - "codepoint": "F13B7", - "aliases": [], - "styles": [], - "version": "5.1.45", - "deprecated": false, - "tags": [ - "Science", - "Medical \/ Hospital" - ], - "author": "Michael Irigoyen" - }, - { - "id": "3695CD89-BCB2-4D10-A8C5-9190F31F7C92", - "baseIconId": "3695CD89-BCB2-4D10-A8C5-9190F31F7C92", - "name": "vlc", - "codepoint": "F057C", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "04CEF7C6-E77F-4A66-89F3-2F5B544C482B", - "baseIconId": "04CEF7C6-E77F-4A66-89F3-2F5B544C482B", - "name": "voicemail", - "codepoint": "F057D", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "F319008C-CAC3-4D75-8DED-8164D252A015", - "baseIconId": "F319008C-CAC3-4D75-8DED-8164D252A015", - "name": "volcano", - "codepoint": "F1A83", - "aliases": [ - "eruption" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Nature" - ], - "author": "Google" - }, - { - "id": "EF1E667D-78DD-4460-BD7B-B5E7A70BDF54", - "baseIconId": "F319008C-CAC3-4D75-8DED-8164D252A015", - "name": "volcano-outline", - "codepoint": "F1A84", - "aliases": [ - "eruption-outline" - ], - "styles": [ - "outline" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Nature" - ], - "author": "Google" - }, - { - "id": "3978DABC-FC98-4D3E-A971-88716AD5D600", - "baseIconId": "3978DABC-FC98-4D3E-A971-88716AD5D600", - "name": "volleyball", - "codepoint": "F09B4", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Google" - }, - { - "id": "CF2F1BF8-9CBF-41EC-91EF-26B8F2B6A80E", - "baseIconId": "CE6E08CF-2476-4BBB-AF91-6D081F1CBEF9", - "name": "volume-equal", - "codepoint": "F1B10", - "aliases": [], - "styles": [], - "version": "6.9.96", - "deprecated": false, - "tags": [ - "Audio" - ], - "author": "Ron Schaeffer" - }, - { - "id": "CE6E08CF-2476-4BBB-AF91-6D081F1CBEF9", - "baseIconId": "213621FE-E003-4B40-9385-B9BCE19DB035", - "name": "volume-high", - "codepoint": "F057E", - "aliases": [ - "audio", - "speaker", - "speakerphone" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio", - "Home Automation", - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "213621FE-E003-4B40-9385-B9BCE19DB035", - "baseIconId": "213621FE-E003-4B40-9385-B9BCE19DB035", - "name": "volume-low", - "codepoint": "F057F", - "aliases": [ - "audio", - "speaker" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio", - "Home Automation", - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "0E37E506-8AD8-42C7-87E4-F8A2AEE03972", - "baseIconId": "213621FE-E003-4B40-9385-B9BCE19DB035", - "name": "volume-medium", - "codepoint": "F0580", - "aliases": [ - "audio", - "speaker" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio", - "Home Automation", - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "D8BFD10F-6D55-4EE1-8D30-5B5CB064CBBF", - "baseIconId": "213621FE-E003-4B40-9385-B9BCE19DB035", - "name": "volume-minus", - "codepoint": "F075E", - "aliases": [ - "volume-decrease" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Audio", - "Home Automation", - "Cellphone \/ Phone" - ], - "author": "Austin Andrews" - }, - { - "id": "A78C1259-0DB5-4793-9EA9-DD69FEB337A8", - "baseIconId": "213621FE-E003-4B40-9385-B9BCE19DB035", - "name": "volume-mute", - "codepoint": "F075F", - "aliases": [], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Audio", - "Cellphone \/ Phone" - ], - "author": "Austin Andrews" - }, - { - "id": "74834C94-6AE1-493B-A9FB-4EE2A8FD989C", - "baseIconId": "213621FE-E003-4B40-9385-B9BCE19DB035", - "name": "volume-off", - "codepoint": "F0581", - "aliases": [ - "mute", - "audio-off", - "speaker-off", - "speakerphone-off" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Audio", - "Home Automation", - "Cellphone \/ Phone" - ], - "author": "Google" - }, - { - "id": "DECF3A51-F972-4D34-815D-D103BCE3888B", - "baseIconId": "213621FE-E003-4B40-9385-B9BCE19DB035", - "name": "volume-plus", - "codepoint": "F075D", - "aliases": [ - "volume-increase" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Audio", - "Home Automation", - "Cellphone \/ Phone" - ], - "author": "Austin Andrews" - }, - { - "id": "95D3325D-257A-433C-8B2E-D674C21BA268", - "baseIconId": "213621FE-E003-4B40-9385-B9BCE19DB035", - "name": "volume-source", - "codepoint": "F1120", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Audio" - ], - "author": "Google" - }, - { - "id": "E5699A8D-84C4-41F2-A48A-397F8153B4A1", - "baseIconId": "213621FE-E003-4B40-9385-B9BCE19DB035", - "name": "volume-variant-off", - "codepoint": "F0E08", - "aliases": [], - "styles": [ - "off" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Audio", - "Cellphone \/ Phone" - ], - "author": "Andrew Nenakhov" - }, - { - "id": "9CDA3BD8-77A5-4669-BFB7-785EECAE2FCA", - "baseIconId": "213621FE-E003-4B40-9385-B9BCE19DB035", - "name": "volume-vibrate", - "codepoint": "F1121", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Cellphone \/ Phone", - "Audio" - ], - "author": "Simran" - }, - { - "id": "61CDB722-3238-4F21-9A3F-77DC47A51755", - "baseIconId": "61CDB722-3238-4F21-9A3F-77DC47A51755", - "name": "vote", - "codepoint": "F0A1F", - "aliases": [ - "how-to-vote" - ], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "392D2435-0B0E-4CDA-A542-FAB319411B8A", - "baseIconId": "61CDB722-3238-4F21-9A3F-77DC47A51755", - "name": "vote-outline", - "codepoint": "F0A20", - "aliases": [ - "how-to-vote-outline" - ], - "styles": [ - "outline" - ], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "A9EE1532-2932-4F71-95DC-1EFB56BA4DFC", - "baseIconId": "A9EE1532-2932-4F71-95DC-1EFB56BA4DFC", - "name": "vpn", - "codepoint": "F0582", - "aliases": [ - "virtual-private-network" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "CB3BC222-1858-41C6-A488-0C2BB1FB2EA8", - "baseIconId": "CB3BC222-1858-41C6-A488-0C2BB1FB2EA8", - "name": "vuejs", - "codepoint": "F0844", - "aliases": [ - "vue-js" - ], - "styles": [], - "version": "2.1.19", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Developer \/ Languages" - ], - "author": "Contributors" - }, - { - "id": "2603306D-9691-469C-B468-6E53FFA2D0DE", - "baseIconId": "2603306D-9691-469C-B468-6E53FFA2D0DE", - "name": "vuetify", - "codepoint": "F0E6D", - "aliases": [], - "styles": [], - "version": "3.6.95", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "DA42DA16-21E0-4A08-89E4-F634EBBCF85A", - "baseIconId": "DA42DA16-21E0-4A08-89E4-F634EBBCF85A", - "name": "walk", - "codepoint": "F0583", - "aliases": [ - "directions-walk", - "walker", - "walking", - "human-walk" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Sport", - "Transportation + Other", - "People \/ Family" - ], - "author": "Google" - }, - { - "id": "5DAB0112-3768-4ADC-8796-A88B4473FE56", - "baseIconId": "5DAB0112-3768-4ADC-8796-A88B4473FE56", - "name": "wall", - "codepoint": "F07FE", - "aliases": [ - "bricks" - ], - "styles": [], - "version": "2.0.46", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "436644E2-0AFD-47DE-A15F-EF6BD02C5F5A", - "baseIconId": "5DAB0112-3768-4ADC-8796-A88B4473FE56", - "name": "wall-fire", - "codepoint": "F1A11", - "aliases": [ - "firewall" - ], - "styles": [], - "version": "6.6.96", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "Austin Andrews" - }, - { - "id": "EABFE131-4690-406C-9042-EFCA33E97A00", - "baseIconId": "EABFE131-4690-406C-9042-EFCA33E97A00", - "name": "wall-sconce", - "codepoint": "F091C", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "4F0EF72A-F2A8-4BFA-9E6F-279E159FC888", - "baseIconId": "4F0EF72A-F2A8-4BFA-9E6F-279E159FC888", - "name": "wall-sconce-flat", - "codepoint": "F091D", - "aliases": [ - "ceiling-light-flat", - "pot-light-flat" - ], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "46E92A75-74CB-4DCD-A3B0-0D7B685E49E4", - "baseIconId": "4F0EF72A-F2A8-4BFA-9E6F-279E159FC888", - "name": "wall-sconce-flat-outline", - "codepoint": "F17C9", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Teodor Sandu" - }, - { - "id": "DEAC0604-6FD1-496C-99E1-74068FC27713", - "baseIconId": "4F0EF72A-F2A8-4BFA-9E6F-279E159FC888", - "name": "wall-sconce-flat-variant", - "codepoint": "F041C", - "aliases": [ - "pot-light-flat-variant" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "591CE496-AFCE-4274-A15F-E7574307D6FD", - "baseIconId": "4F0EF72A-F2A8-4BFA-9E6F-279E159FC888", - "name": "wall-sconce-flat-variant-outline", - "codepoint": "F17CA", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Teodor Sandu" - }, - { - "id": "E033BCF1-3B41-4885-9700-CE4B85A7106C", - "baseIconId": "EABFE131-4690-406C-9042-EFCA33E97A00", - "name": "wall-sconce-outline", - "codepoint": "F17CB", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "05EDCFBB-803B-4DA9-BDC5-17A4E43DE584", - "baseIconId": "05EDCFBB-803B-4DA9-BDC5-17A4E43DE584", - "name": "wall-sconce-round", - "codepoint": "F0748", - "aliases": [ - "pot-light-round" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "A91CF4C0-CC99-4429-BE37-54774E420A9F", - "baseIconId": "05EDCFBB-803B-4DA9-BDC5-17A4E43DE584", - "name": "wall-sconce-round-outline", - "codepoint": "F17CC", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D599F298-0E64-47A7-AD5B-B1AD5CEE1B1E", - "baseIconId": "05EDCFBB-803B-4DA9-BDC5-17A4E43DE584", - "name": "wall-sconce-round-variant", - "codepoint": "F091E", - "aliases": [ - "pot-light-round-variant" - ], - "styles": [ - "variant" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "6A9EE0EE-A559-4A78-9313-0B7DED29C757", - "baseIconId": "05EDCFBB-803B-4DA9-BDC5-17A4E43DE584", - "name": "wall-sconce-round-variant-outline", - "codepoint": "F17CD", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C5ABA786-D897-4770-AA78-CE4CB2A9230E", - "baseIconId": "C5ABA786-D897-4770-AA78-CE4CB2A9230E", - "name": "wallet", - "codepoint": "F0584", - "aliases": [ - "account-balance-wallet" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Google" - }, - { - "id": "41CE57C0-CF95-4033-AAC3-8EC7C35D7A86", - "baseIconId": "C5ABA786-D897-4770-AA78-CE4CB2A9230E", - "name": "wallet-bifold", - "codepoint": "F1C58", - "aliases": [], - "styles": [], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Jeff Anders" - }, - { - "id": "63929062-6B7B-4683-BC95-376A60069FB2", - "baseIconId": "C5ABA786-D897-4770-AA78-CE4CB2A9230E", - "name": "wallet-bifold-outline", - "codepoint": "F1C59", - "aliases": [], - "styles": [ - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Banking", - "Currency" - ], - "author": "Jeff Anders" - }, - { - "id": "0D4DD4F1-0915-4D3D-8F21-A96C2DDAF6E0", - "baseIconId": "C5ABA786-D897-4770-AA78-CE4CB2A9230E", - "name": "wallet-giftcard", - "codepoint": "F0585", - "aliases": [ - "card-giftcard", - "redeem" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Shopping", - "Banking" - ], - "author": "Google" - }, - { - "id": "BBE325B3-416A-4160-8E95-162B076B8839", - "baseIconId": "C5ABA786-D897-4770-AA78-CE4CB2A9230E", - "name": "wallet-membership", - "codepoint": "F0586", - "aliases": [ - "card-membership" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "BE3A6C7B-398B-4B7D-B7F3-7EDE9220F489", - "baseIconId": "C5ABA786-D897-4770-AA78-CE4CB2A9230E", - "name": "wallet-outline", - "codepoint": "F0BDD", - "aliases": [ - "account-balance-wallet-outline" - ], - "styles": [ - "outline" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Currency", - "Banking" - ], - "author": "Google" - }, - { - "id": "A53A1EF4-13E1-4807-A20E-A0DA2F52392D", - "baseIconId": "C5ABA786-D897-4770-AA78-CE4CB2A9230E", - "name": "wallet-plus", - "codepoint": "F0F8E", - "aliases": [ - "wallet-add" - ], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "GreenTurtwig" - }, - { - "id": "1BDED2D9-31E7-457D-AA32-6CE990645545", - "baseIconId": "C5ABA786-D897-4770-AA78-CE4CB2A9230E", - "name": "wallet-plus-outline", - "codepoint": "F0F8F", - "aliases": [ - "wallet-add-outline" - ], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Banking" - ], - "author": "GreenTurtwig" - }, - { - "id": "790A03D3-B40A-468A-A6D6-CA3679FDBD8D", - "baseIconId": "C5ABA786-D897-4770-AA78-CE4CB2A9230E", - "name": "wallet-travel", - "codepoint": "F0587", - "aliases": [ - "card-travel" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "350FE9C5-BFF1-462D-9318-BA2DDC55E11E", - "baseIconId": "350FE9C5-BFF1-462D-9318-BA2DDC55E11E", - "name": "wallpaper", - "codepoint": "F0E09", - "aliases": [], - "styles": [], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "0E468855-81AF-4CA1-ACF0-D166D07F188C", - "baseIconId": "0E468855-81AF-4CA1-ACF0-D166D07F188C", - "name": "wan", - "codepoint": "F0588", - "aliases": [ - "wide-area-network" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "A6E4DFBB-920D-4A21-AE54-6378FEBDD767", - "baseIconId": "A6E4DFBB-920D-4A21-AE54-6378FEBDD767", - "name": "wardrobe", - "codepoint": "F0F90", - "aliases": [ - "closet" - ], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "A1AA70DE-C9FD-4791-91D0-27FC025F7A81", - "baseIconId": "A6E4DFBB-920D-4A21-AE54-6378FEBDD767", - "name": "wardrobe-outline", - "codepoint": "F0F91", - "aliases": [ - "closet-outline" - ], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "DBF95B71-CC94-4672-8356-A09B96644694", - "baseIconId": "DBF95B71-CC94-4672-8356-A09B96644694", - "name": "warehouse", - "codepoint": "F0F81", - "aliases": [], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Places" - ], - "author": "Tarilonte" - }, - { - "id": "42C06A23-81D5-4EF6-8CFA-B4FBF66E7B17", - "baseIconId": "42C06A23-81D5-4EF6-8CFA-B4FBF66E7B17", - "name": "washing-machine", - "codepoint": "F072A", - "aliases": [ - "laundrette", - "local-laundry-service", - "laundry-room" - ], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "A00D0B3E-D24A-4BC9-915C-7B264B63F2F4", - "baseIconId": "42C06A23-81D5-4EF6-8CFA-B4FBF66E7B17", - "name": "washing-machine-alert", - "codepoint": "F11BC", - "aliases": [ - "laundry-room-alert" - ], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9B318E52-E7BE-4BE1-94DF-96CA020CE55D", - "baseIconId": "42C06A23-81D5-4EF6-8CFA-B4FBF66E7B17", - "name": "washing-machine-off", - "codepoint": "F11BD", - "aliases": [ - "laundry-room-off" - ], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "3389F6CD-3E46-47DE-B26A-341C1B65D6BF", - "baseIconId": "3389F6CD-3E46-47DE-B26A-341C1B65D6BF", - "name": "watch", - "codepoint": "F0589", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "Google" - }, - { - "id": "4FAFD079-50D1-4FD3-9427-CF0C08148D84", - "baseIconId": "3389F6CD-3E46-47DE-B26A-341C1B65D6BF", - "name": "watch-export", - "codepoint": "F058A", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "Austin Andrews" - }, - { - "id": "8213DABD-5CCB-415F-9457-A0A68B0F8179", - "baseIconId": "3389F6CD-3E46-47DE-B26A-341C1B65D6BF", - "name": "watch-export-variant", - "codepoint": "F0895", - "aliases": [], - "styles": [ - "arrow", - "variant" - ], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "Bradley Nelson" - }, - { - "id": "0D93B47F-C9F9-4C87-B63C-656184A87C74", - "baseIconId": "3389F6CD-3E46-47DE-B26A-341C1B65D6BF", - "name": "watch-import", - "codepoint": "F058B", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "Austin Andrews" - }, - { - "id": "383F089B-340D-43BD-A64C-4F81B8DF2A1F", - "baseIconId": "3389F6CD-3E46-47DE-B26A-341C1B65D6BF", - "name": "watch-import-variant", - "codepoint": "F0896", - "aliases": [], - "styles": [ - "arrow", - "variant" - ], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "Bradley Nelson" - }, - { - "id": "B6ADE62B-5D0C-4D24-87F4-9D8A0F1C7A04", - "baseIconId": "3389F6CD-3E46-47DE-B26A-341C1B65D6BF", - "name": "watch-variant", - "codepoint": "F0897", - "aliases": [], - "styles": [ - "variant" - ], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "GreenTurtwig" - }, - { - "id": "AE556BFC-A1A0-4B42-9123-B48DC7A3CBF3", - "baseIconId": "3389F6CD-3E46-47DE-B26A-341C1B65D6BF", - "name": "watch-vibrate", - "codepoint": "F06B1", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "GreenTurtwig" - }, - { - "id": "391763A7-BCF6-4C13-920B-115A7A5092B6", - "baseIconId": "3389F6CD-3E46-47DE-B26A-341C1B65D6BF", - "name": "watch-vibrate-off", - "codepoint": "F0CDA", - "aliases": [], - "styles": [], - "version": "3.2.89", - "deprecated": false, - "tags": [ - "Device \/ Tech" - ], - "author": "Michael Richins" - }, - { - "id": "17EEE663-92E4-4AB1-87FE-94F2CD296C4B", - "baseIconId": "17EEE663-92E4-4AB1-87FE-94F2CD296C4B", - "name": "water", - "codepoint": "F058C", - "aliases": [ - "drop", - "blood", - "water-drop", - "trans-fat", - "ink" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation", - "Health \/ Beauty", - "Food \/ Drink", - "Weather", - "Agriculture" - ], - "author": "Google" - }, - { - "id": "DDBEC0DB-97A9-439B-9FC0-5A05F51ED5E3", - "baseIconId": "17EEE663-92E4-4AB1-87FE-94F2CD296C4B", - "name": "water-alert", - "codepoint": "F1502", - "aliases": [ - "drop-alert", - "blood-alert", - "ink-alert" - ], - "styles": [ - "alert" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Alert \/ Error", - "Agriculture" - ], - "author": "Colton Wiscombe" - }, - { - "id": "4741B9A5-3E15-45B5-BD7B-B812C7E7644F", - "baseIconId": "17EEE663-92E4-4AB1-87FE-94F2CD296C4B", - "name": "water-alert-outline", - "codepoint": "F1503", - "aliases": [ - "drop-alert-outline", - "blood-alert-outline", - "ink-alert-outline" - ], - "styles": [ - "alert", - "outline" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Alert \/ Error", - "Agriculture" - ], - "author": "Colton Wiscombe" - }, - { - "id": "02A9C002-3B54-415E-8199-067139DF771A", - "baseIconId": "02A9C002-3B54-415E-8199-067139DF771A", - "name": "water-boiler", - "codepoint": "F0F92", - "aliases": [ - "water-heater", - "gas-water-boiler", - "electric-water-boiler", - "gas-water-heater", - "electric-water-heater" - ], - "styles": [], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "GreenTurtwig" - }, - { - "id": "EC21EC05-F45B-4560-A37E-3E721219A728", - "baseIconId": "02A9C002-3B54-415E-8199-067139DF771A", - "name": "water-boiler-alert", - "codepoint": "F11B3", - "aliases": [ - "water-heater-alert", - "water-boiler-error", - "water-heater-error" - ], - "styles": [ - "alert" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E7E8E8F3-F414-440D-9CC1-F96CD5533040", - "baseIconId": "02A9C002-3B54-415E-8199-067139DF771A", - "name": "water-boiler-auto", - "codepoint": "F1B98", - "aliases": [ - "water-heater-auto" - ], - "styles": [], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E7515B82-DE9D-4053-9D48-297511ED48E5", - "baseIconId": "02A9C002-3B54-415E-8199-067139DF771A", - "name": "water-boiler-off", - "codepoint": "F11B4", - "aliases": [ - "water-heater-off" - ], - "styles": [ - "off" - ], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "30A9ED7F-3D06-476B-A4F1-B9F85786FF00", - "baseIconId": "17EEE663-92E4-4AB1-87FE-94F2CD296C4B", - "name": "water-check", - "codepoint": "F1504", - "aliases": [ - "drop-check", - "blood-check", - "ink-check" - ], - "styles": [ - "check" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "E555BA93-F6A7-4B19-A4F8-132585E14850", - "baseIconId": "17EEE663-92E4-4AB1-87FE-94F2CD296C4B", - "name": "water-check-outline", - "codepoint": "F1505", - "aliases": [ - "drop-check-outline", - "blood-check-outline", - "ink-check-outline" - ], - "styles": [ - "check", - "outline" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "1A50CD86-0127-4730-A090-ED5110A9825F", - "baseIconId": "17EEE663-92E4-4AB1-87FE-94F2CD296C4B", - "name": "water-circle", - "codepoint": "F1806", - "aliases": [ - "drop-circle", - "blood-circle", - "ink-circle" - ], - "styles": [ - "circle" - ], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "C3824C0D-87B1-4577-A060-EDE628A694BC", - "baseIconId": "17EEE663-92E4-4AB1-87FE-94F2CD296C4B", - "name": "water-minus", - "codepoint": "F1506", - "aliases": [ - "drop-minus", - "blood-minus", - "ink-minus" - ], - "styles": [ - "minus" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "8536A2D7-1203-44B5-BBBE-6C37AABAD5B6", - "baseIconId": "17EEE663-92E4-4AB1-87FE-94F2CD296C4B", - "name": "water-minus-outline", - "codepoint": "F1507", - "aliases": [ - "drop-minus-outline", - "blood-minus-outline", - "ink-minus-outline" - ], - "styles": [ - "minus", - "outline" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "6C9777A0-967D-4242-91B2-E4D6B5596498", - "baseIconId": "17EEE663-92E4-4AB1-87FE-94F2CD296C4B", - "name": "water-off", - "codepoint": "F058D", - "aliases": [ - "format-color-reset", - "trans-fat-off", - "blood-off", - "ink-off" - ], - "styles": [ - "off" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "8B8E5074-5348-4856-BBF0-461BA5022BF3", - "baseIconId": "17EEE663-92E4-4AB1-87FE-94F2CD296C4B", - "name": "water-off-outline", - "codepoint": "F1508", - "aliases": [ - "drop-off-outline", - "blood-off-outline", - "trans-fat-off-outline", - "ink-off-outline" - ], - "styles": [ - "off", - "outline" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "97D5ABBB-9410-4891-B06C-40121506BAEC", - "baseIconId": "17EEE663-92E4-4AB1-87FE-94F2CD296C4B", - "name": "water-opacity", - "codepoint": "F1855", - "aliases": [ - "water-transparent", - "water-saver", - "blood-saver", - "blood-transparent", - "oil-saver", - "oil-transparent", - "drop-transparent", - "drop-saver" - ], - "styles": [ - "variant" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Drawing \/ Art", - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "DC3CFDE4-8FA9-497A-A937-6F7182B560E1", - "baseIconId": "17EEE663-92E4-4AB1-87FE-94F2CD296C4B", - "name": "water-outline", - "codepoint": "F0E0A", - "aliases": [ - "drop-outline", - "blood-outline", - "water-drop-outline", - "ink-outline" - ], - "styles": [ - "outline" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [ - "Home Automation", - "Weather" - ], - "author": "GreenTurtwig" - }, - { - "id": "2CE24A47-D798-4FFD-A53D-65FE9D452E2F", - "baseIconId": "17EEE663-92E4-4AB1-87FE-94F2CD296C4B", - "name": "water-percent", - "codepoint": "F058E", - "aliases": [ - "humidity", - "ink-percent" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Weather", - "Home Automation", - "Nature" - ], - "author": "Simran" - }, - { - "id": "55C44783-89D5-4A31-86B8-863B719EC876", - "baseIconId": "17EEE663-92E4-4AB1-87FE-94F2CD296C4B", - "name": "water-percent-alert", - "codepoint": "F1509", - "aliases": [ - "humidity-alert", - "ink-percent-alert" - ], - "styles": [ - "alert", - "variant" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Alert \/ Error", - "Nature" - ], - "author": "Colton Wiscombe" - }, - { - "id": "B7B4ACBA-F24A-48D7-A409-965A32860CE9", - "baseIconId": "17EEE663-92E4-4AB1-87FE-94F2CD296C4B", - "name": "water-plus", - "codepoint": "F150A", - "aliases": [ - "drop-plus", - "blood-plus", - "ink-plus" - ], - "styles": [ - "plus" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "74B7C41B-554D-453A-8646-FFAFDF78C3CA", - "baseIconId": "17EEE663-92E4-4AB1-87FE-94F2CD296C4B", - "name": "water-plus-outline", - "codepoint": "F150B", - "aliases": [ - "drop-plus-outline", - "blood-plus-outline", - "ink-plus-outline" - ], - "styles": [ - "outline", - "plus" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "09C341A8-067F-4CE2-96BC-D96E18334AB3", - "baseIconId": "09C341A8-067F-4CE2-96BC-D96E18334AB3", - "name": "water-polo", - "codepoint": "F12A0", - "aliases": [], - "styles": [], - "version": "4.7.95", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Yaroslav Bandura" - }, - { - "id": "06862D93-608A-4B21-9193-83FA8C6BBDCD", - "baseIconId": "06862D93-608A-4B21-9193-83FA8C6BBDCD", - "name": "water-pump", - "codepoint": "F058F", - "aliases": [ - "tap", - "kitchen-tap", - "faucet" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Agriculture", - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "A66B4E6E-70F9-4136-BE33-D02C002F7B30", - "baseIconId": "06862D93-608A-4B21-9193-83FA8C6BBDCD", - "name": "water-pump-off", - "codepoint": "F0F93", - "aliases": [ - "tap-off", - "kitchen-tap-off", - "faucet-off" - ], - "styles": [ - "off" - ], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Agriculture", - "Home Automation" - ], - "author": "Nick" - }, - { - "id": "2B0BAF1E-C9B8-42E9-84EB-D095EE2B0C39", - "baseIconId": "17EEE663-92E4-4AB1-87FE-94F2CD296C4B", - "name": "water-remove", - "codepoint": "F150C", - "aliases": [ - "drop-remove", - "blood-remove", - "ink-remove" - ], - "styles": [ - "remove" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "C90739A3-CEDE-4524-A736-BA5A5B5F0CCB", - "baseIconId": "17EEE663-92E4-4AB1-87FE-94F2CD296C4B", - "name": "water-remove-outline", - "codepoint": "F150D", - "aliases": [ - "drop-remove-outline", - "blood-remove-outline", - "ink-remove-outline" - ], - "styles": [ - "outline", - "remove" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "14D06EC0-32F9-4CCE-B890-89DE73A106EA", - "baseIconId": "14D06EC0-32F9-4CCE-B890-89DE73A106EA", - "name": "water-sync", - "codepoint": "F17C6", - "aliases": [ - "water-recycle", - "water-reuse" - ], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [ - "Agriculture" - ], - "author": "Hans B\u00f6hm" - }, - { - "id": "276FDABE-30C6-406C-BAED-FF6BFC10B6BA", - "baseIconId": "17EEE663-92E4-4AB1-87FE-94F2CD296C4B", - "name": "water-thermometer", - "codepoint": "F1A85", - "aliases": [ - "boil-point", - "water-temperature", - "dew-point" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Weather", - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D69A4155-E2D7-4A9F-82CD-904D346E8A6E", - "baseIconId": "17EEE663-92E4-4AB1-87FE-94F2CD296C4B", - "name": "water-thermometer-outline", - "codepoint": "F1A86", - "aliases": [ - "dew-point-outline", - "water-temperature-outline", - "boil-point-outline" - ], - "styles": [ - "outline", - "variant" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Weather", - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "4EE62E99-C30B-4A90-B89D-ADF4C26EF888", - "baseIconId": "4EE62E99-C30B-4A90-B89D-ADF4C26EF888", - "name": "water-well", - "codepoint": "F106B", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "55A09921-7B26-49DB-AB0E-47E2C133D68C", - "baseIconId": "4EE62E99-C30B-4A90-B89D-ADF4C26EF888", - "name": "water-well-outline", - "codepoint": "F106C", - "aliases": [], - "styles": [], - "version": "4.1.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "DF6B67F9-DE8F-4183-B7E8-CE99C3B863EE", - "baseIconId": "DF6B67F9-DE8F-4183-B7E8-CE99C3B863EE", - "name": "waterfall", - "codepoint": "F1849", - "aliases": [], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Nature" - ], - "author": "Teodor Sandu" - }, - { - "id": "5B017D32-0BE9-4A6A-999C-32777F995FBB", - "baseIconId": "5B017D32-0BE9-4A6A-999C-32777F995FBB", - "name": "watering-can", - "codepoint": "F1481", - "aliases": [ - "watering-pot" - ], - "styles": [], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Agriculture" - ], - "author": "guenth39" - }, - { - "id": "67419E50-B2CE-4B36-A137-705FD6404252", - "baseIconId": "5B017D32-0BE9-4A6A-999C-32777F995FBB", - "name": "watering-can-outline", - "codepoint": "F1482", - "aliases": [ - "watering-pot-outline" - ], - "styles": [ - "outline" - ], - "version": "5.3.45", - "deprecated": false, - "tags": [ - "Agriculture" - ], - "author": "guenth39" - }, - { - "id": "20907A4A-11CA-447E-A4F5-D0F0901D197E", - "baseIconId": "20907A4A-11CA-447E-A4F5-D0F0901D197E", - "name": "watermark", - "codepoint": "F0612", - "aliases": [ - "branding-watermark" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "34D870BF-048B-44DF-93F9-8EBE7AF4C263", - "baseIconId": "547979BF-6FF4-4CFF-BD55-1E5793C9DAA3", - "name": "wave", - "codepoint": "F0F2E", - "aliases": [ - "water" - ], - "styles": [], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Transportation + Water" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B677F1CB-606B-4DB5-9A9D-73E4FC0AC3F0", - "baseIconId": "B677F1CB-606B-4DB5-9A9D-73E4FC0AC3F0", - "name": "waveform", - "codepoint": "F147D", - "aliases": [], - "styles": [], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Audio" - ], - "author": "Haley Halcyon" - }, - { - "id": "547979BF-6FF4-4CFF-BD55-1E5793C9DAA3", - "baseIconId": "547979BF-6FF4-4CFF-BD55-1E5793C9DAA3", - "name": "waves", - "codepoint": "F078D", - "aliases": [ - "ocean", - "lake", - "flood", - "water" - ], - "styles": [], - "version": "1.9.32", - "deprecated": false, - "tags": [ - "Weather", - "Transportation + Water", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "FC4A7A1E-A32E-432E-8EB3-79FFA3E012C1", - "baseIconId": "547979BF-6FF4-4CFF-BD55-1E5793C9DAA3", - "name": "waves-arrow-left", - "codepoint": "F1859", - "aliases": [ - "tide-in", - "water-flow" - ], - "styles": [ - "arrow" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Nature", - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "69DDD960-779E-4BD9-9B96-B73ED9CAF55D", - "baseIconId": "547979BF-6FF4-4CFF-BD55-1E5793C9DAA3", - "name": "waves-arrow-right", - "codepoint": "F185A", - "aliases": [ - "tide-out", - "water-flow" - ], - "styles": [ - "arrow" - ], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Nature", - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "9C20E25F-2499-4B5F-BC47-74DDA23F6DC3", - "baseIconId": "547979BF-6FF4-4CFF-BD55-1E5793C9DAA3", - "name": "waves-arrow-up", - "codepoint": "F185B", - "aliases": [ - "water-evaporation", - "humidity", - "sea-level-rise", - "ocean-level-rise", - "climate-change" - ], - "styles": [], - "version": "6.2.95", - "deprecated": false, - "tags": [ - "Nature", - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "51E32DD0-F286-4039-8242-2BF03E917C37", - "baseIconId": "51E32DD0-F286-4039-8242-2BF03E917C37", - "name": "waze", - "codepoint": "F0BDE", - "aliases": [], - "styles": [], - "version": "3.0.39", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "9286B6B3-09EE-4465-9A70-D7874E26F3DF", - "baseIconId": "80E6A6FB-1524-4A7D-9551-17D3BDFBD7C5", - "name": "weather-cloudy", - "codepoint": "F0590", - "aliases": [], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Weather", - "Cloud", - "Agriculture" - ], - "author": "Austin Andrews" - }, - { - "id": "EF2214BE-8126-4458-A17A-74C58B30C2C5", - "baseIconId": "80E6A6FB-1524-4A7D-9551-17D3BDFBD7C5", - "name": "weather-cloudy-alert", - "codepoint": "F0F2F", - "aliases": [], - "styles": [ - "alert", - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Weather", - "Alert \/ Error", - "Cloud" - ], - "author": "Michael Irigoyen" - }, - { - "id": "522BA775-D569-4615-AABE-40B9E638EA18", - "baseIconId": "80E6A6FB-1524-4A7D-9551-17D3BDFBD7C5", - "name": "weather-cloudy-arrow-right", - "codepoint": "F0E6E", - "aliases": [], - "styles": [ - "arrow", - "outline" - ], - "version": "3.6.95", - "deprecated": false, - "tags": [ - "Weather", - "Cloud" - ], - "author": "Michael Irigoyen" - }, - { - "id": "D7526077-1254-4F32-9496-3B8E5D957F0F", - "baseIconId": "9286B6B3-09EE-4465-9A70-D7874E26F3DF", - "name": "weather-cloudy-clock", - "codepoint": "F18F6", - "aliases": [ - "weather-history", - "weather-time", - "weather-date" - ], - "styles": [ - "clock" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Weather", - "Cloud" - ], - "author": "Michael Irigoyen" - }, - { - "id": "CFF329EE-07C3-48E8-B21D-7B31F36875E6", - "baseIconId": "CFF329EE-07C3-48E8-B21D-7B31F36875E6", - "name": "weather-dust", - "codepoint": "F1B5A", - "aliases": [ - "dust-storm", - "windy" - ], - "styles": [], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Weather", - "Agriculture" - ], - "author": "Andrej Sharapov" - }, - { - "id": "9E1AC9CA-0FA4-44C6-BA5D-2EB3CED4899D", - "baseIconId": "80E6A6FB-1524-4A7D-9551-17D3BDFBD7C5", - "name": "weather-fog", - "codepoint": "F0591", - "aliases": [ - "weather-mist" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Weather", - "Agriculture" - ], - "author": "Austin Andrews" - }, - { - "id": "BED775CF-13BD-4D5A-A06F-7B026E820CB1", - "baseIconId": "80E6A6FB-1524-4A7D-9551-17D3BDFBD7C5", - "name": "weather-hail", - "codepoint": "F0592", - "aliases": [], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Weather", - "Agriculture" - ], - "author": "Austin Andrews" - }, - { - "id": "87410436-C351-4FF7-91E4-9A5F52D49F69", - "baseIconId": "80E6A6FB-1524-4A7D-9551-17D3BDFBD7C5", - "name": "weather-hazy", - "codepoint": "F0F30", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Weather", - "Agriculture" - ], - "author": "Michael Irigoyen" - }, - { - "id": "880967C4-85F9-4953-A6D0-73C9370BC987", - "baseIconId": "80E6A6FB-1524-4A7D-9551-17D3BDFBD7C5", - "name": "weather-hurricane", - "codepoint": "F0898", - "aliases": [ - "cyclone" - ], - "styles": [], - "version": "2.1.99", - "deprecated": false, - "tags": [ - "Weather", - "Nature", - "Agriculture" - ], - "author": "Michael Richins" - }, - { - "id": "B5191E73-1C38-4B78-9018-F8216855C61A", - "baseIconId": "880967C4-85F9-4953-A6D0-73C9370BC987", - "name": "weather-hurricane-outline", - "codepoint": "F1C78", - "aliases": [ - "cyclone-outline" - ], - "styles": [ - "outline" - ], - "version": "7.2.96", - "deprecated": false, - "tags": [ - "Weather", - "Nature", - "Agriculture" - ], - "author": "Jeff Anders" - }, - { - "id": "6AF7BD8A-088F-4B07-806D-7456EB382D76", - "baseIconId": "80E6A6FB-1524-4A7D-9551-17D3BDFBD7C5", - "name": "weather-lightning", - "codepoint": "F0593", - "aliases": [ - "weather-storm", - "weather-thunder", - "weather-flash" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Weather", - "Agriculture" - ], - "author": "Austin Andrews" - }, - { - "id": "F69033FD-E6F0-48E7-ADA7-7CDF71B1673C", - "baseIconId": "80E6A6FB-1524-4A7D-9551-17D3BDFBD7C5", - "name": "weather-lightning-rainy", - "codepoint": "F067E", - "aliases": [ - "weather-thunder-rainy", - "weather-storm" - ], - "styles": [ - "outline" - ], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Austin Andrews" - }, - { - "id": "1C3BA3AB-E86E-481B-A3C2-867B37A6E55A", - "baseIconId": "80E6A6FB-1524-4A7D-9551-17D3BDFBD7C5", - "name": "weather-night", - "codepoint": "F0594", - "aliases": [ - "moon-and-stars", - "night-sky" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Weather", - "Holiday" - ], - "author": "Austin Andrews" - }, - { - "id": "19D690AD-38F9-45CF-A092-D62A53098A68", - "baseIconId": "80E6A6FB-1524-4A7D-9551-17D3BDFBD7C5", - "name": "weather-night-partly-cloudy", - "codepoint": "F0F31", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Weather", - "Cloud" - ], - "author": "Michael Irigoyen" - }, - { - "id": "80E6A6FB-1524-4A7D-9551-17D3BDFBD7C5", - "baseIconId": "80E6A6FB-1524-4A7D-9551-17D3BDFBD7C5", - "name": "weather-partly-cloudy", - "codepoint": "F0595", - "aliases": [ - "weather-partlycloudy" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Weather", - "Cloud" - ], - "author": "Austin Andrews" - }, - { - "id": "93C1E28D-0C94-4B55-8B26-BACE3F777ECC", - "baseIconId": "80E6A6FB-1524-4A7D-9551-17D3BDFBD7C5", - "name": "weather-partly-lightning", - "codepoint": "F0F32", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "B01CFC20-40C4-4647-A20D-0181E5AB4952", - "baseIconId": "80E6A6FB-1524-4A7D-9551-17D3BDFBD7C5", - "name": "weather-partly-rainy", - "codepoint": "F0F33", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0E45DB37-DF54-422B-AE18-2AA35BC54109", - "baseIconId": "80E6A6FB-1524-4A7D-9551-17D3BDFBD7C5", - "name": "weather-partly-snowy", - "codepoint": "F0F34", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "CAF9B1D0-1095-4A34-AC07-78C937BDA618", - "baseIconId": "80E6A6FB-1524-4A7D-9551-17D3BDFBD7C5", - "name": "weather-partly-snowy-rainy", - "codepoint": "F0F35", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "220955AA-770D-4884-A2ED-F21D2DC2CCDA", - "baseIconId": "80E6A6FB-1524-4A7D-9551-17D3BDFBD7C5", - "name": "weather-pouring", - "codepoint": "F0596", - "aliases": [ - "weather-heavy-rain" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Weather", - "Agriculture" - ], - "author": "Austin Andrews" - }, - { - "id": "45EF5E01-7499-4964-A897-5602F45A822E", - "baseIconId": "80E6A6FB-1524-4A7D-9551-17D3BDFBD7C5", - "name": "weather-rainy", - "codepoint": "F0597", - "aliases": [ - "weather-drizzle", - "weather-spitting" - ], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Weather", - "Agriculture" - ], - "author": "Austin Andrews" - }, - { - "id": "88999373-43C5-4851-BBCF-5335D8DFBDA0", - "baseIconId": "80E6A6FB-1524-4A7D-9551-17D3BDFBD7C5", - "name": "weather-snowy", - "codepoint": "F0598", - "aliases": [], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Austin Andrews" - }, - { - "id": "D97DA5D6-5A65-4ADB-B124-48C22F32B07A", - "baseIconId": "80E6A6FB-1524-4A7D-9551-17D3BDFBD7C5", - "name": "weather-snowy-heavy", - "codepoint": "F0F36", - "aliases": [ - "flurries" - ], - "styles": [ - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0938BCD1-BCF8-4439-B6B3-A590150878BC", - "baseIconId": "80E6A6FB-1524-4A7D-9551-17D3BDFBD7C5", - "name": "weather-snowy-rainy", - "codepoint": "F067F", - "aliases": [ - "weather-sleet" - ], - "styles": [ - "outline" - ], - "version": "1.7.12", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Austin Andrews" - }, - { - "id": "7F85265E-304C-4575-A73F-F0FCF0CA951B", - "baseIconId": "80E6A6FB-1524-4A7D-9551-17D3BDFBD7C5", - "name": "weather-sunny", - "codepoint": "F0599", - "aliases": [], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Austin Andrews" - }, - { - "id": "3AACF641-3923-4DBA-9568-0680999A6548", - "baseIconId": "80E6A6FB-1524-4A7D-9551-17D3BDFBD7C5", - "name": "weather-sunny-alert", - "codepoint": "F0F37", - "aliases": [ - "heat-alert", - "heat-advisory", - "sun-advisory" - ], - "styles": [ - "alert", - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Weather", - "Alert \/ Error", - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "2C884CEC-BA06-491D-9A7D-17B8B2E74CA6", - "baseIconId": "7F85265E-304C-4575-A73F-F0FCF0CA951B", - "name": "weather-sunny-off", - "codepoint": "F14E4", - "aliases": [], - "styles": [ - "off" - ], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "5EF29669-A342-46D1-AE1B-47917E44311D", - "baseIconId": "5EF29669-A342-46D1-AE1B-47917E44311D", - "name": "weather-sunset", - "codepoint": "F059A", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Austin Andrews" - }, - { - "id": "032B7D10-9218-4B71-B190-C486832BEF61", - "baseIconId": "5EF29669-A342-46D1-AE1B-47917E44311D", - "name": "weather-sunset-down", - "codepoint": "F059B", - "aliases": [], - "styles": [ - "arrow" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Austin Andrews" - }, - { - "id": "AC82F126-0773-44CE-A004-77E7DDD130C9", - "baseIconId": "5EF29669-A342-46D1-AE1B-47917E44311D", - "name": "weather-sunset-up", - "codepoint": "F059C", - "aliases": [ - "sunrise" - ], - "styles": [ - "arrow" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Austin Andrews" - }, - { - "id": "BE149D04-25E9-4CE8-BD75-2D6D49A03FEA", - "baseIconId": "80E6A6FB-1524-4A7D-9551-17D3BDFBD7C5", - "name": "weather-tornado", - "codepoint": "F0F38", - "aliases": [], - "styles": [ - "outline" - ], - "version": "3.8.95", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "7544E7E7-02F7-405C-9ADB-2E2540B07343", - "baseIconId": "80E6A6FB-1524-4A7D-9551-17D3BDFBD7C5", - "name": "weather-windy", - "codepoint": "F059D", - "aliases": [], - "styles": [ - "outline" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Austin Andrews" - }, - { - "id": "454DE99F-BA48-4A7B-A2C6-C0E162065D10", - "baseIconId": "80E6A6FB-1524-4A7D-9551-17D3BDFBD7C5", - "name": "weather-windy-variant", - "codepoint": "F059E", - "aliases": [], - "styles": [ - "outline", - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Austin Andrews" - }, - { - "id": "DA9C32CA-8C31-4462-B123-479169C31587", - "baseIconId": "DA9C32CA-8C31-4462-B123-479169C31587", - "name": "web", - "codepoint": "F059F", - "aliases": [ - "language", - "globe", - "internet", - "world-wide-web" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Geographic Information System" - ], - "author": "Google" - }, - { - "id": "42B55CB7-DC3D-4804-A848-1A9CA7DCD533", - "baseIconId": "DA9C32CA-8C31-4462-B123-479169C31587", - "name": "web-box", - "codepoint": "F0F94", - "aliases": [ - "language-box", - "globe-box", - "internet-box" - ], - "styles": [ - "box" - ], - "version": "3.9.97", - "deprecated": false, - "tags": [ - "Geographic Information System" - ], - "author": "Samuel Jones" - }, - { - "id": "A959571D-7AA8-4DD9-8407-D78D4DFBDD79", - "baseIconId": "DA9C32CA-8C31-4462-B123-479169C31587", - "name": "web-cancel", - "codepoint": "F1790", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "B74213B2-B220-4D15-AFA5-CAE0E40D6CFE", - "baseIconId": "DA9C32CA-8C31-4462-B123-479169C31587", - "name": "web-check", - "codepoint": "F0789", - "aliases": [], - "styles": [ - "check" - ], - "version": "1.9.32", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "FABF6519-0CE7-461D-986D-60B4BF7374A7", - "baseIconId": "DA9C32CA-8C31-4462-B123-479169C31587", - "name": "web-clock", - "codepoint": "F124A", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "frankgrinaert" - }, - { - "id": "9C32EF89-4919-4CF1-A266-A0AB4C1C11EA", - "baseIconId": "DA9C32CA-8C31-4462-B123-479169C31587", - "name": "web-minus", - "codepoint": "F10A0", - "aliases": [], - "styles": [ - "minus" - ], - "version": "4.2.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "46DE4030-CBE2-401D-82A0-50B99DE514D1", - "baseIconId": "DA9C32CA-8C31-4462-B123-479169C31587", - "name": "web-off", - "codepoint": "F0A8E", - "aliases": [], - "styles": [ - "off" - ], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "F9923FF1-E31E-4C03-BBB7-438704CF3909", - "baseIconId": "DA9C32CA-8C31-4462-B123-479169C31587", - "name": "web-plus", - "codepoint": "F0033", - "aliases": [], - "styles": [ - "plus" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "D0CCF2D3-F7AC-4591-B31E-37B03A843661", - "baseIconId": "DA9C32CA-8C31-4462-B123-479169C31587", - "name": "web-refresh", - "codepoint": "F1791", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "BC7B3CEA-B4D3-4F52-8378-5ACF408A3D9B", - "baseIconId": "DA9C32CA-8C31-4462-B123-479169C31587", - "name": "web-remove", - "codepoint": "F0551", - "aliases": [], - "styles": [ - "remove" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "3B639E91-D1C4-439A-A1D9-84779901F763", - "baseIconId": "DA9C32CA-8C31-4462-B123-479169C31587", - "name": "web-sync", - "codepoint": "F1792", - "aliases": [], - "styles": [], - "version": "6.1.95", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "03483AFB-9D53-4E10-B00C-1095C1873276", - "baseIconId": "03483AFB-9D53-4E10-B00C-1095C1873276", - "name": "webcam", - "codepoint": "F05A0", - "aliases": [ - "web-camera" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Video \/ Movie", - "Home Automation" - ], - "author": "Chris Litherland" - }, - { - "id": "F8D156C4-16AA-47AD-B06B-970E27F30FE6", - "baseIconId": "03483AFB-9D53-4E10-B00C-1095C1873276", - "name": "webcam-off", - "codepoint": "F1737", - "aliases": [], - "styles": [], - "version": "5.9.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "5B415522-B2A4-4D34-BEE3-D81D607BBD0B", - "baseIconId": "5B415522-B2A4-4D34-BEE3-D81D607BBD0B", - "name": "webhook", - "codepoint": "F062F", - "aliases": [], - "styles": [], - "version": "1.6.50", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "65235220-D361-4E99-BEC6-E62B231E4384", - "baseIconId": "65235220-D361-4E99-BEC6-E62B231E4384", - "name": "webpack", - "codepoint": "F072B", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Developer \/ Languages" - ], - "author": "Contributors" - }, - { - "id": "972B66F0-ED66-42B4-BEE8-63EF28F4658B", - "baseIconId": "972B66F0-ED66-42B4-BEE8-63EF28F4658B", - "name": "webrtc", - "codepoint": "F1248", - "aliases": [], - "styles": [], - "version": "4.6.95", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "31CBB823-2223-40D5-BCF7-470F91159757", - "baseIconId": "31CBB823-2223-40D5-BCF7-470F91159757", - "name": "wechat", - "codepoint": "F0611", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "F5DECC39-2E4C-4574-B141-832DFBA8CB43", - "baseIconId": "F5DECC39-2E4C-4574-B141-832DFBA8CB43", - "name": "weight", - "codepoint": "F05A1", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "ABC7A229-B0E6-4F6C-9A00-C1340D95DEAF", - "baseIconId": "F5DECC39-2E4C-4574-B141-832DFBA8CB43", - "name": "weight-gram", - "codepoint": "F0D3F", - "aliases": [], - "styles": [ - "variant" - ], - "version": "3.3.92", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "5EDFF36D-4C8E-4B8D-BE3F-76C27DB804DF", - "baseIconId": "F5DECC39-2E4C-4574-B141-832DFBA8CB43", - "name": "weight-kilogram", - "codepoint": "F05A2", - "aliases": [ - "weight-kg" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "4ECFBE4E-52B2-4A60-BD6C-9B7DAB38E7A5", - "baseIconId": "4ECFBE4E-52B2-4A60-BD6C-9B7DAB38E7A5", - "name": "weight-lifter", - "codepoint": "F115D", - "aliases": [ - "crossfit", - "gym", - "fitness-center", - "human-barbell" - ], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Sport", - "People \/ Family" - ], - "author": "Michael Irigoyen" - }, - { - "id": "47B5C7D8-105F-4420-B911-50693081EA76", - "baseIconId": "F5DECC39-2E4C-4574-B141-832DFBA8CB43", - "name": "weight-pound", - "codepoint": "F09B5", - "aliases": [ - "weight-lb" - ], - "styles": [ - "variant" - ], - "version": "2.4.85", - "deprecated": false, - "tags": [], - "author": "Haley Halcyon" - }, - { - "id": "C58497CE-5E84-483C-9C85-3007ADF9BC9A", - "baseIconId": "C58497CE-5E84-483C-9C85-3007ADF9BC9A", - "name": "whatsapp", - "codepoint": "F05A3", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "2D35B573-0B04-4E72-84CA-6BE431EE5AE5", - "baseIconId": "2D35B573-0B04-4E72-84CA-6BE431EE5AE5", - "name": "wheel-barrow", - "codepoint": "F14F2", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Michael Irigoyen" - }, - { - "id": "1984D53A-267C-4E05-956A-ABED5B2029BE", - "baseIconId": "1984D53A-267C-4E05-956A-ABED5B2029BE", - "name": "wheelchair", - "codepoint": "F1A87", - "aliases": [ - "accessible", - "isa", - "international-symbol-of-access" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Medical \/ Hospital", - "People \/ Family" - ], - "author": "Michael Irigoyen" - }, - { - "id": "FB4E1390-EFB1-4364-B6EE-F936C5715163", - "baseIconId": "1984D53A-267C-4E05-956A-ABED5B2029BE", - "name": "wheelchair-accessibility", - "codepoint": "F05A4", - "aliases": [ - "accessible" - ], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Medical \/ Hospital" - ], - "author": "Doug C. Hardester" - }, - { - "id": "2DADA4F6-D9AD-454D-BC75-1D8DE507FA82", - "baseIconId": "2DADA4F6-D9AD-454D-BC75-1D8DE507FA82", - "name": "whistle", - "codepoint": "F09B6", - "aliases": [], - "styles": [], - "version": "2.4.85", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Michael Richins" - }, - { - "id": "93CDBDF3-A4BE-4ADE-9179-171FA94726A6", - "baseIconId": "2DADA4F6-D9AD-454D-BC75-1D8DE507FA82", - "name": "whistle-outline", - "codepoint": "F12BC", - "aliases": [], - "styles": [ - "outline" - ], - "version": "4.8.95", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Michael Richins" - }, - { - "id": "2FE12EF0-B5CE-4ADB-9B1B-3F796F0EDE0E", - "baseIconId": "2FE12EF0-B5CE-4ADB-9B1B-3F796F0EDE0E", - "name": "white-balance-auto", - "codepoint": "F05A5", - "aliases": [ - "wb-auto" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "4464050A-1A97-46CF-BBA5-CE52D600CB45", - "baseIconId": "4464050A-1A97-46CF-BBA5-CE52D600CB45", - "name": "white-balance-incandescent", - "codepoint": "F05A6", - "aliases": [ - "wb-incandescent" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "E88B06D9-C60D-4084-9AE9-742266F0E8FB", - "baseIconId": "E88B06D9-C60D-4084-9AE9-742266F0E8FB", - "name": "white-balance-iridescent", - "codepoint": "F05A7", - "aliases": [ - "wb-iridescent" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography" - ], - "author": "Google" - }, - { - "id": "7DCAB3C3-C32F-483D-98F1-1728919AA17B", - "baseIconId": "7DCAB3C3-C32F-483D-98F1-1728919AA17B", - "name": "white-balance-sunny", - "codepoint": "F05A8", - "aliases": [ - "wb-sunny" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Photography", - "Weather" - ], - "author": "Google" - }, - { - "id": "419C0A49-C751-4204-8C82-7E43B0896BD9", - "baseIconId": "419C0A49-C751-4204-8C82-7E43B0896BD9", - "name": "widgets", - "codepoint": "F072C", - "aliases": [], - "styles": [], - "version": "1.8.36", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "94C40C14-7BBA-4DF6-824B-6EFC9327F7E5", - "baseIconId": "419C0A49-C751-4204-8C82-7E43B0896BD9", - "name": "widgets-outline", - "codepoint": "F1355", - "aliases": [], - "styles": [ - "outline" - ], - "version": "4.9.95", - "deprecated": false, - "tags": [], - "author": "Google" - }, - { - "id": "E77CF681-7DD0-4EDF-AA35-0DB80790BC03", - "baseIconId": "E77CF681-7DD0-4EDF-AA35-0DB80790BC03", - "name": "wifi", - "codepoint": "F05A9", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "9B9FF835-20F9-49BD-A11F-403786BC42A2", - "baseIconId": "E77CF681-7DD0-4EDF-AA35-0DB80790BC03", - "name": "wifi-alert", - "codepoint": "F16B5", - "aliases": [], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Colton Wiscombe" - }, - { - "id": "8778FE48-83F3-484D-A1DE-C12000DB3170", - "baseIconId": "E77CF681-7DD0-4EDF-AA35-0DB80790BC03", - "name": "wifi-arrow-down", - "codepoint": "F16B6", - "aliases": [], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "79955442-BBC4-4B1D-84EE-69990BF30331", - "baseIconId": "E77CF681-7DD0-4EDF-AA35-0DB80790BC03", - "name": "wifi-arrow-left", - "codepoint": "F16B7", - "aliases": [], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "BD5239F0-5659-4E99-9860-F28D58BDF788", - "baseIconId": "E77CF681-7DD0-4EDF-AA35-0DB80790BC03", - "name": "wifi-arrow-left-right", - "codepoint": "F16B8", - "aliases": [], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "F245A78A-C6F3-45CF-B4C0-131280576715", - "baseIconId": "E77CF681-7DD0-4EDF-AA35-0DB80790BC03", - "name": "wifi-arrow-right", - "codepoint": "F16B9", - "aliases": [], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "20394D81-3E4C-4963-88C7-BB015ECA8D72", - "baseIconId": "E77CF681-7DD0-4EDF-AA35-0DB80790BC03", - "name": "wifi-arrow-up", - "codepoint": "F16BA", - "aliases": [], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "EE028441-38B6-40F9-B3E8-C673241BD39D", - "baseIconId": "E77CF681-7DD0-4EDF-AA35-0DB80790BC03", - "name": "wifi-arrow-up-down", - "codepoint": "F16BB", - "aliases": [], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "06F860BA-78F4-4F9C-8A90-E6ABEF1FA064", - "baseIconId": "E77CF681-7DD0-4EDF-AA35-0DB80790BC03", - "name": "wifi-cancel", - "codepoint": "F16BC", - "aliases": [], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "41D2061C-CFC9-4686-B916-4BEC07AB1553", - "baseIconId": "E77CF681-7DD0-4EDF-AA35-0DB80790BC03", - "name": "wifi-check", - "codepoint": "F16BD", - "aliases": [], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "17572DB9-20E6-4B83-A6B8-C66282523BC8", - "baseIconId": "E77CF681-7DD0-4EDF-AA35-0DB80790BC03", - "name": "wifi-cog", - "codepoint": "F16BE", - "aliases": [], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "3E5F6D19-E6C7-48BD-990F-C7D10598B2F7", - "baseIconId": "E77CF681-7DD0-4EDF-AA35-0DB80790BC03", - "name": "wifi-lock", - "codepoint": "F16BF", - "aliases": [], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "F9450F5D-FCF2-4E89-B234-FDA2F72C6B18", - "baseIconId": "E77CF681-7DD0-4EDF-AA35-0DB80790BC03", - "name": "wifi-lock-open", - "codepoint": "F16C0", - "aliases": [], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "A6FB83C2-13FE-4B23-AE9B-7F2696CA2835", - "baseIconId": "E77CF681-7DD0-4EDF-AA35-0DB80790BC03", - "name": "wifi-marker", - "codepoint": "F16C1", - "aliases": [ - "wifi-location" - ], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Navigation" - ], - "author": "Colton Wiscombe" - }, - { - "id": "DFEC628C-E105-456D-8F73-71F54116DBC2", - "baseIconId": "E77CF681-7DD0-4EDF-AA35-0DB80790BC03", - "name": "wifi-minus", - "codepoint": "F16C2", - "aliases": [], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "A7CAE187-B853-41DD-9D8D-FB9A28C3F764", - "baseIconId": "E77CF681-7DD0-4EDF-AA35-0DB80790BC03", - "name": "wifi-off", - "codepoint": "F05AA", - "aliases": [], - "styles": [ - "off" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "3CF89702-EA3B-48A1-9B5E-5188A80DCBA8", - "baseIconId": "E77CF681-7DD0-4EDF-AA35-0DB80790BC03", - "name": "wifi-plus", - "codepoint": "F16C3", - "aliases": [], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "540437B4-6901-4F18-A60F-CAA10FD74B49", - "baseIconId": "E77CF681-7DD0-4EDF-AA35-0DB80790BC03", - "name": "wifi-refresh", - "codepoint": "F16C4", - "aliases": [], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "5989CC44-8A90-4D17-ADB8-F7AC12A0CF4E", - "baseIconId": "E77CF681-7DD0-4EDF-AA35-0DB80790BC03", - "name": "wifi-remove", - "codepoint": "F16C5", - "aliases": [], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "BA9356E6-E4D6-4A64-923C-395114E0DBE3", - "baseIconId": "E77CF681-7DD0-4EDF-AA35-0DB80790BC03", - "name": "wifi-settings", - "codepoint": "F16C6", - "aliases": [], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Colton Wiscombe" - }, - { - "id": "30694858-4607-48C1-A533-861E4968A0CE", - "baseIconId": "E77CF681-7DD0-4EDF-AA35-0DB80790BC03", - "name": "wifi-star", - "codepoint": "F0E0B", - "aliases": [ - "wifi-favourite", - "network-favourite", - "wifi-favorite", - "network-favorite" - ], - "styles": [ - "star" - ], - "version": "3.5.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "E4665C87-DB69-45CC-B922-1FCB0F0A54A3", - "baseIconId": "41B86B22-7245-4A97-9BAA-3E9EBD44CEB0", - "name": "wifi-strength-1", - "codepoint": "F091F", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "31F993F8-3BC0-4818-AE1C-91DF005766F3", - "baseIconId": "41B86B22-7245-4A97-9BAA-3E9EBD44CEB0", - "name": "wifi-strength-1-alert", - "codepoint": "F0920", - "aliases": [ - "wifi-strength-1-warning" - ], - "styles": [ - "alert" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Simran" - }, - { - "id": "035F0E2C-C952-40AB-BC29-B8CE120C389D", - "baseIconId": "41B86B22-7245-4A97-9BAA-3E9EBD44CEB0", - "name": "wifi-strength-1-lock", - "codepoint": "F0921", - "aliases": [], - "styles": [ - "lock" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Simran" - }, - { - "id": "91890A07-398B-41A0-B91C-647C7BE9F5DA", - "baseIconId": "41B86B22-7245-4A97-9BAA-3E9EBD44CEB0", - "name": "wifi-strength-1-lock-open", - "codepoint": "F16CB", - "aliases": [], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "92D075FB-99D3-4926-A4E9-F25EAB70E78E", - "baseIconId": "41B86B22-7245-4A97-9BAA-3E9EBD44CEB0", - "name": "wifi-strength-2", - "codepoint": "F0922", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "38D73A8E-CEA5-4E6F-960B-BD2A0D482D9F", - "baseIconId": "41B86B22-7245-4A97-9BAA-3E9EBD44CEB0", - "name": "wifi-strength-2-alert", - "codepoint": "F0923", - "aliases": [ - "wifi-strength-2-warning" - ], - "styles": [ - "alert" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Simran" - }, - { - "id": "CD7B760F-1A3C-4DDE-AB00-9EF11DF12073", - "baseIconId": "41B86B22-7245-4A97-9BAA-3E9EBD44CEB0", - "name": "wifi-strength-2-lock", - "codepoint": "F0924", - "aliases": [], - "styles": [ - "lock" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Simran" - }, - { - "id": "22E5DDDA-12A4-4087-B1FF-5C3E8807CE0B", - "baseIconId": "41B86B22-7245-4A97-9BAA-3E9EBD44CEB0", - "name": "wifi-strength-2-lock-open", - "codepoint": "F16CC", - "aliases": [], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "736B9B99-3A60-4BCA-A79A-40DE34D17F43", - "baseIconId": "41B86B22-7245-4A97-9BAA-3E9EBD44CEB0", - "name": "wifi-strength-3", - "codepoint": "F0925", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "780617FD-FBFA-4F88-98CA-2DEA43409312", - "baseIconId": "41B86B22-7245-4A97-9BAA-3E9EBD44CEB0", - "name": "wifi-strength-3-alert", - "codepoint": "F0926", - "aliases": [ - "wifi-strength-3-warning" - ], - "styles": [ - "alert" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Simran" - }, - { - "id": "CD4F72AA-B86D-4133-8EB8-145F457A1F06", - "baseIconId": "41B86B22-7245-4A97-9BAA-3E9EBD44CEB0", - "name": "wifi-strength-3-lock", - "codepoint": "F0927", - "aliases": [], - "styles": [ - "lock" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Simran" - }, - { - "id": "249BF1E5-B9AC-47D6-9FC4-72678EE933C4", - "baseIconId": "41B86B22-7245-4A97-9BAA-3E9EBD44CEB0", - "name": "wifi-strength-3-lock-open", - "codepoint": "F16CD", - "aliases": [], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "41B86B22-7245-4A97-9BAA-3E9EBD44CEB0", - "baseIconId": "41B86B22-7245-4A97-9BAA-3E9EBD44CEB0", - "name": "wifi-strength-4", - "codepoint": "F0928", - "aliases": [], - "styles": [], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "B37308A1-15BE-4F23-82F4-B360C8BA63C1", - "baseIconId": "41B86B22-7245-4A97-9BAA-3E9EBD44CEB0", - "name": "wifi-strength-4-alert", - "codepoint": "F0929", - "aliases": [ - "wifi-strength-4-warning" - ], - "styles": [ - "alert" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Simran" - }, - { - "id": "11518A63-4E2B-477D-8D93-9B6C708DE5E1", - "baseIconId": "41B86B22-7245-4A97-9BAA-3E9EBD44CEB0", - "name": "wifi-strength-4-lock", - "codepoint": "F092A", - "aliases": [], - "styles": [ - "lock" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Simran" - }, - { - "id": "332A10AE-2396-460B-819F-7149D0BE4085", - "baseIconId": "41B86B22-7245-4A97-9BAA-3E9EBD44CEB0", - "name": "wifi-strength-4-lock-open", - "codepoint": "F16CE", - "aliases": [], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "50E531C4-A82A-4F0C-A8BB-A2208B546E81", - "baseIconId": "41B86B22-7245-4A97-9BAA-3E9EBD44CEB0", - "name": "wifi-strength-alert-outline", - "codepoint": "F092B", - "aliases": [ - "wifi-strength-warning-outline", - "wifi-strength-0-alert", - "wifi-strength-0-warning" - ], - "styles": [ - "alert", - "outline" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Alert \/ Error" - ], - "author": "Simran" - }, - { - "id": "40B4EE9D-5DA4-428C-BEF3-C75FD6740CA3", - "baseIconId": "41B86B22-7245-4A97-9BAA-3E9EBD44CEB0", - "name": "wifi-strength-lock-open-outline", - "codepoint": "F16CF", - "aliases": [], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Colton Wiscombe" - }, - { - "id": "718740BB-FC95-47E4-856B-0A469966C8DD", - "baseIconId": "41B86B22-7245-4A97-9BAA-3E9EBD44CEB0", - "name": "wifi-strength-lock-outline", - "codepoint": "F092C", - "aliases": [ - "wifi-strength-0-lock" - ], - "styles": [ - "lock", - "off" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [ - "Lock" - ], - "author": "Simran" - }, - { - "id": "122332EC-08DD-438C-BD47-AB332E1E04F6", - "baseIconId": "41B86B22-7245-4A97-9BAA-3E9EBD44CEB0", - "name": "wifi-strength-off", - "codepoint": "F092D", - "aliases": [], - "styles": [ - "off" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "E4D2EA69-5F99-4D0B-BC12-BD22A2835B19", - "baseIconId": "41B86B22-7245-4A97-9BAA-3E9EBD44CEB0", - "name": "wifi-strength-off-outline", - "codepoint": "F092E", - "aliases": [], - "styles": [ - "off", - "outline" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "0DAAFF13-5A8D-44C3-AE46-9DDE62493C60", - "baseIconId": "41B86B22-7245-4A97-9BAA-3E9EBD44CEB0", - "name": "wifi-strength-outline", - "codepoint": "F092F", - "aliases": [ - "wifi-strength-0" - ], - "styles": [ - "outline" - ], - "version": "2.3.50", - "deprecated": false, - "tags": [], - "author": "Simran" - }, - { - "id": "73D9D138-DCB0-4CA7-9AB9-5C3BCB4D2165", - "baseIconId": "E77CF681-7DD0-4EDF-AA35-0DB80790BC03", - "name": "wifi-sync", - "codepoint": "F16C7", - "aliases": [], - "styles": [], - "version": "5.8.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "19DE621D-F082-42B5-9FD3-FEF8D84A2BB9", - "baseIconId": "19DE621D-F082-42B5-9FD3-FEF8D84A2BB9", - "name": "wikipedia", - "codepoint": "F05AC", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "4A21CDF6-CF3E-46DB-8A1E-A5F51225DDE3", - "baseIconId": "4A21CDF6-CF3E-46DB-8A1E-A5F51225DDE3", - "name": "wind-power", - "codepoint": "F1A88", - "aliases": [ - "wind-energy", - "wind-electricity" - ], - "styles": [], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "4ED15D1F-9A58-4E07-BA71-3DCEAC67F59D", - "baseIconId": "4A21CDF6-CF3E-46DB-8A1E-A5F51225DDE3", - "name": "wind-power-outline", - "codepoint": "F1A89", - "aliases": [ - "wind-energy-outline", - "wind-electricity-outline" - ], - "styles": [ - "outline" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "9DABF133-FBE0-416C-82D8-F47E8A559E12", - "baseIconId": "9DABF133-FBE0-416C-82D8-F47E8A559E12", - "name": "wind-turbine", - "codepoint": "F0DA5", - "aliases": [ - "wind-power", - "wind-electricity" - ], - "styles": [], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Google" - }, - { - "id": "E77F8623-2F40-49A2-AE26-40B7B9AFA6AF", - "baseIconId": "9DABF133-FBE0-416C-82D8-F47E8A559E12", - "name": "wind-turbine-alert", - "codepoint": "F19AB", - "aliases": [ - "wind-power-alert", - "wind-turbine-warning" - ], - "styles": [ - "alert" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Alert \/ Error" - ], - "author": "Michael Irigoyen" - }, - { - "id": "6B86211C-130B-4A90-A9C7-9B58A5228D30", - "baseIconId": "9DABF133-FBE0-416C-82D8-F47E8A559E12", - "name": "wind-turbine-check", - "codepoint": "F19AC", - "aliases": [ - "wind-power-check", - "wind-turbine-success", - "wind-power-success" - ], - "styles": [ - "check" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0CB92EB7-2EE0-401C-9113-7D52E78DB51E", - "baseIconId": "0CB92EB7-2EE0-401C-9113-7D52E78DB51E", - "name": "window-close", - "codepoint": "F05AD", - "aliases": [ - "cancel", - "close" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "42DDDE71-7AA4-4A61-98F5-2A3B0AD486FF", - "baseIconId": "42DDDE71-7AA4-4A61-98F5-2A3B0AD486FF", - "name": "window-closed", - "codepoint": "F05AE", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "8A71B80F-BEE0-4603-8EB3-06699D1140FF", - "baseIconId": "42DDDE71-7AA4-4A61-98F5-2A3B0AD486FF", - "name": "window-closed-variant", - "codepoint": "F11DB", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "AB365770-45CF-44AC-941E-8E1396FAF428", - "baseIconId": "AB365770-45CF-44AC-941E-8E1396FAF428", - "name": "window-maximize", - "codepoint": "F05AF", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "C329F2CA-AC52-45CD-87D7-253AB115D47F", - "baseIconId": "C329F2CA-AC52-45CD-87D7-253AB115D47F", - "name": "window-minimize", - "codepoint": "F05B0", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "5617DB90-FDD7-4909-B322-D1EC44EB1372", - "baseIconId": "42DDDE71-7AA4-4A61-98F5-2A3B0AD486FF", - "name": "window-open", - "codepoint": "F05B1", - "aliases": [], - "styles": [ - "variant" - ], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Austin Andrews" - }, - { - "id": "47841D12-3D7E-40C1-9230-08C8890E0067", - "baseIconId": "42DDDE71-7AA4-4A61-98F5-2A3B0AD486FF", - "name": "window-open-variant", - "codepoint": "F11DC", - "aliases": [], - "styles": [], - "version": "4.5.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Richins" - }, - { - "id": "405C8463-0E67-48A3-B824-7C5E74423125", - "baseIconId": "405C8463-0E67-48A3-B824-7C5E74423125", - "name": "window-restore", - "codepoint": "F05B2", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "0893E339-7750-4CAB-8C19-6496711F3C37", - "baseIconId": "0893E339-7750-4CAB-8C19-6496711F3C37", - "name": "window-shutter", - "codepoint": "F111C", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "idevo89" - }, - { - "id": "8D6FB7B2-191F-459C-A41A-1D8881EA286B", - "baseIconId": "0893E339-7750-4CAB-8C19-6496711F3C37", - "name": "window-shutter-alert", - "codepoint": "F111D", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Home Automation", - "Alert \/ Error" - ], - "author": "idevo89" - }, - { - "id": "20BDF96D-E685-450D-8555-199115B7628F", - "baseIconId": "0893E339-7750-4CAB-8C19-6496711F3C37", - "name": "window-shutter-auto", - "codepoint": "F1BA3", - "aliases": [], - "styles": [], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "Michael Irigoyen" - }, - { - "id": "E71049A9-FDB3-47BD-A1CA-9CA952627DDE", - "baseIconId": "0893E339-7750-4CAB-8C19-6496711F3C37", - "name": "window-shutter-cog", - "codepoint": "F1A8A", - "aliases": [ - "window-shutter-settings" - ], - "styles": [ - "cog" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation", - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "955A5813-3414-4712-ADF4-62878A42D3B9", - "baseIconId": "0893E339-7750-4CAB-8C19-6496711F3C37", - "name": "window-shutter-open", - "codepoint": "F111E", - "aliases": [], - "styles": [], - "version": "4.3.95", - "deprecated": false, - "tags": [ - "Home Automation" - ], - "author": "idevo89" - }, - { - "id": "1361AC2A-CE62-44C5-99BE-3DBA2B14D318", - "baseIconId": "0893E339-7750-4CAB-8C19-6496711F3C37", - "name": "window-shutter-settings", - "codepoint": "F1A8B", - "aliases": [], - "styles": [ - "settings" - ], - "version": "6.7.96", - "deprecated": false, - "tags": [ - "Home Automation", - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0D2A52AA-2CAE-427F-887E-6198929D6855", - "baseIconId": "0D2A52AA-2CAE-427F-887E-6198929D6855", - "name": "windsock", - "codepoint": "F15FA", - "aliases": [], - "styles": [], - "version": "5.6.55", - "deprecated": false, - "tags": [ - "Weather" - ], - "author": "Michael Irigoyen" - }, - { - "id": "70D590C8-8B7E-4F4A-A9FC-31765D35F349", - "baseIconId": "70D590C8-8B7E-4F4A-A9FC-31765D35F349", - "name": "wiper", - "codepoint": "F0AE9", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "CC8D7DD6-699C-4746-ACAB-84DCA7BBC5E9", - "baseIconId": "70D590C8-8B7E-4F4A-A9FC-31765D35F349", - "name": "wiper-wash", - "codepoint": "F0DA6", - "aliases": [ - "wiper-fluid", - "washer-fluid" - ], - "styles": [ - "variant" - ], - "version": "3.4.93", - "deprecated": false, - "tags": [ - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0BC113C0-8EC6-479E-86B6-A8F88C6B0371", - "baseIconId": "70D590C8-8B7E-4F4A-A9FC-31765D35F349", - "name": "wiper-wash-alert", - "codepoint": "F18DF", - "aliases": [ - "wiper-fluid-alert", - "washer-fluid-alert", - "wiper-fluid-low", - "washer-fluid-low" - ], - "styles": [ - "alert", - "variant" - ], - "version": "6.3.95", - "deprecated": false, - "tags": [ - "Alert \/ Error", - "Automotive" - ], - "author": "Michael Irigoyen" - }, - { - "id": "464D9AC5-8A79-4E35-89E3-D84DDC0056A3", - "baseIconId": "464D9AC5-8A79-4E35-89E3-D84DDC0056A3", - "name": "wizard-hat", - "codepoint": "F1477", - "aliases": [], - "styles": [], - "version": "5.2.45", - "deprecated": false, - "tags": [ - "Clothing", - "Gaming \/ RPG" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0059A2CA-E266-4A57-9EE8-4520B7330D5C", - "baseIconId": "0059A2CA-E266-4A57-9EE8-4520B7330D5C", - "name": "wordpress", - "codepoint": "F05B4", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "79D47101-F8CB-496B-99B0-957DADED5D44", - "baseIconId": "79D47101-F8CB-496B-99B0-957DADED5D44", - "name": "wrap", - "codepoint": "F05B6", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Doug C. Hardester" - }, - { - "id": "44C4926C-7F82-4A6A-8F55-A7B23E56A9D7", - "baseIconId": "79D47101-F8CB-496B-99B0-957DADED5D44", - "name": "wrap-disabled", - "codepoint": "F0BDF", - "aliases": [ - "unwrap" - ], - "styles": [], - "version": "3.0.39", - "deprecated": false, - "tags": [], - "author": "Leo SF" - }, - { - "id": "CACAAE64-D38D-423E-8C84-68EFF0EA0F8A", - "baseIconId": "CACAAE64-D38D-423E-8C84-68EFF0EA0F8A", - "name": "wrench", - "codepoint": "F05B7", - "aliases": [ - "build", - "spanner" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Google" - }, - { - "id": "ADF2E260-DDB1-4561-B453-0293C8AA773F", - "baseIconId": "CACAAE64-D38D-423E-8C84-68EFF0EA0F8A", - "name": "wrench-check", - "codepoint": "F1B8F", - "aliases": [], - "styles": [ - "check" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Andrej Sharapov" - }, - { - "id": "319DEB6A-C5F2-4787-BAE1-33BA7BE23BE3", - "baseIconId": "CACAAE64-D38D-423E-8C84-68EFF0EA0F8A", - "name": "wrench-check-outline", - "codepoint": "F1B90", - "aliases": [], - "styles": [ - "check", - "outline" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [], - "author": "Michael Irigoyen" - }, - { - "id": "922891A9-0422-4BCD-9CE7-2FA1E7134EAB", - "baseIconId": "CACAAE64-D38D-423E-8C84-68EFF0EA0F8A", - "name": "wrench-clock", - "codepoint": "F19A3", - "aliases": [ - "scheduled-maintenance", - "wrench-time", - "tool-time", - "tool-clock" - ], - "styles": [ - "clock" - ], - "version": "6.5.95", - "deprecated": false, - "tags": [ - "Date \/ Time", - "Hardware \/ Tools" - ], - "author": "Simran" - }, - { - "id": "5D30C3F8-E717-4D12-AA8A-E6E9461BF849", - "baseIconId": "5D30C3F8-E717-4D12-AA8A-E6E9461BF849", - "name": "wrench-clock-outline", - "codepoint": "F1B93", - "aliases": [], - "styles": [], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Date \/ Time" - ], - "author": "Michael Irigoyen" - }, - { - "id": "321D5871-1A24-4817-9B36-AFBA993D34A0", - "baseIconId": "CACAAE64-D38D-423E-8C84-68EFF0EA0F8A", - "name": "wrench-cog", - "codepoint": "F1B91", - "aliases": [ - "wrench-settings" - ], - "styles": [ - "cog" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Andrej Sharapov" - }, - { - "id": "D13707EF-6219-4BCC-93EF-2B11BC627EDE", - "baseIconId": "CACAAE64-D38D-423E-8C84-68EFF0EA0F8A", - "name": "wrench-cog-outline", - "codepoint": "F1B92", - "aliases": [ - "wrench-settings-outline" - ], - "styles": [ - "cog", - "outline" - ], - "version": "7.0.96", - "deprecated": false, - "tags": [ - "Settings" - ], - "author": "Michael Irigoyen" - }, - { - "id": "040BA3F6-86B3-4597-9EBE-C6D6A916091D", - "baseIconId": "CACAAE64-D38D-423E-8C84-68EFF0EA0F8A", - "name": "wrench-outline", - "codepoint": "F0BE0", - "aliases": [ - "build-outline", - "spanner-outline" - ], - "styles": [ - "outline" - ], - "version": "3.0.39", - "deprecated": false, - "tags": [ - "Hardware \/ Tools" - ], - "author": "Google" - }, - { - "id": "958B8A8B-A4D7-45A4-8C80-39F7140443C0", - "baseIconId": "958B8A8B-A4D7-45A4-8C80-39F7140443C0", - "name": "xamarin", - "codepoint": "F0845", - "aliases": [ - "microsoft-xamarin" - ], - "styles": [], - "version": "2.1.19", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "994C18D8-DAF1-4311-A30B-CD93F5ADC233", - "baseIconId": "994C18D8-DAF1-4311-A30B-CD93F5ADC233", - "name": "xml", - "codepoint": "F05C0", - "aliases": [ - "code" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Developer \/ Languages" - ], - "author": "Austin Andrews" - }, - { - "id": "F2F74E7E-9EC8-4748-AF3B-A14D6158770D", - "baseIconId": "F2F74E7E-9EC8-4748-AF3B-A14D6158770D", - "name": "xmpp", - "codepoint": "F07FF", - "aliases": [], - "styles": [], - "version": "2.0.46", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "63AB3732-B3D1-4AFA-81B5-5D0F40E5D0E0", - "baseIconId": "63AB3732-B3D1-4AFA-81B5-5D0F40E5D0E0", - "name": "yahoo", - "codepoint": "F0B4F", - "aliases": [], - "styles": [], - "version": "2.8.94", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "17C0DA66-AB24-4935-A928-26BE13FDC3C0", - "baseIconId": "17C0DA66-AB24-4935-A928-26BE13FDC3C0", - "name": "yeast", - "codepoint": "F05C1", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "068670F6-B9DF-40C5-8C50-C9A3953F6201", - "baseIconId": "068670F6-B9DF-40C5-8C50-C9A3953F6201", - "name": "yin-yang", - "codepoint": "F0680", - "aliases": [ - "taoism" - ], - "styles": [], - "version": "1.7.12", - "deprecated": false, - "tags": [], - "author": "Austin Andrews" - }, - { - "id": "82F65F53-8458-4F6D-8151-D20FFDDC09C2", - "baseIconId": "82F65F53-8458-4F6D-8151-D20FFDDC09C2", - "name": "yoga", - "codepoint": "F117C", - "aliases": [], - "styles": [], - "version": "4.4.95", - "deprecated": false, - "tags": [ - "Sport" - ], - "author": "Michael Irigoyen" - }, - { - "id": "0A078909-90AF-41F5-8E76-CAB565D49AAA", - "baseIconId": "0A078909-90AF-41F5-8E76-CAB565D49AAA", - "name": "youtube", - "codepoint": "F05C3", - "aliases": [ - "video-youtube", - "youtube-play" - ], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo", - "Social Media" - ], - "author": "Google" - }, - { - "id": "9C80F67A-8A15-4109-BA37-7B92FE1F67DB", - "baseIconId": "9C80F67A-8A15-4109-BA37-7B92FE1F67DB", - "name": "youtube-gaming", - "codepoint": "F0848", - "aliases": [], - "styles": [], - "version": "2.1.19", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "7150F7D3-B162-41DE-80A8-5DFD930EDF1B", - "baseIconId": "7150F7D3-B162-41DE-80A8-5DFD930EDF1B", - "name": "youtube-studio", - "codepoint": "F0847", - "aliases": [ - "youtube-creator-studio" - ], - "styles": [], - "version": "2.1.19", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "E06EE7FD-6CC5-4BB4-9B00-1397D6E18DDF", - "baseIconId": "E06EE7FD-6CC5-4BB4-9B00-1397D6E18DDF", - "name": "youtube-subscription", - "codepoint": "F0D40", - "aliases": [], - "styles": [], - "version": "3.3.92", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "011BAC94-8FD5-4335-AFF3-120C04299E78", - "baseIconId": "011BAC94-8FD5-4335-AFF3-120C04299E78", - "name": "youtube-tv", - "codepoint": "F0448", - "aliases": [], - "styles": [], - "version": "1.5.54", - "deprecated": true, - "tags": [ - "Brand \/ Logo" - ], - "author": "Google" - }, - { - "id": "9BCCFDB1-42DE-4807-BF9B-36AD3B40B996", - "baseIconId": "9BCCFDB1-42DE-4807-BF9B-36AD3B40B996", - "name": "yurt", - "codepoint": "F1516", - "aliases": [], - "styles": [], - "version": "5.4.55", - "deprecated": false, - "tags": [], - "author": "Colton Wiscombe" - }, - { - "id": "6A2E5A75-34CC-4B32-A1F6-156803328935", - "baseIconId": "6A2E5A75-34CC-4B32-A1F6-156803328935", - "name": "z-wave", - "codepoint": "F0AEA", - "aliases": [ - "zwave" - ], - "styles": [], - "version": "2.7.94", - "deprecated": true, - "tags": [ - "Home Automation", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "989885C5-DF4B-4B6E-B17B-7E74F2AEE1DB", - "baseIconId": "989885C5-DF4B-4B6E-B17B-7E74F2AEE1DB", - "name": "zend", - "codepoint": "F0AEB", - "aliases": [], - "styles": [], - "version": "2.7.94", - "deprecated": true, - "tags": [ - "Developer \/ Languages", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "C4D3EAAC-C54B-4406-BCB4-8C08E2B07451", - "baseIconId": "C4D3EAAC-C54B-4406-BCB4-8C08E2B07451", - "name": "zigbee", - "codepoint": "F0D41", - "aliases": [], - "styles": [], - "version": "3.3.92", - "deprecated": true, - "tags": [ - "Home Automation", - "Brand \/ Logo" - ], - "author": "Contributors" - }, - { - "id": "00A83C35-A726-464B-ACEE-F0D690045C25", - "baseIconId": "00A83C35-A726-464B-ACEE-F0D690045C25", - "name": "zip-box", - "codepoint": "F05C4", - "aliases": [ - "compressed-file" - ], - "styles": [], - "version": "1.5.54", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Google" - }, - { - "id": "19E804D8-154F-4250-82D3-76F5401B5674", - "baseIconId": "00A83C35-A726-464B-ACEE-F0D690045C25", - "name": "zip-box-outline", - "codepoint": "F0FFA", - "aliases": [ - "compressed-file-outline" - ], - "styles": [ - "outline" - ], - "version": "4.0.96", - "deprecated": false, - "tags": [ - "Files \/ Folders" - ], - "author": "Michael Irigoyen" - }, - { - "id": "775EA566-CF0B-473E-B43E-59319FC83D38", - "baseIconId": "775EA566-CF0B-473E-B43E-59319FC83D38", - "name": "zip-disk", - "codepoint": "F0A23", - "aliases": [], - "styles": [], - "version": "2.5.94", - "deprecated": false, - "tags": [], - "author": "GreenTurtwig" - }, - { - "id": "8E27593E-7C4E-41F7-A238-865DA00CDEE7", - "baseIconId": "8E27593E-7C4E-41F7-A238-865DA00CDEE7", - "name": "zodiac-aquarius", - "codepoint": "F0A7D", - "aliases": [ - "horoscope-aquarius" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "8DC63282-63B3-4F4A-B976-2346FC3B7CFA", - "baseIconId": "8DC63282-63B3-4F4A-B976-2346FC3B7CFA", - "name": "zodiac-aries", - "codepoint": "F0A7E", - "aliases": [ - "horoscope-aries" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "DCBC9ECE-641C-40E1-BD15-2F02F8412780", - "baseIconId": "DCBC9ECE-641C-40E1-BD15-2F02F8412780", - "name": "zodiac-cancer", - "codepoint": "F0A7F", - "aliases": [ - "horoscope-cancer" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "6310BE95-A7A4-4A4C-A478-059DCA6C4E0B", - "baseIconId": "6310BE95-A7A4-4A4C-A478-059DCA6C4E0B", - "name": "zodiac-capricorn", - "codepoint": "F0A80", - "aliases": [ - "horoscope-capricorn" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "ECDB16AC-832D-446E-974E-9F99657685D0", - "baseIconId": "ECDB16AC-832D-446E-974E-9F99657685D0", - "name": "zodiac-gemini", - "codepoint": "F0A81", - "aliases": [ - "horoscope-gemini" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "D280F50D-92FC-4DA2-BBAD-CE93140E6FEA", - "baseIconId": "D280F50D-92FC-4DA2-BBAD-CE93140E6FEA", - "name": "zodiac-leo", - "codepoint": "F0A82", - "aliases": [ - "horoscope-leo" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "142861F0-C930-43ED-B186-4BD97C175394", - "baseIconId": "142861F0-C930-43ED-B186-4BD97C175394", - "name": "zodiac-libra", - "codepoint": "F0A83", - "aliases": [ - "horoscope-libra" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "3410C5F7-CAEF-405C-9159-86F38ACE9619", - "baseIconId": "3410C5F7-CAEF-405C-9159-86F38ACE9619", - "name": "zodiac-pisces", - "codepoint": "F0A84", - "aliases": [ - "horoscope-pisces" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "1FC91C87-E02C-4830-B0A6-6EA7CDABB8D3", - "baseIconId": "1FC91C87-E02C-4830-B0A6-6EA7CDABB8D3", - "name": "zodiac-sagittarius", - "codepoint": "F0A85", - "aliases": [ - "horoscope-sagittarius" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "0AEE35B6-4A9F-422A-BCC8-395174DCBA71", - "baseIconId": "0AEE35B6-4A9F-422A-BCC8-395174DCBA71", - "name": "zodiac-scorpio", - "codepoint": "F0A86", - "aliases": [ - "horoscope-scorpio" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "40205151-C976-49D8-98F1-A0E120086E07", - "baseIconId": "40205151-C976-49D8-98F1-A0E120086E07", - "name": "zodiac-taurus", - "codepoint": "F0A87", - "aliases": [ - "horoscope-taurus" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - }, - { - "id": "41D13BD9-7CB3-4015-A845-485B9915FA65", - "baseIconId": "41D13BD9-7CB3-4015-A845-485B9915FA65", - "name": "zodiac-virgo", - "codepoint": "F0A88", - "aliases": [ - "horoscope-virgo" - ], - "styles": [], - "version": "2.6.95", - "deprecated": false, - "tags": [], - "author": "Michael Richins" - } -] \ No newline at end of file diff --git a/custom_components/opendisplay/imagegen/assets/ppb.ttf b/custom_components/opendisplay/imagegen/assets/ppb.ttf deleted file mode 100644 index 00559eeb290fb8036f10633ff0640447d827b27c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 153944 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%0AC7VmlS@LZ-TEZV}oirP&oT11@@uCp8_l( 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 X76wnEi(n^v8!x?bp_;lO!DIggn3ZN8 diff --git a/custom_components/opendisplay/imagegen/colors.py b/custom_components/opendisplay/imagegen/colors.py deleted file mode 100644 index c2796cd..0000000 --- a/custom_components/opendisplay/imagegen/colors.py +++ /dev/null @@ -1,70 +0,0 @@ -# Color constants with alpha channel -WHITE = (255, 255, 255, 255) -BLACK = (0, 0, 0, 255) -HALF_BLACK = (127, 127, 127, 255) -RED = (255, 0, 0, 255) -HALF_RED = (255, 127, 127, 255) -YELLOW = (255, 255, 0, 255) -HALF_YELLOW = (255, 255, 127, 255) -GREEN = (0, 255, 0, 255) -BLUE = (0, 0, 255, 255) - - -class ColorResolver: - """Resolves color inputs to RGBA tuples.""" - - def __init__(self, accent_color: str = "red"): - self.accent_color = accent_color - - def resolve(self, color: str | None) -> tuple[int, int, int, int] | None: - """Resolve color input to RGBA tuple.""" - if color is None: - return None - - color_str = str(color).lower() - - # Hex color support: #RGB or #RRGGBB - if color_str.startswith('#'): - return self._parse_hex(color_str[1:]) - - return self._resolve_named(color_str) - - @staticmethod - def _parse_hex(hex_val: str) -> tuple[int, int, int, int]: - """Parse hex color string to RGBA tuple.""" - if len(hex_val) == 3: - r = int(hex_val[0] * 2, 16) - g = int(hex_val[1] * 2, 16) - b = int(hex_val[2] * 2, 16) - elif len(hex_val) == 6: - r = int(hex_val[0:2], 16) - g = int(hex_val[2:4], 16) - b = int(hex_val[4:6], 16) - else: - return WHITE - return r, g, b, 255 - - def _resolve_named(self, color_str: str) -> tuple[int, int, int, int]: - """Resolve named color to RGBA tuple.""" - if color_str in ("black", "b"): - return BLACK - if color_str in ("half_black", "hb", "gray", "grey", "half_white", - "hw"): - return HALF_BLACK - if color_str in ("accent", "a"): - return YELLOW if self.accent_color == "yellow" else RED - if color_str in ("half_accent", "ha"): - return HALF_YELLOW if self.accent_color == "yellow" else HALF_RED - if color_str in ("red", "r"): - return RED - if color_str in ("half_red", "hr"): - return HALF_RED - if color_str in ("yellow", "y"): - return YELLOW - if color_str in ("half_yellow", "hy"): - return HALF_YELLOW - if color_str in ("green", "gr"): - return GREEN - if color_str in ("blue", "bl"): - return BLUE - return WHITE diff --git a/custom_components/opendisplay/imagegen/coordinates.py b/custom_components/opendisplay/imagegen/coordinates.py deleted file mode 100644 index 5f9f4d6..0000000 --- a/custom_components/opendisplay/imagegen/coordinates.py +++ /dev/null @@ -1,110 +0,0 @@ -class CoordinateParser: - """Helper class for parsing coordinates with percentage support. - - This class handles the conversion of coordinates from different formats - (absolute pixels or percentages) to absolute pixel values based on the - canvas dimensions. It simplifies positioning elements in relation to - the canvas size. - - Attributes: - width: Canvas width in pixels - height: Canvas height in pixels - """ - - def __init__(self, canvas_width: int, canvas_height: int): - """Initialize with canvas dimensions. - - Args: - canvas_width: Width of the canvas in pixels - canvas_height: Height of the canvas in pixels - """ - self.width = canvas_width - self.height = canvas_height - - @staticmethod - def _parse_dimension(value: str | int | float, total_dimension: int) -> int: - """Convert a dimension value (pixels or percentage) to absolute pixels. - - Args: - value: The dimension value (e.g., "50%", 50, "50") - total_dimension: The total available dimension (width or height) - - Returns: - int: The calculated pixel value - """ - if isinstance(value, (int, float)): - return int(value) - - value = str(value).strip() - if value.endswith('%'): - try: - percentage = float(value[:-1]) - return int((percentage / 100) * total_dimension) - except ValueError: - return 0 - try: - return int(float(value)) - except ValueError: - return 0 - - def parse_x(self, value: str | int | float) -> int: - """Parse x coordinate value. - - Converts an x-coordinate from any supported format to absolute pixels. - Handles percentage values relative to canvas width. - - Args: - value: The x coordinate in pixels or percentage - - Returns: - int: The x coordinate in absolute pixels - """ - return self._parse_dimension(value, self.width) - - def parse_y(self, value: str | int | float) -> int: - """Parse y coordinate value. - - Converts a y-coordinate from any supported format to absolute pixels. - Handles percentage values relative to canvas height. - - Args: - value: The y coordinate in pixels or percentage - - Returns: - int: The y coordinate in absolute pixels - """ - return self._parse_dimension(value, self.height) - - def parse_size(self, value: str | int | float, is_width: bool = True) -> int: - """Parse size value. - - Converts a size value from any supported format to absolute pixels. - For percentage sizes, uses the appropriate dimension (width or height) - as the base for calculation. - - Args: - value: The size in pixels or percentage - is_width: Whether this is a width (True) or height (False) value - - Returns: - int: The size in absolute pixels - """ - return self._parse_dimension(value, self.width if is_width else self.height) - - def parse_coordinates(self, element: dict, prefix: str = '') -> tuple[int, int]: - """Parse x,y coordinates from element with given prefix. - - Args: - element: Element dictionary - prefix: Optional prefix for coordinate keys (e.g., 'start_' or 'end_') - - Returns: - tuple: (x, y) coordinates in pixels - """ - x_key = f"{prefix}x" - y_key = f"{prefix}y" - - x = self.parse_x(element.get(x_key, 0)) - y = self.parse_y(element.get(y_key, 0)) - - return x, y \ No newline at end of file diff --git a/custom_components/opendisplay/imagegen/core.py b/custom_components/opendisplay/imagegen/core.py deleted file mode 100644 index 42b90af..0000000 --- a/custom_components/opendisplay/imagegen/core.py +++ /dev/null @@ -1,405 +0,0 @@ -from __future__ import annotations - -import logging -from typing import Optional, Dict, Any - -from PIL import Image -from homeassistant.core import HomeAssistant -from homeassistant.exceptions import HomeAssistantError, ServiceValidationError - -from ..const import DOMAIN -from ..tag_types import TagType, get_tag_types_manager -from ..util import get_hub_from_hass -from ..runtime_data import OpenDisplayBLERuntimeData - -from .types import ElementType, DrawingContext -from .colors import ColorResolver -from .coordinates import CoordinateParser -from .fonts import FontManager -from .registry import get_all_handlers - -# Import handler modules to trigger decorator registration -from . import text, shapes, icons, media, visualizations, debug - -_LOGGER = logging.getLogger(__name__) - - -def _detect_accent_color_from_color_table(color_table: dict) -> str: - """ - Detect accent color from color table based on available colors. - - Logic mirrors ColorScheme: - - - If yellow in pallete but red not in palette -> yellow - - If red in palette -> red - - Else -> black - - Returns: - str: Detected accent color name - """ - has_red = "red" in color_table - has_yellow = "yellow" in color_table - - if has_yellow and not has_red: - return "yellow" - elif has_red: - return "red" - else: - return "black" - - -class ImageGen: - """Handles custom image generation for ESLs. - - This is the core class of the module, responsible for generating images - for electronic shelf labels (ESLs). It provides methods for drawing various - elements like text, shapes, images, etc., and combines them into a final image. - - The class supports a variety of element types, each with its own drawing method, - and handles the common aspects of image generation such as tag information retrieval, - element validation, and drawing coordination. - """ - - def __init__(self, hass: HomeAssistant): - """Initialize the image generator. - - Sets up the image generator with the necessary components and handlers. - - Args: - hass: Home Assistant instance - """ - self.hass = hass - - # Load font manager - find a Hub entry with .entry attribute, or None for BLE-only setups - self._entry = None - for entry in hass.config_entries.async_entries(DOMAIN): - if hasattr(entry, 'runtime_data') and entry.runtime_data is not None: - # Look for Hub entries (not BLE entries) - if not isinstance(entry.runtime_data, OpenDisplayBLERuntimeData): - self._entry = entry - break - # If no Hub found, self._entry stays None (BLE-only setup) - - self._font_manager = FontManager(self.hass, self._entry) - - # Initialize handler mapping - self._draw_handlers = { - element_type: handler - for element_type, (handler, _) in get_all_handlers().items() - } - - async def get_tag_info(self, entity_id: str) -> Optional[tuple[TagType, str]]: - """Get tag type information for an entity. - - Retrieves tag type information and accent color for the specified entity. - This includes display dimensions, color capabilities, and other hardware details. - - Args: - entity_id: The entity ID to get tag information for - - Returns: - tuple: (TagType object, accent color string) - None: If tag information could not be retrieved - - Raises: - HomeAssistantError: For various error conditions (offline AP, unknown tag, etc.) - """ - - try: - # Get hub instance - hub = get_hub_from_hass(self.hass) - if not hub.online: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="ap_offline_core", - ) - - # Get tag MAC from entity ID - try: - tag_mac = entity_id.split(".")[1].upper() - except IndexError: - raise ServiceValidationError( - translation_domain=DOMAIN, - translation_key="invalid_entity_id_format", - translation_placeholders={"entity_id": entity_id} - ) - # First check if tag is known to the hub - if tag_mac not in hub.tags: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="tag_not_registered", - translation_placeholders={"tag_mac": tag_mac}, - ) - - # Check if tag is blacklisted - if tag_mac in hub.get_blacklisted_tags(): - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="tag_blacklisted", - translation_placeholders={"tag_mac": tag_mac}, - ) - - # Get tag data - should exist since hub.tags was checked - tag_data = hub.get_tag_data(tag_mac) - if not tag_data: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="tag_inconsistent", - translation_placeholders={"tag_mac": tag_mac}, - ) - - # Get hardware type - hw_type = tag_data.get("hw_type") - if hw_type is None: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="tag_no_hw_type", - translation_placeholders={"tag_mac": tag_mac}, - ) - - # Get tag type information - tag_manager = await get_tag_types_manager(self.hass) - tag_type = await tag_manager.get_tag_info(hw_type) - - if not tag_type: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="tag_unknown_hw_type", - translation_placeholders={"hw_type": hw_type}, - ) - # Get accent color from tag type's color table if it exists - # Default to red if no color table or no accent specified - try: - color_table = getattr(tag_type, 'color_table', {}) - accent_color = _detect_accent_color_from_color_table(color_table) - except Exception as e: - _LOGGER.warning("Error getting accent color, defaulting to red: %s", e) - accent_color = "red" - return tag_type, accent_color - - except Exception as e: - # Convert any unknown exceptions to HomeAssistantError with context - if not isinstance(e, HomeAssistantError): - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="ble_tag_info_unexpected", - translation_placeholders={"entity_id": entity_id, "error": str(e)}, - ) from e - raise - - async def get_ble_tag_info(self, hass: HomeAssistant, entity_id: str) -> tuple[int, int, str]: - """Get tag type information for a BLE entity. - - Retrieves tag type information and accent color for BLE devices from - stored device metadata instead of Hub data. - - Args: - hass: Home Assistant instance - entity_id: The BLE entity ID to get tag information for - - Returns: - tuple: (width, height, accent_color) - - Raises: - HomeAssistantError: If BLE device metadata is not found - """ - try: - # Get MAC from entity ID - try: - tag_mac = entity_id.split(".")[1].upper() - except IndexError: - raise ServiceValidationError( - translation_domain=DOMAIN, - translation_key="invalid_entity_id_format", - translation_placeholders={"entity_id": entity_id} - ) - # Get device metadata from config entry runtime_data - device_metadata = None - - # Find the config entry for this BLE device - for entry in hass.config_entries.async_entries(DOMAIN): - runtime_data = getattr(entry, 'runtime_data', None) - if runtime_data is not None and isinstance(runtime_data, OpenDisplayBLERuntimeData): - if runtime_data.mac_address.upper() == tag_mac: - device_metadata = runtime_data.device_metadata - protocol_type = runtime_data.protocol_type - break - - if not device_metadata: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="ble_no_metadata", - translation_placeholders={"entity_id": entity_id} - ) - # Wrap metadata for clean access - from ..ble import BLEDeviceMetadata - metadata = BLEDeviceMetadata(device_metadata) - - # Extract device capabilities - hw_type = metadata.hw_type - width = metadata.width - height = metadata.height - - _LOGGER.debug("BLE device metadata for %s: width=%d, height=%d", entity_id, width, height) - - color_scheme = metadata.color_scheme - - color_table = {name: list(rgb) for name, rgb in color_scheme.palette.colors.items()} - color_table["accent"] = color_scheme.accent_color - accent_color = color_scheme.accent_color - - return width, height, accent_color - - except Exception as e: - # Convert any unknown exceptions to HomeAssistantError with context - if not isinstance(e, HomeAssistantError): - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="ble_tag_info_unexpected_ble", - translation_placeholders={"entity_id": entity_id, "error": str(e)}, - ) from e - raise - - async def get_tag_dimensions( - self, - entity_id: str, - is_ble: bool = False - ) -> tuple[int, int, str]: - """ - Get dimensions and accent color for any device type. - - Unified interface for both AP and BLE devices. - - Args: - entity_id: The entity ID - is_ble: True if the device is BLE, False for AP devices - - Returns: - tuple: (width, height, accent_color) - - Raises: - HomeAssistantError: If tag information could not be retrieved - """ - if is_ble: - return await self.get_ble_tag_info(self.hass, entity_id) - else: - tag_type, accent_color = await self.get_tag_info(entity_id) - return tag_type.width, tag_type.height, accent_color - - @staticmethod - def should_show_element(element: dict) -> bool: - """Check if an element should be displayed. - - Elements can be hidden by setting visible=False in their definition. - This is useful for conditional rendering. - - Args: - element: Element dictionary - - Returns: - bool: True if the element should be displayed, False otherwise - """ - - return element.get("visible", True) - - async def generate_custom_image( - self, - entity_id: str, - service_data: Dict[str, Any], - error_collector: list = None, - *, - width: int, - height: int, - accent_color: str, - ) -> Image.Image: - """Generate a custom image based on service data. - - Main entry point for image generation. Creates an image with the - specified elements and returns the rendered image. - - Args: - entity_id: The entity ID to generate the image for - service_data: Service data containing image parameters and payload - error_collector: Optional list to collect error messages - width: Canvas width in pixels - height: Canvas height in pixels - accent_color: Accent color name - - Returns: - Image.Image: Rendered RGB image - - Raises: - HomeAssistantError: If image generation fails - """ - - error_collector = error_collector if error_collector is not None else [] - - canvas_width = width - canvas_height = height - - # Validate dimensions to prevent PIL errors - if canvas_width <= 0 or canvas_height <= 0: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="invalid_canvas_dimensions", - translation_placeholders={"width": canvas_width, "height": canvas_height, "entity_id": entity_id} - ) - - _LOGGER.debug("Canvas dimensions for %s: %dx%d", entity_id, canvas_width, canvas_height) - - colors = ColorResolver(accent_color) - - # Get rotation and create base image - rotate = service_data.get("rotate", 0) - if rotate in (0, 180): - img = Image.new('RGBA', (canvas_width, canvas_height), - color=colors.resolve(service_data.get("background", "white"))) - else: - img = Image.new('RGBA', (canvas_height, canvas_width), - color=colors.resolve(service_data.get("background", "white"))) - - payload = service_data.get("payload", []) - - ctx = DrawingContext( - img=img, - colors=colors, - coords=CoordinateParser(img.width, img.height), - fonts=self._font_manager, - hass=self.hass, - pos_y=0 - ) - - for i, element in enumerate(payload): - if not self.should_show_element(element): - continue - - try: - # Get element type - if "type" not in element: - raise ValueError("Element missing required 'type' field") - element_type = ElementType(element["type"]) - - # Get the appropriate handler and call it - handler = self._draw_handlers.get(element_type) - if handler: - await handler(ctx, element) - else: - error_msg = f"No handler found for element type: {element_type}" - _LOGGER.warning(error_msg) - error_collector.append(f"Element {i + 1}: {error_msg}") - - except (ValueError, KeyError) as e: - error_msg = f"Element {i + 1}: {str(e)}" - _LOGGER.error(error_msg) - error_collector.append(error_msg) - continue - except Exception as e: - error_msg = f"Element {i + 1} (type '{element.get('type', 'unknown')}'): {str(e)}" - _LOGGER.error(error_msg) - error_collector.append(error_msg) - continue - # Apply rotation if needed - if rotate: - img = img.rotate(rotate, expand=True) - - return img.convert('RGB') diff --git a/custom_components/opendisplay/imagegen/debug.py b/custom_components/opendisplay/imagegen/debug.py deleted file mode 100644 index dccd04b..0000000 --- a/custom_components/opendisplay/imagegen/debug.py +++ /dev/null @@ -1,75 +0,0 @@ -from __future__ import annotations - -from PIL import ImageDraw - -from .registry import element_handler -from .shapes import draw_dashed_line -from .types import ElementType, DrawingContext - - -@element_handler(ElementType.DEBUG_GRID) -async def draw_debug_grid(ctx: DrawingContext, element: dict) -> None: - """ - Draw debug grid for layout assistance. - - Renders a grid with optional coordinate labels to help with positioning - other elements during development. - - Args: - ctx: Drawing context - element: Element dictionary with debug grid properties - """ - draw = ImageDraw.Draw(ctx.img) - width, height = ctx.img.size - - spacing = element.get("spacing", 20) - line_color = ctx.colors.resolve(element.get("line_color", "black")) - dashed = element.get("dashed", True) - dash_length = element.get("dash_length", 2) - space_length = element.get("space_length", 4) - - show_labels = element.get("show_labels", True) - label_step = element.get("label_step", spacing * 2) - label_color = ctx.colors.resolve(element.get("label_color", "black")) - label_font_size = element.get("label_font_size", 12) - font_name = element.get("font", "ppb.ttf") - font = ctx.fonts.get_font(font_name, label_font_size) - - # Helper to draw one line as dashed or solid - def draw_line_segment(p1, p2): - if dashed: - draw_dashed_line( - draw, - p1, - p2, - dash_length, - space_length, - fill=line_color, - width=1 - ) - else: - draw.line([p1, p2], fill=line_color, width=1) - - # Horizontal lines - for y in range(0, height, spacing): - draw_line_segment((0, y), (width, y)) - - # Labels - if show_labels and (y % label_step == 0): - label_text = str(y) - # Slight offset so text isn't on the line - draw.text((2, y + 2), label_text, fill=label_color, font=font) - - # Vertical lines - for x in range(0, width, spacing): - draw_line_segment((x, 0), (x, height)) - - # Labels - if show_labels and (x % label_step == 0): - label_text = str(x) - draw.text((x + 2, 2), label_text, fill=label_color, font=font) - - ctx.pos_y = height - - -# TODO: maybe add a debug function for colors? \ No newline at end of file diff --git a/custom_components/opendisplay/imagegen/fonts.py b/custom_components/opendisplay/imagegen/fonts.py deleted file mode 100644 index ffecc8d..0000000 --- a/custom_components/opendisplay/imagegen/fonts.py +++ /dev/null @@ -1,277 +0,0 @@ -from __future__ import annotations -import os -import logging -from typing import Dict, List, Tuple - -from PIL import ImageFont -from homeassistant.core import HomeAssistant -from homeassistant.exceptions import HomeAssistantError - -from ..const import DOMAIN - -_LOGGER = logging.getLogger(__name__) -_ASSETS_DIR = os.path.join(os.path.dirname(__file__), "assets") - - -class FontManager: - """Class for managing font loading, caching and path resolution. - - Handles font discovery, loading, and caching to improve performance. - Searches multiple directories for fonts and provides fallback mechanisms - for when requested fonts are not available. - """ - - def __init__(self, hass: HomeAssistant, entry=None): - """Initialize the font manager. - - Args: - hass: Home Assistant instance for config path resolution - entry: Config entry for accessing user-configured font directories - """ - self._hass = hass - self._entry = entry - self._font_cache: Dict[Tuple[str, int], ImageFont.FreeTypeFont] = {} - self._known_dirs = [] - - # Standard font directories to search - self._font_dirs = [] - self._setup_font_dirs() - - # Default font names - self._default_fonts = ["ppb.ttf", "rbm.ttf"] - - # Load initial custom font directories if entry is provided - if entry: - self._load_custom_font_dirs() - - def _setup_font_dirs(self): - """Set up font directories based on the Home Assistant environment. - - Follows the documented search order: - 1. Integration assets directory (for default fonts) - 2. Web directory (/config/www/fonts/) - 3. Media directory (/media/fonts/) - """ - # Clear existing dirs - self._font_dirs = [] - - # Integration assets directory - if os.path.exists(_ASSETS_DIR): - self._font_dirs.append(_ASSETS_DIR) - - # Web directory - www_fonts_dir = self._hass.config.path("www/fonts") - if os.path.exists(www_fonts_dir): - self._font_dirs.append(www_fonts_dir) - _LOGGER.debug(f"Found {www_fonts_dir} in Home Assistant") - - # Try to locate the media directory based on installation type - # Home Assistant OS/Supervised installations use /media - # Core/Container installations typically use /config/media - media_paths = [ - self._hass.config.path("media/fonts"), # /config/media/fonts (Core/Container) - "/media/fonts", # /media/fonts (OS/Supervised) - ] - - # Add media paths - for path in media_paths: - if os.path.exists(path): - if path not in self._font_dirs: - self._font_dirs.append(path) - _LOGGER.debug(f"Found {path} in Home Assistant") - - def get_font(self, font_name: str, size: int) -> ImageFont.FreeTypeFont: - """Get a font, loading it if necessary. - - Attempts to load the requested font from the configured font directories. - Uses a cache for performance and provides fallback to default fonts - if the requested font is not found. - - Args: - font_name: Font filename or absolute path - size: Font size in pixels - - Returns: - Loaded font object - - Raises: - HomeAssistantError: If no font could be loaded - """ - # Check if config has changed since last load - if self._entry: - custom_dirs_str = self._entry.options.get("custom_font_dirs", "") - current_dirs = [d.strip() for d in custom_dirs_str.split(";") if d.strip()] - if current_dirs != self._known_dirs: - _LOGGER.debug("Font directories changed, updating...") - - # Clear current cache - self.clear_cache() - - # Reset known dirs and load new ones - self._setup_font_dirs() - for directory in current_dirs: - if directory and directory.strip(): - self.add_font_directory(directory.strip()) - - # Update known dirs - self._known_dirs = current_dirs - - # Create cache key (font name, size) - cache_key = (font_name, size) - - # Return cached font if available - if cache_key in self._font_cache: - return self._font_cache[cache_key] - - # Load font from file - font = self._load_font(font_name, size) - - # Cache font - self._font_cache[cache_key] = font - return font - - def get_available_fonts(self) -> List[str]: - """Get list of available font names from all directories. - - Scans all configured font directories and returns a list of - available font filenames. - - Returns: - List of font filenames - """ - fonts = set() - - # Scan all directories - for directory in self._font_dirs: - if not os.path.exists(directory): - continue - - try: - # Get all TTF files in the directory - for file in os.listdir(directory): - if file.lower().endswith(('.ttf', '.otf')): - fonts.add(file) - except (OSError, IOError) as err: - _LOGGER.warning("Error scanning font directory %s: %s", directory, err) - - return sorted(list(fonts)) - - def _load_font(self, font_name: str, size: int) -> ImageFont.FreeTypeFont: - """Load a font from disk. - - Attempts to load the requested font by trying various locations. - If the font cannot be found, falls back to default fonts. - - Args: - font_name: Font filename or absolute path - size: Font size in pixels - - Returns: - Loaded font object - - Raises: - HomeAssistantError: If no font could be loaded - """ - # If font name is an absolute path, load directly - if os.path.isabs(font_name): - try: - return ImageFont.truetype(font_name, size) - except (OSError, IOError) as err: - _LOGGER.warning( - "Could not load font from absolute path %s: %s. " - "Will try standard font locations.", - font_name, err - ) - - for font_dir in self._font_dirs: - try: - if not os.path.exists(font_dir): - continue - - font_path = os.path.join(font_dir, font_name) - if not os.path.exists(font_path): - continue - - return ImageFont.truetype(font_path, size) - except (OSError, IOError): - continue - - # Font was not found in any standard location - _LOGGER.warning( - "Font '%s' not found in any of the standard locations. " - "Place fonts in /config/www/fonts/ or /config/media/fonts/ or provide absolute path. " - "Falling back to default font.", - font_name - ) - - # Try default fonts as fallback - for default_font in self._default_fonts: - try: - default_path = os.path.join(_ASSETS_DIR, default_font) - return ImageFont.truetype(default_path, size) - except (OSError, IOError): - continue - - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="font_load_failed" - ) - - def _load_custom_font_dirs(self) -> None: - """Load custom font directories from config entry. - - Parses the custom_font_dirs option from the config entry and adds - each specified directory to the font search path. - """ - if not self._entry: - return - - # Get custom font directory from config - custom_dirs_str = self._entry.options.get("custom_font_dirs", "") - custom_dirs = [d.strip() for d in custom_dirs_str.split(";") if d.strip()] - - # Save current dirs for comparison - self._known_dirs = custom_dirs - - # Add each directory - for directory in custom_dirs: - if directory and directory.strip(): - self.add_font_directory(directory.strip()) - - def add_font_directory(self, directory: str) -> bool: - """Add a custom font directory to search. - - Adds a directory to the font search path if it is a valid - absolute path to an existing directory. - - Args: - directory: Absolute path to directory containing fonts - - Returns: - True if directory was added, False otherwise - """ - if not os.path.isabs(directory): - _LOGGER.warning( - "Custom font directory '%s' is not an absolute path, skipping", directory - ) - return False - - if not os.path.isdir(directory): - _LOGGER.warning( - "Custom font directory '%s' does not exist, skipping", directory - ) - return False - - if directory not in self._font_dirs: - self._font_dirs.insert(0, directory) - return True - - return False - - def clear_cache(self) -> None: - """Clear the font cache. - - Removes all cached fonts, forcing them to be reloaded on next request. - This is typically called when font directories change. - """ - self._font_cache.clear() diff --git a/custom_components/opendisplay/imagegen/icons.py b/custom_components/opendisplay/imagegen/icons.py deleted file mode 100644 index 95b0f88..0000000 --- a/custom_components/opendisplay/imagegen/icons.py +++ /dev/null @@ -1,244 +0,0 @@ -from __future__ import annotations - -import os -import json -import logging - -from PIL import ImageDraw, ImageFont -from homeassistant.exceptions import HomeAssistantError - -from .registry import element_handler -from .types import ElementType, DrawingContext -from ..const import DOMAIN - - -_LOGGER = logging.getLogger(__name__) -_ASSETS_DIR = os.path.join(os.path.dirname(__file__), "assets") - - -@element_handler(ElementType.ICON, requires=["x", "y", "value", "size"]) -async def draw_icon(ctx: DrawingContext, element: dict) -> None: - """ - Draw Material Design Icons. - - Renders an icon from the Material Design Icons font at the specified - position and size. - - Args: - ctx: Drawing context - element: Element dictionary with icon properties - pos_y: Current Y position for automatic positioning - Raises: - HomeAssistantError: If icon name is invalid or rendering fails - """ - draw = ImageDraw.Draw(ctx.img) - draw.fontmode = "1" # Enable high quality font rendering - - # Coordinates - x = ctx.coords.parse_x(element['x']) - y = ctx.coords.parse_y(element['y']) - - # Load MDI font and metadata - font_file = os.path.join(_ASSETS_DIR, "materialdesignicons-webfont.ttf") - meta_file = os.path.join(_ASSETS_DIR, "materialdesignicons-webfont_meta.json") - - try: - def load_meta(): - with open(meta_file, 'r', encoding='utf-8') as f: - return json.load(f) - - mdi_data = await ctx.hass.async_add_executor_job(load_meta) - except Exception as e: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="mdi_metadata_failed", - translation_placeholders={"error": str(e)} - ) - - # Find icon codepoint - icon_name = element['value'] - if icon_name.startswith("mdi:"): - icon_name = icon_name[4:] - - chr_hex = None - # Search direct matches - for icon in mdi_data: - if icon['name'] == icon_name: - chr_hex = icon['codepoint'] - break - - # Search aliases if no direct match - if not chr_hex: - for icon in mdi_data: - if 'aliases' in icon and icon_name in icon['aliases']: - chr_hex = icon['codepoint'] - break - - if not chr_hex: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="icon_name_invalid", - translation_placeholders={"icon_name": icon_name} - ) - - # Get icon properties - def load_font(): - return ImageFont.truetype(font_file, element['size']) - - font = await ctx.hass.async_add_executor_job(load_font) - anchor = element.get('anchor', "la") - fill = ctx.colors.resolve( - element.get('color') or element.get('fill', "black") - ) - stroke_width = element.get('stroke_width', 0) - stroke_fill = ctx.colors.resolve(element.get('stroke_fill', 'white')) - - # Draw icon - try: - draw.text( - (x, y), - chr(int(chr_hex, 16)), - fill=fill, - font=font, - anchor=anchor, - stroke_width=stroke_width, - stroke_fill=stroke_fill - ) - except ValueError as e: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="icon_draw_failed", - translation_placeholders={"error": str(e)} - ) - - # Calculate vertical position using text bounds - bbox = draw.textbbox( - (x, y), - chr(int(chr_hex, 16)), - font=font, - anchor=anchor - ) - ctx.pos_y = bbox[3] - - #TODO ask if things could be simplified by reusing icon sequence for single icon or too much overhead? - - -@element_handler(ElementType.ICON_SEQUENCE, requires=["x", "y", "icons", "size"]) -async def draw_icon_sequence(ctx: DrawingContext, element: dict) -> None: - """ - Draw a sequence of icons in a specified direction. - - Renders multiple icons in a sequence with consistent spacing, - useful for creating icon-based status indicators or legends. - - Args: - ctx: Drawing context - element: Element dictionary with icon sequence properties - Raises: - HomeAssistantError: If icon names are invalid or rendering fails - """ - draw = ImageDraw.Draw(ctx.img) - draw.fontmode = "1" # Enable high quality font rendering - - # Get basic coordinates and properties - x_start = ctx.coords.parse_x(element['x']) - y_start = ctx.coords.parse_y(element['y']) - size = element['size'] - spacing = element.get('spacing', size // 4) # Default spacing is 1/4 of icon size - fill = ctx.colors.resolve(element.get('fill', "black")) - anchor = element.get('anchor', "la") - stroke_width = element.get('stroke_width', 0) - stroke_fill = ctx.colors.resolve(element.get('stroke_fill', 'white')) - direction = element.get('direction', 'right') # right, down, up, left - - # Load MDI font and metadata - font_file = os.path.join(_ASSETS_DIR, "materialdesignicons-webfont.ttf") - meta_file = os.path.join(_ASSETS_DIR, "materialdesignicons-webfont_meta.json") - - try: - def load_meta(): - with open(meta_file, 'r', encoding='utf-8') as f: - return json.load(f) - - mdi_data = await ctx.hass.async_add_executor_job(load_meta) - except Exception as e: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="mdi_metadata_failed", - translation_placeholders={"error": str(e)} - ) - - # Load font - def load_font(): - return ImageFont.truetype(font_file, size) - - font = await ctx.hass.async_add_executor_job(load_font) - - max_y = y_start - max_x = x_start - current_x = x_start - current_y = y_start - - # Draw each icon in sequence - for icon_name in element['icons']: - if icon_name.startswith("mdi:"): - icon_name = icon_name[4:] - - # Find icon codepoint - chr_hex = None - # Search direct matches - for icon in mdi_data: - if icon['name'] == icon_name: - chr_hex = icon['codepoint'] - break - - # Search aliases if no direct match - if not chr_hex: - for icon in mdi_data: - if 'aliases' in icon and icon_name in icon['aliases']: - chr_hex = icon['codepoint'] - break - - if not chr_hex: - _LOGGER.warning(f"Invalid icon name: {icon_name}") - continue - - # Draw icon - try: - draw.text( - (current_x, current_y), - chr(int(chr_hex, 16)), - fill=fill, - font=font, - anchor=anchor, - stroke_width=stroke_width, - stroke_fill=stroke_fill - ) - # Calculate bounds for this icon - bbox = draw.textbbox( - (current_x, current_y), - chr(int(chr_hex, 16)), - font=font, - anchor=anchor - ) - max_y = max(max_y, bbox[3]) - max_x = max(max_x, bbox[2]) - - # Move to next position based on direction - if direction == 'right': - current_x += size + spacing - elif direction == 'left': - current_x -= size + spacing - elif direction == 'down': - current_y += size + spacing - elif direction == 'up': - current_y -= size + spacing - - except ValueError as e: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="icon_draw_failed_named", - translation_placeholders={"icon_name": icon_name, "error": str(e)} - ) - - ctx.pos_y = max(max_y, current_y) diff --git a/custom_components/opendisplay/imagegen/media.py b/custom_components/opendisplay/imagegen/media.py deleted file mode 100644 index 127b515..0000000 --- a/custom_components/opendisplay/imagegen/media.py +++ /dev/null @@ -1,200 +0,0 @@ -from __future__ import annotations - -import base64 -import io -import logging -import os -import urllib - -import requests -import qrcode -from PIL import Image -from resizeimage import resizeimage -from homeassistant.exceptions import HomeAssistantError -from homeassistant.helpers.network import get_url - -from ..const import DOMAIN -from .registry import element_handler -from .types import ElementType, DrawingContext - -_LOGGER = logging.getLogger(__name__) - - -@element_handler(ElementType.QRCODE, requires=["x", "y", "data"]) -async def draw_qrcode(ctx: DrawingContext, element: dict) -> None: - """Draw QR code element. - - Generates and renders a QR code with the specified data and properties. - - Args: - ctx: Drawing context - element: Element dictionary with QR code properties - Raises: - HomeAssistantError: If QR code generation fails - """ - - # Coordinates - x = ctx.coords.parse_x(element['x']) - y = ctx.coords.parse_y(element['y']) - - # Get QR code properties - color = ctx.colors.resolve(element.get('color', "black")) - bgcolor = ctx.colors.resolve(element.get('bgcolor', "white")) - border = element.get('border', 1) - boxsize = element.get('boxsize', 2) - - try: - # Create QR code instance - qr = qrcode.QRCode( - version=1, - error_correction=qrcode.constants.ERROR_CORRECT_H, - box_size=boxsize, - border=border, - ) - - # Add data and generate QR code - qr.add_data(element['data']) - qr.make(fit=True) - - # Create QR code image - qr_img = qr.make_image(fill_color=color[:3], back_color=bgcolor[:3]) # Convert RGBA to RGB - qr_img = qr_img.convert("RGBA") - - # Calculate position - position = (x, y) - - # Paste QR code onto main image - ctx.img.paste(qr_img, position, qr_img) - - # Return bottom position - ctx.pos_y = y + qr_img.height - - except Exception as e: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="qr_generation_failed", - translation_placeholders={ "error": str(e)} - ) - - -@element_handler(ElementType.DLIMG, requires=["x", "y", "url", "xsize", "ysize"]) -async def draw_downloaded_image(ctx: DrawingContext, element: dict) -> None: - """ - Draw downloaded or local image. - - Downloads and renders an image from a URL, or loads and renders - an image from a local path or data URI. - - Args: - ctx: Drawing context - element: Element dictionary with image properties - Raises: - HomeAssistantError: If image loading or processing fails - """ - try: - # Get image properties - pos_x = element['x'] - pos_y = element['y'] - target_size = (element['xsize'], element['ysize']) - rotate = element.get('rotate', 0) - resize_method = element.get('resize_method', 'stretch') - - # Check if URL is an image entity - if element['url'].startswith('image.') or element['url'].startswith('camera.'): - # Get state of the image entity - state = ctx.hass.states.get(element['url']) - if not state: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="image_entity_not_found", - translation_placeholders={"entity_id": element['url']} - ) - - # Get image URL from entity attributes - image_url = state.attributes.get("entity_picture") - if not image_url: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="image_entity_no_url", - translation_placeholders={"entity_id": element['url']} - ) - - # If the URL is relative, make it absolute using HA's base URL - if image_url.startswith("/"): - base_url = get_url(ctx.hass) - image_url = f"{base_url}{image_url}" - - # Update URL to the actual image URL - element['url'] = image_url - - # Load image based on URL type - if element['url'].startswith(('http://', 'https://')): - # Download web image - response = await ctx.hass.async_add_executor_job( - requests.get, element['url']) - if response.status_code != 200: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="image_download_failed", - translation_placeholders={ "status_code": response.status_code} - ) - source_img = Image.open(io.BytesIO(response.content)) - - elif element['url'].startswith('data:'): - # Handle data URI - try: - header, encoded = element['url'].split(',', 1) - if ';base64' in header: - decoded = base64.b64decode(encoded) - else: - decoded = urllib.parse.unquote_to_bytes(encoded) - source_img = Image.open(io.BytesIO(decoded)) - except Exception as e: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="image_data_uri_invalid", - translation_placeholders={ "error": str(e)} - ) - - else: - # Handle local file - if not element['url'].startswith('/'): - media_path = ctx.hass.config.path('media') - full_path = os.path.join(media_path, element['url']) - else: - full_path = element['url'] - source_img = await ctx.hass.async_add_executor_job(Image.open, full_path) - - # Process image - if rotate: - source_img = source_img.rotate(-rotate, expand=True) - - # Resize if needed - if source_img.size != target_size: - if resize_method in ['crop', 'cover', 'contain']: - source_img = resizeimage.resize(resize_method, source_img, target_size) - elif resize_method != 'stretch': - _LOGGER.warning(f"Warning: resize_method is set to unsupported method '{resize_method}', this will result in simple stretch resizing") - - if source_img.size != target_size: - source_img = source_img.resize(target_size) - - # Convert to RGBA - source_img = source_img.convert("RGBA") - - # Create temporary image for composition - temp_img = Image.new("RGBA", ctx.img.size) - temp_img.paste(source_img, (pos_x, pos_y), source_img) - - # Composite images - img_composite = Image.alpha_composite(ctx.img, temp_img) - ctx.img.paste(img_composite, (0, 0)) - - ctx.pos_y = pos_y + target_size[1] - - except Exception as e: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="image_process_failed", - translation_placeholders={ "error": str(e)} - ) \ No newline at end of file diff --git a/custom_components/opendisplay/imagegen/registry.py b/custom_components/opendisplay/imagegen/registry.py deleted file mode 100644 index 2bc6f78..0000000 --- a/custom_components/opendisplay/imagegen/registry.py +++ /dev/null @@ -1,41 +0,0 @@ -from __future__ import annotations - -from functools import wraps -from typing import Callable, TYPE_CHECKING - -if TYPE_CHECKING: - from .types import ElementType, DrawingContext - -# Global registry populated by decorators -_handlers: dict["ElementType", tuple[Callable, list[str]]] = {} - - -def element_handler(element_type: "ElementType", requires: list[str] | None = None): - """ - Decorator to register and validate element handlers. - - Args: - element_type: The ElementType this handler processes - requires: List of required element keys (validated before handler runs) - """ - - def decorator(func): - @wraps(func) - async def wrapper(ctx: "DrawingContext", element: dict) -> None: - if requires: - missing = [key for key in requires if key not in element] - if missing: - raise ValueError( - f"{element_type.value} requires: {', '.join(missing)}" - ) - return await func(ctx, element) - - _handlers[element_type] = (wrapper, requires or []) - return wrapper - - return decorator - - -def get_all_handlers() -> dict["ElementType", tuple[Callable, list[str]]]: - """Return all registered handlers.""" - return _handlers diff --git a/custom_components/opendisplay/imagegen/shapes.py b/custom_components/opendisplay/imagegen/shapes.py deleted file mode 100644 index 2ab61cb..0000000 --- a/custom_components/opendisplay/imagegen/shapes.py +++ /dev/null @@ -1,417 +0,0 @@ -from __future__ import annotations - -import logging - -from PIL import ImageDraw - -from .colors import BLACK -from .registry import element_handler -from .types import ElementType, DrawingContext - -_LOGGER = logging.getLogger(__name__) - - -@element_handler(ElementType.LINE, requires=["x_start", "x_end"]) -async def draw_line(ctx: DrawingContext, element: dict) -> None: - """ - Draw line element. - - Renders a straight line between two points, with options for color, - thickness, and dashed style. - - Args: - ctx: Drawing context - element: Element dictionary with line properties - """ - draw = ImageDraw.Draw(ctx.img) - - # Get vertical position - if "y_start" not in element: - y_start = ctx.pos_y + element.get("y_padding", 0) - y_end = y_start - else: - y_start = element["y_start"] - y_end = element.get("y_end", y_start) - - # Get line properties - fill = ctx.colors.resolve(element.get('fill', "black")) - width = element.get('width', 1) - dashed = element.get('dashed', False) - dash_length = element.get('dash_length', 5) - space_length = element.get('space_length', 3) - - x_start = element["x_start"] - x_end = element["x_end"] - - if dashed: - draw_dashed_line( - draw, - (x_start, y_start), - (x_end, y_end), - dash_length, - space_length, - fill, width) - else: - draw.line( - [(element['x_start'], y_start), (element['x_end'], y_end)], - fill=fill, - width=width - ) - - ctx.pos_y = max(y_start, y_end) - - -@element_handler(ElementType.RECTANGLE, requires=["x_start", "x_end", "y_start", "y_end"]) -async def draw_rectangle(ctx: DrawingContext, element: dict) -> None: - """ - Draw rectangle element. - - Renders a rectangle with options for fill, outline, and rounded corners. - - Args: - ctx: Drawing context - element: Element dictionary with rectangle properties - """ - draw = ImageDraw.Draw(ctx.img) - - # Coordinates - x_start = ctx.coords.parse_x(element['x_start']) - x_end = ctx.coords.parse_x(element['x_end']) - y_start = ctx.coords.parse_y(element['y_start']) - y_end = ctx.coords.parse_y(element['y_end']) - - # Get rectangle properties - rect_fill = ctx.colors.resolve(element.get('fill')) - rect_outline = ctx.colors.resolve(element.get('outline', "black")) - rect_width = element.get('width', 1) - radius = element.get('radius', 10 if 'corners' in element else 0) - corners = get_rounded_corners( - element.get('corners', "all" if 'radius' in element else "") - ) - - # Draw rectangle - draw.rounded_rectangle( - (x_start, y_start, x_end, y_end), - fill=rect_fill, - outline=rect_outline, - width=rect_width, - radius=radius, - corners=corners - ) - - ctx.pos_y = y_end - - -@element_handler(ElementType.RECTANGLE_PATTERN, requires=["x_start", "x_size", "y_start", "y_size", "x_repeat", "y_repeat", "x_offset", "y_offset"]) -async def draw_rectangle_pattern(ctx: DrawingContext, element: dict) -> None: - """ - Draw repeated rectangle pattern. - - Renders a grid of rectangles with consistent spacing, useful for - creating regular patterns or grids. - - Args: - ctx: Drawing context - element: Element dictionary with rectangle pattern properties - """ - draw = ImageDraw.Draw(ctx.img) - - # Get pattern properties - fill = ctx.colors.resolve(element.get('fill')) - outline = ctx.colors.resolve(element.get('outline', "black")) - width = element.get('width', 1) - radius = element.get('radius', 10 if 'corners' in element else 0) - corners = get_rounded_corners( - element.get('corners', "all" if 'radius' in element else "") - ) - - max_y = element['y_start'] - - # Draw rectangle grid - for x in range(element["x_repeat"]): - for y in range(element["y_repeat"]): - # Calculate rectangle position - x_pos = element['x_start'] + x * (element['x_offset'] + element['x_size']) - y_pos = element['y_start'] + y * (element['y_offset'] + element['y_size']) - - # Draw individual rectangle - draw.rounded_rectangle( - (x_pos, y_pos, - x_pos + element['x_size'], - y_pos + element['y_size']), - fill=fill, - outline=outline, - width=width, - radius=radius, - corners=corners - ) - - max_y = max(max_y, y_pos + element['y_size']) - - ctx.pos_y = max_y - - -@element_handler(ElementType.POLYGON, requires=["points"]) -async def draw_polygon(ctx: DrawingContext, element: dict) -> None: - """Draw a polygon. - - Renders a polygon defined by a list of vertex coordinates. - - Args: - ctx: Drawing context - element: Element dictionary with polygon properties - """ - draw = ImageDraw.Draw(ctx.img) - - # Parse vertices - vertices = [ - (ctx.coords.parse_x(x), ctx.coords.parse_y(y)) - for x, y in element["points"] - ] - - # Get polygon properties - fill = ctx.colors.resolve(element.get("fill")) - outline = ctx.colors.resolve(element.get("outline", "black")) - width = element.get("width", 1) - - # Draw the polygon - draw.polygon(vertices, fill=fill, outline=outline) - - if vertices: - ctx.pos_y = max(v[1] for v in vertices) - - -@element_handler(ElementType.CIRCLE, requires=["x", "y", "radius"]) -async def draw_circle(ctx: DrawingContext, element: dict) -> None: - """Draw circle element. - - Renders a circle with options for fill and outline. - - Args: - ctx: Drawing Context - element: Element dictionary with circle properties - """ - draw = ImageDraw.Draw(ctx.img) - - # Coordinates - x = ctx.coords.parse_x(element['x']) - y = ctx.coords.parse_y(element['y']) - - # Get circle properties - fill = ctx.colors.resolve(element.get('fill')) - outline = ctx.colors.resolve(element.get('outline', "black")) - width = element.get('width', 1) - - # Draw circle - draw.ellipse( - [(x - element['radius'], y - element['radius']), (x + element['radius'], y + element['radius'])], - fill=fill, - outline=outline, - width=width - ) - - ctx.pos_y = y + element['radius'] - - -@element_handler(ElementType.ELLIPSE, requires=["x_start", "x_end", "y_start", "y_end"]) -async def draw_ellipse(ctx: DrawingContext, element: dict) -> None: - """ - Draw ellipse element. - - Renders an ellipse with options for fill and outline. - - Args: - ctx: Drawing context - element: Element dictionary with ellipse properties - """ - draw = ImageDraw.Draw(ctx.img) - - # Coordinates - x_start = ctx.coords.parse_x(element['x_start']) - x_end = ctx.coords.parse_x(element['x_end']) - y_start = ctx.coords.parse_y(element['y_start']) - y_end = ctx.coords.parse_y(element['y_end']) - - # Get ellipse properties - fill = ctx.colors.resolve(element.get('fill')) - outline = ctx.colors.resolve(element.get('outline', "black")) - width = element.get('width', 1) - - # Draw ellipse - draw.ellipse( - [(x_start, y_start), (x_end, y_end)], - fill=fill, - outline=outline, - width=width - ) - - ctx.pos_y = y_end - - -@element_handler(ElementType.ARC, requires=["x", "y", "radius", "start_angle", "end_angle"]) -async def draw_arc(ctx: DrawingContext, element: dict) -> None: - """Draw an arc or pie slice. - - Renders an arc (outline) or pie slice (filled) based on center point, - radius, and angle range. - - Args: - ctx: Drawing context - element: Element dictionary with arc properties - """ - draw = ImageDraw.Draw(ctx.img) - - # Parse center coordinates and radius - x = ctx.coords.parse_x(element["x"]) - y = ctx.coords.parse_y(element["y"]) - radius = ctx.coords.parse_size(element["radius"], is_width=True) - - # Parse angles - start_angle = element["start_angle"] - end_angle = element["end_angle"] - - # Calculate bounding box of the circle/ellipse - bbox = [ - (x - radius, y - radius), - (x + radius, y + radius) - ] - - # Get arc properties - fill = ctx.colors.resolve(element.get("fill")) # Used for pie slices - outline = ctx.colors.resolve(element.get("outline", "black")) - width = element.get("width", 1) - - # Draw the arc - if fill: - # Filled pie slice - draw.pieslice( - bbox, - start=start_angle, - end=end_angle, - fill=fill, - outline=outline - ) - else: - # Outline-only arc - draw.arc( - bbox, - start=start_angle, - end=end_angle, - fill=outline, - width=width - ) - - ctx.pos_y = y + radius - - - -def draw_dashed_line(draw: ImageDraw.ImageDraw, - start: tuple[int, int], - end: tuple[int, int], - dash_length: int, - space_length: int, - fill: tuple[int, int, int, int] = BLACK, - width: int = 1, - ) -> None: - """Draw dashed line. - - Renders a dashed line between two points by drawing alternating - segments of visible line and invisible space. - - Args: - draw: PIL ImageDraw object to draw with - start: Start point coordinates (x, y) - end: End point coordinates (x, y) - dash_length: Length of visible line segments - space_length: Length of invisible space segments - fill: Line color - width: Line width - """ - x1, y1 = start - x2, y2 = end - - dx = x2 - x1 - dy = y2 - y1 - line_length = (dx ** 2 + dy ** 2) ** 0.5 - - step_x = dx / line_length - step_y = dy / line_length - - current_pos = 0.0 - - while True: - # 1) Draw a dash segment - dash_end = current_pos + dash_length - - if dash_end >= line_length: - # A partial dash exists that ends exactly or beyond the line_end - dash_end = line_length - segment_len = dash_end - current_pos - - segment_start_x = x1 + step_x * current_pos - segment_start_y = y1 + step_y * current_pos - segment_end_x = x1 + step_x * dash_end - segment_end_y = y1 + step_y * dash_end - - draw.line( - [(segment_start_x, segment_start_y), (segment_end_x, segment_end_y)], - fill=fill, - width=width - ) - # Process is done because the end of the line has been reached - break - else: - # Normal full dash - segment_start_x = x1 + step_x * current_pos - segment_start_y = y1 + step_y * current_pos - segment_end_x = x1 + step_x * dash_end - segment_end_y = y1 + step_y * dash_end - - draw.line( - [(segment_start_x, segment_start_y), (segment_end_x, segment_end_y)], - fill=fill, - width=width - ) - - # 2) Move current_pos forward past this dash - current_pos = dash_end - - # 3) Skip the space segment - space_end = current_pos + space_length - if space_end >= line_length: - # The space would exceed the line's end, so processing is complete - break - else: - # Jump over the space - current_pos = space_end - - -def get_rounded_corners(corner_string: str) -> tuple[bool, bool, bool, bool]: - """Get rounded corner configuration. - - Parses a string specifying which corners of a rectangle should be rounded. - - Args: - corner_string: String specifying corners to round ("all" or comma-separated list) - - Returns: - tuple: Boolean flags for (top_left, top_right, bottom_right, bottom_left) - """ - if corner_string == "all": - return True, True, True, True - - corners = corner_string.split(",") - corner_map = { - "top_left": 0, - "top_right": 1, - "bottom_right": 2, - "bottom_left": 3 - } - - result = [False] * 4 - for corner in corners: - corner = corner.strip() - if corner in corner_map: - result[corner_map[corner]] = True - - return result[0], result[1], result[2], result[3] \ No newline at end of file diff --git a/custom_components/opendisplay/imagegen/text.py b/custom_components/opendisplay/imagegen/text.py deleted file mode 100644 index 027dd3e..0000000 --- a/custom_components/opendisplay/imagegen/text.py +++ /dev/null @@ -1,465 +0,0 @@ -from __future__ import annotations - -import re -import logging -from typing import List, Tuple - -from PIL import ImageDraw, ImageFont - -from .registry import element_handler -from .types import ElementType, DrawingContext, TextSegment - -_LOGGER = logging.getLogger(__name__) - - -@element_handler(ElementType.TEXT, requires=["x", "value"]) -async def draw_text(ctx: DrawingContext, element: dict) -> None: - """Draw (colored) text with optional wrapping or ellipsis. - - Renders text with support for multiple formatting options: - - - Color markup with [color]text[/color] syntax - - Text wrapping based on max_width - - Text truncation with ellipsis - - Multiple anchoring options - - Font selection and sizing - - Args: - ctx: Drawing context - element: Element dictionary with text properties - """ - draw = ImageDraw.Draw(ctx.img) - draw.fontmode = "1" - - x = ctx.coords.parse_x(element['x']) - if "y" not in element: - y = ctx.pos_y + element.get('y_padding', 10) - else: - y = ctx.coords.parse_y(element['y']) - # Get text properties - size = ctx.coords.parse_size(element.get('size', 20), is_width=False) - font_name = element.get('font', "ppb.ttf") - font = ctx.fonts.get_font(font_name, size) - - # Get alignment and default color - align = element.get('align', "left") - default_color = ctx.colors.resolve(element.get('color', "black")) - anchor = element.get('anchor') - spacing = element.get('spacing', 5) - stroke_width = element.get('stroke_width', 0) - stroke_fill = ctx.colors.resolve(element.get('stroke_fill', 'white')) - - # Process text content - text = str(element['value']) - max_width = element.get('max_width') - - # Handle text wrapping if max_width is specified - final_text = text - if max_width is not None: - if element.get('truncate', False): - if draw.textlength(text, font=font) > max_width: - ellipsis = "..." - truncated = text - while truncated and draw.textlength(truncated + ellipsis, font=font) > max_width: - truncated = truncated[:-1] - final_text = truncated + ellipsis - else: - words = text.split() - lines = [] - current_line = [] - - for word in words: - test_line = ' '.join(current_line + [word]) - if not current_line or draw.textlength(test_line, font=font) <= max_width: - current_line.append(word) - else: - lines.append(' '.join(current_line)) - current_line = [word] - - if current_line: - lines.append(' '.join(current_line)) - final_text = '\n'.join(lines) - - # Set appropriate anchor based on line count - if not anchor: - anchor = 'la' if '\n' in final_text else 'lt' - - # Draw the text - if element.get('parse_colors', False): - segments = parse_colored_text(final_text) - - # Check if text contains newlines - has_newlines = '\n' in final_text - - if has_newlines: - # Split text into lines - lines = split_segments_by_newlines(segments) - - # Calculate vertical positions - line_y_positions, total_height = calculate_multiline_positions(lines, font, spacing) - - # Apply vertical anchor offset to the entire block - adjusted_y = calculate_anchor_offset_y(y, total_height, anchor) - - # Draw each line - max_y = adjusted_y - for line_segments, line_y_offset in zip(lines, line_y_positions): - # Calculate horizontal positions for this line - line_segments, line_width = calculate_segment_positions(line_segments, font, x, align, anchor) - - # Calculate absolute y position for this line - line_y = adjusted_y + line_y_offset - - # Draw each segment in the line - for segment in line_segments: - color = ctx.colors.resolve(segment.color) - bbox = draw.textbbox( - (segment.start_x, line_y), - segment.text, - font=font, - anchor="lt" - ) - draw.text( - (segment.start_x, line_y), - segment.text, - fill=color, - font=font, - anchor="lt", - spacing=spacing, - stroke_width=stroke_width, - stroke_fill=stroke_fill - ) - max_y = max(max_y, bbox[3]) - ctx.pos_y = max_y - else: - segments, total_width = calculate_segment_positions( - segments, font, x, align, anchor - ) - - max_y = y - for segment in segments: - color = ctx.colors.resolve(segment.color) - bbox = draw.textbbox( - (segment.start_x, y), - segment.text, - font=font, - anchor="lt", - ) - draw.text( - (segment.start_x, y), - segment.text, - fill=color, - font=font, - anchor="lt", - spacing=spacing, - stroke_width=stroke_width, - stroke_fill=stroke_fill - ) - max_y = max(max_y, bbox[3]) - ctx.pos_y = max_y - else: - bbox = draw.textbbox( - (x, y), - final_text, - font=font, - anchor=anchor, - spacing=spacing, - align=align - ) - draw.text( - (x, y), - final_text, - fill=default_color, - font=font, - anchor=anchor, - align=align, - spacing=spacing, - stroke_width=stroke_width, - stroke_fill=stroke_fill - ) - ctx.pos_y = bbox[3] - - -@element_handler(ElementType.MULTILINE, requires=["x", "value", "delimiter", "offset_y"]) -async def draw_multiline(ctx: DrawingContext, element: dict) -> None: - """Draw multiline text with delimiter. - - Renders multiple lines of text separated by a delimiter character. - Supports similar formatting options as the _draw_text method. - - Args: - ctx: Drawing context - element: Element dictionary with multiline text properties - """ - draw = ImageDraw.Draw(ctx.img) - draw.fontmode = "1" - - # Get text properties - size = element.get('size', 20) - font_name = element.get('font', "ppb.ttf") - font = ctx.fonts.get_font(font_name, size) - color = ctx.colors.resolve(element.get('color', "black")) - align = element.get('align', "left") - anchor = element.get('anchor', "lm") - stroke_width = element.get('stroke_width', 0) - stroke_fill = ctx.colors.resolve(element.get('stroke_fill', 'white')) - - x = ctx.coords.parse_x(element['x']) - # Support both 'y' (standard) and 'start_y' (legacy) for backward compatibility - if "y" in element: - current_y = ctx.coords.parse_y(element['y']) - elif "start_y" in element: - current_y = ctx.coords.parse_y(element['start_y']) - else: - current_y = ctx.pos_y + element.get('y_padding', 10) - - # Split text using delimiter - lines = element['value'].replace("\n", "").split(element["delimiter"]) - - max_y = current_y - for line in lines: - if element.get('parse_colors', False): - segments = parse_colored_text(str(line)) - segments, total_width = calculate_segment_positions( - segments, font, x, align, anchor - ) - - for segment in segments: - color = ctx.colors.resolve(segment.color) - bbox = draw.textbbox( - (segment.start_x, current_y), - segment.text, - font=font, - anchor="lt" - ) - draw.text( - (segment.start_x, current_y), - segment.text, - fill=color, - font=font, - anchor="lt", - stroke_width=stroke_width, - stroke_fill=stroke_fill - ) - else: - bbox = draw.textbbox( - (x, current_y), - str(line), - font=font, - anchor=anchor, - align=align - ) - draw.text( - (x, current_y), - str(line), - fill=color, - font=font, - anchor=anchor, - stroke_width=stroke_width, - stroke_fill=stroke_fill - ) - current_y += element['offset_y'] - max_y = current_y - - ctx.pos_y = max_y - - -def get_wrapped_text(text: str, font: ImageFont.ImageFont, line_length: int) -> str: - """Wrap text to fit within a given width. - - Breaks text into multiple lines to fit within the specified width. - - Args: - text: Text to wrap - font: Font to measure text width with - line_length: Maximum line length in pixels - - Returns: - str: Text with newlines inserted for wrapping - """ - lines = [''] - for word in text.split(): - line = f'{lines[-1]} {word}'.strip() - if font.getlength(line) <= line_length: - lines[-1] = line - else: - lines.append(word) - return '\n'.join(lines) - - -def parse_colored_text(text: str) -> List[TextSegment]: - """Parse text with color markup into text segments. - - Breaks text with color markup like "[red]text[/red]" into segments - with associated colors. - - Args: - text: Text with color markup - - Returns: - List[TextSegment]: List of text segments with colors - """ - - segments = [] - current_pos = 0 - pattern = r'\[(black|white|red|yellow|accent|half_black|half_red|half_yellow|half_accent|gray|grey|g|hb|hr|hy|ha)\](.*?)\[/\1\]' - - for match in re.finditer(pattern, text, re.DOTALL): - # Add any text before the match with default color - if match.start() > current_pos: - segments.append( - TextSegment( - text=text[current_pos:match.start()], - color="black" - )) - # Add the matched text with the specified color - segments.append( - TextSegment( - text=match.group(2), - color=match.group(1) - ) - ) - current_pos = match.end() - - # Add any remaining text with default color - if current_pos < len(text): - segments.append(TextSegment( - text=text[current_pos:], - color="black" - )) - - return segments - - -def calculate_segment_positions( - segments: List[TextSegment], - font: ImageFont.FreeTypeFont, - start_x: int, - alignment: str = "left", - anchor: str | None = None -) -> Tuple[List[TextSegment], float]: - """Calculate x positions for each text segment based on alignment. - - Determines the starting x position for each text segment based on - the overall alignment and font metrics. - - Args: - segments: List of text segments - font: Font to measure text width with - start_x: Base starting x position - alignment: Text alignment (left, center, right) - anchor: Anchor point for text - - Returns: - tuple: (modified segments with positions, total width) - """ - - total_width = sum(font.getlength(segment.text) for segment in segments) - - current_x = start_x - match alignment.lower(): - case "left": - pass # start_x is already correct - case "center": - current_x -= total_width / 2 - case "right": - current_x -= total_width - case _: - # Default to left alignment for unknown values - _LOGGER.warning("Unknown alignment '%s', defaulting to left", alignment) - # Apply anchor-based horizontal offset - if anchor: - anchor_horizontal = anchor[0] # First char: l/m/r - if anchor_horizontal == 'm': # Middle - current_x -= total_width / 2 - elif anchor_horizontal == 'r': # Right - current_x -= total_width - # else: left anchor, no adjustment needed - - for segment in segments: - segment.start_x = int(current_x) - current_x += font.getlength(segment.text) - - return segments, total_width - - -def split_segments_by_newlines(segments: List[TextSegment]) -> List[List[TextSegment]]: - """ - Split text segments by newline characters into separate lines. - - Args: - segments: List of text segments (may contain \\n characters) - - Returns: - List of lines, where each line is a list of TextSegment objects. - """ - lines = [[]] - - for segment in segments: - if '\n' not in segment.text: - # No newlines, add to current line - lines[-1].append(segment) - else: - # Split segments by newlines - parts = segment.text.split('\n') - for i, part in enumerate(parts): - if part: - lines[-1].append(TextSegment(text=part, color=segment.color)) - if i < len(parts) - 1: - lines.append([]) - - # Remove empty lines - return [line for line in lines if line] - -def calculate_multiline_positions( - lines: List[List[TextSegment]], - font: ImageFont.FreeTypeFont, - spacing: int -) -> Tuple[List[int], int]: - """ - Calculate y positions for each line and total height. - - Args: - lines: List of lines, where each line is a list of TextSegment objects. - font: Font to measure text height with - spacing: Spacing between lines in pixels - - Returns: - tuple: (list of y positions for each line, total block height) - """ - # Get line height from font metrics - bbox = font.getbbox('Ay') # Use chars with ascenders/descenders - line_height = bbox[3] - bbox[1] - - # Calculate y positions - line_positions = [] - current_y = 0 - - for i in range(len(lines)): - line_positions.append(current_y) - current_y += line_height + spacing - - # Total height is position of last line + line height - total_height = line_positions[-1] + line_height if line_positions else 0 - - return line_positions, total_height - - -def calculate_anchor_offset_y(base_y: int, total_height: int, anchor: str | None) -> int: - """ - Calculate y offset based on the vertical anchor component. - - Args: - base_y: Base y coordinate from element - total_height: Total height of text block - anchor: Anchor string (e.g. 'mm', 'lt', 'rb') - """ - if not anchor or len(anchor) < 2: - return base_y - - anchor_vertical = anchor[1] - if anchor_vertical == 'm': - return base_y - total_height // 2 - elif anchor_vertical == 'b': - return base_y - total_height - return base_y diff --git a/custom_components/opendisplay/imagegen/types.py b/custom_components/opendisplay/imagegen/types.py deleted file mode 100644 index c6834f8..0000000 --- a/custom_components/opendisplay/imagegen/types.py +++ /dev/null @@ -1,78 +0,0 @@ -from dataclasses import dataclass -from enum import Enum -from typing import TYPE_CHECKING - -if TYPE_CHECKING: - from PIL import Image - from .colors import ColorResolver - from .coordinates import CoordinateParser - from .fonts import FontManager - from homeassistant.core import HomeAssistant - -class ElementType(str, Enum): - """Enum for supported element types. - - Defines all the drawable element types supported by the ImageGen class. - Each type corresponds to a specific drawing method that handles the - rendering of that element type. - - The enum values are used in the payload to identify the type of each element. - """ - - TEXT = "text" - MULTILINE = "multiline" - LINE = "line" - RECTANGLE = "rectangle" - RECTANGLE_PATTERN = "rectangle_pattern" - POLYGON = "polygon" - CIRCLE = "circle" - ELLIPSE = "ellipse" - ARC = "arc" - ICON = "icon" - DLIMG = "dlimg" - QRCODE = "qrcode" - PLOT = "plot" - PROGRESS_BAR = "progress_bar" - DIAGRAM = "diagram" - ICON_SEQUENCE = "icon_sequence" - DEBUG_GRID = "debug_grid" - - def __str__(self) -> str: - """Return the string value of the enum. - - Returns: - str: The string value of the enum - """ - - return self.value - -@dataclass -class TextSegment: - """Represents a segment of text with its color. - - Used for handling colored text markup, where different parts of a text - string can have different colors (e.g., "[red]Text[/red]"). - - Attributes: - text: The text content - color: The color name for this segment - start_x: Starting x position for rendering (calculated during layout) - """ - text: str - color: str - start_x: int = 0 - -@dataclass -class DrawingContext: - """ - Context passed to all draw handlers. - - Holds all shared state for a single drawcustom() call. - Handlers update pos_y directly rather than returning it. - """ - img: "Image.Image" - colors: "ColorResolver" - coords: "CoordinateParser" - fonts: "FontManager" - hass: "HomeAssistant" - pos_y: int = 0 \ No newline at end of file diff --git a/custom_components/opendisplay/imagegen/visualizations.py b/custom_components/opendisplay/imagegen/visualizations.py deleted file mode 100644 index 1d0825d..0000000 --- a/custom_components/opendisplay/imagegen/visualizations.py +++ /dev/null @@ -1,952 +0,0 @@ -from __future__ import annotations - -import logging -import math -from datetime import timedelta, datetime -from functools import partial - -from PIL import ImageDraw -from homeassistant.exceptions import HomeAssistantError, ServiceValidationError -from homeassistant.components.recorder import get_instance -from homeassistant.components.recorder.history import get_significant_states -from homeassistant.util import dt - -from .registry import element_handler -from .types import ElementType, DrawingContext -from ..const import DOMAIN - -_LOGGER = logging.getLogger(__name__) - - -@element_handler(ElementType.PLOT, requires=["data"]) -async def draw_plot(ctx: DrawingContext, element: dict) -> None: - """ - Draw plot of Home Assistant sensor data. - - Creates a line plot visualization of historical data from Home Assistant - entities with customizable axes, legends, and styling. - - This is one of the most complex drawing methods, handling data retrieval, - scaling, and rendering of multiple data series and plot components. - - Args: - ctx: Drawing context - element: Element dictionary with plot properties - Raises: - HomeAssistantError: If plot generation fails - """ - try: - draw = ImageDraw.Draw(ctx.img) - - # Get plot dimensions and position - x_start = element.get("x_start", 0) - y_start = element.get("y_start", 0) - x_end = element.get("x_end", ctx.img.width - 1 - x_start) - y_end = element.get("y_end", ctx.img.height - 1 - y_start) - width = x_end - x_start + 1 - height = y_end - y_start + 1 - - # Get time range - duration_seconds = float(element.get("duration", 60 * 60 * 24)) - if duration_seconds <= 0: - raise ServiceValidationError( - translation_domain=DOMAIN, - translation_key="plot_duration_invalid", - ) - duration = timedelta(seconds=duration_seconds) - end = dt.now() - start = end - duration - - # Set up font - font_name = element.get("font", "ppb.ttf") - - # Get min/max values from config - min_v = element.get("low") - max_v = element.get("high") - - # Fetch sensor data - all_states = await get_instance(ctx.hass).async_add_executor_job(partial(get_significant_states, - ctx.hass, - start_time=start, - entity_ids=[plot["entity"] for - plot in - element["data"]], - significant_changes_only=False, - minimal_response=True, - no_attributes=False - )) - - # Process data and find min/max if not specified - raw_data = [] - for plot in element["data"]: - if plot["entity"] not in all_states: - raise ServiceValidationError( - translation_domain=DOMAIN, - translation_key="plot_no_data", - translation_placeholders={"entity": plot["entity"]} - ) - - states = all_states[plot["entity"]] - state_obj = states[0] - states[0] = { - "state": state_obj.state, - "last_changed": str(state_obj.last_changed) - } - - # Convert states to segments (breaking at gaps) - segments = [] - current_segment = [] - span_gaps = plot.get("span_gaps", False) - value_scale = plot.get("value_scale", 1.0) - prev_timestamp = None - prev_was_valid = True - - for state in states: - try: - value = float(state["state"]) * value_scale - timestamp = datetime.fromisoformat(state["last_changed"]) - - # Check for gap conditions - should_break = False - - if isinstance(span_gaps, (int, float)) and span_gaps is not True and span_gaps is not False: - # Time-based gap detection - if prev_timestamp: - gap_seconds = (timestamp - prev_timestamp).total_seconds() - if gap_seconds > span_gaps: - should_break = True - elif span_gaps is False and not prev_was_valid: - # Previous was invalid/null, start new segment - should_break = True - - # Start new segment if needed - if should_break and current_segment: - segments.append(current_segment) - current_segment = [] - - current_segment.append((timestamp, value)) - prev_timestamp = timestamp - prev_was_valid = True - - except (ValueError, TypeError): - # Invalid value (null, unavailable, etc.) - if span_gaps is False and current_segment: - # Close current segment before null - segments.append(current_segment) - current_segment = [] - prev_was_valid = False - continue - - # Add final segment - if current_segment: - segments.append(current_segment) - - if not segments: - continue - - # Update min/max from all segments - all_values = [p[1] for segment in segments for p in segment] - if min_v is None: - min_v = min(all_values) if all_values else None - else: - min_v = min(min_v, min(all_values)) - - if max_v is None: - max_v = max(all_values) if all_values else None - else: - max_v = max(max_v, max(all_values)) - - raw_data.append(segments) - - if not raw_data: - raise ServiceValidationError( - translation_domain=DOMAIN, - translation_key="plot_no_valid_points" - ) - - # Apply rounding if requested - if element.get("round_values", False): - max_v = math.ceil(max_v) - min_v = math.floor(min_v) - if max_v == min_v: - min_v -= 1 - spread = max_v - min_v - - # Configure y legend - y_legend = element.get("ylegend", {}) - y_legend_width = -1 - y_legend_pos = None - y_legend_color = None - y_legend_size = None - y_legend_font = None - - if y_legend: - y_legend_width = y_legend.get("width", -1) - y_legend_color = ctx.colors.resolve(y_legend.get("color", "black")) - y_legend_pos = y_legend.get("position", "left") - if y_legend_pos not in ("left", "right", None): - y_legend_pos = "left" - y_legend_size = y_legend.get("size", 10) - - # Calculate y legend width if auto width is requested - if y_legend and y_legend_width == -1: - y_legend_font = ctx.fonts.get_font(font_name, y_legend_size) - max_bbox = y_legend_font.getbbox(str(max_v)) - min_bbox = y_legend_font.getbbox(str(min_v)) - max_width = max_bbox[2] - max_bbox[0] - min_width = min_bbox[2] - min_bbox[0] - y_legend_width = math.ceil(max(max_width, min_width)) # Add padding - - # Configure y axis - y_axis = element.get("yaxis") - y_axis_width = -1 - y_axis_color = None - y_axis_tick_length = 0 - y_axis_tick_width = 1 - y_axis_tick_every = 0 - y_axis_grid = None - y_axis_grid_color = None - y_axis_grid_style = None - - if y_axis: - y_axis_width = y_axis.get("width", 1) - y_axis_color = ctx.colors.resolve(y_axis.get("color", "black")) - y_axis_tick_length = y_axis.get("tick_length", 4) - y_axis_tick_width = y_axis.get("tick_width", 2) - y_axis_tick_every = float(y_axis.get("tick_every", 1)) - if y_axis_tick_every <= 0: - raise ServiceValidationError( - translation_domain=DOMAIN, - translation_key="plot_yaxis_invalid" - ) - y_axis_grid = y_axis.get("grid", True) - y_axis_grid_color = ctx.colors.resolve(y_axis.get("grid_color", "black")) - y_axis_grid_style = y_axis.get("grid_style", "dotted") - - # Configure x legend - x_legend = element.get("xlegend", {}) - time_format = "%H:%M" - time_interval = duration.total_seconds() / 4 # Default to 4 labels - time_font = None - time_color = None - time_position = None - x_legend_height = None - - if x_legend: - time_format = x_legend.get("format", "%H:%M") - interval = x_legend.get("interval") - if interval is not None: - time_interval = float(interval) - time_size = x_legend.get("size", 10) - time_font = ctx.fonts.get_font(font_name, time_size) - time_color = ctx.colors.resolve(x_legend.get("color", "black")) - time_position = x_legend.get("position", "bottom") - x_legend_height = x_legend.get("height", -1) - if time_position not in ("top", "bottom", None): - time_position = "bottom" - if time_interval <= 0: - raise ServiceValidationError( - translation_domain=DOMAIN, - translation_key="plot_xlegend_invalid" - ) - - # Configure x axis - x_axis = element.get("xaxis", {}) - x_axis_width = 1 - x_axis_color = None - x_axis_tick_length = 0 - x_axis_tick_width = 0 - x_axis_grid = None - x_axis_grid_color = None - x_axis_grid_style = None - - if x_axis: - x_axis_width = x_axis.get("width", 1) - x_axis_color = ctx.colors.resolve(x_axis.get("color", "black")) - x_axis_tick_length = x_axis.get("tick_length", 4) - x_axis_tick_width = x_axis.get("tick_width", 2) - x_axis_grid = x_axis.get("grid", True) - x_axis_grid_color = ctx.colors.resolve(x_axis.get("grid_color", "black")) - x_axis_grid_style = x_axis.get("grid_style", "dotted") - - x_label_height = 0 - if x_legend: - if x_legend_height == 0: - x_label_height = 0 - else: - if x_legend_height > 0: - x_label_height = x_legend_height - else: - x_label_height = time_font.getbbox("00:00")[3] - x_label_height += x_axis_tick_width + 2 - - # Calculate effective diagram dimensions - diag_x = x_start + (y_legend_width if y_legend_pos == "left" else 0) - diag_y = y_start + (x_label_height if time_position == "top" and x_legend_height != 0 else 0) - diag_width = width - (y_legend_width if y_legend_pos == "left" or y_legend_pos == "right" else 0) - diag_height = height - x_label_height - - # Draw debug borders if requested - if element.get("debug", False): - draw.rectangle( - (x_start, y_start, x_end, y_end), - fill=None, - outline=ctx.colors.resolve("black"), - width=1 - ) - draw.rectangle( - (diag_x, diag_y, diag_x + diag_width - 1, diag_y + diag_height - 1), - fill=None, - outline=ctx.colors.resolve("red"), - width=1 - ) - # Draw y legend - if y_legend: - - top_y = y_start - bottom_y = y_end - x_label_height - if time_position == "top" and x_legend_height != 0: - top_y += x_label_height - bottom_y += x_label_height - - # Draw labels for each grid line - if y_axis_tick_every > 0: - curr = min_v - # Track if the max value has been drawn - max_value_drawn = False - - while curr <= max_v: - # Calculate y position for this value - curr_y = round(diag_y + (1 - ((curr - min_v) / spread)) * (diag_height - 1)) - - # Format the value with appropriate rounding - formatted_value = curr - if isinstance(curr, float): - # Check if it's a whole number - if curr.is_integer(): - formatted_value = int(curr) - else: - # Round to 2 decimal places - formatted_value = round(curr, 2) - # Remove trailing zeros - formatted_value = float(f"{formatted_value:.2f}".rstrip('0').rstrip( - '.') if '.' in f"{formatted_value:.2f}" else formatted_value) - - if y_legend_pos == "left": - draw.text( - (x_start, curr_y), - str(formatted_value), - fill=y_legend_color, - font=y_legend_font, - anchor="lm" # Left-middle alignment - ) - elif y_legend_pos == "right": - draw.text( - (x_end, curr_y), - str(formatted_value), - fill=y_legend_color, - font=y_legend_font, - anchor="rm" # Right-middle alignment - ) - - # Check if this is the max value or very close to it - if abs(curr - max_v) < 0.0001: - max_value_drawn = True - - curr += y_axis_tick_every - - # If the max value hasn't been drawn and it's not equal to min_v, draw it now - if not max_value_drawn and abs(max_v - min_v) > 0.0001: - # Calculate y position for max value - max_y = round(diag_y + (1 - ((max_v - min_v) / spread)) * (diag_height - 1)) - - # Format the max value with appropriate rounding - formatted_max = max_v - if isinstance(max_v, float): - # Check if it's a whole number - if max_v.is_integer(): - formatted_max = int(max_v) - else: - # Round to 2 decimal places - formatted_max = round(max_v, 2) - # Remove trailing zeros - formatted_max = float(f"{formatted_max:.2f}".rstrip('0').rstrip( - '.') if '.' in f"{formatted_max:.2f}" else formatted_max) - - if y_legend_pos == "left": - draw.text( - (x_start, max_y), - str(formatted_max), - fill=y_legend_color, - font=y_legend_font, - anchor="lm" # Left-middle alignment - ) - elif y_legend_pos == "right": - draw.text( - (x_end, max_y), - str(formatted_max), - fill=y_legend_color, - font=y_legend_font, - anchor="rm" # Right-middle alignment - ) - else: - # Fallback to just min/max if no tick interval is defined - # Format the min/max values with appropriate rounding - formatted_max = max_v - formatted_min = min_v - - if isinstance(max_v, float): - # Check if it's a whole number - if max_v.is_integer(): - formatted_max = int(max_v) - else: - # Round to 2 decimal places - formatted_max = round(max_v, 2) - # Remove trailing zeros - formatted_max = float(f"{formatted_max:.2f}".rstrip('0').rstrip( - '.') if '.' in f"{formatted_max:.2f}" else formatted_max) - - if isinstance(min_v, float): - # Check if it's a whole number - if min_v.is_integer(): - formatted_min = int(min_v) - else: - # Round to 2 decimal places - formatted_min = round(min_v, 2) - # Remove trailing zeros - formatted_min = float(f"{formatted_min:.2f}".rstrip('0').rstrip( - '.') if '.' in f"{formatted_min:.2f}" else formatted_min) - - if y_legend_pos == "left": - draw.text( - (x_start, top_y), - str(formatted_max), - fill=y_legend_color, - font=y_legend_font, - anchor="lt" - ) - draw.text( - (x_start, bottom_y), - str(formatted_min), - fill=y_legend_color, - font=y_legend_font, - anchor="ls" - ) - elif y_legend_pos == "right": - draw.text( - (x_end, top_y), - str(formatted_max), - fill=y_legend_color, - font=y_legend_font, - anchor="rt" - ) - draw.text( - (x_end, bottom_y), - str(formatted_min), - fill=y_legend_color, - font=y_legend_font, - anchor="rs" - ) - - # Draw y-axis and grid - if y_axis: - # Y Axis line - if y_axis_width > 0 and y_axis_color: - draw.rectangle( - (diag_x, diag_y, diag_x + y_axis_width - 1, diag_y + diag_height - 1), - fill=y_axis_color - ) - # Y Tick marks - if y_axis_tick_length > 0 and y_axis_color: - curr = min_v - while curr <= max_v: - curr_y = round(diag_y + (1 - ((curr - min_v) / spread)) * (diag_height - 1)) - draw.line( - (diag_x, curr_y, diag_x + y_axis_tick_length - 1, curr_y), - fill=y_axis_color, - width=y_axis_tick_width - ) - curr += y_axis_tick_every - - # Y Grid - if y_axis_grid and y_axis_grid_color: - curr = min_v - while curr <= max_v: - curr_y = round(diag_y + (1 - ((curr - min_v) / spread)) * (diag_height - 1)) - - if y_axis_grid_style == "lines": - # Solid line - draw.line( - [(diag_x, curr_y), (diag_x + diag_width, curr_y)], - fill=y_axis_grid_color, - width=1 - ) - elif y_axis_grid_style == "dashed": - # Dashed line - x_pos = diag_x - dash_length = 5 - gap_length = 3 - while x_pos < diag_x + diag_width: - end_x = min(x_pos + dash_length, diag_x + diag_width) - draw.line( - [(x_pos, curr_y), (end_x, curr_y)], - fill=y_axis_grid_color, - width=1 - ) - x_pos += dash_length + gap_length - elif y_axis_grid_style == "dotted": - # Dotted line - for x in range(int(diag_x), int(diag_x + diag_width), 5): - draw.point((x, curr_y), fill=y_axis_grid_color) - curr += y_axis_tick_every - - # Determine time range for x-axis labels and grid - if x_legend and x_legend_height != 0 and x_legend.get("snap_to_hours", True): - # Round start time to the nearest hour - curr_time = start.replace(minute=0, second=0, microsecond=0) - # Round end time to the nearest hour - end_time = end.replace(minute=0, second=0, microsecond=0) - if end > end_time: - end_time += timedelta(hours=1) - else: - curr_time = start - end_time = end - - # Draw X Axis and grid - if x_axis: - # X Axis line - if x_axis_width > 0 and x_axis_color: - draw.line( - [(diag_x, diag_y + diag_height), (diag_x + diag_width, diag_y + diag_height)], - fill=x_axis_color, - width=x_axis_width - ) - # X Tick marks - if x_axis_tick_length > 0 and x_axis_color: - curr = curr_time - while curr <= end_time: - rel_x = (curr - start) / duration - x = round(diag_x + rel_x * (diag_width - 1)) - # Only draw tick marks within the diagram area - if diag_x <= x <= diag_x + diag_width: - draw.line( - [(x, diag_y + diag_height), (x, diag_y + diag_height - x_axis_tick_length)], - fill=x_axis_color, - width=x_axis_tick_width - ) - curr += timedelta(seconds=time_interval) - # X Grid - if x_axis_grid and x_axis_grid_color: - curr = curr_time - while curr <= end_time: - rel_x = (curr - start) / duration - x = round(diag_x + rel_x * (diag_width - 1)) - - # Only draw grid lines within the diagram area - if diag_x <= x <= diag_x + diag_width: - if x_axis_grid_style == "lines": - # Solid line - draw.line( - [(x, diag_y), (x, diag_y + diag_height)], - fill=x_axis_grid_color, - width=1 - ) - elif x_axis_grid_style == "dashed": - # Dashed line - y_pos = diag_y - dash_length = 5 - gap_length = 3 - while y_pos < diag_y + diag_height: - end_y = min(y_pos + dash_length, diag_y + diag_height) - draw.line( - [(x, y_pos), (x, end_y)], - fill=x_axis_grid_color, - width=1 - ) - y_pos += dash_length + gap_length - elif x_axis_grid_style == "dotted": - # Dotted line - for y in range(int(diag_y), int(diag_y + diag_height), 5): - draw.point((x, y), fill=x_axis_grid_color) - curr += timedelta(seconds=time_interval) - - # Draw X Axis time labels - if x_legend and x_legend_height != 0: - - while curr_time <= end_time: - rel_x = (curr_time - start) / duration - x = round(diag_x + rel_x * (diag_width - 1)) - - if diag_x <= x <= diag_x + diag_width: - if time_position == 'bottom': - if x_axis_width > 0 and x_axis_color: - draw.line( - [(x, diag_y + diag_height), (x, diag_y + diag_height - x_axis_tick_width)], - fill=x_axis_color, - width=x_axis_width - ) - text = curr_time.strftime(time_format) - draw.text( - (x, diag_y + diag_height + x_axis_tick_width + 2), - text, - fill=time_color, - font=time_font, - anchor="mt" - ) - else: # time_position == "top" - # Draw tick mark at top - if x_axis_width > 0 and x_axis_color: - draw.line( - [(x, diag_y), (x, diag_y + x_axis_tick_width)], - fill=x_axis_color, - width=x_axis_width - ) - # Draw time label above - text = curr_time.strftime(time_format) - draw.text( - (x, y_start), - text, - fill=time_color, - font=time_font, - anchor="mt" - ) - curr_time += timedelta(seconds=time_interval) - - # Draw data - for plot_segments, plot_config in zip(raw_data, element["data"]): - # Get line style (once per entity) - line_color = ctx.colors.resolve(plot_config.get("color", "black")) - line_width = plot_config.get("width", 1) - smooth = plot_config.get("smooth", False) - line_style = plot_config.get("line_style", "linear") - steps = plot_config.get("smooth_steps", 10) - - # Catmull-Rom interpolation function - def catmull_rom(p0, p1, p2, p3, t): - t2 = t * t - t3 = t2 * t - - return ( - int(0.5 * ( - (-t3 + 2 * t2 - t) * p0[0] + - (3 * t3 - 5 * t2 + 2) * p1[0] + - (-3 * t3 + 4 * t2 + t) * p2[0] + - (t3 - t2) * p3[0] - )), - int(0.5 * ( - (-t3 + 2 * t2 - t) * p0[1] + - (3 * t3 - 5 * t2 + 2) * p1[1] + - (-3 * t3 + 4 * t2 + t) * p2[1] + - (t3 - t2) * p3[1] - )) - ) - - # Process each segment independently - all_screen_points = [] # For show_points later - for segment_data in plot_segments: - # Convert segment to screen coordinates - points = [] - for timestamp, value in segment_data: - rel_time = (timestamp - start) / duration - rel_value = (value - min_v) / spread - x = round(diag_x + rel_time * (diag_width - 1)) - y = round(diag_y + (1 - rel_value) * (diag_height - 1)) - points.append((x, y)) - all_screen_points.append((x, y)) - - # Draw line for this segment (only if 2+ points) - if len(points) > 1: - # Apply step transformation if requested (takes precedence over smooth) - if line_style == "step": - step_points = [points[0]] - for i in range(1, len(points)): - prev_x, prev_y = points[i-1] - curr_x, curr_y = points[i] - # Horizontal to new x at old y - step_points.append((curr_x, prev_y)) - # Then vertical to new y - step_points.append((curr_x, curr_y)) - points = step_points - if smooth and len(points) > 2 and line_style != "step": - # Create smoothed line using Catmull-Rom splines - smooth_coords = [] - - smooth_coords.append(points[0]) - # Handle first segment specially (duplicate first point) - if len(points) > 3: - p0 = points[0] - p1 = points[0] - p2 = points[1] - p3 = points[2] - - for i in range(1, steps): - t = i / steps - point = catmull_rom(p0, p1, p2, p3, t) - smooth_coords.append(point) - - # Handle middle segments - for i in range(len(points) - 3): - p0 = points[i] - p1 = points[i + 1] - p2 = points[i + 2] - p3 = points[i + 3] - - for j in range(steps): - t = j / steps - point = catmull_rom(p0, p1, p2, p3, t) - smooth_coords.append(point) - - # Handle last segment specially (duplicate last point) - if len(points) > 3: - p0 = points[-3] - p1 = points[-2] - p2 = points[-1] - p3 = points[-1] - - for i in range(1, steps): - t = i / steps - point = catmull_rom(p0, p1, p2, p3, t) - smooth_coords.append(point) - - # Add last point - smooth_coords.append(points[-1]) - - draw.line( - smooth_coords, - fill=line_color, - width=line_width, - joint="curve" - ) - else: - draw.line( - points, - fill=line_color, - width=line_width - ) - - # Draw points from all segments (if enabled) - if plot_config.get("show_points", False): - point_size = plot_config.get("point_size", 3) - point_color = ctx.colors.resolve(plot_config.get("point_color", "black")) - for x, y in all_screen_points: - draw.ellipse( - [(x - point_size, y - point_size), (x + point_size, y + point_size)], - fill=point_color - ) - ctx.pos_y = y_end - - except Exception as e: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="plot_draw_failed", - translation_placeholders={"error": str(e)}, - ) - - -@element_handler(ElementType.PROGRESS_BAR, requires=["x_start", "x_end", "y_start", "y_end", "progress"]) -async def draw_progress_bar(ctx: DrawingContext, element: dict) -> None: - """Draw progress bar with optional percentage text. - - Renders a progress bar to visualize a percentage value, with options - for fill direction, colors, and text display. - - Args: - ctx: Drawing context - element: Element dictionary with progress bar properties - """ - draw = ImageDraw.Draw(ctx.img) - - x_start = ctx.coords.parse_x(element['x_start']) - y_start = ctx.coords.parse_y(element['y_start']) - x_end = ctx.coords.parse_x(element['x_end']) - y_end = ctx.coords.parse_y(element['y_end']) - - progress = min(100, max(0, element['progress'])) # Clamp to 0-100 - direction = element.get('direction', 'right') - background = ctx.colors.resolve(element.get('background', 'white')) - fill = ctx.colors.resolve(element.get('fill', 'red')) - outline = ctx.colors.resolve(element.get('outline', 'black')) - width = element.get('width', 1) - show_percentage = element.get('show_percentage', False) - font_name = element.get('font_name', 'ppb.ttf') - - # Draw background - draw.rectangle( - ((x_start, y_start), (x_end, y_end)), - fill=background, - outline=outline, - width=width - ) - - # Calculate progress dimensions - if direction in ['right', 'left']: - progress_width = int((x_end - x_start) * (progress / 100)) - progress_height = y_end - y_start - else: # up or down - progress_width = x_end - x_start - progress_height = int((y_end - y_start) * (progress / 100)) - - # Draw progress - if direction == 'right': - draw.rectangle( - (x_start, y_start, x_start + progress_width, y_end), - fill=fill - ) - elif direction == 'left': - draw.rectangle( - (x_end - progress_width, y_start, x_end, y_end), - fill=fill - ) - elif direction == 'up': - draw.rectangle( - (x_start, y_end - progress_height, x_end, y_end), - fill=fill - ) - elif direction == 'down': - draw.rectangle( - (x_start, y_start, x_end, y_start + progress_height), - fill=fill - ) - - # Draw outline - draw.rectangle( - (x_start, y_start, x_end, y_end), - fill=None, - outline=outline, - width=width - ) - - # Add percentage text if enabled - if show_percentage: - # Calculate font size based on bar dimensions - font_size = min(y_end - y_start - 4, x_end - x_start - 4, 20) - font = ctx.fonts.get_font(font_name, font_size) - - percentage_text = f"{progress}%" - - # Get text dimensions - text_bbox = draw.textbbox((0, 0), percentage_text, font=font) - text_width = text_bbox[2] - text_bbox[0] - text_height = text_bbox[3] - text_bbox[1] - - # Center text - text_x = (x_start + x_end - text_width) / 2 - text_y = (y_start + y_end - text_height) / 2 - - # Choose text color based on position relative to progress - if progress > 50: - text_color = background - else: - text_color = fill - - draw.text( - (text_x, text_y), - percentage_text, - font=font, - fill=text_color, - anchor='lt' - ) - - ctx.pos_y = y_end - - -@element_handler(ElementType.DIAGRAM, requires=["x", "height"]) -async def draw_diagram(ctx: DrawingContext, element: dict) -> None: - """Draw diagram with optional bars. - - Renders a basic diagram with axes and optional bar chart elements. - - Args: - ctx: Drawing context - element: Element dictionary with diagram properties - """ - draw = ImageDraw.Draw(ctx.img) - draw.fontmode = "1" - - # Get base properties - pos_x = element['x'] - height = element['height'] - width = element.get('width', ctx.img.width) - offset_lines = element.get('margin', 20) - - # Draw axes - # X axis - draw.line( - [(pos_x + offset_lines, ctx.pos_y + height - offset_lines), - (pos_x + width, ctx.pos_y + height - offset_lines)], - fill=ctx.colors.resolve('black'), - width=1 - ) - # Y axis - draw.line( - [(pos_x + offset_lines, ctx.pos_y), - (pos_x + offset_lines, ctx.pos_y + height - offset_lines)], - fill=ctx.colors.resolve('black'), - width=1 - ) - - if "bars" in element: - bar_config = element["bars"] - bar_margin = bar_config.get('margin', 10) - bar_data = bar_config["values"].split(";") - bar_count = len(bar_data) - font_name = bar_config.get("font", "ppb.ttf") - - # Calculate bar width - bar_width = math.floor( - (width - offset_lines - ((bar_count + 1) * bar_margin)) / bar_count - ) - - # Set up font for legends - size = bar_config.get('legend_size', 10) - font = ctx.fonts.get_font(font_name, size) - legend_color = ctx.colors.resolve(bar_config.get('legend_color', "black")) - - # Find maximum value for scaling - max_val = 0 - for bar in bar_data: - try: - name, value = bar.split(",", 1) - max_val = max(max_val, int(value)) - except (ValueError, IndexError): - continue - - if max_val == 0: - ctx.pos_y = ctx.pos_y + height - - height_factor = (height - offset_lines) / max_val - - # Draw bars and legends - for bar_pos, bar in enumerate(bar_data): - try: - name, value = bar.split(",", 1) - value = int(value) - - # Calculate bar position - x_pos = ((bar_margin + bar_width) * bar_pos) + offset_lines + pos_x - - # Draw legend - draw.text( - (x_pos + (bar_width / 2), ctx.pos_y + height - offset_lines / 2), - str(name), - fill=legend_color, - font=font, - anchor="mm" - ) - - # Draw bar - bar_height = height_factor * value - draw.rectangle( - (x_pos, ctx.pos_y + height - offset_lines - bar_height, - x_pos + bar_width, ctx.pos_y + height - offset_lines), - fill=ctx.colors.resolve(bar_config["color"]) - ) - - except (ValueError, IndexError, KeyError) as e: - raise ServiceValidationError( - translation_domain=DOMAIN, - translation_key="plot_bar_invalid", - translation_placeholders={ "error": str(e)} - ) from e - - ctx.pos_y = ctx.pos_y + height diff --git a/custom_components/opendisplay/light.py b/custom_components/opendisplay/light.py deleted file mode 100644 index 12b72b4..0000000 --- a/custom_components/opendisplay/light.py +++ /dev/null @@ -1,169 +0,0 @@ -from __future__ import annotations - -PARALLEL_UPDATES = 1 - -import asyncio -import logging -from typing import Any - -from homeassistant.components.light import ( - ColorMode, - LightEntity, - LightEntityFeature, -) -from homeassistant.core import HomeAssistant -from homeassistant.exceptions import HomeAssistantError -from homeassistant.helpers.entity_platform import AddEntitiesCallback -from .entity import OpenDisplayBLEEntity -from .runtime_data import OpenDisplayConfigEntry, OpenDisplayBLERuntimeData - -from .const import DOMAIN -from .ble import turn_led_on, turn_led_off, get_protocol_by_name - -_LOGGER = logging.getLogger(__name__) - - -async def async_setup_entry( - hass: HomeAssistant, - entry: OpenDisplayConfigEntry, - async_add_entities: AddEntitiesCallback, -) -> None: - """Set up BLE light entities.""" - # Only create light entity for BLE devices - entry_data = entry.runtime_data - if not isinstance(entry_data, OpenDisplayBLERuntimeData): - return - - mac_address = entry_data.mac_address - name = entry_data.name - device_metadata = entry_data.device_metadata - protocol_type = entry_data.protocol_type # Default to ATC for backward compatibility - - # Skip LED entity for OpenDisplay devices - LED config not yet implemented - if protocol_type == "open_display": - return - - light = OpenDisplayBLELight( - hass=hass, - mac_address=mac_address, - name=name, - device_metadata=device_metadata, - protocol_type=protocol_type, - entry=entry, - ) - - async_add_entities([light]) - - -class OpenDisplayBLELight(OpenDisplayBLEEntity, LightEntity): - """BLE Light entity for OpenDisplay tags.""" - - _attr_entity_registry_enabled_default = True - - def __init__( - self, - hass: HomeAssistant, - mac_address: str, - name: str, - device_metadata: dict, - protocol_type: str, - entry: OpenDisplayConfigEntry, - ) -> None: - """Initialize the BLE light entity.""" - super().__init__(mac_address, name, entry) - self._hass = hass - self._device_metadata = device_metadata - self._is_on = False - self._auto_off_task = None - self._protocol = get_protocol_by_name(protocol_type) - self._service_uuid = self._protocol.service_uuid - self._attr_translation_key = "led" - - @property - def unique_id(self) -> str: - """Return unique ID for this entity.""" - return f"opendisplay_ble_{self._mac_address}_light" - - @property - def is_on(self) -> bool: - """Return true if the light is on.""" - return self._is_on - - @property - def supported_color_modes(self) -> set[ColorMode]: - """Return supported color modes.""" - return {ColorMode.ONOFF} - - @property - def color_mode(self) -> ColorMode: - """Return current color mode.""" - return ColorMode.ONOFF - - @property - def supported_features(self) -> LightEntityFeature: - """Return supported features.""" - return LightEntityFeature(0) - - async def async_turn_on(self, **kwargs: Any) -> None: - """Turn the light on.""" - try: - success = await turn_led_on(self.hass, self._mac_address, self._service_uuid, self._protocol) - if success: - self._is_on = True - self.async_write_ha_state() - if self._auto_off_task and not self._auto_off_task.done(): - self._auto_off_task.cancel() - self._auto_off_task = asyncio.create_task(self._auto_off_timer()) - else: - self.async_write_ha_state() - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="led_on_failed" - ) - except Exception as e: - self.async_write_ha_state() - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="led_on_error", - translation_placeholders={"error": str(e)} - ) from e - - async def async_turn_off(self, **kwargs: Any) -> None: - """Turn the light off.""" - try: - if self._auto_off_task and not self._auto_off_task.done(): - self._auto_off_task.cancel() - success = await turn_led_off(self.hass, self._mac_address, self._service_uuid, self._protocol) - if success: - self._is_on = False - self.async_write_ha_state() - else: - self.async_write_ha_state() - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="led_off_failed", - ) - except Exception as e: - self.async_write_ha_state() - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="led_off_error", - translation_placeholders= {"error": str(e)} - ) from e - - async def async_update(self) -> None: - """Update the light state.""" - pass - - async def _auto_off_timer(self) -> None: - """Auto-off timer that turns LED off after BLE connection closes.""" - try: - await asyncio.sleep(8) - if self._is_on: - self._is_on = False - self.async_write_ha_state() - _LOGGER.debug("LED auto-turned off for %s after connection closed", self._mac_address) - except asyncio.CancelledError: - _LOGGER.debug("Auto-off timer cancelled for %s", self._mac_address) - except Exception as e: - _LOGGER.error("Error in auto-off timer for %s: %s", self._mac_address, e) diff --git a/custom_components/opendisplay/manifest.json b/custom_components/opendisplay/manifest.json index 7558304..d433568 100644 --- a/custom_components/opendisplay/manifest.json +++ b/custom_components/opendisplay/manifest.json @@ -3,46 +3,17 @@ "name": "OpenDisplay", "bluetooth": [ { - "manufacturer_id": 4919 - }, - { + "connectable": true, "manufacturer_id": 9286 } ], - "codeowners": [ - "@g4bri3lDev", - "@jonasniesner" - ], + "codeowners": ["@g4bri3lDev"], "config_flow": true, - "dependencies": [ - "bluetooth", - "recorder" - ], - "dhcp": [ - { - "hostname": "openepaperlink-*" - } - ], - "documentation": "https://github.com/OpenDisplay-org/Home_Assistant_Integration", - "integration_type": "hub", + "dependencies": ["bluetooth_adapters", "http"], + "documentation": "https://www.home-assistant.io/integrations/opendisplay", + "integration_type": "device", "iot_class": "local_push", - "issue_tracker": "https://github.com/OpenDisplay-org/Home_Assistant_Integration/issues", - "preview_features": { - "opendisplay_ble_updates": { - "learn_more_url": "https://github.com/OpenDisplay-org/Firmware", - "report_issue_url": "https://github.com/OpenDisplay-org/Home_Assistant_Integration/issues" - } - }, - "requirements": [ - "qrcode[pil]==7.4.2", - "requests_toolbelt==1.0.0", - "websocket-client==1.7.0", - "websockets>=14.2", - "python-resize-image==1.1.20", - "bleak>=1.0.1", - "bleak-retry-connector>=3.4.0", - "numpy>=1.26.4", - "Pillow>=10.4.0" - ], - "version": "2.0.2" + "loggers": ["opendisplay"], + "quality_scale": "silver", + "requirements": ["py-opendisplay==7.2.3"] } diff --git a/custom_components/opendisplay/runtime_data.py b/custom_components/opendisplay/runtime_data.py deleted file mode 100644 index 230b146..0000000 --- a/custom_components/opendisplay/runtime_data.py +++ /dev/null @@ -1,21 +0,0 @@ -from __future__ import annotations - -from dataclasses import dataclass, field -from typing import TYPE_CHECKING, Any - -from homeassistant.config_entries import ConfigEntry - -if TYPE_CHECKING: - from .coordinator import Hub - -@dataclass -class OpenDisplayBLERuntimeData: - """Runtime data for BLE device entries""" - - mac_address: str - name: str - device_metadata: dict - protocol_type: str - sensors: dict[str, Any] = field(default_factory=dict) - -type OpenDisplayConfigEntry = ConfigEntry[Hub | OpenDisplayBLERuntimeData] \ No newline at end of file diff --git a/custom_components/opendisplay/select.py b/custom_components/opendisplay/select.py deleted file mode 100644 index 6d843b2..0000000 --- a/custom_components/opendisplay/select.py +++ /dev/null @@ -1,476 +0,0 @@ -from __future__ import annotations - -PARALLEL_UPDATES = 1 - -from homeassistant.components.select import SelectEntity -from homeassistant.core import HomeAssistant, callback -from homeassistant.helpers.dispatcher import async_dispatcher_connect -from homeassistant.helpers.entity import EntityCategory -from homeassistant.helpers.entity_platform import AddEntitiesCallback - -from .const import DOMAIN -from .entity import OpenDisplayAPEntity -from .runtime_data import OpenDisplayConfigEntry - -import logging - -_LOGGER = logging.getLogger(__name__) - - -# Base mapping class for handling value-to-option mapping -class OptionMapping: - """Base mapping class for handling value-to-option mapping. - - Provides bidirectional mapping between internal values used by the AP - and human-readable options shown in the UI. This enables: - - - Converting raw numeric values to readable strings for display - - Converting user-selected strings back to the correct values for the AP - - Generating lists of valid options for dropdown menus - - For example, it can map brightness level 255 to "100%" and vice versa. - - Attributes: - value_to_option: Dictionary mapping internal values to display options - option_to_value: Dictionary mapping display options to internal values - options: List of all available display options for selection - """ - - def __init__(self, mapping: dict[int | str, str]): - """Initialize bidirectional mapping between values and display options. - - Creates three data structures for efficient value-option conversion: - - 1. value_to_option: Maps internal values to display options - 2. option_to_value: Maps display options back to internal values - 3. options: List of all available display options for dropdowns - - Examples: - OptionMapping({0: "off", 255: "100%"}) - - - Maps internal value 0 to display option "off" - - Maps internal value 255 to display option "100%" - - Creates reverse mappings to convert back after user selection - - The mapping is used to: - - - Display human-readable options in the Home Assistant UI - - Convert user selections back to the values expected by the AP API - - Provide consistent options for all instances of a select entity - - Args: - mapping: Dictionary with keys as internal values (int or str) and - values as human-readable display options (str) - """ - self.value_to_option = mapping - self.option_to_value = {v: k for k, v in mapping.items()} - self.options = list(mapping.values()) - - def get_option(self, value: int | str) -> str | None: - """Get the display option for a given value. - - Converts internal values from the AP to human-readable options - for display in the UI. - - Args: - value: Internal value to convert - - Returns: - str: Corresponding display option if found - None: If no mapping exists for the value - """ - return self.value_to_option.get(value) - - def get_value(self, option: str) -> int | str | None: - """Get the internal value for a given display option. - - Converts a user-selected option back to the internal value - needed by the AP. - - Args: - option: Display option selected by the user - - Returns: - int|str: Corresponding internal value if found - None: If no mapping exists for the option - """ - return self.option_to_value.get(option) - - -# Define mappings for different select types -CHANNEL_MAPPING = OptionMapping({ - 0: "auto", - 11: "11", - 15: "15", - 20: "20", - 25: "25", - 26: "26" -}) -"""Maps IEEE 802.15.4 channel numbers to display options. - -Channel 0 is special and means "automatic channel selection", -while others represent specific frequency channels. -""" - -BRIGHTNESS_MAPPING = OptionMapping({ - 0: "off", - 15: "10%", - 31: "25%", - 127: "50%", - 191: "75%", - 255: "100%" -}) -"""Maps LED brightness levels to percentage display options. - -Values range from 0 (off) to 255 (maximum brightness), -with intermediate values for different brightness levels. -""" - -TFT_BRIGHTNESS_MAPPING = OptionMapping({ - 0: "off", - 20: "10%", - 64: "25%", - 128: "50%", - 192: "75%", - 255: "100%" -}) -"""Maps TFT display brightness levels to percentage display options. - -Similar to LED brightness but with different value ranges optimized -for TFT display hardware. Values range from 0 (off) to 255 (maximum). -""" - -MAX_SLEEP_MAPPING = OptionMapping({ - 0: "shortest (40 sec)", - 5: "5 min", - 10: "10 min", - 30: "30 min", - 60: "1 hour" -}) -"""Maps maximum sleep duration settings for tags. - -Determines how long tags will sleep between check-ins, -affecting battery life and update responsiveness. -""" - -LOCK_INVENTORY_MAPPING = OptionMapping({ - 0: "no", - 1: "locked: don't add new tags", - 2: "learning: only add booting tags" -}) -"""Maps tag inventory lock modes for AP discovery behavior. - -Controls how the AP handles new tags that attempt to connect: - -- 0: All new tags are accepted -- 1: No new tags are accepted -- 2: Only booting tags are accepted -""" - -WIFI_POWER_MAPPING = OptionMapping({ - 78: "19.5 dBm", - 76: "19.0 dBm", - 74: "18.5 dBm", - 68: "17.0 dBm", - 60: "15.0 dBm", - 52: "13.0 dBm", - 44: "11.0 dBm", - 34: "8.5 dBm", - 28: "7.0 dBm", - 20: "5.0 dBm", - 8: "2.0 dBm", -}) -"""Maps WiFi transmit power levels in dBm. - -Controls the AP's WiFi transmission power. -""" - -LANGUAGE_MAPPING = OptionMapping({ - 0: "EN English", - 1: "NL Nederlands", - 2: "DE Deutsch", - 4: "FR Français", - 3: "NO Norsk", - 5: "CZ Čeština", - 6: "SK Slovenčina", - 7: "PL Polski", - 8: "ES Español", - 9: "SV Svenska", - 10: "DK Dansk", - 11: "ET Eesti" -}) -"""Maps language codes to human-readable language names. - -Determines the language used in some tag content types that support localization. -""" - -DISCOVERY_MAPPING = OptionMapping({ - 0: "Multicast", - 1: "Broadcast", -}) -"""Maps network discovery methods for AP-to-tag communication. - -Controls how the AP discovers tags on the network: - -- 0: Uses multicast for discovery (more efficient but less compatible) -- 1: Uses broadcast for discovery (more compatible but less efficient) -""" - -SUB_GHZ_MAPPING = OptionMapping({ - 0: "disabled", - 100: "100 - 864.000 Mhz (Europe, etc)", - 101: "101 - 865.006 Mhz (Europe, etc)", - 102: "102 - 866.014 Mhz (Europe, etc)", - 103: "103 - 867.020 Mhz (Europe, etc)", - 104: "104 - 868.027 Mhz (Europe, etc)", - 105: "105 - 869.034 Mhz (Europe, etc)", - 200: "200 - 903.000 Mhz (US, etc)", - 201: "201 - 907.027 Mhz (US, etc)", - 202: "202 - 911.054 Mhz (US, etc)", - 203: "203 - 915.083 Mhz (US, etc)", - 204: "204 - 919.110 Mhz (US, etc)", - 205: "205 - 923.138 Mhz (US, etc)" -}) -"""Maps Sub-GHz radio channel settings. - -Controls the frequency used by the optional Sub-GHz radio -for long-range communication with compatible tags. -Different regions have different legal frequency allocations, -with separate bands for Europe and North America. -""" - -# Mapping of select entities to their configurations -SELECT_ENTITIES = [ - { - "key": "channel", - "name": "IEEE 802.15.4 channel", - "mapping": CHANNEL_MAPPING, - }, - { - "key": "led", - "name": "RGB LED brightness", - "mapping": BRIGHTNESS_MAPPING, - }, - { - "key": "tft", - "name": "TFT brightness", - "mapping": TFT_BRIGHTNESS_MAPPING, - }, - { - "key": "maxsleep", - "name": "Maximum Sleep", - "mapping": MAX_SLEEP_MAPPING, - }, - { - "key": "lock", - "name": "Lock tag inventory", - "mapping": LOCK_INVENTORY_MAPPING, - }, - { - "key": "wifipower", - "name": "Wifi power", - "mapping": WIFI_POWER_MAPPING, - }, - { - "key": "language", - "name": "Language", - "mapping": LANGUAGE_MAPPING, - }, - { - "key": "discovery", - "name": "Discovery Method", - "mapping": DISCOVERY_MAPPING - }, - { - "key": "subghzchannel", - "name": "Sub-GHz channel", - "mapping": SUB_GHZ_MAPPING - } -] -"""Configuration for all select entities to create for the AP. - -This list defines all the select entities that will be created during -integration setup. Each dictionary contains: - -- key: Configuration parameter key in the AP's configuration system. - This matches the key used in HTTP API calls to the AP. -- name: Human-readable name for display in the UI. This will be combined - with "AP" to form the full entity name. -- icon: Material Design Icons identifier for the entity. - Format is "mdi:icon-name" matching the icon library. -- mapping: OptionMapping instance to handle conversion between internal - values and user-friendly display options. - -The order of entities in this list determines their order in the UI. -Each entity corresponds to a specific configuration option on the AP -and allows users to change that setting through Home Assistant. - -Some common settings include: - -- channel: IEEE 802.15.4 wireless channel for tag communication -- led: RGB LED brightness on the AP -- maxsleep: Maximum time tags can sleep between check-ins -- lock: Tag inventory management mode -- language: Content mode language for some tag types -- discovery: Network discovery method for finding tags -- subghzchannel: Sub-GHz radio frequency channel (if equipped) -""" - - -class APConfigSelect(OpenDisplayAPEntity, SelectEntity): - """Base select entity for AP configuration. - - Provides a dropdown selection entity that controls a specific - configuration setting on the OEPL Access Point. - - When the user selects an option, the corresponding value is sent - to the AP via HTTP and the local state is updated. The entity - also responds to configuration changes from other sources. - """ - - _attr_entity_registry_enabled_default = True - - def __init__(self, hub, key: str, name: str, mapping: OptionMapping) -> None: - """Initialize the select entity. - - Sets up the select entity with appropriate name, icon, and options. - - Args: - hub: Hub instance for AP communication - key: Configuration key on the AP - name: Human-readable name for the UI - mapping: OptionMapping for value/option conversion - """ - super().__init__(hub) - self._key = key - self._attr_translation_key = key - self._attr_unique_id = f"{hub.entry.entry_id}_{key}" - self._attr_entity_category = EntityCategory.CONFIG - self._mapping = mapping - self._attr_options = mapping.options - self._available = False - - @property - def available(self) -> bool: - """Return if entity is available. - - A select entity is available if: - - - The AP is online - - The configuration key exists in the AP's config - - Returns: - bool: True if the entity is available, False otherwise - """ - """Return if entity is available.""" - return self._hub.online and self._key in self._hub.ap_config - - @property - def current_option(self) -> str | None: - """Return the current selected option. - - Converts the current value from the AP configuration to - the corresponding display option using the mapping. - - Returns: - str: Currently selected option - None: If entity is unavailable or value has no mapping - """ - if not self.available: - return None - value = self._hub.ap_config.get(self._key) - return self._mapping.get_option(value) - - async def async_select_option(self, option: str) -> None: - """Change the selected option. - - Converts the selected option to its internal value and - sends it to the AP via the hub. - - Args: - option: The option selected by the user - """ - value = self._mapping.get_value(option) - if value is not None: - await self._hub.set_ap_config_item(self._key, value) - - async def async_added_to_hass(self): - """Register callbacks.""" - await super().async_added_to_hass() - self.async_on_remove( - async_dispatcher_connect( - self.hass, - f"{DOMAIN}_ap_config_update", - self._handle_update, - ) - ) - - -class APTimeHourSelect(APConfigSelect): - """Special handling for time selection. - - Extends the base select entity with specialized handling for - hour-based time selection. Instead of using a predefined mapping, - it dynamically generates a mapping with 24 hours in HH:00 format. - - This is used for sleep time configuration on the AP, which defines - periods when tag updates are disabled. - """ - - def __init__(self, hub, key: str, name: str) -> None: - """Initialize time select entity. - - Creates a specialized select entity for time selection with - 24 options representing hours of the day (00:00 to 23:00). - - Args: - hub: Hub instance for AP communication - key: Configuration key on the AP - name: Human-readable name for the UI - """ - # Create 24-hour time mapping - time_mapping = OptionMapping({ - i: f"{i:02d}:00" for i in range(24) - }) - super().__init__(hub, key, name, time_mapping) - - -async def async_setup_entry(hass: HomeAssistant, entry: OpenDisplayConfigEntry, - async_add_entities: AddEntitiesCallback) -> None: - """Set up select entities for AP configuration. - - Creates select entities for all defined AP configuration options - based on the SELECT_ENTITIES definition list. - - Additionally, creates time-specific select entities for sleep time - configuration (start and end hours when updates are disabled). - - Args: - hass: Home Assistant instance - entry: Configuration entry - async_add_entities: Callback to register new entities - """ - hub = entry.runtime_data - - # Wait for initial AP config to be loaded - if not hub.ap_config: - await hub.async_update_ap_config() - - entities: list[SelectEntity] = [] - - # Add standard select entities - for config in SELECT_ENTITIES: - entities.append(APConfigSelect( - hub, - config["key"], - config["name"], - config["mapping"] - )) - - # Add time select entities - entities.extend([ - APTimeHourSelect(hub, "sleeptime1", "No updates between 1 (from)"), - APTimeHourSelect(hub, "sleeptime2", "No updates between 2 (to)"), - ]) - - async_add_entities(entities) diff --git a/custom_components/opendisplay/sensor.py b/custom_components/opendisplay/sensor.py index af87d4e..c1aa02c 100644 --- a/custom_components/opendisplay/sensor.py +++ b/custom_components/opendisplay/sensor.py @@ -1,10 +1,11 @@ -from __future__ import annotations - -PARALLEL_UPDATES = 0 +"""Sensor platform for OpenDisplay devices.""" +from collections.abc import Callable from dataclasses import dataclass -from datetime import datetime, timezone -from typing import Any, Callable, Final + +from opendisplay import voltage_to_percent +from opendisplay.models.advertisement import AdvertisementData +from opendisplay.models.enums import CapacityEstimator, PowerMode from homeassistant.components.sensor import ( SensorDeviceClass, @@ -13,735 +14,91 @@ SensorStateClass, ) from homeassistant.const import ( - SIGNAL_STRENGTH_DECIBELS, PERCENTAGE, + EntityCategory, + UnitOfElectricPotential, UnitOfTemperature, - UnitOfElectricPotential, UnitOfInformation, UnitOfTime, ) -from homeassistant.core import HomeAssistant, callback -from homeassistant.helpers import entity_registry as er -from homeassistant.helpers.dispatcher import async_dispatcher_connect -from homeassistant.helpers.entity import EntityCategory -from homeassistant.helpers.entity_platform import AddEntitiesCallback -from homeassistant.helpers.typing import StateType -import logging +from homeassistant.core import HomeAssistant +from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback -from . import Hub -from .entity import OpenDisplayTagEntity, OpenDisplayAPEntity, OpenDisplayBLEEntity -from .runtime_data import OpenDisplayConfigEntry -from .const import DOMAIN -from .util import is_ble_entry -from .tag_types import get_hw_string, get_hw_dimensions +from . import OpenDisplayConfigEntry +from .entity import OpenDisplayEntity -_LOGGER: Final = logging.getLogger(__name__) +PARALLEL_UPDATES = 0 -@dataclass(kw_only=True, frozen=True) +@dataclass(frozen=True, kw_only=True) class OpenDisplaySensorEntityDescription(SensorEntityDescription): - """Class describing OpenDisplay sensor entities. - - Extends the standard Home Assistant sensor description with - additional fields specific to OpenDisplay sensors, particularly - the value extraction function that pulls data from the raw state. - - This class acts as a blueprint for creating sensor entities with - consistent behavior and appearance across the integration. - - Attributes: - key: Unique identifier for the sensor type - name: Human-readable name for the sensor - device_class: Device class for standardized behavior - state_class: State class for statistics and history - native_unit_of_measurement: Unit for the sensor value - suggested_unit_of_measurement: Preferred unit for display - suggested_display_precision: Number of decimal places to display - entity_category: Category for UI organization - entity_registry_enabled_default: Whether enabled by default - value_fn: Function to extract the value from raw state data - attr_fn: Optional function to extract extra attributes - icon: Material Design Icons identifier - """ - key: str - name: str - device_class: SensorDeviceClass | None = None - state_class: SensorStateClass | None = None - native_unit_of_measurement: str | None = None - suggested_unit_of_measurement: UnitOfInformation | None = None - suggested_display_precision: int | None = None - entity_category: EntityCategory | None = None - entity_registry_enabled_default: bool = False - value_fn: Callable[[dict], Any] - attr_fn: Callable[[dict], Any] = None - - -AP_SENSOR_TYPES: tuple[OpenDisplaySensorEntityDescription, ...] = ( - OpenDisplaySensorEntityDescription( - key="ip", - name="IP Address", - value_fn=lambda data: data.get("ip"), - ), - OpenDisplaySensorEntityDescription( - key="wifi_ssid", - name="WiFi SSID", - value_fn=lambda data: data.get("wifi_ssid"), - ), - OpenDisplaySensorEntityDescription( - key="record_count", - name="Tag count", - state_class=SensorStateClass.TOTAL, - value_fn=lambda data: data.get("record_count"), - entity_registry_enabled_default=True, - ), - OpenDisplaySensorEntityDescription( - key="db_size", - name="Database Size", - device_class=SensorDeviceClass.DATA_SIZE, - state_class=SensorStateClass.MEASUREMENT, - native_unit_of_measurement=UnitOfInformation.BYTES, - suggested_unit_of_measurement=UnitOfInformation.KIBIBYTES, - suggested_display_precision=3, - entity_category=EntityCategory.DIAGNOSTIC, - value_fn=lambda data: int(data.get("db_size", 0)), - ), - OpenDisplaySensorEntityDescription( - key="little_fs_free", - name="LittleFS Free", - device_class=SensorDeviceClass.DATA_SIZE, - state_class=SensorStateClass.MEASUREMENT, - native_unit_of_measurement=UnitOfInformation.BYTES, - suggested_unit_of_measurement=UnitOfInformation.MEBIBYTES, - suggested_display_precision=3, - entity_category=EntityCategory.DIAGNOSTIC, - value_fn=lambda data: int(data.get("little_fs_free", 0)), - ), - OpenDisplaySensorEntityDescription( - key="ap_state", - name="State", - value_fn=lambda data: data.get("ap_state"), - ), - OpenDisplaySensorEntityDescription( - key="run_state", - name="Run State", - value_fn=lambda data: data.get("run_state"), - ), - OpenDisplaySensorEntityDescription( - key="wifi_rssi", - name="WiFi RSSI", - device_class=SensorDeviceClass.SIGNAL_STRENGTH, - state_class=SensorStateClass.MEASUREMENT, - native_unit_of_measurement=SIGNAL_STRENGTH_DECIBELS, - entity_category=EntityCategory.DIAGNOSTIC, - value_fn=lambda data: data.get("rssi"), - ), - OpenDisplaySensorEntityDescription( - key="heap", - name="Free Heap", - device_class=SensorDeviceClass.DATA_SIZE, - state_class=SensorStateClass.MEASUREMENT, - native_unit_of_measurement=UnitOfInformation.BYTES, - suggested_unit_of_measurement=UnitOfInformation.KIBIBYTES, - suggested_display_precision=3, - entity_category=EntityCategory.DIAGNOSTIC, - value_fn=lambda data: int(data.get("heap", 0)), - ), - OpenDisplaySensorEntityDescription( - key="sys_time", - name="System Time", - device_class=SensorDeviceClass.TIMESTAMP, - entity_category=EntityCategory.DIAGNOSTIC, - value_fn=lambda data: datetime.fromtimestamp(data.get("sys_time", 0), tz=timezone.utc), - ), - OpenDisplaySensorEntityDescription( - key="uptime", - name="Uptime", - device_class=SensorDeviceClass.DURATION, - state_class=SensorStateClass.MEASUREMENT, - native_unit_of_measurement=UnitOfTime.SECONDS, - entity_category=EntityCategory.DIAGNOSTIC, - value_fn=lambda data: data.get("uptime"), - ), - OpenDisplaySensorEntityDescription( - key="low_battery_tag_count", - name="Low Battery Tags", - state_class=SensorStateClass.MEASUREMENT, - value_fn=lambda data: data.get("low_battery_count"), - entity_registry_enabled_default=True, - ), - OpenDisplaySensorEntityDescription( - key="timeout_tag_count", - name="Timed out Tags", - state_class=SensorStateClass.MEASUREMENT, - native_unit_of_measurement=None, - value_fn=lambda data: data.get("timeout_count"), - entity_registry_enabled_default=True, - ), - OpenDisplaySensorEntityDescription( - key="ps_ram_free", - name="PSRAM Free", - device_class=SensorDeviceClass.DATA_SIZE, - state_class=SensorStateClass.MEASUREMENT, - native_unit_of_measurement=UnitOfInformation.BYTES, - suggested_unit_of_measurement=UnitOfInformation.MEBIBYTES, - suggested_display_precision=3, - entity_category=EntityCategory.DIAGNOSTIC, - value_fn=lambda data: int(data.get("ps_ram_free", 0)), - ) -) -"""Definitions for all AP-related sensor entities. - -This tuple defines all the sensor entities created for the Access Point. -Each entry is an OpenDisplaySensorEntityDescription that specifies -how to create and populate a sensor entity from AP data. + """Describes an OpenDisplay sensor entity.""" -Sensor types include: + value_fn: Callable[[AdvertisementData], float | int | None] -- Network information (IP, WiFi SSID, RSSI) -- System metrics (heap, database size, uptime) -- Tag statistics (count, low battery, timeout) -- Operational state (AP state, run state) - -Each sensor uses a value_fn to extract the relevant data from -the hub's AP status dictionary. -""" -TAG_SENSOR_TYPES: tuple[OpenDisplaySensorEntityDescription, ...] = ( - OpenDisplaySensorEntityDescription( - key="temperature", - name="Temperature", - device_class=SensorDeviceClass.TEMPERATURE, - state_class=SensorStateClass.MEASUREMENT, - native_unit_of_measurement=UnitOfTemperature.CELSIUS, - value_fn=lambda data: data.get("temperature"), - entity_registry_enabled_default=True, - ), - OpenDisplaySensorEntityDescription( - key="battery_voltage", - name="Battery Voltage", - device_class=SensorDeviceClass.VOLTAGE, - state_class=SensorStateClass.MEASUREMENT, - native_unit_of_measurement=UnitOfElectricPotential.MILLIVOLT, - entity_category=EntityCategory.DIAGNOSTIC, - value_fn=lambda data: data.get("battery_mv"), - ), - OpenDisplaySensorEntityDescription( - key="battery_percentage", - name="Battery Percentage", - device_class=SensorDeviceClass.BATTERY, - state_class=SensorStateClass.MEASUREMENT, - native_unit_of_measurement=PERCENTAGE, - value_fn=lambda data: _calculate_battery_percentage(data.get("battery_mv", 0)), - entity_registry_enabled_default=True, - ), - OpenDisplaySensorEntityDescription( - key="last_seen", - name="Last Seen", - device_class=SensorDeviceClass.TIMESTAMP, - value_fn=lambda data: datetime.fromtimestamp(data.get("last_seen", 0), tz=timezone.utc), - ), - OpenDisplaySensorEntityDescription( - key="next_update", - name="Next Update", - device_class=SensorDeviceClass.TIMESTAMP, - value_fn=lambda data: datetime.fromtimestamp(data.get("next_update", 0), tz=timezone.utc), - ), - OpenDisplaySensorEntityDescription( - key="next_checkin", - name="Next Checkin", - device_class=SensorDeviceClass.TIMESTAMP, - value_fn=lambda data: datetime.fromtimestamp(data.get("next_checkin", 0), tz=timezone.utc), - ), - OpenDisplaySensorEntityDescription( - key="lqi", - name="Link Quality Index", - state_class=SensorStateClass.MEASUREMENT, - entity_category=EntityCategory.DIAGNOSTIC, - value_fn=lambda data: data.get("lqi"), - ), - OpenDisplaySensorEntityDescription( - key="rssi", - name="RSSI", - device_class=SensorDeviceClass.SIGNAL_STRENGTH, - state_class=SensorStateClass.MEASUREMENT, - native_unit_of_measurement=SIGNAL_STRENGTH_DECIBELS, - entity_category=EntityCategory.DIAGNOSTIC, - value_fn=lambda data: data.get("rssi"), - ), - OpenDisplaySensorEntityDescription( - key="pending_updates", - name="Pending Updates", - state_class=SensorStateClass.MEASUREMENT, - entity_category=EntityCategory.DIAGNOSTIC, - value_fn=lambda data: data.get("pending"), - ), - OpenDisplaySensorEntityDescription( - key="content_mode", - name="Content Mode", - value_fn=lambda data: data.get("content_mode"), - ), - OpenDisplaySensorEntityDescription( - key="wakeup_reason", - name="Wakeup Reason", - entity_category=EntityCategory.DIAGNOSTIC, - value_fn=lambda data: data.get("wakeup_reason"), - ), - OpenDisplaySensorEntityDescription( - key="capabilities", - name="Capabilities", - entity_category=EntityCategory.DIAGNOSTIC, - value_fn=lambda data: data.get("capabilities"), - attr_fn=lambda data: { - "raw_value": data.get("capabilities", 0), - "binary_value": format(data.get("capabilities", 0), '08b'), - "capabilities": get_capabilities(data.get("capabilities", 0)) - }, - ), - OpenDisplaySensorEntityDescription( - key="update_count", - name="Update Count", - state_class=SensorStateClass.MEASUREMENT, - entity_category=EntityCategory.DIAGNOSTIC, - value_fn=lambda data: data.get("update_count"), - ), - OpenDisplaySensorEntityDescription( - key="width", - name="Width", - state_class=SensorStateClass.MEASUREMENT, - entity_category=EntityCategory.DIAGNOSTIC, - value_fn=lambda data: data.get("width"), - ), - OpenDisplaySensorEntityDescription( - key="height", - name="Height", - state_class=SensorStateClass.MEASUREMENT, - entity_category=EntityCategory.DIAGNOSTIC, - value_fn=lambda data: data.get("height"), - ), - OpenDisplaySensorEntityDescription( - key="runtime", - name="Runtime", - device_class=SensorDeviceClass.DURATION, - state_class=SensorStateClass.TOTAL, - native_unit_of_measurement=UnitOfTime.SECONDS, - entity_category=EntityCategory.DIAGNOSTIC, - value_fn=lambda data: data.get("runtime", 0), - ), - OpenDisplaySensorEntityDescription( - key="boot_count", - name="Boot Count", - state_class=SensorStateClass.TOTAL, - entity_category=EntityCategory.DIAGNOSTIC, - value_fn=lambda data: data.get("boot_count", 0), - ), - OpenDisplaySensorEntityDescription( - key="checkin_count", - name="Checkin Count", - state_class=SensorStateClass.TOTAL, - entity_category=EntityCategory.DIAGNOSTIC, - value_fn=lambda data: data.get("checkin_count", 0), - ), - OpenDisplaySensorEntityDescription( - key="block_requests", - name="Block Requests", - state_class=SensorStateClass.TOTAL, - entity_category=EntityCategory.DIAGNOSTIC, - value_fn=lambda data: data.get("block_requests", 0), - ), +_TEMPERATURE_DESCRIPTION = OpenDisplaySensorEntityDescription( + key="temperature", + device_class=SensorDeviceClass.TEMPERATURE, + native_unit_of_measurement=UnitOfTemperature.CELSIUS, + state_class=SensorStateClass.MEASUREMENT, + entity_category=EntityCategory.DIAGNOSTIC, + entity_registry_enabled_default=False, + value_fn=lambda adv: adv.temperature_c, ) - -BLE_SENSOR_TYPES: tuple[OpenDisplaySensorEntityDescription, ...] = ( - OpenDisplaySensorEntityDescription( - key="temperature", - name="Temperature", - device_class=SensorDeviceClass.TEMPERATURE, - state_class=SensorStateClass.MEASUREMENT, - native_unit_of_measurement=UnitOfTemperature.CELSIUS, - value_fn=lambda data: data.get("temperature"), - ), - OpenDisplaySensorEntityDescription( - key="battery_percentage", - name="Battery Percentage", - device_class=SensorDeviceClass.BATTERY, - state_class=SensorStateClass.MEASUREMENT, - native_unit_of_measurement=PERCENTAGE, - value_fn=lambda data: data.get("battery_percentage"), - ), - OpenDisplaySensorEntityDescription( - key="battery_voltage", - name="Battery Voltage", - device_class=SensorDeviceClass.VOLTAGE, - state_class=SensorStateClass.MEASUREMENT, - native_unit_of_measurement=UnitOfElectricPotential.MILLIVOLT, - entity_category=EntityCategory.DIAGNOSTIC, - entity_registry_enabled_default=False, - value_fn=lambda data: data.get("battery_voltage"), - ), - OpenDisplaySensorEntityDescription( - key="rssi", - name="RSSI", - device_class=SensorDeviceClass.SIGNAL_STRENGTH, - state_class=SensorStateClass.MEASUREMENT, - native_unit_of_measurement=SIGNAL_STRENGTH_DECIBELS, - entity_category=EntityCategory.DIAGNOSTIC, - entity_registry_enabled_default=False, - value_fn=lambda data: data.get("rssi"), - ), - OpenDisplaySensorEntityDescription( - key="last_seen", - name="Last Seen", - device_class=SensorDeviceClass.TIMESTAMP, - entity_category=EntityCategory.DIAGNOSTIC, - entity_registry_enabled_default=False, - value_fn=lambda data: data.get("last_seen"), - ), +_BATTERY_POWER_MODES = {PowerMode.BATTERY, PowerMode.SOLAR} + +_BATTERY_VOLTAGE_DESCRIPTION = OpenDisplaySensorEntityDescription( + key="battery_voltage", + translation_key="battery_voltage", + device_class=SensorDeviceClass.VOLTAGE, + native_unit_of_measurement=UnitOfElectricPotential.MILLIVOLT, + state_class=SensorStateClass.MEASUREMENT, + entity_category=EntityCategory.DIAGNOSTIC, + entity_registry_enabled_default=False, + value_fn=lambda adv: adv.battery_mv, ) -"""Definitions for all BLE tag-related sensor entities. - -These sensors are created for BLE devices and track: -- Battery level and voltage from advertising data -- RSSI signal strength from Bluetooth -- Last seen timestamp from advertising updates -""" - -"""Definitions for all tag-related sensor entities. - -This tuple defines all the sensor entities created for each ESL. -Each entry is an OpenDisplaySensorEntityDescription that specifies -how to create and populate a sensor entity from tag data. - -Sensor types include: - -- Telemetry data (temperature, battery, signal strength) -- Status information (last seen, next update, pending) -- Hardware capabilities (runtime, boot count, display size) -- Technical details (wakeup reason, capabilities flags) - -Each sensor uses a value_fn to extract the relevant data from -the hub's tag data dictionary. -""" - - -def _calculate_battery_percentage(voltage: int) -> int: - """Calculate battery percentage from raw voltage. - - Converts a battery voltage reading in millivolts to an estimated - percentage based on the known discharge curve of a typical - lithium battery used in ESL tags. - - The formula approximates: - - 100% at around 3.0V - - 0% at around 2.2V - Args: - voltage: Battery voltage in millivolts - - Returns: - int: Battery percentage (0-100), clamped to valid range - """ - if not voltage: - return 0 - percentage = ((voltage / 1000) - 2.20) * 250 - return max(0, min(100, int(percentage))) - - -def _tag_has_battery(tag_data: dict) -> bool: - """Check if a tag is battery-powered.""" - if not tag_data: - return True # Default to creating sensors when data is missing - - if tag_data.get("is_external"): - return False - - battery_mv = tag_data.get("battery_mv") - return battery_mv is not None and battery_mv > 0 - - -def _remove_battery_sensors( - hass: HomeAssistant, entry_id: str, tag_mac: str +async def async_setup_entry( + hass: HomeAssistant, + entry: OpenDisplayConfigEntry, + async_add_entities: AddConfigEntryEntitiesCallback, ) -> None: - """Remove battery entities for a non-battery tag.""" - entity_registry = er.async_get(hass) - unique_ids = { - f"{tag_mac}_battery_percentage", - f"{tag_mac}_battery_voltage", - } - - for entity in er.async_entries_for_config_entry(entity_registry, entry_id): - if entity.unique_id in unique_ids: - _LOGGER.info("Removing battery sensor for external-power tag: %s", entity.entity_id) - entity_registry.async_remove(entity.entity_id) - - -class OpenDisplayTagSensor(OpenDisplayTagEntity, SensorEntity): - """Sensor class for OpenDisplay tag data.""" - entity_description: OpenDisplaySensorEntityDescription - - def __init__(self, hub: Hub, tag_mac: str, description: OpenDisplaySensorEntityDescription) -> None: - """Initialize the tag sensor.""" - super().__init__(hub, tag_mac) - self.entity_description = description - self._attr_translation_key = description.key - self._attr_unique_id = f"{tag_mac}_{description.key}" - self.entity_id = f"{DOMAIN}.{tag_mac.lower()}_{description.key}" - self._attr_entity_registry_enabled_default = description.entity_registry_enabled_default - - @property - def native_value(self): - """Return the state of the sensor.""" - if not self.available or self.entity_description.value_fn is None: - return None - return self.entity_description.value_fn(self._hub.get_tag_data(self._tag_mac)) + """Set up OpenDisplay sensor entities.""" + coordinator = entry.runtime_data.coordinator + power_config = entry.runtime_data.device_config.power + descriptions: list[OpenDisplaySensorEntityDescription] = [_TEMPERATURE_DESCRIPTION] + + if power_config.power_mode_enum in _BATTERY_POWER_MODES: + capacity_estimator = power_config.capacity_estimator or CapacityEstimator.LI_ION + descriptions += [ + _BATTERY_VOLTAGE_DESCRIPTION, + OpenDisplaySensorEntityDescription( + key="battery", + device_class=SensorDeviceClass.BATTERY, + native_unit_of_measurement=PERCENTAGE, + state_class=SensorStateClass.MEASUREMENT, + entity_category=EntityCategory.DIAGNOSTIC, + value_fn=lambda adv: voltage_to_percent( + adv.battery_mv, capacity_estimator + ), + ), + ] + + async_add_entities( + OpenDisplaySensorEntity(coordinator, description) + for description in descriptions + ) - @property - def extra_state_attributes(self): - """Return the state attributes.""" - if self.entity_description.attr_fn is None: - return None - return self.entity_description.attr_fn(self._hub.get_tag_data(self._tag_mac)) -class OpenDisplayAPSensor(OpenDisplayAPEntity, SensorEntity): - """Sensor class for OEPL AP data.""" +class OpenDisplaySensorEntity(OpenDisplayEntity, SensorEntity): + """A sensor entity for an OpenDisplay device.""" entity_description: OpenDisplaySensorEntityDescription - def __init__(self, hub, description: OpenDisplaySensorEntityDescription) -> None: - """Initialize the AP sensor.""" - super().__init__(hub) - self.entity_description = description - self._attr_translation_key = description.key - self._attr_unique_id = f"{self._hub.entry.entry_id}_{description.key}" - - async def async_added_to_hass(self) -> None: - """Register update signal handlers.""" - await super().async_added_to_hass() - self.async_on_remove( - async_dispatcher_connect( - self.hass, - f"{DOMAIN}_ap_update", - self._handle_update, - ) - ) - @property - def native_value(self): - """Return the state of the sensor.""" - if not self.available or self.entity_description.value_fn is None: + def native_value(self) -> float | int | None: + """Return the sensor value.""" + if self.coordinator.data is None: return None - return self.entity_description.value_fn(self._hub.ap_status) - - - -class OpenDisplayBLESensor(OpenDisplayBLEEntity, SensorEntity): - """BLE sensor entity for OpenDisplay tags.""" - - _attr_entity_registry_enabled_default = True - - def __init__( - self, - hass: HomeAssistant, - mac_address: str, - name: str, - device_metadata: dict, - entry: OpenDisplayConfigEntry, - description: OpenDisplaySensorEntityDescription, - ) -> None: - """Initialize the BLE sensor entity.""" - super().__init__(mac_address, name, entry) - self._hass = hass - self._device_metadata = device_metadata - self._description = description - self._sensor_data = {} - self._attr_entity_registry_enabled_default = description.entity_registry_enabled_default - self._attr_translation_key = description.key - - @property - def unique_id(self) -> str: - """Return unique ID for this entity.""" - return f"opendisplay_ble_{self._mac_address}_{self._description.key}" - - @property - def native_value(self) -> StateType: - """Return the state of the sensor.""" - if self._description.value_fn: - return self._description.value_fn(self._sensor_data) - return self._sensor_data.get(self._description.key) - - @property - def native_unit_of_measurement(self) -> str | None: - """Return the unit of measurement.""" - return self._description.native_unit_of_measurement - - @property - def device_class(self) -> SensorDeviceClass | None: - """Return the device class.""" - return self._description.device_class - - @property - def state_class(self) -> SensorStateClass | None: - """Return the state class.""" - return self._description.state_class - - @property - def entity_category(self) -> EntityCategory | None: - """Return the entity category.""" - return self._description.entity_category - - - def update_from_advertising_data(self, data: dict) -> None: - """Update sensor state from BLE advertising data.""" - self._sensor_data = data - if self.hass is not None: - self.async_write_ha_state() - - async def async_added_to_hass(self) -> None: - """Called when entity is added to hass.""" - if self._sensor_data: - self.async_write_ha_state() - - async def async_update(self) -> None: - """Update the sensor state.""" - pass - - -async def async_setup_entry(hass: HomeAssistant, entry: OpenDisplayConfigEntry, async_add_entities: AddEntitiesCallback) -> None: - """Set up the OpenDisplay sensors. - - Creates sensor entities for both AP-based and BLE-based entries: - - 1. For AP entries: AP sensors and tag sensors based on existing types - 2. For BLE entries: BLE sensor entities for battery, RSSI, last seen - - Args: - hass: Home Assistant instance - entry: Configuration entry - async_add_entities: Callback to register new entities - """ - entry_data = entry.runtime_data - - # Check if this is a BLE device entry - if is_ble_entry(entry_data): - # Set up BLE sensors with a simple callback approach - mac_address = entry_data.mac_address - name = entry_data.name - device_metadata = entry_data.device_metadata - protocol_type = entry_data.protocol_type # Default to ATC for backward compatibility - - # Create sensors for each description - from .ble import BLEDeviceMetadata - metadata = BLEDeviceMetadata(device_metadata) - sensors = [] - for description in BLE_SENSOR_TYPES: - # Handle battery sensors based on device protocol - if description.key in ("battery_percentage", "battery_voltage"): - if protocol_type == "atc": - # ATC devices always have batteries - pass # Continue to create sensor - elif protocol_type == "open_display": - # OpenDisplay devices: only create battery sensors for battery/solar power - if metadata.power_mode not in (1, 3): # Not battery (1) or solar (3) - continue # Skip battery sensors - - sensor = OpenDisplayBLESensor( - hass=hass, - mac_address=mac_address, - name=name, - device_metadata=device_metadata, - entry=entry, - description=description, - ) - sensors.append(sensor) - - # Register the sensor in the sensors registry so callback can update it - entry_data.sensors[description.key] = sensor - - # Add the sensors - async_add_entities(sensors) - return - - # Traditional AP setup - hub = entry_data # For AP entries, entry_data is the Hub instance - - # Set up AP sensors - ap_sensors = [OpenDisplayAPSensor(hub, description) for description in AP_SENSOR_TYPES] - async_add_entities(ap_sensors) - - @callback - def async_add_tag_sensor(tag_mac: str) -> None: - """Add sensors for a new tag. - - Creates sensor entities for a newly discovered tag based on the - TAG_SENSOR_TYPES definitions. Called when a new tag is discovered - by the integration. - - Args: - tag_mac: MAC address of the newly discovered tag - """ - entities = [] - - tag_data = hub.get_tag_data(tag_mac) - has_battery = _tag_has_battery(tag_data) - - for description in TAG_SENSOR_TYPES: - if description.key in ("battery_percentage", "battery_voltage") and not has_battery: - continue - sensor = OpenDisplayTagSensor(hub, tag_mac, description) - entities.append(sensor) - - if not has_battery: - _remove_battery_sensors(hass, entry.entry_id, tag_mac) - - async_add_entities(entities) - - # Set up sensors for existing tags - for tag_mac in hub.tags: - async_add_tag_sensor(tag_mac) - - # Register callback for new tag discovery - entry.async_on_unload( - async_dispatcher_connect( - hass, - f"{DOMAIN}_tag_discovered", - async_add_tag_sensor - ) - ) - - -def get_capabilities(capabilities_value: int) -> list[str]: - """Convert a capabilities number into a list of capabilities. - - Translates the binary capabilities flags from the tag into a - human-readable list of capability names. Each bit in the value - represents a different capability. - - Capabilities include: - - - SUPPORTS_COMPRESSION: Tag supports compressed image data - - SUPPORTS_CUSTOM_LUTS: Tag supports custom display LUTs - - HAS_EXT_POWER: Tag has external power connection - - HAS_WAKE_BUTTON: Tag has physical wake button - - HAS_NFC: Tag has NFC capability - - NFC_WAKE: Tag can wake from NFC scan - - Args: - capabilities_value: Integer with capability flags - - Returns: - list[str]: List of capability string names - """ - capability_map = { - 0x02: "SUPPORTS_COMPRESSION", - 0x04: "SUPPORTS_CUSTOM_LUTS", - 0x08: "ALT_LUT_SIZE", - 0x10: "HAS_EXT_POWER", - 0x20: "HAS_WAKE_BUTTON", - 0x40: "HAS_NFC", - 0x80: "NFC_WAKE" - } - - capabilities = [] - for flag, name in capability_map.items(): - if capabilities_value & flag: - capabilities.append(name) - - return capabilities + return self.entity_description.value_fn(self.coordinator.data.advertisement) diff --git a/custom_components/opendisplay/services.py b/custom_components/opendisplay/services.py index db5b444..9bbf17d 100644 --- a/custom_components/opendisplay/services.py +++ b/custom_components/opendisplay/services.py @@ -1,439 +1,249 @@ -from __future__ import annotations - -import logging -from functools import wraps -from time import perf_counter -from typing import Final, Any, Callable - -from homeassistant.core import HomeAssistant, ServiceCall -from homeassistant.exceptions import ServiceValidationError, HomeAssistantError -from homeassistant.helpers import device_registry as dr -from homeassistant.helpers.dispatcher import async_dispatcher_send -from .coordinator import Hub -from .ble import BLEConnectionError, BLETimeoutError, BLEProtocolError, BLEDeviceMetadata -from .const import DOMAIN, SIGNAL_TAG_IMAGE_UPDATE -from .imagegen import ImageGen -from .tag_types import get_tag_types_manager -from .upload import ( - create_upload_queues, - DITHER_DEFAULT, - image_to_jpeg_bytes, - upload_to_ble_direct, - upload_to_ble_block, - upload_to_hub, +"""Service registration for the OpenDisplay integration.""" + +import asyncio +from collections.abc import Callable +import contextlib +from datetime import timedelta +from enum import IntEnum +import io +from typing import TYPE_CHECKING, Any + +import aiohttp +from opendisplay import ( + AuthenticationFailedError, + AuthenticationRequiredError, + DitherMode, + FitMode, + OpenDisplayDevice, + OpenDisplayError, + RefreshMode, + Rotation, ) -from .util import is_ble_entry, get_hub_from_hass, rgb_to_rgb332, int_to_hex_string, \ - is_ble_device, get_mac_from_entity_id - -_LOGGER: Final = logging.getLogger(__name__) - - - -async def async_setup_services(hass: HomeAssistant) -> None: - """ - Set up the OpenDisplay services. - Args: - hass: Home Assistant instance - """ - - # Create upload queues - ble_upload_queue, hub_upload_queue = create_upload_queues() - - async def get_device_ids_from_label_id(label_id: str) -> list[str]: - """Get device_ids for OpenDisplay devices with a specific label.""" - device_registry = dr.async_get(hass) - devices = dr.async_entries_for_label(device_registry, label_id) - - open_display_device_ids = [] - for device in devices: - for identifier in device.identifiers: - if identifier[0] == DOMAIN: - open_display_device_ids.append(device.id) - break - - return open_display_device_ids - - async def get_device_ids_from_area_id(area_id: str) -> list[str]: - """Get device_ids for all OpenDisplay devices in an area.""" - device_registry = dr.async_get(hass) - devices = dr.async_entries_for_area(device_registry, area_id) - open_display_device_ids = [] - for device in devices: - for identifier in device.identifiers: - if identifier[0] == DOMAIN: - open_display_device_ids.append(device.id) - break - return open_display_device_ids - - async def get_entity_id_from_device_id(device_id: str) -> str: - """Get the primary entity ID for an OpenDisplay device.""" - device_registry = dr.async_get(hass) - device = device_registry.async_get(device_id) - if not device: - raise ServiceValidationError( - translation_domain=DOMAIN, - translation_key="device_not_found", - translation_placeholders={"device_id": device_id}, - ) - if not device.identifiers: - raise ServiceValidationError( - translation_domain=DOMAIN, - translation_key="device_no_identifiers", - translation_placeholders={"device_id": device_id}, - ) +from PIL import Image as PILImage, ImageOps +import voluptuous as vol + +from homeassistant.components.bluetooth import async_ble_device_from_address +from homeassistant.components.http.auth import async_sign_path +from homeassistant.components.media_source import async_resolve_media +from homeassistant.config_entries import ConfigEntryState +from homeassistant.const import ATTR_DEVICE_ID +from homeassistant.core import HomeAssistant, ServiceCall, callback +from homeassistant.exceptions import HomeAssistantError, ServiceValidationError +from homeassistant.helpers import config_validation as cv, device_registry as dr +from homeassistant.helpers.aiohttp_client import async_get_clientsession +from homeassistant.helpers.device_registry import CONNECTION_BLUETOOTH +from homeassistant.helpers.network import get_url +from homeassistant.helpers.selector import MediaSelector, MediaSelectorConfig + +if TYPE_CHECKING: + from . import OpenDisplayConfigEntry + +from .const import CONF_ENCRYPTION_KEY, DOMAIN + +ATTR_IMAGE = "image" +ATTR_ROTATION = "rotation" +ATTR_DITHER_MODE = "dither_mode" +ATTR_REFRESH_MODE = "refresh_mode" +ATTR_FIT_MODE = "fit_mode" +ATTR_TONE_COMPRESSION = "tone_compression" + + +def _str_to_int_enum(enum_class: type[IntEnum]) -> Callable[[str], Any]: + """Convert a lowercase enum name string to an enum member.""" + members = {m.name.lower(): m for m in enum_class} + + def validate(value: str) -> IntEnum: + if (result := members.get(value)) is None: + raise vol.Invalid(f"Invalid value: {value}") + return result + + return validate + + +SCHEMA_UPLOAD_IMAGE = vol.Schema( + { + vol.Required(ATTR_DEVICE_ID): cv.string, + vol.Required(ATTR_IMAGE): MediaSelector( + MediaSelectorConfig(accept=["image/*"]) + ), + vol.Optional(ATTR_ROTATION, default=Rotation.ROTATE_0): vol.All( + vol.Coerce(int), vol.Coerce(Rotation) + ), + vol.Optional(ATTR_DITHER_MODE, default="burkes"): _str_to_int_enum(DitherMode), + vol.Optional(ATTR_REFRESH_MODE, default="full"): _str_to_int_enum(RefreshMode), + vol.Optional(ATTR_FIT_MODE, default="contain"): _str_to_int_enum(FitMode), + vol.Optional(ATTR_TONE_COMPRESSION): vol.All( + vol.Coerce(float), vol.Range(min=0.0, max=100.0) + ), + } +) + - domain_mac = next( - (identifier for identifier in device.identifiers if identifier[0] == DOMAIN), - None, +def _get_entry_for_device(call: ServiceCall) -> OpenDisplayConfigEntry: + """Return the config entry for the device targeted by a service call.""" + device_id: str = call.data[ATTR_DEVICE_ID] + device_registry = dr.async_get(call.hass) + + if (device := device_registry.async_get(device_id)) is None: + raise ServiceValidationError( + translation_domain=DOMAIN, + translation_key="invalid_device_id", + translation_placeholders={"device_id": device_id}, ) - if domain_mac is None: - raise ServiceValidationError( - translation_domain=DOMAIN, - translation_key="device_not_opendisplay", - translation_placeholders={"device_id": device_id}, - ) - identifier = domain_mac[1] - if identifier.startswith("ble_"): - mac_address = identifier[4:] - else: - mac_address = identifier - - return f"{DOMAIN}.{mac_address.lower()}" - - - def _build_led_pattern(service_data: dict[str, Any]) -> str: - """Build LED pattern hex string from service data.""" - mode = service_data.get("mode", "") - modebyte = "1" if mode == "flash" else "0" - brightness = service_data.get("brightness", 2) - modebyte = hex(((brightness - 1) << 4) + int(modebyte))[2:] - - def _color_segment(color_num: int) -> str: - default_delay = 0.0 if color_num == 3 else 0.1 - color = service_data.get(f"color{color_num}") - flash_speed = service_data.get(f"flashSpeed{color_num}", 0.2) - flash_count = service_data.get(f"flashCount{color_num}", 2) - delay = service_data.get(f"delay{color_num}", default_delay) - - if not isinstance(color, (list, tuple)) or len(color) != 3: - color = (0, 0, 0) - flash_speed = 0 - flash_count = 0 - - return ( - rgb_to_rgb332(color) - + hex(int(flash_speed * 10))[2:] - + hex(flash_count)[2:] - + int_to_hex_string(int(delay * 10)) - ) + mac_address = next( + (conn[1] for conn in device.connections if conn[0] == CONNECTION_BLUETOOTH), + None, + ) + if mac_address is None: + raise ServiceValidationError( + translation_domain=DOMAIN, + translation_key="invalid_device_id", + translation_placeholders={"device_id": device_id}, + ) - return ( - modebyte + - _color_segment(1) + - _color_segment(2) + - _color_segment(3) + - int_to_hex_string(service_data.get("repeats", 2) - 1) + - "00" + entry = call.hass.config_entries.async_entry_for_domain_unique_id( + DOMAIN, mac_address + ) + if entry is None or entry.state is not ConfigEntryState.LOADED: + raise ServiceValidationError( + translation_domain=DOMAIN, + translation_key="device_not_found", + translation_placeholders={"address": mac_address}, ) + return entry - def require_hub_online(func: Callable) -> Callable: - """Decorator to require the AP to be online before executing a service.""" - @wraps(func) - async def wrapper(service: ServiceCall, *args, **kwargs) -> None: - hub = get_hub_from_hass(hass) - if not hub.online: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="ap_offline", - ) - return await func(service, *args, hub=hub, **kwargs) - return wrapper - - def handle_targets(func: Callable) -> Callable: - """Decorator to handle device_id, label_id, and area_id targeting.""" - @wraps(func) - async def wrapper(service: ServiceCall, *args, **kwargs): - device_ids = service.data.get("device_id", []) - label_ids = service.data.get("label_id", []) - area_ids = service.data.get("area_id", []) - - # Normalize to lists - if isinstance(device_ids, str): - device_ids = [device_ids] - if isinstance(label_ids, str): - label_ids = [label_ids] - if isinstance(area_ids, str): - area_ids = [area_ids] - - # Expand labels - for label_id in label_ids: - expanded = await get_device_ids_from_label_id(label_id) - device_ids.extend(expanded) - - # Expand areas - for area_id in area_ids: - expanded = await get_device_ids_from_area_id(area_id) - device_ids.extend(expanded) - - # Remove duplicates while preserving order - seen = set() - unique_device_ids = [] - for device_id in device_ids: - if device_id not in seen: - seen.add(device_id) - unique_device_ids.append(device_id) - - if not unique_device_ids: - raise ServiceValidationError( - translation_domain=DOMAIN, - translation_key="no_targets_specified", - ) - - # Process each device - errors: list[tuple[str, str]] = [] - for device_id in unique_device_ids: - try: - entity_id = await get_entity_id_from_device_id(device_id) - await func(service, entity_id, *args, **kwargs) - except ServiceValidationError as err: - errors.append((device_id, str(err))) - - # Wait for all queued uploads to complete - # This is async/await so it doesn't block the HA event loop - try: - ble_errors = await ble_upload_queue.wait_for_current_batch() - hub_errors = await hub_upload_queue.wait_for_current_batch() - for ble_error in ble_errors: - errors.append((device_id, str(ble_error))) - for hub_error in hub_errors: - errors.append((device_id, str(hub_error))) - except (ServiceValidationError, HomeAssistantError) as err: - errors.append((device_id, str(err))) - - # If ANY errors occurred across all targets, raise them - if errors: - errors_str = "\n".join(f"{entity}: {message}" for entity, message in errors) - raise ServiceValidationError( - translation_domain=DOMAIN, - translation_key="multiple_errors", - translation_placeholders={"errors": errors_str}, - ) - return wrapper - - @handle_targets - async def drawcustom_service(service: ServiceCall, entity_id: str) -> None: - """Handle drawcustom service calls. - - Processes requests to generate and upload custom images to tags. - The service supports: - - - Multiple target devices - - Custom content with text, shapes, and images - - Background color and rotation - - Dithering options - - "Dry run" mode for testing - - Args: - service: Service call object with parameters and target devices - - Raises: - HomeAssistantError: If AP is offline or image generation fails - """ - device_errors = [] - try: - is_ble = is_ble_device(hass, entity_id) - - # For hub devices, ensure hub is online - hub = None - if not is_ble: - hub = get_hub_from_hass(hass) - if not hub.online: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="ap_offline", - ) - - # Generate image - generator = ImageGen(hass) - width, height, accent_color = await generator.get_tag_dimensions( - entity_id, is_ble=is_ble - ) - render_start = perf_counter() - image = await generator.generate_custom_image( - entity_id=entity_id, - service_data=service.data, - error_collector=device_errors, - width=width, - height=height, - accent_color=accent_color, - ) - render_duration = perf_counter() - render_start - - if device_errors: - errors_str = "\n".join(device_errors) - raise ServiceValidationError( - translation_domain=DOMAIN, - translation_key="invalid_payload", - translation_placeholders={"errors": errors_str}, - ) - - # Handle dry-run mode - if service.data.get("dry-run", False): - tag_mac = get_mac_from_entity_id(entity_id) - preview_start = perf_counter() - jpeg_bytes = await hass.async_add_executor_job( - image_to_jpeg_bytes, image, "maximum" - ) - preview_duration = perf_counter() - preview_start - async_dispatcher_send( - hass, - f"{SIGNAL_TAG_IMAGE_UPDATE}_{tag_mac}", - jpeg_bytes - ) - _LOGGER.info( - "drawcustom dry run completed for %s: render=%.3fs preview_encode=%.3fs", - entity_id, - render_duration, - preview_duration, - ) - return - - # Upload image - dither = int(service.data.get("dither", DITHER_DEFAULT)) - - refresh_type = int(service.data.get("refresh_type", 0)) - - if is_ble: - from .util import is_bluetooth_available - if not is_bluetooth_available(hass): - raise ServiceValidationError( - translation_domain=DOMAIN, - translation_key="ble_upload_bt_disabled", - translation_placeholders={"entity_id": entity_id}, - ) - - # Determine upload method - mac = get_mac_from_entity_id(entity_id) - - # Find device metadata - device_metadata = {} - for entry in hass.config_entries.async_entries(DOMAIN): - runtime_data = getattr(entry, 'runtime_data', None) - if runtime_data is not None and is_ble_entry(runtime_data): - if runtime_data.mac_address.upper() == mac: - device_metadata = runtime_data.device_metadata - break - - metadata = BLEDeviceMetadata(device_metadata) - upload_method = metadata.get_best_upload_method() - - if upload_method == "block": - await ble_upload_queue.add_to_queue(upload_to_ble_block, hass, entity_id, image, dither, render_duration) - else: - await ble_upload_queue.add_to_queue( - upload_to_ble_direct, - hass, - entity_id, - image, - metadata.supports_zip_compression, - dither, - refresh_type, - render_duration, - ) - else: - # Map refresh_type to AP's lut parameter - # 0→1 (full), 1→3 (fast), 2→2 (fast no-reds), 3→0 (no-repeats) - ap_lut_mapping = {0: 1, 1: 3, 2: 2, 3: 0} - ap_lut = ap_lut_mapping.get(refresh_type, 1) # Default to 1 (full) if invalid - await hub_upload_queue.add_to_queue( - upload_to_hub, hub, entity_id, image, dither, - service.data.get("ttl", 60), - service.data.get("preload_type", 0), - service.data.get("preload_lut", 0), - ap_lut, - render_duration, - ) - - except ServiceValidationError: - raise # User input errors - propagate unchanged - except (HomeAssistantError, BLEConnectionError, BLETimeoutError, BLEProtocolError): - raise # Operational errors - propagate unchanged - except Exception as err: - # Unexpected errors - wrap as operational error - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="error_processing_device", - translation_placeholders={"entity_id": entity_id, "error": str(err)} - ) from err +def _load_image(path: str) -> PILImage.Image: + """Load an image from disk and apply EXIF orientation.""" + image = PILImage.open(path) + image.load() + return ImageOps.exif_transpose(image) +def _load_image_from_bytes(data: bytes) -> PILImage.Image: + """Load an image from bytes and apply EXIF orientation.""" + image = PILImage.open(io.BytesIO(data)) + image.load() + return ImageOps.exif_transpose(image) - @require_hub_online - @handle_targets - async def setled_service(service: ServiceCall, entity_id: str, hub: Hub) -> None: - pattern = _build_led_pattern(service.data) - - await hub.set_led_pattern(entity_id, pattern) - - @require_hub_online - @handle_targets - async def clear_pending_service(service: ServiceCall, entity_id: str, hub: Hub) -> None: - """Clear pending updates for target devices.""" - await hub.send_tag_cmd(entity_id, "clear") - - @require_hub_online - @handle_targets - async def force_refresh_service(service: ServiceCall, entity_id: str, hub: Hub) -> None: - """Force refresh target devices.""" - await hub.send_tag_cmd(entity_id, "refresh") - - @require_hub_online - @handle_targets - async def reboot_tag_service(service: ServiceCall,entity_id: str, hub: Hub) -> None: - """Reboot target devices.""" - await hub.send_tag_cmd(entity_id, "reboot") - - @require_hub_online - @handle_targets - async def scan_channels_service(service: ServiceCall, entity_id: str, hub: Hub) -> None: - """Trigger channel scan on target devices.""" - await hub.send_tag_cmd(entity_id, "scan") - - @require_hub_online - async def reboot_ap_service(service: ServiceCall, hub: Hub) -> None: - """Reboot the Access Point.""" - await hub.reboot_ap() - - async def refresh_tag_types_service(service: ServiceCall) -> None: - """Force refresh tag types from GitHub.""" - manager = await get_tag_types_manager(hass) - manager._last_update = None # Force refresh by invalidating cache - - # Let exceptions propagate - ensure_types_loaded will raise HomeAssistantError if it fails - await manager.ensure_types_loaded() - - tag_types_len = len(manager.get_all_types()) - message = f"Successfully refreshed {tag_types_len} tag type definitions from GitHub" - - await hass.services.async_call( - "persistent_notification", - "create", - { - "title": "Tag Types Refresh", - "message": message, - "notification_id": "opendisplay_tag_types_refresh", - }, + +async def _async_download_image(hass: HomeAssistant, url: str) -> PILImage.Image: + """Download an image from a URL and return a PIL Image.""" + if not url.startswith(("http://", "https://")): + url = get_url(hass) + async_sign_path( + hass, url, timedelta(minutes=5), use_content_user=True + ) + session = async_get_clientsession(hass) + try: + async with session.get(url) as resp: + resp.raise_for_status() + data = await resp.read() + except aiohttp.ClientError as err: + raise HomeAssistantError( + translation_domain=DOMAIN, + translation_key="media_download_error", + translation_placeholders={"error": str(err)}, + ) from err + + return await hass.async_add_executor_job(_load_image_from_bytes, data) + + +async def _async_upload_image(call: ServiceCall) -> None: + """Handle the upload_image service call.""" + entry = _get_entry_for_device(call) + address = entry.unique_id + assert address is not None + + image_data: dict[str, Any] = call.data[ATTR_IMAGE] + rotation: Rotation = call.data[ATTR_ROTATION] + dither_mode: DitherMode = call.data[ATTR_DITHER_MODE] + refresh_mode: RefreshMode = call.data[ATTR_REFRESH_MODE] + fit_mode: FitMode = call.data[ATTR_FIT_MODE] + tone_compression_pct: float | None = call.data.get(ATTR_TONE_COMPRESSION) + tone_compression: float | str = ( + tone_compression_pct / 100.0 if tone_compression_pct is not None else "auto" + ) + + ble_device = async_ble_device_from_address(call.hass, address, connectable=True) + if ble_device is None: + raise HomeAssistantError( + translation_domain=DOMAIN, + translation_key="device_not_found", + translation_placeholders={"address": address}, + ) + + current = asyncio.current_task() + if (prev := entry.runtime_data.upload_task) is not None and not prev.done(): + prev.cancel() + # pylint: disable-next=home-assistant-action-swallowed-exception + with contextlib.suppress(asyncio.CancelledError): + await prev + entry.runtime_data.upload_task = current + + try: + media = await async_resolve_media( + call.hass, image_data["media_content_id"], None ) - # Register all services - hass.services.async_register(DOMAIN, "drawcustom", drawcustom_service) - hass.services.async_register(DOMAIN, "setled", setled_service) - hass.services.async_register(DOMAIN, "clear_pending", clear_pending_service) - hass.services.async_register(DOMAIN, "force_refresh", force_refresh_service) - hass.services.async_register(DOMAIN, "reboot_tag", reboot_tag_service) - hass.services.async_register(DOMAIN, "scan_channels", scan_channels_service) - hass.services.async_register(DOMAIN, "reboot_ap", reboot_ap_service) - hass.services.async_register(DOMAIN, "refresh_tag_types", refresh_tag_types_service) + if media.path is not None: + pil_image = await call.hass.async_add_executor_job( + _load_image, str(media.path) + ) + else: + pil_image = await _async_download_image(call.hass, media.url) + + raw_key = entry.data.get(CONF_ENCRYPTION_KEY) + if raw_key is not None and len(raw_key) != 32: + entry.async_start_reauth(call.hass) + raise HomeAssistantError( + translation_domain=DOMAIN, translation_key="authentication_error" + ) + try: + encryption_key = bytes.fromhex(raw_key) if raw_key is not None else None + except ValueError as err: + entry.async_start_reauth(call.hass) + raise HomeAssistantError( + translation_domain=DOMAIN, translation_key="authentication_error" + ) from err + + async with OpenDisplayDevice( + mac_address=address, + ble_device=ble_device, + config=entry.runtime_data.device_config, + encryption_key=encryption_key, + ) as device: + await device.upload_image( + pil_image, + refresh_mode=refresh_mode, + dither_mode=dither_mode, + tone=tone_compression, + fit=fit_mode, + rotate=rotation, + ) + except asyncio.CancelledError: + return + except (AuthenticationFailedError, AuthenticationRequiredError) as err: + entry.async_start_reauth(call.hass) + raise HomeAssistantError( + translation_domain=DOMAIN, translation_key="authentication_error" + ) from err + except OpenDisplayError as err: + raise HomeAssistantError( + translation_domain=DOMAIN, translation_key="upload_error" + ) from err + finally: + if entry.runtime_data.upload_task is current: + entry.runtime_data.upload_task = None + + +@callback +def async_setup_services(hass: HomeAssistant) -> None: + """Register OpenDisplay services.""" + hass.services.async_register( + DOMAIN, + "upload_image", + _async_upload_image, + schema=SCHEMA_UPLOAD_IMAGE, + ) diff --git a/custom_components/opendisplay/services.yaml b/custom_components/opendisplay/services.yaml index 092397c..856c942 100644 --- a/custom_components/opendisplay/services.yaml +++ b/custom_components/opendisplay/services.yaml @@ -1,296 +1,70 @@ -drawcustom: - name: Draw Custom Image - description: Draws a custom image on one or more E-Paper displays - target: +upload_image: fields: - payload: - name: Payload - description: Payload to draw, see documentation for examples + device_id: required: true - example: > - [{"type": "text", "value": "Hello World!", "x": 0, "y": 0, "size": 40}] selector: - object: - background: - name: Background color - description: Background color (black, white, accent, red, yellow) + device: + integration: opendisplay + image: required: true - example: white selector: - select: - options: - - "white" - - "black" - - "accent" - - "red" - - "yellow" - rotate: - name: Rotation - description: Rotation in degrees (0, 90, 180, 270) - required: true - default: 0 - selector: - number: - min: 0 - max: 270 - step: 90 - dither: - name: Dither - description: Dithering option to use - required: true - default: 2 - selector: - select: - options: - - label: "No dithering" - value: "0" - - label: "Burkes (best for photos)" - value: "1" - - label: "Ordered (best for halftone colors)" - value: "2" - ttl: - name: Time to live - description: > - How long the tag will sleep before checking in again (in seconds). - - Notes: - - The TTL applies only once after each image update - - Setting a very long TTL means you cannot update the tag again until that time has passed - required: true - default: 60 - selector: - number: - min: 0 - max: 86400 - unit_of_measurement: seconds - refresh_type: - name: Refresh type - description: > - E-paper display refresh mode. - - - Full: Best quality (~2s), full screen refresh. - - - Fast: Moderate quality (~1s), quick update. - - - Partial: Fastest (~0.3s), may show ghosting. - - - Partial2: Alternative partial mode. - - Note: ATC BLE tags do not support this parameter. - required: false - default: "0" - selector: - select: - options: - - label: "Full (best quality)" - value: "0" - - label: "Fast (moderate quality)" - value: "1" - - label: "Partial (fastest)" - value: "2" - - label: "Partial2 (alternative partial)" - value: "3" - dry-run: - name: Dry run - description: Generate image but don't send to device - required: true - default: false - selector: - boolean: - -setled: - name: Set LED Pattern - description: > - Sets the LED flash pattern; brightness controls flash on-time (0–15, higher = longer on-time); - missing color2/3 are skipped. - See https://github.com/OpenDisplay/OpenDisplay/wiki/Led-control for details. - target: - fields: - mode: - name: Mode - description: LED mode (off or flash) - required: true - default: flash - selector: - select: - options: - - "off" - - "flash" - brightness: - name: Brightness - description: LED flash on-time nibble (0–15). Higher = longer on-time; start low to save battery. - required: false - default: 1 - selector: - number: - min: 1 - max: 16 - step: 1 - mode: slider - repeats: - name: Repeats - description: Number of times to repeat the pattern - required: false - default: 2 - selector: - number: - min: 1 - max: 255 - step: 1 - mode: slider - color1: - name: Color 1 - description: First color in the pattern - required: false - default: [255, 0, 0] - selector: - color_rgb: - flashSpeed1: - name: Flash Speed 1 - description: Flash speed for first color (seconds) - required: false - default: 0.2 - selector: - number: - min: 0 - max: 1.5 - step: 0.1 - unit_of_measurement: "s" - mode: slider - flashCount1: - name: Flash Count 1 - description: Number of flashes for first color - required: false - default: 2 - selector: - number: - min: 0 - max: 15 - step: 1 - mode: slider - delay1: - name: Delay 1 - description: Delay after first color - required: false - default: 0.1 - selector: - number: - min: 0 - max: 25.5 - step: 0.1 - unit_of_measurement: "s" - mode: slider - color2: - name: Color 2 - description: Optional second color; omit to skip this group. - required: false - default: [0, 255, 0] - selector: - color_rgb: - flashSpeed2: - name: Flash Speed 2 - description: Flash speed for second color (seconds) - required: false - default: 0.2 - selector: - number: - min: 0 - max: 1.5 - step: 0.1 - unit_of_measurement: "s" - mode: slider - flashCount2: - name: Flash Count 2 - description: Number of flashes for second color (0 skips this color). - required: false - default: 2 - selector: - number: - min: 0 - max: 15 - step: 1 - mode: slider - delay2: - name: Delay 2 - description: Delay after second color - required: false - default: 0.1 - selector: - number: - min: 0 - max: 25.5 - step: 0.1 - unit_of_measurement: "s" - mode: slider - color3: - name: Color 3 - description: Optional third color; omit to skip this group. - required: false - default: [0, 0, 255] - selector: - color_rgb: - flashSpeed3: - name: Flash Speed 3 - description: Flash speed for third color (seconds) - required: false - default: 0.2 - selector: - number: - min: 0 - max: 1.5 - step: 0.1 - unit_of_measurement: "s" - mode: slider - flashCount3: - name: Flash Count 3 - description: Number of flashes for third color (0 skips this color). - required: false - default: 2 - selector: - number: - min: 0 - max: 15 - step: 1 - mode: slider - delay3: - name: Delay 3 - description: Delay after third color - required: false - default: 0 - selector: - number: - min: 0 - max: 25.5 - step: 0.1 - unit_of_measurement: "s" - mode: slider - -clear_pending: - name: Clear Pending - description: Clears the pending status for one or more ESL tags - target: - -force_refresh: - name: Force Refresh - description: Forces one or more ESL tags to refresh their display - target: - -reboot_tag: - name: Reboot Tag - description: Reboots one or more ESL tags - target: - -scan_channels: - name: Scan Channels - description: Makes one or more ESL tags scan for channels - target: - -reboot_ap: - name: Reboot AP - description: Reboots the AP - target: - -refresh_tag_types: - name: Refresh Tag Types - description: Force refresh of tag type definitions from GitHub - target: + media: + accept: + - image/* + additional_fields: + collapsed: true + fields: + rotation: + required: false + default: 0 + selector: + number: + min: 0 + max: 270 + step: 90 + mode: slider + dither_mode: + required: false + default: "burkes" + selector: + select: + translation_key: dither_mode + options: + - "none" + - "burkes" + - "ordered" + - "floyd_steinberg" + - "atkinson" + - "stucki" + - "sierra" + - "sierra_lite" + - "jarvis_judice_ninke" + refresh_mode: + required: false + default: "full" + selector: + select: + translation_key: refresh_mode + options: + - "full" + - "fast" + fit_mode: + required: false + default: "contain" + selector: + select: + translation_key: fit_mode + options: + - "stretch" + - "contain" + - "cover" + - "crop" + tone_compression: + required: false + selector: + number: + min: 0 + max: 100 + step: 1 + mode: slider + unit_of_measurement: "%" diff --git a/custom_components/opendisplay/strings.json b/custom_components/opendisplay/strings.json index 33e987b..0d3e8e9 100644 --- a/custom_components/opendisplay/strings.json +++ b/custom_components/opendisplay/strings.json @@ -1,378 +1,160 @@ { "config": { + "abort": { + "already_configured": "[%key:common::config_flow::abort::already_configured_device%]", + "already_in_progress": "[%key:common::config_flow::abort::already_in_progress%]", + "cannot_connect": "[%key:common::config_flow::error::cannot_connect%]", + "no_devices_found": "[%key:common::config_flow::abort::no_devices_found%]", + "reauth_successful": "[%key:common::config_flow::abort::reauth_successful%]", + "unknown": "[%key:common::config_flow::error::unknown%]" + }, + "error": { + "cannot_connect": "[%key:common::config_flow::error::cannot_connect%]", + "invalid_auth": "[%key:common::config_flow::error::invalid_auth%]", + "invalid_key_format": "The encryption key must be exactly 32 hexadecimal characters (0-9, a-f).", + "unknown": "[%key:common::config_flow::error::unknown%]" + }, + "flow_title": "{name}", "step": { "bluetooth_confirm": { - "title": "Set up OpenDisplay Device", - "description": "Set up **{name}**?\n\n**Details:**\n- Device Type: {device_type}\n- Address: {address}\n- Signal: {rssi} dBm{advertised_details}" + "description": "[%key:component::bluetooth::config::step::bluetooth_confirm::description%]" }, - "dhcp_confirm": { - "title": "Set up {hostname} ({ip})", - "description": "An OEPL access point was discovered on the network.\n\n**Device Details:**\n- Hostname: {hostname}\n- IP Address: {ip}\n- MAC Address: {mac}\n\nShould this access point be added to Home Assistant?" - }, - "reconfigure": { - "title": "Update Access Point", - "description": "Update the OEPL access point address.", + "encryption_key": { "data": { - "host": "Host or IP" + "encryption_key": "Encryption key" }, "data_description": { - "host": "Hostname or IP of the OEPL access point." - } + "encryption_key": "Enter the 32-character hexadecimal AES-128 encryption key for this device." + }, + "description": "{name} requires an encryption key to connect.", + "title": "Encryption required" }, - "user": { + "reauth_confirm": { "data": { - "host": "Host or IP" + "encryption_key": "[%key:component::opendisplay::config::step::encryption_key::data::encryption_key%]" }, "data_description": { - "host": "Hostname or IP of the OEPL access point. Do not include http/https." - } - } - }, - "error": { - "interrogation_failed": "Failed to connect to device and retrieve display information. Error: {error}. Retry or check device connectivity.", - "invalid_device_config": "Device returned invalid configuration data. Please reconfigure the device or update its firmware." - }, - "abort": { - "single_instance_allowed": "Only one OEPL hub can be configured. Multiple BLE devices are supported, but only one AP hub is allowed.", - "unsupported_protocol": "Unsupported BLE firmware protocol. Only ATC and OpenDisplay firmware are supported.", - "invalid_advertising_data": "Could not parse device advertising data. Please ensure the device is using compatible firmware.", - "no_reconfigure_ble": "BLE devices do not support reconfiguration. Remove and re-add the device if you need to change its settings.", - "cannot_connect": "Failed to connect to the discovered access point. Please check the device is online and reachable on the network." - } - }, - "options": { - "step": { - "init": { - "title": "Tag Management", - "description": "Select tags to blacklist. Blacklisted tags will be hidden and ignored.", + "encryption_key": "[%key:component::opendisplay::config::step::encryption_key::data_description::encryption_key%]" + }, + "description": "Authentication failed for {name}. Enter the correct encryption key, or leave blank if encryption has been disabled on the device.", + "title": "Re-authentication required" + }, + "user": { "data": { - "blacklisted_tags": "Blacklisted Tags", - "button_debounce": "Button Debounce Time (seconds)", - "nfc_debounce": "NFC Debounce Time (seconds)", - "custom_font_dirs": "Custom Font Directories" + "address": "[%key:common::config_flow::data::device%]" }, "data_description": { - "blacklisted_tags": "Tags to hide; blacklisted tags will not update or trigger services.", - "button_debounce": "Delay before another button press is accepted (seconds).", - "nfc_debounce": "Delay before another NFC tap is accepted (seconds).", - "custom_font_dirs": "Comma-separated directories containing additional fonts for generated images." - } + "address": "Select the Bluetooth device to set up." + }, + "description": "[%key:component::bluetooth::config::step::user::description%]" } - }, - "abort": { - "no_options_ble": "No configurable options are available for BLE devices. BLE devices are managed automatically and do not require additional configuration." } }, "entity": { - "switch": { - "preview": { - "name": "Preview Images on AP" - }, - "ble": { - "name": "Bluetooth LE" - }, - "nightlyreboot": { - "name": "Nightly Reboot" - }, - "showtimestamp": { - "name": "Show Timestamp" - } - }, - "text": { - "alias": { - "name": "Alias" - }, - "repo": { - "name": "Repository" - }, - "tag_alias": { - "name": "Alias" - } - }, - "select": { - "channel": { - "name": "Channel" - }, - "led": { - "name": "RGB LED brightness" - }, - "tft": { - "name": "TFT Brightness" - }, - "maxsleep": { - "name": "Maximum sleep" - }, - "lock": { - "name": "Lock tag inventory" - }, - "wifipower": { - "name": "WiFi Power" - }, - "language": { - "name": "Language" - }, - "discovery": { - "name": "Discovery method" - }, - "subghzchannel": { - "name": "Sub-GHz Channel" - }, - "sleeptime1": { - "name": "No updates between 1 (from)" - }, - "sleeptime2": { - "name": "No updates between 2 (to)" + "event": { + "button": { + "name": "Button {number}", + "state_attributes": { + "event_type": { + "state": { + "button_down": "Button down", + "button_up": "Button up" + } + } + } } }, "sensor": { - "ip": { - "name": "IP Address" - }, - "wifi_ssid": { - "name": "WiFi SSID" - }, - "record_count": { - "name": "Tag Count" - }, - "db_size": { - "name": "Database Size" - }, - "little_fs_free": { - "name": "LittleFS Free" - }, - "ap_state": { - "name": "State" - }, - "run_state": { - "name": "Run State" - }, - "wifi_rssi": { - "name": "WiFi RSSI" - }, - "heap": { - "name": "Free Heap" - }, - "sys_time": { - "name": "System Time" - }, - "uptime": { - "name": "Uptime" - }, - "low_battery_tag_count": { - "name": "Low Battery Tag Count" - }, - "timeout_tag_count": { - "name": "Timed out Tag Count" - }, - "ps_ram_free": { - "name": "PSRAM Free" - }, - "temperature": { - "name": "Temperature" - }, "battery_voltage": { - "name": "Battery Voltage" - }, - "battery_percentage": { - "name": "Battery Percentage" - }, - "last_seen": { - "name": "Last Seen" - }, - "next_update": { - "name": "Next Update" - }, - "next_checkin": { - "name": "Next Checkin" - }, - "lqi": { - "name": "Link Quality Index" - }, - "rssi": { - "name": "RSSI" - }, - "pending_updates": { - "name": "Pending Updates" - }, - "content_mode": { - "name": "Content Mode" - }, - "wakeup_reason": { - "name": "Wakeup Reason" - }, - "capabilities": { - "name": "Capabilities" - }, - "update_count": { - "name": "Update Count" - }, - "width": { - "name": "Width" - }, - "height": { - "name": "Height" - }, - "runtime": { - "name": "Runtime" - }, - "boot_count": { - "name": "Boot Count" - }, - "checkin_count": { - "name": "Checkin Count" - }, - "block_requests": { - "name": "Block Transfer Requests" + "name": "Battery voltage" } + } + }, + "exceptions": { + "authentication_error": { + "message": "Authentication failed. Please update the encryption key." }, - "image": { - "content": { - "name": "Content" - } + "device_not_found": { + "message": "Could not find Bluetooth device with address `{address}`." }, - "light": { - "led": { - "name": "LED" + "invalid_device_id": { + "message": "Device `{device_id}` is not a valid OpenDisplay device." + }, + "media_download_error": { + "message": "Failed to download media: {error}" + }, + "upload_error": { + "message": "Failed to upload image to the display." + } + }, + "selector": { + "dither_mode": { + "options": { + "atkinson": "Atkinson", + "burkes": "Burkes", + "floyd_steinberg": "Floyd-Steinberg", + "jarvis_judice_ninke": "Jarvis, Judice & Ninke", + "none": "None", + "ordered": "Ordered", + "sierra": "Sierra", + "sierra_lite": "Sierra Lite", + "stucki": "Stucki" } }, - "button": { - "clear_pending": { - "name": "Clear Pending Updates" - }, - "force_refresh": { - "name": "Force Refresh Content" - }, - "reboot_tag": { - "name": "Reboot Tag" - }, - "scan_channels": { - "name": "Scan Channels" - }, - "deep_sleep": { - "name": "Deep Sleep" - }, - "reboot_ap": { - "name": "Reboot AP" - }, - "refresh_tag_types": { - "name": "Refresh Tag Types" - }, - "refresh_config": { - "name": "Refresh Configuration" + "fit_mode": { + "options": { + "contain": "Contain", + "cover": "Cover", + "crop": "Crop", + "stretch": "Stretch" } }, - "update": { - "firmware": { - "name": "Firmware" - }, - "opendisplay_ble_firmware": { - "name": "OpenDisplay Firmware" + "refresh_mode": { + "options": { + "fast": "Fast", + "full": "Full" } } }, - "issues": { - "camera_migration_needed": { - "title": "Camera entities migrated", - "description": "OpenDisplay migrated {count} camera entities to image entities. Update your dashboards and automations to use the new image entities. Removed entities: {entities}" - } - }, - "preview_features": { - "opendisplay_ble_updates": { - "name": "OpenDisplay firmware updates", - "description": "Shows a firmware update entity for OpenDisplay BLE tags that compares the installed firmware to the latest OpenDisplay_BLE GitHub release. Install is not available yet." + "services": { + "upload_image": { + "description": "Uploads an image to an OpenDisplay device.", + "fields": { + "device_id": { + "description": "The OpenDisplay device to upload the image to.", + "name": "Device" + }, + "dither_mode": { + "description": "The dithering algorithm to use for converting the image to the display's color palette.", + "name": "Dither mode" + }, + "fit_mode": { + "description": "How the image is fitted to the display dimensions.", + "name": "Fit mode" + }, + "image": { + "description": "The image to upload to the display.", + "name": "Image" + }, + "refresh_mode": { + "description": "The display refresh mode. Full refresh clears ghosting but is slower. Fast refresh is not supported on all displays.", + "name": "Refresh mode" + }, + "rotation": { + "description": "The rotation angle in degrees, applied clockwise.", + "name": "Rotation" + }, + "tone_compression": { + "description": "Dynamic range compression strength. Leave empty for automatic.", + "name": "Tone compression" + } + }, + "name": "Upload image", + "sections": { + "additional_fields": { + "name": "Additional options" + } + } } - }, - "exceptions": { - "ble_device_not_detected": { "message": "BLE device {name} ({mac_address}) not detected in Bluetooth range." }, - "ap_cannot_connect": { "message": "Cannot connect to AP at {host}: {error}" }, - "ap_failed_load_tags": { "message": "Failed to load tags from AP at {host}: {error}" }, - "ap_timeout_action": { "message": "Timeout during {action}." }, - "ap_network_error_action": { "message": "Network error during {action}: {error}" }, - "ap_failed_action_http": { "message": "Failed to {action}: HTTP {status_code} - {response_text}" }, - "device_not_found": { "message": "Device {device_id} not found." }, - "device_no_identifiers": { "message": "No identifiers found for device {device_id}." }, - "device_not_opendisplay": { "message": "Device {device_id} is not an OpenDisplay device." }, - "no_targets_specified": { "message": "No target devices specified. Please provide device_id, label_id, or area_id." }, - "ap_offline": { "message": "OEPL AP is offline. Please check your network connection and AP status." }, - "error_processing_device": { "message": "Unexpected error processing device {entity_id}: {error}" }, - "ble_upload_bt_disabled": { "message": "Cannot upload to BLE device {entity_id}: Bluetooth integration is disabled or no scanners available." }, - "ble_no_metadata": { "message": "No metadata found for BLE device {entity_id}." }, - "ble_upload_failed": { "message": "BLE image upload failed for {entity_id}." }, - "ble_direct_write_failed": { "message": "BLE direct write upload failed for {entity_id}." }, - "ble_direct_write_not_supported": { "message": "Direct write is only supported for OpenDisplay devices, but {entity_id} appears to be an ATC device." }, - "image_upload_status": { "message": "Image upload failed for {entity_id} with status code: {status_code}." }, - "image_upload_timeout": { "message": "Image upload timed out for {entity_id} after {attempts} attempts." }, - "image_upload_network": { "message": "Network error uploading image for {entity_id}: {error}." }, - "image_upload_failed": { "message": "Failed to upload image for {entity_id}: {error}." }, - "unexpected_upload": { "message": "Unexpected upload error for {entity_id}: {error}." }, - "unexpected_ble_upload": { "message": "Unexpected error during BLE upload to {entity_id}: {error}." }, - "unexpected_ble_direct_write": { "message": "Unexpected error during BLE direct write to {entity_id}: {error}." }, - "ap_tag_alias_update_failed": { "message": "Failed to update tag alias for {tag_mac}: AP returned HTTP {status_code} - {response_text}." }, - "ap_tag_alias_timeout": { "message": "Timeout updating tag alias for {tag_mac}. Please check network connectivity to the AP." }, - "ap_tag_alias_network": { "message": "Network error updating tag alias for {tag_mac}: {error}." }, - "ap_tag_alias_unexpected": { "message": "Unexpected error updating tag alias for {tag_mac}: {error}." }, - "ap_offline_core": { "message": "OEPL AP is offline." }, - "invalid_entity_id_format": { "message": "Invalid entity ID format: {entity_id}." }, - "tag_not_registered": { "message": "Tag {tag_mac} is not registered with the AP. If the tag has checked in, try restarting Home Assistant." }, - "tag_blacklisted": { "message": "Tag {tag_mac} is currently blacklisted. Remove it from the blacklist in integration options to use it." }, - "tag_inconsistent": { "message": "Inconsistent state: Tag {tag_mac} is known but has no data. Please report this as a bug." }, - "tag_no_hw_type": { "message": "No hardware type found for tag {tag_mac}. Please wait for the tag to complete its next check-in." }, - "tag_unknown_hw_type": { "message": "Unknown hardware type {hw_type} for tag {tag_mac}. Try refreshing tag types from the integration options." }, - "invalid_canvas_dimensions": { "message": "Invalid canvas dimensions {width}x{height} for {entity_id}. Device metadata may be corrupt or missing. Try reloading the integration or re-adding the device." }, - "ble_tag_info_unexpected": { "message": "Unexpected error getting tag type for {entity_id}: {error}." }, - "ble_tag_info_unexpected_ble": { "message": "Unexpected error getting BLE tag type for {entity_id}: {error}." }, - "qr_generation_failed": { "message": "Failed to generate QR code: {error}." }, - "image_entity_not_found": { "message": "Image entity {entity_id} not found." }, - "image_entity_no_url": { "message": "No image URL found for entity {entity_id}." }, - "image_download_failed": { "message": "Failed to download image: HTTP {status_code}." }, - "image_data_uri_invalid": { "message": "Invalid data URI: {error}." }, - "image_process_failed": { "message": "Failed to process image: {error}." }, - "font_load_failed": { "message": "Could not load any font. This indicates a problem with the integration installation." }, - "plot_duration_invalid": { "message": "duration must be greater than 0 seconds." }, - "plot_no_data": { "message": "No recorded data found for {entity_id}." }, - "plot_no_valid_points": { "message": "No valid data points found." }, - "plot_yaxis_invalid": { "message": "yaxis.tick_every must be greater than 0." }, - "plot_xlegend_invalid": { "message": "xlegend.interval must be greater than 0." }, - "plot_draw_failed": { "message": "Failed to draw plot: {error}." }, - "plot_bar_invalid": { "message": "Invalid bar data for diagram: {error}." }, - "mdi_metadata_failed": { "message": "Failed to load MDI metadata: {error}." }, - "icon_name_invalid": { "message": "Invalid icon name: {icon_name}." }, - "icon_draw_failed": { "message": "Failed to draw icon: {error}." }, - "icon_draw_failed_named": { "message": "Failed to draw icon {icon_name}: {error}." }, - "led_on_failed": { "message": "Failed to turn on LED." }, - "led_on_error": { "message": "Error turning on LED: {error}." }, - "led_off_failed": { "message": "Failed to turn off LED." }, - "led_off_error": { "message": "Error turning off LED: {error}." }, - "tagtypes_load_failed": { "message": "Failed to load tag type definitions. No stored data available. Check network connectivity or GitHub access." }, - "tagtypes_refresh_failed": { "message": "Failed to refresh tag type definitions. Check network connectivity or GitHub access." }, - "no_hub_configured": { "message": "No AP hub configured. Only BLE devices found." }, - "ble_slots_unavailable": { "message": "No available Bluetooth connection slots for {mac_address}. Add more ESPHome Bluetooth proxies near this device or wait for existing connections to free up. Details: {error}." }, - "ble_device_not_found": { "message": "Device {mac_address} not found." }, - "ble_characteristic_not_resolved": { "message": "Could not resolve characteristic for service {service_uuid}." }, - "ble_connection_failed": { "message": "Failed to connect to {mac_address}: {error}." }, - "ble_write_char_missing": { "message": "Write characteristic not available." }, - "ble_timeout": { "message": "No response received from {mac_address} within {timeout}s." }, - "ble_operation_failed": { "message": "BLE operation {operation} failed after {attempts} attempts: {error}." }, - "ble_operation_retry": { "message": "BLE operation {operation} failed on attempt {attempt}: {error}. Retrying in {delay}s..." }, - "ble_protocol_invalid_response_length": { "message": "Invalid display info response length: {length} (expected at least {expected_length})." }, - "ble_protocol_invalid_command_id": { "message": "Invalid command ID in response: {command_id}." }, - "ble_protocol_payload_too_short": { "message": "Display info payload too short." }, - "opendisplay_config_chunk_short": { "message": "Chunk data too short: {length} bytes." }, - "opendisplay_expected_chunk_zero": { "message": "Expected chunk 0, got chunk {chunk_num}." }, - "opendisplay_config_too_short": { "message": "Config data too short: {length} bytes (need at least {minimum})." }, - "opendisplay_fw_response_short": { "message": "Firmware version response too short: {length} bytes." }, - "opendisplay_fw_version_format": { "message": "Firmware version SHA length {sha_length} exceeds payload ({payload_length} bytes)." }, - "tlv_section_too_short": { "message": "{section} requires {expected} bytes, got {actual}." }, - "tlv_data_too_short": { "message": "Config data too short: {length} bytes (minimum 2)." }, - "tlv_crc_mismatch": { "message": "CRC32 mismatch: expected {expected_crc32}, got {actual_crc32}." }, - "tlv_unknown_packet": { "message": "Unknown packet ID: {packet_id} at offset {offset}." }, - "tlv_packet_too_short": { "message": "Packet ID {packet_id} requires {packet_size} bytes, but only {remaining_bytes} bytes remaining at offset {offset}." }, - "tlv_packet_parse_failed": { "message": "Failed to parse packet type {packet_id} at offset {offset}: {error}." }, - "tlv_no_display_config": { "message": "No display configuration found in device config." }, - "tlv_invalid_dimensions": { "message": "Invalid pixel dimensions: {width}x{height}." }, - "config_flow_invalid_config": { "message": "Device returned invalid configuration data." }, - "config_flow_missing_config": { "message": "Device returned no configuration data." }, - "refresh_config_failed": { "message": "Failed to refresh configuration: {error}." }, - "multiple_errors": { "message": "Multiple errors occurred:\n{errors}" } } } diff --git a/custom_components/opendisplay/switch.py b/custom_components/opendisplay/switch.py deleted file mode 100644 index 52abc53..0000000 --- a/custom_components/opendisplay/switch.py +++ /dev/null @@ -1,142 +0,0 @@ -from __future__ import annotations - -PARALLEL_UPDATES = 1 - -from dataclasses import dataclass - -from homeassistant.components.switch import SwitchEntity, SwitchDeviceClass, SwitchEntityDescription -from homeassistant.core import HomeAssistant, callback -from homeassistant.helpers.dispatcher import async_dispatcher_connect -from homeassistant.helpers.entity import EntityCategory -from homeassistant.helpers.entity_platform import AddEntitiesCallback - -from .const import DOMAIN -from .entity import OpenDisplayAPEntity -from .runtime_data import OpenDisplayConfigEntry - -import logging - -_LOGGER = logging.getLogger(__name__) - -@dataclass(frozen=True, kw_only=True) -class OpenDisplaySwitchDescription(SwitchEntityDescription): - """Switch description with explicit default enable flag.""" - - description: str - entity_registry_enabled_default: bool = False - - -# Define switch configurations -SWITCH_ENTITIES: tuple[OpenDisplaySwitchDescription, ...] = ( - OpenDisplaySwitchDescription( - key="preview", - translation_key="preview", - name="Preview Images", - description="Enable/disable preview images on the AP", - entity_registry_enabled_default=True, - ), - OpenDisplaySwitchDescription( - key="ble", - translation_key="ble", - name="Bluetooth", - description="Enable/disable Bluetooth", - entity_registry_enabled_default=True, - ), - OpenDisplaySwitchDescription( - key="nightlyreboot", - translation_key="nightlyreboot", - name="Nightly Reboot", - description="Enable/disable automatic nightly reboot of the AP", - entity_registry_enabled_default=True, - ), - OpenDisplaySwitchDescription( - key="showtimestamp", - translation_key="showtimestamp", - name="Show Timestamp", - description="Enable/disable showing timestamps on ESLs", - entity_registry_enabled_default=True, - ), -) -"""Configuration for all switch entities to create for the AP.""" - - -class APConfigSwitch(OpenDisplayAPEntity, SwitchEntity): - """Switch entity for AP configuration.""" - - entity_description: OpenDisplaySwitchDescription - - def __init__(self, hub, description: OpenDisplaySwitchDescription) -> None: - """Initialize the switch entity.""" - super().__init__(hub) - self.entity_description = description - self._key = description.key - self._attr_unique_id = f"{hub.entry.entry_id}_{description.key}" - self._attr_entity_category = EntityCategory.CONFIG - self._attr_translation_key = description.translation_key or description.key - self._description = description.description - self._attr_device_class = SwitchDeviceClass.SWITCH - self._attr_entity_registry_enabled_default = description.entity_registry_enabled_default - - @property - def available(self) -> bool: - """Return if entity is available.""" - return self._hub.online and self._key in self._hub.ap_config - - @property - def is_on(self) -> bool | None: - """Return True if entity is on.""" - if not self.available: - return None - return bool(int(self._hub.ap_config.get(self._key, 0))) - - async def async_turn_on(self, **kwargs) -> None: - """Turn the entity on.""" - await self._hub.set_ap_config_item(self._key, 1) - - async def async_turn_off(self, **kwargs) -> None: - """Turn the entity off.""" - await self._hub.set_ap_config_item(self._key, 0) - - async def async_added_to_hass(self) -> None: - """Register callbacks when entity is added to Home Assistant.""" - await super().async_added_to_hass() - self.async_on_remove( - async_dispatcher_connect( - self.hass, - f"{DOMAIN}_ap_config_update", - self._handle_update, - ) - ) - - -async def async_setup_entry(hass: HomeAssistant, entry: OpenDisplayConfigEntry, - async_add_entities: AddEntitiesCallback) -> None: - """Set up switch entities for AP configuration. - - Creates switch entities for all defined AP configuration options - based on the SWITCH_ENTITIES definition list. - - For each defined switch: - - 1. Creates an APConfigSwitch instance with appropriate configuration - 2. Ensures the AP configuration is loaded before creating entities - 3. Adds all created entities to Home Assistant - - Args: - hass: Home Assistant instance - entry: Configuration entry - async_add_entities: Callback to register new entities - """ - hub = entry.runtime_data - - # Wait for initial AP config to be loaded - if not hub.ap_config: - await hub.async_update_ap_config() - - entities = [] - - # Create switch entities from configuration - for description in SWITCH_ENTITIES: - entities.append(APConfigSwitch(hub, description)) - - async_add_entities(entities) diff --git a/custom_components/opendisplay/tag_types.py b/custom_components/opendisplay/tag_types.py deleted file mode 100644 index 25f4776..0000000 --- a/custom_components/opendisplay/tag_types.py +++ /dev/null @@ -1,649 +0,0 @@ -from __future__ import annotations - -import os - -import aiohttp -import asyncio -import json -import logging -from datetime import datetime, timedelta -from typing import Any, Dict, Optional, Tuple - -from homeassistant.core import HomeAssistant -from homeassistant.exceptions import HomeAssistantError -from homeassistant.helpers import storage -from .const import DOMAIN, FALLBACK_TAG_DEFINITIONS - -_LOGGER = logging.getLogger(__name__) - -GITHUB_API_URL = "https://api.github.com/repos/OpenEPaperLink/OpenEPaperLink/contents/resources/tagtypes" -GITHUB_RAW_URL = "https://raw.githubusercontent.com/OpenEPaperLink/OpenEPaperLink/master/resources/tagtypes" -CACHE_DURATION = timedelta(hours=48) # Cache tag definitions for 48 hours -STORAGE_VERSION = 1 -STORAGE_KEY = "opendisplay_tagtypes" -LEGACY_STORAGE_KEY = "open_display_tagtypes" -LEGACY_TAG_TYPES_FILE = "open_display_tagtypes.json" - - -class TagType: - """Represents a specific tag hardware type and its capabilities. - - Encapsulates all the hardware-specific properties of a tag model, including: - - - Display dimensions and color capabilities - - Buffer format and rotation settings - - LUT (Look-Up Table) configuration - - Content type compatibility - - This information is used for proper image generation and rendering - to ensure content displays correctly on different tag models. - - Attributes: - type_id: Numeric identifier for the tag type - version: Format version of the tag type definition - name: Human-readable name of the tag model - width: Display width in pixels - height: Display height in pixels - rotatebuffer: Buffer rotation setting (0=none, 1=90°, 2=180°, 3=270°) - bpp: Bits per pixel (color depth) - color_table: Mapping of color names to RGB values - short_lut: Short LUT configuration - options: Additional tag options - content_ids: Compatible content IDs - template: Template configuration - use_template: Template usage settings - zlib_compression: Compression settings - """ - - def __init__(self, type_id: int, data: dict): - """Initialize a tag type from type ID and properties. - - Creates a TagType instance by mapping properties from the - provided data dictionary to class attributes, with defaults - for missing properties. - - Args: - type_id: Numeric identifier for this tag type - data: Dictionary containing tag properties from GitHub or storage - """ - self.type_id = type_id - self.version = data.get('version', 1) - self.name = data.get('name', f"Unknown Type {type_id}") - self.width = data.get('width', 296) - self.height = data.get('height', 128) - self.rotatebuffer = data.get('rotatebuffer', 0) - self.bpp = data.get('bpp', 2) - self.color_table = data.get('colortable', { - 'white': [255, 255, 255], - 'black': [0, 0, 0], - 'red': [255, 0, 0], - }) - self.short_lut = data.get('shortlut', 2) - self.options = data.get('options', []) - self.content_ids = data.get('contentids', []) - self.template = data.get('template', {}) - self.use_template = data.get('usetemplate', None) - self.zlib_compression = data.get('zlib_compression', None) - self._raw_data = data - - def to_dict(self) -> dict: - """Convert TagType instance to a serializable dictionary. - - Creates a dictionary representation of the tag type suitable for - storage. This is used when saving to persistent storage. - - Returns: - dict: Dictionary containing all tag type properties - """ - return { - 'version': self.version, - 'name': self.name, - 'width': self.width, - 'height': self.height, - 'rotatebuffer': self.rotatebuffer, - 'bpp': self.bpp, - 'colortable': self.color_table, - 'shortlut': self.short_lut, - 'options': list(self.options), - 'contentids': list(self.content_ids), - 'template': self.template, - 'usetemplate': self.use_template, - 'zlib_compression': self.zlib_compression, - } - - @classmethod - def from_dict(cls, type_id: int, data: dict) -> TagType: - """Create TagType from stored dictionary. - - Factory method to reconstruct a TagType instance from a previously - serialized dictionary when loaded from persistent storage. - - Args: - type_id: Numeric identifier for this tag type - data: Dictionary containing serialized tag type properties - - Returns: - TagType: Reconstructed tag type instance - """ - raw_data = { - 'version': data.get('version', 1), - 'name': data.get('name'), - 'width': data.get('width'), - 'height': data.get('height'), - 'rotatebuffer': data.get('rotatebuffer'), - 'bpp': data.get('bpp'), - 'shortlut': data.get('short_lut', data.get('shortlut')), - 'colortable': data.get('colortable'), - 'options': data.get('options', []), - 'contentids': data.get('contentids', data.get('content_ids', [])), - 'template': data.get('template', {}), - 'usetemplate': data.get('usetemplate'), - 'zlib_compression': data.get('zlib_compression', None), - } - return cls(type_id, raw_data) - - def get(self, attr: str, default: Any = None) -> Any: - """Get attribute value, supporting dict-like access. - - Provides dictionary-style access to tag type attributes, - with a default value if the attribute doesn't exist. - - Args: - attr: Name of the attribute to retrieve - default: Value to return if attribute doesn't exist - - Returns: - Any: The attribute value or default if not found - """ - return getattr(self, attr, default) - - -class TagTypesManager: - """Manages tag type definitions fetched from GitHub. - - Handles loading, caching, and refreshing tag type definitions from - the OpenDisplay GitHub repository. Provides local storage to - avoid frequent network requests and fallback definitions for - when GitHub is unreachable. - - The manager is implemented as a quasi-singleton through the - get_tag_types_manager function to ensure consistent state - across the integration. - """ - - def __init__(self, hass: HomeAssistant) -> None: - """Initialize the tag types manager. - - Sets up the manager with empty state and configuration paths - derived from the Home Assistant instance. - - Args: - hass: Home Assistant instance for storage access - """ - self._hass = hass - self._tag_types: Dict[int, TagType] = {} - self._last_update: Optional[datetime] = None - self._lock = asyncio.Lock() - self._legacy_storage_file = self._hass.config.path(LEGACY_TAG_TYPES_FILE) - self._store = storage.Store( - hass, - version=STORAGE_VERSION, - key=STORAGE_KEY, - ) - self._legacy_store = storage.Store( - hass, - version=STORAGE_VERSION, - key=LEGACY_STORAGE_KEY, - ) - _LOGGER.debug("TagTypesManager instance created") - - async def load_stored_data(self) -> None: - """Load stored tag type definitions from disk. - - Attempts to load previously cached tag type definitions from the - Home Assistant storage helper. If valid data is found, it's used to - populate the manager's state. Otherwise, a fresh fetch from GitHub - is initiated and the legacy file in the config directory is removed. - - This helps reduce network requests and provides offline operation capability. - """ - stored_data: dict[str, Any] | None = None - try: - stored_data = await self._store.async_load() - except Exception as err: # pragma: no cover - defensive - _LOGGER.error("Error loading tag types from storage: %s", err, exc_info=True) - - if stored_data: - if stored_data.get("version") == STORAGE_VERSION: - await self._load_from_payload(stored_data) - return - _LOGGER.warning("Stored tag types version mismatch, refetching fresh definitions") - - if not stored_data: - legacy_data: dict[str, Any] | None = None - try: - legacy_data = await self._legacy_store.async_load() - except Exception as err: # pragma: no cover - defensive - _LOGGER.error("Error loading legacy tag types from storage: %s", err, exc_info=True) - - if legacy_data and legacy_data.get("version") == STORAGE_VERSION: - await self._load_from_payload(legacy_data) - await self._save_to_store() - try: - await storage.async_remove_store(self._hass, LEGACY_STORAGE_KEY) - except Exception as err: # pragma: no cover - defensive - _LOGGER.warning("Failed to remove legacy tag types storage: %s", err) - return - - fetch_success = await self._fetch_tag_types() - if fetch_success: - await self._cleanup_legacy_file() - else: - # If fetch failed and we have no types, load fallback definitions - if not self._tag_types: - _LOGGER.warning( - "Failed to fetch tag types from GitHub and no stored data available. " - "Loading fallback definitions. Tag types will be refreshed on next integration reload." - ) - self._load_fallback_types() - await self._cleanup_legacy_file() - - async def _save_to_store(self) -> None: - """Persist tag types using Home Assistant storage helper.""" - if not self._last_update: - self._last_update = datetime.now() - - data = { - "version": STORAGE_VERSION, - "last_update": self._last_update.isoformat(), - "tag_types": { - str(type_id): tag_type.to_dict() - for type_id, tag_type in self._tag_types.items() - }, - } - - try: - await self._store.async_save(data) - except Exception as err: # pragma: no cover - storage helper handles atomicity - _LOGGER.error("Error saving tag types to storage: %s", err) - - async def _load_from_payload(self, stored_data: dict[str, Any]) -> None: - """Populate tag types from stored payload.""" - try: - last_update = stored_data.get("last_update") - self._last_update = ( - datetime.fromisoformat(last_update) if last_update else datetime.now() - ) - except (TypeError, ValueError): - self._last_update = datetime.now() - - self._tag_types = {} - for type_id_str, type_data in stored_data.get("tag_types", {}).items(): - try: - type_id = int(type_id_str) - self._tag_types[type_id] = TagType.from_dict(type_id, type_data) - _LOGGER.debug( - "Loaded tag type %d: %s", type_id, self._tag_types[type_id].name - ) - except Exception as err: # pragma: no cover - defensive - _LOGGER.error("Error loading tag type %s: %s", type_id_str, err) - - _LOGGER.info("Loaded %d tag types from storage", len(self._tag_types)) - - async def _cleanup_legacy_file(self) -> None: - """Remove legacy tag types file from config directory.""" - - def _remove() -> bool: - if os.path.exists(self._legacy_storage_file): - os.remove(self._legacy_storage_file) - return True - return False - - try: - removed = await self._hass.async_add_executor_job(_remove) - if removed: - _LOGGER.info("Migrated tag types to Home Assistant storage; legacy file removed") - except OSError as err: - _LOGGER.error("Error removing legacy tag types file: %s", err) - - async def ensure_types_loaded(self) -> None: - """Ensure tag types are loaded and not too old. - - Checks if tag types are already loaded and recent enough. - If not loaded or older than CACHE_DURATION, initiates a refresh from GitHub. - - This is the primary method that should be called before accessing - tag type information to ensure data availability. - - If tag types cannot be loaded from GitHub or storage, fallback - definitions will be used to ensure basic functionality. - """ - async with self._lock: - if not self._tag_types: - await self.load_stored_data() - - # After load_stored_data, we should always have types (either from storage, - # GitHub, or fallback). If not, something is seriously wrong. - if not self._tag_types: - _LOGGER.error( - "Critical error: No tag types available after loading. " - "This should not happen as fallback types should be loaded." - ) - # Load fallback as last resort - self._load_fallback_types() - - # If the cache is expired, attempt refresh - if not self._last_update or datetime.now() - self._last_update > CACHE_DURATION: - _LOGGER.debug("Tag types cache expired, attempting refresh") - fetch_success = await self._fetch_tag_types() - - # If refresh failed, log a warning but continue with existing types - if not fetch_success: - _LOGGER.warning( - "Failed to refresh tag types from GitHub. Using cached or fallback definitions." - ) - - async def _fetch_tag_types(self) -> bool: - """Fetch tag type definitions from GitHub. - - Retrieves tag type definitions from the OpenDisplay GitHub repository: - - 1. Queries the GitHub API to list available definition files - 2. Downloads each file and parses as JSON - 3. Validates the definition contains required fields - 4. Creates TagType instances from valid definitions - - If fetching fails and no existing definitions are available, - falls back to built-in basic definitions. - """ - try: - _LOGGER.debug("Fetching tag type definitions from GitHub: %s", GITHUB_API_URL) - async with aiohttp.ClientSession() as session: - # First get the directory listing from GitHub API - headers = {"Accept": "application/vnd.github.v3+json"} - async with session.get(GITHUB_API_URL, headers=headers) as response: - if response.status != 200: - _LOGGER.error( - "GitHub API request failed with status %d for URL: %s", - response.status, - GITHUB_API_URL - ) - raise Exception(f"GitHub API returned status {response.status}") - - directory_contents = await response.json() - - # Filter for .json files and extract type IDs - type_files = [] - for item in directory_contents: - if item["name"].endswith(".json"): - # Try to extract type ID from filename - try: - base_name = item["name"][:-5] # Remove .json extension - try: - type_id = int(base_name, 16) - _LOGGER.debug(f"Parsed hex type ID {base_name} -> {type_id}") - type_files.append((type_id, item["download_url"])) - continue - except ValueError: - pass - - # If not hex, try decimal - try: - type_id = int(base_name) - _LOGGER.debug(f"Parsed decimal type ID {base_name} -> {type_id}") - type_files.append((type_id, item["download_url"])) - continue - except ValueError: - pass - _LOGGER.warning(f"Could not parse type ID from filename: {item['name']}") - - except Exception as e: - _LOGGER.warning(f"Error processing filename {item['name']}: {str(e)}") - - # Now fetch all found definitions - new_types = {} - for hw_type, url in type_files: - try: - async with session.get(url) as response: - if response.status == 200: - text_content = await response.text() - try: - data = json.loads(text_content) - if self._validate_tag_definition(data): - new_types[hw_type] = TagType(hw_type, data) - _LOGGER.debug(f"Loaded tag type {hw_type}: {data['name']}") - except json.JSONDecodeError: - _LOGGER.error(f"Invalid JSON in tag type {hw_type}") - except Exception as e: - _LOGGER.error(f"Error loading tag type {hw_type}: {str(e)}") - - if new_types: - self._tag_types = new_types - self._last_update = datetime.now() - _LOGGER.info( - "Successfully loaded %d tag definitions from GitHub", - len(new_types) - ) - await self._save_to_store() - return True - _LOGGER.warning( - "No valid tag definitions found in GitHub repository at %s", - GITHUB_API_URL - ) - - except Exception as e: - _LOGGER.error( - "Error fetching tag types from %s: %s", - GITHUB_API_URL, - str(e), - exc_info=True - ) - return False - - # Do NOT load fallback types - let caller decide how to handle failure - return False - - def _validate_tag_definition(self, data: Dict) -> bool: - """Validate that a tag definition has required fields. - - Checks if the tag definition dictionary contains all required fields - to be considered valid. A valid definition must include: - - - version: Tag type format version - - name: Human-readable model name - - width: Display width in pixels - - height: Display height in pixels - - Args: - data: Dictionary containing tag type definition - - Returns: - bool: True if the definition is valid, False otherwise - """ - required_fields = {'version', 'name', 'width', 'height'} - return all(field in data for field in required_fields) - - def _load_fallback_types(self) -> None: - """Load basic fallback definitions if fetching fails on first run. - - Populates the manager with a comprehensive set of built-in tag type - definitions to ensure basic functionality when GitHub is unreachable. - - This provides support for all known tag models with proper dimensions, - version information, and basic configuration options. - - The fallback types include all tag definitions from the OpenEPaperLink - repository at: https://github.com/OpenEPaperLink/OpenEPaperLink/tree/master/resources/tagtypes - """ - self._tag_types = { - type_id: TagType(type_id, data) for type_id, data in FALLBACK_TAG_DEFINITIONS.items() - } - self._last_update = datetime.now() - _LOGGER.warning("Loaded fallback tag definitions") - - async def get_tag_info(self, hw_type: int) -> TagType: - """Get tag information for a specific hardware type. - - Retrieves the TagType instance for the specified hardware type, - ensuring type definitions are loaded first if needed. - - This method should be used to get tag information - when processing tag data from the AP. - - Args: - hw_type: Hardware type ID number - - Returns: - TagType: Tag type definition object - - Raises: - KeyError: If the hardware type is unknown - """ - await self.ensure_types_loaded() - tag_def = self._tag_types[hw_type] - return tag_def - - def get_hw_dimensions(self, hw_type: int) -> Tuple[int, int]: - """Get width and height for a hardware type. - - Returns the display dimensions for the specified tag type. - If the type is unknown, returns safe default values. - - Args: - hw_type: Hardware type ID number - - Returns: - Tuple[int, int]: Width and height in pixels - """ - if hw_type not in self._tag_types: - return 296, 128 # Safe defaults - return self._tag_types[hw_type].width, self._tag_types[hw_type].height - - def get_hw_string(self, hw_type: int) -> str: - """Get the display name for a hardware type. - - Returns a human-readable name for the tag hardware type. - - Args: - hw_type: Hardware type ID number - - Returns: - str: Human-readable name or "Unknown Type {hw_type}" if not recognized - """ - if hw_type not in self._tag_types: - return f"Unknown Type {hw_type}" - return self._tag_types[hw_type].get('name', f'Unknown Type {hw_type}') - - def is_in_hw_map(self, hw_type: int) -> bool: - """Check if a hardware type is known to the manager. - - Determines whether the specified hardware type ID has a - definition available in the manager. - - Args: - hw_type: Hardware type ID to check - - Returns: - bool: True if the hardware type is known, False otherwise - """ - return hw_type in self._tag_types - - def get_all_types(self) -> Dict[int, TagType]: - """Return all known tag types. - - Provides a copy of the complete type map. - This is useful for debugging or for UIs that - need to display all available tag types. - - Returns: - Dict[int, TagType]: Dictionary mapping type IDs to TagType instances - """ - return self._tag_types.copy() - - -# Update the helper functions to be synchronous after initial load -_INSTANCE: Optional[TagTypesManager] = None - - -async def get_tag_types_manager(hass: HomeAssistant) -> TagTypesManager: - """Get or create the global TagTypesManager instance. - - Implements a singleton pattern to ensure only one tag types manager - exists per Home Assistant instance. If the manager doesn't exist yet, - creates and initializes it. - - Args: - hass: Home Assistant instance - - Returns: - TagTypesManager: The shared manager instance - """ - global _INSTANCE - if _INSTANCE is None: - _INSTANCE = TagTypesManager(hass) - await _INSTANCE.ensure_types_loaded() - return _INSTANCE - - -def reset_tag_types_manager() -> None: - """Reset the global TagTypesManager instance. - - Called when the integration storage files are being removed - to ensure the singleton gets recreated on next access. - """ - global _INSTANCE - _INSTANCE = None - - -def get_hw_dimensions(hw_type: int) -> Tuple[int, int]: - """Get dimensions synchronously from global instance. - - Synchronous wrapper around the TagTypesManager.get_hw_dimensions method - that uses the global manager instance. Returns default dimensions - if the manager isn't initialized yet. - - Args: - hw_type: Hardware type ID number - - Returns: - Tuple[int, int]: Width and height in pixels (defaults to 296x128) - """ - if _INSTANCE is None: - return 296, 128 # Default dimensions - return _INSTANCE.get_hw_dimensions(hw_type) - - -def get_hw_string(hw_type: int) -> str: - """Get display name synchronously from global instance. - - Synchronous wrapper around the TagTypesManager.get_hw_string method - that uses the global manager instance. Returns a default string - if the manager isn't initialized yet. - - Args: - hw_type: Hardware type ID number - - Returns: - str: Human-readable name or "Unknown Type {hw_type}" if not recognized - """ - if _INSTANCE is None: - return f"Unknown Type {hw_type}" - return _INSTANCE.get_hw_string(hw_type) - - -def is_in_hw_map(hw_type: int) -> bool: - """Get display name synchronously from global instance. - - Synchronous wrapper around the TagTypesManager.is_in_hw_map method - that uses the global manager instance. Returns `false` - if the manager isn't initialized yet. - - Args: - hw_type: Hardware type ID number - - Returns: - bool: True if the hardware type is known, False otherwise - """ - if _INSTANCE is None: - return False - return _INSTANCE.is_in_hw_map(hw_type) diff --git a/custom_components/opendisplay/text.py b/custom_components/opendisplay/text.py deleted file mode 100644 index d09cd30..0000000 --- a/custom_components/opendisplay/text.py +++ /dev/null @@ -1,235 +0,0 @@ -from __future__ import annotations - -PARALLEL_UPDATES = 1 - -from dataclasses import dataclass -import requests - -from homeassistant.components.text import TextEntity, TextMode, TextEntityDescription -from homeassistant.core import HomeAssistant, callback -from homeassistant.exceptions import HomeAssistantError -from homeassistant.helpers.dispatcher import async_dispatcher_connect -from homeassistant.helpers.entity import EntityCategory -from homeassistant.helpers.entity_platform import AddEntitiesCallback -from .entity import OpenDisplayAPEntity, OpenDisplayTagEntity -from .runtime_data import OpenDisplayConfigEntry - -from .const import DOMAIN - -import logging - -_LOGGER = logging.getLogger(__name__) - -@dataclass(frozen=True, kw_only=True) -class OpenDisplayTextDescription(TextEntityDescription): - """Text entity description with explicit default enable flag.""" - - description: str - entity_registry_enabled_default: bool = False - - -# Define text field configurations -AP_TEXT_ENTITIES: tuple[OpenDisplayTextDescription, ...] = ( - OpenDisplayTextDescription( - key="alias", - translation_key="alias", - name="Alias", - description="AP display name", - entity_registry_enabled_default=True, - entity_category=EntityCategory.CONFIG, - ), - OpenDisplayTextDescription( - key="repo", - translation_key="repo", - name="Repository", - description="GitHub repository for tag type definitions", - entity_category=EntityCategory.CONFIG, - ), -) -"""Configuration for text entities to create for the AP.""" -TAG_TEXT_ENTITIES = [ - { - "key": "alias", - "name": "Alias", - "description": "Tag display name" - } -] -"""Configuration for text entities to create for each tag. - -This list defines the text input entities that will be created for -each discovered tag. Currently, this includes only the tag's alias, -which allows customizing the display name shown in Home Assistant and which also updates the tags alias on the AP. -""" - -class APConfigText(OpenDisplayAPEntity, TextEntity): - """Text entity for AP configuration.""" - - entity_description: OpenDisplayTextDescription - - def __init__(self, hub, description: OpenDisplayTextDescription) -> None: - """Initialize the text entity.""" - super().__init__(hub) - self.entity_description = description - self._key = description.key - self._attr_unique_id = f"{hub.entry.entry_id}_{description.key}" - self._attr_entity_category = description.entity_category - self._attr_translation_key = description.translation_key or description.key - self._attr_native_max = 32 - self._attr_native_min = 0 - self._attr_mode = "text" - self._description = description.description - self._attr_entity_registry_enabled_default = description.entity_registry_enabled_default - - @property - def available(self) -> bool: - """Return if entity is available.""" - return self._hub.online and self._key in self._hub.ap_config - - @property - def native_value(self) -> str | None: - """Return the current value.""" - if not self.available: - return None - return str(self._hub.ap_config.get(self._key, "")) - - async def async_set_value(self, value: str) -> None: - """Set the text value.""" - if value != self.native_value: - await self._hub.set_ap_config_item(self._key, value) - - async def async_added_to_hass(self) -> None: - """Register callbacks when entity is added to Home Assistant.""" - await super().async_added_to_hass() - self.async_on_remove( - async_dispatcher_connect( - self.hass, - f"{DOMAIN}_ap_config_update", - self._handle_update, - ) - ) - - -class TagNameText(OpenDisplayTagEntity, TextEntity): - """Text entity for tag name/alias.""" - - _attr_entity_registry_enabled_default = True - - def __init__(self, hub, tag_mac: str) -> None: - """Initialize the text entity.""" - super().__init__(hub, tag_mac) - self._attr_unique_id = f"{tag_mac}_alias" - self._attr_translation_key = "tag_alias" - self._attr_native_min = 0 - self._attr_mode = TextMode.TEXT - - @property - def available(self) -> bool: - """Return if entity is available.""" - return ( - super().available - and self._tag_mac in self._hub.tags - ) - - @property - def native_value(self) -> str | None: - """Return the current value.""" - if not self.available: - return None - tag_data = self._hub.get_tag_data(self._tag_mac) - return tag_data.get("tag_name", "") - - async def async_set_value(self, value: str) -> None: - """Set the text value.""" - if not value: - value = self._tag_mac - if value != self.native_value: - url = f"http://{self._hub.host}/save_cfg" - data = {'mac': self._tag_mac, 'alias': value} - try: - result = await self.hass.async_add_executor_job( - lambda: requests.post(url, data=data) - ) - if result.status_code != 200: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="ap_tag_alias_update_failed", - translation_placeholders={"tag_mac": self._tag_mac, "status_code": result.status_code, "response_text": result.text}, - ) - except requests.exceptions.Timeout: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="ap_tag_alias_timeout", - translation_placeholders={"tag_mac": self._tag_mac}, - ) from None - except requests.exceptions.RequestException as err: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="ap_tag_alias_network", - translation_placeholders={"tag_mac": self._tag_mac, "error": str(err)}, - ) from err - except Exception as err: - # Catch any other unexpected errors and wrap them - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="ap_tag_alias_unexpected", - translation_placeholders={"tag_mac": self._tag_mac, "error": str(err)}, - ) from err - -async def async_setup_entry(hass: HomeAssistant, entry: OpenDisplayConfigEntry, async_add_entities: AddEntitiesCallback) -> None: - """Set up text entities for AP configuration and tag names. - - Creates text input entities for: - - 1. AP configuration settings defined in AP_TEXT_ENTITIES - 2. Tag name/alias for each discovered tag - - For the AP entities, first ensures the AP configuration is loaded. - For tags, creates an entity for each existing tag and sets up a - listener to add entities for newly discovered tags. - - Args: - hass: Home Assistant instance - entry: Configuration entry - async_add_entities: Callback to register new entities - """ - hub = entry.runtime_data - - # Wait for initial AP config to be loaded - if not hub.ap_config: - await hub.async_update_ap_config() - - entities = [] - - # Create AP text entities from configuration - for description in AP_TEXT_ENTITIES: - entities.append(APConfigText(hub, description)) - - # Add tag name/alias text entities - for tag_mac in hub.tags: - if tag_mac not in hub.get_blacklisted_tags(): - entities.append(TagNameText(hub, tag_mac)) - - async_add_entities(entities) - - # Set up callback for new tag discovery - async def async_add_tag_text(tag_mac: str) -> None: - """Add text entities for a newly discovered tag. - - Creates a TagNameText entity for a newly discovered tag, - allowing the user to set a custom display name for the tag. - - Only adds the entity if the tag is not blacklisted. - - Args: - tag_mac: MAC address of the newly discovered tag - """ - if tag_mac not in hub.get_blacklisted_tags(): - async_add_entities([TagNameText(hub, tag_mac)]) - - entry.async_on_unload( - async_dispatcher_connect( - hass, - f"{DOMAIN}_tag_discovered", - async_add_tag_text - ) - ) diff --git a/custom_components/opendisplay/translations/de.json b/custom_components/opendisplay/translations/de.json deleted file mode 100644 index 97895a3..0000000 --- a/custom_components/opendisplay/translations/de.json +++ /dev/null @@ -1,480 +0,0 @@ -{ - "config": { - "step": { - "bluetooth_confirm": { - "title": "BLE-Tag einrichten", - "description": "**{name}** einrichten?\n\n**Details:**\n- Adresse: {address}\n- Signal: {rssi} dBm\n- Batterie: {battery}\n- Firmware: {fw_version}\n- Config-Version: {config_version}" - }, - "dhcp_confirm": { - "title": "{hostname} ({ip}) einrichten", - "description": "Ein OEPL Access Point wurde im Netzwerk entdeckt.\n\n**Gerätedetails:**\n- Hostname: {hostname}\n- IP-Adresse: {ip}\n- MAC-Adresse: {mac}\n\nSoll dieser Access Point zu Home Assistant hinzugefügt werden?" - }, - "reconfigure": { - "title": "Access Point aktualisieren", - "description": "Adresse des OEPL-Access-Points aktualisieren.", - "data": { - "host": "Hostname oder IP" - }, - "data_description": { - "host": "Hostname oder IP des OEPL-Access-Points." - } - }, - "user": { - "data": { - "host": "Hostname oder IP" - }, - "data_description": { - "host": "Hostname oder IP des OEPL-Access-Points." - } - } - }, - "error": { - "interrogation_failed": "Verbindung zum Gerät und Abrufen der Display-Informationen fehlgeschlagen. Fehler: {error}. Erneut versuchen oder Geräteverbindung prüfen.", - "invalid_device_config": "Gerät hat ungültige Konfigurationsdaten zurückgegeben. Bitte Gerät neu konfigurieren oder die Firmware aktualisieren." - }, - "abort": { - "single_instance_allowed": "Nur ein OEPL-Hub kann konfiguriert werden. Mehrere BLE-Geräte werden unterstützt, aber nur ein AP-Hub ist erlaubt.", - "unsupported_protocol": "Nicht unterstütztes BLE-Firmware-Protokoll. Nur ATC- und OpenDisplay-Firmware werden unterstützt.", - "invalid_advertising_data": "Advertising-Daten des Geräts konnten nicht analysiert werden. Bitte sicherstellen, dass das Gerät eine kompatible Firmware verwendet.", - "no_reconfigure_ble": "BLE-Geräte unterstützen keine Neukonfiguration. Gerät entfernen und erneut hinzufügen, wenn Einstellungen geändert werden sollen.", - "cannot_connect": "Verbindung zum entdeckten Access Point fehlgeschlagen. Überprüfen, ob das Gerät online und im Netzwerk erreichbar ist." - } - }, - "options": { - "step": { - "init": { - "title": "Tag-Verwaltung", - "description": "Tags auswählen die ignoriert werden sollen.", - "data": { - "blacklisted_tags": "Ignorierte Tags", - "button_debounce": "Tasten-Entstörzeit (Sekunden)", - "nfc_debounce": "NFC-Entstörzeit (Sekunden)", - "custom_font_dirs": "Benutzerdefinierte Schriftarten-Verzeichnisse" - }, - "data_description": { - "blacklisted_tags":"Tags ausblenden; geblacklistete Tags werden nicht aktualisiert und lösen keine Dienste aus.", - "button_debounce": "Wartezeit, bevor ein weiterer Tastendruck akzeptiert wird (Sekunden).", - "nfc_debounce": "Wartezeit, bevor ein weiterer NFC-Tap akzeptiert wird (Sekunden).", - "custom_font_dirs": "Kommagetrennte Verzeichnisse mit zusätzlichen Schriftarten für erzeugte Bilder." - } - } - }, - "abort": { - "no_options_ble": "Für BLE-Geräte sind keine konfigurierbaren Optionen verfügbar. BLE-Geräte werden automatisch verwaltet und benötigen keine zusätzliche Konfiguration." - } - }, - "entity": { - "switch": { - "preview": { - "name": "Bildervorschau im AP" - }, - "ble": { - "name": "Bluetooth LE" - }, - "nightlyreboot": { - "name": "Nächtlicher Neustart" - }, - "showtimestamp": { - "name": "Zeitstempel anzeigen" - } - }, - "text": { - "alias": { - "name": "Alias" - }, - "repo": { - "name": "Repository" - }, - "tag_alias": { - "name": "Alias" - } - }, - "select": { - "channel": { - "name": "Kanal", - "state": { - "auto": "Automatisch", - "11": "11", - "15": "15", - "20": "20", - "25": "25", - "26": "26" - } - }, - "led": { - "name": "RGB-LED-Helligkeit", - "state": { - "off": "Aus", - "10%": "10%", - "25%": "25%", - "50%": "50%", - "75%": "75%", - "100%": "100%" - } - }, - "tft": { - "name": "TFT-Helligkeit" - }, - "maxsleep": { - "name": "Maximale Schlafdauer", - "state": { - "shortest (40 sec)": "kürzeste (40 Sek.)", - "5 min": "5 Min.", - "10 min": "10 Min.", - "30 min": "30 Min.", - "1 hour": "1 Stunde" - } - }, - "lock": { - "name": "Tag-Inventar sperren", - "state": { - "no": "Nein", - "locked: don't add new tags": "Gesperrt: Keine neuen Tags hinzufügen", - "learning: only add booting tags": "Lernend: Nur bootende Tags hinzufügen" - } - }, - "wifipower": { - "name": "WLAN-Leistung" - }, - "language": { - "name": "Sprache" - }, - "discovery": { - "name": "Erkennungsmethode" - }, - "subghzchannel": { - "name": "Sub-GHz-Kanal", - "state": { - "disabled": "Deaktiviert", - "100 - 864.000 Mhz (Europe, etc)": "100 - 864.000 MHz (Europa, etc)", - "101 - 865.006 Mhz (Europe, etc)": "101 - 865.006 MHz (Europa, etc)", - "102 - 866.014 Mhz (Europe, etc)": "102 - 866.014 MHz (Europa, etc)", - "103 - 867.020 Mhz (Europe, etc)": "103 - 867.020 MHz (Europa, etc)", - "104 - 868.027 Mhz (Europe, etc)": "104 - 868.027 MHz (Europa, etc)", - "105 - 869.034 Mhz (Europe, etc)": "105 - 869.034 MHz (Europa, etc)", - "200 - 903.000 Mhz (US, etc)": "200 - 903.000 MHz (USA, etc)", - "201 - 907.027 Mhz (US, etc)": "201 - 907.027 MHz (USA, etc)", - "202 - 911.054 Mhz (US, etc)": "202 - 911.054 MHz (USA, etc)", - "203 - 915.083 Mhz (US, etc)": "203 - 915.083 MHz (USA, etc)", - "204 - 919.110 Mhz (US, etc)": "204 - 919.110 MHz (USA, etc)", - "205 - 923.138 Mhz (US, etc)": "205 - 923.138 MHz (USA, etc)" - } - }, - "sleeptime1": { - "name": "Keine Updates von (1)" - }, - "sleeptime2": { - "name": "Keine Updates bis (2)" - } - }, - "sensor": { - "ip": { - "name": "IP-Adresse" - }, - "wifi_ssid": { - "name": "WLAN-SSID" - }, - "record_count": { - "name": "Tag-Anzahl" - }, - "db_size": { - "name": "Datenbankgröße" - }, - "little_fs_free": { - "name": "LittleFS frei" - }, - "ap_state": { - "name": "Status" - }, - "run_state": { - "name": "Laufstatus" - }, - "wifi_rssi": { - "name": "WLAN-Signalstärke (RSSI)" - }, - "heap": { - "name": "Freier Heap" - }, - "sys_time": { - "name": "Systemzeit" - }, - "uptime": { - "name": "Betriebszeit" - }, - "low_battery_tag_count": { - "name": "Tags mit schwachem Akku" - }, - "timeout_tag_count": { - "name": "Tags mit Zeitüberschreitung" - }, - "ps_ram_free": { - "name": "Freier PSRAM" - }, - "temperature": { - "name": "Temperatur" - }, - "battery_voltage": { - "name": "Batteriespannung" - }, - "battery_percentage": { - "name": "Batterieprozentsatz" - }, - "last_seen": { - "name": "Zuletzt gesehen" - }, - "next_update": { - "name": "Nächstes Update" - }, - "next_checkin": { - "name": "Nächste Anmeldung" - }, - "lqi": { - "name": "Linkqualitätsindex (LQI)" - }, - "rssi": { - "name": "Signalstärke (RSSI)" - }, - "pending_updates": { - "name": "Ausstehende Updates" - }, - "content_mode": { - "name": "Inhaltsmodus" - }, - "wakeup_reason": { - "name": "Aufwachgrund" - }, - "capabilities": { - "name": "Fähigkeiten" - }, - "update_count": { - "name": "Update-Anzahl" - }, - "width": { - "name": "Breite" - }, - "height": { - "name": "Höhe" - }, - "runtime": { - "name": "Laufzeit" - }, - "boot_count": { - "name": "Neustartanzahl" - }, - "checkin_count": { - "name": "Check-in Anzahl" - }, - "block_requests": { - "name": "Blockübertragungsanforderungen" - } - }, - "image": { - "content": { - "name": "Inhalt" - } - }, - "light": { - "led": { - "name": "LED" - } - }, - "button": { - "clear_pending": { - "name": "Ausstehende Updates löschen" - }, - "force_refresh": { - "name": "Inhalt aktualisieren erzwingen" - }, - "reboot_tag": { - "name": "Tag neu starten" - }, - "scan_channels": { - "name": "Kanäle scannen" - }, - "deep_sleep": { - "name": "Tiefschlaf" - }, - "reboot_ap": { - "name": "AP neu starten" - }, - "refresh_tag_types": { - "name": "Tag-Typen aktualisieren" - }, - "refresh_config": { - "name": "Konfiguration aktualisieren" - } - }, - "update": { - "firmware": { - "name": "Firmware" - }, - "opendisplay_ble_firmware": { - "name": "OpenDisplay Firmware" - } - } - }, - "services": { - "drawcustom": { - "name": "Benutzerdefiniertes Bild zeichnen", - "description": "Zeichnet ein benutzerdefiniertes Bild auf einem oder mehreren Tags", - "fields": { - "payload": { - "name": "Payload", - "description": "Payload zum Zeichnen, siehe Dokumentation für Beispiele" - }, - "background": { - "name": "Hintergrundfarbe", - "description": "Hintergrundfarbe (schwarz, weiß, akzent, rot, gelb)" - }, - "rotate": { - "name": "Rotation", - "description": "Rotation in Grad (0, 90, 180, 270)" - }, - "dither": { - "name": "Dithering", - "description": "Zu verwendende Dithering-Option" - }, - "ttl": { - "name": "Gültigkeitsdauer", - "description": "Wie lange das Bild zwischengespeichert werden soll (in Sekunden)" - }, - "dry-run": { - "name": "Trockenlauf", - "description": "Bild wird nur lokal gespeichert und nicht an den AP gesendet" - } - } - }, - "setled": { - "name": "LED-Muster einstellen", - "description": "Stellt das LED-Blinkmuster für ein oder mehrere Tags ein" - }, - "clear_pending": { - "name": "Ausstehendes Update löschen", - "description": "Löscht ausstehende Updates für ein oder mehrere Tags" - }, - "force_refresh": { - "name": "Inhalt aktualisieren erzwingen", - "description": "Erzwingt das Aktualisieren des Inhalts für ein oder mehrere Tags" - }, - "reboot_tag": { - "name": "Tag neu starten", - "description": "Startet ein oder mehrere Tags neu" - }, - "scan_channels": { - "name": "Kanäle scannen", - "description": "Tag scannt nach verfügbaren Kanälen" - }, - "reboot_ap": { - "name": "AP neu starten", - "description": "Startet den AP neu" - }, - "refresh_tag_types": { - "name": "Tag-Typen aktualisieren", - "description": "Aktualisiert die Tag-Typen von GitHub" - } - }, - "issues": { - "camera_migration_needed": { - "title": "Kamera-Entitäten migriert", - "description": "OpenDisplay hat {count} Kamera-Entitäten in Bild-Entitäten migriert. Dashboards und Automationen aktualisieren, um die neuen Bild-Entitäten zu verwenden. Entfernte Entitäten: {entities}" - } - }, - "preview_features": { - "opendisplay_ble_updates": { - "name": "OpenDisplay Firmware-Updates", - "description": "Zeigt ein Firmware-Update-Entity für OpenDisplay BLE Tags im Vergleich zur neuesten OpenDisplay_BLE GitHub-Version. Installation ist noch nicht verfügbar." - } - }, - "exceptions": { - "ble_device_not_detected": "BLE-Gerät {name} ({mac_address}) nicht im Bluetooth-Bereich erkannt.", - "ap_cannot_connect": "Kann keine Verbindung zum AP unter {host} herstellen: {error}.", - "ap_failed_load_tags": "Tags konnten vom AP unter {host} nicht geladen werden: {error}.", - "ap_timeout_action": "Zeitüberschreitung bei {action}.", - "ap_network_error_action": "Netzwerkfehler bei {action}: {error}.", - "ap_failed_action_http": "Aktion {action} fehlgeschlagen: HTTP {status_code} - {response_text}.", - "device_not_found": "Gerät {device_id} nicht gefunden.", - "device_no_identifiers": "Keine Bezeichner für Gerät {device_id} gefunden.", - "device_not_opendisplay": "Gerät {device_id} ist kein OpenDisplay-Gerät.", - "no_targets_specified": "Keine Zielgeräte angegeben. Bitte device_id, label_id oder area_id angeben.", - "ap_offline": "OEPL-AP ist offline. Netzverbindung und AP-Status prüfen.", - "error_processing_device": "Unerwarteter Fehler bei der Verarbeitung von Gerät {entity_id}: {error}.", - "ble_upload_bt_disabled": "Upload zu BLE-Gerät {entity_id} nicht möglich: Bluetooth-Integration deaktiviert oder keine Scanner verfügbar.", - "ble_no_metadata": "Keine Metadaten für BLE-Gerät {entity_id} gefunden.", - "ble_upload_failed": "BLE-Bildupload für {entity_id} fehlgeschlagen.", - "ble_direct_write_not_supported": "Direktes Schreiben wird nur für OpenDisplay-Geräte unterstützt, aber {entity_id} scheint ein ATC-Gerät zu sein.", - "image_upload_status": "Bild-Upload für {entity_id} fehlgeschlagen mit Statuscode: {status_code}.", - "image_upload_timeout": "Bild-Upload für {entity_id} nach {attempts} Versuchen wegen Zeitüberschreitung fehlgeschlagen.", - "image_upload_network": "Netzwerkfehler beim Bild-Upload für {entity_id}: {error}.", - "image_upload_failed": "Bild-Upload für {entity_id} fehlgeschlagen: {error}.", - "unexpected_upload": "Unerwarteter Upload-Fehler für {entity_id}: {error}.", - "unexpected_ble_upload": "Unerwarteter Fehler beim BLE-Upload zu {entity_id}: {error}.", - "unexpected_ble_direct_write": "Unerwarteter Fehler beim BLE-Direktschreiben zu {entity_id}: {error}.", - "ap_tag_alias_update_failed": "Alias für Tag {tag_mac} konnte nicht aktualisiert werden: AP antwortete mit HTTP {status_code} - {response_text}.", - "ap_tag_alias_timeout": "Zeitüberschreitung beim Aktualisieren des Alias für {tag_mac}. Netzwerkverbindung zum AP prüfen.", - "ap_tag_alias_network": "Netzwerkfehler beim Aktualisieren des Alias für {tag_mac}: {error}.", - "ap_tag_alias_unexpected": "Unerwarteter Fehler beim Aktualisieren des Alias für {tag_mac}: {error}.", - "ap_offline_core": "OEPL-AP ist offline.", - "tag_not_registered": "Tag {tag_mac} ist beim AP nicht registriert. Wenn der Tag eingecheckt hat, Home Assistant neu starten.", - "tag_blacklisted": "Tag {tag_mac} ist derzeit auf der Blacklist. Für die Nutzung in den Integrationsoptionen entfernen.", - "tag_inconsistent": "Inkonsistenter Zustand: Tag {tag_mac} ist bekannt, hat aber keine Daten. Bitte als Bug melden.", - "tag_no_hw_type": "Kein Hardware-Typ für Tag {tag_mac} gefunden. Bitte auf den nächsten Check-in des Tags warten.", - "tag_unknown_hw_type": "Unbekannter Hardware-Typ {hw_type} für Tag {tag_mac}. Tag-Typen in den Integrationsoptionen aktualisieren.", - "invalid_canvas_dimensions": "Ungültige Leinwandabmessungen {width}x{height} für {entity_id}. Gerätemetadaten sind möglicherweise beschädigt oder fehlen. Integration neu laden oder Gerät erneut hinzufügen.", - "ble_tag_info_unexpected": "Unerwarteter Fehler beim Abrufen des Tag-Typs für {entity_id}: {error}.", - "ble_tag_info_unexpected_ble": "Unerwarteter Fehler beim Abrufen des BLE-Tag-Typs für {entity_id}: {error}.", - "qr_generation_failed": "QR-Code konnte nicht erzeugt werden: {error}.", - "image_entity_not_found": "Bild-Entity {entity_id} nicht gefunden.", - "image_entity_no_url": "Keine Bild-URL für Entity {entity_id} gefunden.", - "image_download_failed": "Bild konnte nicht heruntergeladen werden: HTTP {status_code}.", - "image_data_uri_invalid": "Ungültige Data-URI: {error}.", - "image_process_failed": "Bild konnte nicht verarbeitet werden: {error}.", - "font_load_failed": "Keine Schrift konnte geladen werden. Dies weist auf ein Problem bei der Installation der Integration hin.", - "plot_duration_invalid": "duration muss größer als 0 Sekunden sein.", - "plot_no_data": "Keine aufgezeichneten Daten für {entity_id} gefunden.", - "plot_no_valid_points": "Keine gültigen Datenpunkte gefunden.", - "plot_yaxis_invalid": "yaxis.tick_every muss größer als 0 sein.", - "plot_xlegend_invalid": "xlegend.interval muss größer als 0 sein.", - "plot_draw_failed": "Plot konnte nicht gezeichnet werden: {error}.", - "plot_bar_invalid": "Ungültige Balkendaten für Diagramm: {error}.", - "mdi_metadata_failed": "MDI-Metadaten konnten nicht geladen werden: {error}.", - "icon_name_invalid": "Ungültiger Icon-Name: {icon_name}.", - "icon_draw_failed": "Icon konnte nicht gezeichnet werden: {error}.", - "icon_draw_failed_named": "Icon {icon_name} konnte nicht gezeichnet werden: {error}.", - "led_on_failed": "LED konnte nicht eingeschaltet werden.", - "led_on_error": "Fehler beim Einschalten der LED: {error}.", - "led_off_failed": "LED konnte nicht ausgeschaltet werden.", - "led_off_error": "Fehler beim Ausschalten der LED: {error}.", - "tagtypes_load_failed": "Tag-Typ-Definitionen konnten nicht geladen werden. Keine gespeicherten Daten verfügbar. Netzwerkverbindung oder GitHub-Zugriff prüfen.", - "tagtypes_refresh_failed": "Tag-Typ-Definitionen konnten nicht aktualisiert werden. Netzwerkverbindung oder GitHub-Zugriff prüfen.", - "no_hub_configured": "Kein AP-Hub konfiguriert. Nur BLE-Geräte gefunden.", - "ble_slots_unavailable": "Keine verfügbaren Bluetooth-Verbindungsslots für {mac_address}. Weitere ESPHome-Bluetooth-Proxys in der Nähe hinzufügen oder auf freie Verbindungen warten. Details: {error}.", - "ble_device_not_found": "Gerät {mac_address} nicht gefunden.", - "ble_characteristic_not_resolved": "Charakteristik für Service {service_uuid} konnte nicht aufgelöst werden.", - "ble_connection_failed": "Verbindung zu {mac_address} fehlgeschlagen: {error}.", - "ble_write_char_missing": "Schreib-Charakteristik nicht verfügbar.", - "ble_timeout": "Keine Antwort von {mac_address} innerhalb von {timeout}s.", - "ble_operation_failed": "BLE-Operation {operation} nach {attempts} Versuchen fehlgeschlagen: {error}.", - "ble_operation_retry": "BLE-Operation {operation} schlug bei Versuch {attempt} fehl: {error}. Neuer Versuch in {delay}s...", - "opendisplay_config_chunk_short": "Chunk-Daten zu kurz: {length} Bytes.", - "opendisplay_expected_chunk_zero": "Chunk 0 erwartet, aber Chunk {chunk_num} erhalten.", - "opendisplay_config_too_short": "Konfigurationsdaten zu kurz: {length} Bytes (mindestens {minimum}).", - "opendisplay_fw_response_short": "Firmware-Antwort zu kurz: {length} Bytes.", - "opendisplay_fw_version_format": "Firmware-SHA-Länge {sha_length} überschreitet Payload ({payload_length} Bytes).", - "tlv_section_too_short": "{section} erfordert {expected} Bytes, erhalten {actual}.", - "tlv_data_too_short": "Konfigurationsdaten zu kurz: {length} Bytes (Minimum 2).", - "tlv_crc_mismatch": "CRC32 stimmt nicht überein: erwartet {expected_crc32}, erhalten {actual_crc32}.", - "tlv_unknown_packet": "Unbekannte Paket-ID: {packet_id} bei Offset {offset}.", - "tlv_packet_too_short": "Paket-ID {packet_id} benötigt {packet_size} Bytes, es verbleiben jedoch nur {remaining_bytes} Bytes bei Offset {offset}.", - "tlv_packet_parse_failed": "Pakettyp {packet_id} bei Offset {offset} konnte nicht geparst werden: {error}.", - "tlv_no_display_config": "Keine Display-Konfiguration in den Gerätedaten gefunden.", - "tlv_invalid_dimensions": "Ungültige Pixelabmessungen: {width}x{height}.", - "config_flow_invalid_config": "Gerät hat ungültige Konfigurationsdaten zurückgegeben.", - "config_flow_missing_config": "Gerät hat keine Konfigurationsdaten zurückgegeben.", - "refresh_config_failed": "Konfiguration konnte nicht aktualisiert werden: {error}.", - "ble_protocol_invalid_response_length": "Ungültige Anzeigedaten-Länge: {length} (mindestens {expected_length} erwartet).", - "ble_protocol_invalid_command_id": "Ungültige Befehls-ID in der Antwort: {command_id}.", - "ble_protocol_payload_too_short": "Anzeigedaten-Payload zu kurz.", - "multiple_errors": { "message": "Mehrere Fehler sind aufgetreten:\n{errors}" }, - "invalid_payload": { "message": "Ungültige Payload:\n{errors}" } - } -} diff --git a/custom_components/opendisplay/translations/en.json b/custom_components/opendisplay/translations/en.json index b172e82..e2a7e93 100644 --- a/custom_components/opendisplay/translations/en.json +++ b/custom_components/opendisplay/translations/en.json @@ -1,379 +1,160 @@ { "config": { + "abort": { + "already_configured": "Device is already configured", + "already_in_progress": "Configuration flow is already in progress", + "cannot_connect": "Failed to connect", + "no_devices_found": "No devices found on the network", + "reauth_successful": "Re-authentication was successful", + "unknown": "Unexpected error" + }, + "error": { + "cannot_connect": "Failed to connect", + "invalid_auth": "Invalid authentication", + "invalid_key_format": "The encryption key must be exactly 32 hexadecimal characters (0-9, a-f).", + "unknown": "Unexpected error" + }, + "flow_title": "{name}", "step": { - "bluetooth_confirm": { - "title": "Set up OpenDisplay Device", - "description": "Set up **{name}**?\n\n**Details:**\n- Device Type: {device_type}\n- Address: {address}\n- Signal: {rssi} dBm{advertised_details}" - }, - "dhcp_confirm": { - "title": "Set up {hostname} ({ip})", - "description": "An OEPL access point was discovered on the network.\n\n**Device Details:**\n- Hostname: {hostname}\n- IP Address: {ip}\n- MAC Address: {mac}\n\nShould this access point be added to Home Assistant?" - }, - "reconfigure": { - "title": "Update Access Point", - "description": "Update the OEPL access point address.", - "data": { - "host": "Host or IP" + "bluetooth_confirm": { + "description": "Do you want to set up {name}?" + }, + "encryption_key": { + "data": { + "encryption_key": "Encryption key" + }, + "data_description": { + "encryption_key": "Enter the 32-character hexadecimal AES-128 encryption key for this device." + }, + "description": "{name} requires an encryption key to connect.", + "title": "Encryption required" + }, + "reauth_confirm": { + "data": { + "encryption_key": "Encryption key" + }, + "data_description": { + "encryption_key": "Enter the 32-character hexadecimal AES-128 encryption key for this device." + }, + "description": "Authentication failed for {name}. Enter the correct encryption key, or leave blank if encryption has been disabled on the device.", + "title": "Re-authentication required" }, - "data_description": { - "host": "Hostname or IP of the OEPL access point." - } - }, "user": { "data": { - "host": "Host or IP" + "address": "Device" }, "data_description": { - "host": "Hostname or IP of the OEPL access point." - } + "address": "Select the Bluetooth device to set up." + }, + "description": "Choose a device to set up" } - }, - "error": { - "interrogation_failed": "Failed to connect to device and retrieve display information. Error: {error}. Retry or check device connectivity.", - "invalid_device_config": "Device returned invalid configuration data. Please reconfigure the device or update its firmware." - }, - "abort": { - "single_instance_allowed": "Only one OEPL hub can be configured. Multiple BLE devices are supported, but only one AP hub is allowed.", - "unsupported_protocol": "Unsupported BLE firmware protocol. Only ATC and OpenDisplay firmware are supported.", - "invalid_advertising_data": "Could not parse device advertising data. Please ensure the device is using compatible firmware.", - "no_reconfigure_ble": "BLE devices do not support reconfiguration. Remove and re-add the device if you need to change its settings.", - "cannot_connect": "Failed to connect to the discovered access point. Please check the device is online and reachable on the network." } }, - "options": { - "step": { - "init": { - "title": "Tag Management", - "description": "Select tags to blacklist. Blacklisted tags will be hidden and ignored.", - "data": { - "blacklisted_tags": "Blacklisted Tags", - "button_debounce": "Button Debounce Time (seconds)", - "nfc_debounce": "NFC Debounce Time (seconds)", - "custom_font_dirs": "Custom Font Directories" - }, - "data_description": { - "blacklisted_tags": "Tags to hide; blacklisted tags will not update or trigger services.", - "button_debounce": "Delay before another button press is accepted (seconds).", - "nfc_debounce": "Delay before another NFC tap is accepted (seconds).", - "custom_font_dirs": "Comma-separated directories containing additional fonts for generated images." + "entity": { + "event": { + "button": { + "name": "Button {number}", + "state_attributes": { + "event_type": { + "state": { + "button_down": "Button down", + "button_up": "Button up" + } + } } } }, - "abort": { - "no_options_ble": "No configurable options are available for BLE devices. BLE devices are managed automatically and do not require additional configuration." + "sensor": { + "battery_voltage": { + "name": "Battery voltage" + } } }, - "entity": { - "switch": { - "preview": { - "name": "Preview Images on AP" - }, - "ble": { - "name": "Bluetooth LE" - }, - "nightlyreboot": { - "name": "Nightly Reboot" - }, - "showtimestamp": { - "name": "Show Timestamp" - } + "exceptions": { + "authentication_error": { + "message": "Authentication failed. Please update the encryption key." }, - "text": { - "alias": { - "name": "Alias" - }, - "repo": { - "name": "Repository" - }, - "tag_alias": { - "name": "Alias" - } + "device_not_found": { + "message": "Could not find Bluetooth device with address `{address}`." }, - "select": { - "channel": { - "name": "Channel" - }, - "led": { - "name": "RGB LED brightness" - }, - "tft": { - "name": "TFT Brightness" - }, - "maxsleep": { - "name": "Maximum sleep" - }, - "lock": { - "name": "Lock tag inventory" - }, - "wifipower": { - "name": "WiFi Power" - }, - "language": { - "name": "Language" - }, - "discovery": { - "name": "Discovery method" - }, - "subghzchannel": { - "name": "Sub-GHz Channel" - }, - "sleeptime1": { - "name": "No updates between 1 (from)" - }, - "sleeptime2": { - "name": "No updates between 2 (to)" - } + "invalid_device_id": { + "message": "Device `{device_id}` is not a valid OpenDisplay device." }, - "sensor": { - "ip": { - "name": "IP Address" - }, - "wifi_ssid": { - "name": "WiFi SSID" - }, - "record_count": { - "name": "Tag Count" - }, - "db_size": { - "name": "Database Size" - }, - "little_fs_free": { - "name": "LittleFS Free" - }, - "ap_state": { - "name": "State" - }, - "run_state": { - "name": "Run State" - }, - "wifi_rssi": { - "name": "WiFi RSSI" - }, - "heap": { - "name": "Free Heap" - }, - "sys_time": { - "name": "System Time" - }, - "uptime": { - "name": "Uptime" - }, - "low_battery_tag_count": { - "name": "Low Battery Tag Count" - }, - "timeout_tag_count": { - "name": "Timed out Tag Count" - }, - "ps_ram_free": { - "name": "PSRAM Free" - }, - "temperature": { - "name": "Temperature" - }, - "battery_voltage": { - "name": "Battery Voltage" - }, - "battery_percentage": { - "name": "Battery Percentage" - }, - "last_seen": { - "name": "Last Seen" - }, - "next_update": { - "name": "Next Update" - }, - "next_checkin": { - "name": "Next Checkin" - }, - "lqi": { - "name": "Link Quality Index" - }, - "rssi": { - "name": "RSSI" - }, - "pending_updates": { - "name": "Pending Updates" - }, - "content_mode": { - "name": "Content Mode" - }, - "wakeup_reason": { - "name": "Wakeup Reason" - }, - "capabilities": { - "name": "Capabilities" - }, - "update_count": { - "name": "Update Count" - }, - "width": { - "name": "Width" - }, - "height": { - "name": "Height" - }, - "runtime": { - "name": "Runtime" - }, - "boot_count": { - "name": "Boot Count" - }, - "checkin_count": { - "name": "Checkin Count" - }, - "block_requests": { - "name": "Block Transfer Requests" - } + "media_download_error": { + "message": "Failed to download media: {error}" }, - "image": { - "content": { - "name": "Content" + "upload_error": { + "message": "Failed to upload image to the display." + } + }, + "selector": { + "dither_mode": { + "options": { + "atkinson": "Atkinson", + "burkes": "Burkes", + "floyd_steinberg": "Floyd-Steinberg", + "jarvis_judice_ninke": "Jarvis, Judice & Ninke", + "none": "None", + "ordered": "Ordered", + "sierra": "Sierra", + "sierra_lite": "Sierra Lite", + "stucki": "Stucki" } }, - "light": { - "led": { - "name": "LED" + "fit_mode": { + "options": { + "contain": "Contain", + "cover": "Cover", + "crop": "Crop", + "stretch": "Stretch" } }, - "button": { - "clear_pending": { - "name": "Clear Pending Updates" - }, - "force_refresh": { - "name": "Force Refresh Content" - }, - "reboot_tag": { - "name": "Reboot Tag" - }, - "scan_channels": { - "name": "Scan Channels" - }, - "deep_sleep": { - "name": "Deep Sleep" - }, - "reboot_ap": { - "name": "Reboot AP" - }, - "refresh_tag_types": { - "name": "Refresh Tag Types" + "refresh_mode": { + "options": { + "fast": "Fast", + "full": "Full" + } + } + }, + "services": { + "upload_image": { + "description": "Uploads an image to an OpenDisplay device.", + "fields": { + "device_id": { + "description": "The OpenDisplay device to upload the image to.", + "name": "Device" + }, + "dither_mode": { + "description": "The dithering algorithm to use for converting the image to the display's color palette.", + "name": "Dither mode" + }, + "fit_mode": { + "description": "How the image is fitted to the display dimensions.", + "name": "Fit mode" + }, + "image": { + "description": "The image to upload to the display.", + "name": "Image" + }, + "refresh_mode": { + "description": "The display refresh mode. Full refresh clears ghosting but is slower. Fast refresh is not supported on all displays.", + "name": "Refresh mode" + }, + "rotation": { + "description": "The rotation angle in degrees, applied clockwise.", + "name": "Rotation" + }, + "tone_compression": { + "description": "Dynamic range compression strength. Leave empty for automatic.", + "name": "Tone compression" + } }, - "refresh_config": { - "name": "Refresh Configuration" + "name": "Upload image", + "sections": { + "additional_fields": { + "name": "Additional options" + } } - }, - "update": { - "firmware": { - "name": "Firmware" - }, - "opendisplay_ble_firmware": { - "name": "OpenDisplay Firmware" - } - } - }, - "issues": { - "camera_migration_needed": { - "title": "Camera entities migrated", - "description": "OpenDisplay migrated {count} camera entities to image entities. Update your dashboards and automations to use the new image entities. Removed entities: {entities}" - } - }, - "preview_features": { - "opendisplay_ble_updates": { - "name": "OpenDisplay firmware updates", - "description": "Shows a firmware update entity for OpenDisplay BLE tags that compares the installed firmware to the latest OpenDisplay_BLE GitHub release. Install is not available yet." + } } - }, - "exceptions": { - "ble_device_not_detected": { "message": "BLE device {name} ({mac_address}) not detected in Bluetooth range." }, - "ap_cannot_connect": { "message": "Cannot connect to AP at {host}: {error}" }, - "ap_failed_load_tags": { "message": "Failed to load tags from AP at {host}: {error}" }, - "ap_timeout_action": { "message": "Timeout during {action}." }, - "ap_network_error_action": { "message": "Network error during {action}: {error}" }, - "ap_failed_action_http": { "message": "Failed to {action}: HTTP {status_code} - {response_text}" }, - "device_not_found": { "message": "Device {device_id} not found." }, - "device_no_identifiers": { "message": "No identifiers found for device {device_id}." }, - "device_not_opendisplay": { "message": "Device {device_id} is not an OpenDisplay device." }, - "no_targets_specified": { "message": "No target devices specified. Please provide device_id, label_id, or area_id." }, - "ap_offline": { "message": "OEPL AP is offline. Please check your network connection and AP status." }, - "error_processing_device": { "message": "Unexpected error processing device {entity_id}: {error}" }, - "ble_upload_bt_disabled": { "message": "Cannot upload to BLE device {entity_id}: Bluetooth integration is disabled or no scanners available." }, - "ble_no_metadata": { "message": "No metadata found for BLE device {entity_id}." }, - "ble_upload_failed": { "message": "BLE image upload failed for {entity_id}." }, - "ble_direct_write_failed": { "message": "BLE direct write upload failed for {entity_id}." }, - "ble_direct_write_not_supported": { "message": "Direct write is only supported for OpenDisplay devices, but {entity_id} appears to be an ATC device." }, - "image_upload_status": { "message": "Image upload failed for {entity_id} with status code: {status_code}." }, - "image_upload_timeout": { "message": "Image upload timed out for {entity_id} after {attempts} attempts." }, - "image_upload_network": { "message": "Network error uploading image for {entity_id}: {error}." }, - "image_upload_failed": { "message": "Failed to upload image for {entity_id}: {error}." }, - "unexpected_upload": { "message": "Unexpected upload error for {entity_id}: {error}." }, - "unexpected_ble_upload": { "message": "Unexpected error during BLE upload to {entity_id}: {error}." }, - "unexpected_ble_direct_write": { "message": "Unexpected error during BLE direct write to {entity_id}: {error}." }, - "ap_tag_alias_update_failed": { "message": "Failed to update tag alias for {tag_mac}: AP returned HTTP {status_code} - {response_text}." }, - "ap_tag_alias_timeout": { "message": "Timeout updating tag alias for {tag_mac}. Please check network connectivity to the AP." }, - "ap_tag_alias_network": { "message": "Network error updating tag alias for {tag_mac}: {error}." }, - "ap_tag_alias_unexpected": { "message": "Unexpected error updating tag alias for {tag_mac}: {error}." }, - "ap_offline_core": { "message": "OEPL AP is offline." }, - "invalid_entity_id_format": { "message": "Invalid entity ID format: {entity_id}." }, - "tag_not_registered": { "message": "Tag {tag_mac} is not registered with the AP. If the tag has checked in, try restarting Home Assistant." }, - "tag_blacklisted": { "message": "Tag {tag_mac} is currently blacklisted. Remove it from the blacklist in integration options to use it." }, - "tag_inconsistent": { "message": "Inconsistent state: Tag {tag_mac} is known but has no data. Please report this as a bug." }, - "tag_no_hw_type": { "message": "No hardware type found for tag {tag_mac}. Please wait for the tag to complete its next check-in." }, - "tag_unknown_hw_type": { "message": "Unknown hardware type {hw_type} for tag {tag_mac}. Try refreshing tag types from the integration options." }, - "invalid_canvas_dimensions": { "message": "Invalid canvas dimensions {width}x{height} for {entity_id}. Device metadata may be corrupt or missing. Try reloading the integration or re-adding the device." }, - "ble_tag_info_unexpected": { "message": "Unexpected error getting tag type for {entity_id}: {error}." }, - "ble_tag_info_unexpected_ble": { "message": "Unexpected error getting BLE tag type for {entity_id}: {error}." }, - "qr_generation_failed": { "message": "Failed to generate QR code: {error}." }, - "image_entity_not_found": { "message": "Image entity {entity_id} not found." }, - "image_entity_no_url": { "message": "No image URL found for entity {entity_id}." }, - "image_download_failed": { "message": "Failed to download image: HTTP {status_code}." }, - "image_data_uri_invalid": { "message": "Invalid data URI: {error}." }, - "image_process_failed": { "message": "Failed to process image: {error}." }, - "font_load_failed": { "message": "Could not load any font. This indicates a problem with the integration installation." }, - "plot_duration_invalid": { "message": "duration must be greater than 0 seconds." }, - "plot_no_data": { "message": "No recorded data found for {entity_id}." }, - "plot_no_valid_points": { "message": "No valid data points found." }, - "plot_yaxis_invalid": { "message": "yaxis.tick_every must be greater than 0." }, - "plot_xlegend_invalid": { "message": "xlegend.interval must be greater than 0." }, - "plot_draw_failed": { "message": "Failed to draw plot: {error}." }, - "plot_bar_invalid": { "message": "Invalid bar data for diagram: {error}." }, - "mdi_metadata_failed": { "message": "Failed to load MDI metadata: {error}." }, - "icon_name_invalid": { "message": "Invalid icon name: {icon_name}." }, - "icon_draw_failed": { "message": "Failed to draw icon: {error}." }, - "icon_draw_failed_named": { "message": "Failed to draw icon {icon_name}: {error}." }, - "led_on_failed": { "message": "Failed to turn on LED." }, - "led_on_error": { "message": "Error turning on LED: {error}." }, - "led_off_failed": { "message": "Failed to turn off LED." }, - "led_off_error": { "message": "Error turning off LED: {error}." }, - "tagtypes_load_failed": { "message": "Failed to load tag type definitions. No stored data available. Check network connectivity or GitHub access." }, - "tagtypes_refresh_failed": { "message": "Failed to refresh tag type definitions. Check network connectivity or GitHub access." }, - "no_hub_configured": { "message": "No AP hub configured. Only BLE devices found." }, - "ble_slots_unavailable": { "message": "No available Bluetooth connection slots for {mac_address}. Add more ESPHome Bluetooth proxies near this device or wait for existing connections to free up. Details: {error}." }, - "ble_device_not_found": { "message": "Device {mac_address} not found." }, - "ble_characteristic_not_resolved": { "message": "Could not resolve characteristic for service {service_uuid}." }, - "ble_connection_failed": { "message": "Failed to connect to {mac_address}: {error}." }, - "ble_write_char_missing": { "message": "Write characteristic not available." }, - "ble_timeout": { "message": "No response received from {mac_address} within {timeout}s." }, - "ble_operation_failed": { "message": "BLE operation {operation} failed after {attempts} attempts: {error}." }, - "ble_operation_retry": { "message": "BLE operation {operation} failed on attempt {attempt}: {error}. Retrying in {delay}s..." }, - "ble_protocol_invalid_response_length": { "message": "Invalid display info response length: {length} (expected at least {expected_length})." }, - "ble_protocol_invalid_command_id": { "message": "Invalid command ID in response: {command_id}." }, - "ble_protocol_payload_too_short": { "message": "Display info payload too short." }, - "opendisplay_config_chunk_short": { "message": "Chunk data too short: {length} bytes." }, - "opendisplay_expected_chunk_zero": { "message": "Expected chunk 0, got chunk {chunk_num}." }, - "opendisplay_config_too_short": { "message": "Config data too short: {length} bytes (need at least {minimum})." }, - "opendisplay_fw_response_short": { "message": "Firmware version response too short: {length} bytes." }, - "opendisplay_fw_version_format": { "message": "Firmware version SHA length {sha_length} exceeds payload ({payload_length} bytes)." }, - "tlv_section_too_short": { "message": "{section} requires {expected} bytes, got {actual}." }, - "tlv_data_too_short": { "message": "Config data too short: {length} bytes (minimum 2)." }, - "tlv_crc_mismatch": { "message": "CRC32 mismatch: expected {expected_crc32}, got {actual_crc32}." }, - "tlv_unknown_packet": { "message": "Unknown packet ID: {packet_id} at offset {offset}." }, - "tlv_packet_too_short": { "message": "Packet ID {packet_id} requires {packet_size} bytes, but only {remaining_bytes} bytes remaining at offset {offset}." }, - "tlv_packet_parse_failed": { "message": "Failed to parse packet type {packet_id} at offset {offset}: {error}." }, - "tlv_no_display_config": { "message": "No display configuration found in device config." }, - "tlv_invalid_dimensions": { "message": "Invalid pixel dimensions: {width}x{height}." }, - "config_flow_invalid_config": { "message": "Device returned invalid configuration data." }, - "config_flow_missing_config": { "message": "Device returned no configuration data." }, - "refresh_config_failed": { "message": "Failed to refresh configuration: {error}." }, - "multiple_errors": { "message": "Multiple errors occurred:\n{errors}" }, - "invalid_payload": { "message": "Invalid payload:\n{errors}" } - } -} +} \ No newline at end of file diff --git a/custom_components/opendisplay/translations/pl.json b/custom_components/opendisplay/translations/pl.json deleted file mode 100644 index 2ad5ff1..0000000 --- a/custom_components/opendisplay/translations/pl.json +++ /dev/null @@ -1,563 +0,0 @@ -{ - "config": { - "step": { - "bluetooth_confirm": { - "title": "Konfiguracja tagu BLE", - "description": "Skonfigurować **{name}**?\n\n**Szczegóły:**\n- Adres: {address}\n- Sygnał: {rssi} dBm\n- Bateria: {battery}\n- Firmware: {fw_version}\n- Wersja konfiguracji: {config_version}" - }, - "dhcp_confirm": { - "title": "Skonfiguruj {hostname} ({ip})", - "description": "Punkt dostępowy OpenDisplay został wykryty w sieci.\n\n**Szczegóły urządzenia:**\n- Nazwa hosta: {hostname}\n- Adres IP: {ip}\n- Adres MAC: {mac}\n\nCzy ten punkt dostępowy powinien zostać dodany do Home Assistant?" - }, - "reconfigure": { - "title": "Zaktualizuj punkt dostępowy", - "description": "Zaktualizuj adres punktu dostępowego OpenDisplay.", - "data": { - "host": "Host lub IP" - }, - "data_description": { - "host": "Nazwa hosta lub adres IP punktu dostępowego OpenDisplay." - } - }, - "user": { - "data": { - "host": "Host lub IP" - }, - "data_description": { - "host": "Nazwa hosta lub adres IP punktu dostępowego OpenDisplay." - } - } - }, - "error": { - "interrogation_failed": "Nie udało się połączyć z urządzeniem i odczytać informacji o wyświetlaczu. Błąd: {error}. Spróbuj ponownie lub sprawdź łączność urządzenia.", - "invalid_device_config": "Urządzenie zwróciło nieprawidłowe dane konfiguracyjne. Skonfiguruj urządzenie ponownie lub zaktualizuj jego firmware." - }, - "abort": { - "single_instance_allowed": "Tylko jeden hub OEPL może być skonfigurowany. Obsługiwanych jest wiele urządzeń BLE, ale tylko jeden hub AP.", - "unsupported_protocol": "Nieobsługiwany protokół firmware BLE. Obsługiwane są tylko ATC i OpenDisplay.", - "invalid_advertising_data": "Nie można przetworzyć danych reklamowych urządzenia. Upewnij się, że urządzenie używa kompatybilnego firmware.", - "no_reconfigure_ble": "Urządzenia BLE nie obsługują rekonfiguracji. Usuń i dodaj urządzenie ponownie, jeśli potrzebna jest zmiana ustawień.", - "cannot_connect": "Nie udało się połączyć z wykrytym punktem dostępowym. Sprawdź, czy urządzenie jest online i dostępne w sieci." - } - }, - "options": { - "step": { - "init": { - "title": "Zarządzanie tagami", - "description": "Wybierz tagi do umieszczenia na czarnej liście. Tagi z listy będą ukryte i ignorowane.", - "data": { - "blacklisted_tags": "Czarna lista tagów", - "button_debounce": "Opóźnienie przycisku (sekundy)", - "nfc_debounce": "Opóźnienie NFC (sekundy)", - "custom_font_dirs": "Niestandardowe katalogi czcionek" - }, - "data_description": { - "blacklisted_tags": "Tagi do ukrycia; tagi na czarnej liście nie będą aktualizowane ani wywoływały usług.", - "button_debounce": "Opóźnienie przed przyjęciem kolejnego naciśnięcia przycisku (sekundy).", - "nfc_debounce": "Opóźnienie przed przyjęciem kolejnego odczytu NFC (sekundy).", - "custom_font_dirs": "Katalogi z dodatkowymi czcionkami do generowanych obrazów (oddzielone przecinkami)." - } - } - }, - "abort": { - "no_options_ble": "Brak konfigurowalnych opcji dla urządzeń BLE. Urządzenia BLE są zarządzane automatycznie i nie wymagają dodatkowych ustawień." - } - }, - "entity": { - "switch": { - "preview": { - "name": "Podgląd obrazów na AP" - }, - "ble": { - "name": "Bluetooth LE" - }, - "nightlyreboot": { - "name": "Nocny restart" - }, - "showtimestamp": { - "name": "Pokaż znacznik czasu" - } - }, - "text": { - "alias": { - "name": "Alias" - }, - "repo": { - "name": "Repozytorium" - }, - "tag_alias": { - "name": "Alias" - } - }, - "select": { - "channel": { - "name": "Kanał" - }, - "led": { - "name": "Jasność diody RGB" - }, - "tft": { - "name": "Jasność TFT" - }, - "maxsleep": { - "name": "Maksymalny czas uśpienia" - }, - "lock": { - "name": "Zablokuj inwentarz tagów" - }, - "wifipower": { - "name": "Moc WiFi" - }, - "language": { - "name": "Język" - }, - "discovery": { - "name": "Metoda wykrywania" - }, - "subghzchannel": { - "name": "Kanał Sub-GHz" - }, - "sleeptime1": { - "name": "Brak aktualizacji między 1 (od)" - }, - "sleeptime2": { - "name": "Brak aktualizacji między 2 (do)" - } - }, - "sensor": { - "ip": { - "name": "Adres IP" - }, - "wifi_ssid": { - "name": "SSID WiFi" - }, - "record_count": { - "name": "Liczba tagów" - }, - "db_size": { - "name": "Rozmiar bazy danych" - }, - "little_fs_free": { - "name": "Wolne LittleFS" - }, - "ap_state": { - "name": "Stan" - }, - "run_state": { - "name": "Stan pracy" - }, - "wifi_rssi": { - "name": "RSSI WiFi" - }, - "heap": { - "name": "Wolna pamięć sterty" - }, - "sys_time": { - "name": "Czas systemowy" - }, - "uptime": { - "name": "Czas działania" - }, - "low_battery_tag_count": { - "name": "Liczba tagów z niskim poziomem baterii" - }, - "timeout_tag_count": { - "name": "Liczba tagów z przekroczonym czasem" - }, - "ps_ram_free": { - "name": "Wolny PSRAM" - }, - "temperature": { - "name": "Temperatura" - }, - "battery_voltage": { - "name": "Napięcie baterii" - }, - "battery_percentage": { - "name": "Poziom baterii" - }, - "last_seen": { - "name": "Ostatnio widziany" - }, - "next_update": { - "name": "Następna aktualizacja" - }, - "next_checkin": { - "name": "Następne zameldowanie" - }, - "lqi": { - "name": "Wskaźnik jakości łącza" - }, - "rssi": { - "name": "RSSI" - }, - "pending_updates": { - "name": "Oczekujące aktualizacje" - }, - "content_mode": { - "name": "Tryb zawartości" - }, - "wakeup_reason": { - "name": "Powód wybudzenia" - }, - "capabilities": { - "name": "Możliwości" - }, - "update_count": { - "name": "Liczba aktualizacji" - }, - "width": { - "name": "Szerokość" - }, - "height": { - "name": "Wysokość" - }, - "runtime": { - "name": "Czas działania" - }, - "boot_count": { - "name": "Liczba uruchomień" - }, - "checkin_count": { - "name": "Liczba zameldowań" - }, - "block_requests": { - "name": "Żądania transferu blokowego" - } - }, - "image": { - "content": { - "name": "Zawartość" - } - }, - "light": { - "led": { - "name": "LED" - } - }, - "button": { - "clear_pending": { - "name": "Wyczyść oczekujące aktualizacje" - }, - "force_refresh": { - "name": "Wymuś odświeżenie treści" - }, - "reboot_tag": { - "name": "Uruchom ponownie tag" - }, - "scan_channels": { - "name": "Skanuj kanały" - }, - "deep_sleep": { - "name": "Głęboki sen" - }, - "reboot_ap": { - "name": "Uruchom ponownie AP" - }, - "refresh_tag_types": { - "name": "Odśwież typy tagów" - }, - "refresh_config": { - "name": "Odśwież konfigurację" - } - }, - "update": { - "firmware": { - "name": "Oprogramowanie układowe" - }, - "opendisplay_ble_firmware": { - "name": "Oprogramowanie OpenDisplay" - } - } - }, - "issues": { - "camera_migration_needed": { - "title": "Przeniesiono encje kamer", - "description": "OpenDisplay przeniósł {count} encje kamer do encji obrazów. Zaktualizuj pulpity i automatyzacje, aby używać nowych encji obrazów. Usunięte encje: {entities}" - } - }, - "preview_features": { - "opendisplay_ble_updates": { - "name": "Aktualizacje firmware OpenDisplay", - "description": "Wyświetla encję aktualizacji firmware dla tagów OpenDisplay BLE, porównując z najnowszym wydaniem OpenDisplay_BLE na GitHub. Instalacja jeszcze niedostępna." - } - }, - "exceptions": { - "ble_device_not_detected": { - "message": "Urządzenie BLE {name} ({mac_address}) nie zostało wykryte w zasięgu Bluetooth." - }, - "ap_cannot_connect": { - "message": "Nie można połączyć z AP pod adresem {host}: {error}" - }, - "ap_failed_load_tags": { - "message": "Nie udało się wczytać tagów z AP pod adresem {host}: {error}" - }, - "ap_timeout_action": { - "message": "Przekroczono czas podczas {action}." - }, - "ap_network_error_action": { - "message": "Błąd sieci podczas {action}: {error}" - }, - "ap_failed_action_http": { - "message": "Nie udało się {action}: HTTP {status_code} - {response_text}" - }, - "device_not_found": { - "message": "Urządzenie {device_id} nie znalezione." - }, - "device_no_identifiers": { - "message": "Nie znaleziono identyfikatorów dla urządzenia {device_id}." - }, - "device_not_opendisplay": { - "message": "Urządzenie {device_id} nie jest urządzeniem OpenDisplay." - }, - "no_targets_specified": { - "message": "Nie określono urządzeń docelowych. Podaj device_id, label_id lub area_id." - }, - "ap_offline": { - "message": "AP OpenDisplay jest offline. Sprawdź połączenie sieciowe i stan AP." - }, - "error_processing_device": { - "message": "Nieoczekiwany błąd podczas przetwarzania urządzenia {entity_id}: {error}" - }, - "ble_upload_bt_disabled": { - "message": "Nie można wysłać do urządzenia BLE {entity_id}: integracja Bluetooth jest wyłączona lub brak dostępnych skanerów." - }, - "ble_no_metadata": { - "message": "Nie znaleziono metadanych dla urządzenia BLE {entity_id}." - }, - "ble_upload_failed": { - "message": "Przesłanie obrazu BLE dla {entity_id} nie powiodło się." - }, - "ble_direct_write_failed": { - "message": "Przesłanie bezpośrednie BLE dla {entity_id} nie powiodło się." - }, - "ble_direct_write_not_supported": { - "message": "Bezpośredni zapis jest obsługiwany tylko dla urządzeń OpenDisplay, a {entity_id} wygląda na urządzenie ATC." - }, - "image_upload_status": { - "message": "Przesyłanie obrazu dla {entity_id} nie powiodło się, kod statusu: {status_code}." - }, - "image_upload_timeout": { - "message": "Przesyłanie obrazu dla {entity_id} przekroczyło czas po {attempts} próbach." - }, - "image_upload_network": { - "message": "Błąd sieci podczas przesyłania obrazu dla {entity_id}: {error}." - }, - "image_upload_failed": { - "message": "Nie udało się przesłać obrazu dla {entity_id}: {error}." - }, - "unexpected_upload": { - "message": "Nieoczekiwany błąd przesyłania dla {entity_id}: {error}." - }, - "unexpected_ble_upload": { - "message": "Nieoczekiwany błąd podczas przesyłania BLE do {entity_id}: {error}." - }, - "unexpected_ble_direct_write": { - "message": "Nieoczekiwany błąd podczas bezpośredniego zapisu BLE do {entity_id}: {error}." - }, - "ap_tag_alias_update_failed": { - "message": "Nie udało się zaktualizować aliasu tagu {tag_mac}: AP zwrócił HTTP {status_code} - {response_text}." - }, - "ap_tag_alias_timeout": { - "message": "Przekroczono czas aktualizacji aliasu dla {tag_mac}. Sprawdź łączność z AP." - }, - "ap_tag_alias_network": { - "message": "Błąd sieci podczas aktualizacji aliasu dla {tag_mac}: {error}." - }, - "ap_tag_alias_unexpected": { - "message": "Nieoczekiwany błąd podczas aktualizacji aliasu dla {tag_mac}: {error}." - }, - "ap_offline_core": { - "message": "AP OpenDisplay jest offline." - }, - "invalid_entity_id_format": { - "message": "Nieprawidłowy format identyfikatora encji: {entity_id}." - }, - "tag_not_registered": { - "message": "Tag {tag_mac} nie jest zarejestrowany w AP. Jeśli tag się zameldował, spróbuj zrestartować Home Assistant." - }, - "tag_blacklisted": { - "message": "Tag {tag_mac} jest obecnie na czarnej liście. Usuń go w opcjach integracji, aby używać." - }, - "tag_inconsistent": { - "message": "Niespójny stan: Tag {tag_mac} jest znany, ale brak danych. Zgłoś jako błąd." - }, - "tag_no_hw_type": { - "message": "Brak typu sprzętu dla tagu {tag_mac}. Poczekaj na kolejny check-in tagu." - }, - "tag_unknown_hw_type": { - "message": "Nieznany typ sprzętu {hw_type} dla tagu {tag_mac}. Spróbuj odświeżyć typy tagów w opcjach integracji." - }, - "invalid_canvas_dimensions": { - "message": "Nieprawidłowe wymiary płótna {width}x{height} dla {entity_id}. Metadane urządzenia mogą być uszkodzone lub brakujące. Spróbuj przeładować integrację lub dodać urządzenie ponownie." - }, - "ble_tag_info_unexpected": { - "message": "Nieoczekiwany błąd podczas pobierania typu tagu dla {entity_id}: {error}." - }, - "ble_tag_info_unexpected_ble": { - "message": "Nieoczekiwany błąd podczas pobierania typu tagu BLE dla {entity_id}: {error}." - }, - "qr_generation_failed": { - "message": "Nie udało się wygenerować kodu QR: {error}." - }, - "image_entity_not_found": { - "message": "Encja obrazu {entity_id} nie została znaleziona." - }, - "image_entity_no_url": { - "message": "Nie znaleziono adresu URL obrazu dla encji {entity_id}." - }, - "image_download_failed": { - "message": "Nie udało się pobrać obrazu: HTTP {status_code}." - }, - "image_data_uri_invalid": { - "message": "Nieprawidłowy identyfikator URI danych: {error}." - }, - "image_process_failed": { - "message": "Nie udało się przetworzyć obrazu: {error}." - }, - "font_load_failed": { - "message": "Nie można załadować żadnej czcionki. Wskazuje to na problem z instalacją integracji." - }, - "plot_duration_invalid": { - "message": "duration musi być większe niż 0 sekund." - }, - "plot_no_data": { - "message": "Brak zarejestrowanych danych dla {entity_id}." - }, - "plot_no_valid_points": { - "message": "Brak prawidłowych punktów danych." - }, - "plot_yaxis_invalid": { - "message": "yaxis.tick_every musi być większe niż 0." - }, - "plot_xlegend_invalid": { - "message": "xlegend.interval musi być większe niż 0." - }, - "plot_draw_failed": { - "message": "Nie udało się narysować wykresu: {error}." - }, - "plot_bar_invalid": { - "message": "Nieprawidłowe dane słupków dla diagramu: {error}." - }, - "mdi_metadata_failed": { - "message": "Nie udało się załadować metadanych MDI: {error}." - }, - "icon_name_invalid": { - "message": "Nieprawidłowa nazwa ikony: {icon_name}." - }, - "icon_draw_failed": { - "message": "Nie udało się narysować ikony: {error}." - }, - "icon_draw_failed_named": { - "message": "Nie udało się narysować ikony {icon_name}: {error}." - }, - "led_on_failed": { - "message": "Nie udało się włączyć diody LED." - }, - "led_on_error": { - "message": "Błąd podczas włączania diody LED: {error}." - }, - "led_off_failed": { - "message": "Nie udało się wyłączyć diody LED." - }, - "led_off_error": { - "message": "Błąd podczas wyłączania diody LED: {error}." - }, - "tagtypes_load_failed": { - "message": "Nie udało się załadować definicji typów tagów. Brak zapisanych danych. Sprawdź łączność sieciową lub dostęp do GitHub." - }, - "tagtypes_refresh_failed": { - "message": "Nie udało się odświeżyć definicji typów tagów. Sprawdź łączność sieciową lub dostęp do GitHub." - }, - "no_hub_configured": { - "message": "Brak skonfigurowanego huba AP. Znaleziono tylko urządzenia BLE." - }, - "ble_slots_unavailable": { - "message": "Brak dostępnych slotów połączeń Bluetooth dla {mac_address}. Dodaj więcej proxy Bluetooth ESPHome w pobliżu lub poczekaj na zwolnienie połączeń. Szczegóły: {error}." - }, - "ble_device_not_found": { - "message": "Urządzenie {mac_address} nie zostało znalezione." - }, - "ble_characteristic_not_resolved": { - "message": "Nie udało się ustalić charakterystyki dla usługi {service_uuid}." - }, - "ble_connection_failed": { - "message": "Nie udało się połączyć z {mac_address}: {error}." - }, - "ble_write_char_missing": { - "message": "Brak dostępnej charakterystyki zapisu." - }, - "ble_timeout": { - "message": "Brak odpowiedzi od {mac_address} w ciągu {timeout}s." - }, - "ble_operation_failed": { - "message": "Operacja BLE {operation} nie powiodła się po {attempts} próbach: {error}." - }, - "ble_operation_retry": { - "message": "Operacja BLE {operation} nie powiodła się w próbie {attempt}: {error}. Ponowna próba za {delay}s..." - }, - "ble_protocol_invalid_response_length": { - "message": "Nieprawidłowa długość odpowiedzi informacji o wyświetlaczu: {length} (oczekiwano co najmniej {expected_length})." - }, - "ble_protocol_invalid_command_id": { - "message": "Nieprawidłowy identyfikator polecenia w odpowiedzi: {command_id}." - }, - "ble_protocol_payload_too_short": { - "message": "Ładunek informacji o wyświetlaczu jest zbyt krótki." - }, - "opendisplay_config_chunk_short": { - "message": "Dane fragmentu są zbyt krótkie: {length} bajtów." - }, - "opendisplay_expected_chunk_zero": { - "message": "Oczekiwano fragmentu 0, otrzymano fragment {chunk_num}." - }, - "opendisplay_config_too_short": { - "message": "Dane konfiguracji są zbyt krótkie: {length} bajtów (wymagane co najmniej {minimum})." - }, - "opendisplay_fw_response_short": { - "message": "Odpowiedź wersji firmware jest zbyt krótka: {length} bajtów." - }, - "opendisplay_fw_version_format": { - "message": "Długość SHA wersji firmware {sha_length} przekracza ładunek ({payload_length} bajtów)." - }, - "tlv_section_too_short": { - "message": "{section} wymaga {expected} bajtów, otrzymano {actual}." - }, - "tlv_data_too_short": { - "message": "Dane konfiguracji są zbyt krótkie: {length} bajtów (minimum 2)." - }, - "tlv_crc_mismatch": { - "message": "Niezgodność CRC32: oczekiwano {expected_crc32}, otrzymano {actual_crc32}." - }, - "tlv_unknown_packet": { - "message": "Nieznany identyfikator pakietu: {packet_id} przy przesunięciu {offset}." - }, - "tlv_packet_too_short": { - "message": "Pakiet o ID {packet_id} wymaga {packet_size} bajtów, ale pozostało tylko {remaining_bytes} bajtów przy przesunięciu {offset}." - }, - "tlv_packet_parse_failed": { - "message": "Nie udało się przetworzyć pakietu {packet_id} przy przesunięciu {offset}: {error}." - }, - "tlv_no_display_config": { - "message": "Brak konfiguracji wyświetlacza w danych urządzenia." - }, - "tlv_invalid_dimensions": { - "message": "Nieprawidłowe wymiary pikseli: {width}x{height}." - }, - "config_flow_invalid_config": { - "message": "Urządzenie zwróciło nieprawidłowe dane konfiguracyjne." - }, - "config_flow_missing_config": { - "message": "Urządzenie nie zwróciło danych konfiguracyjnych." - }, - "refresh_config_failed": { - "message": "Nie udało się odświeżyć konfiguracji: {error}." - }, - "multiple_errors": { - "message": "Wystąpiło wiele błędów:\n{errors}" - }, - "invalid_payload": { - "message": "Nieprawidłowy ładunek:\n{errors}" - } - } -} diff --git a/custom_components/opendisplay/translations/pt.json b/custom_components/opendisplay/translations/pt.json deleted file mode 100644 index 1986557..0000000 --- a/custom_components/opendisplay/translations/pt.json +++ /dev/null @@ -1,377 +0,0 @@ -{ - "config": { - "step": { - "bluetooth_confirm": { - "title": "Configurar Etiqueta BLE", - "description": "Configurar **{name}**?\n\n**Detalhes:**\n- Endereço: {address}\n- Sinal: {rssi} dBm\n- Bateria: {battery}\n- Firmware: {fw_version}\n- Versão Config: {config_version}" - }, - "dhcp_confirm": { - "title": "Configurar {hostname} ({ip})", - "description": "Um ponto de acesso OpenDisplay foi descoberto na rede.\n\n**Detalhes do dispositivo:**\n- Nome do host: {hostname}\n- Endereço IP: {ip}\n- Endereço MAC: {mac}\n\nEste ponto de acesso deve ser adicionado ao Home Assistant?" - }, - "reconfigure": { - "title": "Atualizar Ponto de Acesso", - "description": "Atualize o endereço do ponto de acesso OpenDisplay.", - "data": { - "host": "Host ou IP" - }, - "data_description": { - "host": "Nome do host ou IP do ponto de acesso OpenDisplay." - } - }, - "user": { - "data": { - "host": "Host ou IP" - }, - "data_description": { - "host": "Nome do host ou IP do ponto de acesso OpenDisplay." - } - } - }, - "error": { - "interrogation_failed": "Falha ao conectar ao dispositivo e recuperar informações do display. Erro: {error}. Tente novamente ou verifique a conectividade do dispositivo.", - "invalid_device_config": "O dispositivo retornou dados de configuração inválidos. Por favor, reconfigure o dispositivo ou atualize o firmware." - }, - "abort": { - "single_instance_allowed": "Apenas um hub OEPL pode ser configurado. Múltiplos dispositivos BLE são suportados, mas apenas um hub AP é permitido.", - "unsupported_protocol": "Protocolo de firmware BLE não suportado. Apenas firmware ATC e OpenDisplay são suportados.", - "invalid_advertising_data": "Não foi possível analisar os dados de advertising do dispositivo. Por favor, certifique-se de que o dispositivo está usando firmware compatível.", - "no_reconfigure_ble": "Dispositivos BLE não suportam reconfiguração. Remova e adicione o dispositivo novamente se precisar alterar suas definições.", - "cannot_connect": "Falha ao conectar ao ponto de acesso descoberto. Verifique se o dispositivo está online e acessível na rede." - } - }, - "options": { - "step": { - "init": { - "title": "Gestão de Etiquetas", - "description": "Selecione as etiquetas para lista negra. Etiquetas na lista negra serão ocultadas e ignoradas.", - "data": { - "blacklisted_tags": "Etiquetas na Lista Negra", - "button_debounce": "Tempo de Debounce do Botão (segundos)", - "nfc_debounce": "Tempo de Debounce NFC (segundos)", - "custom_font_dirs": "Diretórios de Fontes Personalizadas" - }, - "data_description": { - "blacklisted_tags": "Tags para ocultar; tags na lista negra não serão atualizadas nem disparam serviços.", - "button_debounce": "Atraso antes de aceitar outro acionamento do botão (segundos).", - "nfc_debounce": "Atraso antes de aceitar outro toque NFC (segundos).", - "custom_font_dirs": "Diretórios separados por vírgula com fontes adicionais para imagens geradas." - } - } - }, - "abort": { - "no_options_ble": "Não há opções configuráveis disponíveis para dispositivos BLE. Os dispositivos BLE são gerenciados automaticamente e não requerem configuração adicional." - } - }, - "entity": { - "switch": { - "preview": { - "name": "Pré-visualizar Imagens no AP" - }, - "ble": { - "name": "Bluetooth LE" - }, - "nightlyreboot": { - "name": "Reinício Noturno" - }, - "showtimestamp": { - "name": "Mostrar carimbo de tempo" - } - }, - "text": { - "alias": { - "name": "Alias" - }, - "repo": { - "name": "Repositório" - }, - "tag_alias": { - "name": "Alias" - } - }, - "select": { - "channel": { - "name": "Canal" - }, - "led": { - "name": "Brilho do LED RGB" - }, - "tft": { - "name": "Brilho do TFT" - }, - "maxsleep": { - "name": "Tempo máximo de sono" - }, - "lock": { - "name": "Bloquear inventário de etiquetas" - }, - "wifipower": { - "name": "Potência do WiFi" - }, - "language": { - "name": "Idioma" - }, - "discovery": { - "name": "Método de Descoberta" - }, - "subghzchannel": { - "name": "Canal Sub-GHz" - }, - "sleeptime1": { - "name": "Sem atualizações entre 1 (de)" - }, - "sleeptime2": { - "name": "Sem atualizações entre 2 (para)" - } - }, - "sensor": { - "ip": { - "name": "Endereço IP" - }, - "wifi_ssid": { - "name": "WiFi SSID" - }, - "record_count": { - "name": "Contagem de Etiquetas" - }, - "db_size": { - "name": "Tamanho da Base de Dados" - }, - "little_fs_free": { - "name": "LittleFS Livre" - }, - "ap_state": { - "name": "Estado" - }, - "run_state": { - "name": "Estado de Execução" - }, - "wifi_rssi": { - "name": "WiFi RSSI" - }, - "heap": { - "name": "Heap Livre" - }, - "sys_time": { - "name": "Hora do Sistema" - }, - "uptime": { - "name": "Tempo de Atividade" - }, - "low_battery_tag_count": { - "name": "Contagem de Etiquetas com Bateria Fraca" - }, - "timeout_tag_count": { - "name": "Contagem de Etiquetas Expiradas" - }, - "ps_ram_free": { - "name": "PSRAM Livre" - }, - "temperature": { - "name": "Temperatura" - }, - "battery_voltage": { - "name": "Voltagem da Bateria" - }, - "battery_percentage": { - "name": "Percentagem da Bateria" - }, - "last_seen": { - "name": "Última Vez Visto" - }, - "next_update": { - "name": "Próxima Atualização" - }, - "next_checkin": { - "name": "Próximo Checkin" - }, - "lqi": { - "name": "Índice de Qualidade de Ligação" - }, - "rssi": { - "name": "RSSI" - }, - "pending_updates": { - "name": "Atualizações Pendentes" - }, - "content_mode": { - "name": "Modo de Conteúdo" - }, - "wakeup_reason": { - "name": "Razão de Despertar" - }, - "capabilities": { - "name": "Capacidades" - }, - "update_count": { - "name": "Contagem de Atualizações" - }, - "width": { - "name": "Largura" - }, - "height": { - "name": "Altura" - }, - "runtime": { - "name": "Tempo de Execução" - }, - "boot_count": { - "name": "Contagem de Arranques" - }, - "checkin_count": { - "name": "Contagem de Checkins" - }, - "block_requests": { - "name": "Bloquear Pedidos de Transferência" - } - }, - "image": { - "content": { - "name": "Conteúdo" - } - }, - "light": { - "led": { - "name": "LED" - } - }, - "button": { - "clear_pending": { - "name": "Limpar Atualizações Pendentes" - }, - "force_refresh": { - "name": "Forçar Atualização de Conteúdo" - }, - "reboot_tag": { - "name": "Reiniciar Etiqueta" - }, - "scan_channels": { - "name": "Analisar Canais" - }, - "deep_sleep": { - "name": "Sono Profundo" - }, - "reboot_ap": { - "name": "Reiniciar AP" - }, - "refresh_tag_types": { - "name": "Atualizar Tipos de Etiqueta" - }, - "refresh_config": { - "name": "Atualizar Configuração" - } - }, - "update": { - "firmware": { - "name": "Firmware" - }, - "opendisplay_ble_firmware": { - "name": "Firmware OpenDisplay" - } - } - }, - "issues": { - "camera_migration_needed": { - "title": "Entidades de câmera migradas", - "description": "OpenDisplay migrou {count} entidades de câmera para entidades de imagem. Atualize os seus dashboards e automações para usar as novas entidades de imagem. Entidades removidas: {entities}" - } - }, - "preview_features": { - "opendisplay_ble_updates": { - "name": "Atualizações de firmware OpenDisplay", - "description": "Mostra uma entidade de atualização de firmware para tags OpenDisplay BLE comparando a versão instalada com o último release do OpenDisplay_BLE no GitHub. Instalação ainda não disponível." - } - }, - "exceptions": { - "ble_device_not_detected": "Dispositivo BLE {name} ({mac_address}) não detectado no alcance do Bluetooth.", - "ap_cannot_connect": "Não foi possível conectar ao AP em {host}: {error}.", - "ap_failed_load_tags": "Não foi possível carregar tags do AP em {host}: {error}.", - "ap_timeout_action": "Tempo esgotado durante {action}.", - "ap_network_error_action": "Erro de rede durante {action}: {error}.", - "ap_failed_action_http": "Falha ao {action}: HTTP {status_code} - {response_text}.", - "device_not_found": "Dispositivo {device_id} não encontrado.", - "device_no_identifiers": "Nenhum identificador encontrado para o dispositivo {device_id}.", - "device_not_opendisplay": "O dispositivo {device_id} não é um dispositivo OpenDisplay.", - "no_targets_specified": "Nenhum dispositivo de destino especificado. Informe device_id, label_id ou area_id.", - "ap_offline": "O AP OpenDisplay está offline. Verifique a conexão de rede e o status do AP.", - "error_processing_device": "Erro inesperado ao processar o dispositivo {entity_id}: {error}.", - "ble_upload_bt_disabled": "Não é possível enviar para o dispositivo BLE {entity_id}: integração Bluetooth desativada ou sem scanners disponíveis.", - "ble_no_metadata": "Nenhum metadado encontrado para o dispositivo BLE {entity_id}.", - "ble_upload_failed": "Falha no envio de imagem BLE para {entity_id}.", - "ble_direct_write_not_supported": "Gravação direta é suportada apenas para dispositivos OpenDisplay, mas {entity_id} parece ser um dispositivo ATC.", - "image_upload_status": "Falha no upload de imagem para {entity_id} com código de status: {status_code}.", - "image_upload_timeout": "Tempo esgotado no upload de imagem para {entity_id} após {attempts} tentativas.", - "image_upload_network": "Erro de rede ao enviar imagem para {entity_id}: {error}.", - "image_upload_failed": "Falha ao enviar imagem para {entity_id}: {error}.", - "unexpected_upload": "Erro inesperado de upload para {entity_id}: {error}.", - "unexpected_ble_upload": "Erro inesperado durante upload BLE para {entity_id}: {error}.", - "unexpected_ble_direct_write": "Erro inesperado durante gravação direta BLE para {entity_id}: {error}.", - "ap_tag_alias_update_failed": "Falha ao atualizar o alias do tag {tag_mac}: AP retornou HTTP {status_code} - {response_text}.", - "ap_tag_alias_timeout": "Tempo esgotado ao atualizar o alias de {tag_mac}. Verifique a conectividade com o AP.", - "ap_tag_alias_network": "Erro de rede ao atualizar o alias de {tag_mac}: {error}.", - "ap_tag_alias_unexpected": "Erro inesperado ao atualizar o alias de {tag_mac}: {error}.", - "ap_offline_core": "O AP OpenDisplay está offline.", - "tag_not_registered": "Tag {tag_mac} não está registrada no AP. Se o tag fez check-in, tente reiniciar o Home Assistant.", - "tag_blacklisted": "Tag {tag_mac} está atualmente na lista de bloqueio. Remova-a nas opções da integração para utilizá-la.", - "tag_inconsistent": "Estado inconsistente: Tag {tag_mac} é conhecida, mas não há dados. Relate como bug.", - "tag_no_hw_type": "Nenhum tipo de hardware encontrado para o tag {tag_mac}. Aguarde o próximo check-in do tag.", - "tag_unknown_hw_type": "Tipo de hardware {hw_type} desconhecido para o tag {tag_mac}. Tente atualizar os tipos de tag nas opções da integração.", - "invalid_canvas_dimensions": "Dimensões inválidas da tela {width}x{height} para {entity_id}. Metadados do dispositivo podem estar corrompidos ou ausentes. Recarregue a integração ou readicione o dispositivo.", - "ble_tag_info_unexpected": "Erro inesperado ao obter o tipo do tag para {entity_id}: {error}.", - "ble_tag_info_unexpected_ble": "Erro inesperado ao obter o tipo do tag BLE para {entity_id}: {error}.", - "qr_generation_failed": "Falha ao gerar QR code: {error}.", - "image_entity_not_found": "Entidade de imagem {entity_id} não encontrada.", - "image_entity_no_url": "Nenhuma URL de imagem encontrada para a entidade {entity_id}.", - "image_download_failed": "Falha ao baixar a imagem: HTTP {status_code}.", - "image_data_uri_invalid": "Data URI inválida: {error}.", - "image_process_failed": "Falha ao processar a imagem: {error}.", - "font_load_failed": "Não foi possível carregar nenhuma fonte. Isso indica um problema na instalação da integração.", - "plot_duration_invalid": "duration deve ser maior que 0 segundos.", - "plot_no_data": "Nenhum dado registrado encontrado para {entity_id}.", - "plot_no_valid_points": "Nenhum ponto de dado válido encontrado.", - "plot_yaxis_invalid": "yaxis.tick_every deve ser maior que 0.", - "plot_xlegend_invalid": "xlegend.interval deve ser maior que 0.", - "plot_draw_failed": "Falha ao desenhar o gráfico: {error}.", - "plot_bar_invalid": "Dados de barra inválidos para o diagrama: {error}.", - "mdi_metadata_failed": "Falha ao carregar metadados MDI: {error}.", - "icon_name_invalid": "Nome de ícone inválido: {icon_name}.", - "icon_draw_failed": "Falha ao desenhar o ícone: {error}.", - "icon_draw_failed_named": "Falha ao desenhar o ícone {icon_name}: {error}.", - "led_on_failed": "Não foi possível ligar o LED.", - "led_on_error": "Erro ao ligar o LED: {error}.", - "led_off_failed": "Não foi possível desligar o LED.", - "led_off_error": "Erro ao desligar o LED: {error}.", - "tagtypes_load_failed": "Não foi possível carregar definições de tipos de tag. Nenhum dado armazenado disponível. Verifique conectividade de rede ou acesso ao GitHub.", - "tagtypes_refresh_failed": "Não foi possível atualizar definições de tipos de tag. Verifique conectividade de rede ou acesso ao GitHub.", - "no_hub_configured": "Nenhum hub AP configurado. Apenas dispositivos BLE encontrados.", - "ble_slots_unavailable": "Sem slots de conexão Bluetooth disponíveis para {mac_address}. Adicione mais proxies Bluetooth ESPHome próximos ou aguarde conexões liberarem. Detalhes: {error}.", - "ble_device_not_found": "Dispositivo {mac_address} não encontrado.", - "ble_characteristic_not_resolved": "Não foi possível resolver a característica para o serviço {service_uuid}.", - "ble_connection_failed": "Falha ao conectar a {mac_address}: {error}.", - "ble_write_char_missing": "Característica de escrita não disponível.", - "ble_timeout": "Nenhuma resposta recebida de {mac_address} em {timeout}s.", - "ble_operation_failed": "Operação BLE {operation} falhou após {attempts} tentativas: {error}.", - "ble_operation_retry": "Operação BLE {operation} falhou na tentativa {attempt}: {error}. Nova tentativa em {delay}s...", - "opendisplay_config_chunk_short": "Dados do chunk curtos demais: {length} bytes.", - "opendisplay_expected_chunk_zero": "Esperado o chunk 0, recebido o chunk {chunk_num}.", - "opendisplay_config_too_short": "Dados de configuração curtos demais: {length} bytes (mínimo {minimum}).", - "opendisplay_fw_response_short": "Resposta de firmware curta demais: {length} bytes.", - "opendisplay_fw_version_format": "Tamanho do SHA de firmware {sha_length} excede o payload ({payload_length} bytes).", - "tlv_section_too_short": "{section} requer {expected} bytes, recebido {actual}.", - "tlv_data_too_short": "Dados de configuração curtos demais: {length} bytes (mínimo 2).", - "tlv_crc_mismatch": "CRC32 não confere: esperado {expected_crc32}, obtido {actual_crc32}.", - "tlv_unknown_packet": "ID de pacote desconhecida: {packet_id} no deslocamento {offset}.", - "tlv_packet_too_short": "ID de pacote {packet_id} requer {packet_size} bytes, mas restam apenas {remaining_bytes} bytes no deslocamento {offset}.", - "tlv_packet_parse_failed": "Falha ao analisar o pacote {packet_id} no deslocamento {offset}: {error}.", - "tlv_no_display_config": "Nenhuma configuração de display encontrada nos dados do dispositivo.", - "tlv_invalid_dimensions": "Dimensões de pixels inválidas: {width}x{height}.", - "config_flow_invalid_config": "O dispositivo retornou dados de configuração inválidos.", - "config_flow_missing_config": "O dispositivo não retornou dados de configuração.", - "refresh_config_failed": "Falha ao atualizar a configuração: {error}.", - "ble_protocol_invalid_response_length": "Comprimento inválido da resposta de informações do display: {length} (mínimo {expected_length}).", - "ble_protocol_invalid_command_id": "ID de comando inválida na resposta: {command_id}.", - "ble_protocol_payload_too_short": "Payload de informações do display curto demais.", - "multiple_errors": { "message": "Ocorreram vários erros:\n{errors}" }, - "invalid_payload": { "message": "Payload inválido:\n{errors}" } - } -} diff --git a/custom_components/opendisplay/update.py b/custom_components/opendisplay/update.py deleted file mode 100644 index 104493f..0000000 --- a/custom_components/opendisplay/update.py +++ /dev/null @@ -1,214 +0,0 @@ -from __future__ import annotations - -from datetime import datetime, timedelta -import logging - -from awesomeversion import AwesomeVersion -from homeassistant.components.labs import async_is_preview_feature_enabled, async_listen -from homeassistant.components.update import ( - UpdateDeviceClass, - UpdateEntity, - UpdateEntityFeature, -) -from homeassistant.core import HomeAssistant, callback -from homeassistant.helpers.aiohttp_client import async_get_clientsession -from homeassistant.helpers.entity import EntityCategory -from homeassistant.helpers.entity_platform import AddEntitiesCallback - -from .ble import BLEDeviceMetadata -from .const import DOMAIN -from .entity import OpenDisplayBLEEntity -from .runtime_data import OpenDisplayBLERuntimeData -from .util import is_ble_entry - -_LOGGER = logging.getLogger(__name__) - -GITHUB_LATEST_URL = "https://api.github.com/repos/OpenDisplay-org/Firmware/releases/latest" -DEFAULT_RELEASE_URL = "https://github.com/OpenDisplay-org/Firmware/releases" -CACHE_DURATION = timedelta(hours=6) - - -async def async_setup_entry( - hass: HomeAssistant, entry, async_add_entities: AddEntitiesCallback -) -> None: - """Set up OpenDisplay firmware update entity for BLE entries when Labs is enabled.""" - entry_data = entry.runtime_data - if not is_ble_entry(entry_data): - return - - added: dict[str, OpenDisplayBleUpdateEntity] = {} - - async def _remove_entity(entity: "OpenDisplayBleUpdateEntity") -> None: - await entity.async_remove() - if entity.entity_id: - from homeassistant.helpers import entity_registry as er - - er.async_get(hass).async_remove(entity.entity_id) - - @callback - def _sync_feature_state() -> None: - enabled = async_is_preview_feature_enabled(hass, DOMAIN, "opendisplay_ble_updates") - - if enabled and entry.entry_id not in added: - metadata = BLEDeviceMetadata(entry_data.device_metadata or {}) - if not metadata.is_open_display: - _LOGGER.debug( - "Skipping update entity for %s (not OpenDisplay)", entry_data.mac_address - ) - return # OpenDisplay-only - _LOGGER.debug( - "Enabling OpenDisplay firmware update entity for %s", entry_data.mac_address - ) - entity = OpenDisplayBleUpdateEntity(hass, entry, entry_data) - added[entry.entry_id] = entity - async_add_entities([entity]) - return - - if not enabled and (entity := added.pop(entry.entry_id, None)): - _LOGGER.debug( - "Labs disabled; removing OpenDisplay firmware update entity for %s", - entry_data.mac_address, - ) - hass.async_create_task(_remove_entity(entity)) - - # Listen for Labs toggle - entry.async_on_unload( - async_listen(hass, DOMAIN, "opendisplay_ble_updates", _sync_feature_state) - ) - - # Apply current state - _sync_feature_state() - - -class OpenDisplayBleUpdateEntity(OpenDisplayBLEEntity, UpdateEntity): - """Firmware update indicator for OpenDisplay tags.""" - - _attr_has_entity_name = True - _attr_translation_key = "opendisplay_ble_firmware" - _attr_device_class = UpdateDeviceClass.FIRMWARE - _attr_entity_category = EntityCategory.DIAGNOSTIC - _attr_supported_features = UpdateEntityFeature.RELEASE_NOTES - _attr_should_poll = True - _attr_entity_registry_enabled_default = True - - def __init__( - self, - hass: HomeAssistant, - entry, - runtime_data: OpenDisplayBLERuntimeData, - ) -> None: - self.hass = hass - self._entry_data = runtime_data - self._entry = entry - self._latest_version: str | None = None - self._release_url: str | None = None - self._release_notes: str | None = None - self._last_checked: datetime | None = None - self._last_fetch_error: str | None = None - self._mac = runtime_data.mac_address - self._name = runtime_data.name - self._session = async_get_clientsession(hass) - super().__init__(self._mac, self._name, entry) - self._attr_unique_id = f"opendisplay_ble_{self._mac}_firmware_update" - self._attr_installed_version = self._compute_installed_version() - - @property - def available(self) -> bool: - """Keep the update entity available even if the tag is offline.""" - return True - - def _compute_installed_version(self) -> str | None: - metadata_dict = self._entry_data.device_metadata or {} - metadata = BLEDeviceMetadata(metadata_dict) - fw = metadata.fw_version - if fw not in ("", 0, None): - _LOGGER.debug("Firmware from metadata for %s: %s", self._mac, fw) - return str(fw) - - from homeassistant.helpers import device_registry as dr - - device_registry = dr.async_get(self.hass) - device = device_registry.async_get_device( - identifiers={(DOMAIN, f"ble_{self._mac}")}, - ) - if device and device.sw_version and device.sw_version.lower() != "unknown": - _LOGGER.debug( - "Firmware from device registry for %s: %s", - self._mac, - device.sw_version, - ) - return device.sw_version - - _LOGGER.debug( - "No firmware version available for %s; metadata=%s registry=%s", - self._mac, - metadata_dict, - device.sw_version if device else None, - ) - return None - - @property - def installed_version(self) -> str | None: - return self._attr_installed_version - - @property - def latest_version(self) -> str | None: - return self._latest_version - - @property - def release_url(self) -> str | None: - return self._release_url or DEFAULT_RELEASE_URL - - async def async_release_notes(self) -> str | None: - return self._release_notes - - async def async_added_to_hass(self) -> None: - # Ensure we have fresh installed_version and fetch latest once on add - self._attr_installed_version = self._compute_installed_version() - await self.async_update() - self.async_write_ha_state() - - async def async_update(self) -> None: - """Refresh installed_version (in case metadata changed) and latest version from GitHub (cached).""" - self._attr_installed_version = self._compute_installed_version() - - now = datetime.utcnow() - if self._last_checked and now - self._last_checked < CACHE_DURATION: - return - - try: - async with self._session.get( - GITHUB_LATEST_URL, - headers={ - "Accept": "application/vnd.github+json", - "User-Agent": "HomeAssistant-OpenDisplay-Firmware-update-entity", - }, - raise_for_status=True, - ) as resp: - data = await resp.json() - - tag = data.get("tag_name") or data.get("name") - if not tag: - _LOGGER.debug("No tag_name/name in GitHub response for %s", self._mac) - return - - normalized = tag[1:] if tag.startswith("v") else tag - self._latest_version = normalized - self._release_url = data.get("html_url") or DEFAULT_RELEASE_URL - self._release_notes = data.get("body") - self._last_checked = now - self._last_fetch_error = None - except Exception as err: - msg = str(err) - if msg != self._last_fetch_error: - _LOGGER.error("Failed to fetch OpenDisplay firmware latest version: %s", msg) - self._last_fetch_error = msg - else: - _LOGGER.debug("Failed to fetch OpenDisplay firmware latest version: %s", msg) - - def version_is_newer(self, latest_version: str, installed_version: str) -> bool: - """Use AwesomeVersion for comparison.""" - try: - return AwesomeVersion(latest_version) > AwesomeVersion(installed_version) - except Exception: - return latest_version != installed_version diff --git a/custom_components/opendisplay/upload.py b/custom_components/opendisplay/upload.py deleted file mode 100644 index 28a39cb..0000000 --- a/custom_components/opendisplay/upload.py +++ /dev/null @@ -1,559 +0,0 @@ -from __future__ import annotations - -import asyncio -import logging -from datetime import datetime -from io import BytesIO -from time import perf_counter -from typing import Final - -import async_timeout -import requests -from requests_toolbelt import MultipartEncoder -from PIL import Image - -from homeassistant.core import HomeAssistant -from homeassistant.exceptions import ServiceValidationError, HomeAssistantError -from homeassistant.helpers.dispatcher import async_dispatcher_send -from .runtime_data import OpenDisplayBLERuntimeData -from .const import DOMAIN, SIGNAL_TAG_IMAGE_UPDATE -from .ble import BLEConnection, BLEImageUploader, BLEDeviceMetadata, get_protocol_by_name, BLEConnectionError, \ - BLETimeoutError, BLEProtocolError - -_LOGGER: Final = logging.getLogger(__name__) - -DITHER_DISABLED = 0 -DITHER_FLOYD_BURKES = 1 -DITHER_ORDERED = 2 -DITHER_DEFAULT = DITHER_ORDERED - -MAX_RETRIES = 3 -INITIAL_BACKOFF = 2 # seconds - - -def image_to_jpeg_bytes(image: Image.Image, quality: int | str = 95) -> bytes: - """Encode a PIL image as JPEG bytes for AP upload or HA image preview.""" - buffer = BytesIO() - image.convert("RGB").save(buffer, format="JPEG", quality=quality) - return buffer.getvalue() - - -class UploadQueueHandler: - """Handle queued image uploads to the AP. - - Manages a queue of image upload tasks to prevent overwhelming the AP with concurrent requests. - - Features include: - - - Maximum concurrent upload limit - - Cooldown period between uploads - - Task tracking and status reporting - - This helps maintain AP stability while processing multiple image requests from different parts of Home Assistant. - """ - - def __init__(self, max_concurrent: int = 1, cooldown: float = 1.0): - """Initialize the upload queue handler. - - Args: - max_concurrent: Maximum number of concurrent uploads (default: 1) - cooldown: Cooldown period in seconds between uploads (default: 1.0) - """ - self._queue = asyncio.Queue() - self._max_concurrent = max_concurrent - self._cooldown = cooldown - self._active_uploads = 0 - self._last_upload = None - self._lock = asyncio.Lock() - self._processing = False - self._processor_task = None # Track the processor task - self._errors = [] # Collect errors from failed uploads - - def __str__(self): - """Return queue status string.""" - return f"Queue(active={self._active_uploads}, size={self._queue.qsize()})" - - async def add_to_queue(self, upload_func, *args, **kwargs): - """Add an upload task to the queue. - - Queues an upload function with its arguments for later execution. - Starts the queue processor if it's not already running. - - Args: - upload_func: Async function that performs the actual upload - *args: Positional arguments to pass to the upload function - **kwargs: Keyword arguments to pass to the upload function - """ - - entity_id = next((arg for arg in args if isinstance(arg, str) and "." in arg), "unknown") - - _LOGGER.debug("Adding upload task to queue for %s. %s", entity_id, self) - # Add a task to the queue - await self._queue.put((upload_func, args, kwargs)) - - # Start the processing queue if not already running - if not self._processing: - _LOGGER.debug("Starting upload queue processor for %s", entity_id) - self._processor_task = asyncio.create_task(self._process_queue()) - - async def wait_for_current_batch(self): - """Wait for all currently queued uploads to complete. - - This allows service handlers to wait for uploads without blocking - the Home Assistant event loop (uses async/await). - - Returns: - list: List of exception messages from failed uploads (empty if all succeeded) - """ - if self._processor_task and not self._processor_task.done(): - _LOGGER.debug("Waiting for upload queue to complete") - await self._processor_task - - # Retrieve any errors that were collected during processing - if self._errors: - errors = self._errors.copy() - self._errors = [] # Clear for next batch - return errors - - return [] # No errors - - async def _process_queue(self): - """Process queued upload tasks with true parallelism. - - Long-running task that processes the upload queue, respecting: - - - Maximum concurrent upload limit - - Cooldown period between uploads - - Creates background tasks for parallel execution instead of blocking. - Handles errors in individual uploads without stopping queue processing. - This method runs until the queue is empty, then terminates. - """ - self._processing = True - _LOGGER.debug("Upload queue processor started. %s", self) - - running_tasks = set() - - try: - while not self._queue.empty() or running_tasks: - # Clean up completed tasks - if running_tasks: - done_tasks = {task for task in running_tasks if task.done()} - for task in done_tasks: - running_tasks.remove(task) - # Get the result to propagate any exceptions - try: - await task - except (ServiceValidationError, HomeAssistantError) as err: - # Collect validation and operational errors - _LOGGER.error("Background upload task failed: %s", str(err)) - # Don't raise - collect error and continue processing other uploads - if not hasattr(self, '_errors'): - self._errors = [] - self._errors.append(str(err)) - except Exception as err: - # Unexpected errors - collect and continue - _LOGGER.error("Unexpected background upload error: %s", str(err), exc_info=True) - if not hasattr(self, '_errors'): - self._errors = [] - self._errors.append(f"Unexpected upload error: {str(err)}") - - # Check if new uploads can be started - async with self._lock: - if (not self._queue.empty() and - self._active_uploads < self._max_concurrent): - - # Check cooldown period - if self._last_upload: - elapsed = (datetime.now() - self._last_upload).total_seconds() - if elapsed < self._cooldown: - _LOGGER.debug("In cooldown period (%.1f seconds remaining)", - self._cooldown - elapsed) - await asyncio.sleep(self._cooldown - elapsed) - - # Get next task from queue - upload_func, args, kwargs = await self._queue.get() - entity_id = next((arg for arg in args if isinstance(arg, str) and "." in arg), "unknown") - - # Create and start background task - task = asyncio.create_task(self._execute_upload(upload_func, args, kwargs, entity_id)) - running_tasks.add(task) - - # Update last upload timestamp - self._last_upload = datetime.now() - - else: - # Wait a bit before checking again - await asyncio.sleep(0.1) - - finally: - self._processing = False - _LOGGER.debug("Upload queue processor finished. %s", self) - # Errors are stored in self._errors and will be retrieved by wait_for_current_batch() - # Don't raise here - let the caller handle them - - async def _execute_upload(self, upload_func, args, kwargs, entity_id): - """Execute a single upload task in the background.""" - try: - # TODO don't we need the incrementation logic here? - _LOGGER.debug("Starting upload for %s", entity_id) - await upload_func(*args, **kwargs) - _LOGGER.info("Successfully completed upload for %s", entity_id) - - except (ServiceValidationError, HomeAssistantError) as err: - # Log and re-raise - let service handler collect errors - _LOGGER.error("Upload failed for %s: %s", entity_id, str(err)) - raise - except Exception as err: - # Unexpected error - wrap and raise - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="unexpected_upload", - translation_placeholders={"entity_id": entity_id, "error": str(err)}, - ) from err - finally: - # Decrement active upload counter - async with self._lock: - self._active_uploads -= 1 - # Mark task as done - self._queue.task_done() - _LOGGER.debug("Upload task for %s finished. %s", entity_id, self) - - -async def upload_to_hub(hub, entity_id: str, img: Image.Image, dither: int, ttl: int, - preload_type: int = 0, preload_lut: int = 0, lut: int = 1, - render_duration: float | None = None) -> None: - """Upload image to tag through AP. - - Sends an image to the AP for display on a specific tag using - multipart/form-data POST request. Configures display parameters - such as dithering, TTL, and optional preloading. - - Will retry upload on timeout, with increasing backoff times - - Args: - hub: Hub instance with connection details - entity_id: Entity ID of the target tag - img: Rendered image to encode and upload - dither: Dithering mode (0=none, 1=Floyd-Steinberg, 2=ordered) - ttl: Time-to-live in seconds - preload_type: Type for image preloading (0=disabled) - preload_lut: Look-up table for preloading - lut: Display refresh LUT mode (1=full, 3=fast, 2=fast no-reds, 0=no-repeats) - render_duration: Time spent rendering the image before upload, in seconds - Raises: - HomeAssistantError: If upload fails or times out - """ - url = f"http://{hub.host}/imgupload" - mac = entity_id.split(".")[1].upper() - - _LOGGER.debug("Preparing upload for %s (MAC: %s)", entity_id, mac) - _LOGGER.debug("Upload parameters: dither=%d, ttl=%d, preload_type=%d, preload_lut=%d, lut=%d", - dither, ttl, preload_type, preload_lut, lut) - - # Convert TTL fom seconds to minutes for the AP - ttl_minutes = max(1, ttl // 60) - encode_start = perf_counter() - jpeg_bytes = await hub.hass.async_add_executor_job(image_to_jpeg_bytes, img, "maximum") - jpeg_encode_duration = perf_counter() - encode_start - - backoff_delay = INITIAL_BACKOFF # Try up to MAX_RETRIES times to upload the image, retrying on TimeoutError. - send_start = perf_counter() - response = None - - for attempt in range(1, MAX_RETRIES + 1): - try: - - # Create a new MultipartEncoder for each attempt - fields = { - 'mac': mac, - 'contentmode': "25", - 'dither': str(dither), - 'ttl': str(ttl_minutes), - 'lut': str(lut), - 'image': ('image.jpg', jpeg_bytes, 'image/jpeg'), - } - - if preload_type > 0: - fields.update({ - 'preloadtype': str(preload_type), - 'preloadlut': str(preload_lut), - }) - - mp_encoder = MultipartEncoder(fields=fields) - - async with async_timeout.timeout(30): # 30 second timeout for upload - response = await hub.hass.async_add_executor_job( - lambda: requests.post( - url, - headers={'Content-Type': mp_encoder.content_type}, - data=mp_encoder - ) - ) - - if response.status_code != 200: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="image_upload_status", - translation_placeholders={"entity_id": entity_id, "status_code": response.status_code} - ) - break - - except asyncio.TimeoutError: - if attempt < MAX_RETRIES: - _LOGGER.warning( - "Timeout uploading %s (attempt %d/%d), retrying in %ds…", - entity_id, attempt, MAX_RETRIES, backoff_delay - ) - await asyncio.sleep(backoff_delay) - backoff_delay *= 2 - continue - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="image_upload_timeout", - translation_placeholders={"entity_id": entity_id, "attempts": MAX_RETRIES} - ) - - except requests.exceptions.RequestException as err: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="image_upload_network", - translation_placeholders={"entity_id": entity_id, "error": str(err)} - ) from err - - except Exception as err: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="image_upload_failed", - translation_placeholders={"entity_id": entity_id, "error": str(err)} - ) from err - - send_duration = perf_counter() - send_start - _LOGGER.info( - "AP upload completed for %s: render=%.3fs jpeg_encode=%.3fs send=%.3fs status=%s", - entity_id, - render_duration or 0.0, - jpeg_encode_duration, - send_duration, - response.status_code if response is not None else "unknown", - ) - - -async def upload_to_ble_block( - hass: HomeAssistant, - entity_id: str, - img: Image.Image, - dither: int = 2, - render_duration: float | None = None, -) -> None: - """Upload image to BLE tag using block-based protocol. - - Sends an image to a BLE tag using direct Bluetooth communication. - This bypasses the AP and provides faster upload times. - - Uses protocol-specific service UUID based on device firmware type. - This method is used for ATC devices and as fallback for OpenDisplay devices. - - Args: - hass: Home Assistant instance - entity_id: Entity ID of the target tag - img: Rendered image to prepare and upload - dither: Dithering mode (0=none, 1=Burkes, 2=ordered) - render_duration: Time spent rendering the image before upload, in seconds - - Raises: - HomeAssistantError: If BLE upload fails - """ - - mac = entity_id.split(".")[1].upper() - _LOGGER.debug("Preparing BLE block-based upload for %s (MAC: %s)", entity_id, mac) - - try: - # Get device metadata from Home Assistant data - device_metadata = None - protocol_type = "atc" # Default to ATC for backward compatibility - - # Find the config entry for this BLE device - for entry in hass.config_entries.async_entries(DOMAIN): - runtime_data = getattr(entry, 'runtime_data', None) - if runtime_data is not None and isinstance(runtime_data, OpenDisplayBLERuntimeData): - if runtime_data.mac_address.upper() == mac: - device_metadata = runtime_data.device_metadata - protocol_type = runtime_data.protocol_type - break - - - if not device_metadata: - raise ServiceValidationError( - translation_domain=DOMAIN, - translation_key="ble_no_metadata", - translation_placeholders={"entity_id": entity_id} - ) - - # Get protocol handler for service UUID - protocol = get_protocol_by_name(protocol_type) - _LOGGER.debug("Using protocol %s for device %s", protocol_type, entity_id) - - # Wrap metadata and create DeviceMetadata object - metadata = BLEDeviceMetadata(device_metadata) - - # Upload via BLE using protocol-specific service UUID - async with BLEConnection(hass, mac, protocol.service_uuid, protocol) as conn: - uploader = BLEImageUploader(conn, mac) - success, processed_image = await uploader.upload_image_block_based( - img, - metadata, - protocol_type, - dither, - render_duration, - ) - - if not success: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="ble_upload_failed", - translation_placeholders={"entity_id": entity_id} - ) - - if processed_image is not None: - # Undo rotation for display (ATC rotation is for device memory, not viewing) - display_image = processed_image - if protocol_type == "atc" and metadata.rotatebuffer == 1: - display_image = processed_image.transpose(Image.Transpose.ROTATE_270) - - jpeg_bytes = await hass.async_add_executor_job( - image_to_jpeg_bytes, display_image, 95 - ) - async_dispatcher_send( - hass, - f"{SIGNAL_TAG_IMAGE_UPDATE}_{mac}", - jpeg_bytes - ) - - except ServiceValidationError: - raise # Config/validation errors - propagate unchanged - except (BLEConnectionError, BLETimeoutError, BLEProtocolError) as err: - # BLE-specific errors already inherit from HomeAssistantError - raise # Propagate with specific type - except Exception as err: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="unexpected_ble_upload", - translation_placeholders={"entity_id": entity_id, "error": str(err)} - ) from err - - -async def upload_to_ble_direct( - hass: HomeAssistant, - entity_id: str, - img: Image.Image, - allow_compression: bool = False, - dither: int = 2, - refresh_type: int = 0, - render_duration: float | None = None, -) -> None: - """Upload image to BLE tag using direct write protocol (OpenDisplay only). - - Sends an image to an OpenDisplay BLE tag using direct write mode. - This is faster than block-based upload and supports all color schemes. - - Args: - hass: Home Assistant instance - entity_id: Entity ID of the target tag - img: Rendered image to prepare and upload - allow_compression: Whether zip compression may be used if the result fits - dither: Dithering mode (0=none, 1=Burkes, 2=ordered) - refresh_type: Display refresh mode (0=full, 1=fast, 2=partial, 3=partial2) - render_duration: Time spent rendering the image before upload, in seconds - Raises: - HomeAssistantError: If BLE direct write upload fails - """ - mac = entity_id.split(".")[1].upper() - _LOGGER.debug( - "Preparing BLE direct write upload for %s (MAC: %s, allow_compression=%s, refresh_type=%d)", - entity_id, - mac, - allow_compression, - refresh_type - ) - - try: - # Get device metadata from Home Assistant data - device_metadata = None - protocol_type = "open_display" # Direct write is OpenDisplay only - - # Find the config entry for this BLE device - for entry in hass.config_entries.async_entries(DOMAIN): - runtime_data = getattr(entry, 'runtime_data', None) - if runtime_data is not None and isinstance(runtime_data, OpenDisplayBLERuntimeData): - if runtime_data.mac_address.upper() == mac: - device_metadata = runtime_data.device_metadata - protocol_type = runtime_data.protocol_type - break - - if not device_metadata: - raise ServiceValidationError( - translation_domain=DOMAIN, - translation_key="ble_no_metadata", - translation_placeholders={"entity_id": entity_id} - ) - - # Verify this is an OpenDisplay device - metadata = BLEDeviceMetadata(device_metadata) - if not metadata.is_open_display: - raise ServiceValidationError( - translation_domain=DOMAIN, - translation_key="ble_direct_write_not_supported", - translation_placeholders={"entity_id": entity_id} - ) - - # Get protocol handler for service UUID - protocol = get_protocol_by_name(protocol_type) - _LOGGER.debug("Using protocol %s for direct write on device %s", protocol_type, entity_id) - - # Upload via BLE using direct write protocol - async with BLEConnection(hass, mac, protocol.service_uuid, protocol) as conn: - uploader = BLEImageUploader(conn, mac) - success, processed_image = await uploader.upload_direct_write( - img, - metadata, - allow_compression, - dither, - refresh_type, - render_duration, - ) - - if not success: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="ble_direct_write_failed", - translation_placeholders={"entity_id": entity_id} - ) - - if processed_image is not None: - jpeg_bytes = await hass.async_add_executor_job( - image_to_jpeg_bytes, processed_image, 95 - ) - async_dispatcher_send( - hass, - f"{SIGNAL_TAG_IMAGE_UPDATE}_{mac}", - jpeg_bytes - ) - - except ServiceValidationError: - raise # Config/validation errors - propagate unchanged - except (BLEConnectionError, BLETimeoutError, BLEProtocolError) as err: - raise # BLE operational errors - propagate unchanged - except Exception as err: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="unexpected_ble_direct_write", - translation_placeholders={"entity_id": entity_id, "error": str(err)} - ) from err - - -def create_upload_queues() -> tuple[UploadQueueHandler, UploadQueueHandler]: - """Create BLE and Hub upload queues with appropriate settings.""" - ble_queue = UploadQueueHandler(max_concurrent=1, cooldown=0.1) - hub_queue = UploadQueueHandler(max_concurrent=1, cooldown=1.0) - return ble_queue, hub_queue diff --git a/custom_components/opendisplay/util.py b/custom_components/opendisplay/util.py deleted file mode 100644 index aa9393d..0000000 --- a/custom_components/opendisplay/util.py +++ /dev/null @@ -1,181 +0,0 @@ -from __future__ import annotations - -from .const import DOMAIN -import requests -import logging -from homeassistant.core import HomeAssistant -from homeassistant.exceptions import HomeAssistantError -from homeassistant.helpers.dispatcher import async_dispatcher_send -from .runtime_data import OpenDisplayBLERuntimeData - -_LOGGER = logging.getLogger(__name__) - - -def is_bluetooth_available(hass: HomeAssistant) -> bool: - """Check if Bluetooth integration is available with working scanners. - - Args: - hass: Home Assistant instance - - Returns: - bool: True if Bluetooth integration is loaded with available scanners, False otherwise - """ - try: - # First check if bluetooth integration is loaded - if "bluetooth" not in hass.config.components: - return False - - # Then check if connectable Bluetooth scanners are available - from homeassistant.components import bluetooth - scanner_count = bluetooth.async_scanner_count(hass, connectable=True) - return scanner_count > 0 - - except (ImportError, AttributeError, Exception) as err: - _LOGGER.debug("Bluetooth availability check failed: %s", err) - return False - - -def get_image_folder(hass: HomeAssistant) -> str: - """Return the folder where images are stored. - - Provides the path to the www/opendisplay directory where - generated images are stored. This allows image access through - Home Assistant's web server. - - Args: - hass: Home Assistant instance for config path access - - Returns: - str: Absolute path to the image storage directory - """ - return hass.config.path("www/opendisplay") - - -def get_image_path(hass: HomeAssistant, entity_id: str) -> str: - """Return the path to the image file for a specific tag. - - Generates the full path to a tag's image file, following the - naming convention: opendisplay..jpg - - Args: - hass: Home Assistant instance for config path access - entity_id: The entity ID for the tag (domain.tag_mac) - - Returns: - str: Absolute path to the tag's image file - """ - return hass.config.path("www/opendisplay/opendisplay." + str(entity_id).lower() + ".jpg") - - -def get_hub_from_hass(hass: HomeAssistant): - """ - Get the AP Hub instance from config entries. - - Iterates through all integration config entries to find the AP Hub object, - filtering out BLE entries which are OpenDisplayBLEData instances. - - Args: - hass: Home Assistant instance - - Returns: - Hub: The OEPL AP Hub instance - - Raises: - HomeAssistantError: If no AP hub is configured - """ - for entry in hass.config_entries.async_entries(DOMAIN): - if hasattr(entry, 'runtime_data') and entry.runtime_data is not None: - if not isinstance(entry.runtime_data, OpenDisplayBLERuntimeData): - return entry.runtime_data - - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="no_hub_configured", - ) - - -def is_ble_entry(entry_data) -> bool: - """ - Check if entry data represents a BLE device. - - Args: - entry_data: Runtime data from entry.runtime_data - - Returns: - bool: True if the entry represents a BLE device - """ - return isinstance(entry_data, OpenDisplayBLERuntimeData) - - -def rgb_to_rgb332(rgb: tuple[int, int, int]) -> str: - """Convert RGB values to RGB332 format. - - Converts a standard RGB color tuple (0-255 for each component) - to the 8-bit RGB332 format used by OpenDisplay for LED patterns. - - Args: - rgb: Tuple of (r, g, b) values, each 0-255 - - Returns: - str: Hexadecimal string representation of the RGB332 value - """ - r, g, b = [max(0, min(255, x)) for x in rgb] - r = (r // 32) & 0b111 - g = (g // 32) & 0b111 - b = (b // 64) & 0b11 - rgb332 = (r << 5) | (g << 2) | b - return str(hex(rgb332)[2:].zfill(2)) - - -def int_to_hex_string(number: int) -> str: - """Convert integer to two-digit hex string. - - Args: - number: Integer value to convert - - Returns: - str: Two-digit hexadecimal string - """ - hex_string = hex(number)[2:] - return '0' + hex_string if len(hex_string) == 1 else hex_string - - -def get_mac_from_entity_id(entity_id: str) -> str: - """Extract MAC address from entity_id. - - Args: - entity_id: Entity ID in format 'domain.mac_address' - - Returns: - str: Uppercase MAC address - """ - return entity_id.split(".")[1].upper() - - -def is_ble_device(hass: HomeAssistant, entity_id: str) -> bool: - """Check if entity represents a BLE device (vs AP/Hub device). - - Looks up device in registry and checks if identifier starts with 'ble_'. - - Args: - hass: Home Assistant instance - entity_id: Entity ID in format 'domain.mac_address' - - Returns: - bool: True if BLE device, False if Hub device or not found - """ - from homeassistant.helpers import device_registry as dr - - mac = entity_id.split(".")[1].upper() - device_registry = dr.async_get(hass) - - for device in device_registry.devices.values(): - for identifier in device.identifiers: - if identifier[0] == DOMAIN: - device_mac = identifier[1] - if device_mac.startswith("ble_"): - device_mac = device_mac[4:] - if device_mac.upper() == mac: - return identifier[1].startswith("ble_") - - return False From f307e8b9f000b5fbd6bc2b4941973036b0935828 Mon Sep 17 00:00:00 2001 From: gabriel Date: Sun, 24 May 2026 14:13:18 +0200 Subject: [PATCH 03/51] chore: adapt manifest for custom component (remove quality_scale, add odl-renderer, bump py-opendisplay to 7.2.5) --- custom_components/opendisplay/manifest.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/custom_components/opendisplay/manifest.json b/custom_components/opendisplay/manifest.json index d433568..f6a34ef 100644 --- a/custom_components/opendisplay/manifest.json +++ b/custom_components/opendisplay/manifest.json @@ -14,6 +14,5 @@ "integration_type": "device", "iot_class": "local_push", "loggers": ["opendisplay"], - "quality_scale": "silver", - "requirements": ["py-opendisplay==7.2.3"] + "requirements": ["py-opendisplay==7.2.5", "odl-renderer==0.5.7"] } From 7f4226ba6965ed4683b0196c4b69fb499a11884f Mon Sep 17 00:00:00 2001 From: gabriel Date: Sun, 24 May 2026 14:16:15 +0200 Subject: [PATCH 04/51] feat: add drawcustom service using odl-renderer --- custom_components/opendisplay/icons.json | 3 + custom_components/opendisplay/services.py | 209 ++++++++++++++++++++ custom_components/opendisplay/services.yaml | 74 +++++++ custom_components/opendisplay/strings.json | 36 ++++ 4 files changed, 322 insertions(+) diff --git a/custom_components/opendisplay/icons.json b/custom_components/opendisplay/icons.json index e3e394c..801f909 100644 --- a/custom_components/opendisplay/icons.json +++ b/custom_components/opendisplay/icons.json @@ -2,6 +2,9 @@ "services": { "upload_image": { "service": "mdi:image-move" + }, + "drawcustom": { + "service": "mdi:draw" } } } diff --git a/custom_components/opendisplay/services.py b/custom_components/opendisplay/services.py index 9bbf17d..658f443 100644 --- a/custom_components/opendisplay/services.py +++ b/custom_components/opendisplay/services.py @@ -6,9 +6,12 @@ from datetime import timedelta from enum import IntEnum import io +import logging from typing import TYPE_CHECKING, Any import aiohttp +from epaper_dithering import ColorScheme +from odl_renderer import generate_image from opendisplay import ( AuthenticationFailedError, AuthenticationRequiredError, @@ -238,6 +241,211 @@ async def _async_upload_image(call: ServiceCall) -> None: entry.runtime_data.upload_task = None +_LOGGER = logging.getLogger(__name__) + + +class HADataProvider: + """Provides HA recorder history data to odl_renderer plot elements.""" + + def __init__(self, hass: HomeAssistant) -> None: + self._hass = hass + + async def get_history( + self, + entity_ids: list[str], + start: Any, + end: Any, + ) -> dict[str, list[dict]]: + from functools import partial + + from homeassistant.components.recorder import get_instance + from homeassistant.components.recorder.history import get_significant_states + + raw = await get_instance(self._hass).async_add_executor_job( + partial( + get_significant_states, + self._hass, + start, + end, + entity_ids, + significant_changes_only=False, + minimal_response=True, + no_attributes=False, + ) + ) + result: dict[str, list[dict]] = {} + for entity_id, states in raw.items(): + if not states: + result[entity_id] = [] + continue + first = states[0] + result[entity_id] = [ + {"state": first.state, "last_changed": str(first.last_changed)}, + *states[1:], + ] + return result + + +def _get_entry_for_device_id( + hass: HomeAssistant, device_id: str +) -> "OpenDisplayConfigEntry": + """Return the config entry for a raw device_id string.""" + device_registry = dr.async_get(hass) + if (device := device_registry.async_get(device_id)) is None: + raise ServiceValidationError( + translation_domain=DOMAIN, + translation_key="invalid_device_id", + translation_placeholders={"device_id": device_id}, + ) + mac_address = next( + (conn[1] for conn in device.connections if conn[0] == CONNECTION_BLUETOOTH), + None, + ) + if mac_address is None: + raise ServiceValidationError( + translation_domain=DOMAIN, + translation_key="invalid_device_id", + translation_placeholders={"device_id": device_id}, + ) + entry = hass.config_entries.async_entry_for_domain_unique_id(DOMAIN, mac_address) + if entry is None or entry.state is not ConfigEntryState.LOADED: + raise ServiceValidationError( + translation_domain=DOMAIN, + translation_key="device_not_found", + translation_placeholders={"address": mac_address}, + ) + return entry + + +async def _get_device_ids_from_label(hass: HomeAssistant, label_id: str) -> list[str]: + device_registry = dr.async_get(hass) + entry_ids = {e.entry_id for e in hass.config_entries.async_entries(DOMAIN)} + return [ + d.id + for d in dr.async_entries_for_label(device_registry, label_id) + if d.config_entries & entry_ids + ] + + +async def _get_device_ids_from_area(hass: HomeAssistant, area_id: str) -> list[str]: + device_registry = dr.async_get(hass) + entry_ids = {e.entry_id for e in hass.config_entries.async_entries(DOMAIN)} + return [ + d.id + for d in dr.async_entries_for_area(device_registry, area_id) + if d.config_entries & entry_ids + ] + + +async def _async_drawcustom(call: ServiceCall) -> None: + """Handle the drawcustom service call.""" + hass = call.hass + + device_ids: list[str] = list(call.data.get("device_id", [])) + if isinstance(device_ids, str): + device_ids = [device_ids] + for label_id in call.data.get("label_id", []): + device_ids.extend(await _get_device_ids_from_label(hass, label_id)) + for area_id in call.data.get("area_id", []): + device_ids.extend(await _get_device_ids_from_area(hass, area_id)) + + seen: set[str] = set() + unique_ids = [d for d in device_ids if not (d in seen or seen.add(d))] # type: ignore[func-returns-value] + if not unique_ids: + raise ServiceValidationError( + translation_domain=DOMAIN, + translation_key="no_targets_specified", + ) + + errors: list[str] = [] + for device_id in unique_ids: + try: + await _drawcustom_for_device(hass, device_id, call) + except (HomeAssistantError, ServiceValidationError) as err: + errors.append(f"{device_id}: {err}") + if errors: + raise ServiceValidationError( + translation_domain=DOMAIN, + translation_key="multiple_errors", + translation_placeholders={"errors": "\n".join(errors)}, + ) + + +async def _drawcustom_for_device( + hass: HomeAssistant, device_id: str, call: ServiceCall +) -> None: + entry = _get_entry_for_device_id(hass, device_id) + display = entry.runtime_data.device_config.displays[0] + cs = display.color_scheme_enum + color_scheme = cs if isinstance(cs, ColorScheme) else ColorScheme.from_value(cs) + + img = await generate_image( + width=display.pixel_width, + height=display.pixel_height, + elements=call.data.get("payload", []), + background=call.data.get("background", "white"), + accent_color=color_scheme.accent_color, + session=async_get_clientsession(hass), + data_provider=HADataProvider(hass), + ) + + rotate = call.data.get("rotate", 0) + if rotate: + img = img.rotate(rotate, expand=True) + + if call.data.get("dry-run", False): + _LOGGER.info("Drawcustom dry run for device %s", device_id) + return + + dither_mode: DitherMode = _str_to_int_enum(DitherMode)( + call.data.get("dither", "ordered") + ) + refresh_type = int(call.data.get("refresh_type", 0)) + refresh_mode = RefreshMode.FAST if refresh_type == 1 else RefreshMode.FULL + + address = entry.unique_id + assert address is not None + ble_device = async_ble_device_from_address(hass, address, connectable=True) + if ble_device is None: + raise HomeAssistantError( + translation_domain=DOMAIN, + translation_key="device_not_found", + translation_placeholders={"address": address}, + ) + + raw_key = entry.data.get(CONF_ENCRYPTION_KEY) + if raw_key is not None and len(raw_key) != 32: + entry.async_start_reauth(hass) + raise HomeAssistantError( + translation_domain=DOMAIN, translation_key="authentication_error" + ) + try: + encryption_key = bytes.fromhex(raw_key) if raw_key is not None else None + except ValueError as err: + entry.async_start_reauth(hass) + raise HomeAssistantError( + translation_domain=DOMAIN, translation_key="authentication_error" + ) from err + + try: + async with OpenDisplayDevice( + mac_address=address, + ble_device=ble_device, + config=entry.runtime_data.device_config, + encryption_key=encryption_key, + ) as device: + await device.upload_image(img, refresh_mode=refresh_mode, dither_mode=dither_mode) + except (AuthenticationFailedError, AuthenticationRequiredError) as err: + entry.async_start_reauth(hass) + raise HomeAssistantError( + translation_domain=DOMAIN, translation_key="authentication_error" + ) from err + except OpenDisplayError as err: + raise HomeAssistantError( + translation_domain=DOMAIN, translation_key="upload_error" + ) from err + + @callback def async_setup_services(hass: HomeAssistant) -> None: """Register OpenDisplay services.""" @@ -247,3 +455,4 @@ def async_setup_services(hass: HomeAssistant) -> None: _async_upload_image, schema=SCHEMA_UPLOAD_IMAGE, ) + hass.services.async_register(DOMAIN, "drawcustom", _async_drawcustom) diff --git a/custom_components/opendisplay/services.yaml b/custom_components/opendisplay/services.yaml index 856c942..db79ee4 100644 --- a/custom_components/opendisplay/services.yaml +++ b/custom_components/opendisplay/services.yaml @@ -68,3 +68,77 @@ upload_image: step: 1 mode: slider unit_of_measurement: "%" + +drawcustom: + name: Draw Custom Image + description: Draws a custom image on one or more OpenDisplay devices + target: + fields: + payload: + name: Payload + description: Drawing elements array (see drawcustom documentation) + required: true + example: > + [{"type": "text", "value": "Hello!", "x": 0, "y": 0, "size": 40}] + selector: + object: + background: + name: Background color + description: Background color + required: true + example: white + selector: + select: + options: + - "white" + - "black" + - "accent" + - "red" + - "yellow" + rotate: + name: Rotation + description: Rotation in degrees (0, 90, 180, 270) + required: true + default: 0 + selector: + number: + min: 0 + max: 270 + step: 90 + dither: + name: Dither mode + description: Dithering algorithm + required: true + default: "ordered" + selector: + select: + translation_key: dither_mode + options: + - "none" + - "burkes" + - "ordered" + - "floyd_steinberg" + - "atkinson" + - "stucki" + - "sierra" + - "sierra_lite" + - "jarvis_judice_ninke" + refresh_type: + name: Refresh type + description: E-paper refresh mode (0=full, 1=fast) + required: false + default: "0" + selector: + select: + options: + - label: "Full (best quality)" + value: "0" + - label: "Fast" + value: "1" + dry-run: + name: Dry run + description: Generate image without sending to device + required: true + default: false + selector: + boolean: diff --git a/custom_components/opendisplay/strings.json b/custom_components/opendisplay/strings.json index 0d3e8e9..25ebf4a 100644 --- a/custom_components/opendisplay/strings.json +++ b/custom_components/opendisplay/strings.json @@ -83,6 +83,12 @@ "media_download_error": { "message": "Failed to download media: {error}" }, + "multiple_errors": { + "message": "Errors occurred for one or more devices:\n{errors}" + }, + "no_targets_specified": { + "message": "No target devices specified." + }, "upload_error": { "message": "Failed to upload image to the display." } @@ -155,6 +161,36 @@ "name": "Additional options" } } + }, + "drawcustom": { + "description": "Draws a custom image on one or more OpenDisplay devices.", + "fields": { + "payload": { + "description": "Array of drawing elements.", + "name": "Payload" + }, + "background": { + "description": "Background fill color.", + "name": "Background color" + }, + "rotate": { + "description": "Clockwise rotation in degrees.", + "name": "Rotation" + }, + "dither": { + "description": "Dithering algorithm for color palette conversion.", + "name": "Dither mode" + }, + "refresh_type": { + "description": "Display refresh mode.", + "name": "Refresh type" + }, + "dry-run": { + "description": "Generate image without uploading to the device.", + "name": "Dry run" + } + }, + "name": "Draw custom image" } } } From 8f52faa78a31095e7da81de57de03e444ec06418 Mon Sep 17 00:00:00 2001 From: gabriel Date: Sun, 24 May 2026 16:05:22 +0200 Subject: [PATCH 05/51] feat: add touch event entities for OpenDisplay touch controllers --- custom_components/opendisplay/__init__.py | 12 ++- custom_components/opendisplay/coordinator.py | 15 ++- custom_components/opendisplay/entity.py | 12 ++- custom_components/opendisplay/event.py | 103 +++++++++++++++---- custom_components/opendisplay/strings.json | 12 +++ 5 files changed, 130 insertions(+), 24 deletions(-) diff --git a/custom_components/opendisplay/__init__.py b/custom_components/opendisplay/__init__.py index 4fcc7c9..e517c00 100644 --- a/custom_components/opendisplay/__init__.py +++ b/custom_components/opendisplay/__init__.py @@ -146,13 +146,21 @@ async def async_setup_entry(hass: HomeAssistant, entry: OpenDisplayConfigEntry) ) await hass.config_entries.async_forward_entry_setups( - entry, _FLEX_PLATFORMS if is_flex else _BASE_PLATFORMS + entry, _get_platforms(entry.runtime_data) ) entry.async_on_unload(coordinator.async_start()) return True +def _get_platforms(runtime_data: OpenDisplayRuntimeData) -> list[Platform]: + """Return the platforms to set up for this device.""" + platforms = list(_FLEX_PLATFORMS if runtime_data.is_flex else _BASE_PLATFORMS) + if not runtime_data.is_flex and runtime_data.device_config.touch_controllers: + platforms.append(Platform.EVENT) + return platforms + + async def async_unload_entry( hass: HomeAssistant, entry: OpenDisplayConfigEntry ) -> bool: @@ -163,5 +171,5 @@ async def async_unload_entry( await task return await hass.config_entries.async_unload_platforms( - entry, _FLEX_PLATFORMS if entry.runtime_data.is_flex else _BASE_PLATFORMS + entry, _get_platforms(entry.runtime_data) ) diff --git a/custom_components/opendisplay/coordinator.py b/custom_components/opendisplay/coordinator.py index ab65f0e..b79eaa6 100644 --- a/custom_components/opendisplay/coordinator.py +++ b/custom_components/opendisplay/coordinator.py @@ -4,7 +4,12 @@ import logging from opendisplay import MANUFACTURER_ID, AdvertisementTracker, parse_advertisement -from opendisplay.models.advertisement import AdvertisementData, ButtonChangeEvent +from opendisplay.models.advertisement import ( + AdvertisementData, + ButtonChangeEvent, + TouchChangeEvent, + TouchTracker, +) from homeassistant.components.bluetooth import ( BluetoothChange, @@ -26,6 +31,7 @@ class OpenDisplayUpdate: address: str advertisement: AdvertisementData button_events: list[ButtonChangeEvent] = field(default_factory=list) + touch_events: list[TouchChangeEvent] = field(default_factory=list) class OpenDisplayCoordinator(PassiveBluetoothDataUpdateCoordinator): @@ -42,6 +48,7 @@ def __init__(self, hass: HomeAssistant, address: str) -> None: ) self.data: OpenDisplayUpdate | None = None self._tracker: AdvertisementTracker = AdvertisementTracker() + self.touch_trackers: list[TouchTracker] = [] @callback def _async_handle_unavailable( @@ -79,10 +86,16 @@ def _async_handle_bluetooth_event( ) else: button_events = self._tracker.update(service_info.address, advertisement) + touch_events: list[TouchChangeEvent] = [] + for touch_tracker in self.touch_trackers: + touch_events.extend( + touch_tracker.update(service_info.address, advertisement) + ) self.data = OpenDisplayUpdate( address=service_info.address, advertisement=advertisement, button_events=button_events, + touch_events=touch_events, ) super()._async_handle_bluetooth_event(service_info, change) diff --git a/custom_components/opendisplay/entity.py b/custom_components/opendisplay/entity.py index 6220218..7cd13bc 100644 --- a/custom_components/opendisplay/entity.py +++ b/custom_components/opendisplay/entity.py @@ -1,5 +1,7 @@ """Base entity for OpenDisplay devices.""" +from typing import Generic, TypeVar + from homeassistant.components.bluetooth.passive_update_coordinator import ( PassiveBluetoothCoordinatorEntity, ) @@ -8,16 +10,22 @@ from .coordinator import OpenDisplayCoordinator +_DescriptionT = TypeVar("_DescriptionT", bound=EntityDescription) + -class OpenDisplayEntity(PassiveBluetoothCoordinatorEntity[OpenDisplayCoordinator]): +class OpenDisplayEntity( + PassiveBluetoothCoordinatorEntity[OpenDisplayCoordinator], + Generic[_DescriptionT], +): """Base class for all OpenDisplay entities.""" _attr_has_entity_name = True + entity_description: _DescriptionT def __init__( self, coordinator: OpenDisplayCoordinator, - description: EntityDescription, + description: _DescriptionT, ) -> None: """Initialize the entity.""" super().__init__(coordinator) diff --git a/custom_components/opendisplay/event.py b/custom_components/opendisplay/event.py index df3d05c..e5891af 100644 --- a/custom_components/opendisplay/event.py +++ b/custom_components/opendisplay/event.py @@ -1,7 +1,9 @@ -"""Event platform for OpenDisplay devices — button press/release events.""" +"""Event platform for OpenDisplay devices — button press/release and touch events.""" from dataclasses import dataclass +from opendisplay.models.advertisement import TouchTracker + from homeassistant.components.event import ( EventDeviceClass, EventEntity, @@ -25,21 +27,41 @@ class OpenDisplayEventEntityDescription(EventEntityDescription): button_id: int +@dataclass(frozen=True, kw_only=True) +class OpenDisplayTouchEntityDescription(EventEntityDescription): + """Describes an OpenDisplay touch event entity.""" + + instance: int + + async def async_setup_entry( hass: HomeAssistant, entry: OpenDisplayConfigEntry, async_add_entities: AddConfigEntryEntitiesCallback, ) -> None: - """Set up OpenDisplay event entities from binary_inputs device config.""" + """Set up OpenDisplay event entities from binary_inputs and touch_controllers config.""" coordinator = entry.runtime_data.coordinator + entity_registry = er.async_get(hass) - descriptions: list[OpenDisplayEventEntityDescription] = [] + def _remove_stale(prefix: str, active_ids: set[str]) -> None: + for entity_entry in er.async_entries_for_config_entry( + entity_registry, entry.entry_id + ): + if ( + entity_entry.domain == "event" + and entity_entry.unique_id.startswith(prefix) + and entity_entry.unique_id not in active_ids + ): + entity_registry.async_remove(entity_entry.entity_id) + + # --- Button entities --- + button_descriptions: list[OpenDisplayEventEntityDescription] = [] button_number = 0 for bi in entry.runtime_data.device_config.binary_inputs: for button_id in range(8): # input_flags is a bitmask over 8 pin slots if bi.input_flags & (1 << button_id): button_number += 1 - descriptions.append( + button_descriptions.append( OpenDisplayEventEntityDescription( key=f"button_{bi.instance_number}_{button_id}", translation_key="button", @@ -51,28 +73,49 @@ async def async_setup_entry( ) ) - active_unique_ids = {f"{coordinator.address}-{d.key}" for d in descriptions} - button_unique_id_prefix = f"{coordinator.address}-button_" - entity_registry = er.async_get(hass) - for entity_entry in er.async_entries_for_config_entry( - entity_registry, entry.entry_id - ): - if ( - entity_entry.domain == "event" - and entity_entry.unique_id.startswith(button_unique_id_prefix) - and entity_entry.unique_id not in active_unique_ids - ): - entity_registry.async_remove(entity_entry.entity_id) + _remove_stale( + f"{coordinator.address}-button_", + {f"{coordinator.address}-{d.key}" for d in button_descriptions}, + ) + # --- Touch entities --- + touch_descriptions: list[OpenDisplayTouchEntityDescription] = [] + touch_trackers: list[TouchTracker] = [] + for number, tc in enumerate(entry.runtime_data.device_config.touch_controllers, 1): + touch_descriptions.append( + OpenDisplayTouchEntityDescription( + key=f"touch_{tc.instance_number}", + translation_key="touch", + translation_placeholders={"number": str(number)}, + event_types=["touch_down", "touch_move", "touch_up"], + instance=tc.instance_number, + icon="mdi:gesture-tap", + ) + ) + touch_trackers.append(TouchTracker(tc.instance_number, tc.touch_data_start_byte)) + + coordinator.touch_trackers = touch_trackers + + _remove_stale( + f"{coordinator.address}-touch_", + {f"{coordinator.address}-{d.key}" for d in touch_descriptions}, + ) + + async_add_entities( + OpenDisplayEventEntity(coordinator, description) + for description in button_descriptions + ) async_add_entities( - OpenDisplayEventEntity(coordinator, description) for description in descriptions + OpenDisplayTouchEventEntity(coordinator, description) + for description in touch_descriptions ) -class OpenDisplayEventEntity(OpenDisplayEntity, EventEntity): +class OpenDisplayEventEntity( + OpenDisplayEntity[OpenDisplayEventEntityDescription], EventEntity +): """A button event entity for an OpenDisplay device.""" - entity_description: OpenDisplayEventEntityDescription _last_processed_data: object | None = None @callback @@ -89,3 +132,25 @@ def _handle_coordinator_update(self) -> None: self._trigger_event(event.event_type) self._last_processed_data = data self.async_write_ha_state() + + +class OpenDisplayTouchEventEntity( + OpenDisplayEntity[OpenDisplayTouchEntityDescription], EventEntity +): + """A touch event entity for an OpenDisplay device.""" + + _last_processed_data: object | None = None + + @callback + def _handle_coordinator_update(self) -> None: + """Fire events for touch transitions reported by this coordinator update.""" + data = self.coordinator.data + if data is not None and data is not self._last_processed_data: + for event in data.touch_events: + if event.instance == self.entity_description.instance: + self._trigger_event( + event.event_type, + {"x": event.x, "y": event.y}, + ) + self._last_processed_data = data + self.async_write_ha_state() diff --git a/custom_components/opendisplay/strings.json b/custom_components/opendisplay/strings.json index 25ebf4a..a44ef78 100644 --- a/custom_components/opendisplay/strings.json +++ b/custom_components/opendisplay/strings.json @@ -62,6 +62,18 @@ } } } + }, + "touch": { + "name": "Touch {number}", + "state_attributes": { + "event_type": { + "state": { + "touch_down": "Touch down", + "touch_move": "Touch move", + "touch_up": "Touch up" + } + } + } } }, "sensor": { From a02b4aa868380425c21a7e109bda6801c2837b5e Mon Sep 17 00:00:00 2001 From: gabriel Date: Sun, 24 May 2026 17:27:09 +0200 Subject: [PATCH 06/51] fix: add touch event, drawcustom exception translations to en.json --- .../opendisplay/translations/en.json | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/custom_components/opendisplay/translations/en.json b/custom_components/opendisplay/translations/en.json index e2a7e93..11905ea 100644 --- a/custom_components/opendisplay/translations/en.json +++ b/custom_components/opendisplay/translations/en.json @@ -62,6 +62,18 @@ } } } + }, + "touch": { + "name": "Touch {number}", + "state_attributes": { + "event_type": { + "state": { + "touch_down": "Touch down", + "touch_move": "Touch move", + "touch_up": "Touch up" + } + } + } } }, "sensor": { @@ -83,6 +95,12 @@ "media_download_error": { "message": "Failed to download media: {error}" }, + "multiple_errors": { + "message": "Errors occurred for one or more devices:\n{errors}" + }, + "no_targets_specified": { + "message": "No target devices specified." + }, "upload_error": { "message": "Failed to upload image to the display." } From e49f1c1aa03a55c91f7b861ae42ec3988521440f Mon Sep 17 00:00:00 2001 From: gabriel Date: Sun, 24 May 2026 20:37:37 +0200 Subject: [PATCH 07/51] fix: add version to manifest.json required for custom integrations --- custom_components/opendisplay/manifest.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/custom_components/opendisplay/manifest.json b/custom_components/opendisplay/manifest.json index f6a34ef..9a5e634 100644 --- a/custom_components/opendisplay/manifest.json +++ b/custom_components/opendisplay/manifest.json @@ -14,5 +14,6 @@ "integration_type": "device", "iot_class": "local_push", "loggers": ["opendisplay"], - "requirements": ["py-opendisplay==7.2.5", "odl-renderer==0.5.7"] + "requirements": ["py-opendisplay==7.2.5", "odl-renderer==0.5.7"], + "version": "2.0.2" } From f103e04843a5020650303e1f9425483ff1f18c92 Mon Sep 17 00:00:00 2001 From: gabriel Date: Sun, 24 May 2026 22:14:18 +0200 Subject: [PATCH 08/51] feat: wire up font_dirs in drawcustom, bump odl-renderer to 0.5.8 Pass HA font search directories (/config/www/fonts, /config/media/fonts, /media/fonts) to generate_image() so users can reference custom fonts by name without absolute paths. Requires odl-renderer 0.5.8 which adds the font_dirs parameter to FontManager and generate_image(). --- custom_components/opendisplay/manifest.json | 2 +- custom_components/opendisplay/services.py | 14 ++++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/custom_components/opendisplay/manifest.json b/custom_components/opendisplay/manifest.json index 9a5e634..cf8db16 100644 --- a/custom_components/opendisplay/manifest.json +++ b/custom_components/opendisplay/manifest.json @@ -14,6 +14,6 @@ "integration_type": "device", "iot_class": "local_push", "loggers": ["opendisplay"], - "requirements": ["py-opendisplay==7.2.5", "odl-renderer==0.5.7"], + "requirements": ["py-opendisplay==7.2.5", "odl-renderer==0.5.8"], "version": "2.0.2" } diff --git a/custom_components/opendisplay/services.py b/custom_components/opendisplay/services.py index 658f443..1ab5b2e 100644 --- a/custom_components/opendisplay/services.py +++ b/custom_components/opendisplay/services.py @@ -7,6 +7,7 @@ from enum import IntEnum import io import logging +import os from typing import TYPE_CHECKING, Any import aiohttp @@ -371,6 +372,16 @@ async def _async_drawcustom(call: ServiceCall) -> None: ) +def _font_search_dirs(hass: HomeAssistant) -> list[str]: + """Return font search directories in priority order.""" + candidates = [ + hass.config.path("www/fonts"), + hass.config.path("media/fonts"), + "/media/fonts", + ] + return [p for p in candidates if os.path.isdir(p)] + + async def _drawcustom_for_device( hass: HomeAssistant, device_id: str, call: ServiceCall ) -> None: @@ -387,6 +398,7 @@ async def _drawcustom_for_device( accent_color=color_scheme.accent_color, session=async_get_clientsession(hass), data_provider=HADataProvider(hass), + font_dirs=_font_search_dirs(hass), ) rotate = call.data.get("rotate", 0) @@ -456,3 +468,5 @@ def async_setup_services(hass: HomeAssistant) -> None: schema=SCHEMA_UPLOAD_IMAGE, ) hass.services.async_register(DOMAIN, "drawcustom", _async_drawcustom) + +## TODO: piggyback off of upload image? also vol for validation in drawcustom \ No newline at end of file From f9f71e4a800340be537f54109e31a8fea96c6337 Mon Sep 17 00:00:00 2001 From: gabriel Date: Sun, 24 May 2026 22:23:44 +0200 Subject: [PATCH 09/51] refactor: add drawcustom vol schema and extract shared _async_send_image - SCHEMA_DRAWCUSTOM validates payload, background, rotate, dither, refresh_type and dry-run at the service boundary rather than at runtime inside the renderer - _async_send_image centralises BLE connection, encryption key parsing and error handling; used by both upload_image and drawcustom --- custom_components/opendisplay/services.py | 209 +++++++++++----------- 1 file changed, 104 insertions(+), 105 deletions(-) diff --git a/custom_components/opendisplay/services.py b/custom_components/opendisplay/services.py index 1ab5b2e..4f0d6e1 100644 --- a/custom_components/opendisplay/services.py +++ b/custom_components/opendisplay/services.py @@ -83,6 +83,21 @@ def validate(value: str) -> IntEnum: ) +SCHEMA_DRAWCUSTOM = vol.Schema( + { + vol.Optional("device_id", default=[]): vol.All(cv.ensure_list, [cv.string]), + vol.Optional("label_id", default=[]): vol.All(cv.ensure_list, [cv.string]), + vol.Optional("area_id", default=[]): vol.All(cv.ensure_list, [cv.string]), + vol.Required("payload"): list, + vol.Optional("background", default="white"): cv.string, + vol.Optional("rotate", default=0): vol.All(vol.Coerce(int), vol.In([0, 90, 180, 270])), + vol.Optional("dither", default="ordered"): _str_to_int_enum(DitherMode), + vol.Optional("refresh_type", default=0): vol.All(vol.Coerce(int), vol.In([0, 1])), + vol.Optional("dry-run", default=False): cv.boolean, + } +) + + def _get_entry_for_device(call: ServiceCall) -> OpenDisplayConfigEntry: """Return the config entry for the device targeted by a service call.""" device_id: str = call.data[ATTR_DEVICE_ID] @@ -154,11 +169,71 @@ async def _async_download_image(hass: HomeAssistant, url: str) -> PILImage.Image return await hass.async_add_executor_job(_load_image_from_bytes, data) +async def _async_send_image( + hass: HomeAssistant, + entry: "OpenDisplayConfigEntry", + img: PILImage.Image, + *, + dither_mode: DitherMode, + refresh_mode: RefreshMode, + fit: FitMode = FitMode.CONTAIN, + tone: float | str = "auto", + rotate: Rotation = Rotation.ROTATE_0, +) -> None: + """Resolve BLE device, parse encryption key, and upload a PIL image.""" + address = entry.unique_id + assert address is not None + ble_device = async_ble_device_from_address(hass, address, connectable=True) + if ble_device is None: + raise HomeAssistantError( + translation_domain=DOMAIN, + translation_key="device_not_found", + translation_placeholders={"address": address}, + ) + + raw_key = entry.data.get(CONF_ENCRYPTION_KEY) + if raw_key is not None and len(raw_key) != 32: + entry.async_start_reauth(hass) + raise HomeAssistantError( + translation_domain=DOMAIN, translation_key="authentication_error" + ) + try: + encryption_key = bytes.fromhex(raw_key) if raw_key is not None else None + except ValueError as err: + entry.async_start_reauth(hass) + raise HomeAssistantError( + translation_domain=DOMAIN, translation_key="authentication_error" + ) from err + + try: + async with OpenDisplayDevice( + mac_address=address, + ble_device=ble_device, + config=entry.runtime_data.device_config, + encryption_key=encryption_key, + ) as device: + await device.upload_image( + img, + refresh_mode=refresh_mode, + dither_mode=dither_mode, + tone=tone, + fit=fit, + rotate=rotate, + ) + except (AuthenticationFailedError, AuthenticationRequiredError) as err: + entry.async_start_reauth(hass) + raise HomeAssistantError( + translation_domain=DOMAIN, translation_key="authentication_error" + ) from err + except OpenDisplayError as err: + raise HomeAssistantError( + translation_domain=DOMAIN, translation_key="upload_error" + ) from err + + async def _async_upload_image(call: ServiceCall) -> None: """Handle the upload_image service call.""" entry = _get_entry_for_device(call) - address = entry.unique_id - assert address is not None image_data: dict[str, Any] = call.data[ATTR_IMAGE] rotation: Rotation = call.data[ATTR_ROTATION] @@ -170,14 +245,6 @@ async def _async_upload_image(call: ServiceCall) -> None: tone_compression_pct / 100.0 if tone_compression_pct is not None else "auto" ) - ble_device = async_ble_device_from_address(call.hass, address, connectable=True) - if ble_device is None: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="device_not_found", - translation_placeholders={"address": address}, - ) - current = asyncio.current_task() if (prev := entry.runtime_data.upload_task) is not None and not prev.done(): prev.cancel() @@ -198,45 +265,18 @@ async def _async_upload_image(call: ServiceCall) -> None: else: pil_image = await _async_download_image(call.hass, media.url) - raw_key = entry.data.get(CONF_ENCRYPTION_KEY) - if raw_key is not None and len(raw_key) != 32: - entry.async_start_reauth(call.hass) - raise HomeAssistantError( - translation_domain=DOMAIN, translation_key="authentication_error" - ) - try: - encryption_key = bytes.fromhex(raw_key) if raw_key is not None else None - except ValueError as err: - entry.async_start_reauth(call.hass) - raise HomeAssistantError( - translation_domain=DOMAIN, translation_key="authentication_error" - ) from err - - async with OpenDisplayDevice( - mac_address=address, - ble_device=ble_device, - config=entry.runtime_data.device_config, - encryption_key=encryption_key, - ) as device: - await device.upload_image( - pil_image, - refresh_mode=refresh_mode, - dither_mode=dither_mode, - tone=tone_compression, - fit=fit_mode, - rotate=rotation, - ) + await _async_send_image( + call.hass, + entry, + pil_image, + dither_mode=dither_mode, + refresh_mode=refresh_mode, + fit=fit_mode, + tone=tone_compression, + rotate=rotation, + ) except asyncio.CancelledError: return - except (AuthenticationFailedError, AuthenticationRequiredError) as err: - entry.async_start_reauth(call.hass) - raise HomeAssistantError( - translation_domain=DOMAIN, translation_key="authentication_error" - ) from err - except OpenDisplayError as err: - raise HomeAssistantError( - translation_domain=DOMAIN, translation_key="upload_error" - ) from err finally: if entry.runtime_data.upload_task is current: entry.runtime_data.upload_task = None @@ -342,12 +382,10 @@ async def _async_drawcustom(call: ServiceCall) -> None: """Handle the drawcustom service call.""" hass = call.hass - device_ids: list[str] = list(call.data.get("device_id", [])) - if isinstance(device_ids, str): - device_ids = [device_ids] - for label_id in call.data.get("label_id", []): + device_ids: list[str] = list(call.data["device_id"]) + for label_id in call.data["label_id"]: device_ids.extend(await _get_device_ids_from_label(hass, label_id)) - for area_id in call.data.get("area_id", []): + for area_id in call.data["area_id"]: device_ids.extend(await _get_device_ids_from_area(hass, area_id)) seen: set[str] = set() @@ -393,69 +431,32 @@ async def _drawcustom_for_device( img = await generate_image( width=display.pixel_width, height=display.pixel_height, - elements=call.data.get("payload", []), - background=call.data.get("background", "white"), + elements=call.data["payload"], + background=call.data["background"], accent_color=color_scheme.accent_color, session=async_get_clientsession(hass), data_provider=HADataProvider(hass), font_dirs=_font_search_dirs(hass), ) - rotate = call.data.get("rotate", 0) + rotate: int = call.data["rotate"] if rotate: img = img.rotate(rotate, expand=True) - if call.data.get("dry-run", False): + if call.data["dry-run"]: _LOGGER.info("Drawcustom dry run for device %s", device_id) return - dither_mode: DitherMode = _str_to_int_enum(DitherMode)( - call.data.get("dither", "ordered") - ) - refresh_type = int(call.data.get("refresh_type", 0)) - refresh_mode = RefreshMode.FAST if refresh_type == 1 else RefreshMode.FULL - - address = entry.unique_id - assert address is not None - ble_device = async_ble_device_from_address(hass, address, connectable=True) - if ble_device is None: - raise HomeAssistantError( - translation_domain=DOMAIN, - translation_key="device_not_found", - translation_placeholders={"address": address}, - ) + dither_mode: DitherMode = call.data["dither"] + refresh_mode = RefreshMode.FAST if call.data["refresh_type"] == 1 else RefreshMode.FULL - raw_key = entry.data.get(CONF_ENCRYPTION_KEY) - if raw_key is not None and len(raw_key) != 32: - entry.async_start_reauth(hass) - raise HomeAssistantError( - translation_domain=DOMAIN, translation_key="authentication_error" - ) - try: - encryption_key = bytes.fromhex(raw_key) if raw_key is not None else None - except ValueError as err: - entry.async_start_reauth(hass) - raise HomeAssistantError( - translation_domain=DOMAIN, translation_key="authentication_error" - ) from err - - try: - async with OpenDisplayDevice( - mac_address=address, - ble_device=ble_device, - config=entry.runtime_data.device_config, - encryption_key=encryption_key, - ) as device: - await device.upload_image(img, refresh_mode=refresh_mode, dither_mode=dither_mode) - except (AuthenticationFailedError, AuthenticationRequiredError) as err: - entry.async_start_reauth(hass) - raise HomeAssistantError( - translation_domain=DOMAIN, translation_key="authentication_error" - ) from err - except OpenDisplayError as err: - raise HomeAssistantError( - translation_domain=DOMAIN, translation_key="upload_error" - ) from err + await _async_send_image( + hass, + entry, + img, + dither_mode=dither_mode, + refresh_mode=refresh_mode, + ) @callback @@ -467,6 +468,4 @@ def async_setup_services(hass: HomeAssistant) -> None: _async_upload_image, schema=SCHEMA_UPLOAD_IMAGE, ) - hass.services.async_register(DOMAIN, "drawcustom", _async_drawcustom) - -## TODO: piggyback off of upload image? also vol for validation in drawcustom \ No newline at end of file + hass.services.async_register(DOMAIN, "drawcustom", _async_drawcustom, schema=SCHEMA_DRAWCUSTOM) \ No newline at end of file From b48647ec05c20ba3d86b723894ddb45c59e00d12 Mon Sep 17 00:00:00 2001 From: gabriel Date: Sun, 24 May 2026 22:27:40 +0200 Subject: [PATCH 10/51] chore: remove obsolete drawcustom tests ImageGen was replaced by odl-renderer; rendering logic is now tested in the odl-renderer package itself. --- tests/drawcustom/arc_test.py | 60 --- tests/drawcustom/circle_test.py | 84 ---- tests/drawcustom/common_test.py | 121 ----- tests/drawcustom/conftest.py | 204 -------- tests/drawcustom/debug_grid_test.py | 95 ---- tests/drawcustom/ellipse_test.py | 62 --- tests/drawcustom/icon_test.py | 34 -- tests/drawcustom/line_test.py | 162 ------- tests/drawcustom/polygon_test.py | 50 -- tests/drawcustom/progress_bar_test.py | 179 ------- tests/drawcustom/qr_code_test.py | 89 ---- tests/drawcustom/rectangle_pattern_test.py | 102 ---- tests/drawcustom/rectangle_test.py | 89 ---- .../drawcustom/test_images/arc/arc_basic.jpg | Bin 3026 -> 0 bytes .../test_images/arc/pie_slice_basic.jpg | Bin 4682 -> 0 bytes tests/drawcustom/test_images/blank.jpg | Bin 1663 -> 0 bytes .../test_images/circle/circle_filled.jpg | Bin 6463 -> 0 bytes .../test_images/circle/circle_outline.jpg | Bin 7779 -> 0 bytes .../test_images/circle/circle_percentage.jpg | Bin 6452 -> 0 bytes .../test_images/common/multiple_elements.jpg | Bin 7018 -> 0 bytes .../common/negative_coordinates.jpg | Bin 3919 -> 0 bytes .../common/overlapping_elements.jpg | Bin 9224 -> 0 bytes .../test_images/common/oversize_elements.jpg | Bin 5954 -> 0 bytes .../drawcustom/test_images/common/rotated.jpg | Bin 3047 -> 0 bytes .../debug_grid/debug_grid_basic.jpg | Bin 24646 -> 0 bytes .../debug_grid/debug_grid_custom_spacing.jpg | Bin 12691 -> 0 bytes .../debug_grid/debug_grid_solid.jpg | Bin 23762 -> 0 bytes .../debug_grid/debug_grid_without_labels.jpg | Bin 23716 -> 0 bytes .../test_images/ellipse/ellipse_drawing.jpg | Bin 6966 -> 0 bytes .../ellipse/ellipse_drawing_percentage.jpg | Bin 7805 -> 0 bytes .../test_images/line/dashed_line_basic.jpg | Bin 2962 -> 0 bytes .../line/dashed_line_custom_lengths.jpg | Bin 3339 -> 0 bytes .../test_images/line/dashed_line_diagonal.jpg | Bin 2803 -> 0 bytes .../test_images/line/dashed_line_vertical.jpg | Bin 2512 -> 0 bytes .../test_images/line/line_basic.jpg | Bin 2051 -> 0 bytes .../test_images/line/line_custom.jpg | Bin 5136 -> 0 bytes .../test_images/polygon/polygon_basic.jpg | Bin 2216 -> 0 bytes .../test_images/polygon/polygon_filled.jpg | Bin 3023 -> 0 bytes .../test_images/progress_bar/progress_bar.jpg | Bin 5890 -> 0 bytes .../progress_bar/progress_bar_full.jpg | Bin 6259 -> 0 bytes .../progress_bar/progress_bar_percentage.jpg | Bin 3594 -> 0 bytes .../progress_bar/progress_bar_zero.jpg | Bin 4002 -> 0 bytes .../test_images/qr_code/qr_code.jpg | Bin 14349 -> 0 bytes .../test_images/qr_code/qr_code_long.jpg | Bin 30766 -> 0 bytes .../qr_code/qr_code_percentage.jpg | Bin 14184 -> 0 bytes .../rectangle/rectangle_filled.jpg | Bin 4621 -> 0 bytes .../rectangle/rectangle_outline.jpg | Bin 5039 -> 0 bytes .../rectangle/rectangle_rounded_corners.jpg | Bin 4939 -> 0 bytes .../rectangle_pattern/rectangle_pattern.jpg | Bin 12054 -> 0 bytes .../rectangle_pattern_rounded_corners.jpg | Bin 6647 -> 0 bytes .../test_images/text/large_font.jpg | Bin 8113 -> 0 bytes .../test_images/text/small_font.jpg | Bin 1787 -> 0 bytes .../test_images/text/text_anchors.jpg | Bin 8687 -> 0 bytes .../test_images/text/text_basic.jpg | Bin 3743 -> 0 bytes .../test_images/text/text_color_markup.jpg | Bin 9854 -> 0 bytes .../test_images/text/text_mixed_fonts.jpg | Bin 7113 -> 0 bytes .../test_images/text/text_percentage.jpg | Bin 5264 -> 0 bytes .../test_images/text/text_special_chars.jpg | Bin 8738 -> 0 bytes .../test_images/text/text_truncate.jpg | Bin 4022 -> 0 bytes .../test_images/text/text_wrapping.jpg | Bin 11112 -> 0 bytes .../test_images/text/text_wrapping_anchor.jpg | Bin 10558 -> 0 bytes .../text_multiline/multiline_empty_line.jpg | Bin 3434 -> 0 bytes .../text_multiline/text_multiline.jpg | Bin 5098 -> 0 bytes .../text_multiline_delimiter.jpg | Bin 4627 -> 0 bytes .../text_multiline_delimiter_and_newline.jpg | Bin 7281 -> 0 bytes tests/drawcustom/text_multiline_test.py | 206 -------- tests/drawcustom/text_test.py | 449 ------------------ 67 files changed, 1986 deletions(-) delete mode 100644 tests/drawcustom/arc_test.py delete mode 100644 tests/drawcustom/circle_test.py delete mode 100644 tests/drawcustom/common_test.py delete mode 100644 tests/drawcustom/conftest.py delete mode 100644 tests/drawcustom/debug_grid_test.py delete mode 100644 tests/drawcustom/ellipse_test.py delete mode 100644 tests/drawcustom/icon_test.py delete mode 100644 tests/drawcustom/line_test.py delete mode 100644 tests/drawcustom/polygon_test.py delete mode 100644 tests/drawcustom/progress_bar_test.py delete mode 100644 tests/drawcustom/qr_code_test.py delete mode 100644 tests/drawcustom/rectangle_pattern_test.py delete mode 100644 tests/drawcustom/rectangle_test.py delete mode 100644 tests/drawcustom/test_images/arc/arc_basic.jpg delete mode 100644 tests/drawcustom/test_images/arc/pie_slice_basic.jpg delete mode 100644 tests/drawcustom/test_images/blank.jpg delete mode 100644 tests/drawcustom/test_images/circle/circle_filled.jpg delete mode 100644 tests/drawcustom/test_images/circle/circle_outline.jpg delete mode 100644 tests/drawcustom/test_images/circle/circle_percentage.jpg delete mode 100644 tests/drawcustom/test_images/common/multiple_elements.jpg delete mode 100644 tests/drawcustom/test_images/common/negative_coordinates.jpg delete mode 100644 tests/drawcustom/test_images/common/overlapping_elements.jpg delete mode 100644 tests/drawcustom/test_images/common/oversize_elements.jpg delete mode 100644 tests/drawcustom/test_images/common/rotated.jpg delete mode 100644 tests/drawcustom/test_images/debug_grid/debug_grid_basic.jpg delete mode 100644 tests/drawcustom/test_images/debug_grid/debug_grid_custom_spacing.jpg delete mode 100644 tests/drawcustom/test_images/debug_grid/debug_grid_solid.jpg delete mode 100644 tests/drawcustom/test_images/debug_grid/debug_grid_without_labels.jpg delete mode 100644 tests/drawcustom/test_images/ellipse/ellipse_drawing.jpg delete mode 100644 tests/drawcustom/test_images/ellipse/ellipse_drawing_percentage.jpg delete mode 100644 tests/drawcustom/test_images/line/dashed_line_basic.jpg delete mode 100644 tests/drawcustom/test_images/line/dashed_line_custom_lengths.jpg delete mode 100644 tests/drawcustom/test_images/line/dashed_line_diagonal.jpg delete mode 100644 tests/drawcustom/test_images/line/dashed_line_vertical.jpg delete mode 100644 tests/drawcustom/test_images/line/line_basic.jpg delete mode 100644 tests/drawcustom/test_images/line/line_custom.jpg delete mode 100644 tests/drawcustom/test_images/polygon/polygon_basic.jpg delete mode 100644 tests/drawcustom/test_images/polygon/polygon_filled.jpg delete mode 100644 tests/drawcustom/test_images/progress_bar/progress_bar.jpg delete mode 100644 tests/drawcustom/test_images/progress_bar/progress_bar_full.jpg delete mode 100644 tests/drawcustom/test_images/progress_bar/progress_bar_percentage.jpg delete mode 100644 tests/drawcustom/test_images/progress_bar/progress_bar_zero.jpg delete mode 100644 tests/drawcustom/test_images/qr_code/qr_code.jpg delete mode 100644 tests/drawcustom/test_images/qr_code/qr_code_long.jpg delete mode 100644 tests/drawcustom/test_images/qr_code/qr_code_percentage.jpg delete mode 100644 tests/drawcustom/test_images/rectangle/rectangle_filled.jpg delete mode 100644 tests/drawcustom/test_images/rectangle/rectangle_outline.jpg delete mode 100644 tests/drawcustom/test_images/rectangle/rectangle_rounded_corners.jpg delete mode 100644 tests/drawcustom/test_images/rectangle_pattern/rectangle_pattern.jpg delete mode 100644 tests/drawcustom/test_images/rectangle_pattern/rectangle_pattern_rounded_corners.jpg delete mode 100644 tests/drawcustom/test_images/text/large_font.jpg delete mode 100644 tests/drawcustom/test_images/text/small_font.jpg delete mode 100644 tests/drawcustom/test_images/text/text_anchors.jpg delete mode 100644 tests/drawcustom/test_images/text/text_basic.jpg delete mode 100644 tests/drawcustom/test_images/text/text_color_markup.jpg delete mode 100644 tests/drawcustom/test_images/text/text_mixed_fonts.jpg delete mode 100644 tests/drawcustom/test_images/text/text_percentage.jpg delete mode 100644 tests/drawcustom/test_images/text/text_special_chars.jpg delete mode 100644 tests/drawcustom/test_images/text/text_truncate.jpg delete mode 100644 tests/drawcustom/test_images/text/text_wrapping.jpg delete mode 100644 tests/drawcustom/test_images/text/text_wrapping_anchor.jpg delete mode 100644 tests/drawcustom/test_images/text_multiline/multiline_empty_line.jpg delete mode 100644 tests/drawcustom/test_images/text_multiline/text_multiline.jpg delete mode 100644 tests/drawcustom/test_images/text_multiline/text_multiline_delimiter.jpg delete mode 100644 tests/drawcustom/test_images/text_multiline/text_multiline_delimiter_and_newline.jpg delete mode 100644 tests/drawcustom/text_multiline_test.py delete mode 100644 tests/drawcustom/text_test.py diff --git a/tests/drawcustom/arc_test.py b/tests/drawcustom/arc_test.py deleted file mode 100644 index beb052f..0000000 --- a/tests/drawcustom/arc_test.py +++ /dev/null @@ -1,60 +0,0 @@ -"""Tests for arc rendering in ImageGen.""" -import os -from io import BytesIO -import pytest -from unittest.mock import patch -from PIL import Image - -from conftest import BASE_IMG_PATH, images_equal -from conftest import generate_test_image - -ARC_IMG_PATH = os.path.join(BASE_IMG_PATH, 'arc') - -@pytest.mark.asyncio -async def test_arc_basic(image_gen, mock_tag_info): - """Test basic arc rendering with default settings.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "arc", - "x": 100, - "y": 75, - "radius": 50, - "start_angle": 0, - "end_angle": 180, - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(ARC_IMG_PATH, 'arc_basic.jpg')) - assert images_equal(generated_img, example_img), "Basic arc rendering failed" - -@pytest.mark.asyncio -async def test_pie_slice_basic(image_gen, mock_tag_info): - """Test basic arc rendering with default settings.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "arc", - "x": 100, - "y": 75, - "radius": 50, - "start_angle": 0, - "end_angle": 180, - "fill": "red", - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(ARC_IMG_PATH, 'pie_slice_basic.jpg')) - assert images_equal(generated_img, example_img), "Basic pie slice rendering failed" \ No newline at end of file diff --git a/tests/drawcustom/circle_test.py b/tests/drawcustom/circle_test.py deleted file mode 100644 index 0a13080..0000000 --- a/tests/drawcustom/circle_test.py +++ /dev/null @@ -1,84 +0,0 @@ -"""Tests for circle rendering in ImageGen.""" -import os -from io import BytesIO -import pytest -from unittest.mock import patch -from PIL import Image - -from conftest import BASE_IMG_PATH, images_equal, generate_test_image - -CIRCLE_IMG_PATH = os.path.join(BASE_IMG_PATH, 'circle') - -@pytest.mark.asyncio -async def test_circle_filled(image_gen, mock_tag_info): - """Test basic circle rendering with default settings.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "circle", - "x": 100, - "y": 64, - "radius": 50, - "fill": "red", - "outline": "black", - "width": 2 - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(CIRCLE_IMG_PATH, 'circle_filled.jpg')) - assert images_equal(generated_img, example_img), "Basic filled circle rendering failed" - -@pytest.mark.asyncio -async def test_circle_outline(image_gen, mock_tag_info): - """Test outline circle rendering.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "circle", - "x": 100, - "y": 64, - "radius": 50, - "outline": "red", - "width": 3 - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(CIRCLE_IMG_PATH, 'circle_outline.jpg')) - assert images_equal(generated_img, example_img), "Basic outline circle rendering failed" - -@pytest.mark.asyncio -async def test_circle_percentage(image_gen, mock_tag_info): - """Test basic circle rendering with percentage.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "circle", - "x": '50%', - "y": '50%', - "radius": 50, - "fill": "red", - "outline": "black", - "width": 2 - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(CIRCLE_IMG_PATH, 'circle_percentage.jpg')) - assert images_equal(generated_img, example_img), "Basic filled circle rendering failed" diff --git a/tests/drawcustom/common_test.py b/tests/drawcustom/common_test.py deleted file mode 100644 index ec55a69..0000000 --- a/tests/drawcustom/common_test.py +++ /dev/null @@ -1,121 +0,0 @@ -"""Tests for common cases in ImageGen.""" -import os -from io import BytesIO - -import pytest -from unittest.mock import patch - -from PIL import Image - -from conftest import BASE_IMG_PATH, images_equal, generate_test_image - -COMMON_IMG_PATH = os.path.join(BASE_IMG_PATH, 'common') - -@pytest.mark.asyncio -async def test_multiple_elements(image_gen, mock_tag_info): - """Test Multiple elements rendering.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [ - {'type': 'rectangle', 'x_start': 0, 'y_start': 0, 'x_end': 296, 'y_end': 128, 'fill': 'white'}, - {'type': 'text', 'x': 10, 'y': 10, 'value': 'Hello', 'size': 20, 'color': 'black'}, - {'type': 'line', 'x_start': 0, 'y_start': 40, 'x_end': 296, 'y_end': 40, 'fill': 'black', 'width': 1}, - {'type': 'circle', 'x': 148, 'y': 84, 'radius': 30, 'fill': 'red'} - ] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(COMMON_IMG_PATH, 'multiple_elements.jpg')) - assert images_equal(generated_img, example_img), "Multiple elements drawing failed" - -@pytest.mark.asyncio -async def test_rotation(image_gen, mock_tag_info): - """Test Rotated element rendering.""" - service_data = { - "background": "white", - "rotate": 90, - "payload": [ - { - 'type': 'text', - 'x': 10, - 'y': 10, - 'value': 'Rotated', - 'size': 20, - 'color': 'black' - } - ] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(COMMON_IMG_PATH, 'rotated.jpg')) - assert images_equal(generated_img, example_img), "rotated elements drawing failed" - -@pytest.mark.asyncio -async def test_oversize_elements(image_gen, mock_tag_info): - """Test Oversize element rendering.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [ - {'type': 'rectangle', 'x_start': 10, 'y_start': 0, 'x_end': 1000, 'y_end': 20, 'fill': 'red'}, - {'type': 'circle', 'x': 300, 'y': 100, 'radius': 70, 'fill': 'black'} - ] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(COMMON_IMG_PATH, 'oversize_elements.jpg')) - assert images_equal(generated_img, example_img), "Oversize elements drawing failed" - -@pytest.mark.asyncio -async def test_overlapping_elements(image_gen, mock_tag_info): - """Test Overlapping element rendering.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [ - {'type': 'rectangle', 'x_start': 0, 'y_start': 0, 'x_end': 100, 'y_end': 100, 'fill': 'red'}, - {'type': 'circle', 'x': 50, 'y': 50, 'radius': 30, 'fill': 'blue'}, - {'type': 'text', 'x': 20, 'y': 20, 'value': 'Overlapping', 'size': 20} - ] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(COMMON_IMG_PATH, 'overlapping_elements.jpg')) - assert images_equal(generated_img, example_img), "Overlapping elements drawing failed" - -@pytest.mark.asyncio -async def test_negative_coordinates(image_gen, mock_tag_info): - """Test negative coordinates rendering.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [ - {'type': 'rectangle', 'x_start': -10, 'y_start': -10, 'x_end': 50, 'y_end': 50, 'fill': 'red'}, - {'type': 'text', 'x': -20, 'y': -5, 'value': 'Negative', 'size': 20} - ] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(COMMON_IMG_PATH, 'negative_coordinates.jpg')) - assert images_equal(generated_img, example_img), "Negative coordinate elements drawing failed" diff --git a/tests/drawcustom/conftest.py b/tests/drawcustom/conftest.py deleted file mode 100644 index 6de841c..0000000 --- a/tests/drawcustom/conftest.py +++ /dev/null @@ -1,204 +0,0 @@ -"""Shared fixtures for drawcustom tests.""" -import os -import sys -import pytest -from io import BytesIO -from unittest.mock import AsyncMock, MagicMock, patch -from PIL import ImageFont - -from PIL import ImageChops -sys.modules['serial'] = MagicMock() -sys.modules['serial.tools'] = MagicMock() -sys.modules['serial.tools.list_ports'] = MagicMock() -sys.modules['homeassistant.components.bluetooth'] = MagicMock() -from homeassistant.core import HomeAssistant -from custom_components.opendisplay.imagegen import ImageGen -from custom_components.opendisplay.const import DOMAIN - -current_dir = os.path.dirname(os.path.abspath(__file__)) -BASE_IMG_PATH = os.path.join(current_dir, "test_images") - - -@pytest.fixture -def mock_hass(): - """Create a mock Home Assistant instance.""" - hass = MagicMock(spec=HomeAssistant) - - # Mock async_add_executor_job - hass.async_add_executor_job = AsyncMock() - - # Mock async_create_task to properly await coroutines - async def mock_create_task(coro, name=None): - await coro - return None - hass.async_create_task = mock_create_task - - # Mock config.path - mock_config = MagicMock() - def mock_path(*args): - return os.path.join("/mock_path", *args) - mock_config.path = mock_path - hass.config = mock_config - - # Setup data attribute with required domain structure - mock_entry = MagicMock() - mock_entry.entry_id = "test_entry_id" - mock_entry.options = {"custom_font_dirs": ""} - - mock_hub = MagicMock() - mock_hub.entry = mock_entry - - hass.data = {DOMAIN: {"test_entry_id": mock_hub}} - - return hass - -@pytest.fixture -def mock_tag_info(): - """Create a mock tag type info.""" - tag_type = MagicMock() - tag_type.width = 296 - tag_type.height = 128 - tag_type.color_table = { - "white": [255, 255, 255], - "black": [0, 0, 0], - "red": [255, 0, 0], - "accent": [255, 0, 0] - } - return tag_type, "red" - -@pytest.fixture -def image_gen(mock_hass): - """Create an ImageGen instance with mocked Home Assistant.""" - # Find the real font paths in the integration directory - integration_dir = os.path.dirname(os.path.dirname(current_dir)) - component_dir = os.path.join(integration_dir, "custom_components", "opendisplay") - - # Try different paths for finding the font directory - possible_component_dirs = [ - component_dir, - os.path.join(os.path.dirname(os.path.dirname(os.path.dirname(current_dir))), - "custom_components", "opendisplay"), - # Add more possible locations if needed - ] - - # Find the first valid component directory - for dir_path in possible_component_dirs: - if os.path.exists(dir_path): - component_dir = dir_path - break - - assets_dir = os.path.join(component_dir, "imagegen", "assets") - - # Define font paths - font_paths = { - "ppb.ttf": os.path.join(assets_dir, "ppb.ttf"), - "rbm.ttf": os.path.join(assets_dir, "rbm.ttf") - } - - # Check if fonts exist - fonts_exist = all(os.path.exists(path) for path in font_paths.values()) - if not fonts_exist: - print(f"WARNING: Some font files not found in {assets_dir}") - if os.path.exists(assets_dir): - print(f"Available files in directory: {os.listdir(assets_dir)}") - else: - print("Assets directory not found") - - # Create a patch for FontManager to avoid filesystem operations - with patch('custom_components.opendisplay.imagegen.FontManager', autospec=True) as MockFontManager: - # Configure the mock FontManager - font_manager_instance = MockFontManager.return_value - - # Define the get_font method - def mock_get_font(font_name, size): - if font_name in font_paths and os.path.exists(font_paths[font_name]): - # Use the actual font if available - return ImageFont.truetype(font_paths[font_name], size) - elif font_name == "rbm.ttf" and os.path.exists(font_paths["ppb.ttf"]): - # Fallback to ppb.ttf for rbm.ttf if needed - print(f"WARNING: Using ppb.ttf as a fallback for {font_name}") - return ImageFont.truetype(font_paths["ppb.ttf"], size) - else: - # Last resort: create a mock font - mock_font = MagicMock() - mock_font.getbbox.return_value = (0, 0, 10 * len("Mocked Text"), 10) - mock_font.getlength.return_value = 10 * len("Mocked Text") - print(f"WARNING: Creating mock font for {font_name}") - return mock_font - - font_manager_instance.get_font.side_effect = mock_get_font - - # Create the ImageGen instance with our mock setup - instance = ImageGen(mock_hass) - - # Mock the get_tag_info method - async def mock_get_tag_info(entity_id): - tag_type = MagicMock() - tag_type.width = 296 - tag_type.height = 128 - tag_type.color_table = { - "white": [255, 255, 255], - "black": [0, 0, 0], - "red": [255, 0, 0], - "accent": [255, 0, 0] - } - return tag_type, "red" - - instance.get_tag_info = mock_get_tag_info - - return instance - -# Helper functions that might be needed across multiple test files -def get_test_image_path(filename): - """Get the full path to a test image file.""" - return os.path.join(os.path.dirname(os.path.dirname(__file__)), "test_images", filename) - -def mock_service_data(payload): - """Create a standard service data structure with given payload.""" - return { - "background": "white", - "rotate": 0, - "dither": 2, - "payload": payload - } - -def images_equal(img1, img2): - """Compare two images and return True if they are identical.""" - return ImageChops.difference(img1, img2).getbbox() is None - -def save_image(image_bytes): - """Save image for debugging.""" - img_path = os.path.join(BASE_IMG_PATH, 'rename_me.jpg') - with open(img_path, 'wb') as f: - f.write(image_bytes) - -async def generate_test_image(image_gen: ImageGen, service_data, entity_id="opendisplay.test_tag"): - """Helper to generate test images with standard dimensions.""" - image = await image_gen.generate_custom_image( - entity_id=entity_id, - service_data=service_data, - width=296, - height=128, - accent_color="red" - ) - buffer = BytesIO() - image.convert("RGB").save(buffer, format="JPEG", quality="maximum") - return buffer.getvalue() - - -# Setup and cleanup code that runs before and after each test session -def pytest_sessionstart(session): - """ - Called after the Session object has been created and - before performing collection and entering the run test loop. - """ - # Create test_images directory if it doesn't exist - test_images_dir = os.path.join(os.path.dirname(os.path.dirname(__file__)), "test_images") - os.makedirs(test_images_dir, exist_ok=True) - -def pytest_sessionfinish(session, exitstatus): - """ - Called after whole test run finished, right before - returning the exit status to the system. - """ - pass # Add any cleanup code if needed diff --git a/tests/drawcustom/debug_grid_test.py b/tests/drawcustom/debug_grid_test.py deleted file mode 100644 index dcbf9bf..0000000 --- a/tests/drawcustom/debug_grid_test.py +++ /dev/null @@ -1,95 +0,0 @@ -"""Tests for debug grid rendering in ImageGen.""" -import os -from io import BytesIO -import pytest -from unittest.mock import patch -from PIL import Image - -from conftest import BASE_IMG_PATH, images_equal, generate_test_image - -DEBUG_GRID_IMG_PATH = os.path.join(BASE_IMG_PATH, 'debug_grid') - - -@pytest.mark.asyncio -async def test_debug_grid_basic(image_gen, mock_tag_info): - """Test basic debug grid rendering with default settings.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "debug_grid" - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(DEBUG_GRID_IMG_PATH, 'debug_grid_basic.jpg')) - assert images_equal(generated_img, example_img), "Basic debug grid rendering failed" - -@pytest.mark.asyncio -async def test_debug_grid_custom_spacing(image_gen, mock_tag_info): - """Test debug grid with custom spacing.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "debug_grid", - "spacing": 50, - "line_color": "black" - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(DEBUG_GRID_IMG_PATH, 'debug_grid_custom_spacing.jpg')) - assert images_equal(generated_img, example_img), "Custom spacing debug grid rendering failed" - -@pytest.mark.asyncio -async def test_debug_grid_solid(image_gen, mock_tag_info): - """Test debug grid without dashed lines.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "debug_grid", - "spacing": 25, - "dashed": False, - "dash_length": 10, - "space_length": 5, - "line_color": "r" - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(DEBUG_GRID_IMG_PATH, 'debug_grid_solid.jpg')) - assert images_equal(generated_img, example_img), "Solid debug grid rendering failed" - -@pytest.mark.asyncio -async def test_debug_grid_without_labels(image_gen, mock_tag_info): - """Test debug grid without coordinate labels.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "debug_grid", - "show_labels": False, - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(DEBUG_GRID_IMG_PATH, 'debug_grid_without_labels.jpg')) - assert images_equal(generated_img, example_img), "Debug grid without labels rendering failed" \ No newline at end of file diff --git a/tests/drawcustom/ellipse_test.py b/tests/drawcustom/ellipse_test.py deleted file mode 100644 index beb2955..0000000 --- a/tests/drawcustom/ellipse_test.py +++ /dev/null @@ -1,62 +0,0 @@ -"""Tests for ellipse rendering in ImageGen.""" -import os -from io import BytesIO -import pytest -from unittest.mock import patch -from PIL import Image - -from conftest import BASE_IMG_PATH, images_equal, generate_test_image - -ELLIPSE_IMG_PATH = os.path.join(BASE_IMG_PATH, 'ellipse') - -@pytest.mark.asyncio -async def test_circle_ellipse(image_gen, mock_tag_info): - """Test basic ellipse rendering.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "ellipse", - "x_start": 50, - "y_start": 20, - "x_end": 200, - "y_end": 100, - "fill": "red", - "outline": "black", - "width": 2 - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(ELLIPSE_IMG_PATH, 'ellipse_drawing.jpg')) - assert images_equal(generated_img, example_img), "Basic ellipse drawing failed" - -@pytest.mark.asyncio -async def test_circle_ellipse_percentage(image_gen, mock_tag_info): - """Test basic ellipse rendering with percentage.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "ellipse", - "x_start": '20%', - "y_start": '20%', - "x_end": '80%', - "y_end": '80%', - "fill": "red", - "outline": "black", - "width": 2 - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(ELLIPSE_IMG_PATH, 'ellipse_drawing_percentage.jpg')) - assert images_equal(generated_img, example_img), "Basic ellipse drawing failed" \ No newline at end of file diff --git a/tests/drawcustom/icon_test.py b/tests/drawcustom/icon_test.py deleted file mode 100644 index ee1edec..0000000 --- a/tests/drawcustom/icon_test.py +++ /dev/null @@ -1,34 +0,0 @@ -"""Tests for icon rendering in ImageGen.""" -import os - -from conftest import BASE_IMG_PATH - -ICON_IMG_PATH = os.path.join(BASE_IMG_PATH, 'icon') - -# Icon tests do not work yet -# @pytest.mark.asyncio -# async def test_icon_basic(image_gen, mock_tag_info): -# """Test basic icon rendering with default settings.""" -# service_data = { -# "background": "white", -# "rotate": 0, -# "payload": [{ -# "type": "icon", -# "x": 10, -# "y": 10, -# "size": 20, -# "value": "mdi:home" -# }] -# } -# -# with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', -# return_value=mock_tag_info): -# image_data = await image_gen.generate_custom_image( -# "opendisplay.test_tag", -# service_data -# ) -# -# generated_img = Image.open(BytesIO(image_data)) -# save_image(image_data) -# example_img = Image.open(os.path.join(ICON_IMG_PATH, 'icon_basic.jpg')) -# assert images_equal(generated_img, example_img), "Basic icon rendering failed" \ No newline at end of file diff --git a/tests/drawcustom/line_test.py b/tests/drawcustom/line_test.py deleted file mode 100644 index 02a5a82..0000000 --- a/tests/drawcustom/line_test.py +++ /dev/null @@ -1,162 +0,0 @@ -"""Tests for line rendering in ImageGen.""" -import os -from io import BytesIO -import pytest -from unittest.mock import patch -from PIL import Image - -from conftest import BASE_IMG_PATH, images_equal, generate_test_image - -LINE_IMG_PATH = os.path.join(BASE_IMG_PATH, 'line') - -@pytest.mark.asyncio -async def test_line_basic(image_gen, mock_tag_info): - """Test basic line rendering with default settings.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "line", - "x_start": 10, - "y_start": 10, - "x_end": 100, - "y_end": 100, - "fill": "black", - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(LINE_IMG_PATH, 'line_basic.jpg')) - assert images_equal(generated_img, example_img), "Basic line rendering failed" - -@pytest.mark.asyncio -async def test_line_custom(image_gen, mock_tag_info): - """Test line drawing with custom width and color.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "line", - "x_start": 50, - "y_start": 20, - "x_end": 200, - "y_end": 100, - "fill": "red", - "width": 3 - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(LINE_IMG_PATH, 'line_custom.jpg')) - assert images_equal(generated_img, example_img), "Custom line rendering failed" - -@pytest.mark.asyncio -async def test_dashed_line_basic(image_gen, mock_tag_info): - """Test basic dashed line rendering with default dash and space lengths.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "line", - "x_start": 10, - "y_start": 10, - "x_end": 200, - "y_end": 10, - "fill": "black", - "dashed": True, - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(LINE_IMG_PATH, 'dashed_line_basic.jpg')) - assert images_equal(generated_img, example_img), "Basic dashed line rendering failed" - -@pytest.mark.asyncio -async def test_dashed_line_custom_lengths(image_gen, mock_tag_info): - """Test dashed line with custom dash and space lengths.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "line", - "x_start": 20, - "y_start": 20, - "x_end": 200, - "y_end": 20, - "fill": "red", - "dashed": True, - "dash_length": 20, - "space_length": 5 - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(LINE_IMG_PATH, 'dashed_line_custom_lengths.jpg')) - assert images_equal(generated_img, example_img), "Custom dashed line rendering failed" - -@pytest.mark.asyncio -async def test_dashed_line_basic_vertical(image_gen, mock_tag_info): - """Test basic dashed line rendering with default dash and space lengths but vertical.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "line", - "x_start": 10, - "y_start": 10, - "x_end": 10, - "y_end": 150, - "fill": "black", - "dashed": True, - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(LINE_IMG_PATH, 'dashed_line_vertical.jpg')) - assert images_equal(generated_img, example_img), "Vertical dashed line rendering failed" - -@pytest.mark.asyncio -async def test_dashed_line_diagonal(image_gen, mock_tag_info): - """Test dashed line on a diagonal.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "line", - "x_start": 10, - "y_start": 10, - "x_end": 100, - "y_end": 100, - "fill": "r", - "dashed": True, - "dash_length": 15, - "space_length": 5 - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(LINE_IMG_PATH, 'dashed_line_diagonal.jpg')) - assert images_equal(generated_img, example_img), "Dashed line diagonal rendering failed" \ No newline at end of file diff --git a/tests/drawcustom/polygon_test.py b/tests/drawcustom/polygon_test.py deleted file mode 100644 index 2d7e7f0..0000000 --- a/tests/drawcustom/polygon_test.py +++ /dev/null @@ -1,50 +0,0 @@ -"""Tests for polygon rendering in ImageGen.""" -import os -from io import BytesIO -import pytest -from unittest.mock import patch -from PIL import Image - -from conftest import BASE_IMG_PATH, images_equal, generate_test_image - -POLYGON_IMG_PATH = os.path.join(BASE_IMG_PATH, 'polygon') - -@pytest.mark.asyncio -async def test_polygon_basic(image_gen, mock_tag_info): - """Test basic polygon rendering with default settings.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "polygon", - "points": [[10, 10], [50, 10], [50, 50], [10, 50]], - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(POLYGON_IMG_PATH, 'polygon_basic.jpg')) - assert images_equal(generated_img, example_img), "Basic polygon rendering failed" - -@pytest.mark.asyncio -async def test_polygon_filled(image_gen, mock_tag_info): - """Test filled polygon rendering with default settings.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "polygon", - "points": [[10, 10], [50, 10], [50, 50], [10, 70]], - "fill": "hr" - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(POLYGON_IMG_PATH, 'polygon_filled.jpg')) - assert images_equal(generated_img, example_img), "Filled polygon rendering failed" \ No newline at end of file diff --git a/tests/drawcustom/progress_bar_test.py b/tests/drawcustom/progress_bar_test.py deleted file mode 100644 index 7443875..0000000 --- a/tests/drawcustom/progress_bar_test.py +++ /dev/null @@ -1,179 +0,0 @@ -"""Tests for progress bar rendering in ImageGen.""" -import os -from io import BytesIO -import pytest -from unittest.mock import patch -from PIL import Image - -from conftest import BASE_IMG_PATH, images_equal, generate_test_image - -QR_CODE_IMG_PATH = os.path.join(BASE_IMG_PATH, 'progress_bar') - -@pytest.mark.asyncio -async def test_basic_progress_bar(image_gen, mock_tag_info): - """Test basic progress bar rendering.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "progress_bar", - "x_start": 10, - "y_start": 50, - "x_end": 286, - "y_end": 70, - "progress": 75, - "fill": "red", - "outline": "black", - "width": 1, - "show_percentage": True - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(QR_CODE_IMG_PATH, 'progress_bar.jpg')) - assert images_equal(generated_img, example_img), "Basic progress bar drawing failed" - -@pytest.mark.asyncio -async def test_progress_bar_zero_progress(image_gen, mock_tag_info): - """Test progress bar with zero progress rendering.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "progress_bar", - "x_start": 10, - "y_start": 50, - "x_end": 286, - "y_end": 70, - "progress": 0, - "fill": "red", - "outline": "black", - "width": 1, - "show_percentage": True - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(QR_CODE_IMG_PATH, 'progress_bar_zero.jpg')) - assert images_equal(generated_img, example_img), "Basic progress bar drawing failed" - -@pytest.mark.asyncio -async def test_progress_bar_full(image_gen, mock_tag_info): - """Test full progress bar rendering.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "progress_bar", - "x_start": 10, - "y_start": 50, - "x_end": 286, - "y_end": 70, - "progress": 100, - "fill": "red", - "outline": "black", - "background": "white", - "width": 1, - "show_percentage": True - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(QR_CODE_IMG_PATH, 'progress_bar_full.jpg')) - assert images_equal(generated_img, example_img), "Full progress bar drawing failed" - -@pytest.mark.asyncio -async def test_progress_bar_negative_progress(image_gen, mock_tag_info): - """Test progress bar with negative progress rendering.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "progress_bar", - "x_start": 10, - "y_start": 50, - "x_end": 286, - "y_end": 70, - "progress": -50, - "fill": "red", - "outline": "black", - "width": 1, - "show_percentage": True - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(QR_CODE_IMG_PATH, 'progress_bar_zero.jpg')) - assert images_equal(generated_img, example_img), "Progress bar with negative percentage drawing failed" - -@pytest.mark.asyncio -async def test_progress_bar_over_full(image_gen, mock_tag_info): - """Test over full progress bar rendering.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "progress_bar", - "x_start": 10, - "y_start": 50, - "x_end": 286, - "y_end": 70, - "progress": 150, - "fill": "red", - "outline": "black", - "background": "white", - "width": 1, - "show_percentage": True - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(QR_CODE_IMG_PATH, 'progress_bar_full.jpg')) - assert images_equal(generated_img, example_img), "Over full progress bar drawing failed" - -@pytest.mark.asyncio -async def test_basic_progress_bar_percentage(image_gen, mock_tag_info): - """Test basic progress bar with percentage rendering.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "progress_bar", - "x_start": '20%', - "y_start": '40%', - "x_end": '80%', - "y_end": '60%', - "progress": 42, - "fill": "red", - "outline": "black", - "width": 1, - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(QR_CODE_IMG_PATH, 'progress_bar_percentage.jpg')) - assert images_equal(generated_img, example_img), "Basic progress bar with percentage drawing failed" \ No newline at end of file diff --git a/tests/drawcustom/qr_code_test.py b/tests/drawcustom/qr_code_test.py deleted file mode 100644 index 8262b33..0000000 --- a/tests/drawcustom/qr_code_test.py +++ /dev/null @@ -1,89 +0,0 @@ -"""Tests for qr code rendering in ImageGen.""" -import os -from io import BytesIO -import pytest -from unittest.mock import patch -from PIL import Image - -from conftest import BASE_IMG_PATH, images_equal, generate_test_image - -QR_CODE_IMG_PATH = os.path.join(BASE_IMG_PATH, 'qr_code') - -@pytest.mark.asyncio -async def test_basic_qr_code(image_gen, mock_tag_info): - """Test basic qr code rendering.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "qrcode", - "x": 5, - "y": 10, - "data": "https://www.youtube.com/watch?v=dQw4w9WgXcQ", - "color": "black", - "bgcolor": "white", - "boxsize": 3, - "border": 1 - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(QR_CODE_IMG_PATH, 'qr_code.jpg')) - assert images_equal(generated_img, example_img), "Basic qr code drawing failed" - -@pytest.mark.asyncio -async def test_long_qr_code(image_gen, mock_tag_info): - """Test qr code with long data rendering.""" - long_data = "https://example.com/" + "a" * 1000 - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "qrcode", - "x": 10, - "y": 10, - "data": long_data, - "color": "black", - "bgcolor": "white", - "boxsize": 3, - "border": 4 - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(QR_CODE_IMG_PATH, 'qr_code_long.jpg')) - assert images_equal(generated_img, example_img), "Long qr code drawing failed" - -@pytest.mark.asyncio -async def test_basic_qr_code_percentage(image_gen, mock_tag_info): - """Test basic qr code rendering with percentage.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "qrcode", - "x": '10%', - "y": '10%', - "data": "https://www.youtube.com/watch?v=dQw4w9WgXcQ", - "color": "black", - "bgcolor": "white", - "boxsize": 3, - "border": 1 - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(QR_CODE_IMG_PATH, 'qr_code_percentage.jpg')) - assert images_equal(generated_img, example_img), "Basic qr code drawing with percentage failed" \ No newline at end of file diff --git a/tests/drawcustom/rectangle_pattern_test.py b/tests/drawcustom/rectangle_pattern_test.py deleted file mode 100644 index b775823..0000000 --- a/tests/drawcustom/rectangle_pattern_test.py +++ /dev/null @@ -1,102 +0,0 @@ -"""Tests for rectangle pattern rendering in ImageGen.""" -import os -from io import BytesIO -import pytest -from unittest.mock import patch -from PIL import Image - -from conftest import BASE_IMG_PATH, images_equal, generate_test_image - -RECTANGLE_IMG_PATH = os.path.join(BASE_IMG_PATH, 'rectangle_pattern') - -@pytest.mark.asyncio -async def test_rectangle_pattern(image_gen, mock_tag_info): - """Test rectangle pattern drawing.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "rectangle_pattern", - "x_start": 10, - "y_start": 10, - "x_size": 30, - "y_size": 30, - "x_repeat": 5, - "y_repeat": 3, - "x_offset": 10, - "y_offset": 10, - "fill": "red", - "outline": "black", - "width": 1 - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(RECTANGLE_IMG_PATH, 'rectangle_pattern.jpg')) - assert images_equal(generated_img, example_img), "Rectangle pattern rendering failed" - -@pytest.mark.asyncio -async def test_rectangle_pattern_rounded_corners(image_gen, mock_tag_info): - """Test rounded corner rectangle pattern drawing.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "rectangle_pattern", - "x_start": 10, - "y_start": 10, - "x_size": 30, - "y_size": 30, - "x_repeat": 3, - "y_repeat": 2, - "x_offset": 10, - "y_offset": 10, - "fill": "red", - "outline": "black", - "width": 1, - "radius": 5, - "corners": "top_left, bottom_right" - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(RECTANGLE_IMG_PATH, 'rectangle_pattern_rounded_corners.jpg')) - assert images_equal(generated_img, example_img), "Rounded corner rectangle pattern rendering failed" - -@pytest.mark.asyncio -async def test_rectangle_pattern(image_gen, mock_tag_info): - """Test rounded corner rectangle pattern drawing.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "rectangle_pattern", - "x_start": 10, - "y_start": 10, - "x_size": 30, - "y_size": 30, - "x_repeat": 0, - "y_repeat": 0, - "x_offset": 10, - "y_offset": 10, - "fill": "red", - "outline": "black", - "width": 1, - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(BASE_IMG_PATH, 'blank.jpg')) - assert images_equal(generated_img, example_img), "Rounded corner rectangle pattern rendering failed" \ No newline at end of file diff --git a/tests/drawcustom/rectangle_test.py b/tests/drawcustom/rectangle_test.py deleted file mode 100644 index 00a35e3..0000000 --- a/tests/drawcustom/rectangle_test.py +++ /dev/null @@ -1,89 +0,0 @@ -"""Tests for rectangle rendering in ImageGen.""" -import os -from io import BytesIO -import pytest -from unittest.mock import patch -from PIL import Image - -from conftest import BASE_IMG_PATH, images_equal, generate_test_image - -RECTANGLE_IMG_PATH = os.path.join(BASE_IMG_PATH, 'rectangle') - -@pytest.mark.asyncio -async def test_rectangle_filled(image_gen, mock_tag_info): - """Test filled rectangle drawing.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "rectangle", - "x_start": 50, - "y_start": 20, - "x_end": 200, - "y_end": 100, - "fill": "red", - "outline": "black", - "width": 2 - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(RECTANGLE_IMG_PATH, 'rectangle_filled.jpg')) - assert images_equal(generated_img, example_img), "Filled rectangle rendering failed" - -@pytest.mark.asyncio -async def test_rectangle_outline(image_gen, mock_tag_info): - """Test outlined rectangle drawing.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "rectangle", - "x_start": 50, - "y_start": 20, - "x_end": 200, - "y_end": 100, - "outline": "red", - "width": 3 - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(RECTANGLE_IMG_PATH, 'rectangle_outline.jpg')) - assert images_equal(generated_img, example_img), "Outlined rectangle rendering failed" - -@pytest.mark.asyncio -async def test_rectangle_rounded_corners(image_gen, mock_tag_info): - """Test rounded corner rectangle drawing.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "rectangle", - "x_start": 50, - "y_start": 20, - "x_end": 200, - "y_end": 100, - "fill": "red", - "outline": "black", - "width": 2, - "radius": 15, - "corners": "top_left, bottom_right" - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(RECTANGLE_IMG_PATH, 'rectangle_rounded_corners.jpg')) - assert images_equal(generated_img, example_img), "Rounded corner rectangle rendering failed" \ No newline at end of file diff --git a/tests/drawcustom/test_images/arc/arc_basic.jpg b/tests/drawcustom/test_images/arc/arc_basic.jpg deleted file mode 100644 index acfd3f6fc0d12374c63ff4f1e01c6dd218c9b995..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3026 zcmeHHdpMM78-HGNGJ~ekM5!o44z*c_njA_8DW@ed6Y^QB5;_rUy?SfA94^&wF3@^E~hGcR%-iBTtcD zu-M$x%oIQn0Fd|rNEg@%Bt8Kp{z9R}BMOZ{&jW+Sd;k`U!%5mm%N@GQ>q<5Q!fa{x(T}v=;9DWFb|6BniSGbreJb5+n#kf{9_PXMfy~#S^32Bm) z9e1mj+O`T+bieb7z!T);mn~ONU8|<9p{ciV6Lqt`!A_H1rn~o;neVf+r_uL2IJzA? zblClfhvz9@zwiAS0jDE>h>AY*E~r3ti$M zKoV#)3XPlB1xfgeUla+AS)+}W-M$y+>b*o+CtQ-eBO&c>HJ+ktD_r`WPb)!AMUSs4 znwR!L*`E^@@qa1%BU0jPt&r@uq+*JQyc0sy1aUPOjsQsCw=oE!-;pG`#IcMt+*n|@QHt{Bh0LGq@7_5Q4)0rRLjTXma9SR zOEeq1u+vdrp0x1X&n!i#*BDL=X>lneM%^|JxDH2}3+c6i+^m5^?SAKiEo$T!*EbdI zD&sLsn_JD9vaB};4<6yHCWih&!3c@*2oP<25(2?;eJ?mh{vx{BTxaR|bC(goU(!}& zymJ4vw9mN#PsNqRG0qRU;r;epib@VNGX5E%-vwcTkAbT@4`*$q%r1g&gg9?)vM-0d z1zouzjAOocR&7jjXkMu;I9$rCH8>o1IQBuSa_P1H*wtgbVCvoPYn%vLD+Tx7XRsXZ zG>i=@p=ULeB93n0zwa6LuS;}z&6~*Lm@zNB;RVM>>dBhOX;0?1COeR`N^zAfpI_1f zeqUbTW4M6LlaCKtCpdv&WH-$0t5N)#bH~@3G?;ueKRCU{CVV*0b?jS4zm;fD)BWZ9 z-8HvYrxJ}}eZe*Vy)D^7m-8bPZ6YUrPq$Y6s0EqU=9!;a&^1`08qY)TaVzQI7gLYq z%g5j?C;#DQ?O~9L%U_T{zy_BxYbolSU9GtELHl~&O4w}HDJLK)wC1@)gE9AQ(9S%T zY?FIdwH8zB=YeU<(O)0B6^E;qUCmqOLq zNtfYc{zOS}oMU2oQIP<{z5wgy+UD748gFY7Pm8I&TJmtds6=qdiQ0yL! z7M4fae)vL-|8t&#Y1+UoA3fWyW^%`9d3keDa}j&@#_~E=D@(UpM4IkmtTpW7H@8|C-i5ZQ{Dc7v z1Vj{Gqce9R6soKzJddgE5lG1uCsoRL({=3YHTB193BUo6?zC>79 z&<&>uhUDxA9B`F&vs6c4NZ4d(RFNZPdp;_?t$q)`}`}IdNIY%p2GCH2`Z>PD9t-s&| zr&tN&(z~K)(u0iAGulz%3CVlHi12|FQs}F;3QYv`Ht}B~V3QpPW!J*Pc?fuTea0Y^ ztv~59Eg8yg7Jbi5pYB3HI|AGhz}8TT4eEa2)I77BTRdQ_^=r4>&h=GNw!oo3RMq!`bDSt K!=8vkxc>r{d`#E? diff --git a/tests/drawcustom/test_images/arc/pie_slice_basic.jpg b/tests/drawcustom/test_images/arc/pie_slice_basic.jpg deleted file mode 100644 index a32c614c1255ffd43ff0c1184c7d40602cc758d5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4682 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 qa#|c{yNYwKzWtbV0 diff --git a/tests/drawcustom/test_images/blank.jpg b/tests/drawcustom/test_images/blank.jpg deleted file mode 100644 index af068613c9d8a07a34e23ebb0cfa39bdcb7e7a0d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1663 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 NF5dsozd#rxe*t1lip~H4 diff --git a/tests/drawcustom/test_images/circle/circle_outline.jpg b/tests/drawcustom/test_images/circle/circle_outline.jpg deleted file mode 100644 index 729af519793e2d46f6974018e4818c35aff3b4cd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7779 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 PPXPW%i2kL;Kp*}uJbxBa diff --git a/tests/drawcustom/test_images/circle/circle_percentage.jpg b/tests/drawcustom/test_images/circle/circle_percentage.jpg deleted file mode 100644 index 60fcd9c03f8cdcfaa548b167054aab7178f8a5cb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6452 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 diff --git a/tests/drawcustom/test_images/common/negative_coordinates.jpg b/tests/drawcustom/test_images/common/negative_coordinates.jpg deleted file mode 100644 index 3c77fc3ee44d073fd82d959847bb9da83d0ba8a3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3919 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 CMRa2T diff --git a/tests/drawcustom/test_images/common/overlapping_elements.jpg b/tests/drawcustom/test_images/common/overlapping_elements.jpg deleted file mode 100644 index a8eab05fd554ecd0eaa3d32a2516f0ca0128a68f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9224 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 diff --git a/tests/drawcustom/test_images/common/oversize_elements.jpg b/tests/drawcustom/test_images/common/oversize_elements.jpg deleted file mode 100644 index 3e046a96824e309d03d90e0925db0f4e335fa07d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5954 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 b%wJNepLOl9k3LkqS diff --git a/tests/drawcustom/test_images/debug_grid/debug_grid_solid.jpg b/tests/drawcustom/test_images/debug_grid/debug_grid_solid.jpg deleted file mode 100644 index c1731f4dffac3edd59b5893c89c0413540d835c9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23762 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 diff --git a/tests/drawcustom/test_images/ellipse/ellipse_drawing.jpg b/tests/drawcustom/test_images/ellipse/ellipse_drawing.jpg deleted file mode 100644 index 9159538d93e51c0bba07b62858343f36c3c48e38..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6966 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 IlZ7$yUsZd15&!@I diff --git a/tests/drawcustom/test_images/ellipse/ellipse_drawing_percentage.jpg b/tests/drawcustom/test_images/ellipse/ellipse_drawing_percentage.jpg deleted file mode 100644 index f05ff5aee79b1d561e7cdee4b80d0b3585368038..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7805 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 diff --git a/tests/drawcustom/test_images/line/dashed_line_basic.jpg b/tests/drawcustom/test_images/line/dashed_line_basic.jpg deleted file mode 100644 index cd5cb968f95fe0ae2ffe33e81a14090dee6029cf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2962 zcmex=jH%)-h70<3JTV8F)4&d$Nk z&c?~f#l^|Vg9<=~FfubUv$C*qvaxaUa&dC;^78=!KR;L@l;VN#Q1!xj{|_(-axgS7 zYA`bjGB61;G7B>PKf)jnbSEn#7%)HqBgk=V>>Qk2+&~3e1sIrsb~CXsvjSZVR9y>{ zXJ8Rz6;d>GWD^cdWLGK_F>0K+kVDyN<3Z7&iyu^slZu)+xx~aJB&Af<)HO7@QW(9J}x8 zm-)BEAF(%X`MqEJ%|Ee=I(wu|Th~t)a=YjKYM;~RXqLZcPYXcPv6#bPka zKF87`FgP5JL?AIJ6h;|~!78h&$f2tG-thNs*@w~Rb3cxt8lbKS&ce3BVd_9Z9R^p2 zK@DJo+)pIzJ;3jPEjfomD`K!pas#d!P>}DffPf?A9?Pv`ryuTIwPNXgLSju*4@j?S)bVgJD3%b{V>tC7)($*JkLGw){S=9hTE0Q>_j zdHaFbA9%@w08>C9;0W{*FPH*Fe#6xf$W7Z(%lEjTkB~KVOyU$*>`l2=Qj6KV!*zV+ z(XdwRDqYil+{6;K_ssq~V(0!RW*>?Do0kwQgTv(F!PNmCEK08`oW+8z;EQ(f)Cot? zMYeT41QflJOgE@ST?w7Zo9W|5Fy?l34@Kd9f8*lKA`e80b53lpB=;mld3w%}f2!n^PxC1@n2T)Rw~r5Woabr~W|=mPSC}`pFk~sbK_OM!Gq3i9h#F zRjT46y<^R)e?GmM27x-FkF+a-&J|s}*1~y`tW-}|VGIPs^n2k@S z3sb9!xNyI{H;|k#7%BFQDQrFXXv)ZW!Edl=Q6moqf&QQZ2uv9gPXFCUx{xG88_PVS z`ELD^d8G%`enVqfu&OxkB7fQ`1`UCPLKXy`a@V)5hJbZH1md1RAS0=L_O$HWgwL#l z0|atZO2tV7J061nusYlY5iv^ zP}h0IqH=*E-BP`_B?dn<=hL0nMHh6Gi2SHIqF9!Fn-%-sp-Rfwqo!U)558~)bjcXdr=p6AblG2(zLf=jYTE(XhM8t?;(mPPQvW;LgChxRh49CPz0`c85*ow}oaCoAtgERPWeNJ-t5b z#Rg+gENy-n+Omvzs+hQK~i4Rw|{N|iow z{iN(WKaWmgSwex7a8D3&WWxB|eO$i(&wMd2F?-s({I`P-CsWRV7;M=y|75aLs^|d7)Q( zj5Trexd$(){xEhtv*`Mk=8{0|ybF@)*99iD<5Px5T8v$GR**Ea?}B5T)T_6x_NKjz zCyoubEu`b-ifj7s2DJXzFkn!3qx`3>d-FXDJ1&=)=I}}>@xeVrCME4ZwEgr8H~P7@ zq0aKa+fhmD3*>?C9!Yi99yQCXHfsOgkET%Lp!*#@@rCy~FPsbW>xY1M{+E6$w;;Nj z1N%l#dFo5AY2I6tqJ&==PEMHy8v6Nj?#1ncs}1~_I9d)ZbU#kZlxpBRS`3_{?#w1m+2#8Et(HMBoIYgZt&p(k>DAP4y8x2I-Zml|+aA>9WF(`R zEJ!BJO@vw=_924?9W2XN1+58$d)?j@_EoEL$10+Tc6v`Gq>d2@6_=1sXL43WU;f2b zn4Eh@d=lZ7fg%j#4#ef#1SdpZP+GQ}=7bs#VKy>ehj>VHGZurZRJZY1+Nth2=^8PG rcD7Dtt&jB^ZRDwvF3*|Wy*$RoFM4Wz*)#jE-M{cp)Bm{uQ1`z8T*)?c diff --git a/tests/drawcustom/test_images/line/dashed_line_diagonal.jpg b/tests/drawcustom/test_images/line/dashed_line_diagonal.jpg deleted file mode 100644 index 880abd9511139e6bd9c427aa7883be744adb75a7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2803 zcmd^BXH*ke6n-I%L=c03h^$#D(qZXfSwvkVQL0j<9I#L#AcUd`#wJ-z(mIA*zzUAKcx!-!w3qarn=Mb_;1Of065J&<7DhEV(oM^-nz*is^ z2ZzD(;_z$W0OmTt1HYRGg+#+6hNFYw`v65i3vN->$E-JV!b*4xsfEO*@JjAxlnR?S zPDrUc`-I}~A{#_Eib-#kk(HCz(A3h_(cQLZ?=J@X3`yjJhb%0utZi(M96fg2#nsK7 z>g(qpaO(7#u=C*;A|fwF#a)X}NKCqZ<7R4FddA&*_cI^lYAqJme#iR*BzaG{qF__hu#m5j80BX&&;wu&#^g+ybu7nObfQl#Qw$$76HM7LLpJu zMP3M=0Qf`_Q0OhH7(snAtdsY83AGSjq1~}5j8dGWy7`2#vri*lL`tJidUBE460?6s zEObT8z7hM2S0~^@BH+nG5`Z4yeo5vzhX=A?6>i70eY>9{+CAU4C*O|+frzB}O{Ogy z2~ra+k(V~!ri#&T+#}`t=HxlF){-PO)6}h}EVAU)e6AI17cQ7+_XuS5s92rS>YEW2 z=NJFuvTI|Eva);uHR@F=;RBa))!XWJN4@$yqV{6dNn+?zYeqMCJpc6pY<9>}6_+ zVX0#qI%oko^V=0FG6X1Ub(up#t+tt5cUFADGm1gO=LAh7D zBRfo2p)5Qx$m)`TI0$rXg+R-G2o&pa^daCtoa`%G7=arlGrbU?LZF#8J3dFVfPgfX z8$la&gg`I^Mjg4~a0;hBfGEFWv6e+X$!hBnpR@0)-)-ZEn;FNBG-tQ5rsWbF_U6V{ z5iYD3I+n}`xkNsYeS~@WF~4xSVJuaePjPcz=zMCSa^vB#bcRJ>`{O8>4 z*FifUHwyb2YV<~MP7s}2m2T1 zVsM->kY#!3=%CCQuYfPNy^4rdMGlW9Jj#ZD(h<}BO|&s>vz?t+?WR12Tps&~Kiiv7 zoPu_3k1`F7mQamWcr}*Io>=AA*`T4c#$v)Ui<0V^SmHHznpW(~-Dxjq!fzPa#QUS5 z8vCa2E&mF^!H;&?-dVP44`Za|&C{esvzh}{2Bz%aa+LaKtis4d{pc#Qy5Sn8n@|5c zPd6LpMWc**1)18&E91I_21N&d?e-?bGaMr9T^d$dn466tAeFRGt-X-y$b}b>CIQX_ z1Y*__Kbvr7A#fK0^LG|*L4ZyxyR*clwIZBFZselRRpk4mq}yCm-49eepC!=vz^ zWlnxsuftW_ofgUT2ccv=eOu-U7E`D4j+U}rjk!6g-OWL%qU#nxfvi+%Y<)u~Fs__T WefU4yGgh;iukv5uU#IIq9e)CD64uTD diff --git a/tests/drawcustom/test_images/line/dashed_line_vertical.jpg b/tests/drawcustom/test_images/line/dashed_line_vertical.jpg deleted file mode 100644 index 30f9a76200772b264adbe4fbb64692b7a6521e23..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2512 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 AYybcN diff --git a/tests/drawcustom/test_images/polygon/polygon_basic.jpg b/tests/drawcustom/test_images/polygon/polygon_basic.jpg deleted file mode 100644 index 89711d69c04e472e338050760831d4574ae85291..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2216 zcmex=jH%)-h70<3JTV8F)4&d$Nk z&c?~f#l^|Vg9<=~FfubUv$C*qvaxaUa&dC;^78=!KR;L@l;VN#Q1!xj{|_(-axgS7 zYA`bjGB61;G7B>PKf)jnbSEn#7%)HqBgk=V>>Qk2+&~3e1sIrsb~CXsvjSZVR9y>{ zXJ8Rz6;d>GWD^cdWLGK_F>0K+kVDyN<3Z7&iyu^slZu)+xx~aJB&Af<)HO7F0X)m--6`-i@NT>mpH-uPqne}<;}?eqT}yTJILfh+%! z{$JVtqw#;l{@DCycxKkX-&ob&{hwj$KI;naqx-C{)+yB=+Wn(3e^EvC5v#k~Cg;|F zH2p~{hL)U_y1aN zBkdsfpTU8ZL4+ZIy`e_>Kf|Q%-x2>AZiZg2{~A|eHfj+p)zLBNOo3@*`ybVR)*tg* z_F30B{3!p=z%3lQ?b;vbhi`@M9||{<&);?_$0X52J@Uh|rA4#fZnwgS?B+DO;_>*aJ&*UR}|JVKUKN@R1AH@s( zm{_vo-O^qC-j}~rTvWdJ<*(6IW$#!cQO3lR)-z{Jc92^LNm`7f)MyX{&^HJe|K9`v DUlMl7 diff --git a/tests/drawcustom/test_images/polygon/polygon_filled.jpg b/tests/drawcustom/test_images/polygon/polygon_filled.jpg deleted file mode 100644 index 00f5097d4e8b90314b65f39fdcc14cd17f39a577..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3023 zcmeHJX;4#F6uys_g#26W(vSx(1=PwQf`XMG ztGFSX2nfg~ZWK`<5Q?B-Q4t|%AV7Gx4|MFCEf!4VhaXRpjC zQQK0}JIC00-ys@(@|3C5rfX_x>&(?PG5wCUVBw-wtJkbGTW7xB(#o1+V{2!>W2cL& z+b(yH{Rez}{rnFG96oaN=aA5_W2YidM@64G8xxz5n3SB7dNJ)%W>$92joh1g`K4v$ z6?ZD{-n;+!No`%dprKLt?766|y`%HR%U9yQx9=qV1Jc2vQCy==#%G|Jku19 zQX6CT_lO-D7qgGV{^TVD6HtWMJd^?0U_=%#7eog-;0qkv0H4EMCvEZ*=ZbiT<7Hmr zDTlbGt$c=ifLX|`rAh9*DRJ`g{L&%yG(D62ln`v+n*ml|#=N;e`4UiT+aZ=1NK~Dp zt_FHF4_>Q$!PP9ab!<}5txGo5WHEh`uAFwVE%XW8=!L7Wg(!Z~>kb4`tzH%cMv}6T zEQf52`F2?%u5o9pOu~~w(1$=k<98F*j3vTkD*iJdhzVfd@bnEA;oBil7U|;w#awI< zKyakGKL~=vbK+v0c1sb0hlR{0(*iRw1O^a;XO=#M|CGoh#yhm zHM}2!bz%KgetezJ?ukgCwn1pF{@ao@f?@xtPnKkVJst=*j}oZsx=wUkrU6t%(H?LO}?mn>zm zO883t(Un`oM*g|wai(Ha8dz zQ3bQcBH?1m%EkH+9F*33##lY{HY&F=U(d<6*|0j{s_)YWMV&Y6E93r)fBj#SDA2vN zr=hbXEfWIKvUCU(vMf9CxlLUfsnSKvBEEJAw<|gS_aaMv_u}I%`u^qh#je`B2KGvI ztxS&z3hE%ZJ?QXIcA52@>+7CuCuH7Z`YvVJ=Xpdr{>J&qc33IDnm^tHg{{xEYh|8L z|8^vSy~}}3k{K4&It!LqCcfe#>0VZTB+ne9P0Wbd9w>e?b;8u;Yo(<>)lihwW}T;n%ya4EBD( UsXAT_zvg}EedZri5QU9@0Jy(;(f|Me diff --git a/tests/drawcustom/test_images/progress_bar/progress_bar.jpg b/tests/drawcustom/test_images/progress_bar/progress_bar.jpg deleted file mode 100644 index a04ca55d0405baa22ef888525b87e9486a082cc2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5890 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 AH~;_u diff --git a/tests/drawcustom/test_images/progress_bar/progress_bar_full.jpg b/tests/drawcustom/test_images/progress_bar/progress_bar_full.jpg deleted file mode 100644 index c502e5b251f4a848e3984e05f81a6f1a91a2f0fd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6259 zcmeHL2~-nV7X1MN1d$l_MTxcx2ny05OM|Ax5d=gQL69xt#-@!ZNMtc0vV*iNDxfgP zCbB6QP+8Iv5J5o`G)UMIcA*0aAOuWOQ+D@s&rHvpGiT<^nR8}*RrP=UQ?IJtz4iWk zuRio1VuCf+7FHGjfdBvjZvg58dx6NWA_||0iova@7*g!BAjOeCiMY6ggrtOoI0_{t zg+fXHwS0aELR3@~DTYLei=$Rcp`=!$Wne+0e^UIVlm2=1*Z2N9f_?xPNpKmVDT=@V z5ez~UgMeB97Pb?K_({Mog7|ElxP&B1Y89+NS_4GjcZ-OLB4LYR?MV1K5W^s4H|XsV zmviuz_$o;L>!|Dbk{it*K2va{ayIE7J9h;orKqH=qPlsDhUQi+gPn#(#wOqF{lh*B z%l%f?hn$=bySN^4JAUHiDIZ@y|MS5i7eWaa!=kUo#Ky%ZB&MZjWZt-WD=YhML19sG z$-UD1)isYuwRMl5JZ+}5v_5Zp(cVGpe*2Ez^S+nC8Xg%P8=si`FvXplU--DV#9LnZ zj0*uoe})COKLh(4Trdd;5iv1QF^SK(5F(-QA&L=0ZqO5#-QytP9VGYF*HM!4=GXHd zK0|HPcjPD>J4cmL++@Jo%>4}QCuIK|uq*!(vR{GyhKm8DMG^4F6U6`=5b*yfa#;#! zf-l{Fl>)x8pp@(%$gp{q_vq$xT`|JO5ygC#t|ZUKo?2nBPQ2TK!={rOL{cRgaD@(OX?A<)v1BNRd~lO@AcAHVI>J&BWVyAO?`_S z_8^1{iNj>hH+X&_j#Z5ds9G`h^nm~h0+PhJ*wl{{CH{j?MG$D0;M=64iLd!CLJ1oP zWW@0eE!iOuuv}FR0Tzyh7TQyVkB>p%1~!*&Qw1+!jZk5Nbm} z6t=8muTX8{;!_9|#L$VHJWd=0G<_l9p+|g)ev0RRPi%S2S>i*WmB@rG+fSsNxYUDR zIQ#UqP)@i80%NPO)3LhC-b*m5G&Jv~x;g~%cvXBE*siT;-sx1vwD6kJ5ePIBo3Z@- z0>Rl<2yEL8W7-1&*%8XnJOmUV5CtWf z|A%Z_P43>xV?h8Z!m&sxCd9Rp<0<;@pghsL%k|tOff2Z#H>czu{Z!T`T{9v*2 zDSuysCPwox|u&S2tLAc8j`l(OR* zQE0rXXIM;xT?H@9@VeX~VGCzh^#Q8vTK9^sR5@Ex)SC;@LRp+g`@*Y&W-7a{JWjSJ`%lA*2q~#VjpC;Qb{n z9&Lf(a3{k43?Iu%u*g2Ptx{Kt5WK8ry~C87jI|z3l^d5GCuuf$3VQvfXZ_}PU#W^} zSZC9Fe&l{zpL_2h3CY$C2sfoI&4zsEJ~-JGw^%5soiQ+dE!W5Q;W`ObyJuv(Akd=6 zb7`(Pj%>LsAM1XdHLq$avZE-gHL}##ev6;%JHnCX=DO$s99!H8^8iSGH^3JWvhWr#~{qtN-L8RB++1&-)-U-zjYSq|y6GP`n)iPX-`> zRq5-B=!dggSVm*jViD1gc(T2RMJkw^y zH04o*A4VB9gn?i*Pa~e^Cn$q!iE)Ej-hN`W*-&*(BO|bH-)#CEyNwZg@%Hgf2>3tN z3impIen{52S=+M|7*6c#Th4Qiag|6ICbMSapX|g2kCP zF@EpjYBI8ei$`867<)M;*;{v(UR-LyMXPV&=0z_IMH3}RyD$x_IsU>4Tl#mpx~oZT zNoK(}(D(fBcIl}lsM80I*zfO9*n7G4+cq6tol>_n3X3sX$Oyd|RS>W{ge%P!xC#-l4@ckv z;0g@_@*!wO$;geG0{$jm)bMsWx3>%0DH}bhW}7ShYnAj`S&^y?i`bdx9lrPzZ`#$s zvUK5E3|_7!%R*ZvK6#RorCIdUZJ?)F|QRSLRD zT%$z>S1I}gM~1`-Oi>alX1_nu-;1LNB2VS^uP)wNrL^BY%Q;S3-CX%>uR`}BiCm|m zAB#fQHEDWQ8HJN`%no2NJkRL1ZIMcnbh|9v$@sD4x`w0753MElgA!}rxmGZ7@z~l> zimuE{7EX+yKcb$%`k-oQt1na-Z#?(?qr#e;3s0zHzM*>CBB~qG!qWV_&zjIx*JgA( zunD-Q?7q=}+#tJHlfkXW9@eB--ydA6X=$xL^D1AmwAXJ|qc~@+&(-wBEDkP7$1Idp z6@yni&G$Z6XCAnwKf;uYWOq%!+1HXkvyfH$a{Z}S(dc%H^zC{3_IWpjUF946rYo3( z^)rJ_;knNPhAqLVTbrX=hUFhj-+1H1U6Yc}DKp13IA`7!3@B!Av}|@OVIN_7Y8;`O zX>*2#7c+~eyRFXOgMZ4TmRjVDA7@L{rVXQfXeZK8xhkrLX^NIwXWbQozb+rV>fx=X z(exmU(PLX*az>}TE21Yg;+xKZLlueTCExgIl6~S6#~cqiWE@ATJhR%WX=|-z{lQ~i zmvMymyIvDw@#nXa*DZI6-sCvrcn)-e10Gl45!NYc$g$UJNnRz sMzZsHiS;>bG**Uc^pR|J(+fOYTTOotDwF>CW z*o{i^=xq7XS`&b~ff8`Go9NeZ%b)Pof+h?xty!i|Kmn;nk zT(&$Y^v^5*vg+N{Yd+ZU;l_wfkx}tmw{1^I+_7`-zSOkz{RjSbIOE8tnOR4VWuMOZ zJogKE-kJRK7cLf;lwP`AR$ZgKT6^uAy6fLJH2%=ke5*yRz1z`w?|xTz&jWp5|C0fO zks35Hx>&$|DhnT<3i}UTI0!5&4u{R*GrCw-3HZ+zbGWb0;n^;Jhrcd%++@!^*5lte zbgHOI;NrDHXSY7?rqJHiTkEE0qzx}OqS7|mv3^Vnh_z+ygWwOa`8 z@cZc{34y3y)9PrbrEcmxI+mu_$kOLd5@syPs9Lk?z^rrS%X6a^q&BRLa`@!z#%^gu zL1cGPeq{IS?$>5&=FaA)eik8VDL>KW>tj+km1aENRiMpEll01)NOem3R|c~0M|FJC z+vJbcO`ZJ}rZ7nsq3tA!2{UD$j-WdFJp}hN%ZY&o`Z$74jpd9^jiqj=`Yh(rK_n4Lz{MCWe$GRD2Z0yO4}ty)3%Zl1j=4oJTb1nZfN4c zt6e5371Z8#<(pPxt=Eazy=|F#qB&Na^YHSH!a|=%8}8gLD2>0D*!s0?vHLC}3Z z8Jk=ad5-K)c%5%{krfjb`;b%#wb@5SZ|MdE`{E691gGm5D{Q{FjNscgaMpdosCcs4 z&yLhy#HL?4$)?3BwT%AzRP4gs>@EbpTY(&5?cE|Okcc8pGi5km)X_3?+rL=|th<;T zTAHCy09dnTtDVwMxbZ(+smv|gFJ35p1j*n`fKDPc#8JViN37{!VpyMgA-k4+guYX zH{-yRDhv%Kc{ff?FOQ);2rf(0W@tkmoP2RAlgi+LlQ@@Jiy&5E@su=Qsgd-}#u1Jo zduEyoYBhtda}>r=2tq=MQ`wexY1RlF7J=T`{25WD7;=-?Vjl+EgTQF|6<)J-(X`MX z!PJls5Ns%@k(iS8uO<6BkoB^mBm|p@{9XUh^y4DEAcrxH+no#(Iw0-Q0lAparbRsc=x&|{I zd48qd0}DLCIVmDX7&-g^;X!^BbE~T(@LI@0duMT_lZKkU$d=$nhC7xO>!%dt^%#S< z$sa5z?kICRk&)*TP?z^dPTBE-S}zmzVY=-MJH8WGYMxpMu~Fxf;Pn z1FdO6P_K%pe>jLuTBwm-Z|Y6)!_ONieLr;S=LIk({>4_D?Of%wYnzl_vZ_LAe2zrckFoIUT`AwB2nCw&F91>C6jZEzj8eC7g zxD>NZE1?1^TQSrnRB&-UvG7r* zuRYm|Ks#QxMMEUqo?kofyTI*XHO?!P0j0(F?^PZzsb~o6_p?Yp?TB$g(DdHvlCS}f z4Z3!pLF>TyK(VYt~67;gJD*pB%-G2CV!!Eg&42CE|j)^rcXeOnB- zW%#W}np{Zi#=Tydx%y9-ZvVYHrkl$!eh)J5*qSViUjfFiD~a(dR$%#K|rQZuSdQ}>$f?n-UcYAWWcgLMCvbC1jY^QfKriQo6vsHgio cO*?(bbz$Z#g*#+}$?x}Xz?bVYm_RK*0foBstN;K2 diff --git a/tests/drawcustom/test_images/progress_bar/progress_bar_zero.jpg b/tests/drawcustom/test_images/progress_bar/progress_bar_zero.jpg deleted file mode 100644 index 86a573cd1a56775774542b049b4dcc0f58ddc88b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4002 zcmeHJ2~ZPh7XF(gghY-3xz$7g1$5En(4ZoyC=5C(hansSih=|RP(cX_2_9U6vdE!= z7-3|h9HLy2GZGRN5Hp}C$E*+p0mU&9i~&M=8l7@$c6X|#wzg__XXoqc|Mg$}`tSF> z_x`UN?uG}zSKAz%8~_9X03io}`+z-A_yQDig+e1E3XMU}0i%fd1Vu$GRtbw$#NqIG z98UR{m|Fxwp->n!2B)ZqQ^Di#Dr%|-)YLvX{%n*#&wlyrml=Eys4Iau$OHwc0|j*m zr4GS7Kt$riK%W491~eC(B3229pNBY9eFYSdcPpS#7$joEI~KVQ(CQeCCFYwH=ez8~ z8XVTNIGLWWWVrcGla_0T$jH+F$SE9NTSr$D2TbF9@JM z(?Z72#Qu&Kk_1QrjYgrdbG#shDC9(`qcKa&6*V@wVD}xKZ(wm!Npo|0{+%YAp{1)x z%l}9RUfak@xKunx?Gv-#M(otT#Ow>Pzwzn?$|wja9!ee9fmzu#g*ZGg0e_hPXbPt6 zojU18vTf1~u|$_{D}8=X-#E@Dge47c_SF}?UxpMMQZs2Z3?797qUbxh0Sr32Wn>sMg*OZ2`-1=s;z?p1 z`S}NfW%7A+0%KyqMy$+~lf;=kW~apvd5b1saH$vA33tf0!rQ7|K?tc%# z03SZMYIac?-%qA3vw^{@HF0WEH-O@V>qelZ0G7>=6V z)VXV@|E36`L0cO!C0?#aOIU@c^-ILkv;tZJ`CR`u@`oa`Hg0*G^AD@pCx<LD-Lxv~qkQaHA0w!ID6jqSDzk3AT?DMqK1c)G8vy^SLssq}Q9BOA;R0opEH|U6)?5_Th(HHU3n`?1{6l z`p9K0M*75L`8TnCAuWkFSM6s|gPdm8`^r1peyGZuDh;vR9G>{Xi2eLeGV{YT2W4AM z^J?SkUU<-sZ)YUDiQQ0tATejf{sFOJ!C#IveXTpxRr|f0^N~G*-DSl-ZyV0j0=h2? zhm+5l)|v-fUE#HG-|wf~|MrF?FvNz<98J2;n60)r^x|7% zF^W$VAF@Fe1QQ6)Ci~H`r`|X72xgs;A)|ro81dt`C`YTtbG=MEvTolKpMpNj0!?Uu zs0f3h0{JsL2|2QVmU30)ni}KRby$|xNom6RA=@#Ln9S($6Qz&1z~Ib@8Nb#U=gOWN zvq?SC{cFZ&bHgt_jwzFb2u){J#za-K*Hkx3K9+{Spsy~P*wxKS^9a+Fw~t6{N9>kP zMZeqLdt#@Lnaq2F8pg0-;OPP{5>Kt?xsb#UPomq@h>qn7iAp}6(yME&q^o>=RNK63 zo|d$yJ}Gaw@>X|?r$6ShQmRTx>*ECSLI-@-@rq%W)4R6Jb{Q`Xl!5wj1Mm%`ZfRjag4)n+2(IJ<-9`)vHpO zx{(c`F%jZyZl7yM>G(LmopVNp|2W1Pb9irWpxgOcn04iTiRW33{A7Xqd~=pVG0%Vg zNKuA6W%rn0HtB6tLs_hq4Po)XxNpG8gk70CnO(OnGM5dn^z;|Es+NWamQ3YYFDtk{ zSWt5zWBabooEg;A!(aOls)5-;&QKmLLf%@&Wz2fe37>0ayHWIxcg|SI;1hdyw(%Ra zr6*ya<;YVZd5a|Z1vD(baq;c?+en=Zxzo`(3*IhpYN!rnuW{qGy$W;RtgC7PjS@wj z{i>YNJ#$ifdI z#iKjm#!Brz`{cmhYbFz@Ltxb0H*AFo*Z-iv71!2S{H}sB#iXW7lbJ)8DDh4Hg*!7i zbwMpF-nEYCS^K>CvFcV`-o+I9(ilkm;LL!?IGIk6xz>wfE4(hnYzP;z2gzC0eFiG^ zTg|LYqPFUhc?V7JwO&ziSSoThozsm>!zta?^314_9l! z5%*N4Wy)TmU$(d@Yd z4QW0goGwNQF7L)3S_mR#aqOF0+0!(n=GaK@#>taR`BdEV53sBAJY9kJGgB(Xpf RI71sTf0+O26cFK_p8$}&gTMd) diff --git a/tests/drawcustom/test_images/qr_code/qr_code.jpg b/tests/drawcustom/test_images/qr_code/qr_code.jpg deleted file mode 100644 index 7cbcf220912ab16fc1d52d88d8bfa8ff8dae1971..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14349 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 diff --git a/tests/drawcustom/test_images/qr_code/qr_code_long.jpg b/tests/drawcustom/test_images/qr_code/qr_code_long.jpg deleted file mode 100644 index 08e823ef2f26b3b5ae6732b116a3f8a77b443309..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 30766 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

    x0Heze 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 diff --git a/tests/drawcustom/test_images/rectangle/rectangle_filled.jpg b/tests/drawcustom/test_images/rectangle/rectangle_filled.jpg deleted file mode 100644 index 717908ab616b230d6e6c9d0ed94aea5fd38f8cb9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4621 zcmeHKX;2hL6n?X_2fHY^pahR(N|8%ThyhOwqhKIt6cu$94}z!!H6n(%Mv)Ob07Kj$ zK|G@CMbHp~+(JxN4p}!A8azNivw#u7WMx?t_L!Z{phn9il}e?oia+?KrhB^Q_00Re z?ta~kZlXr$H_b1=4=@Y>V=q7r;0v5*z}Y99%ceM&$L#@+&wC6$Um&m$2>3#wNF)^Y zc@aGy!EhYsad|>MU)Wb96!o>XVqtCl*zjrA=Sk_sw$DoFJcun|E9Qb@V&I4|T#TU# zAXq;_-Mrfu7I>`X{Z+O;S3i?qGz`}Q9=cKk%fSD7bIeVv<^ zUr<#Id}!#$fEJ9?-+X7=xh#s4Q}&xk$eRS$h|jO{#J3?!K8Bb==waDi7L!*%kmI0W%& z8)c0OWn`k7H;FV&q{=D~?2wvMx)iol*%GUid(`T-4fT7dW0x|n6h$5mN?PP49kTX( zQ)SD77{a|U-F=MaxU?WUcT4r7#U7;-6gH;7-|D?<>(+Ogvme$nN z`tLzd-Vp0RRUbmo;**Eq?%V6AZ;C0JMxa{3_}@TKVbhGj$U*R9K4o~H`m;Ilt6K;H zlGH7vKBszZdv$oF$3tjvHzVr2b9>_D_F3o5GWy_j`{id#4l;JUtTnqG-82Q!%VvTz ztjy1-upg8+>$B;_p6TC>`uWqNDw%fMu65%#?K_~K8617wRb`syRvo`SHTPsg?uNqJNzU5ube(RIz3*;<9b!`;M2 zj$)a8_73vv_Oe>7U8+5rQW9oY!c|G>0#}kKfu z5y`G6`SJ_d$y6VDy7uywazad=iB*L)Z?0PDrB~#7ZeH?sw{k`1bejizogHk(N+P^w zPS$-i>G1B*OPV3+qcp2WX*S>XR<;hYZ1xT-Wz_d)Wss4oDoy{4$ndJQO9RSk?@7Nm z2G^@A$)@Bf#kZc7s_$ zUZgATzI;$!sDIP%)IDAA+Ra z&4i(22ZHk>SkD>}Bt$R`#KW;MVzvr_4W;{5_J|bH*GzX1Tuh+fld_GjB)c=11VOrh z_6qE}iQs5nql^*gQxT*^Q>XNSEpj!%OeLGc&L%K1p_EpnpwIqAlH<=68H&L6^$N1{ zjwOPv^Vq#~DFUl&=0dV{jotx495bA)TSDBAwKZgRD-onv>-Rli8_DfMXihc)H*5U{ zxh4mJZ+Iy|TX#4k7}1I#NGq=*e<0~Zs#or;|4r^F|GDhZER?AaF5G{zP2%mQciC$^ z^i56bIVs~{WwYGnLcrBTE?zmsI6r^9#M1A?D!-s}!K*aEZR(Kd&dx}}-%nBO4<{$RalOMe*2iTW-ipEjh?;r9n=>Px# diff --git a/tests/drawcustom/test_images/rectangle/rectangle_outline.jpg b/tests/drawcustom/test_images/rectangle/rectangle_outline.jpg deleted file mode 100644 index 3fc3097d099747bd15695db6d6c1e96ffa731f0f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5039 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 N;=!u;pLGsa{sZ}x^F;sv diff --git a/tests/drawcustom/test_images/rectangle/rectangle_rounded_corners.jpg b/tests/drawcustom/test_images/rectangle/rectangle_rounded_corners.jpg deleted file mode 100644 index c20088c4bdc94da286d835b2001e85e56dba82d0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4939 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 diff --git a/tests/drawcustom/test_images/rectangle_pattern/rectangle_pattern_rounded_corners.jpg b/tests/drawcustom/test_images/rectangle_pattern/rectangle_pattern_rounded_corners.jpg deleted file mode 100644 index f278925df6668a4c63d4df4fee74a115ddd10839..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6647 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 diff --git a/tests/drawcustom/test_images/text/large_font.jpg b/tests/drawcustom/test_images/text/large_font.jpg deleted file mode 100644 index a406daa30e527047d1442a35ac1c9174b2e53682..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8113 zcmd6s2{_bk+wiYx>~c?J$&zUyB6JsNk+IyAHcAL-D%o$QMW~oRbtAeFg*)9fT143r zLs=SIq{zNz9Z~ifF@{J@|h>NfM z`z5#u28+cC3ki#hh=@x`h)YP}eu4{!TYlqT4=aB>`+M2HJwwZZv=|7*XkszaV1+aW zD~&;`0UqvC7_+>g=N*5mf3TqUV)Hi8pZr0K_*kQPH*KYG)EG+l! zw>n^Z+|J(Ngrk$|IX8C?PcQFF{+9y+gRWe?@mqLA8`tX;L(XZde#+kF<=jK@p?8PO4 zUKoJ=p%(o6L$Uu&FL(%;6+%K-AyI)|m=%HW7b`6!y#8kq8PlVpXD+PXuq{kX)-3)} zUWNF^?Z+5$XD>EO$gAlOsWSztEo=5)Q|$VGOS8Wz_Mdw7fR$JbG#*wO5CD&xx*}8p zXoCN*2kv?lTu&u;Qwk`PQ_O`*RSEVk=0^T16s+{7;O2OKoJ0KD=6T#Ueu#rzVFJm} zChyH%cWuv3&(lx*OzPA^$>))(W)%1}F6knRzp`CXkf;y-&r6sk0t$p^ynKQep+{qQ z<`!3u8Asp8-K4svg^wRs>WjU{i+eK0ci}4KB>JlK`%zqdH&;7s(`|WoWHSD?7~u8) z&=Wf=%9kkO9OVY^Qcy5thJwnw%tr2dgpq<&+M+<*kb6+SY~K{2d!QTdhJxFPX&ns| z@8oIUPc!#-t^wRo6huDZ_fh6fqF}b0QHugCPw)?}VJA?~rOle>Ws&vy9RvxoBKIIW z8-9S^_27fN5?;|`DWh%5nb44WAAZ{`b1^aXunJAFd z!J*)eCbVBf9xsXTZRD*SGUWCMTGkC*MXtYHA0$e*PrQ)B-Nmep}j=XMCkETrWkkdz|+2I%0;(kR$DW zkEt=kQPZlDyGAa@oH~B&%W3(ef5w}rJ~9yoaD$>0_5{7QvN0S5-3TM!Se zszC_ybiBu&mgbc*9saz>$7vJQONt+p)paO&M^QkLruubyf6y(p`1ijnuC-bzw(hnk z)-2TMA0Nid98~E$7M?dW>78^2j+c1@ z5}o7ybrgd*uEHL^Zy^6GiC1nTIw%EXF$*Z*$_(?Z^9Mb6^#e=4d$(bDWWkN96{aAe zG^{xXk#0L?GM}QSi7kf+#f@?JV$V^qDQ|d&qg9;C|6^`9;E|W3hJP9vq#`f`F@g|G zL&my;;meP zVexdy)%~$+D#TvA2zzLy7I0!X*1#ja+cn0q`*Tc0(4z|jiEOpGzNpI6>R&Qm>{(OVvr6>H%O5=4*yA5`>%D$cIg4ngq_XXOP zbWqE@r+s)HjK7zeMIlf|Xj6NC-S9h>8^`@W#gy@}HGF z@g9)mA}_|AEE8WmIJHo|-KDo~sO*^62Ip&G8D0mq%nct%Z26TflOfUkK0(bd72mor zY09}4w3_w0DLZ)AHBs({0hPJKTE6BrZ^a|}$FkH4^OJh|58GOoxCMomw)EA=i@SXv zKKuTcjO$kb;kFjwqk{DHZ-F1-re04i{|JSZ1dW(Etj9AxWg{92BOPkNmA2&{cC8&? z*#-MdxYf(x-f6o3m4o)93X`*KS3PXvNnmZT1LQrzw;G zmH%>(wZx-x?Kt+q``YvmYuIu$${VrXML!4cYSLNBta^TB3u9AR@SR$r+zXeaH>o8U zaP*Iywd-%K+bUYV%qmC(Oji)LmcNbdIIM>YHf4v}kCjDd7tA_;y(we9PFT_L zR;5}xb5~&#-Rk-2k6I(VUPgrkV~y>QGT6$A_~$QE`}1;dBXiY zK>^I7JvV9xUU|gLBR2BhpeEa|iL-Pogz!M`# z&=__($n0z=jvYdrvPOX!4#HHJd9Kum$Vr2$)+g6C?}rmQEe z*_Jw_?9zcLAIV58n?M)_Ksq1}qAyB@PPs;ujzRx*6N~qa>cCfj8jO z1bWgXSum^IN#~`}CSR~WLi!}%#S98qJI8~S%W?SH3FZPX(FLaILs!=VG7UP9FhI5v z7)~^ZCa6`nRts%zF~>&qi-18(|4S?#iX~)2G3%7I0I_bvEW(;gIFy%qnHWyN6zGMk zs$45sOB!zP8;MBEDnF$jY0@HGTKu56QL6sPE0?nN(v>kP@pXQknnPBHLJ{5Lf&_(k z;Mb!d&!d*oQ#`svicrNDP#MqS1Aa9axVd}2?p1TvbWBNa_8Whz9F5!I7Uv2hY!wqW z{b8A)-6T53zXLTgXm@WZsG|<_IJF+>7%2#!e_&iyX?@K{xOLt3ccja@x!&I`;}Wfu z)_eqOYJQsn_?^N2&`r$9%>yg9%u`lzceUx~#=`QAsTOe6tS+4$KlLQv=hnSX@#oJ) zu?{N#67THNXq5J3v%F&>AZQ8#eP$M#;Gg33?+e*~TE_gFB3X16y1nqP%$!Vm?&pIw zO7f3LUQ+2*L>wEbx+)GqZi>LNUt$W?>W@Dq-m9b-bWj$t5kfcM19C>p6 z0)ZM>OTlrsrYz0uXQXAPeJW#$y1d*mI^JmcN;B5CW28+{<8_MiIXA17?nk#`>Yfb4FsBA?u+4jR`>`Q~lsvs0N7ZhCMWGh!)b?eByESE)6u|Cgmtkur) zo_(CW5xn~SOEj2+#pt=29tuAuou12=E`|hH-vkrs$_D~2G#7ATO;l+JOYtweAp!2t zypg3HlxP~;a)QE*G!f-)3ltE*vXu$rN38D>tmnUBLz$hGNHih|Ne(*z_h5Y{v5Gd; zNZ_pI%Y-O#_H#VCOKF5j6!=Ey8GiU~OYWWOeN!`Z8%Kco9M;j$i%%kTtl*U>cyk{G zM`N5q3AsJ+4B6LtS;&_$6nK$1T5q>O+>eZaAOT-_1f)Wa@TJ2j1me&E?zvSp5|$-x z%b{40j>h3WZwd0U|>z+?4%df=ETC z)URZX2VSN25@brP&q%dTHX23woO#~s*!?;4{fV1{MG-rnn4G`)B6>vzz5VB(wVZR{FjW_cQA~)`iD;KVNwQ z%PNM!r-^OkZwXT1%STo=Mj`M3sDzjB49^DHIx=cm1Mw^hgrHAXgBvSuWBsj$+0wqx zhB=e27r(B*FysIa-r3)e?=N{P|!Ptg4cp8|5NO-ib##)J|Il#2&`K} zTndJnMt~zi+6;RGG1_077D|-k%8^1wgD6!fSf%XTKG&#q^h=kIl3fh-_kJ(a)mL7P zC2Lbpyqf$dyfQqL;E^Ga--QDCpmZ~aVR-Q2VWR8+;>LEZShAZgqVKi-kc8xSc`^1j z)b}43SId2+*gji4JgQ{$u_}vPC@_Xnvy#RvykrvMZ83!A~FWkuaUrNynbl4&0PQd7V1FM zKz>bG7Vkb^hN4}A|7oty;?J#hh>t=yHRDO*Jze+LDcw45`|s|)nVo)TA?V^DzG;5B zSz)F@k_xlmr3I6C*~Z%Jk}9Y9ftyCk&s;tSkt!B!UDW$BsLk0=@*m7~MtBWz);7>j zx|q41RyjPH=nx+cg3tWRVA?=r93KED*$S){cCx?GUaz64)wQgYebJ>m3(fj>&bSum zMR)M$9~bSi+SE4XS07>F5ZJd_X#d(!f{`FAwFvs<#wm+5awA^VFL=*zh+nG-+nE{N zqJw{@)WCTvUmTF`?v}i-O;>|sl#`eFQ73bB|0C1$9`{(~TQNL$c(U+-PaqZc1aBSf z!LQ}M#37By`4Vfk6HzH!dEf4ByZ5%og-`zy@1647%e|#zBfXCee!o_Kq{dM_?4z@B z6K>?df1wiVgua*#y)=$CndnVh3U2y_UHZ|XEYn}|0Sb1Mpx{ywe-K^}fyVpi)y|iX ze2MPCY==r(Ve;<=eP;9)AM2=7cm@ih^fjmYdiH0Z&O0oX@Wsee-uyz^f%5fd@@`M} zIv&S6W~4!X5Ln)?#psL))(PPy(-G0}LZ^X91A^9Oej}3pDS1ch72Bur#&xdt zJ>wrPL9DLPJNwlY{mMd6HPLP#W^Pc*@oOjVb~K_2YWDBd5qdYhe%z%Dokd=X`}b( zFq$WtyIm%B_utFt3Q3}u_xQdkdKtI}M{aG2*D5R6!RRe(v(}b%)v1@}f7e`v zT^xd(fN@6VMH2>JT%9S`lNh6j^9{Z!`8xH z2-$m>2|js1#?r7#?6H%`gtclgJJ_RF@DHQ5i1%%8H;9m3}j zDgIK!Q|Hu##5OA!t0#cYMvi`3(>JDcry4#(JSv^X(rXJH3aLI8r?{de{IDR{Itno9Wn`31YU zZP_*u5&{zmSn-cz5JzBVG8!vsipDBItwW?3U*pc9IF&I6CHwTkooXq#UC8A?U)CS# zQMx*5lKL|Gz9S!Q4!T(YL>?({C?_eB8)ynfj*Rr000%GKTY=haAD7of^34-hw}0Gl zV!ZG}!l#EWA2uDx$~k+U@kXX*92gn@*w6B|upGf8nD7UltwV%(2t_6nykLx8uOx4z^+G4L^kv(#Hk*Krw&}z8U!LLtEH`ObecRLM>@17)-{`hETAC zX?GN~x!R}VCRl=xgzn0FOB+l|nR-@|5qyewm#fap9O5}l8TK2n_dHuX+K|?uVtqlq zBiyh4;pNiLVjS6ZA63%qdkmwh?aT4MEr$`Tj#0poC708r;qakR&MT#`D1H2`2wTzX zRvALqFKocE?*81UCgqx1`t9tS*H=y_7~U0){_Lawi1P9JX`BsIs4xgyL6bDz9lVYm z!r)YOJd|UQ!pXR?9ZvG$=fq;y)Rg4z*}h#c@#ubF(hx=K~;=jx#vY79p zQ!X4$?oM7dS>@nhuF^YRB3(-RQ!zs{Zt9Gq-rSx=IrH6{&wbAx?aI91S1)fTVXpRk zWivoF5ejgV_n2Q9jDvxhWave6J@#(^ZDWB9H4Av_-q;#UiQ`&QTMN7yY^K z{6h7Xbcw&mRtByo#4W7<@<(h6Nu1KZcinyD^ATQ>rS;cpg(9&SvW=-41PA+Kx?m1#zVMF7Rr-c-pTJ3{%5%;Zq=_de z)$e;#S2Kv4N{3^t?lCp*?2h+n%rSvE+o;5T1aV^QFCH>_cj#=ffb@Hd!&j$+c z(zTPc3oWX^5ld6R!~eC}5nLQ04?o$=*>|#kf*?aycET&V^qh3gt(KCv($97~m(s88 zndAPjJznoz;r@-QB)h)uubdLkdvF5#{YDLqVLk%}#tXj(?_zW4IEin!JfkkBv+r0? zJEtFhGYTI$n7QYHqRh5%S<5qL#oWJ(oqmC793wEyU9{FZ9J=qqOUs#GE2I6I=-4`G zq?Y7h+mm_2$bRA2_=45S*n7w0AKl)({&zo-77PoiXk@Ex^Sb zEH_&9<|%`Nl7v3%l_mZhpFMl5xb62frj8!Yi&xdtsW=P2%Q3-=k=yVLYwPQ9}BqPi8|%-EhI7;I2Pr4w-~B5}IS{aW=t@(}5ks_*%_3 zfCEmSss&Z$Vk%R8`oSgd!XiWa-mKA?O)v%cz~$QP5`Qy;5*~c% z5i!WQ=B;8&>6xJz+YkI!#%Ph7$fGkCz8tvo?yK|3<$A@z<-_?8Yc66^agDfWJj068 zg#xw+036&BzFxwG1qQNh3L^hA~4bBJ+Y_H7V}xI;Q>2j@YDPBx26lWyP58t(s#F z#iegLjt+~hJ#x|HSerm!kvYSGU<5F>h5cGlp-{11rUuo=LKNzp$714aA0$IBl zxnW!%65|G6o)lqZ`=Zw~IETBV2QI|h6Smi1l!l%9kIu??E04xE`b=)5y!u*A zTy1_W(2Y)0=&>4XjBGt|@}#57zN`tG!%8mB{mvGfuOHO*Phl!Xi)_8w@k^k&3BD!~ IAZYi00DtC@#sB~S diff --git a/tests/drawcustom/test_images/text/small_font.jpg b/tests/drawcustom/test_images/text/small_font.jpg deleted file mode 100644 index ecebfd40e6a3d130cc7081e1bc35f82a523f704e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1787 zcmex=jH%)-h70<3JTV8F)4&d$Nk z&c?~f#l^|Vg9<=~FfubUv$C*qvaxaUa&dC;^78=!KR;L@l;VN#Q1!xj{|_(-axgS7 zYA`bjGB61;G7B>PKf)jnbSEn#7%)HqBgk=V>>Qk2+&~3e1sIrsb~CXsvjSZVR9y>{ zXJ8Rz6;d>GWD^cdWLGK_F>0K+kVDyN<3Z7&iyu^slZu)+xx~aJB&Af<)HO7hyCa9qBVpKqoA_{>h zAOS*o5tSaKrl2CyCioIZ((d@4^PPLocheE+HueS7?v{Ho(u`AdC=!M-11FhwlTzvLbTZ z4;~hkKYmthN2G$@joioL8dfjc6;BL;n)>Ii+?0@1Qr^5pMQi7--Fx;L7#bP>cF4rq z#@5c>!STq+Q>WeB&vT2}07)|9_7}2$57^EB5wd>(`%hdGz(#}+Jb4IN01fcC zk2WMo0=t3#Q*7jUxeXDewNH*kPahk$9W?NAtX(U<$iL9o0KY!#eLs}t-=5aUHaPKN z(b82yQ^*pPZiEJ1X_M}=E8JbahP>MXARu1b8?prjzz5PuG+O@W*m}*>VC;`=lU-rY z<}-9Cp5h*hm#E8Urtikq#SYvQV&fORIFXPsy9}~t>Tbp)>6i)4>L$6}CU<)|r5LRn z-o0XL_N;Q!cgm=<{(;WLD|NlCQzfNIx9!c^wx&?fle26qsF_*iB7#w#4Zjz|jJNOe z(LFjEW~hT)y5nr-Ht6N)R5jtzW!_o$E<;UL{|NVwWAr)BE)?D`Jyd(zhV1L+@;il`ZYu7V(rL@1@={5 zNrO+66=Vpv?OLa$=xC5fuLjnQ81$7jA>ZwC8ZKZG#rwL|p5+`JRVM1T>OVJ44^o*Og_wIhy{zNjbX=BlU`yJ_1GGgf`r zABMa|ZX{NBZBg4T_6TdwdnNz^X}1Vq^#v%2Wq$p$XL4LrgB~ifL}*Fy`e@&&RC4mA zL%>7R*w0yVU(D}x_Zo;WF1MAuc!Ye9O2mUFP>PrWHiPwJv4`d41U|h%FN#ovO4`Yr zTI|aYo7a3Qe17Mdqv!+mvZ(lH#9d35CwnDR{b^dm9jQ0YBnZt50PwiWWc_Jgu0d_e zx-z8*jf7H|1)0lV$W4O{UuTx7{gw^(Y0JBA_Pf?Mr8{Mm+csWNF_!htOwM!_Bk)K4 zP~@O6Q+62d9?l%nn4P;x4s>!!#i53mEwsEBRCK;P3yrIWQtazT_k|HTn5!tcDO

    ISyQ#WgQfz25GkcQO4# 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 J3L@d*e*?(^_M-p* diff --git a/tests/drawcustom/test_images/text/text_color_markup.jpg b/tests/drawcustom/test_images/text/text_color_markup.jpg deleted file mode 100644 index a1d66635081f6e5cfd99031fd08b4f1b19d5a346..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9854 zcmeHtdpK0z+xM0;X>uk-g_2`Af6+`)jv*D}5c7@1(2x*im?Gy>5h`WKnNTsNoF?ax z%HFRulKs%d#>4Q?`yBU_WrDO-|N0V_gd@; z_8hR^+T6+<;Nk)RF3t~NPXlJao_`8A=Zu?&bL8gX<@rl^`FQ^!e0==;0{r}Zf`URq zf`WVhqx{tf7dJOIFAuLEAD^Izkf4wVWFJQ$kbhMC_hRqgSO4+Ze_pXa0-^%IeJ&Ml zE>U2QC>OUV7rO&c;Cv@9*FOaKcj5Z$$53J)C#%;o;`xd@-kXB(#rbs6-Otyvx}?Ob?+NKzDU2|kkC6};dk%FJdBNtPe@G4$b6EOo%8hB z^H+sM#U-U>u~k>_a7SC+B-VCxw4h@ftj*U-DPR)}R7MGS+zOSxPw|;K_ zqV0gccmKl01#tfji*x)N*nh&s=>)DlJUrYy{D0x%+7rh4bBpru9y!G)cGiLaT9Eir z?FRx9rjHBWwhAihT%t&N-X0W^QqrAQrv3%(AISdCfJOgbA^Rt=f8m+}_HuJ^29H}5 zfB{TK{+|0nfC}*6C}0wpxqKKN-bI`=qt$?j!f+^S*cEhT2@T^mr5QTSxH`*UE}EgI zUBAp#7t_L;>N9(yb>x&{MF(9-k1ss_#Px#>)Dg&`B>%uf48`7NVDcx)yLh|}GiBUW zb&b?msivm({#WElzbW2aw_2i`RS;6ibBlCBbnj*JrHnK0EMkFOGg>hd&*G2z#0Ds- zlW5C^(NKaoSQ;`F7Tt781h-syD0=g9*;R|+V5Efp@|CT}d1r>8^J4Flykxj2r8FXV zh?+AO))AQ2BGfSIGXxb!y5`j^umNs&Gn90qE*LV6+>|(-|H0ROY94% zRZmiHYTS70d0+L0f1&dElmpSQs4z^ z=cHp=_J=n>1lKSUq5jMR%Mq2vHf8c**bDetr0eq7YN6%SYO>6@;qkb`LcjA4cX|4b z6xc&F;SRV8TMw%Bj@=l+jK&58-uo+lesi}(#~}ZQnV_AdSW2m^O4;a>kt@e-t$Hpy zE#GOFanJKAWgwYlE&S-4pg*O3AuNHROf|L#D={TgW|~j`#5W8VHa13Zse8_jbzNbu zC#?+BhdeowCM(%dY&idPS>~Xlk>NA*S7k#(J(VpUNm^l%p2N6IJKC-*L$1xl;gOe) zNp==mi4yeUIaasOp-re5YqHi!FYk;ndYfgSZ1m`fyPno9u$Uf#76%;{G;BWZKD@V+ zghNS-`op1z@O2+>xCY*b+36acOZ7LBxjzfY95EIalpKsy4-}ifg>ygNe+<85RYZ5k zRs2BJ&*-+O#hHi>{9NCAs%}PAcg>&I>2gZ3e5OOnabKJD54wvv+E>%GbDAg7H$d+) zv^FN?R(Q1lOU{C~voAbvSuXkdBc>^q2{ zN_zA!VtkZlEqIBgOhI%w&(-F(?UvM*Ah%i-Q%y$$t~t7FF3h4_Z}2&{&D+UXy-|4D z738h@M5!#;v?Lp)7Eq1Pn4(wSo$cOup|>5?Js)f&-hVn3t$5o}(XRNsQuB*%N}C7l zdS6BFC@tNok(R&FLZrl%FQgxc8iZNKr_VqWP=9*$Hq-DnDq&O;s;VC78ojwd%Ei~3%#-b*n; zJs9?iR%*WEQj8Muh9nD~lsa~>#^eRM*!p*~$(37Q>h6|Qzs#ztW-YP$RwtNjfIkZi zOZw!$@~E#;RYFzucJfPm-^Cfd@Zy9Z|DCt9$W;wp_->&G^A(wJ0|S7H=FCF0EgKLd zcJ{-`x7V^~Me+CyD-GMxR(zvxk-N4^f%C&#(T>9JQAu>AP}o z@nv?+ddyvO(|@vdivfv$w{Wvh+%3M0iQwAjDDB>(tm*vI?3vNllW!kNuP+u#%lpXt zp5IY`VEkb5M9C%ysYVuUGT3B8%H8B`l^jSw^ZH+t89!>Z`0S{th0?13t<6JC85L%? z*01n#_j{*o&+AkeR$MB#vbK}!)QWJMnwtEc`wq2DH0vB-Xn%fpuq_U9vfMnyzrMir za#ZX4vJb&}(w7AP=-PL=RHo#2E)Cg#i{l1nh_yQmwRF%KGi|`aOtXPn%sk?*6X(w3 z-_tES6Rg3dyHNNhdegYKdt>J}v7tKfS1$kh>8e@U(lB#yzhl@{eHkOUm zPA|!7#i4=Eenp9b4srcdnHT2Q*5AswYL}nAeWmO}<=NqkNahG|#kki2ED6!(SkeM6Xd>G>#2*JW)=R_(av#k>0q z!~zn)MXocv|GD4-+v%3!Zl=@$hGZ!%gaS{xiNTrZEI^_gXo;lLI{n#@I%mHFfvKqK zYd`-CU$UiI_I;3b_EA0Cnh&{ef}o!c-=sM)-xF@YVx*;ws;em0TB)v(B$jY^`XwAL zolKZMko|zKOn!MnL7Ozau0J-cD8UAta)fzK+%EVC9pJc;9IAo7(z zK^CU~su0Po^8;}lRe9aQhqeaQ7B)q|W4+*c-sPI8kRNv%M?CTPlykE;8?M)SSjv<& zJbPso;PJ=e8AuV#d*-b%UQv zkY_R;^n3rZp{fKKV$|74LL(iQzZybY>+d@M8nKYyb(F)ciR|Y{yQr zfsO-Ee8E)s9oF~$(pBPwJRfd20EL=euzg>PboYX1>At@@J;j%{B5T?bF@I)J27aTwBi1*+iC`L${?*8)ZCSw2Q{VvmSs`t}LEP5q5EH@Q@+S2()Kqi=#wpZ#gS9VXVL(I;j3Tdij<$g$96G&vJx zXl0S>G@O<7JZwfQbmsOp;%xTCc**Os-WMA3_Pj=#ORQOlT8EAbn+g@3IANcs6O&{u zsjyktW8k7x42z%|toJP>*G!CQh_}vijn-)((Y}QJJ`}#%itbAP)a$zSZ>~E8mLPla zyw<%M*0Ot|8&ekDYRcV?Rcw86y@mYwa|_?Ec6)0(CGm>rEN12I)rKn)%!-QK^?HCl)(JBJogTBkGhRUJ6L9SrRN-I$?6lHvQ zXl`($^rwb88+eD-;(hVebZF8xz&)BT^lfU2{#?;SZ^luyj>&GE4*xoG2w4q(w-jxw zRzjdi7KP;4VkVHJxSy#|XNd>Sb(T)%kK40X3uJMzJSDC@Z85eCUD= zA|7sZ;edLcDkY0tpIeU1tn^4uJ`E)wRzBEy>b-DqCUmvX%1IAukL|ei@*v7+EBFf8 zzq5$+t05WhgNYzDS`|~6@zE16pg!$}O(iL}2Ba#C^1d{AUwY|G@aens`XKJ=APqJ2 zuDH+ccIgQ{azy&1>bPmTJ6K4+FoT>msioLf$CNu8bkrz>$7%Sn0r;CY*@DF{)lnf& zmtj6}t&S7!))noa5-#*EYraT2xl*3u=XbCw_{-HVRxY!>C%zX}F5dwif8i5JxT|LE zbMFIm+WN%S+C17t&JV_(=(kqYEc#(B&sf7tte)+G`5V|8mNOg=(Q5pu{OySPJI$0e z5rcV50`!EHvF}CuF!jFRy~*euspY%m=S!2>VQJ?coeB6e;}69ojW_r&jw(IX(&=B`EdjTo*_2l) z{S=eEaW*G5p*`=^i-Qlgoey3=^~B3nuvl%gCAB(-{EZQq6do+v{vqosL0qM`Skvvj zKI!*@Y~>#+%|$igRe=p7+eSa2=>HvChXCLz-GL#GBC%w|mPlR0WG&etlKEj~YlR;;#0J`kNgh1l@SLqM$*0{mj3tKP0dvTR ziRZ-0fY*%8w=*{0unjHGXzyv=eFW{j3yP{|56eIJI~3smq(GS^ybEJ!z`#pb3XVWp z<}?WB@GN`Inh7OoRbz_Ov$c6i_6Q=JSr%5&5U1Yu+Q=5Qcyh{g!1L8sgv%cuW#PI--QicoZ zrSQjDNvc6A`f?;QXFi>O72ZHh_ytpSVGUd>{kUVGbN8ZBM$4zd8&gT2gJOB+F7jg; z65tL6OG~6w7c3xR^3>SC!}j(A9+jGjk>yNIL}0(QITtPb?8p{QI09*R^g}A1S2gU< zgV6y0o4?~Ct}XsH;`BJp4jf)+7M{np+b0nz8Q^pW!H?B32z!H@h8eHlc{e*ir_VqI z;5Sbiqrd2+?0pN|kHq{du8K0`qy;W)zf?moiwJYMu2PL9uKupaa8%W`c9+4Ld7E6f zMz@zh|- zl$`sz%|-&`fErTs$g`pT4PAQpLU5qkA7&Zkm!-icffd$477qlynXmavR3T>XmZu3n|( z9r=JT`fd@d^4V$Zvesnvly;HYHO3+!%Lee{?L+`HrZsYqg!#AZr@-PFYE|I$0#6Q0 zXDlRAd#vjRyx{;Fh%1&p@Q_9={MOTQ*9~2q=Kke&_u+$Vpo;*iU^^j`D=Z;7Qcc|K z$#Ik(VzRAmv%SHiX8uRAz$II;ai_uU#>y&>sg2&j&612Um!hX_%MM4S6Gg9fDxFcV z2ghlT!35Y`A*|M-mB0(`4zYnbSSKv57OcED^jc$ky3gIoqL!-MSw(IsIh?W37vy#G z`?VK}ygYkk@xVQPGRJ@MN-*;<-Ziq$3@9}>Jf@SSo&DA0hpY5Mjn|vk2NxbGPHVmz z535H?If1r79^n9z=Hw$Nk0TGFEO+NES>+7NK*-Aid)A`;%1<% zE!tRX9lg3 z`y2;8(MRh5r^^|>;3Qp_H8Ry5jZ1~k!Q+3SBCdjig|n`1uD|a=3-=n7Ud)*8d%HEH zwrKp&spjV4@QqhG&rI_7#a!UPXk&Hnu(UJVb}ogFpC1(4*qDh@^!T2ztJ8f`>D1NN z`uNLhQSLqGMPsfXlt$<&a`oPid_cbtHHr{m1Ktq639y}%U3_Qj2i&u-9lC#TA!)^B z^tvh5*Wc!D$pe$d>$iSdDJ3Kbl`N<~wm8hc%%6;zD|^iF0te|wL4R5xRXV{${8e}* z$&nDp(giuNk7Wnc)b)`q%;Nfof|;)#cdOb*$ms6~o>c7|waEC)wTq!&4ELesP~rD= zQ(-hX7(35VRKorODsOXFZ8ex7u!74mcXO-Do0M|baol76KK!7<2|LM_pdDxKE$+F} zbl6-4_7DR@9iJa~2t(HJBBzM!ze&6lV#)?CRn97IY;Cm~Cwy`@VjA?EUrdk6J@L6* zw$(mIDHfm;7D^eCYBX<9gsR{IA}Y;DghOCVyK{U;P79=VcvD?HuwA>qv@a;E%w^+! zjPFk;z0lP3?9a+piX1Kgrg9QpiWG%bEg{xmgF(EBKlSn)A*p)fW_&8+NbxzZ;Uava zKQGFB+PPs^Ge6D0Y%%VSz2^L^Dgy(VEFn?4;Tl4ewGXWUhQ0P9$eP$w3)kNv zVU!qGi?a4YH}`jB?A4z>`0Rn+DZS{kMJq!aQamAL*n1pw{K8Sye33LBt};=ZD^ zOyKeK_8|fJo7>>{GGw`$d2K=M4z86U46M_R?gF>_E^8?zcvqv zZ{Y&7IEEL=tO(IcnC0iRmA-9bAJ^c{tWG7_YL7eOlGcnN0v$Pmyo^Lcr3eYaJe<`<6le8Rb0%;whID*_AwIvkji_VR(mk#*%aK3Ns|Vd}xBw?K zMK%U)8TER7;*V!=xF1WD)rxtCSclKCfuxJkxcb=2zu2Pk>hzB= zi;D@fk@?-edLy=D)ZQ(Dmt)GFZy!O5bg`g{#ri@edLI~1H?4kKvC2tfpt(tnM7~Me zNaR6j*3nT^RemEr{oFewV=`(|vaQZENVp|4_nl`pReA$Idno(l<{f7$wz=Ett`WI z2tcy|`mv~K=rLvq0kxUba)3fess5!fIja>{-=ah@h}qoERa2`nzU)X@Hz*G>I!i0f zkgKfx^i3}Dh*GAwiKl-4KJHFVMjFjc8D|O6>1w`+eP{^BbO7HRj7X>ry-KeAo_BSY zzs5+myk_Etys#n3{BefTrN!&94llUQDBwo^nHS+-gfJw+Saw*JU^-_OaI$AY!=3I! zKn(=rdG~$Hdc`VY*K1sbo5N8-73o%@c=!*R2Kaz7J+~ZlM{`@vRtzOPKOTp=S(vtS zVNk2e8>KG?k4;Du4o82#R(tC6z+MN7W|#aY+?4ovb*MbEQnx0WSlb=HPVlWsmRGB- zgHz*U_0kjdrR4We>h4)9ryQuxs|}BEKIzgOs3TId$3$*ui2Kf#CIv!Z!G6GDZxIX$ z0|c|CMIEixNF8s*Bzq_%pQWTH*U6AKHbX>ih{(5nIiuLLUkRRZ?4_<>ONgh9%aZTX zqfQfmyN@Nu2&dGLk8`yCDiaIU0M+K}D=GALqs>^o2$YV)82NA=fvPnTqOgD3rt-5! z(q{aRrR0RCRY1Wka9xBQ>6TJ~A6h1u1$_gyg zd$>HcCU`ix)xZg_zjgnk6>rC>-Up+PlVTqq5>^Dz1iB_#3oM`*vxHC-ojGhrN#pxE z&;_|5qA;IU8RRYU;$C{}hVG`g-<{{N_(wzWX=@}J>2d?o=JA8`T{oV+i4RWYlD4( z+;=aZR~NqzDdd=R7FM{)yT~o-D^}qbHlBtRY7(SdfzjO_paX?VUAcTz<6Cdxkcv~-nv#Qh02mx_=Ksp7WgP&u_9Er+Ol$yA&3R6hJd>J4N1 zxq2LDRnu17EU#b6F2>0MkO{TgpQaHH6&5Ex;*D|r5G#UHpF>3KX z_aY>=p$eOX7A%PBbxlj8TXWnYc_nG1>2xIh^!HhVTF&$sgMO-6Ovtd(C7W3g{MC|e z>a>DII`~vR-*)c_mfGvfwF{$PLhFoUyb&pcw;1wS5-biudCTI98o)vrdXyhsQ{JiH zTsxOjF~!BdaK(&w-<+L04Kg*hFHL@Xsxf9$=6KM>+M~KzAi~S%$64gHNFA#xWAzg1#>w`t(7sd{nQM+|)-_dKN=gSf z3!EY*4yEC)fs%K3W4Cu5m*0)iVAr!}sR0M;Xpht1Sszbu)yYZQ4 z75V(i5P%|>_p1V7p7v7ca<$-#?2K#3w2c&W$Xy-q~>u+KFJYE>e z`?unhY%{KNo3Vs^idJ3O09lz0@JxNh&1et14(in;!krF$NyP|Votl~Y_CsDODIy|4 zd2fcr(Nl19o|8)Z&*twVu!IFE1Km+j=Ccs@z}EWb)%a3|KJ}`{QEK&rYlmJx>MqvA zM({kZTN{+CrwdzhZ7B)7wb8BZ>e-(GKpw(wB%n{zU07d{6PCeH4)0~o4D7grSOVv|3)c17w&f{;VQ;>U#>NDM+7%$+HWRInAkLVH;X&8zv zaax@Af*MHXreGb%(J;EjT0?vyR2*$fd95EdEG&qN$fdtDI@S`Q(bzH#nf4N|w9sf0 zS+bRQV+ZKM{@hHs2k)!_Po$GMx{hzYw_#Y%lWfwV7k*Bi^<4S93bZ9uB9w7D*Opft|nQn$K*D*O?okhKSG zNQJlAKV(UO5etaKshTc(aS%f$PGQ9K-Wn1{TE;O!VbU)&12&799hcRG8}9tR=;hmX zAM)ql8xXj++B>imJB&hjH!XwG-CZNi8uK_zbxNGWCR%jQ?ghPHBMsnV4d=_pj*jk2 zFa37aKOlQ>JzB+}GoVl)zPBwFP$=L2rzifO7b>Eh(E%Le3I^#UI9Zy?PfGxU=`P_h zb2sn{bX%jgwZ8Uywj*HDR9!jkqRdl zQ+8+{MxaVlW=P6-`%f^?6buT?Z|Ko@O*4A2cgLu5E#Sb}po%_~6TXF>MQ&kyS@)p> z|6`*Cqz@9!nMg1SXg%gDmO|8^f+)dXYd<=8jKPI0n{b^B&$MdDSaWkDLw9>Lh8>#5 rHfL2x5j#&0n+kqADV&`T8TqgBCjZSn9smFF|L(4s|Mz;3n?3n&ud(o# diff --git a/tests/drawcustom/test_images/text/text_mixed_fonts.jpg b/tests/drawcustom/test_images/text/text_mixed_fonts.jpg deleted file mode 100644 index 168cbb775f846505ff281d66cb3e989e3c2a35a9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7113 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 M{oV0X^B^AkZTlc=#YrXZ}kN1AuU8~NiQ*}=5 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 OClmk2r!oZ9z&`-Rr5z#w diff --git a/tests/drawcustom/test_images/text/text_special_chars.jpg b/tests/drawcustom/test_images/text/text_special_chars.jpg deleted file mode 100644 index 5af0978384423c32f5b3acdac8935634ee22f92d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8738 zcmeHsX;c&2wr)k5NF$L(P!Xa6q5`5wFA@|55fvK*1R)|Qgc#UJ7q%gx5ke;jY=h#K zhzh7kPeADcghoXK=?P6pqS6Kun^2OFyzG6>IB(qd#(nRNcYfYGGg7N+)T*lW%{A9r z-~5(%R6GrAJn7)%06-uB0FnFv@i<@)toxTqNzSCCB}XY~8R@@FMpou;la+-+*F&MQ za&q$Wa&n6Q(f)b~L`q6ZMp{NrR#t9b{hHgDOgw@ZKbp1r1K z<`$M#*7nDaJ2;+jI(fnMqMN(NB~L&9Yu5t;Q9)th5s^{Y=-(4=Cngb-Q&O{Y{R-4ZfYd)=Nsj*j_P^kgI03RwT3SjP`WG(9x+uwCN?BTF#{pTDBj=#L zp{hGg;?}Dj%_^vDmD4$Rp1bMl%}?^`x~5D$-e1uEM)v;(EdKus*}s7OPh50BQ3@jI zJSk-W0jvohuZxujb_4%Lfv`lNm+1nwG0i2NsvrigXO2B(;_vYk*dgskdqY&kK!=No zeIeo6(LCbnVXE+y>EZ-@aqdeLDg4;6ix(e!U3)7_T>L3GkMHZ8VTp)>K%7hiXlC3- zg-w7TLsIBU52HhwTf)%>Sp7zdM(D&m>hR}1J07_8N2jOirFW^-em)85^AQ8BrxCv0 z3YcBXc*d;=IT+ zwjZPTEEc|53}9em3DfEgu*BxQLS%m$9N2zn>~M!WpJtY?`Re_jgxr zL3q$sGquH&>%Tg>@3Z~4WZ zBFf|HG>73bb+*8PMYl+&8)liD$iDx+z7JY~5(72*aklFC4^(+u6Ja#?qHqJki(8ze zJJh`09vxn>kXQDim}cNoJoo9+kw`Isy88W<)Afuj*{D?AJA5Eiq#*|46GdINrb9T* z0&D>LbWuquCYRB3WTRo7_id468Mm?VbiEa6s z{bt<@Ub~q?%daq-hKG$#jla`tsygYHhxu&%R?SgY(f}CGr2|RSRscg|c(>Z~P5W!a zK$0i^o_d}B9XDpMp1QrPyEaS(hBP%A3RduzBs=g`d;}T@%=8mWbzvR z5M9App#i;z8Ka7HF3RTUXPc+?)O-pxyy9hb|EAr`c~+XaTTV3ig&i2>TeNY&uJeUw99C9X}*$u$dTREWA+lE;S( z?(_6U)DHKoO|c5b^aXzSAYLwrQR74Ane>Z+>7}^H+O5l}oJES9e^vdh*EdL0GiRLr zV$_nn?k79Os$}cF{`TN?O1P4L=Y4>!qOrjW2Z@gGIxvLrz5#_5}fm*4*_hJ9#(>iGluQTa` z502lz;DQkoMkwiieE~bt}1jRp|i% z6&7Yzm-N$U<2b7R50$j+yh!rC0;6FSuiy6R)hA&m)sI_j*Cq>W=4@rbhk|pWj~Z|} zya_g;bIO4GXp)%rGf)J_sc^e!3*H82ZY4WVim|!p`hPy!eSdh;w$~<2>$C0|-&zZp zRg#@joW!N3IODYnLP!I0ysLEte{lGxpkdB-b8Ufio{&5`5^{K`i0o^qp=4OTFZ|sP zrr&|UJ5L-w#XRYY&wwn!RYJr-z+`|(&QWj_O|C|?m2VR60E#aAbwnZnDIzD8q~q(^qaI*@ezHhOsq)!*A- zx;!ELjz`VSc~8Ca6u49Vbqj0Uc`-1O*gosGYiVkd?Xh&scs(#9Iw(B8cBgpsEdkjvBK7et|x1#MqBJI9i+^KsJU$L1k*5L|%hUT}*wvYeT|K2F+GfB_nUA6yq z_-}+(OX}x2Nr)H2`4|1fz`#uE-<>@D#G-ivHH1Zy&*r8I(JNT*sh#y<5QMC3nxj7(Wmz9NIzc1?%v-gOGv;W1&Y|2HfkNdM6g>3;~{Sg zU5bU9z}wAxz&!p)&0ffq#V@=Zd-8;*O-_uIUb+B(G>O9xI== zNG43@i1veb%5ZzRq8B`Q$&7;BXmd_KW63CC;Xu&uGQ&mn;Usz-BCsxFM^TI7{`#ZS zi2HYDPJab(t*j>4#azB*d5@0-M>@1MdC)XO01P5Ik0QW-VAP|ODW$z>bOWUI`Xx+q zwpZvaj7+P)a^n>8k?O~XEiiC*aYyE;Dhn2C3zzt)ikc`ypn39L?W&j2*2{^F28hH` z-%oc+p7BRYjLQDp=bty-!X@v$usJm(-}vB-7I**{#dN1-rXjct-b5@;Xu)|A|pO zT*_{kbZ6QYJjR~yJSU zujJT+V&Ezv6;Zv73Z({#fn>NEejV1J1+Eaz*ccc|-h?AO@c@aQT#dA)XG6LX54BpR56oKVNGQDI3J7 zI>jip;vNc;Lu?+|I^S|2TA&WxXm5CE{E^cxHTr+yYD$C-TUBm(M!3PU0(OLE?VfIP z;AJ$Dj^8%C_;}E8pH0enY~up@k8J%h!=QyXXSUcY*_lGV$vzbW@(L{d7GrwAbn&9Z zSCa7X82Sk#u6EIJ2f1v)UdG87_l~V@1x0hs5ktg##c658irwR1l#;V*8gv4?0W6_~ z8c$v)8OOb&GfaOmPzR@FCe=ezg>tBJ6g}xFJ55XBa(#wXL}`F0W#Cot(W!?ow5Qzj z4A5>_qqz!OV%lPD#lWDDz|BO0j_`K48c3uqaFLx;@S3JKBRJQqm7mIfVDP*9Cqvv_ zm3MYU<~nW3h>%H39=jRY2ZeC=iUIy*A~R;BGc&dx9^bfuTi4FdwOH*<{}H3aXp5|- z&mQz1?+tw}hq>YHSA$)$jUJTI9Mvk#1_E;>F*(B_6e7{JdGPq=!+~Ta+>sYp?}$f! z_H{$0Hz=0bbg$VTzkX`EIq76=mHl3tX1{y%;>7M22ydi|Ts6~5PUJUl1Aj(Lmn-3n zNd0u00~q}Z#b2qdi>&t_&T0)Q2JyS~Z{1&f#2NQjU)m1YcKhN4aF}obyfv+bZmkqr z4dYf^}kPTkfp$l`rcvPY0r*DYn|8w`8bk zxgxsRn2Tr?1Bt)u6C3S9gj-%MY`q>=Kp$OLky9&TyX3PhRSe##o=K@|KX%)WsC&#j zHcBMlk5`y&HUaMia2HN--Ew&H=!QdLAYHwA8}UrSrCTLDvoH5L>q&9Jia9AoB>gvA ze)~9o=But$1<&QS(186&UeGpW#{GDY4O0xtcjuFdW(~W|6cjRdy5<{O)4%AZ@SV5T zFI`AFOS`)P2wR1=5fby&xMg+INClj!gl#sevXBz~)8;tMF>t7??x((ls#!B}s?&9i^9-w8@`E_3%8tX8& zmctWWR(bY2)o3J4%aRpf+DmMPe8Oq!(;jKIh~WKr?H*K=uSJ|;O}B?>0EKE|_N4*E z>#Y51^`U>u#-eT2!O+mRP;!^R1m9CJ=U%UdsGgyD)SPx$qKkpEpK{uMx2E?-_~&$> zLk-uB_`Q?&K2_PU&eduAd8t~v!|S@4%dz3hTY?zM5>Qegp2kwA21&BPk6Z3MLUz7G5J%MPwU1!Svav2B}16#!a^9Z5Mpjbkw90+YxF>qU7;AXr?1wF*T z7;+3rZ$2h+&si%MkZYoCBPXf0y$9j@=7E-G33>Dwu#uZaCf4T)_m(1Tk{k{}WzE=_+5J zNGgry-#OaF(NJ+Vnw)GWa+D9XKTMm5h1ZU7LYT-DLQP~Am%;36Wh5fiD1@Hz;SZ-o=UMYf9p;aESs zOhNe#8{Y6i>~)BroEUGk*nrkmP5E^G3hb~bI*km88{QT}FWOb4!ztZU$6>Agv z9B0*!F_SFlZrbp{B^$W{WQDWW;k0QRTtMzEXz zZWs^2o#nwg5w}HZ++q&2kbsfQW+mKx_retO+zLOV&UQarD{~zVQO2zud6s%=vg0=J zC}C#17IBfv3ZWxAd;rPvN`J~+CW^KSj}qH8)K|?DnQz$n!`@pk7;S~zK+0iPxvk8Z zqc%g97k@#guE1bxm0}=>6U8JoFf+&4(;w=iuR!~`gZzrTJ*~jTzOX}3D)HnMMIEC066LpeDDq$hV34F?k?Vcl%tKLb} z>DM*O@*wg&CimQ>`Bg$9XBm^NV5vf9a5lb+z=R%pue(0|`(^-fL6W&3=@(d?FL+&S z#A1}-C=7HG8Q`=9K6OuUZZ(vO0p^I%e8rsVpSRl9=8!bZWDa5qQ+(fk`?G7m6EomX zsqYCQ`2*98as76JnrMqq4b0{FwdL!8*LVU}sTdIMMktPZ*+cpJx@Uh(9u)Y@Z`eBZ zIoh1g(!r2sEF%w%ovnc0$GP?sFw3dP+T2#^*mxHKj@!hBXTlZsG1~K`cv{W*wZB^s zDTs5hR5c1^rNPX|(7(}y%u^G|735urC%;&x_m9WcM8LB|Gx7=~a6sBne?Y6;u} zkyZMfu$MwCw__&JtVxp@LhEig>_}T>Bv8gnFh^&OXLrs^){>gk5zhHZ>ccRt#Ky1* z2R)~q`%nG>`PIrT>7;HW_#-qWS*cq!m&k%9P$EGB>y8c^nPR(h&ceJ8q;_tdDtv_%F+m(S|S+FWET@^c0|7hc}#uoa6 z>pP0nAis2C3UP*OZxA=eyx>aHM7boF}aH79zt34%YFUnM5KdoS;=>-BbFN zdU!bX?i@X-;Dtx&)p-+zn9^S^N?twh}hs4oyGO z>>$82y3PjSE&JWQhe}KR8|u@}4GEFzX==7c13zX18j_aY?{OpSLmxWYfl+-Atcm_N zNflv=km!D7b})q(#zb;r1jb0uAnLYeW%}{Qb+ku;^j(iiX8XIbdK-Jf`E%PIni(X| zT-tS%TRW?l#8OiQa0M)K0+o9nPFG+rFBbB=*u`y`^4Jg>94gw58i~^0%{`3$ z8}f24ik?&+Iule^)yseW#G~Ib*x#4$CI%dn>zi6+iJjEZr|gxsa=Io9(Lo-Q{$VeF@oc>+S+Rw)If49t4}lluO`!w@>tDws@%^P;lE551YXWi zN^_ECUEU$Wfek+gC3)Dh=h^BEjOm5;d@K|xuo8VFOK4X+m5yidJJu>OKgx;CM&PYN zM3Sw#(1=SLJB{I^UX@{HUcb(tnmO0;TJ-5nxZ|7Xsi>=-n%JwUS0uB#q7aZQD-ZE+ z>k!I#S)5#-%_bHjvH1WGN;fr5-#SCP8&SD^ztd0l>iS;q&x_2Vv32ksz%ms6ZIZx|eR%IBCoJ zy5j-nnRj8rhBrFWDge$Dl;io)BriF?OxNJY4GH(~U2gkWfrM*MuwEV1;EEiMJ9iu# zWId?RL*p%!tLbs(ga4TZBs^q zh}+~KYSK9ETqD9SgIUI=p;n~A@4giN34ag;U?t<;fFH|Si6;bx#4}_ml1xB*``Vv` z>jX_~3?(xeuHI-+IB8oQ7J-TmHC&A$6=D=uHolGT@87{cF1rKkGp8R%+6&D5rQ*2o zqiffas39;Ze2=p5m9 zRJGmz+*g^iuo6i)=EA>SB}gHbu1gX^vfE?Wd)W9xn)RJxPKn?mh`9WwUm_TAc5q9M zO41%AYXiY;pr&bO$f8r@p%>Kgkg_tJ)LxDWc%I)0vng93#oE60|2`-+3sVz)fKxIv znm6Fzdm8mFzL3zcqx}f~CigQrmq4o+)?xYY7s0sC&7_g<9iiH!RXjQ5xwW@*wAu(~ zrr}_ZTK{p#U8zM0OY-Am!2*pgayp?F*;TrCfVt9PoHk76-kD`U!*9KfFz|-iRh#d( zTTLoZJ(=sCv+G`Pn3Um_kedZX-;C@Kmd1qXEcaf4E6P@BKzM-dg&aGo>2NxV)zOtA zG?TbFJp4r&$qRj~Cdorbqi0jWoy9_3gYK`=S-1+R>1Cnvg6D{>Dem%s$fSz}gW{ll z`+jN?Zr3k8ES>FNSe+oy^-RYfkPN(Lvk?`Yy_O_{sPDRISFfCW4&f6xoMQZhXv-&& z6Du(xBm7JGyh!myY0Xou2a!jNkm! z&l@^#2N1sGG0CW>EoUG$Qc=C>KFT108*rAlk_b&Q?TsVAFy}Ql9K`h8B{8$=S;>%+NrQ`*v8A_pe8%`McC8s7hv#vfqVQa zf96D!^XKNIkMka<24n}O=9pQmJ?)_m5QzpYR4wNd{sQffRK?kW$9bBP1cCT7a~-yM zN$cteKT#ra6~FDASI`|Ro@$LYD=Rk3)0$HTG1`h*hu?gp3w z)}^gkw(k|rXu4c+&IiWr%$4lIT*rnTt4eUGsQdmU`pY*=X|`n!uIgaz(3b0l(Yk$5 zvSfQmO0qo^+gHGy=`<$RyJv(8PBX@GH3GSe(O=oErc~cSqdbEKq*>`xm0v2w_g^Zn z>~f8bCbq#xqxkNiGJCh}cA*jIgkmml@$_`L=36!qF%U%QB{o1|6hRQ_ zC14oH5Q+gtK!qTXppXO`NJ%Uqn)aeIYu=jo+Eyy{_WEw6A~t% zw9m=a2>^ir03>|?$t2(a$owg=v<8-ymS9;q*{_m=$bAz80)@&$p%55MK>-F^@mGEQ z2nY-Y%gM^YAQ0F}1(?E0_$sO3@NbTPm=(Xb{yO&0mZTFW}it;fzJ!xYpIYuBk88X22xFtxI_vE8&lyk-99FJHMp0Qh$- zY56&D0FsfF1#q$Xa32S3* zCU~x7V{r$5+1^tE$mxsjkWuV<`o85}9pZ8d5+c+S-T4%_1H-M)5FWy^;Vp4dyo5~^ zqnlnf7Ptj&ogXV;`$W8bj+@(8pQn2SPU>3-;1tg|cbXG|kfPfi7Gdu9aoafeNLEv( zNzc&WZCK(?9u<5UUF`B zr;bu$zfOx+Gn$Ca?%0$#A^}?9$sM|k&?)QD=xTJjx0;W-YE>WhE**W3fW^d@hWa34 zlj1)ZobrG49-^pWx4{wkA_16b3;LY>Ji*Xzy$nz;Bkh$<05d zOMuV@wP^-ojQ8H(chRHCmJvcYet?LaxbcSxN+v2ObNi+!s#uj z8Yo4F`=V!ob@ zO%ZSB|5kzvXdXps3$5E5o4Ajw3Ztq>{?Ua$4+qe#+Jfn|+}!vRFwHEGlbP;HL8T24 zin9_mqfWrHk#@~|3}>1x&ST>>!qpG|^!Qe(v)lrO5qW#ejHbEz`6P7(N!elZY~+)vdP50!V{Ih7J+hZJy4E9%+=AptYc0GV z=U4Gv>rXXE1kGdM$=ITG#>tHvSve=#EyyPYqw6mV({#b3NDc86r74#B;@pSs=~anl z_-=Rhc{fvmAED>+TmO06<$Ol8)A<`81ra&O?btds-Nz5c1`HOf2Cpjx77EQPF zrNe~yNMOyy0fzP>B zyO5NBf7F24aK6d%C85_$@kHN@aSB4v zd;J@H#QY^u)_}ljk}N91ksjOF0Pu7?OuS)AOrPc)T3SQLS#blWQ|-?RtRo5$$z zcVNTU%oU1B9D$d%CU@zg{;%8sD@(t(2p+;m{ZhgD(l)}QOxvvae(6R_U8mI#os5+}Mm@gnG8mnYb+1;YZ{%PIJTx z#+Blj!NCHAvZZBGVjNCeR3z4)!guYkKh1R4P8=v!vd6F$Q8_+HGZN>p?E;ga;_K@l z7d{l=N1J&TEqFp&q;D#mtSuYbkVh{65bSYB2P5t(^yzy?A)wUkF*8q6Z|k~WT29n) zgLg^*gxHLaa^O6nZYZPuaN_|Zs`~5+pF^W}BRn4jv=g=)pLe+x1helq0r%UhvdlB3 zyJZ0_I9i{HKW?s+`1Fg!_Q&jmEynw?fkq-G~?}*0c~@0b!Fu7;g6wL zS-Rw0<4`&~W)%eHy{_L1^x1)lr3dg*rAI5K_~Nv344h7TsBMwOB=iMF1aa#-7b0B9 zEn_h+G!7FvY57M-7Hi7SS8p%gm(Muo5@M3EK-IEJyui>iU%WtUKs+9K8W5baPj&iLOEXznn+h6U1 z-$$AYjrkRo5}>D00uU3`r3Z|*I`5eJ}PqHHSvcr zrQ%WbpLH7FYxsb6Beyud4QLCEJ8pl%s-K5Buwfz$_o2%1w zwbHuq3>3Tg;Zha?4aWrtEco>-pVUoaowrk42yCai@!oDXAJ2x7&5O~%W~=IL9mAN- zckSVV_k!B87b;oG{@Y&Z1BpC1d3cZ`xT@515T=kO@P#kk6x`#lgv3hej z6jox6D32vF+Zr@A=)GU$A>QlNI%=($a`;1?(L{SusMo>9-bxi`^`!IP8R~bl{XO9O P*TdgA`@hW@NJ9SyKB_@D diff --git a/tests/drawcustom/test_images/text/text_wrapping.jpg b/tests/drawcustom/test_images/text/text_wrapping.jpg deleted file mode 100644 index b76376048cd9ff84946064923e4f84bd916f71bc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11112 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 z 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 diff --git a/tests/drawcustom/test_images/text_multiline/multiline_empty_line.jpg b/tests/drawcustom/test_images/text_multiline/multiline_empty_line.jpg deleted file mode 100644 index 35bc3015ca9777b436812130c57b8e31f4d66149..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3434 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 bM4nn6(iQl7zkUC|^}qS&!{0Oj%&~t0XrGp4 diff --git a/tests/drawcustom/test_images/text_multiline/text_multiline_delimiter.jpg b/tests/drawcustom/test_images/text_multiline/text_multiline_delimiter.jpg deleted file mode 100644 index 105a3f6770147d16eabf7b92debe9a285fe1c0fb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4627 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 XzZUG@78(D4`d`*y{|~nZE1dW@xF}Q1 diff --git a/tests/drawcustom/text_multiline_test.py b/tests/drawcustom/text_multiline_test.py deleted file mode 100644 index 3b13f6b..0000000 --- a/tests/drawcustom/text_multiline_test.py +++ /dev/null @@ -1,206 +0,0 @@ -"""Tests for text multiline rendering in ImageGen.""" -import os -from io import BytesIO -import pytest -from unittest.mock import patch -from PIL import Image - -from conftest import BASE_IMG_PATH, images_equal, generate_test_image - -TEXT_MULTILINE_IMG_PATH = os.path.join(BASE_IMG_PATH, 'text_multiline') - - -@pytest.mark.asyncio -async def test_text_multiline_basic(image_gen, mock_tag_info): - """Test basic text multiline rendering with default settings.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - 'type': 'text', - 'x': 10, - 'y': 10, - 'value': 'Hello,\nWorld!', - 'size': 18, - 'color': 'red', - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - - example_img = Image.open(os.path.join(TEXT_MULTILINE_IMG_PATH, 'text_multiline.jpg')) - assert images_equal(generated_img, example_img), "Basic text rendering failed" - -@pytest.mark.asyncio -async def test_text_multiline_delimiter(image_gen, mock_tag_info): - """Test multiline with delimiter rendering settings.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - 'type': 'multiline', - 'x': 10, - 'y': 10, - 'value': 'Line 1|Line 2|Line 3', - 'size': 18, - 'color': 'black', - 'delimiter': '|', - 'offset_y': 25 - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - - example_img = Image.open(os.path.join(TEXT_MULTILINE_IMG_PATH, 'text_multiline_delimiter.jpg')) - assert images_equal(generated_img, example_img), "Multiline text with delimiter rendering failed" - -@pytest.mark.asyncio -async def test_text_multiline_empty_line(image_gen, mock_tag_info): - """Test multiline with empty line rendering settings.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - 'type': 'multiline', - 'x': 10, - 'y': 10, - 'value': 'Line 1||Line 3', - 'size': 18, - 'color': 'black', - 'delimiter': '|', - 'offset_y': 25 - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(TEXT_MULTILINE_IMG_PATH, 'multiline_empty_line.jpg')) - assert images_equal(generated_img, example_img), "Multiline text with empty line rendering failed" - -@pytest.mark.asyncio -async def test_text_multiline_delimiter_and_newline(image_gen, mock_tag_info): - """Test multiline with delimiter and newline rendering settings.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - 'type': 'multiline', - 'x': 10, - 'y': 10, - 'value': 'Line 1\nNewline|Line 2\nNewline|Line 3', - 'size': 18, - 'color': 'black', - 'delimiter': '|', - 'offset_y': 25 - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(TEXT_MULTILINE_IMG_PATH, 'text_multiline_delimiter_and_newline.jpg')) - assert images_equal(generated_img, example_img), "Multiline text with delimiter and newline rendering failed" - -# @pytest.mark.asyncio -# async def test_calendar_format_multiline(image_gen, mock_tag_info): -# """Test calendar format with multiline text and potential blank lines.""" -# service_data = { -# "background": "white", -# "rotate": 0, -# "payload": [{ -# "type": "multiline", -# "value": "#Ganztags: St. Martin\n#11:00-15:00 OGTS\n#11:30-12:30 Abgabe Arbeitsblatt\n#15:00-16:00 J1 Untersuchung", -# "font": "ppb.ttf", # Using default test font instead of Noto -# "x": 6, -# "start_y": 262, -# "offset_y": 36, -# "delimiter": "#", -# "size": 36, -# "color": "black" -# }] -# } -# -# with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', -# return_value=mock_tag_info): -# image_data = await image_gen.generate_custom_image( -# "opendisplay.test_tag", -# service_data -# ) -# -# generated_img = Image.open(BytesIO(image_data)) -# save_image(image_data) -# example_img = Image.open(os.path.join(TEXT_MULTILINE_IMG_PATH, 'calendar_format.jpg')) -# assert images_equal(generated_img, example_img), "Calendar format multiline rendering failed" -# -# @pytest.mark.asyncio -# async def test_multiline_with_blank_lines(image_gen, mock_tag_info): -# """Test handling of blank lines in multiline text.""" -# service_data = { -# "background": "white", -# "rotate": 0, -# "payload": [{ -# "type": "multiline", -# "value": "#Line 1\n#\n#Line 3\n#Line 4", -# "font": "ppb.ttf", -# "x": 10, -# "start_y": 10, -# "offset_y": 25, -# "delimiter": "#", -# "size": 20, -# "color": "black" -# }] -# } -# -# with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', -# return_value=mock_tag_info): -# image_data = await image_gen.generate_custom_image( -# "opendisplay.test_tag", -# service_data -# ) -# -# generated_img = Image.open(BytesIO(image_data)) -# example_img = Image.open(os.path.join(TEXT_MULTILINE_IMG_PATH, 'multiline_blank_lines.jpg')) -# assert images_equal(generated_img, example_img), "Multiline text with blank lines rendering failed" -# -# @pytest.mark.asyncio -# async def test_multiline_whitespace_handling(image_gen, mock_tag_info): -# """Test handling of whitespace in multiline text.""" -# service_data = { -# "background": "white", -# "rotate": 0, -# "payload": [{ -# "type": "multiline", -# "value": "# Line with leading spaces\n#Line without spaces\n#\tLine with tab\n#Line with trailing spaces ", -# "font": "ppb.ttf", -# "x": 10, -# "start_y": 10, -# "offset_y": 25, -# "delimiter": "#", -# "size": 20, -# "color": "black" -# }] -# } -# -# with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', -# return_value=mock_tag_info): -# image_data = await image_gen.generate_custom_image( -# "opendisplay.test_tag", -# service_data -# ) -# -# generated_img = Image.open(BytesIO(image_data)) -# example_img = Image.open(os.path.join(TEXT_MULTILINE_IMG_PATH, 'multiline_whitespace.jpg')) -# assert images_equal(generated_img, example_img), "Multiline text whitespace handling failed" \ No newline at end of file diff --git a/tests/drawcustom/text_test.py b/tests/drawcustom/text_test.py deleted file mode 100644 index d64e6d6..0000000 --- a/tests/drawcustom/text_test.py +++ /dev/null @@ -1,449 +0,0 @@ -"""Tests for text rendering in ImageGen.""" -import os -from io import BytesIO -import pytest -from unittest.mock import patch -from PIL import Image - -from conftest import BASE_IMG_PATH, images_equal, save_image, generate_test_image - -TEXT_IMG_PATH = os.path.join(BASE_IMG_PATH, 'text') - - -@pytest.mark.asyncio -async def test_text_basic(image_gen, mock_tag_info): - """Test basic text rendering with default settings.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "text", - "x": 10, - "y": 10, - "value": "Hello, World!", - "size": 20, - "color": "black" - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(TEXT_IMG_PATH, 'text_basic.jpg')) - assert images_equal(generated_img, example_img), "Basic text rendering failed" - - -async def test_small_font_size(image_gen, mock_tag_info): - """Test rendering text with a small font size.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "text", - "x": 10, - "y": 10, - "value": "Tiny Text", - "size": 3, - "color": "black" - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(TEXT_IMG_PATH, 'small_font.jpg')) - assert images_equal(generated_img, example_img), "Small font size rendering failed" - - -async def test_large_font_size(image_gen, mock_tag_info): - """Test rendering text with a large font size.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "text", - "x": 10, - "y": 10, - "value": "Huge", - "size": 150, - "color": "black" - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(TEXT_IMG_PATH, 'large_font.jpg')) - assert images_equal(generated_img, example_img), "Large font size rendering failed" - - -async def test_text_wrapping(image_gen, mock_tag_info): - """Test text wrapping.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "text", - "x": 10, - "y": 10, - "value": "This is a long text that should wrap to multiple lines automatically", - "size": 16, - "color": "black", - "max_width": 200 - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(TEXT_IMG_PATH, 'text_wrapping.jpg')) - assert images_equal(generated_img, example_img), "Text wrapping failed" - -async def test_text_wrapping_with_anchor(image_gen, mock_tag_info): - """Test text wrapping with anchor.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "text", - "x": "50%", - "y": "50%", - "value": "This is a long text that should wrap to multiple lines automatically", - "size": 16, - "color": "black", - "max_width": 200, - "anchor": "mm" - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - save_image(image_data) - example_img = Image.open(os.path.join(TEXT_IMG_PATH, 'text_wrapping_anchor.jpg')) - assert images_equal(generated_img, example_img), "Text wrapping failed" - - -async def test_text_with_special_characters(image_gen, mock_tag_info): - """Test rendering text with special characters.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [ - { - "type": "text", - "x": 10, - "y": 10, - "value": "Special chars:", - "size": 20, - }, - { - "type": "text", - "x": 10, - "y": 30, - "value": "áéíóú ñ ¿¡ @#$%^&*", - "size": 20, - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(TEXT_IMG_PATH, 'text_special_chars.jpg')) - assert images_equal(generated_img, example_img), "Special characters rendering failed" - - -@pytest.mark.asyncio -async def test_text_color_markup(image_gen, mock_tag_info): - """Test text rendering with color markup.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [ - { - "type": "text", - "x": 10, - "y": 10, - "value": "Normal [red]Red Text[/red]", - "size": 20, - "parse_colors": True - }, - { - "type": "text", - "x": 10, - "y": 30, - "value": "[red]Not Red Text[/red]", - "size": 20, - "parse_colors": False - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(TEXT_IMG_PATH, 'text_color_markup.jpg')) - assert images_equal(generated_img, example_img), "Color markup rendering failed" - -@pytest.mark.asyncio -async def test_text_percentage(image_gen, mock_tag_info): - """Test basic text rendering with percentage.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "text", - "x": '10%', - "y": '50%', - "value": "Hello, World!", - "size": '20%', - "color": "black", - "anchor": "lm" - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(TEXT_IMG_PATH, 'text_percentage.jpg')) - assert images_equal(generated_img, example_img), "Text with percentage rendering failed" - -# @pytest.mark.asyncio -# async def test_text_alignment(image_gen, mock_tag_info): -# """Test text alignment options.""" -# service_data = { -# "background": "white", -# "rotate": 0, -# "payload": [ -# { -# "type": "text", -# "x": 150, -# "y": 10, -# "value": "Left Aligned", -# "size": 20, -# "align": "left" -# }, -# { -# "type": "text", -# "x": 150, -# "y": 40, -# "value": "Center Aligned", -# "size": 20, -# "align": "center" -# }, -# { -# "type": "text", -# "x": 150, -# "y": 70, -# "value": "Right Aligned", -# "size": 20, -# "align": "right" -# } -# ] -# } -# -# with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', -# return_value=mock_tag_info): -# image_data = await image_gen.generate_custom_image( -# "opendisplay.test_tag", -# service_data -# ) -# -# generated_img = Image.open(BytesIO(image_data)) -# save_image(image_data) -# example_img = Image.open(os.path.join(TEXT_IMG_PATH, 'text_alignment.jpg')) -# assert images_equal(generated_img, example_img), "Text alignment failed" - -@pytest.mark.asyncio -async def test_text_anchors(image_gen, mock_tag_info): - """Test different text anchor points.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [ - { - "type": "text", - "x": 150, - "y": 10, - "value": "Center Middle", - "size": 20, - "color": "black", - "anchor": "mm" - }, - { - "type": "text", - "x": 150, - "y": 40, - "value": "Bottom Right", - "size": 20, - "color": "black", - "anchor": "rb" - }, - { - "type": "text", - "x": 150, - "y": 60, - "value": "Top Left", - "size": 20, - "color": "black", - "anchor": "lt" - } - ] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(TEXT_IMG_PATH, 'text_anchors.jpg')) - assert images_equal(generated_img, example_img), "Text anchor points failed" - -@pytest.mark.asyncio -async def test_text_mixed_fonts(image_gen, mock_tag_info): - """Test rendering text with different fonts in the same image.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [ - { - "type": "text", - "x": 10, - "y": 10, - "value": "Default Font", - "size": 20, - "color": "black" - }, - { - "type": "text", - "x": 10, - "y": 50, - "value": "Alternate Font", - "size": 20, - "color": "black", - "font": "rbm.ttf" - } - ] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(TEXT_IMG_PATH, 'text_mixed_fonts.jpg')) - assert images_equal(generated_img, example_img), "Mixed fonts rendering failed" - -@pytest.mark.asyncio -async def test_text_empty_string(image_gen, mock_tag_info): - """Test rendering empty text string.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "text", - "x": 10, - "y": 10, - "value": "", - "size": 20, - "color": "black" - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(BASE_IMG_PATH, 'blank.jpg')) - assert images_equal(generated_img, example_img), "Empty text handling failed" - -async def test_text_truncate(image_gen, mock_tag_info): - """Test text truncation.""" - service_data = { - "background": "white", - "rotate": 0, - "payload": [{ - "type": "text", - "x": 10, - "y": 10, - "value": "This is a long text that should be truncated", - "size": 16, - "color": "black", - "max_width": 150, - "truncate": True - }] - } - - with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', - return_value=mock_tag_info): - image_data = await generate_test_image(image_gen, service_data) - - generated_img = Image.open(BytesIO(image_data)) - example_img = Image.open(os.path.join(TEXT_IMG_PATH, 'text_truncate.jpg')) - assert images_equal(generated_img, example_img), "Text truncation failed" - -# @pytest.mark.asyncio -# async def test_text_missing_x(image_gen, mock_tag_info): -# """Test argument x missing.""" -# service_data = { -# "background": "white", -# "rotate": 0, -# "payload": [{ -# "type": "text", -# "y": 10, -# "value": "Hello, World!", -# "size": 20, -# "color": "black" -# }] -# } -# -# with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', -# return_value=mock_tag_info): -# with pytest.raises(HomeAssistantError) as exc_info: -# await image_gen.generate_custom_image( -# "opendisplay.test_tag", -# service_data -# ) -# assert "Element 1: Element type 'text' missing required fields: x" in str(exc_info.value) -# -# @pytest.mark.asyncio -# async def test_text_missing_value(image_gen, mock_tag_info): -# """Test argument value missing.""" -# service_data = { -# "background": "white", -# "rotate": 0, -# "payload": [{ -# "type": "text", -# "x": 10, -# "y": 10, -# "size": 20, -# "color": "black" -# }] -# } -# -# with patch('custom_components.opendisplay.imagegen.ImageGen.get_tag_info', -# return_value=mock_tag_info): -# image_data = await image_gen.generate_custom_image( -# "opendisplay.test_tag", -# service_data -# ) -# -# generated_img = Image.open(BytesIO(image_data)) -# example_img = Image.open(os.path.join(TEXT_IMG_PATH, 'text_basic.jpg')) -# assert images_equal(generated_img, example_img), "Basic text rendering failed" \ No newline at end of file From cf6f393b373504033123ff555037b3a5edb6321a Mon Sep 17 00:00:00 2001 From: gabriel Date: Sun, 24 May 2026 22:29:11 +0200 Subject: [PATCH 11/51] chore: remove test infrastructure with no remaining tests Delete empty tests/ dir, requirements_test.txt, tests workflow, and pytest config now that all drawcustom tests have been removed. --- .claude/settings.local.json | 170 ++++++++++++++++++++++++++++++++++++ .github/workflows/tests.yml | 36 -------- .run/HA python.run.xml | 28 ++++++ ha_data_provider.md | 97 ++++++++++++++++++++ pyproject.toml | 6 -- requirements_test.txt | 3 - uv.lock | 3 + 7 files changed, 298 insertions(+), 45 deletions(-) create mode 100644 .claude/settings.local.json delete mode 100644 .github/workflows/tests.yml create mode 100644 .run/HA python.run.xml create mode 100644 ha_data_provider.md delete mode 100644 pyproject.toml delete mode 100644 requirements_test.txt create mode 100644 uv.lock diff --git a/.claude/settings.local.json b/.claude/settings.local.json new file mode 100644 index 0000000..3d5a236 --- /dev/null +++ b/.claude/settings.local.json @@ -0,0 +1,170 @@ +{ + "permissions": { + "allow": [ + "Skill(feature-dev:feature-dev)", + "Bash(gh repo view:*)", + "WebFetch(domain:github.com)", + "WebSearch", + "WebFetch(domain:raw.githubusercontent.com)", + "WebFetch(domain:developers.home-assistant.io)", + "Bash(gh api:*)", + "Bash(find /Users/gabriel/Developer/OpenDisplay/core/homeassistant/components -type d -name *display* -o -type d -name *open*)", + "Read(//Users/gabriel/Developer/OpenDisplay/py-opendisplay/**)", + "Read(//Users/gabriel/Developer/OpenDisplay/py-opendisplay/src/opendisplay/**)", + "WebFetch(domain:macwright.com)", + "WebFetch(domain:surma.dev)", + "WebFetch(domain:obrhubr.org)", + "WebFetch(domain:blog.johnnovak.net)", + "WebFetch(domain:stackoverflow.com)", + "WebFetch(domain:en.wikipedia.org)", + "WebFetch(domain:mv.in.tum.de)", + "Bash(grep -A 5 \"## Summary\\\\|### Key\\\\|algorithm\\\\|color_space\\\\|_WL\\\\|_WH\\\\|_WC\\\\|threshold\\\\|0\\\\.03928\\\\|0\\\\.04045\\\\|DitherMode\\\\|test\" /Users/gabriel/.claude/projects/-Users-gabriel-Developer-OpenDisplay-Home-Assistant-Integration/c772bc91-19a0-4682-a1e0-1163705c6134/tool-results/bgls60x5y.txt | grep -v \"^--$\" | head -200)", + "WebFetch(domain:www.color.org)", + "WebFetch(domain:www.imaging.org)", + "WebFetch(domain:www.iccmax.org)", + "WebFetch(domain:64.github.io)", + "WebFetch(domain:www.cl.cam.ac.uk)", + "WebFetch(domain:resources.mpi-inf.mpg.de)", + "WebFetch(domain:www.cs.utah.edu)", + "WebFetch(domain:users.cs.utah.edu)", + "WebFetch(domain:cgg.mff.cuni.cz)", + "WebFetch(domain:www.sciencedirect.com)", + "WebFetch(domain:www.youtube.com)", + "WebFetch(domain:colour-science.org)", + "WebFetch(domain:hg2dc.com)", + "WebFetch(domain:www.colour-science.org)", + "WebFetch(domain:docs.acescentral.com)", + "WebFetch(domain:community.acescentral.com)", + "WebFetch(domain:acescentral.com)", + "WebFetch(domain:docs.colour-science.org)", + "WebFetch(domain:www.wikibooks.org)", + "WebFetch(domain:ieeexplore.ieee.org)", + "WebFetch(domain:www.researchgate.net)", + "WebFetch(domain:arxiv.org)", + "WebFetch(domain:www.cairn.info)", + "WebFetch(domain:rawpedia.rawtherapee.com)", + "WebFetch(domain:scholar.harvard.edu)", + "WebFetch(domain:www.anylogic.com)", + "WebFetch(domain:www.itu.int)", + "WebFetch(domain:www.littlecms.com)", + "WebFetch(domain:www.nccr-cs.ch)", + "WebFetch(domain:www.jedsoft.org)", + "WebFetch(domain:helios2.mi.parisdescartes.fr)", + "WebFetch(domain:www.ece.ucsb.edu)", + "WebFetch(domain:web.ece.ucsb.edu)", + "WebFetch(domain:www.vis.uni-stuttgart.de)", + "WebFetch(domain:brucelindbloom.com)", + "WebFetch(domain:openimageio.readthedocs.io)", + "WebFetch(domain:www.fxphd.com)", + "WebFetch(domain:ninedegreesbelow.com)", + "WebFetch(domain:photosophia.net)", + "WebFetch(domain:imagemagick.org)", + "WebFetch(domain:www.farbgebung.de)", + "WebFetch(domain:www.cs.utexas.edu)", + "WebFetch(domain:www.cs.cmu.edu)", + "WebFetch(domain:graphics.cs.yale.edu)", + "WebFetch(domain:diglib.eg.org)", + "WebFetch(domain:bottosson.github.io)", + "WebFetch(domain:cs.uwaterloo.ca)", + "WebFetch(domain:www.doi.org)", + "WebFetch(domain:dl.acm.org)", + "WebFetch(domain:www.ipol.im)", + "WebFetch(domain:jcgt.org)", + "WebFetch(domain:renderwonk.com)", + "WebFetch(domain:www.imageprocessingplace.com)", + "WebFetch(domain:www.s3.amazonaws.com)", + "WebFetch(domain:www.photonstophotos.net)", + "WebFetch(domain:colour-science.readthedocs.io)", + "WebFetch(domain:colour.readthedocs.io)", + "WebFetch(domain:legacy.imagemagick.org)", + "WebFetch(domain:hdrplusplus.github.io)", + "WebFetch(domain:www.hdrsoft.com)", + "WebFetch(domain:onlinelibrary.wiley.com)", + "Bash(pip show:*)", + "WebFetch(domain:epapercentral.com)", + "WebFetch(domain:colour-science.github.io)", + "WebFetch(domain:www.pyimagesearch.com)", + "WebFetch(domain:lcs.ios.ac.cn)", + "WebFetch(domain:www.cambridgeincolour.com)", + "WebFetch(domain:luminance-hdr.readthedocs.io)", + "WebFetch(domain:www.graphics.cornell.edu)", + "WebFetch(domain:efele.net)", + "WebFetch(domain:colorcommunity.icc.org)", + "WebFetch(domain:www.strollswithmydog.com)", + "WebFetch(domain:photographylife.com)", + "WebFetch(domain:www.ctan.org)", + "WebFetch(domain:alexfry.github.io)", + "WebFetch(domain:www.acescentral.com)", + "WebFetch(domain:scholar.google.com)", + "WebFetch(domain:tannerhelland.com)", + "WebFetch(domain:www.jstor.org)", + "WebFetch(domain:www.psychopy.org)", + "WebFetch(domain:www.gartlgroup.com)", + "Bash(pip3 show:*)", + "WebFetch(domain:www.xrite.com)", + "WebFetch(domain:sensing.konicaminolta.com)", + "WebFetch(domain:www.khanacademy.org)", + "WebFetch(domain:mattlockyer.github.io)", + "WebFetch(domain:en.m.wikipedia.org)", + "WebFetch(domain:www.dpreview.com)", + "WebFetch(domain:discuss.pixls.us)", + "WebFetch(domain:openphotographicsolutions.org)", + "WebFetch(domain:www.cg.tuwien.ac.at)", + "WebFetch(domain:docs.opencv.org)", + "WebFetch(domain:learnopencv.com)", + "WebFetch(domain:www.cs.columbia.edu)", + "WebFetch(domain:mikael.pajamosimulations.se)", + "WebFetch(domain:pfstools.sourceforge.net)", + "WebFetch(domain:www.farbwerk360.de)", + "WebFetch(domain:catlikecoding.com)", + "WebFetch(domain:bartwronski.com)", + "WebFetch(domain:dcraw.sourceforge.net)", + "WebFetch(domain:www.cfa.harvard.edu)", + "WebFetch(domain:www.argyllcms.com)", + "WebFetch(domain:www.ingentaconnect.com)", + "WebFetch(domain:colorusers.com)", + "WebFetch(domain:www.psc.edu)", + "WebFetch(domain:hg.sr.ht)", + "WebFetch(domain:opencolorio.readthedocs.io)", + "Bash(pip3 install:*)", + "WebFetch(domain:twitter.com)", + "WebFetch(domain:perso.liris.cnrs.fr)", + "WebFetch(domain:www.cs.huji.ac.il)", + "WebFetch(domain:www.cs.drexel.edu)", + "WebFetch(domain:www.semanticscholar.org)", + "WebFetch(domain:citeseerx.ist.psu.edu)", + "WebFetch(domain:developer.nvidia.com)", + "WebFetch(domain:www.opengl.org)", + "WebFetch(domain:www.cim.mcgill.ca)", + "WebFetch(domain:www.graphics.stanford.edu)", + "WebFetch(domain:courses.cs.washington.edu)", + "WebFetch(domain:web.cs.wpi.edu)", + "WebFetch(domain:pyssim.readthedocs.io)", + "WebFetch(domain:compvis.github.io)", + "WebFetch(domain:www.imatest.com)", + "WebFetch(domain:leimao.github.io)", + "WebFetch(domain:towardsdatascience.com)", + "WebFetch(domain:medium.com)", + "WebFetch(domain:www.live.ece.utexas.edu)", + "WebFetch(domain:piq.readthedocs.io)", + "WebFetch(domain:lenscraft.co.uk)", + "WebFetch(domain:s3-eu-west-1.amazonaws.com)", + "WebFetch(domain:affinity.help)", + "WebFetch(domain:forum.affinity.serif.com)", + "WebFetch(domain:affinity.serif.com)", + "WebFetch(domain:www.canva.com)", + "WebFetch(domain:www.affinity.studio)", + "WebFetch(domain:petapixel.com)", + "WebFetch(domain:digital-photography-school.com)", + "WebFetch(domain:www.digitalcameraworld.com)", + "WebFetch(domain:allfreemockups.com)", + "WebFetch(domain:peterbredahldam.com)", + "WebFetch(domain:creofora.com)", + "Bash(uv run:*)", + "Bash(gh pr:*)", + "WebFetch(domain:api.github.com)", + "Read(//Users/gabriel/Developer/OEPL/py-oepl/**)", + "Skill(code-review:code-review)" + ] + } +} diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml deleted file mode 100644 index 17cd8d6..0000000 --- a/.github/workflows/tests.yml +++ /dev/null @@ -1,36 +0,0 @@ -name: Tests - -on: - pull_request: - push: - branches: - - main - workflow_dispatch: - -jobs: - tests: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - - name: Set up Python 3.12.0 - uses: actions/setup-python@v5 - with: - python-version: 3.12.0 - cache: 'pip' - - - name: Create virtual environment - run: | - python -m venv venv - . venv/bin/activate - echo "VIRTUAL_ENV=$VIRTUAL_ENV" >> $GITHUB_ENV - echo "$VIRTUAL_ENV/bin" >> $GITHUB_PATH - - - name: Install dependencies - run: | - pip install -r requirements.txt - pip install -r requirements_test.txt - - - name: Run tests - run: | - PYTHONPATH=${{ github.workspace }} pytest tests -v diff --git a/.run/HA python.run.xml b/.run/HA python.run.xml new file mode 100644 index 0000000..db8cd05 --- /dev/null +++ b/.run/HA python.run.xml @@ -0,0 +1,28 @@ + + + + diff --git a/ha_data_provider.md b/ha_data_provider.md new file mode 100644 index 0000000..3af681e --- /dev/null +++ b/ha_data_provider.md @@ -0,0 +1,97 @@ +# HADataProvider — wiring drawcustom `plot` into services.py + +## What this is + +`HADataProvider` is the HA-side implementation of drawcustom's `DataProvider` protocol. +It wraps the HA recorder and normalizes its output so `draw_plot` in drawcustom never imports anything from `homeassistant`. + +Add it to `services.py` — it's small enough to live there. + +--- + +## Imports to add at the top of `services.py` + +```python +from datetime import datetime +``` + +--- + +## Class to add after `_LOGGER` + +```python +class HADataProvider: + def __init__(self, hass: HomeAssistant) -> None: + self._hass = hass + + async def get_history( + self, entity_ids: list[str], start: datetime, end: datetime + ) -> dict[str, list[dict]]: + from functools import partial + from homeassistant.components.recorder import get_instance + from homeassistant.components.recorder.history import get_significant_states + + raw = await get_instance(self._hass).async_add_executor_job( + partial( + get_significant_states, + self._hass, start, end, entity_ids, + significant_changes_only=False, + minimal_response=True, + no_attributes=False, + ) + ) + # minimal_response=True: first item per entity is a LazyState object, + # subsequent items are already {"state", "last_changed"} dicts. + # Normalize the first item so callers get a uniform list of dicts. + result = {} + for entity_id, states in raw.items(): + if not states: + result[entity_id] = [] + continue + first = states[0] + result[entity_id] = [ + {"state": first.state, "last_changed": str(first.last_changed)}, + *states[1:], + ] + return result +``` + +> **Why lazy imports?** The recorder component may not be initialized when `services.py` +> is first imported. Deferring imports to call time guarantees the recorder is ready. + +--- + +## How to pass it into drawcustom + +When you eventually replace `imagegen/` with a direct drawcustom call: + +```python +from drawcustom import generate_image + +image = await generate_image( + payload, + width, + height, + data_provider=HADataProvider(hass), + session=session, +) +``` + +--- + +## DataProvider contract (from drawcustom) + +`get_history` must return: +```python +dict[str, list[dict]] +# { +# "sensor.temperature": [ +# {"state": "21.5", "last_changed": "2024-01-01T06:00:00+00:00"}, +# ... +# ] +# } +``` + +- Items ordered **oldest-first** +- Each dict has `"state"` (str) and `"last_changed"` (ISO 8601 str) +- Missing entities can be absent or map to `[]` diff --git a/pyproject.toml b/pyproject.toml deleted file mode 100644 index 3a58d86..0000000 --- a/pyproject.toml +++ /dev/null @@ -1,6 +0,0 @@ -[tool.pytest.ini_options] -asyncio_mode = "auto" -testpaths = [ - "tests" -] -asyncio_default_fixture_loop_scope = "function" diff --git a/requirements_test.txt b/requirements_test.txt deleted file mode 100644 index d4a3446..0000000 --- a/requirements_test.txt +++ /dev/null @@ -1,3 +0,0 @@ -pytest -pytest-asyncio -pytest-homeassistant-custom-component diff --git a/uv.lock b/uv.lock new file mode 100644 index 0000000..a5bc514 --- /dev/null +++ b/uv.lock @@ -0,0 +1,3 @@ +version = 1 +revision = 3 +requires-python = ">=3.14" From 055b91e9135185a24b2feeef01b4acede4345ab0 Mon Sep 17 00:00:00 2001 From: gabriel Date: Sun, 24 May 2026 22:29:58 +0200 Subject: [PATCH 12/51] chore: untrack editor/tooling files and update .gitignore Remove .claude/, .run/, ha_data_provider.md, and uv.lock from version control; add them to .gitignore. --- .claude/settings.local.json | 170 ------------------------------------ .gitignore | 8 +- .run/HA python.run.xml | 28 ------ ha_data_provider.md | 97 -------------------- uv.lock | 3 - 5 files changed, 6 insertions(+), 300 deletions(-) delete mode 100644 .claude/settings.local.json delete mode 100644 .run/HA python.run.xml delete mode 100644 ha_data_provider.md delete mode 100644 uv.lock diff --git a/.claude/settings.local.json b/.claude/settings.local.json deleted file mode 100644 index 3d5a236..0000000 --- a/.claude/settings.local.json +++ /dev/null @@ -1,170 +0,0 @@ -{ - "permissions": { - "allow": [ - "Skill(feature-dev:feature-dev)", - "Bash(gh repo view:*)", - "WebFetch(domain:github.com)", - "WebSearch", - "WebFetch(domain:raw.githubusercontent.com)", - "WebFetch(domain:developers.home-assistant.io)", - "Bash(gh api:*)", - "Bash(find /Users/gabriel/Developer/OpenDisplay/core/homeassistant/components -type d -name *display* -o -type d -name *open*)", - "Read(//Users/gabriel/Developer/OpenDisplay/py-opendisplay/**)", - "Read(//Users/gabriel/Developer/OpenDisplay/py-opendisplay/src/opendisplay/**)", - "WebFetch(domain:macwright.com)", - "WebFetch(domain:surma.dev)", - "WebFetch(domain:obrhubr.org)", - "WebFetch(domain:blog.johnnovak.net)", - "WebFetch(domain:stackoverflow.com)", - "WebFetch(domain:en.wikipedia.org)", - "WebFetch(domain:mv.in.tum.de)", - "Bash(grep -A 5 \"## Summary\\\\|### Key\\\\|algorithm\\\\|color_space\\\\|_WL\\\\|_WH\\\\|_WC\\\\|threshold\\\\|0\\\\.03928\\\\|0\\\\.04045\\\\|DitherMode\\\\|test\" /Users/gabriel/.claude/projects/-Users-gabriel-Developer-OpenDisplay-Home-Assistant-Integration/c772bc91-19a0-4682-a1e0-1163705c6134/tool-results/bgls60x5y.txt | grep -v \"^--$\" | head -200)", - "WebFetch(domain:www.color.org)", - "WebFetch(domain:www.imaging.org)", - "WebFetch(domain:www.iccmax.org)", - "WebFetch(domain:64.github.io)", - "WebFetch(domain:www.cl.cam.ac.uk)", - "WebFetch(domain:resources.mpi-inf.mpg.de)", - "WebFetch(domain:www.cs.utah.edu)", - "WebFetch(domain:users.cs.utah.edu)", - "WebFetch(domain:cgg.mff.cuni.cz)", - "WebFetch(domain:www.sciencedirect.com)", - "WebFetch(domain:www.youtube.com)", - "WebFetch(domain:colour-science.org)", - "WebFetch(domain:hg2dc.com)", - "WebFetch(domain:www.colour-science.org)", - "WebFetch(domain:docs.acescentral.com)", - "WebFetch(domain:community.acescentral.com)", - "WebFetch(domain:acescentral.com)", - "WebFetch(domain:docs.colour-science.org)", - "WebFetch(domain:www.wikibooks.org)", - "WebFetch(domain:ieeexplore.ieee.org)", - "WebFetch(domain:www.researchgate.net)", - "WebFetch(domain:arxiv.org)", - "WebFetch(domain:www.cairn.info)", - "WebFetch(domain:rawpedia.rawtherapee.com)", - "WebFetch(domain:scholar.harvard.edu)", - "WebFetch(domain:www.anylogic.com)", - "WebFetch(domain:www.itu.int)", - "WebFetch(domain:www.littlecms.com)", - "WebFetch(domain:www.nccr-cs.ch)", - "WebFetch(domain:www.jedsoft.org)", - "WebFetch(domain:helios2.mi.parisdescartes.fr)", - "WebFetch(domain:www.ece.ucsb.edu)", - "WebFetch(domain:web.ece.ucsb.edu)", - "WebFetch(domain:www.vis.uni-stuttgart.de)", - "WebFetch(domain:brucelindbloom.com)", - "WebFetch(domain:openimageio.readthedocs.io)", - "WebFetch(domain:www.fxphd.com)", - "WebFetch(domain:ninedegreesbelow.com)", - "WebFetch(domain:photosophia.net)", - "WebFetch(domain:imagemagick.org)", - "WebFetch(domain:www.farbgebung.de)", - "WebFetch(domain:www.cs.utexas.edu)", - "WebFetch(domain:www.cs.cmu.edu)", - "WebFetch(domain:graphics.cs.yale.edu)", - "WebFetch(domain:diglib.eg.org)", - "WebFetch(domain:bottosson.github.io)", - "WebFetch(domain:cs.uwaterloo.ca)", - "WebFetch(domain:www.doi.org)", - "WebFetch(domain:dl.acm.org)", - "WebFetch(domain:www.ipol.im)", - "WebFetch(domain:jcgt.org)", - "WebFetch(domain:renderwonk.com)", - "WebFetch(domain:www.imageprocessingplace.com)", - "WebFetch(domain:www.s3.amazonaws.com)", - "WebFetch(domain:www.photonstophotos.net)", - "WebFetch(domain:colour-science.readthedocs.io)", - "WebFetch(domain:colour.readthedocs.io)", - "WebFetch(domain:legacy.imagemagick.org)", - "WebFetch(domain:hdrplusplus.github.io)", - "WebFetch(domain:www.hdrsoft.com)", - "WebFetch(domain:onlinelibrary.wiley.com)", - "Bash(pip show:*)", - "WebFetch(domain:epapercentral.com)", - "WebFetch(domain:colour-science.github.io)", - "WebFetch(domain:www.pyimagesearch.com)", - "WebFetch(domain:lcs.ios.ac.cn)", - "WebFetch(domain:www.cambridgeincolour.com)", - "WebFetch(domain:luminance-hdr.readthedocs.io)", - "WebFetch(domain:www.graphics.cornell.edu)", - "WebFetch(domain:efele.net)", - "WebFetch(domain:colorcommunity.icc.org)", - "WebFetch(domain:www.strollswithmydog.com)", - "WebFetch(domain:photographylife.com)", - "WebFetch(domain:www.ctan.org)", - "WebFetch(domain:alexfry.github.io)", - "WebFetch(domain:www.acescentral.com)", - "WebFetch(domain:scholar.google.com)", - "WebFetch(domain:tannerhelland.com)", - "WebFetch(domain:www.jstor.org)", - "WebFetch(domain:www.psychopy.org)", - "WebFetch(domain:www.gartlgroup.com)", - "Bash(pip3 show:*)", - "WebFetch(domain:www.xrite.com)", - "WebFetch(domain:sensing.konicaminolta.com)", - "WebFetch(domain:www.khanacademy.org)", - "WebFetch(domain:mattlockyer.github.io)", - "WebFetch(domain:en.m.wikipedia.org)", - "WebFetch(domain:www.dpreview.com)", - "WebFetch(domain:discuss.pixls.us)", - "WebFetch(domain:openphotographicsolutions.org)", - "WebFetch(domain:www.cg.tuwien.ac.at)", - "WebFetch(domain:docs.opencv.org)", - "WebFetch(domain:learnopencv.com)", - "WebFetch(domain:www.cs.columbia.edu)", - "WebFetch(domain:mikael.pajamosimulations.se)", - "WebFetch(domain:pfstools.sourceforge.net)", - "WebFetch(domain:www.farbwerk360.de)", - "WebFetch(domain:catlikecoding.com)", - "WebFetch(domain:bartwronski.com)", - "WebFetch(domain:dcraw.sourceforge.net)", - "WebFetch(domain:www.cfa.harvard.edu)", - "WebFetch(domain:www.argyllcms.com)", - "WebFetch(domain:www.ingentaconnect.com)", - "WebFetch(domain:colorusers.com)", - "WebFetch(domain:www.psc.edu)", - "WebFetch(domain:hg.sr.ht)", - "WebFetch(domain:opencolorio.readthedocs.io)", - "Bash(pip3 install:*)", - "WebFetch(domain:twitter.com)", - "WebFetch(domain:perso.liris.cnrs.fr)", - "WebFetch(domain:www.cs.huji.ac.il)", - "WebFetch(domain:www.cs.drexel.edu)", - "WebFetch(domain:www.semanticscholar.org)", - "WebFetch(domain:citeseerx.ist.psu.edu)", - "WebFetch(domain:developer.nvidia.com)", - "WebFetch(domain:www.opengl.org)", - "WebFetch(domain:www.cim.mcgill.ca)", - "WebFetch(domain:www.graphics.stanford.edu)", - "WebFetch(domain:courses.cs.washington.edu)", - "WebFetch(domain:web.cs.wpi.edu)", - "WebFetch(domain:pyssim.readthedocs.io)", - "WebFetch(domain:compvis.github.io)", - "WebFetch(domain:www.imatest.com)", - "WebFetch(domain:leimao.github.io)", - "WebFetch(domain:towardsdatascience.com)", - "WebFetch(domain:medium.com)", - "WebFetch(domain:www.live.ece.utexas.edu)", - "WebFetch(domain:piq.readthedocs.io)", - "WebFetch(domain:lenscraft.co.uk)", - "WebFetch(domain:s3-eu-west-1.amazonaws.com)", - "WebFetch(domain:affinity.help)", - "WebFetch(domain:forum.affinity.serif.com)", - "WebFetch(domain:affinity.serif.com)", - "WebFetch(domain:www.canva.com)", - "WebFetch(domain:www.affinity.studio)", - "WebFetch(domain:petapixel.com)", - "WebFetch(domain:digital-photography-school.com)", - "WebFetch(domain:www.digitalcameraworld.com)", - "WebFetch(domain:allfreemockups.com)", - "WebFetch(domain:peterbredahldam.com)", - "WebFetch(domain:creofora.com)", - "Bash(uv run:*)", - "Bash(gh pr:*)", - "WebFetch(domain:api.github.com)", - "Read(//Users/gabriel/Developer/OEPL/py-oepl/**)", - "Skill(code-review:code-review)" - ] - } -} diff --git a/.gitignore b/.gitignore index 2d635fd..0c6adc1 100644 --- a/.gitignore +++ b/.gitignore @@ -164,7 +164,11 @@ lib64 # Home Assistant configuration config/ +# Editor / tooling +.claude/ +.run/ +uv.lock +ha_data_provider.md + custom_components/opendisplay/*.jpg custom_components/opendisplay/lastapinteraction.txt - -tests/drawcustom/test_images/rename_me.png diff --git a/.run/HA python.run.xml b/.run/HA python.run.xml deleted file mode 100644 index db8cd05..0000000 --- a/.run/HA python.run.xml +++ /dev/null @@ -1,28 +0,0 @@ - - - - diff --git a/ha_data_provider.md b/ha_data_provider.md deleted file mode 100644 index 3af681e..0000000 --- a/ha_data_provider.md +++ /dev/null @@ -1,97 +0,0 @@ -# HADataProvider — wiring drawcustom `plot` into services.py - -## What this is - -`HADataProvider` is the HA-side implementation of drawcustom's `DataProvider` protocol. -It wraps the HA recorder and normalizes its output so `draw_plot` in drawcustom never imports anything from `homeassistant`. - -Add it to `services.py` — it's small enough to live there. - ---- - -## Imports to add at the top of `services.py` - -```python -from datetime import datetime -``` - ---- - -## Class to add after `_LOGGER` - -```python -class HADataProvider: - def __init__(self, hass: HomeAssistant) -> None: - self._hass = hass - - async def get_history( - self, entity_ids: list[str], start: datetime, end: datetime - ) -> dict[str, list[dict]]: - from functools import partial - from homeassistant.components.recorder import get_instance - from homeassistant.components.recorder.history import get_significant_states - - raw = await get_instance(self._hass).async_add_executor_job( - partial( - get_significant_states, - self._hass, start, end, entity_ids, - significant_changes_only=False, - minimal_response=True, - no_attributes=False, - ) - ) - # minimal_response=True: first item per entity is a LazyState object, - # subsequent items are already {"state", "last_changed"} dicts. - # Normalize the first item so callers get a uniform list of dicts. - result = {} - for entity_id, states in raw.items(): - if not states: - result[entity_id] = [] - continue - first = states[0] - result[entity_id] = [ - {"state": first.state, "last_changed": str(first.last_changed)}, - *states[1:], - ] - return result -``` - -> **Why lazy imports?** The recorder component may not be initialized when `services.py` -> is first imported. Deferring imports to call time guarantees the recorder is ready. - ---- - -## How to pass it into drawcustom - -When you eventually replace `imagegen/` with a direct drawcustom call: - -```python -from drawcustom import generate_image - -image = await generate_image( - payload, - width, - height, - data_provider=HADataProvider(hass), - session=session, -) -``` - ---- - -## DataProvider contract (from drawcustom) - -`get_history` must return: -```python -dict[str, list[dict]] -# { -# "sensor.temperature": [ -# {"state": "21.5", "last_changed": "2024-01-01T06:00:00+00:00"}, -# ... -# ] -# } -``` - -- Items ordered **oldest-first** -- Each dict has `"state"` (str) and `"last_changed"` (ISO 8601 str) -- Missing entities can be absent or map to `[]` diff --git a/uv.lock b/uv.lock deleted file mode 100644 index a5bc514..0000000 --- a/uv.lock +++ /dev/null @@ -1,3 +0,0 @@ -version = 1 -revision = 3 -requires-python = ">=3.14" From c5f1261cfbf1957963992a1a73ccf256ac4e4d17 Mon Sep 17 00:00:00 2001 From: gabriel Date: Sun, 24 May 2026 23:08:00 +0200 Subject: [PATCH 13/51] chore: bump version to 3.0.0-beta.1, require HA 2026.4.0 --- custom_components/opendisplay/manifest.json | 2 +- hacs.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/custom_components/opendisplay/manifest.json b/custom_components/opendisplay/manifest.json index cf8db16..ce41940 100644 --- a/custom_components/opendisplay/manifest.json +++ b/custom_components/opendisplay/manifest.json @@ -15,5 +15,5 @@ "iot_class": "local_push", "loggers": ["opendisplay"], "requirements": ["py-opendisplay==7.2.5", "odl-renderer==0.5.8"], - "version": "2.0.2" + "version": "3.0.0-beta.1" } diff --git a/hacs.json b/hacs.json index abdbb4d..73fde3d 100644 --- a/hacs.json +++ b/hacs.json @@ -1,5 +1,5 @@ { "name": "OpenDisplay", "render_readme": true, - "homeassistant": "2023.3.0" + "homeassistant": "2026.4.0" } From 5b9ffbabba43b1f320bf11c2bf6a1b048a749977 Mon Sep 17 00:00:00 2001 From: gabriel Date: Sun, 24 May 2026 23:25:09 +0200 Subject: [PATCH 14/51] fix: fix manifest for custom integration (documentation URL, issue_tracker, recorder dependency) --- custom_components/opendisplay/manifest.json | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/custom_components/opendisplay/manifest.json b/custom_components/opendisplay/manifest.json index ce41940..f5bc687 100644 --- a/custom_components/opendisplay/manifest.json +++ b/custom_components/opendisplay/manifest.json @@ -9,10 +9,11 @@ ], "codeowners": ["@g4bri3lDev"], "config_flow": true, - "dependencies": ["bluetooth_adapters", "http"], - "documentation": "https://www.home-assistant.io/integrations/opendisplay", + "dependencies": ["bluetooth_adapters", "http", "recorder"], + "documentation": "https://github.com/OpenDisplay/Home_Assistant_Integration", "integration_type": "device", "iot_class": "local_push", + "issue_tracker": "https://github.com/OpenDisplay/Home_Assistant_Integration/issues", "loggers": ["opendisplay"], "requirements": ["py-opendisplay==7.2.5", "odl-renderer==0.5.8"], "version": "3.0.0-beta.1" From 2e29b34cce3224054b37a1dacc100cef87bde425 Mon Sep 17 00:00:00 2001 From: gabriel Date: Sun, 24 May 2026 23:27:30 +0200 Subject: [PATCH 15/51] chore: add brand assets for HACS --- .../opendisplay/brand/dark_icon.png | Bin 0 -> 10658 bytes .../opendisplay/brand/dark_icon@2x.png | Bin 0 -> 24915 bytes .../opendisplay/brand/dark_logo.png | Bin 0 -> 26750 bytes .../opendisplay/brand/dark_logo@2x.png | Bin 0 -> 62010 bytes custom_components/opendisplay/brand/icon.png | Bin 0 -> 10233 bytes custom_components/opendisplay/brand/icon@2x.png | Bin 0 -> 23980 bytes custom_components/opendisplay/brand/logo.png | Bin 0 -> 25547 bytes custom_components/opendisplay/brand/logo@2x.png | Bin 0 -> 59813 bytes 8 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 custom_components/opendisplay/brand/dark_icon.png create mode 100644 custom_components/opendisplay/brand/dark_icon@2x.png create mode 100644 custom_components/opendisplay/brand/dark_logo.png create mode 100644 custom_components/opendisplay/brand/dark_logo@2x.png create mode 100644 custom_components/opendisplay/brand/icon.png create mode 100644 custom_components/opendisplay/brand/icon@2x.png create mode 100644 custom_components/opendisplay/brand/logo.png create mode 100644 custom_components/opendisplay/brand/logo@2x.png diff --git a/custom_components/opendisplay/brand/dark_icon.png b/custom_components/opendisplay/brand/dark_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..e1b5c3c7ba31368bfffdeaf5d25be2a31faa8b20 GIT binary patch literal 10658 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 literal 0 HcmV?d00001 diff --git a/custom_components/opendisplay/brand/dark_icon@2x.png b/custom_components/opendisplay/brand/dark_icon@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..92fb6dcb3fd1550dea375a152b4674b7ccf02957 GIT binary patch literal 24915 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%0A$ptA$|HCp@vFJ-0u4*2!IhE&_ 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 literal 0 HcmV?d00001 diff --git a/custom_components/opendisplay/brand/dark_logo.png b/custom_components/opendisplay/brand/dark_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..7a640ce5a897dd7006264c9591121c7673e82fa2 GIT binary patch literal 26750 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 G2~7YojB1qt literal 0 HcmV?d00001 diff --git a/custom_components/opendisplay/brand/icon.png b/custom_components/opendisplay/brand/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..21dde7e09c7c77610022da83e9398d8ee4a5c342 GIT binary patch literal 10233 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

    v(FM?qq_@-go^-35gochfrSl$ntW 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 RlMViYu-lKZF0&$B`9EHjI643T literal 0 HcmV?d00001 diff --git a/custom_components/opendisplay/brand/logo.png b/custom_components/opendisplay/brand/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..fbef506a1e6c8863b7fd96d007a8e84329978993 GIT binary patch literal 25547 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 Ji#~h#{{Zrq#f$&| literal 0 HcmV?d00001 From 245da55526903de4a3890f0afb38b50df28b899f Mon Sep 17 00:00:00 2001 From: gabriel Date: Mon, 25 May 2026 11:19:58 +0200 Subject: [PATCH 16/51] refactor: extract _async_connect_and_run, bump py-opendisplay to 7.3.0 --- custom_components/opendisplay/manifest.json | 2 +- custom_components/opendisplay/services.py | 49 +++++++++++++-------- 2 files changed, 32 insertions(+), 19 deletions(-) diff --git a/custom_components/opendisplay/manifest.json b/custom_components/opendisplay/manifest.json index f5bc687..f31c777 100644 --- a/custom_components/opendisplay/manifest.json +++ b/custom_components/opendisplay/manifest.json @@ -15,6 +15,6 @@ "iot_class": "local_push", "issue_tracker": "https://github.com/OpenDisplay/Home_Assistant_Integration/issues", "loggers": ["opendisplay"], - "requirements": ["py-opendisplay==7.2.5", "odl-renderer==0.5.8"], + "requirements": ["py-opendisplay==7.3.0", "odl-renderer==0.5.8"], "version": "3.0.0-beta.1" } diff --git a/custom_components/opendisplay/services.py b/custom_components/opendisplay/services.py index 4f0d6e1..5bb66c7 100644 --- a/custom_components/opendisplay/services.py +++ b/custom_components/opendisplay/services.py @@ -1,7 +1,7 @@ """Service registration for the OpenDisplay integration.""" import asyncio -from collections.abc import Callable +from collections.abc import Awaitable, Callable import contextlib from datetime import timedelta from enum import IntEnum @@ -22,6 +22,8 @@ OpenDisplayError, RefreshMode, Rotation, + LedFlashConfig, + BuzzerActivateConfig, ) from PIL import Image as PILImage, ImageOps import voluptuous as vol @@ -169,18 +171,12 @@ async def _async_download_image(hass: HomeAssistant, url: str) -> PILImage.Image return await hass.async_add_executor_job(_load_image_from_bytes, data) -async def _async_send_image( +async def _async_connect_and_run( hass: HomeAssistant, entry: "OpenDisplayConfigEntry", - img: PILImage.Image, - *, - dither_mode: DitherMode, - refresh_mode: RefreshMode, - fit: FitMode = FitMode.CONTAIN, - tone: float | str = "auto", - rotate: Rotation = Rotation.ROTATE_0, + action: Callable[[OpenDisplayDevice], Awaitable[None]], ) -> None: - """Resolve BLE device, parse encryption key, and upload a PIL image.""" + """Resolve BLE device, open a connection, run action, handle auth errors.""" address = entry.unique_id assert address is not None ble_device = async_ble_device_from_address(hass, address, connectable=True) @@ -212,14 +208,7 @@ async def _async_send_image( config=entry.runtime_data.device_config, encryption_key=encryption_key, ) as device: - await device.upload_image( - img, - refresh_mode=refresh_mode, - dither_mode=dither_mode, - tone=tone, - fit=fit, - rotate=rotate, - ) + await action(device) except (AuthenticationFailedError, AuthenticationRequiredError) as err: entry.async_start_reauth(hass) raise HomeAssistantError( @@ -231,6 +220,30 @@ async def _async_send_image( ) from err +async def _async_send_image( + hass: HomeAssistant, + entry: "OpenDisplayConfigEntry", + img: PILImage.Image, + *, + dither_mode: DitherMode, + refresh_mode: RefreshMode, + fit: FitMode = FitMode.CONTAIN, + tone: float | str = "auto", + rotate: Rotation = Rotation.ROTATE_0, +) -> None: + """Upload a PIL image to the device.""" + async def _upload(device: OpenDisplayDevice) -> None: + await device.upload_image( + img, + refresh_mode=refresh_mode, + dither_mode=dither_mode, + tone=tone, + fit=fit, + rotate=rotate, + ) + await _async_connect_and_run(hass, entry, _upload) + + async def _async_upload_image(call: ServiceCall) -> None: """Handle the upload_image service call.""" entry = _get_entry_for_device(call) From c66b93dae2add473a70a4850db8568343b91a888 Mon Sep 17 00:00:00 2001 From: gabriel Date: Mon, 25 May 2026 11:22:52 +0200 Subject: [PATCH 17/51] feat: add activate_led and activate_buzzer services --- custom_components/opendisplay/icons.json | 6 ++ custom_components/opendisplay/services.py | 76 +++++++++++++- custom_components/opendisplay/services.yaml | 106 ++++++++++++++++++++ custom_components/opendisplay/strings.json | 70 +++++++++++++ 4 files changed, 257 insertions(+), 1 deletion(-) diff --git a/custom_components/opendisplay/icons.json b/custom_components/opendisplay/icons.json index 801f909..67bbfcb 100644 --- a/custom_components/opendisplay/icons.json +++ b/custom_components/opendisplay/icons.json @@ -5,6 +5,12 @@ }, "drawcustom": { "service": "mdi:draw" + }, + "activate_led": { + "service": "mdi:led-on" + }, + "activate_buzzer": { + "service": "mdi:bell-ring" } } } diff --git a/custom_components/opendisplay/services.py b/custom_components/opendisplay/services.py index 5bb66c7..2490bdd 100644 --- a/custom_components/opendisplay/services.py +++ b/custom_components/opendisplay/services.py @@ -100,6 +100,30 @@ def validate(value: str) -> IntEnum: ) +SCHEMA_ACTIVATE_LED = vol.Schema( + { + vol.Required(ATTR_DEVICE_ID): cv.string, + vol.Optional("instance", default=0): vol.All(vol.Coerce(int), vol.Range(min=0, max=255)), + vol.Optional("color", default=0): vol.All(vol.Coerce(int), vol.Range(min=0, max=255)), + vol.Optional("brightness", default=8): vol.All(vol.Coerce(int), vol.Range(min=1, max=16)), + vol.Optional("flash_count", default=1): vol.All(vol.Coerce(int), vol.Range(min=0, max=15)), + vol.Optional("loop_delay", default=0): vol.All(vol.Coerce(int), vol.Range(min=0, max=15)), + vol.Optional("inter_delay", default=0): vol.All(vol.Coerce(int), vol.Range(min=0, max=255)), + vol.Optional("repeats", default=1): vol.All(vol.Coerce(int), vol.Range(min=0, max=255)), + } +) + +SCHEMA_ACTIVATE_BUZZER = vol.Schema( + { + vol.Required(ATTR_DEVICE_ID): cv.string, + vol.Optional("instance", default=0): vol.All(vol.Coerce(int), vol.Range(min=0, max=3)), + vol.Optional("frequency_hz", default=1000): vol.All(vol.Coerce(int), vol.Range(min=0, max=12000)), + vol.Optional("duration_ms", default=100): vol.All(vol.Coerce(int), vol.Range(min=5, max=1275)), + vol.Optional("repeats", default=1): vol.All(vol.Coerce(int), vol.Range(min=1, max=255)), + } +) + + def _get_entry_for_device(call: ServiceCall) -> OpenDisplayConfigEntry: """Return the config entry for the device targeted by a service call.""" device_id: str = call.data[ATTR_DEVICE_ID] @@ -472,6 +496,54 @@ async def _drawcustom_for_device( ) +async def _async_activate_led(call: ServiceCall) -> None: + """Handle the activate_led service call.""" + entry = _get_entry_for_device(call) + if not entry.runtime_data.device_config.leds: + raise ServiceValidationError( + translation_domain=DOMAIN, + translation_key="no_leds", + translation_placeholders={"device_id": call.data[ATTR_DEVICE_ID]}, + ) + repeats: int = call.data["repeats"] + flash_config = LedFlashConfig.single( + color=call.data["color"], + brightness=call.data["brightness"], + flash_count=call.data["flash_count"], + loop_delay_units=call.data["loop_delay"], + inter_delay_units=call.data["inter_delay"], + group_repeats=None if repeats == 0 else repeats, + ) + instance: int = call.data["instance"] + + async def _led(device: OpenDisplayDevice) -> None: + await device.activate_led(instance, flash_config) + + await _async_connect_and_run(call.hass, entry, _led) + + +async def _async_activate_buzzer(call: ServiceCall) -> None: + """Handle the activate_buzzer service call.""" + entry = _get_entry_for_device(call) + if not entry.runtime_data.device_config.buzzers: + raise ServiceValidationError( + translation_domain=DOMAIN, + translation_key="no_buzzers", + translation_placeholders={"device_id": call.data[ATTR_DEVICE_ID]}, + ) + buzz_config = BuzzerActivateConfig.single_tone( + frequency_hz=call.data["frequency_hz"], + duration_ms=call.data["duration_ms"], + repeats=call.data["repeats"], + ) + instance: int = call.data["instance"] + + async def _buzz(device: OpenDisplayDevice) -> None: + await device.activate_buzzer(instance, buzz_config) + + await _async_connect_and_run(call.hass, entry, _buzz) + + @callback def async_setup_services(hass: HomeAssistant) -> None: """Register OpenDisplay services.""" @@ -481,4 +553,6 @@ def async_setup_services(hass: HomeAssistant) -> None: _async_upload_image, schema=SCHEMA_UPLOAD_IMAGE, ) - hass.services.async_register(DOMAIN, "drawcustom", _async_drawcustom, schema=SCHEMA_DRAWCUSTOM) \ No newline at end of file + hass.services.async_register(DOMAIN, "drawcustom", _async_drawcustom, schema=SCHEMA_DRAWCUSTOM) + hass.services.async_register(DOMAIN, "activate_led", _async_activate_led, schema=SCHEMA_ACTIVATE_LED) + hass.services.async_register(DOMAIN, "activate_buzzer", _async_activate_buzzer, schema=SCHEMA_ACTIVATE_BUZZER) \ No newline at end of file diff --git a/custom_components/opendisplay/services.yaml b/custom_components/opendisplay/services.yaml index db79ee4..35340e7 100644 --- a/custom_components/opendisplay/services.yaml +++ b/custom_components/opendisplay/services.yaml @@ -69,6 +69,112 @@ upload_image: mode: slider unit_of_measurement: "%" +activate_led: + fields: + device_id: + required: true + selector: + device: + integration: opendisplay + instance: + required: false + default: 0 + selector: + number: + min: 0 + max: 255 + mode: box + color: + required: false + default: 0 + selector: + number: + min: 0 + max: 255 + mode: box + brightness: + required: false + default: 8 + selector: + number: + min: 1 + max: 16 + mode: slider + flash_count: + required: false + default: 1 + selector: + number: + min: 0 + max: 15 + mode: box + loop_delay: + required: false + default: 0 + selector: + number: + min: 0 + max: 15 + mode: box + inter_delay: + required: false + default: 0 + selector: + number: + min: 0 + max: 255 + mode: box + repeats: + required: false + default: 1 + selector: + number: + min: 0 + max: 255 + mode: box + +activate_buzzer: + fields: + device_id: + required: true + selector: + device: + integration: opendisplay + instance: + required: false + default: 0 + selector: + number: + min: 0 + max: 3 + mode: box + frequency_hz: + required: false + default: 1000 + selector: + number: + min: 0 + max: 12000 + mode: box + unit_of_measurement: Hz + duration_ms: + required: false + default: 100 + selector: + number: + min: 5 + max: 1275 + mode: box + unit_of_measurement: ms + repeats: + required: false + default: 1 + selector: + number: + min: 1 + max: 255 + mode: box + drawcustom: name: Draw Custom Image description: Draws a custom image on one or more OpenDisplay devices diff --git a/custom_components/opendisplay/strings.json b/custom_components/opendisplay/strings.json index a44ef78..1c010ca 100644 --- a/custom_components/opendisplay/strings.json +++ b/custom_components/opendisplay/strings.json @@ -98,6 +98,12 @@ "multiple_errors": { "message": "Errors occurred for one or more devices:\n{errors}" }, + "no_buzzers": { + "message": "Device `{device_id}` has no buzzer configured." + }, + "no_leds": { + "message": "Device `{device_id}` has no LEDs configured." + }, "no_targets_specified": { "message": "No target devices specified." }, @@ -174,6 +180,70 @@ } } }, + "activate_led": { + "name": "Activate LED", + "description": "Triggers an LED flash pattern on an OpenDisplay device.", + "fields": { + "device_id": { + "name": "Device", + "description": "The OpenDisplay device." + }, + "instance": { + "name": "LED instance", + "description": "LED instance index (0-based)." + }, + "color": { + "name": "Color", + "description": "Color index (device-specific, 0-255)." + }, + "brightness": { + "name": "Brightness", + "description": "LED brightness (1-16)." + }, + "flash_count": { + "name": "Flash count", + "description": "Number of flashes per cycle (0-15)." + }, + "loop_delay": { + "name": "Loop delay", + "description": "Delay between flashes within a cycle (0-15 units)." + }, + "inter_delay": { + "name": "Inter delay", + "description": "Delay between cycles (0-255 units)." + }, + "repeats": { + "name": "Repeats", + "description": "Number of times to repeat the pattern (0 = infinite)." + } + } + }, + "activate_buzzer": { + "name": "Activate buzzer", + "description": "Triggers a buzzer tone on an OpenDisplay device.", + "fields": { + "device_id": { + "name": "Device", + "description": "The OpenDisplay device." + }, + "instance": { + "name": "Buzzer instance", + "description": "Buzzer instance index (0-based)." + }, + "frequency_hz": { + "name": "Frequency", + "description": "Tone frequency in Hz (0 = silence, 400-12000)." + }, + "duration_ms": { + "name": "Duration", + "description": "Tone duration in milliseconds (5-1275)." + }, + "repeats": { + "name": "Repeats", + "description": "Number of times to repeat the tone (1-255)." + } + } + }, "drawcustom": { "description": "Draws a custom image on one or more OpenDisplay devices.", "fields": { From c83721ebbc2f6ce9fc2977b8ce0169761fa50478 Mon Sep 17 00:00:00 2001 From: gabriel Date: Mon, 25 May 2026 11:24:50 +0200 Subject: [PATCH 18/51] feat: add firmware update entity --- custom_components/opendisplay/__init__.py | 2 +- custom_components/opendisplay/icons.json | 7 ++ custom_components/opendisplay/strings.json | 5 ++ custom_components/opendisplay/update.py | 88 ++++++++++++++++++++++ 4 files changed, 101 insertions(+), 1 deletion(-) create mode 100644 custom_components/opendisplay/update.py diff --git a/custom_components/opendisplay/__init__.py b/custom_components/opendisplay/__init__.py index e517c00..5f92ad9 100644 --- a/custom_components/opendisplay/__init__.py +++ b/custom_components/opendisplay/__init__.py @@ -34,7 +34,7 @@ CONFIG_SCHEMA = cv.config_entry_only_config_schema(DOMAIN) _BASE_PLATFORMS: list[Platform] = [] -_FLEX_PLATFORMS = [Platform.EVENT, Platform.SENSOR] +_FLEX_PLATFORMS = [Platform.EVENT, Platform.SENSOR, Platform.UPDATE] @dataclass diff --git a/custom_components/opendisplay/icons.json b/custom_components/opendisplay/icons.json index 67bbfcb..6150e04 100644 --- a/custom_components/opendisplay/icons.json +++ b/custom_components/opendisplay/icons.json @@ -1,4 +1,11 @@ { + "entity": { + "update": { + "firmware": { + "default": "mdi:chip" + } + } + }, "services": { "upload_image": { "service": "mdi:image-move" diff --git a/custom_components/opendisplay/strings.json b/custom_components/opendisplay/strings.json index 1c010ca..4375278 100644 --- a/custom_components/opendisplay/strings.json +++ b/custom_components/opendisplay/strings.json @@ -80,6 +80,11 @@ "battery_voltage": { "name": "Battery voltage" } + }, + "update": { + "firmware": { + "name": "Firmware" + } } }, "exceptions": { diff --git a/custom_components/opendisplay/update.py b/custom_components/opendisplay/update.py new file mode 100644 index 0000000..006e4df --- /dev/null +++ b/custom_components/opendisplay/update.py @@ -0,0 +1,88 @@ +"""Firmware update entity for OpenDisplay devices.""" + +from __future__ import annotations + +import logging + +import aiohttp +from opendisplay.models.firmware import firmware_release_repo + +from homeassistant.components.update import UpdateDeviceClass, UpdateEntity +from homeassistant.core import HomeAssistant +from homeassistant.helpers.aiohttp_client import async_get_clientsession +from homeassistant.helpers.entity import EntityDescription +from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback + +from . import OpenDisplayConfigEntry +from .entity import OpenDisplayEntity + +_LOGGER = logging.getLogger(__name__) + +PARALLEL_UPDATES = 1 + +_GITHUB_LATEST = "https://api.github.com/repos/{repo}/releases/latest" + +_FIRMWARE_DESCRIPTION = EntityDescription( + key="firmware", + translation_key="firmware", +) + + +async def async_setup_entry( + hass: HomeAssistant, + entry: OpenDisplayConfigEntry, + async_add_entities: AddConfigEntryEntitiesCallback, +) -> None: + """Set up OpenDisplay firmware update entity.""" + async_add_entities( + [OpenDisplayFirmwareUpdateEntity(entry.runtime_data.coordinator, entry)] + ) + + +class OpenDisplayFirmwareUpdateEntity(OpenDisplayEntity, UpdateEntity): + """Firmware update entity for an OpenDisplay device.""" + + _attr_device_class = UpdateDeviceClass.FIRMWARE + _attr_latest_version: str | None = None + + def __init__(self, coordinator, entry: OpenDisplayConfigEntry) -> None: + """Initialize the entity.""" + super().__init__(coordinator, _FIRMWARE_DESCRIPTION) + fw = entry.runtime_data.firmware + self._attr_installed_version = f"{fw['major']}.{fw['minor']}" + self._firmware_repo = firmware_release_repo( + entry.runtime_data.device_config.system.ic_type + ) + + @property + def installed_version(self) -> str | None: + """Return the installed firmware version.""" + return self._attr_installed_version + + @property + def latest_version(self) -> str | None: + """Return the latest available firmware version.""" + return self._attr_latest_version + + @property + def release_url(self) -> str | None: + """Return URL to the GitHub release page.""" + if self._firmware_repo and self._attr_latest_version: + return f"https://github.com/{self._firmware_repo}/releases/tag/{self._attr_latest_version}" + return None + + async def async_update(self) -> None: + """Fetch latest firmware version from GitHub.""" + if self._firmware_repo is None: + return + try: + session = async_get_clientsession(self.hass) + async with session.get( + _GITHUB_LATEST.format(repo=self._firmware_repo), + headers={"Accept": "application/vnd.github+json"}, + ) as resp: + resp.raise_for_status() + data = await resp.json() + self._attr_latest_version = data.get("tag_name") + except aiohttp.ClientError as err: + _LOGGER.debug("Failed to fetch latest firmware version: %s", err) From 2bed475a97344eec42fc87a1380eded8b2a65062 Mon Sep 17 00:00:00 2001 From: gabriel Date: Mon, 25 May 2026 11:28:05 +0200 Subject: [PATCH 19/51] fix: use UpdateEntityDescription to avoid display_precision AttributeError --- custom_components/opendisplay/update.py | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/custom_components/opendisplay/update.py b/custom_components/opendisplay/update.py index 006e4df..dccf398 100644 --- a/custom_components/opendisplay/update.py +++ b/custom_components/opendisplay/update.py @@ -7,10 +7,9 @@ import aiohttp from opendisplay.models.firmware import firmware_release_repo -from homeassistant.components.update import UpdateDeviceClass, UpdateEntity +from homeassistant.components.update import UpdateDeviceClass, UpdateEntity, UpdateEntityDescription from homeassistant.core import HomeAssistant from homeassistant.helpers.aiohttp_client import async_get_clientsession -from homeassistant.helpers.entity import EntityDescription from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback from . import OpenDisplayConfigEntry @@ -22,9 +21,10 @@ _GITHUB_LATEST = "https://api.github.com/repos/{repo}/releases/latest" -_FIRMWARE_DESCRIPTION = EntityDescription( +_FIRMWARE_DESCRIPTION = UpdateEntityDescription( key="firmware", translation_key="firmware", + device_class=UpdateDeviceClass.FIRMWARE, ) @@ -39,10 +39,9 @@ async def async_setup_entry( ) -class OpenDisplayFirmwareUpdateEntity(OpenDisplayEntity, UpdateEntity): +class OpenDisplayFirmwareUpdateEntity(OpenDisplayEntity[UpdateEntityDescription], UpdateEntity): """Firmware update entity for an OpenDisplay device.""" - _attr_device_class = UpdateDeviceClass.FIRMWARE _attr_latest_version: str | None = None def __init__(self, coordinator, entry: OpenDisplayConfigEntry) -> None: From 388dc721c40a96cbf8c6335973f2f86b4d856cf7 Mon Sep 17 00:00:00 2001 From: gabriel Date: Mon, 25 May 2026 11:31:11 +0200 Subject: [PATCH 20/51] fix: poll latest firmware version on load and override should_poll --- custom_components/opendisplay/update.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/custom_components/opendisplay/update.py b/custom_components/opendisplay/update.py index dccf398..bab0568 100644 --- a/custom_components/opendisplay/update.py +++ b/custom_components/opendisplay/update.py @@ -43,6 +43,7 @@ class OpenDisplayFirmwareUpdateEntity(OpenDisplayEntity[UpdateEntityDescription] """Firmware update entity for an OpenDisplay device.""" _attr_latest_version: str | None = None + should_poll = True # override coordinator's should_poll=False; GitHub needs regular polling def __init__(self, coordinator, entry: OpenDisplayConfigEntry) -> None: """Initialize the entity.""" @@ -70,6 +71,12 @@ def release_url(self) -> str | None: return f"https://github.com/{self._firmware_repo}/releases/tag/{self._attr_latest_version}" return None + async def async_added_to_hass(self) -> None: + """Fetch the latest version immediately on entity load.""" + await super().async_added_to_hass() + await self.async_update() + self.async_write_ha_state() + async def async_update(self) -> None: """Fetch latest firmware version from GitHub.""" if self._firmware_repo is None: From 013cd03390d62ba89eaeedb484240c7a4af066fe Mon Sep 17 00:00:00 2001 From: gabriel Date: Mon, 25 May 2026 11:49:41 +0200 Subject: [PATCH 21/51] fix: include error details in upload failure message The upload_error exception swallowed the original OpenDisplayError message, making it hard to diagnose failures. Pass str(err) as a translation placeholder so the underlying cause is shown in the HA notification. --- custom_components/opendisplay/services.py | 4 +++- custom_components/opendisplay/strings.json | 2 +- custom_components/opendisplay/translations/en.json | 2 +- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/custom_components/opendisplay/services.py b/custom_components/opendisplay/services.py index 2490bdd..f451f74 100644 --- a/custom_components/opendisplay/services.py +++ b/custom_components/opendisplay/services.py @@ -240,7 +240,9 @@ async def _async_connect_and_run( ) from err except OpenDisplayError as err: raise HomeAssistantError( - translation_domain=DOMAIN, translation_key="upload_error" + translation_domain=DOMAIN, + translation_key="upload_error", + translation_placeholders={"error": str(err)}, ) from err diff --git a/custom_components/opendisplay/strings.json b/custom_components/opendisplay/strings.json index 4375278..8b248a0 100644 --- a/custom_components/opendisplay/strings.json +++ b/custom_components/opendisplay/strings.json @@ -113,7 +113,7 @@ "message": "No target devices specified." }, "upload_error": { - "message": "Failed to upload image to the display." + "message": "Failed to upload to the display: {error}" } }, "selector": { diff --git a/custom_components/opendisplay/translations/en.json b/custom_components/opendisplay/translations/en.json index 11905ea..93d5cdd 100644 --- a/custom_components/opendisplay/translations/en.json +++ b/custom_components/opendisplay/translations/en.json @@ -102,7 +102,7 @@ "message": "No target devices specified." }, "upload_error": { - "message": "Failed to upload image to the display." + "message": "Failed to upload to the display: {error}" } }, "selector": { From 9001078c3cf5bbd9e3dfd1bdcafb2bd49c413dba Mon Sep 17 00:00:00 2001 From: gabriel Date: Mon, 25 May 2026 11:50:12 +0200 Subject: [PATCH 22/51] feat: add RSSI and last-seen sensors to all devices Both sensors are diagnostic and disabled by default. All devices now load the sensor platform (moved Platform.SENSOR to _BASE_PLATFORMS), so non-flex devices get temperature, RSSI, and last-seen; battery sensors remain gated on power mode as before. The sensor value_fn signature is widened from AdvertisementData to OpenDisplayUpdate to give access to coordinator-level fields (RSSI, last_seen) alongside advertisement payload fields. Also syncs en.json with strings.json (adds translations for the new sensors, update entity, no_leds/no_buzzers exceptions, and the activate_led/activate_buzzer/drawcustom services that were missing). --- custom_components/opendisplay/__init__.py | 2 +- custom_components/opendisplay/coordinator.py | 5 + custom_components/opendisplay/sensor.py | 48 ++++++-- custom_components/opendisplay/strings.json | 6 + .../opendisplay/translations/en.json | 113 +++++++++++++++++- 5 files changed, 163 insertions(+), 11 deletions(-) diff --git a/custom_components/opendisplay/__init__.py b/custom_components/opendisplay/__init__.py index 5f92ad9..301ef38 100644 --- a/custom_components/opendisplay/__init__.py +++ b/custom_components/opendisplay/__init__.py @@ -33,7 +33,7 @@ CONFIG_SCHEMA = cv.config_entry_only_config_schema(DOMAIN) -_BASE_PLATFORMS: list[Platform] = [] +_BASE_PLATFORMS: list[Platform] = [Platform.SENSOR] _FLEX_PLATFORMS = [Platform.EVENT, Platform.SENSOR, Platform.UPDATE] diff --git a/custom_components/opendisplay/coordinator.py b/custom_components/opendisplay/coordinator.py index b79eaa6..cf3e465 100644 --- a/custom_components/opendisplay/coordinator.py +++ b/custom_components/opendisplay/coordinator.py @@ -2,6 +2,7 @@ from dataclasses import dataclass, field import logging +import time from opendisplay import MANUFACTURER_ID, AdvertisementTracker, parse_advertisement from opendisplay.models.advertisement import ( @@ -30,6 +31,8 @@ class OpenDisplayUpdate: address: str advertisement: AdvertisementData + rssi: int | None = None + last_seen: float | None = None button_events: list[ButtonChangeEvent] = field(default_factory=list) touch_events: list[TouchChangeEvent] = field(default_factory=list) @@ -94,6 +97,8 @@ def _async_handle_bluetooth_event( self.data = OpenDisplayUpdate( address=service_info.address, advertisement=advertisement, + rssi=service_info.rssi, + last_seen=time.time(), button_events=button_events, touch_events=touch_events, ) diff --git a/custom_components/opendisplay/sensor.py b/custom_components/opendisplay/sensor.py index c1aa02c..335f0a0 100644 --- a/custom_components/opendisplay/sensor.py +++ b/custom_components/opendisplay/sensor.py @@ -2,9 +2,9 @@ from collections.abc import Callable from dataclasses import dataclass +from datetime import datetime, timezone from opendisplay import voltage_to_percent -from opendisplay.models.advertisement import AdvertisementData from opendisplay.models.enums import CapacityEstimator, PowerMode from homeassistant.components.sensor import ( @@ -15,6 +15,7 @@ ) from homeassistant.const import ( PERCENTAGE, + SIGNAL_STRENGTH_DECIBELS_MILLIWATT, EntityCategory, UnitOfElectricPotential, UnitOfTemperature, @@ -23,6 +24,7 @@ from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback from . import OpenDisplayConfigEntry +from .coordinator import OpenDisplayUpdate from .entity import OpenDisplayEntity PARALLEL_UPDATES = 0 @@ -32,7 +34,7 @@ class OpenDisplaySensorEntityDescription(SensorEntityDescription): """Describes an OpenDisplay sensor entity.""" - value_fn: Callable[[AdvertisementData], float | int | None] + value_fn: Callable[[OpenDisplayUpdate], float | int | str | datetime | None] _TEMPERATURE_DESCRIPTION = OpenDisplaySensorEntityDescription( @@ -42,7 +44,7 @@ class OpenDisplaySensorEntityDescription(SensorEntityDescription): state_class=SensorStateClass.MEASUREMENT, entity_category=EntityCategory.DIAGNOSTIC, entity_registry_enabled_default=False, - value_fn=lambda adv: adv.temperature_c, + value_fn=lambda upd: upd.advertisement.temperature_c, ) _BATTERY_POWER_MODES = {PowerMode.BATTERY, PowerMode.SOLAR} @@ -55,7 +57,31 @@ class OpenDisplaySensorEntityDescription(SensorEntityDescription): state_class=SensorStateClass.MEASUREMENT, entity_category=EntityCategory.DIAGNOSTIC, entity_registry_enabled_default=False, - value_fn=lambda adv: adv.battery_mv, + value_fn=lambda upd: upd.advertisement.battery_mv, +) + +_RSSI_DESCRIPTION = OpenDisplaySensorEntityDescription( + key="rssi", + translation_key="rssi", + device_class=SensorDeviceClass.SIGNAL_STRENGTH, + native_unit_of_measurement=SIGNAL_STRENGTH_DECIBELS_MILLIWATT, + state_class=SensorStateClass.MEASUREMENT, + entity_category=EntityCategory.DIAGNOSTIC, + entity_registry_enabled_default=False, + value_fn=lambda upd: upd.rssi, +) + +_LAST_SEEN_DESCRIPTION = OpenDisplaySensorEntityDescription( + key="last_seen", + translation_key="last_seen", + device_class=SensorDeviceClass.TIMESTAMP, + entity_category=EntityCategory.DIAGNOSTIC, + entity_registry_enabled_default=False, + value_fn=lambda upd: ( + datetime.fromtimestamp(upd.last_seen, tz=timezone.utc) + if upd.last_seen is not None + else None + ), ) @@ -67,7 +93,11 @@ async def async_setup_entry( """Set up OpenDisplay sensor entities.""" coordinator = entry.runtime_data.coordinator power_config = entry.runtime_data.device_config.power - descriptions: list[OpenDisplaySensorEntityDescription] = [_TEMPERATURE_DESCRIPTION] + descriptions: list[OpenDisplaySensorEntityDescription] = [ + _TEMPERATURE_DESCRIPTION, + _RSSI_DESCRIPTION, + _LAST_SEEN_DESCRIPTION, + ] if power_config.power_mode_enum in _BATTERY_POWER_MODES: capacity_estimator = power_config.capacity_estimator or CapacityEstimator.LI_ION @@ -79,8 +109,8 @@ async def async_setup_entry( native_unit_of_measurement=PERCENTAGE, state_class=SensorStateClass.MEASUREMENT, entity_category=EntityCategory.DIAGNOSTIC, - value_fn=lambda adv: voltage_to_percent( - adv.battery_mv, capacity_estimator + value_fn=lambda upd: voltage_to_percent( + upd.advertisement.battery_mv, capacity_estimator ), ), ] @@ -97,8 +127,8 @@ class OpenDisplaySensorEntity(OpenDisplayEntity, SensorEntity): entity_description: OpenDisplaySensorEntityDescription @property - def native_value(self) -> float | int | None: + def native_value(self) -> float | int | str | datetime | None: """Return the sensor value.""" if self.coordinator.data is None: return None - return self.entity_description.value_fn(self.coordinator.data.advertisement) + return self.entity_description.value_fn(self.coordinator.data) diff --git a/custom_components/opendisplay/strings.json b/custom_components/opendisplay/strings.json index 8b248a0..d07051b 100644 --- a/custom_components/opendisplay/strings.json +++ b/custom_components/opendisplay/strings.json @@ -79,6 +79,12 @@ "sensor": { "battery_voltage": { "name": "Battery voltage" + }, + "rssi": { + "name": "Signal strength (RSSI)" + }, + "last_seen": { + "name": "Last seen" } }, "update": { diff --git a/custom_components/opendisplay/translations/en.json b/custom_components/opendisplay/translations/en.json index 93d5cdd..65bec47 100644 --- a/custom_components/opendisplay/translations/en.json +++ b/custom_components/opendisplay/translations/en.json @@ -79,6 +79,17 @@ "sensor": { "battery_voltage": { "name": "Battery voltage" + }, + "rssi": { + "name": "Signal strength (RSSI)" + }, + "last_seen": { + "name": "Last seen" + } + }, + "update": { + "firmware": { + "name": "Firmware" } } }, @@ -98,6 +109,12 @@ "multiple_errors": { "message": "Errors occurred for one or more devices:\n{errors}" }, + "no_buzzers": { + "message": "Device `{device_id}` has no buzzer configured." + }, + "no_leds": { + "message": "Device `{device_id}` has no LEDs configured." + }, "no_targets_specified": { "message": "No target devices specified." }, @@ -173,6 +190,100 @@ "name": "Additional options" } } + }, + "activate_led": { + "name": "Activate LED", + "description": "Triggers an LED flash pattern on an OpenDisplay device.", + "fields": { + "device_id": { + "name": "Device", + "description": "The OpenDisplay device." + }, + "instance": { + "name": "LED instance", + "description": "LED instance index (0-based)." + }, + "color": { + "name": "Color", + "description": "Color index (device-specific, 0-255)." + }, + "brightness": { + "name": "Brightness", + "description": "LED brightness (1-16)." + }, + "flash_count": { + "name": "Flash count", + "description": "Number of flashes per cycle (0-15)." + }, + "loop_delay": { + "name": "Loop delay", + "description": "Delay between flashes within a cycle (0-15 units)." + }, + "inter_delay": { + "name": "Inter delay", + "description": "Delay between cycles (0-255 units)." + }, + "repeats": { + "name": "Repeats", + "description": "Number of times to repeat the pattern (0 = infinite)." + } + } + }, + "activate_buzzer": { + "name": "Activate buzzer", + "description": "Triggers a buzzer tone on an OpenDisplay device.", + "fields": { + "device_id": { + "name": "Device", + "description": "The OpenDisplay device." + }, + "instance": { + "name": "Buzzer instance", + "description": "Buzzer instance index (0-based)." + }, + "frequency_hz": { + "name": "Frequency", + "description": "Tone frequency in Hz (0 = silence, 400-12000)." + }, + "duration_ms": { + "name": "Duration", + "description": "Tone duration in milliseconds (5-1275)." + }, + "repeats": { + "name": "Repeats", + "description": "Number of times to repeat the tone (1-255)." + } + } + }, + "drawcustom": { + "description": "Draws a custom image on one or more OpenDisplay devices.", + "fields": { + "payload": { + "description": "Array of drawing elements.", + "name": "Payload" + }, + "background": { + "description": "Background fill color.", + "name": "Background color" + }, + "rotate": { + "description": "Clockwise rotation in degrees.", + "name": "Rotation" + }, + "dither": { + "description": "Dithering algorithm for color palette conversion.", + "name": "Dither mode" + }, + "refresh_type": { + "description": "Display refresh mode.", + "name": "Refresh type" + }, + "dry-run": { + "description": "Generate image without uploading to the device.", + "name": "Dry run" + } + }, + "name": "Draw custom image" } } -} \ No newline at end of file +} From 3b6f180470c7c728e044fa00e6f22b472ec678b2 Mon Sep 17 00:00:00 2001 From: gabriel Date: Mon, 25 May 2026 12:31:30 +0200 Subject: [PATCH 23/51] fix: bump py-opendisplay to 7.3.1 (90s uncompressed END ACK timeout) --- custom_components/opendisplay/manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/custom_components/opendisplay/manifest.json b/custom_components/opendisplay/manifest.json index f31c777..49aeef9 100644 --- a/custom_components/opendisplay/manifest.json +++ b/custom_components/opendisplay/manifest.json @@ -15,6 +15,6 @@ "iot_class": "local_push", "issue_tracker": "https://github.com/OpenDisplay/Home_Assistant_Integration/issues", "loggers": ["opendisplay"], - "requirements": ["py-opendisplay==7.3.0", "odl-renderer==0.5.8"], + "requirements": ["py-opendisplay==7.3.1", "odl-renderer==0.5.8"], "version": "3.0.0-beta.1" } From a26affa7a55e630819b310e9df504af44082276e Mon Sep 17 00:00:00 2001 From: gabriel Date: Mon, 25 May 2026 12:32:39 +0200 Subject: [PATCH 24/51] chore: bump version to 3.0.0-beta.2 --- custom_components/opendisplay/manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/custom_components/opendisplay/manifest.json b/custom_components/opendisplay/manifest.json index 49aeef9..c2b9e60 100644 --- a/custom_components/opendisplay/manifest.json +++ b/custom_components/opendisplay/manifest.json @@ -16,5 +16,5 @@ "issue_tracker": "https://github.com/OpenDisplay/Home_Assistant_Integration/issues", "loggers": ["opendisplay"], "requirements": ["py-opendisplay==7.3.1", "odl-renderer==0.5.8"], - "version": "3.0.0-beta.1" + "version": "3.0.0-beta.2" } From 7bf7026173f54558756812cf6ae2843592486fff Mon Sep 17 00:00:00 2001 From: gabriel Date: Mon, 25 May 2026 16:52:15 +0200 Subject: [PATCH 25/51] feat: redesign activate_led service with 3 RGB color steps MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Replace single flat color/flash_count/loop_delay/inter_delay fields with three step groups (color1-3, flash_count1-3, loop_delay1-3, inter_delay1-3); steps 2 and 3 are skipped when flash_count is 0 - Use RGB color picker selector; voluptuous converts [R,G,B] to the firmware's packed 3R-3G-2B byte at validation time - Expose loop_delay and inter_delay in milliseconds (×100ms units) with slider selectors; voluptuous converts to firmware units - Brightness and repeats now use sliders --- custom_components/opendisplay/services.py | 65 +++++++++-- custom_components/opendisplay/services.yaml | 105 ++++++++++++++---- custom_components/opendisplay/strings.json | 64 ++++++++--- .../opendisplay/translations/en.json | 64 ++++++++--- 4 files changed, 236 insertions(+), 62 deletions(-) diff --git a/custom_components/opendisplay/services.py b/custom_components/opendisplay/services.py index f451f74..98acfc8 100644 --- a/custom_components/opendisplay/services.py +++ b/custom_components/opendisplay/services.py @@ -18,12 +18,13 @@ AuthenticationRequiredError, DitherMode, FitMode, + LedFlashConfig, + LedFlashStep, + BuzzerActivateConfig, OpenDisplayDevice, OpenDisplayError, RefreshMode, Rotation, - LedFlashConfig, - BuzzerActivateConfig, ) from PIL import Image as PILImage, ImageOps import voluptuous as vol @@ -100,16 +101,43 @@ def validate(value: str) -> IntEnum: ) +def _rgb_to_led_color(value: list[int]) -> int: + """Convert [R, G, B] (0-255 each) to packed 8-bit LED color byte (3R 3G 2B).""" + r, g, b = value + return ((round(r * 7 / 255)) << 5) | ((round(g * 7 / 255)) << 2) | (round(b * 3 / 255)) + + +def _ms_to_loop_delay(value: int) -> int: + """Convert milliseconds to 4-bit loop delay units (×100 ms each, 0–1500 ms).""" + return max(0, min(15, round(value / 100))) + + +def _ms_to_inter_delay(value: int) -> int: + """Convert milliseconds to 8-bit inter-delay units (×100 ms each, 0–25500 ms).""" + return max(0, min(255, round(value / 100))) + + +def _led_step_fields(n: int, *, color_default: list[int], flash_count_default: int) -> dict: + """Return the voluptuous field definitions for one LED step.""" + return { + vol.Optional(f"color{n}", default=color_default): _rgb_to_led_color, + vol.Optional(f"flash_count{n}", default=flash_count_default): vol.All( + vol.Coerce(int), vol.Range(min=0, max=15) + ), + vol.Optional(f"loop_delay{n}", default=0): vol.All(vol.Coerce(int), _ms_to_loop_delay), + vol.Optional(f"inter_delay{n}", default=0): vol.All(vol.Coerce(int), _ms_to_inter_delay), + } + + SCHEMA_ACTIVATE_LED = vol.Schema( { vol.Required(ATTR_DEVICE_ID): cv.string, vol.Optional("instance", default=0): vol.All(vol.Coerce(int), vol.Range(min=0, max=255)), - vol.Optional("color", default=0): vol.All(vol.Coerce(int), vol.Range(min=0, max=255)), vol.Optional("brightness", default=8): vol.All(vol.Coerce(int), vol.Range(min=1, max=16)), - vol.Optional("flash_count", default=1): vol.All(vol.Coerce(int), vol.Range(min=0, max=15)), - vol.Optional("loop_delay", default=0): vol.All(vol.Coerce(int), vol.Range(min=0, max=15)), - vol.Optional("inter_delay", default=0): vol.All(vol.Coerce(int), vol.Range(min=0, max=255)), vol.Optional("repeats", default=1): vol.All(vol.Coerce(int), vol.Range(min=0, max=255)), + **_led_step_fields(1, color_default=[255, 0, 0], flash_count_default=1), + **_led_step_fields(2, color_default=[0, 255, 0], flash_count_default=0), + **_led_step_fields(3, color_default=[0, 0, 255], flash_count_default=0), } ) @@ -508,12 +536,27 @@ async def _async_activate_led(call: ServiceCall) -> None: translation_placeholders={"device_id": call.data[ATTR_DEVICE_ID]}, ) repeats: int = call.data["repeats"] - flash_config = LedFlashConfig.single( - color=call.data["color"], + flash_config = LedFlashConfig( + mode=1, brightness=call.data["brightness"], - flash_count=call.data["flash_count"], - loop_delay_units=call.data["loop_delay"], - inter_delay_units=call.data["inter_delay"], + step1=LedFlashStep( + color=call.data["color1"], + flash_count=call.data["flash_count1"], + loop_delay_units=call.data["loop_delay1"], + inter_delay_units=call.data["inter_delay1"], + ), + step2=LedFlashStep( + color=call.data["color2"], + flash_count=call.data["flash_count2"], + loop_delay_units=call.data["loop_delay2"], + inter_delay_units=call.data["inter_delay2"], + ), + step3=LedFlashStep( + color=call.data["color3"], + flash_count=call.data["flash_count3"], + loop_delay_units=call.data["loop_delay3"], + inter_delay_units=call.data["inter_delay3"], + ), group_repeats=None if repeats == 0 else repeats, ) instance: int = call.data["instance"] diff --git a/custom_components/opendisplay/services.yaml b/custom_components/opendisplay/services.yaml index 35340e7..0e3fd05 100644 --- a/custom_components/opendisplay/services.yaml +++ b/custom_components/opendisplay/services.yaml @@ -84,14 +84,6 @@ activate_led: min: 0 max: 255 mode: box - color: - required: false - default: 0 - selector: - number: - min: 0 - max: 255 - mode: box brightness: required: false default: 8 @@ -100,38 +92,113 @@ activate_led: min: 1 max: 16 mode: slider - flash_count: + repeats: + required: false + default: 1 + selector: + number: + min: 0 + max: 255 + mode: slider + color1: + required: false + default: [255, 0, 0] + selector: + color_rgb: + flash_count1: required: false default: 1 selector: number: min: 0 max: 15 - mode: box - loop_delay: + mode: slider + loop_delay1: + required: false + default: 0 + selector: + number: + min: 0 + max: 1500 + step: 100 + unit_of_measurement: ms + mode: slider + inter_delay1: + required: false + default: 0 + selector: + number: + min: 0 + max: 25500 + step: 100 + unit_of_measurement: ms + mode: slider + color2: + required: false + default: [0, 255, 0] + selector: + color_rgb: + flash_count2: required: false default: 0 selector: number: min: 0 max: 15 - mode: box - inter_delay: + mode: slider + loop_delay2: required: false default: 0 selector: number: min: 0 - max: 255 - mode: box - repeats: + max: 1500 + step: 100 + unit_of_measurement: ms + mode: slider + inter_delay2: required: false - default: 1 + default: 0 selector: number: min: 0 - max: 255 - mode: box + max: 25500 + step: 100 + unit_of_measurement: ms + mode: slider + color3: + required: false + default: [0, 0, 255] + selector: + color_rgb: + flash_count3: + required: false + default: 0 + selector: + number: + min: 0 + max: 15 + mode: slider + loop_delay3: + required: false + default: 0 + selector: + number: + min: 0 + max: 1500 + step: 100 + unit_of_measurement: ms + mode: slider + inter_delay3: + required: false + default: 0 + selector: + number: + min: 0 + max: 25500 + step: 100 + unit_of_measurement: ms + mode: slider activate_buzzer: fields: diff --git a/custom_components/opendisplay/strings.json b/custom_components/opendisplay/strings.json index d07051b..96f67f8 100644 --- a/custom_components/opendisplay/strings.json +++ b/custom_components/opendisplay/strings.json @@ -203,29 +203,61 @@ "name": "LED instance", "description": "LED instance index (0-based)." }, - "color": { - "name": "Color", - "description": "Color index (device-specific, 0-255)." - }, "brightness": { "name": "Brightness", "description": "LED brightness (1-16)." }, - "flash_count": { - "name": "Flash count", - "description": "Number of flashes per cycle (0-15)." + "repeats": { + "name": "Repeats", + "description": "Number of times to repeat the full pattern (0 = infinite)." }, - "loop_delay": { - "name": "Loop delay", - "description": "Delay between flashes within a cycle (0-15 units)." + "color1": { + "name": "Color 1", + "description": "First step color." }, - "inter_delay": { - "name": "Inter delay", - "description": "Delay between cycles (0-255 units)." + "flash_count1": { + "name": "Flash count 1", + "description": "Number of flashes for the first step (0 skips this step)." }, - "repeats": { - "name": "Repeats", - "description": "Number of times to repeat the pattern (0 = infinite)." + "loop_delay1": { + "name": "Flash delay 1", + "description": "Delay between flashes in the first step." + }, + "inter_delay1": { + "name": "Step delay 1", + "description": "Delay after the first step before moving to the next." + }, + "color2": { + "name": "Color 2", + "description": "Second step color (omit or set flash count to 0 to skip)." + }, + "flash_count2": { + "name": "Flash count 2", + "description": "Number of flashes for the second step (0 skips this step)." + }, + "loop_delay2": { + "name": "Flash delay 2", + "description": "Delay between flashes in the second step." + }, + "inter_delay2": { + "name": "Step delay 2", + "description": "Delay after the second step before moving to the next." + }, + "color3": { + "name": "Color 3", + "description": "Third step color (omit or set flash count to 0 to skip)." + }, + "flash_count3": { + "name": "Flash count 3", + "description": "Number of flashes for the third step (0 skips this step)." + }, + "loop_delay3": { + "name": "Flash delay 3", + "description": "Delay between flashes in the third step." + }, + "inter_delay3": { + "name": "Step delay 3", + "description": "Delay after the third step before repeating." } } }, diff --git a/custom_components/opendisplay/translations/en.json b/custom_components/opendisplay/translations/en.json index 65bec47..37dc6cb 100644 --- a/custom_components/opendisplay/translations/en.json +++ b/custom_components/opendisplay/translations/en.json @@ -203,29 +203,61 @@ "name": "LED instance", "description": "LED instance index (0-based)." }, - "color": { - "name": "Color", - "description": "Color index (device-specific, 0-255)." - }, "brightness": { "name": "Brightness", "description": "LED brightness (1-16)." }, - "flash_count": { - "name": "Flash count", - "description": "Number of flashes per cycle (0-15)." + "repeats": { + "name": "Repeats", + "description": "Number of times to repeat the full pattern (0 = infinite)." }, - "loop_delay": { - "name": "Loop delay", - "description": "Delay between flashes within a cycle (0-15 units)." + "color1": { + "name": "Color 1", + "description": "First step color." }, - "inter_delay": { - "name": "Inter delay", - "description": "Delay between cycles (0-255 units)." + "flash_count1": { + "name": "Flash count 1", + "description": "Number of flashes for the first step (0 skips this step)." }, - "repeats": { - "name": "Repeats", - "description": "Number of times to repeat the pattern (0 = infinite)." + "loop_delay1": { + "name": "Flash delay 1", + "description": "Delay between flashes in the first step." + }, + "inter_delay1": { + "name": "Step delay 1", + "description": "Delay after the first step before moving to the next." + }, + "color2": { + "name": "Color 2", + "description": "Second step color (omit or set flash count to 0 to skip)." + }, + "flash_count2": { + "name": "Flash count 2", + "description": "Number of flashes for the second step (0 skips this step)." + }, + "loop_delay2": { + "name": "Flash delay 2", + "description": "Delay between flashes in the second step." + }, + "inter_delay2": { + "name": "Step delay 2", + "description": "Delay after the second step before moving to the next." + }, + "color3": { + "name": "Color 3", + "description": "Third step color (omit or set flash count to 0 to skip)." + }, + "flash_count3": { + "name": "Flash count 3", + "description": "Number of flashes for the third step (0 skips this step)." + }, + "loop_delay3": { + "name": "Flash delay 3", + "description": "Delay between flashes in the third step." + }, + "inter_delay3": { + "name": "Step delay 3", + "description": "Delay after the third step before repeating." } } }, From 975ddcb71396066146b805cf6cce94e29459a1be Mon Sep 17 00:00:00 2001 From: gabriel Date: Mon, 25 May 2026 17:14:55 +0200 Subject: [PATCH 26/51] chore: bump py-opendisplay to 7.3.2 --- custom_components/opendisplay/manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/custom_components/opendisplay/manifest.json b/custom_components/opendisplay/manifest.json index c2b9e60..4b78ca7 100644 --- a/custom_components/opendisplay/manifest.json +++ b/custom_components/opendisplay/manifest.json @@ -15,6 +15,6 @@ "iot_class": "local_push", "issue_tracker": "https://github.com/OpenDisplay/Home_Assistant_Integration/issues", "loggers": ["opendisplay"], - "requirements": ["py-opendisplay==7.3.1", "odl-renderer==0.5.8"], + "requirements": ["py-opendisplay==7.3.2", "odl-renderer==0.5.8"], "version": "3.0.0-beta.2" } From c55ceb4b9b1fedac740d8c73e5feaabd9db64532 Mon Sep 17 00:00:00 2001 From: gabriel Date: Mon, 25 May 2026 17:46:41 +0200 Subject: [PATCH 27/51] chore: bump odl-renderer to 0.5.9 --- custom_components/opendisplay/manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/custom_components/opendisplay/manifest.json b/custom_components/opendisplay/manifest.json index 4b78ca7..0be0854 100644 --- a/custom_components/opendisplay/manifest.json +++ b/custom_components/opendisplay/manifest.json @@ -15,6 +15,6 @@ "iot_class": "local_push", "issue_tracker": "https://github.com/OpenDisplay/Home_Assistant_Integration/issues", "loggers": ["opendisplay"], - "requirements": ["py-opendisplay==7.3.2", "odl-renderer==0.5.8"], + "requirements": ["py-opendisplay==7.3.2", "odl-renderer==0.5.9"], "version": "3.0.0-beta.2" } From e1b5c9ec097e025d8bb01af8e0e548d1205ec497 Mon Sep 17 00:00:00 2001 From: gabriel Date: Tue, 26 May 2026 13:20:10 +0200 Subject: [PATCH 28/51] feat: add image entity showing last rendered display content Adds a Display content image entity that updates via dispatcher signal after every successful upload_image or drawcustom call (including dry-run). --- custom_components/opendisplay/__init__.py | 4 +- custom_components/opendisplay/const.py | 1 + custom_components/opendisplay/image.py | 63 +++++++++++++++++++ custom_components/opendisplay/services.py | 14 ++++- custom_components/opendisplay/strings.json | 5 ++ .../opendisplay/translations/en.json | 5 ++ 6 files changed, 89 insertions(+), 3 deletions(-) create mode 100644 custom_components/opendisplay/image.py diff --git a/custom_components/opendisplay/__init__.py b/custom_components/opendisplay/__init__.py index 301ef38..7b6a6d5 100644 --- a/custom_components/opendisplay/__init__.py +++ b/custom_components/opendisplay/__init__.py @@ -33,8 +33,8 @@ CONFIG_SCHEMA = cv.config_entry_only_config_schema(DOMAIN) -_BASE_PLATFORMS: list[Platform] = [Platform.SENSOR] -_FLEX_PLATFORMS = [Platform.EVENT, Platform.SENSOR, Platform.UPDATE] +_BASE_PLATFORMS: list[Platform] = [Platform.IMAGE, Platform.SENSOR] +_FLEX_PLATFORMS = [Platform.EVENT, Platform.IMAGE, Platform.SENSOR, Platform.UPDATE] @dataclass diff --git a/custom_components/opendisplay/const.py b/custom_components/opendisplay/const.py index 664f7e8..779b74c 100644 --- a/custom_components/opendisplay/const.py +++ b/custom_components/opendisplay/const.py @@ -2,3 +2,4 @@ DOMAIN = "opendisplay" CONF_ENCRYPTION_KEY = "encryption_key" +SIGNAL_IMAGE_UPDATED = f"{DOMAIN}_image_updated" diff --git a/custom_components/opendisplay/image.py b/custom_components/opendisplay/image.py new file mode 100644 index 0000000..3d32703 --- /dev/null +++ b/custom_components/opendisplay/image.py @@ -0,0 +1,63 @@ +"""Image entity for OpenDisplay devices.""" + +from homeassistant.components.image import ImageEntity +from homeassistant.core import HomeAssistant, callback +from homeassistant.helpers.device_registry import CONNECTION_BLUETOOTH, DeviceInfo +from homeassistant.helpers.dispatcher import async_dispatcher_connect +from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback +import homeassistant.util.dt as dt_util + +from . import OpenDisplayConfigEntry +from .const import SIGNAL_IMAGE_UPDATED +from .coordinator import OpenDisplayCoordinator + +PARALLEL_UPDATES = 0 + + +async def async_setup_entry( + hass: HomeAssistant, + entry: OpenDisplayConfigEntry, + async_add_entities: AddConfigEntryEntitiesCallback, +) -> None: + """Set up the OpenDisplay image entity.""" + async_add_entities([OpenDisplayImageEntity(hass, entry.runtime_data.coordinator)]) + + +class OpenDisplayImageEntity(ImageEntity): + """Shows the last image sent to an OpenDisplay device.""" + + _attr_has_entity_name = True + _attr_translation_key = "content" + _attr_content_type = "image/jpeg" + + def __init__(self, hass: HomeAssistant, coordinator: OpenDisplayCoordinator) -> None: + """Initialize the image entity.""" + super().__init__(hass) + self._coordinator = coordinator + self._attr_unique_id = f"{coordinator.address}-display_content" + self._attr_device_info = DeviceInfo( + connections={(CONNECTION_BLUETOOTH, coordinator.address)}, + ) + self._image_bytes: bytes | None = None + + async def async_image(self) -> bytes | None: + """Return the last uploaded image bytes.""" + return self._image_bytes + + async def async_added_to_hass(self) -> None: + """Subscribe to image update signals.""" + await super().async_added_to_hass() + self.async_on_remove( + async_dispatcher_connect( + self.hass, + f"{SIGNAL_IMAGE_UPDATED}_{self._coordinator.address}", + self._handle_image_update, + ) + ) + + @callback + def _handle_image_update(self, image_bytes: bytes) -> None: + """Handle a new image from a completed upload.""" + self._image_bytes = image_bytes + self._attr_image_last_updated = dt_util.utcnow() + self.async_write_ha_state() diff --git a/custom_components/opendisplay/services.py b/custom_components/opendisplay/services.py index 98acfc8..665dc3e 100644 --- a/custom_components/opendisplay/services.py +++ b/custom_components/opendisplay/services.py @@ -39,13 +39,14 @@ from homeassistant.helpers import config_validation as cv, device_registry as dr from homeassistant.helpers.aiohttp_client import async_get_clientsession from homeassistant.helpers.device_registry import CONNECTION_BLUETOOTH +from homeassistant.helpers.dispatcher import async_dispatcher_send from homeassistant.helpers.network import get_url from homeassistant.helpers.selector import MediaSelector, MediaSelectorConfig if TYPE_CHECKING: from . import OpenDisplayConfigEntry -from .const import CONF_ENCRYPTION_KEY, DOMAIN +from .const import CONF_ENCRYPTION_KEY, DOMAIN, SIGNAL_IMAGE_UPDATED ATTR_IMAGE = "image" ATTR_ROTATION = "rotation" @@ -188,6 +189,13 @@ def _get_entry_for_device(call: ServiceCall) -> OpenDisplayConfigEntry: return entry +def _pil_to_jpeg(img: PILImage.Image) -> bytes: + """Encode a PIL image as JPEG bytes.""" + buf = io.BytesIO() + img.convert("RGB").save(buf, format="JPEG", quality=90) + return buf.getvalue() + + def _load_image(path: str) -> PILImage.Image: """Load an image from disk and apply EXIF orientation.""" image = PILImage.open(path) @@ -296,6 +304,8 @@ async def _upload(device: OpenDisplayDevice) -> None: rotate=rotate, ) await _async_connect_and_run(hass, entry, _upload) + jpeg = await hass.async_add_executor_job(_pil_to_jpeg, img) + async_dispatcher_send(hass, f"{SIGNAL_IMAGE_UPDATED}_{entry.unique_id}", jpeg) async def _async_upload_image(call: ServiceCall) -> None: @@ -512,6 +522,8 @@ async def _drawcustom_for_device( if call.data["dry-run"]: _LOGGER.info("Drawcustom dry run for device %s", device_id) + jpeg = await hass.async_add_executor_job(_pil_to_jpeg, img) + async_dispatcher_send(hass, f"{SIGNAL_IMAGE_UPDATED}_{entry.unique_id}", jpeg) return dither_mode: DitherMode = call.data["dither"] diff --git a/custom_components/opendisplay/strings.json b/custom_components/opendisplay/strings.json index 96f67f8..0fc5e1e 100644 --- a/custom_components/opendisplay/strings.json +++ b/custom_components/opendisplay/strings.json @@ -51,6 +51,11 @@ } }, "entity": { + "image": { + "content": { + "name": "Display content" + } + }, "event": { "button": { "name": "Button {number}", diff --git a/custom_components/opendisplay/translations/en.json b/custom_components/opendisplay/translations/en.json index 37dc6cb..2f4e853 100644 --- a/custom_components/opendisplay/translations/en.json +++ b/custom_components/opendisplay/translations/en.json @@ -51,6 +51,11 @@ } }, "entity": { + "image": { + "content": { + "name": "Display content" + } + }, "event": { "button": { "name": "Button {number}", From 5b318a9cd38662e9f13a1ea0734f4a7de0103780 Mon Sep 17 00:00:00 2001 From: gabriel Date: Tue, 26 May 2026 13:25:23 +0200 Subject: [PATCH 29/51] chore: bump version to 3.0.0-beta.3 --- custom_components/opendisplay/manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/custom_components/opendisplay/manifest.json b/custom_components/opendisplay/manifest.json index 0be0854..da8131d 100644 --- a/custom_components/opendisplay/manifest.json +++ b/custom_components/opendisplay/manifest.json @@ -16,5 +16,5 @@ "issue_tracker": "https://github.com/OpenDisplay/Home_Assistant_Integration/issues", "loggers": ["opendisplay"], "requirements": ["py-opendisplay==7.3.2", "odl-renderer==0.5.9"], - "version": "3.0.0-beta.2" + "version": "3.0.0-beta.3" } From 1176aed0416f16510e95302ed7aadf8a343cf524 Mon Sep 17 00:00:00 2001 From: David Bishop Date: Sat, 30 May 2026 20:00:02 -0700 Subject: [PATCH 30/51] chore: bump py-opendisplay to 7.4.1 --- custom_components/opendisplay/manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/custom_components/opendisplay/manifest.json b/custom_components/opendisplay/manifest.json index da8131d..1985a89 100644 --- a/custom_components/opendisplay/manifest.json +++ b/custom_components/opendisplay/manifest.json @@ -15,6 +15,6 @@ "iot_class": "local_push", "issue_tracker": "https://github.com/OpenDisplay/Home_Assistant_Integration/issues", "loggers": ["opendisplay"], - "requirements": ["py-opendisplay==7.3.2", "odl-renderer==0.5.9"], + "requirements": ["py-opendisplay==7.4.1", "odl-renderer==0.5.9"], "version": "3.0.0-beta.3" } From 6527ba73f0778a4e58ec45c6ff2712ecf3826b4e Mon Sep 17 00:00:00 2001 From: gabriel Date: Thu, 28 May 2026 22:47:28 +0200 Subject: [PATCH 31/51] chore: bump py-opendisplay --- custom_components/opendisplay/manifest.json | 2 +- custom_components/opendisplay/update.py | 184 ++++++++++++++++++-- 2 files changed, 166 insertions(+), 20 deletions(-) diff --git a/custom_components/opendisplay/manifest.json b/custom_components/opendisplay/manifest.json index 1985a89..181206a 100644 --- a/custom_components/opendisplay/manifest.json +++ b/custom_components/opendisplay/manifest.json @@ -15,6 +15,6 @@ "iot_class": "local_push", "issue_tracker": "https://github.com/OpenDisplay/Home_Assistant_Integration/issues", "loggers": ["opendisplay"], - "requirements": ["py-opendisplay==7.4.1", "odl-renderer==0.5.9"], + "requirements": ["py-opendisplay[nrf-ota]==7.6.0", "odl-renderer==0.5.9"], "version": "3.0.0-beta.3" } diff --git a/custom_components/opendisplay/update.py b/custom_components/opendisplay/update.py index bab0568..68c06e7 100644 --- a/custom_components/opendisplay/update.py +++ b/custom_components/opendisplay/update.py @@ -3,23 +3,56 @@ from __future__ import annotations import logging +from datetime import timedelta +from typing import Any import aiohttp -from opendisplay.models.firmware import firmware_release_repo - -from homeassistant.components.update import UpdateDeviceClass, UpdateEntity, UpdateEntityDescription +from opendisplay.device import OpenDisplayDevice +from opendisplay.exceptions import OTAError +from opendisplay.models.enums import ICType +from opendisplay.models.firmware import firmware_ota_asset, firmware_release_repo +from opendisplay.ota import find_nrf_dfu_device, perform_nrf_dfu + +from homeassistant.components.bluetooth import async_ble_device_from_address +from homeassistant.components.update import ( + UpdateDeviceClass, + UpdateEntity, + UpdateEntityDescription, + UpdateEntityFeature, +) from homeassistant.core import HomeAssistant +from homeassistant.exceptions import HomeAssistantError from homeassistant.helpers.aiohttp_client import async_get_clientsession from homeassistant.helpers.entity_platform import AddConfigEntryEntitiesCallback -from . import OpenDisplayConfigEntry +from . import OpenDisplayConfigEntry, _get_encryption_key from .entity import OpenDisplayEntity _LOGGER = logging.getLogger(__name__) PARALLEL_UPDATES = 1 +# GitHub unauthenticated API allows 60 requests/hour; 6h interval = 4 req/day per device +SCAN_INTERVAL = timedelta(hours=6) _GITHUB_LATEST = "https://api.github.com/repos/{repo}/releases/latest" +_GITHUB_RELEASE = "https://api.github.com/repos/{repo}/releases/tags/{tag}" +_GITHUB_HEADERS = {"Accept": "application/vnd.github+json"} + +_NRF_IC_TYPES = {ICType.NRF52840, ICType.NRF52811} + + +def _format_firmware_version(major: int, minor: int) -> str: + """Format firmware version to match GitHub tag convention. + + The 1.x firmware era uses single-digit minor tags (1.0–1.9 on GitHub), + but the firmware byte may store minor*10 (e.g. minor=60 → "1.6"). + Dividing by 10 aligns the installed string with GitHub tag_names so + AwesomeVersion comparisons work correctly. + """ + if major >= 1 and minor >= 10: + minor = minor // 10 + return f"{major}.{minor}" + _FIRMWARE_DESCRIPTION = UpdateEntityDescription( key="firmware", @@ -49,20 +82,21 @@ def __init__(self, coordinator, entry: OpenDisplayConfigEntry) -> None: """Initialize the entity.""" super().__init__(coordinator, _FIRMWARE_DESCRIPTION) fw = entry.runtime_data.firmware - self._attr_installed_version = f"{fw['major']}.{fw['minor']}" - self._firmware_repo = firmware_release_repo( - entry.runtime_data.device_config.system.ic_type - ) - - @property - def installed_version(self) -> str | None: - """Return the installed firmware version.""" - return self._attr_installed_version - - @property - def latest_version(self) -> str | None: - """Return the latest available firmware version.""" - return self._attr_latest_version + self._attr_installed_version = _format_firmware_version(fw["major"], fw["minor"]) + ic_type = entry.runtime_data.device_config.system.ic_type + self._ic_type = ic_type + self._firmware_repo = firmware_release_repo(ic_type) + self._ble_address: str = entry.unique_id or "" + self._entry = entry + + if ic_type in _NRF_IC_TYPES: + self._attr_supported_features = ( + UpdateEntityFeature.INSTALL + | UpdateEntityFeature.PROGRESS + | UpdateEntityFeature.RELEASE_NOTES + ) + else: + self._attr_supported_features = UpdateEntityFeature.RELEASE_NOTES @property def release_url(self) -> str | None: @@ -71,6 +105,10 @@ def release_url(self) -> str | None: return f"https://github.com/{self._firmware_repo}/releases/tag/{self._attr_latest_version}" return None + async def async_release_notes(self) -> str | None: + """Return the GitHub release body for the latest version.""" + return self._attr_release_notes + async def async_added_to_hass(self) -> None: """Fetch the latest version immediately on entity load.""" await super().async_added_to_hass() @@ -85,10 +123,118 @@ async def async_update(self) -> None: session = async_get_clientsession(self.hass) async with session.get( _GITHUB_LATEST.format(repo=self._firmware_repo), - headers={"Accept": "application/vnd.github+json"}, + headers=_GITHUB_HEADERS, ) as resp: resp.raise_for_status() data = await resp.json() self._attr_latest_version = data.get("tag_name") + self._attr_release_notes = data.get("body") or None + except aiohttp.ClientResponseError as err: + if err.status in (403, 429): + _LOGGER.warning("GitHub API rate limited; latest firmware version unchanged") + else: + _LOGGER.debug("Failed to fetch latest firmware version: %s", err) except aiohttp.ClientError as err: _LOGGER.debug("Failed to fetch latest firmware version: %s", err) + + async def async_install(self, version: str | None, backup: bool, **kwargs: Any) -> None: + """Download and install a firmware update over BLE.""" + tag = version or self._attr_latest_version + if not tag: + raise HomeAssistantError("No firmware version available to install") + + asset_name = firmware_ota_asset(self._ic_type, tag) + if asset_name is None: + raise HomeAssistantError( + f"No BLE OTA asset available for IC type {self._ic_type}" + ) + + self._attr_in_progress = True + self.async_write_ha_state() + + last_pct: list[int] = [-1] + + def _on_progress(pct: float) -> None: + new_pct = int(pct) + if new_pct != last_pct[0]: + last_pct[0] = new_pct + self._attr_in_progress = new_pct + self.async_write_ha_state() + + def _on_log(msg: str) -> None: + _LOGGER.debug("OTA: %s", msg) + + try: + firmware_bytes = await self._download_asset(tag, asset_name) + + ble_device = async_ble_device_from_address( + self.hass, self._ble_address, connectable=True + ) + if ble_device is None: + raise HomeAssistantError( + "Device not reachable over Bluetooth; bring it within range and retry" + ) + + _on_log("Connecting to trigger DFU bootloader…") + async with OpenDisplayDevice( + mac_address=self._ble_address, + ble_device=ble_device, + encryption_key=_get_encryption_key(self._entry), + ) as device: + await device.trigger_dfu_bootloader() + + _on_log("Trigger sent — waiting for DFU device to appear (up to 30 s)…") + dfu_device = await find_nrf_dfu_device(self._ble_address) + if dfu_device is None: + raise HomeAssistantError( + "DFU device not found within 30 s after bootloader trigger. " + "Ensure the device is within BLE range and try again." + ) + _on_log(f"Found DFU device at {dfu_device.address}") + + await perform_nrf_dfu( + firmware_bytes, + dfu_device, + on_progress=_on_progress, + on_log=_on_log, + ) + + self._attr_installed_version = tag + _LOGGER.info("Firmware updated to %s", tag) + + except OTAError as err: + raise HomeAssistantError(f"Firmware update failed: {err}") from err + finally: + self._attr_in_progress = False + self.async_write_ha_state() + + async def _download_asset(self, tag: str, asset_name: str) -> bytes: + """Fetch the named asset from a GitHub release.""" + session = async_get_clientsession(self.hass) + try: + async with session.get( + _GITHUB_RELEASE.format(repo=self._firmware_repo, tag=tag), + headers=_GITHUB_HEADERS, + ) as resp: + resp.raise_for_status() + release = await resp.json() + except aiohttp.ClientError as err: + raise HomeAssistantError(f"Could not fetch release metadata: {err}") from err + + for asset in release.get("assets", []): + if asset["name"] == asset_name: + download_url = asset["browser_download_url"] + break + else: + raise HomeAssistantError( + f"Asset '{asset_name}' not found in release {tag}; " + f"available: {[a['name'] for a in release.get('assets', [])]}" + ) + + _LOGGER.debug("Downloading %s from %s", asset_name, download_url) + try: + async with session.get(download_url) as resp: + resp.raise_for_status() + return await resp.read() + except aiohttp.ClientError as err: + raise HomeAssistantError(f"Firmware download failed: {err}") from err From 51f6fbd3f6e624944c7122071f8e29a2539b5c67 Mon Sep 17 00:00:00 2001 From: gabriel Date: Mon, 1 Jun 2026 20:05:53 +0200 Subject: [PATCH 32/51] fix: correct except-tuple syntax for auth errors in config flow `except AuthenticationFailedError, AuthenticationRequiredError:` is invalid Python 3 syntax; use `except (..., ...):` so a wrong/missing encryption key surfaces as invalid_auth instead of erroring out. --- custom_components/opendisplay/config_flow.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/custom_components/opendisplay/config_flow.py b/custom_components/opendisplay/config_flow.py index bcd93e4..8715107 100644 --- a/custom_components/opendisplay/config_flow.py +++ b/custom_components/opendisplay/config_flow.py @@ -151,7 +151,7 @@ async def _async_try_connection( """Test connection, populate errors, and return True on success.""" try: await self._async_test_connection(address, encryption_key) - except AuthenticationFailedError, AuthenticationRequiredError: + except (AuthenticationFailedError, AuthenticationRequiredError): errors[CONF_ENCRYPTION_KEY] = "invalid_auth" except OpenDisplayError: errors["base"] = "cannot_connect" From 49c44082affc62ec38d9ae67eb9198b563e29032 Mon Sep 17 00:00:00 2001 From: gabriel Date: Mon, 1 Jun 2026 20:06:05 +0200 Subject: [PATCH 33/51] feat: implement BLE OTA firmware install (nRF + Silabs, proxy-safe) async_install downloads the firmware asset and flashes over BLE: - nRF52: trigger DFU, find the MAC+1 DFU device, perform_nrf_dfu. - EFR32BG22: clear the proxy GATT cache, trigger the AppLoader, then perform_silabs_ota; tolerate the device already being in the AppLoader (flash directly) so an interrupted OTA can be retried/recovered from HA. - Wrap OTAError/BLEConnectionError as HomeAssistantError for clean UI errors. Note: depends on OpenDisplayDevice.clear_gatt_cache + BLEConnectionError from the in-progress py-opendisplay; the manifest requirement pin is intentionally left for the py-opendisplay release (kept as a local git-pin for testing). --- custom_components/opendisplay/update.py | 98 ++++++++++++++++++------- 1 file changed, 72 insertions(+), 26 deletions(-) diff --git a/custom_components/opendisplay/update.py b/custom_components/opendisplay/update.py index 68c06e7..af31652 100644 --- a/custom_components/opendisplay/update.py +++ b/custom_components/opendisplay/update.py @@ -8,10 +8,10 @@ import aiohttp from opendisplay.device import OpenDisplayDevice -from opendisplay.exceptions import OTAError +from opendisplay.exceptions import BLEConnectionError, OTAError from opendisplay.models.enums import ICType from opendisplay.models.firmware import firmware_ota_asset, firmware_release_repo -from opendisplay.ota import find_nrf_dfu_device, perform_nrf_dfu +from opendisplay.ota import find_nrf_dfu_device, perform_nrf_dfu, perform_silabs_ota from homeassistant.components.bluetooth import async_ble_device_from_address from homeassistant.components.update import ( @@ -39,6 +39,7 @@ _GITHUB_HEADERS = {"Accept": "application/vnd.github+json"} _NRF_IC_TYPES = {ICType.NRF52840, ICType.NRF52811} +_OTA_SUPPORTED_IC_TYPES = {ICType.NRF52840, ICType.NRF52811, ICType.EFR32BG22} def _format_firmware_version(major: int, minor: int) -> str: @@ -89,7 +90,7 @@ def __init__(self, coordinator, entry: OpenDisplayConfigEntry) -> None: self._ble_address: str = entry.unique_id or "" self._entry = entry - if ic_type in _NRF_IC_TYPES: + if ic_type in _OTA_SUPPORTED_IC_TYPES: self._attr_supported_features = ( UpdateEntityFeature.INSTALL | UpdateEntityFeature.PROGRESS @@ -175,34 +176,79 @@ def _on_log(msg: str) -> None: "Device not reachable over Bluetooth; bring it within range and retry" ) - _on_log("Connecting to trigger DFU bootloader…") - async with OpenDisplayDevice( - mac_address=self._ble_address, - ble_device=ble_device, - encryption_key=_get_encryption_key(self._entry), - ) as device: - await device.trigger_dfu_bootloader() - - _on_log("Trigger sent — waiting for DFU device to appear (up to 30 s)…") - dfu_device = await find_nrf_dfu_device(self._ble_address) - if dfu_device is None: - raise HomeAssistantError( - "DFU device not found within 30 s after bootloader trigger. " - "Ensure the device is within BLE range and try again." + if self._ic_type in _NRF_IC_TYPES: + _on_log("Connecting to trigger DFU bootloader…") + async with OpenDisplayDevice( + mac_address=self._ble_address, + ble_device=ble_device, + encryption_key=_get_encryption_key(self._entry), + ) as device: + await device.trigger_dfu_bootloader() + + _on_log("Trigger sent — waiting for DFU device to appear (up to 30 s)…") + dfu_device = await find_nrf_dfu_device(self._ble_address) + if dfu_device is None: + raise HomeAssistantError( + "DFU device not found within 30 s after bootloader trigger. " + "Ensure the device is within BLE range and try again." + ) + _on_log(f"Found DFU device at {dfu_device.address}") + await perform_nrf_dfu( + firmware_bytes, + dfu_device, + on_progress=_on_progress, + on_log=_on_log, + ) + else: + # EFR32BG22: the device is either in app mode (and needs the DFU + # trigger) or already in the AppLoader at the same address (e.g. a + # previous OTA was interrupted, or the device browned out before it + # could commit). Try to trigger from app mode, but tolerate the + # connect failing — in that case the device is already in the + # AppLoader and we flash it directly. This lets HA recover a device + # that's stuck in the bootloader instead of failing hard. A stale + # proxy GATT cache (from a prior interrupted OTA) is handled at the + # connection layer: BLEConnection.connect() clears the proxy cache + # and retries once when the expected service is missing. + try: + _on_log("Connecting to trigger DFU bootloader…") + async with OpenDisplayDevice( + mac_address=self._ble_address, + ble_device=ble_device, + encryption_key=_get_encryption_key(self._entry), + ) as device: + # Clear the (now fresh) app-mode GATT from the proxy cache so + # the post-reboot AppLoader connection re-discovers the OTA + # service instead of these app-firmware handles. + cleared = await device.clear_gatt_cache() + _on_log(f"Proxy GATT cache clear requested: {cleared}") + await device.trigger_dfu_bootloader() + except BLEConnectionError as err: + _on_log( + f"App-mode connect failed ({err}); device is likely already " + "in the AppLoader — attempting OTA directly." + ) + + # AppLoader advertises at the same address; perform_silabs_ota + # retries the connection internally until it is ready. + ota_device = async_ble_device_from_address( + self.hass, self._ble_address, connectable=True + ) + if ota_device is None: + raise HomeAssistantError( + "Device not reachable in OTA mode; bring it within range and retry" + ) + await perform_silabs_ota( + firmware_bytes, + ota_device, + on_progress=_on_progress, + on_log=_on_log, ) - _on_log(f"Found DFU device at {dfu_device.address}") - - await perform_nrf_dfu( - firmware_bytes, - dfu_device, - on_progress=_on_progress, - on_log=_on_log, - ) self._attr_installed_version = tag _LOGGER.info("Firmware updated to %s", tag) - except OTAError as err: + except (OTAError, BLEConnectionError) as err: raise HomeAssistantError(f"Firmware update failed: {err}") from err finally: self._attr_in_progress = False From 1fc6e42d5c7308602f5e8e76a788c4d4671c052c Mon Sep 17 00:00:00 2001 From: gabriel Date: Tue, 2 Jun 2026 02:28:08 +0200 Subject: [PATCH 34/51] feat: make nRF firmware updates robust over a Bluetooth proxy MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Two changes, both validated end-to-end through ESPHome proxies: - Resume from DFU: if the device is already in the bootloader (a prior update was interrupted — it then advertises at MAC+1, so its app address resolves to None, or the app-mode connect fails), skip the trigger and flash the DFU device directly instead of failing hard. Mirrors the EFR32 AppLoader recovery. - Stay available during install: the device leaves app mode (nRF re-advertises at a different address) during the update, so the passive-BLE tracker would mark the entity unavailable mid-flash and hide the progress, making a working ~5-minute update look like a silent failure. Keep the entity available until the install finishes; the transfer runs on its own connection regardless. --- custom_components/opendisplay/update.py | 62 ++++++++++++++++++++----- 1 file changed, 50 insertions(+), 12 deletions(-) diff --git a/custom_components/opendisplay/update.py b/custom_components/opendisplay/update.py index af31652..2d61249 100644 --- a/custom_components/opendisplay/update.py +++ b/custom_components/opendisplay/update.py @@ -89,6 +89,7 @@ def __init__(self, coordinator, entry: OpenDisplayConfigEntry) -> None: self._firmware_repo = firmware_release_repo(ic_type) self._ble_address: str = entry.unique_id or "" self._entry = entry + self._installing = False if ic_type in _OTA_SUPPORTED_IC_TYPES: self._attr_supported_features = ( @@ -99,6 +100,20 @@ def __init__(self, coordinator, entry: OpenDisplayConfigEntry) -> None: else: self._attr_supported_features = UpdateEntityFeature.RELEASE_NOTES + @property + def available(self) -> bool: + """Stay available while a firmware update is installing. + + During an update the device leaves app mode — an nRF device even + re-advertises at a different address while in the bootloader — so the + passive-BLE availability tracker would otherwise mark this entity + unavailable mid-install and hide the progress, making a working update + look like a silent failure. The install runs on its own BLE connection + and is unaffected by the app-mode advertisement stopping, so keep the + entity available until it finishes. + """ + return self._installing or super().available + @property def release_url(self) -> str | None: """Return URL to the GitHub release page.""" @@ -150,6 +165,7 @@ async def async_install(self, version: str | None, backup: bool, **kwargs: Any) f"No BLE OTA asset available for IC type {self._ic_type}" ) + self._installing = True self._attr_in_progress = True self.async_write_ha_state() @@ -171,26 +187,47 @@ def _on_log(msg: str) -> None: ble_device = async_ble_device_from_address( self.hass, self._ble_address, connectable=True ) - if ble_device is None: + # An nRF device already in DFU advertises at MAC+1, so its app-mode + # address resolves to None — that's expected and the nRF branch below + # resumes straight to the DFU flash. For other ICs a missing device + # genuinely means unreachable. + if ble_device is None and self._ic_type not in _NRF_IC_TYPES: raise HomeAssistantError( "Device not reachable over Bluetooth; bring it within range and retry" ) if self._ic_type in _NRF_IC_TYPES: - _on_log("Connecting to trigger DFU bootloader…") - async with OpenDisplayDevice( - mac_address=self._ble_address, - ble_device=ble_device, - encryption_key=_get_encryption_key(self._entry), - ) as device: - await device.trigger_dfu_bootloader() - - _on_log("Trigger sent — waiting for DFU device to appear (up to 30 s)…") + # Trigger from app mode when the device is reachable there. If it's + # already in DFU (ble_device is None, or the app-mode connect fails + # because a prior update was interrupted), skip the trigger and + # resume directly to the DFU flash — so a failed update can simply + # be retried without manual recovery (mirrors the EFR32 path below). + if ble_device is not None: + try: + _on_log("Connecting to trigger DFU bootloader…") + async with OpenDisplayDevice( + mac_address=self._ble_address, + ble_device=ble_device, + encryption_key=_get_encryption_key(self._entry), + ) as device: + await device.trigger_dfu_bootloader() + _on_log("Trigger sent — waiting for DFU device to appear (up to 30 s)…") + except BLEConnectionError as err: + _on_log( + f"App-mode connect failed ({err}); device is likely already " + "in DFU — looking for the DFU device directly." + ) + else: + _on_log( + "Device not advertising in app mode — assuming it is already in " + "DFU; looking for the DFU device directly." + ) + dfu_device = await find_nrf_dfu_device(self._ble_address) if dfu_device is None: raise HomeAssistantError( - "DFU device not found within 30 s after bootloader trigger. " - "Ensure the device is within BLE range and try again." + "DFU device not found within 30 s. Ensure the device is within " + "BLE range and try again." ) _on_log(f"Found DFU device at {dfu_device.address}") await perform_nrf_dfu( @@ -251,6 +288,7 @@ def _on_log(msg: str) -> None: except (OTAError, BLEConnectionError) as err: raise HomeAssistantError(f"Firmware update failed: {err}") from err finally: + self._installing = False self._attr_in_progress = False self.async_write_ha_state() From b633a711220d7b2e0e745bccb59333d64aa2f129 Mon Sep 17 00:00:00 2001 From: gabriel Date: Tue, 2 Jun 2026 18:45:51 +0200 Subject: [PATCH 35/51] feat: don't offer nRF firmware OTA install (proxy-unreliable) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit nRF Legacy DFU over an ESPHome Bluetooth proxy is verifiably unreliable: the device receives the complete, CRC-valid image (validate succeeds) but the final activate/commit write fails over the proxy and strands it in the bootloader. The exact same flow commits + boots reliably over a direct connection (confirmed on a direct adapter, including a 10-minute transfer), so it's the proxy path — not the device, library, or firmware. HA OS is almost always proxy-only, so offering the install just bricks the tag into DFU and demands manual recovery. So only EFR32BG22 (Silabs AppLoader, which works over a proxy) offers OTA install now; nRF (and ESP) expose release-note visibility only. nRF firmware must be flashed over a direct connection / USB-UF2. Drops the now-unused nRF branch, resume-from-DFU, and imports from async_install. --- custom_components/opendisplay/update.py | 147 +++++++++--------------- 1 file changed, 53 insertions(+), 94 deletions(-) diff --git a/custom_components/opendisplay/update.py b/custom_components/opendisplay/update.py index 2d61249..2937aa1 100644 --- a/custom_components/opendisplay/update.py +++ b/custom_components/opendisplay/update.py @@ -11,7 +11,7 @@ from opendisplay.exceptions import BLEConnectionError, OTAError from opendisplay.models.enums import ICType from opendisplay.models.firmware import firmware_ota_asset, firmware_release_repo -from opendisplay.ota import find_nrf_dfu_device, perform_nrf_dfu, perform_silabs_ota +from opendisplay.ota import perform_silabs_ota from homeassistant.components.bluetooth import async_ble_device_from_address from homeassistant.components.update import ( @@ -38,8 +38,14 @@ _GITHUB_RELEASE = "https://api.github.com/repos/{repo}/releases/tags/{tag}" _GITHUB_HEADERS = {"Accept": "application/vnd.github+json"} -_NRF_IC_TYPES = {ICType.NRF52840, ICType.NRF52811} -_OTA_SUPPORTED_IC_TYPES = {ICType.NRF52840, ICType.NRF52811, ICType.EFR32BG22} +# BLE OTA install is only offered for ICs where it completes reliably over an +# ESPHome Bluetooth proxy — the usual HA OS path. EFR32BG22 (Silabs AppLoader) +# does. nRF Legacy DFU does NOT: verified end-to-end, the device receives the +# full, CRC-valid image but the final activate/commit write is unreliable over a +# proxy and strands the device in the bootloader (it works over a *direct* +# connection). So nRF firmware must be flashed directly / via USB-UF2, and OTA +# install is not offered for it here — only release-note visibility. +_OTA_INSTALL_IC_TYPES = {ICType.EFR32BG22} def _format_firmware_version(major: int, minor: int) -> str: @@ -91,7 +97,7 @@ def __init__(self, coordinator, entry: OpenDisplayConfigEntry) -> None: self._entry = entry self._installing = False - if ic_type in _OTA_SUPPORTED_IC_TYPES: + if ic_type in _OTA_INSTALL_IC_TYPES: self._attr_supported_features = ( UpdateEntityFeature.INSTALL | UpdateEntityFeature.PROGRESS @@ -104,8 +110,7 @@ def __init__(self, coordinator, entry: OpenDisplayConfigEntry) -> None: def available(self) -> bool: """Stay available while a firmware update is installing. - During an update the device leaves app mode — an nRF device even - re-advertises at a different address while in the bootloader — so the + During an update the device leaves app mode for the AppLoader, so the passive-BLE availability tracker would otherwise mark this entity unavailable mid-install and hide the progress, making a working update look like a silent failure. The install runs on its own BLE connection @@ -187,100 +192,54 @@ def _on_log(msg: str) -> None: ble_device = async_ble_device_from_address( self.hass, self._ble_address, connectable=True ) - # An nRF device already in DFU advertises at MAC+1, so its app-mode - # address resolves to None — that's expected and the nRF branch below - # resumes straight to the DFU flash. For other ICs a missing device - # genuinely means unreachable. - if ble_device is None and self._ic_type not in _NRF_IC_TYPES: + if ble_device is None: raise HomeAssistantError( "Device not reachable over Bluetooth; bring it within range and retry" ) - if self._ic_type in _NRF_IC_TYPES: - # Trigger from app mode when the device is reachable there. If it's - # already in DFU (ble_device is None, or the app-mode connect fails - # because a prior update was interrupted), skip the trigger and - # resume directly to the DFU flash — so a failed update can simply - # be retried without manual recovery (mirrors the EFR32 path below). - if ble_device is not None: - try: - _on_log("Connecting to trigger DFU bootloader…") - async with OpenDisplayDevice( - mac_address=self._ble_address, - ble_device=ble_device, - encryption_key=_get_encryption_key(self._entry), - ) as device: - await device.trigger_dfu_bootloader() - _on_log("Trigger sent — waiting for DFU device to appear (up to 30 s)…") - except BLEConnectionError as err: - _on_log( - f"App-mode connect failed ({err}); device is likely already " - "in DFU — looking for the DFU device directly." - ) - else: - _on_log( - "Device not advertising in app mode — assuming it is already in " - "DFU; looking for the DFU device directly." - ) - - dfu_device = await find_nrf_dfu_device(self._ble_address) - if dfu_device is None: - raise HomeAssistantError( - "DFU device not found within 30 s. Ensure the device is within " - "BLE range and try again." - ) - _on_log(f"Found DFU device at {dfu_device.address}") - await perform_nrf_dfu( - firmware_bytes, - dfu_device, - on_progress=_on_progress, - on_log=_on_log, + # Only EFR32BG22 (Silabs AppLoader) is flashed over BLE here — see + # _OTA_INSTALL_IC_TYPES. The device is either in app mode (and needs the + # DFU trigger) or already in the AppLoader at the same address (a + # previous OTA was interrupted, or it browned out before committing). + # Try to trigger from app mode, but tolerate the connect failing — then + # the device is already in the AppLoader and we flash it directly, so HA + # can recover a stuck device instead of failing hard. A stale proxy GATT + # cache from a prior interrupted OTA is handled at the connection layer: + # BLEConnection.connect() clears it and retries once. + try: + _on_log("Connecting to trigger DFU bootloader…") + async with OpenDisplayDevice( + mac_address=self._ble_address, + ble_device=ble_device, + encryption_key=_get_encryption_key(self._entry), + ) as device: + # Clear the (now fresh) app-mode GATT from the proxy cache so the + # post-reboot AppLoader connection re-discovers the OTA service + # instead of these app-firmware handles. + cleared = await device.clear_gatt_cache() + _on_log(f"Proxy GATT cache clear requested: {cleared}") + await device.trigger_dfu_bootloader() + except BLEConnectionError as err: + _on_log( + f"App-mode connect failed ({err}); device is likely already " + "in the AppLoader — attempting OTA directly." ) - else: - # EFR32BG22: the device is either in app mode (and needs the DFU - # trigger) or already in the AppLoader at the same address (e.g. a - # previous OTA was interrupted, or the device browned out before it - # could commit). Try to trigger from app mode, but tolerate the - # connect failing — in that case the device is already in the - # AppLoader and we flash it directly. This lets HA recover a device - # that's stuck in the bootloader instead of failing hard. A stale - # proxy GATT cache (from a prior interrupted OTA) is handled at the - # connection layer: BLEConnection.connect() clears the proxy cache - # and retries once when the expected service is missing. - try: - _on_log("Connecting to trigger DFU bootloader…") - async with OpenDisplayDevice( - mac_address=self._ble_address, - ble_device=ble_device, - encryption_key=_get_encryption_key(self._entry), - ) as device: - # Clear the (now fresh) app-mode GATT from the proxy cache so - # the post-reboot AppLoader connection re-discovers the OTA - # service instead of these app-firmware handles. - cleared = await device.clear_gatt_cache() - _on_log(f"Proxy GATT cache clear requested: {cleared}") - await device.trigger_dfu_bootloader() - except BLEConnectionError as err: - _on_log( - f"App-mode connect failed ({err}); device is likely already " - "in the AppLoader — attempting OTA directly." - ) - - # AppLoader advertises at the same address; perform_silabs_ota - # retries the connection internally until it is ready. - ota_device = async_ble_device_from_address( - self.hass, self._ble_address, connectable=True - ) - if ota_device is None: - raise HomeAssistantError( - "Device not reachable in OTA mode; bring it within range and retry" - ) - await perform_silabs_ota( - firmware_bytes, - ota_device, - on_progress=_on_progress, - on_log=_on_log, + + # AppLoader advertises at the same address; perform_silabs_ota retries + # the connection internally until it is ready. + ota_device = async_ble_device_from_address( + self.hass, self._ble_address, connectable=True + ) + if ota_device is None: + raise HomeAssistantError( + "Device not reachable in OTA mode; bring it within range and retry" ) + await perform_silabs_ota( + firmware_bytes, + ota_device, + on_progress=_on_progress, + on_log=_on_log, + ) self._attr_installed_version = tag _LOGGER.info("Firmware updated to %s", tag) From f9b61be08a65901b38e41da325fce17c7abcccf1 Mon Sep 17 00:00:00 2001 From: gabriel Date: Tue, 2 Jun 2026 20:38:21 +0200 Subject: [PATCH 36/51] chore: bump py-opendisplay --- custom_components/opendisplay/manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/custom_components/opendisplay/manifest.json b/custom_components/opendisplay/manifest.json index 181206a..0cfcc2b 100644 --- a/custom_components/opendisplay/manifest.json +++ b/custom_components/opendisplay/manifest.json @@ -15,6 +15,6 @@ "iot_class": "local_push", "issue_tracker": "https://github.com/OpenDisplay/Home_Assistant_Integration/issues", "loggers": ["opendisplay"], - "requirements": ["py-opendisplay[nrf-ota]==7.6.0", "odl-renderer==0.5.9"], + "requirements": ["py-opendisplay[silabs-ota]==7.6.0", "odl-renderer==0.5.9"], "version": "3.0.0-beta.3" } From a30cd212fced02c4b5983246c69218d091fb3db4 Mon Sep 17 00:00:00 2001 From: gabriel Date: Wed, 3 Jun 2026 01:53:51 +0200 Subject: [PATCH 37/51] fix: accept legacy drawcustom field values from pre-3.0 configs The drawcustom service is now registered with a strict voluptuous schema, which rejected service calls written for the main-branch version: numeric dither/refresh_type values and removed keys (ttl, preload_type, preload_lut) all caused validation errors. - dither: accept legacy numeric values (0/1/2) alongside the new names; values map cleanly since DitherMode ints match the old scheme - refresh_type: switch to named values (full/fast) like upload_image, while still accepting legacy ints; legacy partial modes (2/3) fall back to fast since partial is not implemented yet - drop unknown legacy keys via extra=vol.REMOVE_EXTRA instead of erroring - give background and refresh_type a UI default of white/full so they show preselected (payload element formats were already unchanged) --- custom_components/opendisplay/services.py | 44 +++++++++++++++++++-- custom_components/opendisplay/services.yaml | 14 +++---- 2 files changed, 47 insertions(+), 11 deletions(-) diff --git a/custom_components/opendisplay/services.py b/custom_components/opendisplay/services.py index 665dc3e..127ff65 100644 --- a/custom_components/opendisplay/services.py +++ b/custom_components/opendisplay/services.py @@ -68,6 +68,41 @@ def validate(value: str) -> IntEnum: return validate +def _dither_value(value: Any) -> DitherMode: + """Accept new dither names ("ordered") and legacy numeric values (0/1/2...).""" + if isinstance(value, (int, float)) or ( + isinstance(value, str) and value.lstrip("-").isdigit() + ): + try: + return DitherMode(int(value)) + except ValueError as err: + raise vol.Invalid(f"Invalid dither value: {value}") from err + return _str_to_int_enum(DitherMode)(value) + + +def _refresh_type_value(value: Any) -> RefreshMode: + """Accept names ("full"/"fast") and legacy numeric values. + + `partial` is not implemented yet, so it is not offered and any partial-ish + input (legacy 2/3, or an explicit "partial") falls back to fast. + """ + if isinstance(value, (int, float)) or ( + isinstance(value, str) and value.lstrip("-").isdigit() + ): + n = int(value) + if n in (2, 3): # legacy partial / partial2 -> fast (partial not implemented) + return RefreshMode.FAST + try: + mode = RefreshMode(n) + except ValueError as err: + raise vol.Invalid(f"Invalid refresh_type: {value}") from err + else: + mode = _str_to_int_enum(RefreshMode)(value) + if mode is RefreshMode.PARTIAL: # reserved for the future, not implemented yet + return RefreshMode.FAST + return mode + + SCHEMA_UPLOAD_IMAGE = vol.Schema( { vol.Required(ATTR_DEVICE_ID): cv.string, @@ -95,10 +130,11 @@ def validate(value: str) -> IntEnum: vol.Required("payload"): list, vol.Optional("background", default="white"): cv.string, vol.Optional("rotate", default=0): vol.All(vol.Coerce(int), vol.In([0, 90, 180, 270])), - vol.Optional("dither", default="ordered"): _str_to_int_enum(DitherMode), - vol.Optional("refresh_type", default=0): vol.All(vol.Coerce(int), vol.In([0, 1])), + vol.Optional("dither", default="ordered"): _dither_value, + vol.Optional("refresh_type", default="full"): _refresh_type_value, vol.Optional("dry-run", default=False): cv.boolean, - } + }, + extra=vol.REMOVE_EXTRA, # silently drop legacy keys (ttl, preload_type, preload_lut, ...) ) @@ -527,7 +563,7 @@ async def _drawcustom_for_device( return dither_mode: DitherMode = call.data["dither"] - refresh_mode = RefreshMode.FAST if call.data["refresh_type"] == 1 else RefreshMode.FULL + refresh_mode: RefreshMode = call.data["refresh_type"] await _async_send_image( hass, diff --git a/custom_components/opendisplay/services.yaml b/custom_components/opendisplay/services.yaml index 0e3fd05..9db3771 100644 --- a/custom_components/opendisplay/services.yaml +++ b/custom_components/opendisplay/services.yaml @@ -259,6 +259,7 @@ drawcustom: name: Background color description: Background color required: true + default: "white" example: white selector: select: @@ -298,16 +299,15 @@ drawcustom: - "jarvis_judice_ninke" refresh_type: name: Refresh type - description: E-paper refresh mode (0=full, 1=fast) - required: false - default: "0" + description: E-paper refresh mode + required: true + default: "full" selector: select: + translation_key: refresh_mode options: - - label: "Full (best quality)" - value: "0" - - label: "Fast" - value: "1" + - "full" + - "fast" dry-run: name: Dry run description: Generate image without sending to device From ef918955c89a4a7bc2d77e3ecfc70c301584e038 Mon Sep 17 00:00:00 2001 From: gabriel Date: Wed, 3 Jun 2026 02:31:01 +0200 Subject: [PATCH 38/51] feat: accept a direct image URL in the upload_image service MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The upload_image `image` field now accepts a plain http(s) URL alongside the existing media-source picker. This lets an automation push an already-rendered image by URL — e.g. a dashboard snapshot from the puppet add-on (http://homeassistant.local:10000/...) — without first routing it through a media source. --- custom_components/opendisplay/services.py | 37 +++++++++++++------ custom_components/opendisplay/strings.json | 5 ++- .../opendisplay/translations/en.json | 5 ++- 3 files changed, 33 insertions(+), 14 deletions(-) diff --git a/custom_components/opendisplay/services.py b/custom_components/opendisplay/services.py index 127ff65..70c4d66 100644 --- a/custom_components/opendisplay/services.py +++ b/custom_components/opendisplay/services.py @@ -106,8 +106,8 @@ def _refresh_type_value(value: Any) -> RefreshMode: SCHEMA_UPLOAD_IMAGE = vol.Schema( { vol.Required(ATTR_DEVICE_ID): cv.string, - vol.Required(ATTR_IMAGE): MediaSelector( - MediaSelectorConfig(accept=["image/*"]) + vol.Required(ATTR_IMAGE): vol.Any( + cv.url, MediaSelector(MediaSelectorConfig(accept=["image/*"])) ), vol.Optional(ATTR_ROTATION, default=Rotation.ROTATE_0): vol.All( vol.Coerce(int), vol.Coerce(Rotation) @@ -348,7 +348,7 @@ async def _async_upload_image(call: ServiceCall) -> None: """Handle the upload_image service call.""" entry = _get_entry_for_device(call) - image_data: dict[str, Any] = call.data[ATTR_IMAGE] + image_data: dict[str, Any] | str = call.data[ATTR_IMAGE] rotation: Rotation = call.data[ATTR_ROTATION] dither_mode: DitherMode = call.data[ATTR_DITHER_MODE] refresh_mode: RefreshMode = call.data[ATTR_REFRESH_MODE] @@ -358,6 +358,17 @@ async def _async_upload_image(call: ServiceCall) -> None: tone_compression_pct / 100.0 if tone_compression_pct is not None else "auto" ) + # A plain URL (e.g. an automation pushing a rendered snapshot) must be + # explicitly allowlisted; media-source items are already trusted. + if isinstance(image_data, str) and not call.hass.config.is_allowed_external_url( + image_data + ): + raise ServiceValidationError( + translation_domain=DOMAIN, + translation_key="url_not_allowed", + translation_placeholders={"url": image_data}, + ) + current = asyncio.current_task() if (prev := entry.runtime_data.upload_task) is not None and not prev.done(): prev.cancel() @@ -367,16 +378,18 @@ async def _async_upload_image(call: ServiceCall) -> None: entry.runtime_data.upload_task = current try: - media = await async_resolve_media( - call.hass, image_data["media_content_id"], None - ) - - if media.path is not None: - pil_image = await call.hass.async_add_executor_job( - _load_image, str(media.path) - ) + if isinstance(image_data, str): + pil_image = await _async_download_image(call.hass, image_data) else: - pil_image = await _async_download_image(call.hass, media.url) + media = await async_resolve_media( + call.hass, image_data["media_content_id"], None + ) + if media.path is not None: + pil_image = await call.hass.async_add_executor_job( + _load_image, str(media.path) + ) + else: + pil_image = await _async_download_image(call.hass, media.url) await _async_send_image( call.hass, diff --git a/custom_components/opendisplay/strings.json b/custom_components/opendisplay/strings.json index 0fc5e1e..66b5b10 100644 --- a/custom_components/opendisplay/strings.json +++ b/custom_components/opendisplay/strings.json @@ -125,6 +125,9 @@ }, "upload_error": { "message": "Failed to upload to the display: {error}" + }, + "url_not_allowed": { + "message": "URL `{url}` is not allowed. Add it to `allowlist_external_urls` in your configuration.yaml." } }, "selector": { @@ -173,7 +176,7 @@ "name": "Fit mode" }, "image": { - "description": "The image to upload to the display.", + "description": "The image to upload to the display. Pick a media item, or provide a direct image URL (the URL must be added to allowlist_external_urls).", "name": "Image" }, "refresh_mode": { diff --git a/custom_components/opendisplay/translations/en.json b/custom_components/opendisplay/translations/en.json index 2f4e853..ca55005 100644 --- a/custom_components/opendisplay/translations/en.json +++ b/custom_components/opendisplay/translations/en.json @@ -125,6 +125,9 @@ }, "upload_error": { "message": "Failed to upload to the display: {error}" + }, + "url_not_allowed": { + "message": "URL `{url}` is not allowed. Add it to `allowlist_external_urls` in your configuration.yaml." } }, "selector": { @@ -173,7 +176,7 @@ "name": "Fit mode" }, "image": { - "description": "The image to upload to the display.", + "description": "The image to upload to the display. Pick a media item, or provide a direct image URL (the URL must be added to allowlist_external_urls).", "name": "Image" }, "refresh_mode": { From cb32083745e4ef585bf3cefb87e76a4b5c5b2925 Mon Sep 17 00:00:00 2001 From: gabriel Date: Wed, 3 Jun 2026 03:11:46 +0200 Subject: [PATCH 39/51] chore: bump py-opendisplay --- custom_components/opendisplay/manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/custom_components/opendisplay/manifest.json b/custom_components/opendisplay/manifest.json index 0cfcc2b..04e4440 100644 --- a/custom_components/opendisplay/manifest.json +++ b/custom_components/opendisplay/manifest.json @@ -15,6 +15,6 @@ "iot_class": "local_push", "issue_tracker": "https://github.com/OpenDisplay/Home_Assistant_Integration/issues", "loggers": ["opendisplay"], - "requirements": ["py-opendisplay[silabs-ota]==7.6.0", "odl-renderer==0.5.9"], + "requirements": ["py-opendisplay[silabs-ota]==7.7.0", "odl-renderer==0.5.9"], "version": "3.0.0-beta.3" } From 43bc0447f80e4d15e614922e4fd989747eb2e41e Mon Sep 17 00:00:00 2001 From: gabriel Date: Wed, 3 Jun 2026 14:34:55 +0200 Subject: [PATCH 40/51] feat: defer BLE connect until discovery is confirmed Don't interrogate newly discovered devices automatically; only connect when the user confirms, so flashing displays no longer requires powering down BLE proxies. --- custom_components/opendisplay/config_flow.py | 41 +++++++++++--------- 1 file changed, 22 insertions(+), 19 deletions(-) diff --git a/custom_components/opendisplay/config_flow.py b/custom_components/opendisplay/config_flow.py index 8715107..622723e 100644 --- a/custom_components/opendisplay/config_flow.py +++ b/custom_components/opendisplay/config_flow.py @@ -59,33 +59,36 @@ async def async_step_bluetooth( self._abort_if_unique_id_configured() self._discovery_info = discovery_info self.context["title_placeholders"] = {"name": discovery_info.name} - - try: - await self._async_test_connection(discovery_info.address) - except AuthenticationRequiredError: - return await self.async_step_encryption_key() - except OpenDisplayError: - return self.async_abort(reason="cannot_connect") - except Exception: - _LOGGER.exception("Unexpected error") - return self.async_abort(reason="unknown") - return await self.async_step_bluetooth_confirm() async def async_step_bluetooth_confirm( self, user_input: dict[str, Any] | None = None ) -> ConfigFlowResult: - """Confirm discovery.""" + """Confirm discovery and connect to the device.""" assert self._discovery_info is not None + errors: dict[str, str] = {} - if user_input is None: - self._set_confirm_only() - return self.async_show_form( - step_id="bluetooth_confirm", - description_placeholders=self.context["title_placeholders"], - ) + if user_input is not None: + try: + await self._async_test_connection(self._discovery_info.address) + except AuthenticationRequiredError: + return await self.async_step_encryption_key() + except OpenDisplayError: + errors["base"] = "cannot_connect" + except Exception: + _LOGGER.exception("Unexpected error") + errors["base"] = "unknown" + else: + return self.async_create_entry( + title=self._discovery_info.name, data={} + ) - return self.async_create_entry(title=self._discovery_info.name, data={}) + self._set_confirm_only() + return self.async_show_form( + step_id="bluetooth_confirm", + description_placeholders=self.context["title_placeholders"], + errors=errors, + ) async def async_step_user( self, user_input: dict[str, Any] | None = None From 2fad89dd80642566d485f78742bf6f8a89629669 Mon Sep 17 00:00:00 2001 From: gabriel Date: Wed, 3 Jun 2026 14:36:34 +0200 Subject: [PATCH 41/51] feat: drop board revision from hardware version --- custom_components/opendisplay/__init__.py | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/custom_components/opendisplay/__init__.py b/custom_components/opendisplay/__init__.py index 7b6a6d5..9485266 100644 --- a/custom_components/opendisplay/__init__.py +++ b/custom_components/opendisplay/__init__.py @@ -127,10 +127,7 @@ async def async_setup_entry(hass: HomeAssistant, entry: OpenDisplayConfigEntry) manufacturer=manufacturer.manufacturer_name, model=f"{size} {color_scheme}", sw_version=f"{fw['major']}.{fw['minor']}", - hw_version=( - f"{manufacturer.board_type_name or manufacturer.board_type}" - f" rev. {manufacturer.board_revision}" - ) + hw_version=f"{manufacturer.board_type_name or manufacturer.board_type}" if is_flex else None, configuration_url="https://opendisplay.org/firmware/config/" From aa2db6072342ced5e31532878cc06b712eb83309 Mon Sep 17 00:00:00 2001 From: gabriel Date: Wed, 3 Jun 2026 15:59:51 +0200 Subject: [PATCH 42/51] chore: bump py-opendisplay to 7.8.0 --- custom_components/opendisplay/manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/custom_components/opendisplay/manifest.json b/custom_components/opendisplay/manifest.json index 04e4440..ee4a2da 100644 --- a/custom_components/opendisplay/manifest.json +++ b/custom_components/opendisplay/manifest.json @@ -15,6 +15,6 @@ "iot_class": "local_push", "issue_tracker": "https://github.com/OpenDisplay/Home_Assistant_Integration/issues", "loggers": ["opendisplay"], - "requirements": ["py-opendisplay[silabs-ota]==7.7.0", "odl-renderer==0.5.9"], + "requirements": ["py-opendisplay[silabs-ota]==7.8.0", "odl-renderer==0.5.9"], "version": "3.0.0-beta.3" } From e0bc08f24f3beb5a0618a122d15921440d99450a Mon Sep 17 00:00:00 2001 From: gabriel Date: Wed, 3 Jun 2026 15:59:51 +0200 Subject: [PATCH 43/51] feat: use per-device landing link for the Visit device button Set configuration_url to device.landing_url() (opendisplay.org/l/?...), the per-device deep link the firmware also renders as an on-screen QR code, instead of the generic config page. Closes #40. --- custom_components/opendisplay/__init__.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/custom_components/opendisplay/__init__.py b/custom_components/opendisplay/__init__.py index 9485266..4ec2f17 100644 --- a/custom_components/opendisplay/__init__.py +++ b/custom_components/opendisplay/__init__.py @@ -94,6 +94,8 @@ async def async_setup_entry(hass: HomeAssistant, entry: OpenDisplayConfigEntry) ) as device: fw = await device.read_firmware_version() is_flex = device.is_flex + # Capture while connected: landing_url() reads the advertised name. + landing_url = device.landing_url() except (AuthenticationFailedError, AuthenticationRequiredError) as err: raise ConfigEntryAuthFailed( f"Encryption key rejected by OpenDisplay device: {err}" @@ -130,9 +132,7 @@ async def async_setup_entry(hass: HomeAssistant, entry: OpenDisplayConfigEntry) hw_version=f"{manufacturer.board_type_name or manufacturer.board_type}" if is_flex else None, - configuration_url="https://opendisplay.org/firmware/config/" - if is_flex - else None, + configuration_url=landing_url, ) entry.runtime_data = OpenDisplayRuntimeData( From 7dfe66c2a58673a5f3999cf11627d1c404a45f43 Mon Sep 17 00:00:00 2001 From: gabriel Date: Wed, 3 Jun 2026 17:56:10 +0200 Subject: [PATCH 44/51] chore: bump version to 3.0.0-beta.4 --- custom_components/opendisplay/manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/custom_components/opendisplay/manifest.json b/custom_components/opendisplay/manifest.json index ee4a2da..bba8e08 100644 --- a/custom_components/opendisplay/manifest.json +++ b/custom_components/opendisplay/manifest.json @@ -16,5 +16,5 @@ "issue_tracker": "https://github.com/OpenDisplay/Home_Assistant_Integration/issues", "loggers": ["opendisplay"], "requirements": ["py-opendisplay[silabs-ota]==7.8.0", "odl-renderer==0.5.9"], - "version": "3.0.0-beta.3" + "version": "3.0.0-beta.4" } From 2b785d7a181bd73b228c72c59fafdd7cf8b2b54c Mon Sep 17 00:00:00 2001 From: gabriel Date: Thu, 4 Jun 2026 17:19:51 +0200 Subject: [PATCH 45/51] feat: re-sync firmware/config when the device reboots Devices advertise a reboot flag (status byte bit 1) that is set on boot and cleared on the first BLE connection. The coordinator now detects the False -> True edge and reloads the config entry, which reconnects (clearing the flag), re-reads firmware + config, and rebuilds device info/platforms. The reload defers to any in-progress image upload so an unrelated reboot does not abort it. Reaction is wired via an async_subscribe_reboot() callback (mirroring homekit_controller's c# config-change subscription) to keep the coordinator free of ConfigEntry/runtime_data coupling. --- custom_components/opendisplay/__init__.py | 27 +++++++++++- custom_components/opendisplay/coordinator.py | 46 +++++++++++++++++++- 2 files changed, 71 insertions(+), 2 deletions(-) diff --git a/custom_components/opendisplay/__init__.py b/custom_components/opendisplay/__init__.py index 4ec2f17..2a0f998 100644 --- a/custom_components/opendisplay/__init__.py +++ b/custom_components/opendisplay/__init__.py @@ -18,7 +18,7 @@ from homeassistant.components.bluetooth import async_ble_device_from_address from homeassistant.config_entries import ConfigEntry from homeassistant.const import Platform -from homeassistant.core import HomeAssistant +from homeassistant.core import HomeAssistant, callback from homeassistant.exceptions import ConfigEntryAuthFailed, ConfigEntryNotReady from homeassistant.helpers import config_validation as cv, device_registry as dr from homeassistant.helpers.device_registry import CONNECTION_BLUETOOTH @@ -147,6 +147,13 @@ async def async_setup_entry(hass: HomeAssistant, entry: OpenDisplayConfigEntry) ) entry.async_on_unload(coordinator.async_start()) + @callback + def _schedule_reboot_reload() -> None: + """Re-read firmware/config after the device signals a reboot.""" + hass.async_create_task(_async_reload_after_reboot(hass, entry)) + + entry.async_on_unload(coordinator.async_subscribe_reboot(_schedule_reboot_reload)) + return True @@ -158,6 +165,24 @@ def _get_platforms(runtime_data: OpenDisplayRuntimeData) -> list[Platform]: return platforms +async def _async_reload_after_reboot( + hass: HomeAssistant, entry: OpenDisplayConfigEntry +) -> None: + """Re-read firmware/config after a device reboot by reloading the entry. + + Triggered by the coordinator when the advertised reboot flag goes + False -> True. Reloading re-runs async_setup_entry, which reconnects (clearing + the device's reboot flag), re-reads firmware + config, and rebuilds device + info and platforms. Defers until any in-progress image upload finishes so an + unrelated reboot detection does not abort the user's upload. + """ + runtime = entry.runtime_data + upload_task = runtime.upload_task if runtime is not None else None + if upload_task is not None and not upload_task.done(): + await asyncio.gather(upload_task, return_exceptions=True) + await hass.config_entries.async_reload(entry.entry_id) + + async def async_unload_entry( hass: HomeAssistant, entry: OpenDisplayConfigEntry ) -> bool: diff --git a/custom_components/opendisplay/coordinator.py b/custom_components/opendisplay/coordinator.py index cf3e465..ec743a0 100644 --- a/custom_components/opendisplay/coordinator.py +++ b/custom_components/opendisplay/coordinator.py @@ -20,7 +20,7 @@ from homeassistant.components.bluetooth.passive_update_coordinator import ( PassiveBluetoothDataUpdateCoordinator, ) -from homeassistant.core import HomeAssistant, callback +from homeassistant.core import CALLBACK_TYPE, HomeAssistant, callback _LOGGER: logging.Logger = logging.getLogger(__package__) @@ -52,6 +52,26 @@ def __init__(self, hass: HomeAssistant, address: str) -> None: self.data: OpenDisplayUpdate | None = None self._tracker: AdvertisementTracker = AdvertisementTracker() self.touch_trackers: list[TouchTracker] = [] + # Subscribers notified once when the advertised reboot flag goes + # False -> True (the device rebooted since we last talked to it). + self._reboot_callbacks: set[CALLBACK_TYPE] = set() + # Reboot-flag edge detection: the device sets the advertised reboot flag + # on boot and clears it on first connect. None until the first v1 advert. + self._last_reboot_flag: bool | None = None + + @callback + def async_subscribe_reboot(self, callback_: CALLBACK_TYPE) -> CALLBACK_TYPE: + """Subscribe to device reboots (advertised reboot flag False -> True). + + Returns an unsubscribe callback. + """ + self._reboot_callbacks.add(callback_) + + @callback + def _unsubscribe() -> None: + self._reboot_callbacks.discard(callback_) + + return _unsubscribe @callback def _async_handle_unavailable( @@ -88,6 +108,7 @@ def _async_handle_bluetooth_event( exc_info=True, ) else: + self._check_reboot_flag(advertisement) button_events = self._tracker.update(service_info.address, advertisement) touch_events: list[TouchChangeEvent] = [] for touch_tracker in self.touch_trackers: @@ -104,3 +125,26 @@ def _async_handle_bluetooth_event( ) super()._async_handle_bluetooth_event(service_info, change) + + @callback + def _check_reboot_flag(self, advertisement: AdvertisementData) -> None: + """Notify on a reboot, detected as a reboot-flag False -> True edge. + + The device sets the advertised reboot flag on boot and clears it on the + first BLE connection. We react only to a False -> True transition: the + initial observation (None -> True) is ignored because setup already + synced this boot, and a flag that stays True (True -> True, e.g. a device + that never clears it) is self-guarding and won't fire again. + """ + reboot_flag = advertisement.reboot_flag + if reboot_flag is None: + # Legacy advertisement: no reboot flag, leave previous state intact. + return + + previous = self._last_reboot_flag + self._last_reboot_flag = reboot_flag + + if reboot_flag and previous is False and self._reboot_callbacks: + _LOGGER.info("%s: Device rebooted since last connection", self.address) + for reboot_callback in list(self._reboot_callbacks): + reboot_callback() From e30e959f439d050aa28b187d1939593a4ced040f Mon Sep 17 00:00:00 2001 From: gabriel Date: Fri, 5 Jun 2026 00:14:37 +0200 Subject: [PATCH 46/51] feat: add reachability reason to device-not-found errors --- custom_components/opendisplay/__init__.py | 18 +++++++++++++++--- custom_components/opendisplay/services.py | 19 +++++++++++++++---- custom_components/opendisplay/strings.json | 5 ++++- 3 files changed, 34 insertions(+), 8 deletions(-) diff --git a/custom_components/opendisplay/__init__.py b/custom_components/opendisplay/__init__.py index 2a0f998..3bfb97d 100644 --- a/custom_components/opendisplay/__init__.py +++ b/custom_components/opendisplay/__init__.py @@ -15,7 +15,11 @@ OpenDisplayError, ) -from homeassistant.components.bluetooth import async_ble_device_from_address +from homeassistant.components.bluetooth import ( + BluetoothReachabilityIntent, + async_address_reachability_diagnostics, + async_ble_device_from_address, +) from homeassistant.config_entries import ConfigEntry from homeassistant.const import Platform from homeassistant.core import HomeAssistant, callback @@ -83,9 +87,17 @@ async def async_setup_entry(hass: HomeAssistant, entry: OpenDisplayConfigEntry) ble_device = async_ble_device_from_address(hass, address, connectable=True) if ble_device is None: raise ConfigEntryNotReady( - f"Could not find OpenDisplay device with address {address}" + translation_domain=DOMAIN, + translation_key="device_not_found", + translation_placeholders={ + "address": address, + "reason": async_address_reachability_diagnostics( + hass, + address.upper(), + BluetoothReachabilityIntent.CONNECTION, + ), + }, ) - encryption_key = _get_encryption_key(entry) try: diff --git a/custom_components/opendisplay/services.py b/custom_components/opendisplay/services.py index 70c4d66..80f1b03 100644 --- a/custom_components/opendisplay/services.py +++ b/custom_components/opendisplay/services.py @@ -29,7 +29,11 @@ from PIL import Image as PILImage, ImageOps import voluptuous as vol -from homeassistant.components.bluetooth import async_ble_device_from_address +from homeassistant.components.bluetooth import ( + BluetoothReachabilityIntent, + async_address_reachability_diagnostics, + async_ble_device_from_address, +) from homeassistant.components.http.auth import async_sign_path from homeassistant.components.media_source import async_resolve_media from homeassistant.config_entries import ConfigEntryState @@ -218,7 +222,7 @@ def _get_entry_for_device(call: ServiceCall) -> OpenDisplayConfigEntry: if entry is None or entry.state is not ConfigEntryState.LOADED: raise ServiceValidationError( translation_domain=DOMAIN, - translation_key="device_not_found", + translation_key="config_entry_not_found", translation_placeholders={"address": mac_address}, ) @@ -280,7 +284,14 @@ async def _async_connect_and_run( raise HomeAssistantError( translation_domain=DOMAIN, translation_key="device_not_found", - translation_placeholders={"address": address}, + translation_placeholders={ + "address": address, + "reason": async_address_reachability_diagnostics( + hass, + address.upper(), + BluetoothReachabilityIntent.CONNECTION, + ), + }, ) raw_key = entry.data.get(CONF_ENCRYPTION_KEY) @@ -478,7 +489,7 @@ def _get_entry_for_device_id( if entry is None or entry.state is not ConfigEntryState.LOADED: raise ServiceValidationError( translation_domain=DOMAIN, - translation_key="device_not_found", + translation_key="config_entry_not_found", translation_placeholders={"address": mac_address}, ) return entry diff --git a/custom_components/opendisplay/strings.json b/custom_components/opendisplay/strings.json index 66b5b10..350d82b 100644 --- a/custom_components/opendisplay/strings.json +++ b/custom_components/opendisplay/strings.json @@ -102,8 +102,11 @@ "authentication_error": { "message": "Authentication failed. Please update the encryption key." }, + "config_entry_not_found": { + "message": "Config entry not found: `{address}`" + }, "device_not_found": { - "message": "Could not find Bluetooth device with address `{address}`." + "message": "Could not find Bluetooth device with address `{address}`. Reason: {reason}" }, "invalid_device_id": { "message": "Device `{device_id}` is not a valid OpenDisplay device." From 27f9afa32d0c90311c73cd2ffef56d68d63e1c96 Mon Sep 17 00:00:00 2001 From: gabriel Date: Fri, 5 Jun 2026 00:59:51 +0200 Subject: [PATCH 47/51] fix: correct drawcustom 90/270 rotation transposition Fixes #43 --- custom_components/opendisplay/services.py | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/custom_components/opendisplay/services.py b/custom_components/opendisplay/services.py index 80f1b03..daa1d74 100644 --- a/custom_components/opendisplay/services.py +++ b/custom_components/opendisplay/services.py @@ -565,9 +565,23 @@ async def _drawcustom_for_device( cs = display.color_scheme_enum color_scheme = cs if isinstance(cs, ColorScheme) else ColorScheme.from_value(cs) + rotate: int = call.data["rotate"] + # The payload is authored against the final on-screen orientation. The device + # applies (base + rotate) and fits the result to its native pixel grid, so when + # the effective rotation transposes the axes (90/270) we render the canvas + # transposed too. That keeps the device-side fit a 1:1 no-op instead of + # scaling/centering a mismatched-aspect image. Rotation itself is left to the + # device (consistent with the upload_image path) rather than rotating here. + base = display.rotation_enum + base_deg = base.value if isinstance(base, Rotation) else 0 + if (base_deg + rotate) % 360 in (90, 270): + gen_width, gen_height = display.pixel_height, display.pixel_width + else: + gen_width, gen_height = display.pixel_width, display.pixel_height + img = await generate_image( - width=display.pixel_width, - height=display.pixel_height, + width=gen_width, + height=gen_height, elements=call.data["payload"], background=call.data["background"], accent_color=color_scheme.accent_color, @@ -576,10 +590,6 @@ async def _drawcustom_for_device( font_dirs=_font_search_dirs(hass), ) - rotate: int = call.data["rotate"] - if rotate: - img = img.rotate(rotate, expand=True) - if call.data["dry-run"]: _LOGGER.info("Drawcustom dry run for device %s", device_id) jpeg = await hass.async_add_executor_job(_pil_to_jpeg, img) @@ -595,6 +605,7 @@ async def _drawcustom_for_device( img, dither_mode=dither_mode, refresh_mode=refresh_mode, + rotate=Rotation(rotate), ) From ec3a3d10583866170beac30b28fc6d9404ea63ab Mon Sep 17 00:00:00 2001 From: gabriel Date: Fri, 5 Jun 2026 17:17:50 +0200 Subject: [PATCH 48/51] chore: bump version to 3.0.0-beta.5 --- custom_components/opendisplay/manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/custom_components/opendisplay/manifest.json b/custom_components/opendisplay/manifest.json index bba8e08..7c22cd8 100644 --- a/custom_components/opendisplay/manifest.json +++ b/custom_components/opendisplay/manifest.json @@ -16,5 +16,5 @@ "issue_tracker": "https://github.com/OpenDisplay/Home_Assistant_Integration/issues", "loggers": ["opendisplay"], "requirements": ["py-opendisplay[silabs-ota]==7.8.0", "odl-renderer==0.5.9"], - "version": "3.0.0-beta.4" + "version": "3.0.0-beta.5" } From 3db87a5a8ebfe1e63ef22682b83cf40bd53d0431 Mon Sep 17 00:00:00 2001 From: David Lee Date: Sun, 14 Jun 2026 11:55:10 -0400 Subject: [PATCH 49/51] added tone_compression to services.yaml and services.py, mirroring image_upload. Tested. --- custom_components/opendisplay/services.py | 8 ++++++++ custom_components/opendisplay/services.yaml | 11 +++++++++++ 2 files changed, 19 insertions(+) diff --git a/custom_components/opendisplay/services.py b/custom_components/opendisplay/services.py index daa1d74..6ca5651 100644 --- a/custom_components/opendisplay/services.py +++ b/custom_components/opendisplay/services.py @@ -136,6 +136,9 @@ def _refresh_type_value(value: Any) -> RefreshMode: vol.Optional("rotate", default=0): vol.All(vol.Coerce(int), vol.In([0, 90, 180, 270])), vol.Optional("dither", default="ordered"): _dither_value, vol.Optional("refresh_type", default="full"): _refresh_type_value, + vol.Optional(ATTR_TONE_COMPRESSION): vol.All( + vol.Coerce(float), vol.Range(min=0.0, max=100.0) + ), vol.Optional("dry-run", default=False): cv.boolean, }, extra=vol.REMOVE_EXTRA, # silently drop legacy keys (ttl, preload_type, preload_lut, ...) @@ -598,6 +601,10 @@ async def _drawcustom_for_device( dither_mode: DitherMode = call.data["dither"] refresh_mode: RefreshMode = call.data["refresh_type"] + tone_compression_pct: float | None = call.data.get(ATTR_TONE_COMPRESSION) + tone_compression: float | str = ( + tone_compression_pct / 100.0 if tone_compression_pct is not None else "auto" + ) await _async_send_image( hass, @@ -605,6 +612,7 @@ async def _drawcustom_for_device( img, dither_mode=dither_mode, refresh_mode=refresh_mode, + tone=tone_compression, rotate=Rotation(rotate), ) diff --git a/custom_components/opendisplay/services.yaml b/custom_components/opendisplay/services.yaml index 9db3771..de88a43 100644 --- a/custom_components/opendisplay/services.yaml +++ b/custom_components/opendisplay/services.yaml @@ -308,6 +308,17 @@ drawcustom: options: - "full" - "fast" + tone_compression: + name: Tone compression + description: Tone compression strength (0–100%). Omit to use automatic tone mapping. + required: false + selector: + number: + min: 0 + max: 100 + step: 1 + mode: slider + unit_of_measurement: "%" dry-run: name: Dry run description: Generate image without sending to device From 5bb2776ee3339bf43b825063210bb16650dec6bb Mon Sep 17 00:00:00 2001 From: gabriel Date: Thu, 18 Jun 2026 23:07:01 +0200 Subject: [PATCH 50/51] feat: bump py-opendisplay to 7.9.0 --- custom_components/opendisplay/manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/custom_components/opendisplay/manifest.json b/custom_components/opendisplay/manifest.json index 7c22cd8..e1180d4 100644 --- a/custom_components/opendisplay/manifest.json +++ b/custom_components/opendisplay/manifest.json @@ -15,6 +15,6 @@ "iot_class": "local_push", "issue_tracker": "https://github.com/OpenDisplay/Home_Assistant_Integration/issues", "loggers": ["opendisplay"], - "requirements": ["py-opendisplay[silabs-ota]==7.8.0", "odl-renderer==0.5.9"], + "requirements": ["py-opendisplay[silabs-ota]==7.9.0", "odl-renderer==0.5.9"], "version": "3.0.0-beta.5" } From 33b68cc90666b1b8809f6baf59ee6420e7640567 Mon Sep 17 00:00:00 2001 From: gabriel Date: Thu, 18 Jun 2026 23:08:38 +0200 Subject: [PATCH 51/51] chore: bump version to 3.0.0-beta.6 --- custom_components/opendisplay/manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/custom_components/opendisplay/manifest.json b/custom_components/opendisplay/manifest.json index e1180d4..74cd12f 100644 --- a/custom_components/opendisplay/manifest.json +++ b/custom_components/opendisplay/manifest.json @@ -16,5 +16,5 @@ "issue_tracker": "https://github.com/OpenDisplay/Home_Assistant_Integration/issues", "loggers": ["opendisplay"], "requirements": ["py-opendisplay[silabs-ota]==7.9.0", "odl-renderer==0.5.9"], - "version": "3.0.0-beta.5" + "version": "3.0.0-beta.6" }

  • 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