cloudmap 1.0.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- cloudmap/__init__.py +3 -0
- cloudmap/__main__.py +6 -0
- cloudmap/adapters/__init__.py +91 -0
- cloudmap/ask/__init__.py +111 -0
- cloudmap/ask/intent.py +133 -0
- cloudmap/ask/narration.py +54 -0
- cloudmap/ask/queries.py +296 -0
- cloudmap/cli.py +534 -0
- cloudmap/extract/__init__.py +0 -0
- cloudmap/extract/extractors.py +653 -0
- cloudmap/extract/llm.py +89 -0
- cloudmap/graph.py +208 -0
- cloudmap/ingest/__init__.py +0 -0
- cloudmap/ingest/azure.py +380 -0
- cloudmap/ingest/fixture.py +15 -0
- cloudmap/interactive.py +227 -0
- cloudmap/local_model.py +49 -0
- cloudmap/model.py +43 -0
- cloudmap/render/__init__.py +0 -0
- cloudmap/render/azure_icons.py +72 -0
- cloudmap/render/csv_export.py +47 -0
- cloudmap/render/drawio.py +149 -0
- cloudmap/render/html.py +579 -0
- cloudmap/render/json_out.py +52 -0
- cloudmap/render/mermaid.py +25 -0
- cloudmap/scrub.py +300 -0
- cloudmap-1.0.0.dist-info/METADATA +340 -0
- cloudmap-1.0.0.dist-info/RECORD +31 -0
- cloudmap-1.0.0.dist-info/WHEEL +4 -0
- cloudmap-1.0.0.dist-info/entry_points.txt +2 -0
- cloudmap-1.0.0.dist-info/licenses/LICENSE +21 -0
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"""Load resources from a JSON fixture that mirrors `az graph query` output.
|
|
2
|
+
|
|
3
|
+
Accepts either a bare list of resources, or the object shape the CLI returns
|
|
4
|
+
(`{"data": [...]}`), so the same file works for fixtures and captured live data.
|
|
5
|
+
"""
|
|
6
|
+
|
|
7
|
+
import json
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
def load_fixture(path):
|
|
11
|
+
with open(path, encoding="utf-8") as f:
|
|
12
|
+
data = json.load(f)
|
|
13
|
+
if isinstance(data, dict):
|
|
14
|
+
return data.get("data") or data.get("resources") or []
|
|
15
|
+
return data
|
cloudmap/interactive.py
ADDED
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
import json
|
|
2
|
+
import os
|
|
3
|
+
import sys
|
|
4
|
+
|
|
5
|
+
try:
|
|
6
|
+
import questionary
|
|
7
|
+
from questionary import Style
|
|
8
|
+
from rich.console import Console
|
|
9
|
+
from rich.panel import Panel
|
|
10
|
+
except ImportError:
|
|
11
|
+
questionary = None
|
|
12
|
+
|
|
13
|
+
def interactive_main():
|
|
14
|
+
if questionary is None:
|
|
15
|
+
print("Interactive mode requires 'questionary' and 'rich'. Install with: pip install questionary rich", file=sys.stderr)
|
|
16
|
+
return 1
|
|
17
|
+
|
|
18
|
+
from .ingest.azure import _az, _graph_paged
|
|
19
|
+
|
|
20
|
+
console = Console()
|
|
21
|
+
|
|
22
|
+
# Beautiful custom theme for the prompts
|
|
23
|
+
custom_style = Style([
|
|
24
|
+
('qmark', 'fg:#00d7ff bold'), # Token in front of the question
|
|
25
|
+
('question', 'bold'), # Question text
|
|
26
|
+
('answer', 'fg:#00ff00 bold'), # Submitted answer text behind the question
|
|
27
|
+
('pointer', 'fg:#00d7ff bold'), # Pointer used in select and checkbox prompts
|
|
28
|
+
('highlighted', 'fg:#00d7ff bold'), # Pointed-at choice in select and checkbox prompts
|
|
29
|
+
('selected', 'fg:#00d7ff'), # Style for a selected item of a checkbox
|
|
30
|
+
('separator', 'fg:#777777'), # Separator in lists
|
|
31
|
+
('instruction', 'fg:#777777 italic')# User instructions for select, rawselect, checkbox
|
|
32
|
+
])
|
|
33
|
+
|
|
34
|
+
console.print(Panel.fit(
|
|
35
|
+
"[bold cyan]🗺️ CloudMap Interactive Wizard[/bold cyan]\n"
|
|
36
|
+
"[dim]Trace the blast radius of your Azure resources with style.[/dim]",
|
|
37
|
+
border_style="cyan"
|
|
38
|
+
))
|
|
39
|
+
|
|
40
|
+
# 1. Get subscriptions (Optimized query: only enabled, minimal fields)
|
|
41
|
+
with console.status("[bold cyan]Fetching Azure Subscriptions...[/bold cyan]", spinner="dots"):
|
|
42
|
+
try:
|
|
43
|
+
subs_json = _az(["account", "list", "--query", "[?state=='Enabled'].{name:name, id:id, isDefault:isDefault, tenantId:tenantId}", "-o", "json"])
|
|
44
|
+
subs = json.loads(subs_json)
|
|
45
|
+
except Exception as e:
|
|
46
|
+
console.print(f"[bold red]Error:[/bold red] Azure CLI ('az') failed: {e}")
|
|
47
|
+
return 1
|
|
48
|
+
|
|
49
|
+
if not subs:
|
|
50
|
+
console.print("[bold red]No active subscriptions found. Are you logged in? Run 'az login'.[/bold red]")
|
|
51
|
+
return 1
|
|
52
|
+
|
|
53
|
+
# Sort so default is at the top
|
|
54
|
+
subs.sort(key=lambda x: not x.get('isDefault', False))
|
|
55
|
+
|
|
56
|
+
sub_choices = []
|
|
57
|
+
for s in subs:
|
|
58
|
+
default_tag = " [bold green](Default)[/bold green]" if s.get('isDefault') else ""
|
|
59
|
+
sub_choices.append(questionary.Choice(title=f"{s['name']}{default_tag} [dim]{s['id']}[/dim]", value={"id": s['id'], "tenantId": s.get('tenantId')}))
|
|
60
|
+
|
|
61
|
+
chosen_sub = questionary.select(
|
|
62
|
+
"Select an Azure Subscription:",
|
|
63
|
+
choices=sub_choices,
|
|
64
|
+
style=custom_style,
|
|
65
|
+
instruction="(Use arrow keys)"
|
|
66
|
+
).ask()
|
|
67
|
+
|
|
68
|
+
if not chosen_sub:
|
|
69
|
+
return 0
|
|
70
|
+
|
|
71
|
+
sub_id = str(chosen_sub["id"]).strip()
|
|
72
|
+
tenant_id = str(chosen_sub.get("tenantId", "")).strip()
|
|
73
|
+
|
|
74
|
+
# Globally pin the subscription so _graph_paged and _az use it correctly across tenants
|
|
75
|
+
os.environ["CLOUDMAP_ALLOW_SUBSCRIPTION"] = sub_id
|
|
76
|
+
|
|
77
|
+
# 2. Get resources (Optimized ARG query)
|
|
78
|
+
query = """
|
|
79
|
+
Resources
|
|
80
|
+
| where type in (
|
|
81
|
+
'microsoft.web/sites',
|
|
82
|
+
'microsoft.containerservice/managedclusters',
|
|
83
|
+
'microsoft.app/containerapps',
|
|
84
|
+
'microsoft.compute/virtualmachines',
|
|
85
|
+
'microsoft.apimanagement/service',
|
|
86
|
+
'microsoft.sql/servers/databases',
|
|
87
|
+
'microsoft.dbforpostgresql/flexibleservers',
|
|
88
|
+
'microsoft.storage/storageaccounts',
|
|
89
|
+
'microsoft.keyvault/vaults',
|
|
90
|
+
'microsoft.logic/workflows',
|
|
91
|
+
'microsoft.servicebus/namespaces',
|
|
92
|
+
'microsoft.eventhub/namespaces',
|
|
93
|
+
'microsoft.cognitiveservices/accounts',
|
|
94
|
+
'microsoft.machinelearningservices/workspaces',
|
|
95
|
+
'microsoft.search/searchservices',
|
|
96
|
+
'microsoft.documentdb/databaseaccounts',
|
|
97
|
+
'microsoft.cache/redis'
|
|
98
|
+
)
|
|
99
|
+
| project id, name, type, resourceGroup
|
|
100
|
+
| order by name asc
|
|
101
|
+
"""
|
|
102
|
+
query = query.replace('\n', ' ').strip()
|
|
103
|
+
|
|
104
|
+
with console.status("[bold cyan]Scanning for Workloads via Azure Resource Graph...[/bold cyan]", spinner="dots"):
|
|
105
|
+
try:
|
|
106
|
+
data, _ = _graph_paged(query, [sub_id])
|
|
107
|
+
except Exception as e:
|
|
108
|
+
console.print(f"[bold red]Failed to fetch resources from ARG: {e}[/bold red]")
|
|
109
|
+
return 1
|
|
110
|
+
|
|
111
|
+
if not data:
|
|
112
|
+
console.print("[bold yellow]No workloads (Web Apps / AKS / Container Apps) found in this subscription.[/bold yellow]")
|
|
113
|
+
return 0
|
|
114
|
+
|
|
115
|
+
# 2.5 Select Resource Group (Cascading)
|
|
116
|
+
# Ensure resourceGroup is never None for sorting and filtering
|
|
117
|
+
for r in data:
|
|
118
|
+
if not r.get('resourceGroup'):
|
|
119
|
+
r['resourceGroup'] = 'Unknown'
|
|
120
|
+
|
|
121
|
+
unique_rgs = sorted(list(set(r['resourceGroup'] for r in data)))
|
|
122
|
+
rg_choices = [questionary.Choice(title="🌟 [All Resource Groups]", value="ALL")]
|
|
123
|
+
for rg in unique_rgs:
|
|
124
|
+
rg_choices.append(questionary.Choice(title=f"📁 {rg}", value=rg))
|
|
125
|
+
|
|
126
|
+
selected_rg = questionary.select(
|
|
127
|
+
"Select a Resource Group:",
|
|
128
|
+
choices=rg_choices,
|
|
129
|
+
style=custom_style,
|
|
130
|
+
instruction="(Use arrow keys or type to search)"
|
|
131
|
+
).ask()
|
|
132
|
+
|
|
133
|
+
if not selected_rg:
|
|
134
|
+
return 0
|
|
135
|
+
|
|
136
|
+
if selected_rg != "ALL":
|
|
137
|
+
data = [r for r in data if r['resourceGroup'] == selected_rg]
|
|
138
|
+
|
|
139
|
+
# 3. Select Resource
|
|
140
|
+
res_choices = []
|
|
141
|
+
for r in data:
|
|
142
|
+
rtype = r['type'].split('/')[-1]
|
|
143
|
+
icon = "☸️ " if "managedclusters" in r['type'].lower() else ("🌐" if "sites" in r['type'].lower() else "📦")
|
|
144
|
+
# Format: Icon Name (Type) [RG] (only show RG dim if ALL was selected)
|
|
145
|
+
rg_dim = f" [dim]RG: {r['resourceGroup']}[/dim]" if selected_rg == "ALL" else ""
|
|
146
|
+
display = f"{icon} {r['name'].ljust(30)} {rtype.ljust(18)}{rg_dim}"
|
|
147
|
+
res_choices.append(questionary.Choice(title=display, value={"id": r['id'], "name": r['name']}))
|
|
148
|
+
|
|
149
|
+
selected_res = questionary.select(
|
|
150
|
+
"Select a resource to trace:",
|
|
151
|
+
choices=res_choices,
|
|
152
|
+
style=custom_style,
|
|
153
|
+
instruction="(Use arrow keys or type to search)"
|
|
154
|
+
).ask()
|
|
155
|
+
|
|
156
|
+
if not selected_res:
|
|
157
|
+
return 0
|
|
158
|
+
|
|
159
|
+
res_id = selected_res["id"]
|
|
160
|
+
res_name = selected_res["name"]
|
|
161
|
+
|
|
162
|
+
# 3. Enrichment Mode
|
|
163
|
+
enrich = questionary.select(
|
|
164
|
+
"Deep-enrich dependencies? (Parses App Configs & K8s Manifests)",
|
|
165
|
+
choices=[
|
|
166
|
+
questionary.Choice([("class:highlighted", "✦ auto"), ("", " (Deep-enrich the selected resource only - "), ("class:answer", "Fast & Recommended"), ("", ")")], "auto"),
|
|
167
|
+
questionary.Choice([("class:text", "✦ all"), ("", " (Deep-enrich ALL workloads in scope - "), ("class:warning", "Slower"), ("", ")")], "all"),
|
|
168
|
+
questionary.Choice([("class:text", "✦ none"), ("", " (ARM topology only - "), ("class:error", "Misses App Settings"), ("", ")")], "none")
|
|
169
|
+
],
|
|
170
|
+
style=custom_style
|
|
171
|
+
).ask()
|
|
172
|
+
|
|
173
|
+
if not enrich:
|
|
174
|
+
return 0
|
|
175
|
+
|
|
176
|
+
# 3.2 AI Edge Proposals (Phase 3)
|
|
177
|
+
use_llm = questionary.confirm(
|
|
178
|
+
"Use local AI (Ollama) to discover hidden dependencies? (Slower, but finds undocumented links)",
|
|
179
|
+
default=False,
|
|
180
|
+
style=custom_style
|
|
181
|
+
).ask()
|
|
182
|
+
|
|
183
|
+
if use_llm is None: # User aborted with Ctrl+C
|
|
184
|
+
return 0
|
|
185
|
+
|
|
186
|
+
# 3.5 Output Location
|
|
187
|
+
out_location = questionary.select(
|
|
188
|
+
"Where should we save the results folder?",
|
|
189
|
+
choices=[
|
|
190
|
+
questionary.Choice(title="📂 Current directory (./)", value="."),
|
|
191
|
+
questionary.Choice(title="📁 Custom path...", value="CUSTOM")
|
|
192
|
+
],
|
|
193
|
+
style=custom_style
|
|
194
|
+
).ask()
|
|
195
|
+
|
|
196
|
+
if not out_location:
|
|
197
|
+
return 0
|
|
198
|
+
|
|
199
|
+
if out_location == "CUSTOM":
|
|
200
|
+
out_location = questionary.path(
|
|
201
|
+
"Enter output directory path:",
|
|
202
|
+
default="./",
|
|
203
|
+
only_directories=True,
|
|
204
|
+
style=custom_style
|
|
205
|
+
).ask()
|
|
206
|
+
if not out_location:
|
|
207
|
+
return 0
|
|
208
|
+
|
|
209
|
+
target_dir = os.path.join(out_location, res_name)
|
|
210
|
+
|
|
211
|
+
# 4. Generate trace
|
|
212
|
+
console.print(f"\n[bold green]🚀 Launching Trace for [white]{res_name}[/white]...[/bold green]\n")
|
|
213
|
+
|
|
214
|
+
os.environ["CLOUDMAP_ALLOW_SUBSCRIPTION"] = sub_id
|
|
215
|
+
|
|
216
|
+
args = [
|
|
217
|
+
"trace", res_id,
|
|
218
|
+
"--live", "--allow-live",
|
|
219
|
+
"--single-sub",
|
|
220
|
+
"--enrich", enrich,
|
|
221
|
+
"--out-dir", out_location
|
|
222
|
+
]
|
|
223
|
+
if use_llm:
|
|
224
|
+
args.append("--llm")
|
|
225
|
+
|
|
226
|
+
from .cli import main as cli_main
|
|
227
|
+
return cli_main(args)
|
cloudmap/local_model.py
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"""The one place cloudmap talks to a model - and it talks to a LOCAL one.
|
|
2
|
+
|
|
3
|
+
Keeping the transport in a single module is a design promise rather than tidiness:
|
|
4
|
+
there is exactly one outbound call in the whole tool, it points at localhost
|
|
5
|
+
(ollama), and it serves the only two jobs a model is allowed to do here -
|
|
6
|
+
proposing candidate edges that a deterministic rule then verifies, and narrating
|
|
7
|
+
an answer the graph already produced. No resource JSON ever reaches a third party.
|
|
8
|
+
|
|
9
|
+
Every failure returns an empty value instead of raising: cloudmap must stay fully
|
|
10
|
+
useful with no model installed, so "no model" is a normal state, not an error.
|
|
11
|
+
"""
|
|
12
|
+
|
|
13
|
+
import json
|
|
14
|
+
import os
|
|
15
|
+
import urllib.request
|
|
16
|
+
|
|
17
|
+
OLLAMA_URL = os.environ.get("CLOUDMAP_OLLAMA_URL", "http://localhost:11434/api/generate")
|
|
18
|
+
DEFAULT_MODEL = os.environ.get("CLOUDMAP_LLM_MODEL", "qwen2.5-coder:3b")
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
def generate(prompt, model=None, timeout=600, json_format=True):
|
|
22
|
+
"""Ask the local model once. Returns the response text, or "" on any failure
|
|
23
|
+
(ollama absent, not running, timeout, malformed payload)."""
|
|
24
|
+
body = {
|
|
25
|
+
"model": model or DEFAULT_MODEL,
|
|
26
|
+
"prompt": prompt,
|
|
27
|
+
"stream": False,
|
|
28
|
+
"options": {"temperature": 0},
|
|
29
|
+
}
|
|
30
|
+
if json_format:
|
|
31
|
+
body["format"] = "json"
|
|
32
|
+
try:
|
|
33
|
+
req = urllib.request.Request(
|
|
34
|
+
OLLAMA_URL, data=json.dumps(body).encode(),
|
|
35
|
+
headers={"Content-Type": "application/json"})
|
|
36
|
+
resp = json.load(urllib.request.urlopen(req, timeout=timeout))
|
|
37
|
+
except Exception:
|
|
38
|
+
return ""
|
|
39
|
+
return resp.get("response", "") or ""
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
def generate_json(prompt, model=None, timeout=600):
|
|
43
|
+
"""generate() plus a strict JSON parse. Returns {} on any failure, so callers
|
|
44
|
+
never have to distinguish "model down" from "model answered nonsense"."""
|
|
45
|
+
try:
|
|
46
|
+
parsed = json.loads(generate(prompt, model=model, timeout=timeout, json_format=True))
|
|
47
|
+
except Exception:
|
|
48
|
+
return {}
|
|
49
|
+
return parsed if isinstance(parsed, dict) else {}
|
cloudmap/model.py
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"""Core data model: the unified Node / Edge / Graph that every ingestor feeds
|
|
2
|
+
and every renderer reads. Deliberately provider-neutral so a future GCP/AWS
|
|
3
|
+
ingestor could reuse it unchanged."""
|
|
4
|
+
|
|
5
|
+
from dataclasses import dataclass, field
|
|
6
|
+
from typing import Any
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
@dataclass
|
|
10
|
+
class Node:
|
|
11
|
+
id: str # ARM resource id (original casing kept for display)
|
|
12
|
+
name: str
|
|
13
|
+
type: str # lowercased ARM type, e.g. microsoft.web/sites
|
|
14
|
+
resource_group: str = ""
|
|
15
|
+
subscription: str = ""
|
|
16
|
+
location: str = ""
|
|
17
|
+
kind: str = ""
|
|
18
|
+
tags: dict[str, str] = field(default_factory=dict)
|
|
19
|
+
raw: dict[str, Any] = field(default_factory=dict) # original resource (properties, identity)
|
|
20
|
+
external: bool = False # referenced but not verified as an ARM resource in scope
|
|
21
|
+
note: str = "" # how it was discovered / why it's external
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
@dataclass
|
|
25
|
+
class Edge:
|
|
26
|
+
source: str # node id
|
|
27
|
+
target: str # node id
|
|
28
|
+
kind: str # relationship label, e.g. hosted-on, reads-secret
|
|
29
|
+
origin: str = "extracted" # "extracted" = a deterministic rule found proof;
|
|
30
|
+
# "model" = proposed by the LLM (a guess, marked as such)
|
|
31
|
+
evidence: str = "" # WHY this edge exists: the property/setting/rule behind it
|
|
32
|
+
detail: str = ""
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
@dataclass
|
|
36
|
+
class Graph:
|
|
37
|
+
nodes: dict[str, Node] # id -> Node
|
|
38
|
+
edges: list[Edge] # list[Edge]
|
|
39
|
+
distances: dict[str, int] = field(default_factory=dict) # id -> hop distance from seed
|
|
40
|
+
# provenance of the map ITSELF (seed, complete, truncated, read_gaps) as written
|
|
41
|
+
# to the JSON artifact. Carried so a reloaded map stays honest about its limits:
|
|
42
|
+
# a question answered from an incomplete map gets the same warning the map has.
|
|
43
|
+
meta: dict[str, Any] = field(default_factory=dict)
|
|
File without changes
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"""Official Azure service icons, inlined so the HTML viewer stays self-contained.
|
|
2
|
+
|
|
3
|
+
The SVGs are the `azure2` set that draw.io ships (jgraph/drawio, Apache-2.0,
|
|
4
|
+
src/main/webapp/img/lib/azure2/) - the same icons the drawio renderer references
|
|
5
|
+
by path. Here they are EMBEDDED because the HTML viewer's promise is one file,
|
|
6
|
+
openable from disk, fetching nothing. Internal SVG ids are namespaced per icon so
|
|
7
|
+
inlining many icons on one page cannot make their gradients collide. Only the
|
|
8
|
+
icons of the types actually present in a map are written into a given HTML file.
|
|
9
|
+
|
|
10
|
+
Keys are lowercased ARM types, matching Node.type.
|
|
11
|
+
"""
|
|
12
|
+
|
|
13
|
+
# fmt: off
|
|
14
|
+
AZURE_SVG = {
|
|
15
|
+
"microsoft.apimanagement/service":
|
|
16
|
+
'<svg xmlns="http://www.w3.org/2000/svg" id="az0-f78ef37b-fde4-461c-94e2-dccff32dd5d7" width="17" height="15.656073" viewBox="0 0 17 15.656073" version="1.1"><defs id="az0-defs54023"><linearGradient id="az0-bf8a9583-aae9-48ff-87d8-fb8f44e7d6bd" x1="9" y1="16.82" x2="9" y2="1.1799999" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#198ab3" id="az0-stop54005" /><stop offset="0.09" stop-color="#1f9dc4" id="az0-stop54007" /><stop offset="0.24" stop-color="#28b5d9" id="az0-stop54009" /><stop offset="0.4" stop-color="#2dc6e9" id="az0-stop54011" /><stop offset="0.57" stop-color="#31d1f2" id="az0-stop54013" /><stop offset="0.78" stop-color="#32d4f5" id="az0-stop54015" /></linearGradient><linearGradient id="az0-f9b1bb8c-728e-4abf-bce5-6c11ac170c5b" x1="8.3599997" y1="11.35" x2="8.3599997" y2="14.46" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#c69aeb" id="az0-stop54018" /><stop offset="1" stop-color="#6f4bb2" id="az0-stop54020" /></linearGradient></defs><title id="az0-title54025">Icon-web-42</title><path d="M 13.68,4.7110725 A 4.85,4.85 0 0 0 8.73,0.00107249 5,5 0 0 0 3.98,3.2910725 a 4.61,4.61 0 0 0 -3.98,4.53 4.67,4.67 0 0 0 4.79,4.4999995 3,3 0 0 0 0.42,0 h 1.2 a 1.47,1.47 0 0 1 -0.11,-0.56 v 0 a 1.51,1.51 0 0 1 0.2,-0.73 H 5.1 4.79 a 3.41,3.41 0 0 1 -3.52,-3.2099995 3.33,3.33 0 0 1 2.91,-3.27 l 0.76,-0.12 0.25,-0.73 a 3.73,3.73 0 0 1 3.54,-2.43 3.6,3.6 0 0 1 3.68,3.45 v 1.1 l 1.09,0.15 a 2.59,2.59 0 0 1 2.26,2.49 2.63,2.63 0 0 1 -2.62,2.5399995 h -0.15 -0.08 -1 a 3.92,3.92 0 0 0 -3.87,-3.1799995 0.64,0.64 0 1 0 0,1.27 2.65,2.65 0 0 1 0,5.2899995 0.64,0.64 0 1 0 0,1.27 3.92,3.92 0 0 0 3.87,-3.34 h 1.05 a 0.64,0.64 0 0 0 0.2,0 3.91,3.91 0 0 0 3.84,-3.8499995 3.86,3.86 0 0 0 -3.32,-3.75 z" id="az0-path54027" style="fill:url(#az0-bf8a9583-aae9-48ff-87d8-fb8f44e7d6bd)" /><rect x="6.3000002" y="10.171073" width="3.1199999" height="3.1199999" rx="1.54" id="az0-rect54029" style="fill:url(#az0-f9b1bb8c-728e-4abf-bce5-6c11ac170c5b)" /></svg>',
|
|
17
|
+
"microsoft.cache/redis":
|
|
18
|
+
'<svg xmlns="http://www.w3.org/2000/svg" id="az1-a4c0a6df-707e-4ae7-9b86-742e4f9651e0" width="17" height="13.86" viewBox="0 0 17 13.86" version="1.1"><defs id="az1-defs13093"><linearGradient id="az1-ac420e47-f190-46df-ab14-7e1f8fa3a93d" x1="9.5" y1="7.3699999" x2="17.5" y2="7.3699999" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#005ba1" id="az1-stop13060" /><stop offset="0.07" stop-color="#0060a9" id="az1-stop13062" /><stop offset="0.36" stop-color="#0071c8" id="az1-stop13064" /><stop offset="0.52" stop-color="#0078d4" id="az1-stop13066" /><stop offset="1" stop-color="#005ba1" id="az1-stop13068" /></linearGradient><linearGradient id="az1-a51ffd84-af0a-457a-abee-1f70656da56f" x1="0.5" y1="7.3699999" x2="8.5" y2="7.3699999" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#005ba1" id="az1-stop13071" /><stop offset="0.07" stop-color="#0060a9" id="az1-stop13073" /><stop offset="0.36" stop-color="#0071c8" id="az1-stop13075" /><stop offset="0.52" stop-color="#0078d4" id="az1-stop13077" /><stop offset="1" stop-color="#005ba1" id="az1-stop13079" /></linearGradient><linearGradient id="az1-bbb4b87e-b1f0-4042-b6d6-9b91b5dac799" x1="5" y1="11.9" x2="13" y2="11.9" gradientUnits="userSpaceOnUse" gradientTransform="translate(0.5,2.07)"><stop offset="0" stop-color="#005ba1" id="az1-stop13082" /><stop offset="0.07" stop-color="#0060a9" id="az1-stop13084" /><stop offset="0.36" stop-color="#0071c8" id="az1-stop13086" /><stop offset="0.52" stop-color="#0078d4" id="az1-stop13088" /><stop offset="1" stop-color="#005ba1" id="az1-stop13090" /></linearGradient></defs><title id="az1-title13095">Icon-databases-137</title><path d="M 13,2.55 C 10.79,2.55 9,1.98 9,1.27 v 6.79 c 0,0.69 1.76,1.26 3.95,1.27 H 13 c 2.21,0 4,-0.57 4,-1.27 V 1.27 c 0,0.71 -1.79,1.28 -4,1.28 z" id="az1-path13097" style="fill:url(#az1-ac420e47-f190-46df-ab14-7e1f8fa3a93d)" /><path d="M 17,1.27 C 17,1.98 15.21,2.55 13,2.55 10.79,2.55 9,1.98 9,1.27 9,0.56 10.79,0 13,0 c 2.21,0 4,0.57 4,1.27" id="az1-path13099" style="fill:#e8e8e8" /><path d="m 16.07,1.17 c 0,0.45 -1.38,0.81 -3.07,0.81 -1.69,0 -3.07,-0.36 -3.07,-0.81 0,-0.45 1.38,-0.81 3.07,-0.81 1.69,0 3.07,0.36 3.07,0.81" id="az1-path13101" style="fill:#50e6ff" /><path d="M 13,1.36 A 8.65,8.65 0 0 0 10.57,1.66 7.8,7.8 0 0 0 13,1.98 7.8,7.8 0 0 0 15.43,1.66 8.65,8.65 0 0 0 13,1.36 Z" id="az1-path13103" style="fill:#32bedd" /><path d="M 4,2.55 C 1.79,2.55 0,1.98 0,1.27 v 6.79 c 0,0.69 1.76,1.26 4,1.27 v 0 c 2.21,0 4,-0.57 4,-1.27 V 1.27 C 8,1.98 6.21,2.55 4,2.55 Z" id="az1-path13105" style="fill:url(#az1-a51ffd84-af0a-457a-abee-1f70656da56f)" /><path d="M 8,1.27 C 8,1.98 6.21,2.55 4,2.55 1.79,2.55 0,1.98 0,1.27 0,0.56 1.79,0 4,0 6.21,0 8,0.57 8,1.27" id="az1-path13107" style="fill:#e8e8e8" /><path d="M 7.07,1.17 C 7.07,1.62 5.69,1.98 4,1.98 2.31,1.98 0.93,1.62 0.93,1.17 0.93,0.72 2.31,0.36 4,0.36 c 1.69,0 3.07,0.36 3.07,0.81" id="az1-path13109" style="fill:#50e6ff" /><path d="M 4,1.36 A 8.65,8.65 0 0 0 1.57,1.66 7.8,7.8 0 0 0 4,1.98 7.8,7.8 0 0 0 6.43,1.66 8.65,8.65 0 0 0 4,1.36 Z" id="az1-path13111" style="fill:#32bedd" /><g id="az1-g13121" transform="translate(-0.5,-2.07)"><path d="M 9,9.15 C 6.79,9.15 5,8.58 5,7.87 v 6.79 c 0,0.7 1.76,1.26 3.95,1.27 H 9 c 2.21,0 4,-0.57 4,-1.27 V 7.87 c 0,0.71 -1.79,1.28 -4,1.28 z" id="az1-path13113" style="fill:url(#az1-bbb4b87e-b1f0-4042-b6d6-9b91b5dac799)" /><path d="M 13,7.87 C 13,8.58 11.21,9.15 9,9.15 6.79,9.15 5,8.58 5,7.87 5,7.16 6.79,6.6 9,6.6 c 2.21,0 4,0.57 4,1.27" id="az1-path13115" style="fill:#e8e8e8" /><path d="M 12.07,7.77 C 12.07,8.22 10.69,8.58 9,8.58 7.31,8.58 5.93,8.22 5.93,7.77 5.93,7.32 7.31,7 9,7 c 1.69,0 3.07,0.36 3.07,0.81" id="az1-path13117" style="fill:#50e6ff" /><path d="M 9,8 A 8.65,8.65 0 0 0 6.57,8.3 7.8,7.8 0 0 0 9,8.58 7.8,7.8 0 0 0 11.43,8.26 8.65,8.65 0 0 0 9,8 Z" id="az1-path13119" style="fill:#32bedd" /></g></svg>',
|
|
19
|
+
"microsoft.cognitiveservices/accounts":
|
|
20
|
+
'<svg xmlns="http://www.w3.org/2000/svg" id="az2-f78f5115-be88-4d44-b34e-3f6ea743125c" width="18" height="12.770141" viewBox="0 0 18 12.770141" version="1.1"><defs id="az2-defs5095"><linearGradient id="az2-b6c43bd9-e37f-4191-93c2-d3a7a84c505e" x1="9" y1="19.129999" x2="9" y2="-0.28999999" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#0078d4" id="az2-stop5084" /><stop offset="0.16" stop-color="#1380da" id="az2-stop5086" /><stop offset="0.53" stop-color="#3c91e5" id="az2-stop5088" /><stop offset="0.82" stop-color="#559cec" id="az2-stop5090" /><stop offset="1" stop-color="#5ea0ef" id="az2-stop5092" /></linearGradient></defs><title id="az2-title5097">Icon-machinelearning-162</title><path d="m 18,8.7623452 a 4,4 0 0 0 -3.51,-3.88 5.1,5.1 0 0 0 -5.25,-4.88 5.25,5.25 0 0 0 -5.02,3.38 4.8,4.8 0 0 0 -4.22,4.67 4.9,4.9 0 0 0 5.07,4.7099998 h 0.44 8.21 a 0.78,0.78 0 0 0 0.22,0 A 4.1,4.1 0 0 0 18,8.7623452 Z" id="az2-path5099" style="fill:url(#az2-b6c43bd9-e37f-4191-93c2-d3a7a84c505e)" /><path d="M 5.42,7.7723452 H 4.54 a 1.09,1.09 0 1 0 0,0.49 h 0.88 a 0.2,0.2 0 0 1 0.2,0.2 V 12.762345 H 6.11 V 8.4623452 a 0.69,0.69 0 0 0 -0.69,-0.69 z m -1.95,0.88 a 0.64,0.64 0 1 1 0.64,-0.64 0.64,0.64 0 0 1 -0.64,0.64 z" id="az2-path5101" style="fill:#9cebff" /><path d="m 8.94,7.9923452 v -1 a 0.7,0.7 0 0 0 -0.7,-0.7 H 6.69 a 0.2,0.2 0 0 1 -0.2,-0.2 v -5.31 l -0.23,0.12 -0.26,0.14 v 5 a 0.69,0.69 0 0 0 0.69,0.69 h 1.55 a 0.21,0.21 0 0 1 0.21,0.21 v 1 a 1.08,1.08 0 0 0 -0.85,1.06 1.09,1.09 0 1 0 1.34,-1.06 z m -0.25,1.7 v 0 a 0.64,0.64 0 1 1 0.64,-0.64 0.64,0.64 0 0 1 -0.64,0.64 z" id="az2-path5103" style="fill:#f2f2f2" /><path d="m 14.53,5.8823452 a 1.09,1.09 0 0 0 -0.25,2.15 v 0.2 a 0.21,0.21 0 0 1 -0.21,0.21 h -2 v -3.52 a 0.69,0.69 0 0 0 -0.69,-0.69 h -1.03 a 1.08,1.08 0 0 0 -1.06,-0.85 1.09,1.09 0 1 0 1.06,1.34 h 1.07 a 0.2,0.2 0 0 1 0.2,0.2 v 7.8399998 h 0.49 V 8.9323452 h 2 a 0.7,0.7 0 0 0 0.7,-0.7 v -0.2 a 1.09,1.09 0 0 0 0.85,-1.06 v 0 a 1.09,1.09 0 0 0 -1.13,-1.09 z m -5.24,-0.77 v 0 a 0.64,0.64 0 1 1 0.64,-0.64 0.64,0.64 0 0 1 -0.64,0.64 z m 5.24,2.5 v 0 a 0.64,0.64 0 1 1 0.63,-0.64 0.64,0.64 0 0 1 -0.63,0.64 z" id="az2-path5105" style="fill:#9cebff" /></svg>',
|
|
21
|
+
"microsoft.containerregistry/registries":
|
|
22
|
+
'<svg xmlns="http://www.w3.org/2000/svg" id="az3-e9f7ba73-56b8-4864-96ff-dce80bef729a" width="17.99" height="16.123848" viewBox="0 0 17.99 16.123848" version="1.1"><defs id="az3-defs10724"><linearGradient id="az3-bdf27dc6-025c-4805-8bfd-3a05defd3fbd" x1="8.6370001" y1="-1.9910001" x2="8.6370001" y2="16.739" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#5ea0ef" id="az3-stop10714" /><stop offset="1" stop-color="#0078d4" id="az3-stop10716" /></linearGradient><linearGradient id="az3-fcd6c6c7-e2eb-4a32-b914-3a8485585a1b" x1="12.96" y1="8.5609999" x2="12.96" y2="6.1409998" gradientTransform="matrix(1,0,0,-1,0,21.616153)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#333132" id="az3-stop10719" /><stop offset="1" stop-color="#5b5a5c" id="az3-stop10721" /></linearGradient></defs><path d="m 7.43,6.5618471 2.589,-1.573 7.255,2.731 a 3.664,3.664 0 0 0 -1.044,-1.846 l -0.01,-0.05 A 4.194,4.194 0 0 0 14,4.7038471 4.91,4.91 0 0 0 8.9,0.00384713 5.071,5.071 0 0 0 4.06,3.2938471 4.621,4.621 0 0 0 0,7.7738471 4.73,4.73 0 0 0 4.89,12.313847 h 2.54 z" id="az3-path10726" style="fill:url(#az3-bdf27dc6-025c-4805-8bfd-3a05defd3fbd)" /><polygon points="17.99,13.119 17.99,10.139 10.07,7.159 10.08,11.439 " id="az3-polygon10728" style="fill:#767676" transform="translate(0,-1.6161529)" /><polyline points="10.07 7.159 7.93 8.459 7.93 12.439 10.08 11.439" id="az3-polyline10730" style="fill:#999999" transform="translate(0,-1.6161529)" /><polygon points="14.4,9.369 13.68,9.119 13.68,11.499 14.4,11.699 " id="az3-polygon10732" style="fill:#a3a3a3" transform="translate(0,-1.6161529)" /><polygon points="12.24,11.119 12.96,11.319 12.96,8.889 12.24,8.629 " id="az3-polygon10734" style="fill:#a3a3a3" transform="translate(0,-1.6161529)" /><polygon points="15.84,9.859 15.12,9.619 15.12,11.889 15.82,12.079 " id="az3-polygon10736" style="fill:#a3a3a3" transform="translate(0,-1.6161529)" /><polygon points="11.53,8.399 10.81,8.159 10.81,10.749 11.53,10.929 " id="az3-polygon10738" style="fill:#a3a3a3" transform="translate(0,-1.6161529)" /><polygon points="16.55,12.269 17.27,12.469 17.27,10.349 16.55,10.099 " id="az3-polygon10740" style="fill:#a3a3a3" transform="translate(0,-1.6161529)" /><path id="az3-ef0d1b54-a1e7-4cb9-a4e5-8a8518e7c127" d="m 8.66,9.7528471 -0.36,0.21 v -2.83 l 0.36,-0.19 z m 0.71,-3.22 -0.37,0.24 v 2.75 l 0.37,-0.2 z" style="fill:#b3b3b3" /><polygon points="7.93,12.439 10.08,11.439 17.99,13.119 15.83,13.859 " id="az3-polygon10743" style="fill:url(#az3-fcd6c6c7-e2eb-4a32-b914-3a8485585a1b)" transform="translate(0,-1.6161529)" /><polygon points="10.08,12.089 17.99,13.559 17.99,16.169 10.04,17.679 " id="az3-polygon10745" style="fill:#767676" transform="translate(0,-1.6161529)" /><polygon points="11.53,13.299 11.53,16.639 10.81,16.759 10.81,13.209 " id="az3-polygon10747" style="fill:#a3a3a3" transform="translate(0,-1.6161529)" /><polygon points="12.24,13.389 12.96,13.499 12.96,16.399 12.24,16.529 " id="az3-polygon10749" style="fill:#a3a3a3" transform="translate(0,-1.6161529)" /><polygon points="14.4,13.659 14.4,16.159 13.68,16.289 13.68,13.569 " id="az3-polygon10751" style="fill:#a3a3a3" transform="translate(0,-1.6161529)" /><polygon points="15.12,13.749 15.83,13.859 15.83,15.909 15.12,16.039 " id="az3-polygon10753" style="fill:#a3a3a3" transform="translate(0,-1.6161529)" /><polygon points="16.55,13.929 17.24,14.019 17.29,15.679 16.55,15.809 " id="az3-polygon10755" style="fill:#a3a3a3" transform="translate(0,-1.6161529)" /><path id="az3-b9f25eb4-4c88-45c2-bc4d-f992757d7e0e" d="m 7.93,14.783847 v -3.26 l 2.16,-1 v 5.6 z" style="fill:#999999" /><path id="az3-eb9200a7-4693-4427-bdae-b33ce90ff7f2" d="m 8.61,14.772847 -0.32,-0.16 v -2.76 l 0.32,-0.15 z m 0.77,-3.45 -0.38,0.19 v 3.48 l 0.37,0.19 v -3.86 z" style="fill:#b3b3b3" /></svg>',
|
|
23
|
+
"microsoft.containerservice/managedclusters":
|
|
24
|
+
'<svg xmlns="http://www.w3.org/2000/svg" id="az4-af6a2c42-bd48-4857-a479-aecf8b3de4f6" width="18.08" height="15.9" viewBox="0 0 18.08 15.9" version="1.1"><defs id="az4-defs7900"><linearGradient id="az4-b70c9cf1-bab8-47e0-bbdb-ce1cd664d268" x1="2.9400001" y1="3.74" x2="8.6700001" y2="3.74" gradientUnits="userSpaceOnUse" gradientTransform="translate(0,1.22)"><stop offset="0" stop-color="#b77af4" id="az4-stop7865" /><stop offset="1" stop-color="#773adc" id="az4-stop7867" /></linearGradient><linearGradient id="az4-beb69953-bd96-4515-8843-ac12546af936" x1="9.1300001" y1="3.79" x2="14.85" y2="3.79" gradientUnits="userSpaceOnUse" gradientTransform="translate(0,1.22)"><stop offset="0" stop-color="#b77af4" id="az4-stop7870" /><stop offset="1" stop-color="#773adc" id="az4-stop7872" /></linearGradient><linearGradient id="az4-a39c76e8-547e-4eb4-bc25-d81c0f8cda62" x1="0.0099999998" y1="9.1199999" x2="5.73" y2="9.1199999" gradientUnits="userSpaceOnUse" gradientTransform="translate(0,1.22)"><stop offset="0" stop-color="#b77af4" id="az4-stop7875" /><stop offset="1" stop-color="#773adc" id="az4-stop7877" /></linearGradient><linearGradient id="az4-f0a2a491-17dc-4bb8-bbfc-ee58a5cf47da" x1="6.1799998" y1="9.0799999" x2="11.9" y2="9.0799999" gradientUnits="userSpaceOnUse" gradientTransform="translate(0,1.22)"><stop offset="0" stop-color="#b77af4" id="az4-stop7880" /><stop offset="1" stop-color="#773adc" id="az4-stop7882" /></linearGradient><linearGradient id="az4-efc6a56d-8585-417d-931a-1dac2114ccd0" x1="12.35" y1="9.1300001" x2="18.08" y2="9.1300001" gradientUnits="userSpaceOnUse" gradientTransform="translate(0,1.22)"><stop offset="0" stop-color="#b77af4" id="az4-stop7885" /><stop offset="1" stop-color="#773adc" id="az4-stop7887" /></linearGradient><linearGradient id="az4-e399aa93-341f-4df2-9c02-603b82b484c2" x1="2.8699999" y1="14.56" x2="8.6000004" y2="14.56" gradientUnits="userSpaceOnUse" gradientTransform="translate(0,1.22)"><stop offset="0" stop-color="#b77af4" id="az4-stop7890" /><stop offset="1" stop-color="#773adc" id="az4-stop7892" /></linearGradient><linearGradient id="az4-a152bba0-ba2b-483a-b8c1-0ae7de355990" x1="9.0500002" y1="14.6" x2="14.78" y2="14.6" gradientUnits="userSpaceOnUse" gradientTransform="translate(0,1.22)"><stop offset="0" stop-color="#b77af4" id="az4-stop7895" /><stop offset="1" stop-color="#773adc" id="az4-stop7897" /></linearGradient></defs><title id="az4-title7902">Icon-compute-23</title><polygon points="2.94,5.65 5.8,6.26 8.67,5.11 8.67,2.2 5.8,1.22 2.94,1.75 " id="az4-polygon7904" style="fill:url(#az4-b70c9cf1-bab8-47e0-bbdb-ce1cd664d268)" transform="translate(0,-1.22)" /><path d="M 5.91,4.98 8.53,3.92 A 0.2,0.2 0 0 0 8.65,3.78 V 1.14 A 0.21,0.21 0 0 0 8.52,0.96 L 5.87,0.06 H 5.75 L 3.15,0.54 A 0.2,0.2 0 0 0 3,0.72 V 4.25 A 0.19,0.19 0 0 0 3.15,4.44 L 5.78,4.99 A 0.32,0.32 0 0 0 5.91,4.98 Z" id="az4-path7906" style="fill:none" /><path d="m 2.94,0.53 v 3.9 l 2.89,0.61 v -5 z M 4.16,4.13 3.35,3.97 v -3 L 4.16,0.84 Z M 5.42,4.36 4.49,4.21 V 0.78 L 5.42,0.62 Z" id="az4-path7908" style="fill:#341a6e" /><polygon points="9.13,5.7 11.99,6.31 14.85,5.15 14.85,2.25 11.99,1.27 9.13,1.8 " id="az4-polygon7910" style="fill:url(#az4-beb69953-bd96-4515-8843-ac12546af936)" transform="translate(0,-1.22)" /><path d="m 9.13,0.58 v 3.9 L 12,5.09 v -5 z m 1.21,3.6 -0.81,-0.16 v -3 L 10.34,0.89 Z M 11.6,4.41 10.67,4.26 V 0.83 L 11.6,0.66 Z" id="az4-path7912" style="fill:#341a6e" /><polygon points="0.01,11.03 2.87,11.64 5.74,10.49 5.74,7.58 2.87,6.6 0.01,7.13 " id="az4-polygon7914" style="fill:url(#az4-a39c76e8-547e-4eb4-bc25-d81c0f8cda62)" transform="translate(0,-1.22)" /><path d="m 0,5.91 v 3.87 l 2.89,0.61 v -5 z M 1.21,9.52 0.4,9.35 v -3 L 1.21,6.21 Z M 2.48,9.78 1.55,9.63 V 6.16 L 2.48,6 Z" id="az4-path7916" style="fill:#341a6e" /><polygon points="6.18,10.99 9.04,11.61 11.9,10.45 11.9,7.54 9.04,6.56 6.18,7.09 " id="az4-polygon7918" style="fill:url(#az4-f0a2a491-17dc-4bb8-bbfc-ee58a5cf47da)" transform="translate(0,-1.22)" /><path d="m 6.18,5.87 v 3.91 l 2.88,0.61 v -5 z M 7.39,9.48 6.58,9.31 v -3 L 7.39,6.17 Z M 8.65,9.7 7.72,9.55 V 6.12 L 8.65,5.96 Z" id="az4-path7920" style="fill:#341a6e" /><polygon points="12.35,11.04 15.21,11.65 18.08,10.5 18.08,7.59 15.21,6.61 12.35,7.14 " id="az4-polygon7922" style="fill:url(#az4-efc6a56d-8585-417d-931a-1dac2114ccd0)" transform="translate(0,-1.22)" /><path d="m 12.35,5.92 v 3.86 l 2.89,0.61 v -5 z m 1.22,3.61 -0.81,-0.17 v -3 L 13.57,6.22 Z M 14.83,9.75 13.9,9.6 V 6.17 l 0.93,-0.16 z" id="az4-path7924" style="fill:#341a6e" /><polygon points="2.87,16.46 5.73,17.08 8.6,15.92 8.6,13.02 5.73,12.04 2.87,12.56 " id="az4-polygon7926" style="fill:url(#az4-e399aa93-341f-4df2-9c02-603b82b484c2)" transform="translate(0,-1.22)" /><path d="m 5.84,15.78 2.61,-1 A 0.18,0.18 0 0 0 8.57,14.6 V 12 A 0.2,0.2 0 0 0 8.44,11.78 L 5.8,10.88 a 0.17,0.17 0 0 0 -0.12,0 l -2.6,0.47 a 0.19,0.19 0 0 0 -0.16,0.19 v 3.54 a 0.19,0.19 0 0 0 0.15,0.19 l 2.63,0.51 a 0.23,0.23 0 0 0 0.14,0 z" id="az4-path7928" style="fill:none" /><path d="m 2.87,11.34 v 3.9 l 2.89,0.62 v -5.08 z m 1.22,3.61 -0.81,-0.17 v -3 l 0.81,-0.14 z m 1.26,0.23 -0.93,-0.15 v -3.44 l 0.93,-0.16 z" id="az4-path7930" style="fill:#341a6e" /><polygon points="9.05,16.51 11.91,17.12 14.78,15.97 14.78,13.06 11.91,12.08 9.05,12.61 " id="az4-polygon7932" style="fill:url(#az4-a152bba0-ba2b-483a-b8c1-0ae7de355990)" transform="translate(0,-1.22)" /><path d="m 9.05,11.39 v 3.9 l 2.89,0.61 v -5 z M 10.27,15 9.46,14.83 v -3 l 0.81,-0.14 z m 1.26,0.22 -0.93,-0.15 v -3.43 l 0.93,-0.16 z" id="az4-path7934" style="fill:#341a6e" /></svg>',
|
|
25
|
+
"microsoft.dbformysql/flexibleservers":
|
|
26
|
+
'<svg xmlns="http://www.w3.org/2000/svg" id="az5-e05c9575-4c38-4bcd-90eb-276caf26e3d0" width="12.82" height="17" viewBox="0 0 12.82 17" version="1.1"><defs id="az5-defs11941"><linearGradient id="az5-e291aba6-8038-4db1-a04d-c7be74f5a3e6" x1="2.5899999" y1="10.16" x2="15.41" y2="10.16" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#005ba1" id="az5-stop11926" /><stop offset="0.07" stop-color="#0060a9" id="az5-stop11928" /><stop offset="0.36" stop-color="#0071c8" id="az5-stop11930" /><stop offset="0.52" stop-color="#0078d4" id="az5-stop11932" /><stop offset="0.64" stop-color="#0074cd" id="az5-stop11934" /><stop offset="0.82" stop-color="#006abb" id="az5-stop11936" /><stop offset="1" stop-color="#005ba1" id="az5-stop11938" /></linearGradient></defs><title id="az5-title11943">Icon-databases-122</title><path d="M 6.41,4.64 C 2.87,4.64 0,3.64 0,2.32 v 12.36 c 0,1.27 2.82,2.3 6.32,2.32 h 0.09 c 3.54,0 6.41,-1 6.41,-2.32 V 2.32 c 0,1.29 -2.87,2.32 -6.41,2.32 z" id="az5-path11945" style="fill:url(#az5-e291aba6-8038-4db1-a04d-c7be74f5a3e6)" /><path d="M 12.82,2.32 C 12.82,3.61 9.95,4.64 6.41,4.64 2.87,4.64 0,3.64 0,2.32 0,1 2.87,0 6.41,0 c 3.54,0 6.41,1 6.41,2.32" id="az5-path11947" style="fill:#e8e8e8" /><path d="m 11.33,2.13 c 0,0.82 -2.21,1.48 -4.92,1.48 -2.71,0 -4.92,-0.66 -4.92,-1.48 0,-0.82 2.21,-1.47 4.92,-1.47 2.71,0 4.92,0.66 4.92,1.47" id="az5-path11949" style="fill:#50e6ff" /><path d="M 6.41,2.5 A 11.55,11.55 0 0 0 2.52,3.07 11.42,11.42 0 0 0 6.41,3.61 11.15,11.15 0 0 0 10.3,3.03 11.84,11.84 0 0 0 6.41,2.5 Z" id="az5-path11951" style="fill:#198ab3" /><path d="m 10.05,8.5 v 1.63 h -1 A 0.39,0.39 0 0 1 8.76,9.99 V 8.5 H 7.41 v 1.78 a 0.92,0.92 0 0 0 1,0.89 H 9.9 l 0.26,-0.13 c 0,0 -0.11,0.41 -0.26,0.43 H 7.52 v 1 h 2.66 A 1.21,1.21 0 0 0 11.41,11.2 V 8.5 Z" id="az5-path11953" style="fill:#f2f2f2" /><path d="m 6.94,8.5 c 0,0 0,0 0,0 V 8.01 A 0.7,0.7 0 0 0 6.46,7.24 1.74,1.74 0 0 0 5.96,7.16 0.94,0.94 0 0 0 5.05,7.74 l -0.78,1.9 -1,-1.9 A 0.93,0.93 0 0 0 2.41,7.16 1.44,1.44 0 0 0 1.9,7.25 C 1.55,7.36 1.47,7.59 1.47,7.98 v 3.31 H 2.64 V 9.06 l 0.63,1.57 a 1.08,1.08 0 0 0 1,0.66 c 0.44,0 0.62,-0.26 0.8,-0.66 L 5.74,9.12 v 2.15 h 1.18 v -2.77 0 z" id="az5-path11955" style="fill:#f2f2f2" /></svg>',
|
|
27
|
+
"microsoft.dbforpostgresql/flexibleservers":
|
|
28
|
+
'<svg xmlns="http://www.w3.org/2000/svg" id="az6-fc890127-728b-4ac0-b5da-86cdfc191e86" width="12.82" height="17" viewBox="0 0 12.82 17" version="1.1"><defs id="az6-defs12110"><linearGradient id="az6-a28dee20-4c71-46b5-b957-804c67da725a" x1="2.4400001" y1="10.67" x2="15.27" y2="10.67" gradientTransform="rotate(-0.01,-2864.719,-802.36945)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#005ba1" id="az6-stop12095" /><stop offset="0.07" stop-color="#0060a9" id="az6-stop12097" /><stop offset="0.36" stop-color="#0071c8" id="az6-stop12099" /><stop offset="0.52" stop-color="#0078d4" id="az6-stop12101" /><stop offset="0.64" stop-color="#0074cd" id="az6-stop12103" /><stop offset="0.82" stop-color="#006abb" id="az6-stop12105" /><stop offset="1" stop-color="#005ba1" id="az6-stop12107" /></linearGradient></defs><title id="az6-title12112">Icon-databases-131</title><path d="M 6.41,4.64 C 2.87,4.64 0,3.64 0,2.32 v 12.36 c 0,1.27 2.82,2.3 6.32,2.32 h 0.09 c 3.54,0 6.41,-1 6.41,-2.32 V 2.32 c 0,1.28 -2.87,2.32 -6.41,2.32 z" id="az6-path12114" style="fill:url(#az6-a28dee20-4c71-46b5-b957-804c67da725a)" /><path d="M 12.82,2.32 C 12.82,3.6 9.95,4.64 6.41,4.64 2.87,4.64 0,3.64 0,2.32 0,1 2.87,0 6.41,0 c 3.54,0 6.41,1 6.41,2.32" id="az6-path12116" style="fill:#e8e8e8" /><path d="m 11.32,2.13 c 0,0.82 -2.2,1.48 -4.91,1.48 -2.71,0 -4.92,-0.66 -4.92,-1.47 0,-0.81 2.2,-1.48 4.92,-1.48 2.72,0 4.91,0.66 4.91,1.47" id="az6-path12118" style="fill:#50e6ff" /><path d="M 6.41,2.5 A 11.65,11.65 0 0 0 2.51,3.07 11.53,11.53 0 0 0 6.41,3.61 11.47,11.47 0 0 0 10.3,3.03 11.93,11.93 0 0 0 6.41,2.5 Z" id="az6-path12120" style="fill:#198ab3" /><path d="m 9.41,8.5 c 0,0.08 0,0.24 0,0.42 A 5.12,5.12 0 0 0 9.33,9.55 c 0,0.12 0,0.3 0.05,0.46 0.05,0.16 0,0.27 0,0.36 a 1.68,1.68 0 0 1 -0.25,0.86 0.43,0.43 0 0 0 0,0.07 l 0.1,0.12 a 10.55,10.55 0 0 0 1.06,-2.38 v 0 C 10.57,8.09 10.6,7.41 10.38,7.12 A 2.58,2.58 0 0 0 7.7,6.26 3.29,3.29 0 0 1 8.61,6.93 2.28,2.28 0 0 1 9.41,8.5 Z M 9.1,8.58 A 1.15,1.15 0 0 0 8.31,8.67 c -0.29,0.18 -0.2,0.55 0,1 a 7.77,7.77 0 0 0 0.35,0.85 l 0.09,0.16 v 0 c 0.05,0.08 0.08,0.15 0.11,0.2 l 0.08,0.13 a 1.28,1.28 0 0 0 0.18,-0.65 2.86,2.86 0 0 0 0,-0.33 c 0,-0.17 0,-0.36 -0.05,-0.49 A 6.1,6.1 0 0 1 9.15,8.85 C 9.12,8.74 9.13,8.63 9.14,8.55 Z M 8.8,8.99 a 0.4,0.4 0 0 1 -0.18,0.1 v 0 A 0.33,0.33 0 0 1 8.48,9.09 0.23,0.23 0 0 1 8.41,8.9 v 0 c 0,-0.07 0.11,-0.13 0.24,-0.15 h 0.19 c 0,0 0.09,0 0.09,0.08 A 0.2,0.2 0 0 1 8.84,8.96 Z M 4.11,9.88 c 0,-0.07 0,-0.13 0,-0.17 a 1,1 0 0 0 0,-0.17 5.55,5.55 0 0 1 0,-1 5.22,5.22 0 0 1 0.3,-1.1 A 2.41,2.41 0 0 1 4.99,6.5 4.78,4.78 0 0 0 3.64,6.3 1.87,1.87 0 0 0 2.54,6.6 2,2 0 0 0 1.91,8.42 a 12.27,12.27 0 0 0 0.5,2.24 c 0.34,1.14 0.73,1.84 1.07,1.95 v 0 c 0.15,0.05 0.31,0 0.47,-0.21 0.28,-0.34 0.54,-0.63 0.69,-0.8 A 1.88,1.88 0 0 1 4.15,9.85 Z m 0.26,0.4 a 2.18,2.18 0 0 0 0.06,0.56 1.5,1.5 0 0 0 0.26,0.44 1.07,1.07 0 0 0 0.35,0.25 1.09,1.09 0 0 0 0.39,0.08 c 0,-0.17 0.14,-0.38 0.23,-0.6 a 4.35,4.35 0 0 0 0.21,-0.59 6.61,6.61 0 0 0 0,-1.11 c 0,-0.09 0,-0.19 -0.06,-0.3 A 0.45,0.45 0 0 0 5.69,8.74 v 0 A 0.66,0.66 0 0 0 5.41,8.58 H 5.21 A 1.56,1.56 0 0 0 4.73,8.72 2,2 0 0 0 4.41,8.91 v 0.11 c 0,0.2 0,0.41 0,0.61 v 0 a 0.86,0.86 0 0 1 0,0.15 v 0.39 0 z M 5.03,8.94 v 0 a 0.46,0.46 0 0 1 0.28,0 A 0.6,0.6 0 0 1 5.5,9 c 0.09,0 0.1,0.11 0.09,0.14 v 0 A 0.37,0.37 0 0 1 5.47,9.27 0.3,0.3 0 0 1 5.41,9.23 v 0 A 0.34,0.34 0 0 1 5.13,8.95 Z m 0.74,3 A 0.23,0.23 0 0 0 5.64,12 L 5.5,12.17 c -0.17,0.21 -0.24,0.28 -0.73,0.38 a 0.52,0.52 0 0 0 -0.26,0.1 0.58,0.58 0 0 0 0.24,0.11 1.18,1.18 0 0 0 0.72,0 1.7,1.7 0 0 0 0.39,-0.26 0.61,0.61 0 0 0 0.2,-0.31 0.36,0.36 0 0 0 -0.1,-0.28 0.15,0.15 0 0 0 -0.15,-0.02 z m 4.61,0 a 1.63,1.63 0 0 1 -1.13,0 0.22,0.22 0 0 0 -0.14,0 0.3,0.3 0 0 0 -0.17,0.14 1.09,1.09 0 0 0 0,0.31 1.8,1.8 0 0 0 1.1,-0.1 1.36,1.36 0 0 0 0.48,-0.34 z M 7.98,9.8 C 7.84,9.39 7.64,8.8 8.16,8.44 A 1.35,1.35 0 0 1 9.05,8.29 3.18,3.18 0 0 0 8.41,7.14 L 8.31,7.04 8.25,6.98 v 0 A 0.34,0.34 0 0 0 8.19,6.92 v 0 0 A 2.34,2.34 0 0 0 7.52,6.5 2.63,2.63 0 0 0 6.41,6.28 1.52,1.52 0 0 0 5.71,6.39 1.77,1.77 0 0 0 5.41,6.5 a 2.1,2.1 0 0 0 -0.74,1 5.84,5.84 0 0 0 -0.21,1 1.66,1.66 0 0 1 1,-0.23 0.84,0.84 0 0 1 0.77,0.91 7.26,7.26 0 0 1 0,1.27 A 3.87,3.87 0 0 1 6,11.08 c -0.06,0.17 -0.14,0.35 -0.18,0.49 a 0.5,0.5 0 0 1 0.38,0.14 0.66,0.66 0 0 1 0.19,0.53 h 0.02 c 0,0.08 0,0.16 0,0.24 a 6.55,6.55 0 0 0 0.24,2.44 0.54,0.54 0 0 0 0.24,0.21 0.6,0.6 0 0 0 0.31,0.1 1.3,1.3 0 0 0 1,-0.34 1.05,1.05 0 0 0 0.29,-0.66 c 0.07,-0.45 0.22,-1.7 0.24,-2 v 0 A 0.72,0.72 0 0 1 8.82,11.79 0.63,0.63 0 0 1 9.09,11.55 5.36,5.36 0 0 1 8.02,9.74 Z" id="az6-path12122" style="fill:#f2f2f2" /></svg>',
|
|
29
|
+
"microsoft.documentdb/databaseaccounts":
|
|
30
|
+
'<svg xmlns="http://www.w3.org/2000/svg" id="az7-b089cfca-0de1-451c-a1ca-6680ea50cb4f" width="16.999975" height="16.912003" viewBox="0 0 16.999975 16.912003" version="1.1"><defs id="az7-defs11436"><radialGradient id="az7-b25d0836-964a-4c84-8c20-855f66e8345e" cx="-105.006" cy="-10.409" r="5.954" gradientTransform="matrix(1.036,0,0,1.027,118.23902,20.187997)" gradientUnits="userSpaceOnUse"><stop offset="0.183" stop-color="#5ea0ef" id="az7-stop11428" /><stop offset="1" stop-color="#0078d4" id="az7-stop11430" /></radialGradient><clipPath id="az7-b36c7f5d-2ef1-4760-8a25-eeb9661f4e47"><path d="M 14.969,7.53 A 6.137,6.137 0 1 1 7.574,2.987 6.137,6.137 0 0 1 14.969,7.53 Z" id="az7-path11433" style="fill:none" /></clipPath></defs><title id="az7-title11438">Icon-databases-121</title><path d="m 2.4539754,4.7220029 a 0.175,0.175 0 0 1 -0.176,-0.176 v 0 a 2.012,2.012 0 0 0 -2.00900002,-2.009 0.176,0.176 0 0 1 -0.176,-0.175 v 0 a 0.176,0.176 0 0 1 0.176,-0.176 2.012,2.012 0 0 0 2.00900002,-2.01000003 0.175,0.175 0 0 1 0.176,-0.1759999963893 v 0 A 0.175,0.175 0 0 1 2.6299754,0.17600287 v 0 a 2.012,2.012 0 0 0 2.009,2.00900003 0.175,0.175 0 0 1 0.176,0.176 v 0 a 0.175,0.175 0 0 1 -0.176,0.176 v 0 a 2.011,2.011 0 0 0 -2.009,2.009 0.177,0.177 0 0 1 -0.176,0.176 z" id="az7-path11440" style="fill:#50e6ff" /><path d="m 15.110975,16.912003 a 0.141,0.141 0 0 1 -0.141,-0.141 v 0 a 1.609,1.609 0 0 0 -1.607,-1.607 0.141,0.141 0 0 1 -0.141,-0.14 v 0 a 0.141,0.141 0 0 1 0.141,-0.141 v 0 a 1.608,1.608 0 0 0 1.607,-1.607 0.141,0.141 0 0 1 0.141,-0.141 v 0 a 0.141,0.141 0 0 1 0.141,0.141 v 0 a 1.608,1.608 0 0 0 1.607,1.607 0.141,0.141 0 1 1 0,0.282 v 0 a 1.609,1.609 0 0 0 -1.607,1.607 0.141,0.141 0 0 1 -0.141,0.14 z" id="az7-path11442" style="fill:#50e6ff" /><g id="az7-g11452" transform="translate(-0.50002462,-0.54399713)"><path d="M 14.969,7.53 A 6.137,6.137 0 1 1 7.574,2.987 6.137,6.137 0 0 1 14.969,7.53 Z" id="az7-path11444" style="fill:url(#az7-b25d0836-964a-4c84-8c20-855f66e8345e)" /><g clip-path="url(#az7-b36c7f5d-2ef1-4760-8a25-eeb9661f4e47)" id="az7-g11450"><path d="M 5.709,13.115 A 1.638,1.638 0 1 0 5.714,9.84 1.307,1.307 0 0 0 5.721,9.7 1.651,1.651 0 0 0 4.06,8.064 H 2.832 a 6.251,6.251 0 0 0 1.595,5.051 z" id="az7-path11446" style="fill:#f2f2f2" /><path d="m 15.045,7.815 c 0,-0.015 0,-0.03 -0.007,-0.044 a 5.978,5.978 0 0 0 -1.406,-2.88 1.825,1.825 0 0 0 -0.289,-0.09 1.806,1.806 0 0 0 -2.3,1.663 2,2 0 0 0 -0.2,-0.013 1.737,1.737 0 0 0 -0.581,3.374 1.451,1.451 0 0 0 0.541,0.1 h 2.03 a 13.453,13.453 0 0 0 2.212,-2.11 z" id="az7-path11448" style="fill:#f2f2f2" /></g></g><path d="m 16.690975,3.2880029 c -0.629,-1.047 -2.1,-1.455 -4.155,-1.149 a 14.606,14.606 0 0 0 -2.082,0.452 6.456,6.456 0 0 1 1.528,0.767 c 0.241,-0.053 0.483,-0.116 0.715,-0.151 a 7.49,7.49 0 0 1 1.103,-0.089 2.188,2.188 0 0 1 1.959,0.725 v 0 c 0.383,0.638 0.06,1.729 -0.886,3 a 16.723,16.723 0 0 1 -4.749,4.0510001 16.758,16.758 0 0 1 -5.8239996,2.262 c -1.564,0.234 -2.682,0 -3.065,-0.636 -0.38300002,-0.636 -0.06,-1.73 0.886,-2.9950001 0.117,-0.157 0.146,-0.234 0.279,-0.392 a 6.252,6.252 0 0 1 0.026,-1.63 11.552,11.552 0 0 0 -1.17,1.372 C 0.01697538,10.532003 -0.31902462,12.022003 0.30897538,13.069003 a 3.165,3.165 0 0 0 2.90000002,1.249 8.434,8.434 0 0 0 1.251,-0.1 17.855,17.855 0 0 0 6.2189996,-2.4 17.808,17.808 0 0 0 5.061,-4.3320001 c 1.243,-1.661 1.579,-3.15 0.951,-4.198 z" id="az7-path11454" style="fill:#50e6ff" /></svg>',
|
|
31
|
+
"microsoft.eventhub/namespaces":
|
|
32
|
+
'<svg xmlns="http://www.w3.org/2000/svg" width="17.00079" height="15.14" viewBox="0 0 17.00079 15.14" version="1.1" id="az8-svg5903"><defs id="az8-defs5907" /><title id="az8-title5856">Icon-analytics-144</title><g id="az8-g5899" transform="translate(-0.49920995,-1.5099995)"><g id="az8-a53a4de8-371c-49da-a662-c4631299fc03"><path d="M 10.83,8.42 A 0.26,0.26 0 0 1 10.59,8.69 H 8.5 A 0.26,0.26 0 0 1 8.23,8.45 V 6.89 A 0.26,0.26 0 0 1 8.47,6.62 h 2.09 a 0.26,0.26 0 0 1 0.27,0.24 z" id="az8-path5858" style="fill:#76bc2d" /><path d="M 14.54,10 A 0.26,0.26 0 0 1 14.3,10.27 H 12.21 A 0.26,0.26 0 0 1 11.94,10.03 V 8.48 a 0.26,0.26 0 0 1 0.24,-0.27 h 2.09 a 0.26,0.26 0 0 1 0.27,0.24 z" id="az8-path5860" style="fill:#76bc2d" /><path d="m 10.83,11.6 a 0.26,0.26 0 0 1 -0.24,0.27 H 8.5 A 0.26,0.26 0 0 1 8.23,11.63 V 10.07 A 0.26,0.26 0 0 1 8.47,9.8 h 2.09 a 0.26,0.26 0 0 1 0.27,0.24 z" id="az8-path5862" style="fill:#76bc2d" /><path d="M 7.12,6.84 A 0.25,0.25 0 0 1 6.89,7.1 H 4.74 A 0.26,0.26 0 0 1 4.47,6.87 V 5.25 A 0.26,0.26 0 0 1 4.71,5 H 6.8 c 0.22,0 0.32,0.11 0.32,0.27 z" id="az8-path5864" style="fill:#86d633" /><path d="M 7.12,10 A 0.25,0.25 0 0 1 6.89,10.27 H 4.74 A 0.26,0.26 0 0 1 4.47,10 V 8.42 A 0.26,0.26 0 0 1 4.71,8.16 H 6.8 c 0.22,0 0.32,0.11 0.32,0.26 z" id="az8-path5866" style="fill:#76bc2d" /><path d="M 7.12,13.19 A 0.25,0.25 0 0 1 6.89,13.46 H 4.74 A 0.26,0.26 0 0 1 4.47,13.22 V 11.6 A 0.25,0.25 0 0 1 4.71,11.34 H 6.8 c 0.22,0 0.32,0.1 0.32,0.26 z" id="az8-path5868" style="fill:#76bc2d" /><g id="az8-g5874"><path d="m 1.07,1.51 h 1.29 v 3.6 A 0.29,0.29 0 0 1 2.07,5.4 H 0.79 A 0.29,0.29 0 0 1 0.5,5.11 v -3 a 0.57,0.57 0 0 1 0.57,-0.6 z" id="az8-path5870" style="fill:#999999" /><path d="m 1.07,1.51 h 1.29 v 3.6 A 0.29,0.29 0 0 1 2.07,5.4 H 0.79 A 0.29,0.29 0 0 1 0.5,5.11 v -3 a 0.57,0.57 0 0 1 0.57,-0.6 z" id="az8-path5872" style="opacity:0.5;fill:#999999" /></g><g id="az8-g5880"><path d="m 15.64,1.51 h 1.29 a 0.57,0.57 0 0 1 0.57,0.57 v 3 A 0.29,0.29 0 0 1 17.21,5.37 H 15.92 A 0.29,0.29 0 0 1 15.63,5.08 V 1.51 Z" id="az8-path5876" style="fill:#999999" /><path d="m 15.64,1.51 h 1.29 a 0.57,0.57 0 0 1 0.57,0.57 v 3 A 0.29,0.29 0 0 1 17.21,5.37 H 15.92 A 0.29,0.29 0 0 1 15.63,5.08 V 1.51 Z" id="az8-path5878" style="opacity:0.5;fill:#999999" /></g><path d="m 8.66,-6.08 h 1.25 v 17 H 8.66 A 0.57,0.57 0 0 1 8.09,10.35 V -5.52 a 0.57,0.57 0 0 1 0.57,-0.56 z" transform="rotate(90,9,2.42)" id="az8-path5882" style="fill:#949494" /><g id="az8-g5888"><path d="m 0.79,12.76 h 1.29 a 0.29,0.29 0 0 1 0.29,0.29 v 3.6 H 1.07 A 0.57,0.57 0 0 1 0.5,16.08 V 13 a 0.29,0.29 0 0 1 0.29,-0.24 z" id="az8-path5884" style="fill:#999999" /><path d="m 0.79,12.76 h 1.29 a 0.29,0.29 0 0 1 0.29,0.29 v 3.6 H 1.07 A 0.57,0.57 0 0 1 0.5,16.08 V 13 a 0.29,0.29 0 0 1 0.29,-0.24 z" id="az8-path5886" style="opacity:0.5;fill:#999999" /></g><g id="az8-g5894"><path d="m 15.92,12.76 h 1.29 a 0.29,0.29 0 0 1 0.29,0.29 v 3 a 0.57,0.57 0 0 1 -0.57,0.57 H 15.64 V 13 a 0.29,0.29 0 0 1 0.28,-0.24 z" id="az8-path5890" style="fill:#999999" /><path d="m 15.92,12.76 h 1.29 a 0.29,0.29 0 0 1 0.29,0.29 v 3 a 0.57,0.57 0 0 1 -0.57,0.57 H 15.64 V 13 a 0.29,0.29 0 0 1 0.28,-0.24 z" id="az8-path5892" style="opacity:0.5;fill:#999999" /></g><path d="m 8.66,7.24 h 1.25 v 17 H 8.66 A 0.57,0.57 0 0 1 8.09,23.67 V 7.81 A 0.57,0.57 0 0 1 8.66,7.24 Z" transform="rotate(-90,9,15.74)" id="az8-path5896" style="fill:#949494" /></g></g></svg>',
|
|
33
|
+
"microsoft.insights/components":
|
|
34
|
+
'<svg xmlns="http://www.w3.org/2000/svg" id="az9-b6f6d99e-f330-481d-836f-ea58cc42217f" width="11.898839" height="17.000299" viewBox="0 0 11.898839 17.000299" version="1.1"><defs id="az9-defs16023"><radialGradient id="az9-a7a1c431-6c6d-4a8f-9a69-8da437e5b0c5" cx="9" cy="7.3499999" r="6.4200001" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#b77af4" id="az9-stop15987" /><stop offset="0.21" stop-color="#b378f2" id="az9-stop15989" /><stop offset="0.43" stop-color="#a672ed" id="az9-stop15991" /><stop offset="0.65" stop-color="#9267e4" id="az9-stop15993" /><stop offset="0.88" stop-color="#7559d8" id="az9-stop15995" /><stop offset="1" stop-color="#624fd0" id="az9-stop15997" /></radialGradient><linearGradient id="az9-ec0c4f0d-5c8e-4882-96a1-89d61808eb49" x1="9.0200005" y1="3.9100001" x2="9.0799999" y2="11.49" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#f2f2f2" id="az9-stop16000" /><stop offset="0.23" stop-color="#f1f1f2" stop-opacity="0.99" id="az9-stop16002" /><stop offset="0.37" stop-color="#ededf1" stop-opacity="0.95" id="az9-stop16004" /><stop offset="0.48" stop-color="#e7e5f0" stop-opacity="0.89" id="az9-stop16006" /><stop offset="0.58" stop-color="#dedbee" stop-opacity="0.81" id="az9-stop16008" /><stop offset="0.67" stop-color="#d3ceeb" stop-opacity="0.7" id="az9-stop16010" /><stop offset="0.76" stop-color="#c4bee8" stop-opacity="0.57" id="az9-stop16012" /><stop offset="0.84" stop-color="#b4abe5" stop-opacity="0.41" id="az9-stop16014" /><stop offset="0.92" stop-color="#a095e1" stop-opacity="0.22" id="az9-stop16016" /><stop offset="0.99" stop-color="#8b7ddc" stop-opacity="0.02" id="az9-stop16018" /><stop offset="1" stop-color="#897bdc" stop-opacity="0" id="az9-stop16020" /></linearGradient></defs><title id="az9-title16025">Icon-manage-310</title><path d="m 7.1794195,16.8903 0.81,-0.87 v -2.32 h -4.04 v 2.32 l 0.81,0.87 a 0.32,0.32 0 0 0 0.19,0.11 h 2 a 0.32,0.32 0 0 0 0.23,-0.11 z" id="az9-path16027" style="fill:#cecece" /><path d="M 5.9494195,2.9972545e-4 A 5.89,5.89 0 0 0 0.03941949,6.5702997 c 0.27,2.47 2.62000001,3.6200003 3.29000001,6.7500003 a 0.49,0.49 0 0 0 0.47,0.38 h 4.3 a 0.49,0.49 0 0 0 0.47,-0.38 c 0.67,-3.13 2.9999995,-4.2800003 3.2899995,-6.7500003 A 5.89,5.89 0 0 0 5.9494195,2.9972545e-4 Z m -2,13.70000027455" id="az9-path16029" style="fill:url(#az9-a7a1c431-6c6d-4a8f-9a69-8da437e5b0c5)" /><path d="m 8.4094195,3.2902997 a 1.4,1.4 0 0 0 -1.35,1.44 v 0.77 h -2.11 v -0.77 a 1.41,1.41 0 0 0 -1.41,-1.44 1.4,1.4 0 0 0 -1.35,1.44 1.41,1.41 0 0 0 1.35,1.45 h 0.64 V 12.1803 a 0.36,0.36 0 0 0 0.72,0 V 6.1802997 h 2.16 V 12.1803 a 0.36,0.36 0 1 0 0.72,0 V 6.1802997 h 0.63 a 1.4,1.4 0 0 0 1.35,-1.45 1.4,1.4 0 0 0 -1.35,-1.44 z m -4.23,2.21 h -0.68 a 0.74,0.74 0 0 1 -0.68,-0.77 0.74,0.74 0 0 1 0.68,-0.77 0.74,0.74 0 0 1 0.68,0.77 z m 4.28,0 h -0.68 v -0.81 a 0.68,0.68 0 1 1 1.35,0 0.73,0.73 0 0 1 -0.67,0.81 z" id="az9-path16031" style="fill:url(#az9-ec0c4f0d-5c8e-4882-96a1-89d61808eb49)" /><polygon points="11.04,14.56 6.96,15.36 6.96,15.8 11.04,15.01 " id="az9-polygon16033" style="fill:#999999" transform="translate(-3.0505805,-0.49970027)" /><polygon points="6.96,16.48 6.96,16.52 7.27,16.86 11.04,16.11 11.04,15.67 " id="az9-polygon16035" style="fill:#999999" transform="translate(-3.0505805,-0.49970027)" /></svg>',
|
|
35
|
+
"microsoft.keyvault/vaults":
|
|
36
|
+
'<svg xmlns="http://www.w3.org/2000/svg" id="az10-bc93169a-24c4-4686-9f37-c7e4f53b3d34" width="17" height="17" viewBox="0 0 17 17" version="1.1"><defs id="az10-defs73834"><radialGradient id="az10-fb114c93-7c16-4540-899a-0796041629e6" cx="9" cy="9" r="8.5" gradientUnits="userSpaceOnUse"><stop offset="0.18" stop-color="#5ea0ef" id="az10-stop73808" /><stop offset="0.56" stop-color="#5c9fee" id="az10-stop73810" /><stop offset="0.69" stop-color="#559ced" id="az10-stop73812" /><stop offset="0.78" stop-color="#4a97e9" id="az10-stop73814" /><stop offset="0.86" stop-color="#3990e4" id="az10-stop73816" /><stop offset="0.93" stop-color="#2387de" id="az10-stop73818" /><stop offset="0.99" stop-color="#087bd6" id="az10-stop73820" /><stop offset="1" stop-color="#0078d4" id="az10-stop73822" /></radialGradient><radialGradient id="az10-ec478bd3-5b38-4e7f-b661-11f355578bff" cx="38.950001" cy="182.07001" r="9.8800001" gradientTransform="matrix(0.94,0,0,0.94,-28.21,-162.74)" gradientUnits="userSpaceOnUse"><stop offset="0.27" stop-color="#ffd70f" id="az10-stop73825" /><stop offset="0.49" stop-color="#ffcb12" id="az10-stop73827" /><stop offset="0.88" stop-color="#feac19" id="az10-stop73829" /><stop offset="1" stop-color="#fea11b" id="az10-stop73831" /></radialGradient></defs><title id="az10-title73836">Icon-security-245</title><path id="az10-aacf8311-a317-400f-b613-74bd00da5ce3" d="M 8.5,0 A 8.5,8.5 0 1 0 17,8.5 8.51,8.51 0 0 0 8.5,0 Z m 0,15.84 A 7.34,7.34 0 1 1 15.84,8.5 7.34,7.34 0 0 1 8.5,15.84 Z" style="fill:url(#az10-fb114c93-7c16-4540-899a-0796041629e6)" /><circle cx="8.5" cy="8.5" r="7.3400002" id="az10-circle73839" style="fill:#ffffff" /><g id="az10-g73845" transform="translate(-0.5,-0.5)"><path id="az10-bd983c41-db73-40ec-a4f4-da1213fc9924" d="m 13.44,7.33 a 1.84,1.84 0 0 0 0,-2.59 v 0 L 10.29,1.58 a 1.83,1.83 0 0 0 -2.58,0 v 0 L 4.56,4.74 a 1.84,1.84 0 0 0 0,2.59 L 7.18,10 a 0.51,0.51 0 0 1 0.15,0.36 v 4.88 a 0.63,0.63 0 0 0 0.18,0.44 l 1.2,1.2 a 0.41,0.41 0 0 0 0.58,0 l 1.16,-1.16 v 0 l 0.68,-0.68 a 0.25,0.25 0 0 0 0,-0.34 l -0.49,-0.49 a 0.27,0.27 0 0 1 0,-0.37 l 0.49,-0.49 a 0.25,0.25 0 0 0 0,-0.34 l -0.49,-0.49 a 0.27,0.27 0 0 1 0,-0.37 l 0.49,-0.49 a 0.25,0.25 0 0 0 0,-0.34 L 10.45,10.63 V 10.38 Z M 9,2.35 A 1.035,1.035 0 0 1 9,4.42 1.035,1.035 0 1 1 9,2.35 Z" style="fill:url(#az10-ec478bd3-5b38-4e7f-b661-11f355578bff)" /><path id="az10-ad2e7e44-9bfd-4775-8bf4-8ef26a544921" d="m 8.18,15.3 v 0 a 0.23,0.23 0 0 0 0.38,-0.17 v -4 a 0.24,0.24 0 0 0 -0.11,-0.2 v 0 a 0.22,0.22 0 0 0 -0.34,0.2 v 4 a 0.28,0.28 0 0 0 0.07,0.17 z" style="opacity:0.75;fill:#ff9300" /><rect id="az10-a996fbff-3936-4b24-b407-369336c143ba" x="6.48" y="5.79" width="5.1700001" height="0.61000001" rx="0.28" style="opacity:0.75;fill:#ff9300" /><rect id="az10-bb12d31c-3352-4a18-87dd-a169a4a8721d" x="6.48" y="6.7800002" width="5.1700001" height="0.61000001" rx="0.28" style="opacity:0.75;fill:#ff9300" /></g></svg>',
|
|
37
|
+
"microsoft.managedidentity/userassignedidentities":
|
|
38
|
+
'<svg contentScriptType="text/ecmascript" zoomAndPan="magnify" xmlns:xlink="http://www.w3.org/1999/xlink" baseProfile="full" contentStyleType="text/css" id="az11-f807cdde-18f2-4574-ba14-f0b1eef94a4a" version="1.1" width="17.700001" preserveAspectRatio="xMidYMid meet" viewBox="0 0 17.700001 17.001848" height="17.001848" xmlns="http://www.w3.org/2000/svg"><defs id="az11-defs2523"><linearGradient gradientTransform="translate(0.15,1)" x1="13.18" y1="13.01" x2="8.6300001" gradientUnits="userSpaceOnUse" y2="4.3800001" id="az11-bb67b154-af8f-4a53-a9ce-aa046b9398e9"><stop offset="0" stop-color="#1988d9" id="az11-stop2507"/><stop offset="0.9" stop-color="#54aef0" id="az11-stop2509"/></linearGradient><linearGradient gradientTransform="translate(0.15,1)" x1="11.22" y1="10.5" x2="14.37" gradientUnits="userSpaceOnUse" y2="15.93" id="az11-a47d7138-084a-471d-8d63-744e75b9e8a3"><stop offset="0.1" stop-color="#54aef0" id="az11-stop2512"/><stop offset="0.29" stop-color="#4fabee" id="az11-stop2514"/><stop offset="0.51" stop-color="#41a2e9" id="az11-stop2516"/><stop offset="0.74" stop-color="#2a93e0" id="az11-stop2518"/><stop offset="0.88" stop-color="#1988d9" id="az11-stop2520"/></linearGradient></defs><polygon style="fill:#50e6ff" points="8.93,17.11 0.15,11.37 1.15,10.22 8.93,15.27 16.85,10.21 17.85,11.36" transform="translate(-0.15,-1)"/><polygon style="fill:#ffffff" points="1.73,9.58 8.93,1 16.28,9.59 8.93,14.23" transform="translate(-0.15,-1)"/><polygon style="fill:#50e6ff" points="8.93,14.23 1.73,9.58 8.93,1" transform="translate(-0.15,-1)"/><polygon style="fill:url(#az11-bb67b154-af8f-4a53-a9ce-aa046b9398e9)" points="8.93,14.23 16.28,9.59 8.93,1" transform="translate(-0.15,-1)"/><polygon style="fill:#53b1e0" points="16.28,9.59 8.93,14.23 8.93,7.83" transform="translate(-0.15,-1)"/><polygon style="fill:#9cebff" points="1.73,9.58 8.93,7.83 8.93,14.23" transform="translate(-0.15,-1)"/><polygon style="fill:url(#az11-a47d7138-084a-471d-8d63-744e75b9e8a3)" points="8.93,17.11 17.85,11.36 16.85,10.21 8.93,15.27" transform="translate(-0.15,-1)"/><path style="fill:#ffca00" d="m 16.17,10.88 a 1.16,1.16 0 0 0 0,-1.65 v 0 l -2,-2 a 1.16,1.16 0 0 0 -1.64,0 v 0 l -2,2 a 1.18,1.18 0 0 0 0,1.65 l 1.67,1.67 a 0.32,0.32 0 0 1 0.09,0.23 v 3.1 a 0.36,0.36 0 0 0 0.12,0.28 l 0.76,0.76 a 0.25,0.25 0 0 0 0.37,0 l 0.73,-0.73 v 0 l 0.44,-0.44 a 0.15,0.15 0 0 0 0,-0.21 L 14.4,15.23 a 0.16,0.16 0 0 1 0,-0.24 l 0.31,-0.31 a 0.16,0.16 0 0 0 0,-0.22 L 14.4,14.15 a 0.15,0.15 0 0 1 0,-0.23 l 0.31,-0.32 a 0.15,0.15 0 0 0 0,-0.21 L 14.27,12.95 V 12.79 Z M 13.35,7.71 a 0.66,0.66 0 1 1 -0.66,0.66 0.66,0.66 0 0 1 0.66,-0.66 z"/><path style="opacity:0.75;fill:#ff9300" d="m 12.85,16 v 0 a 0.14,0.14 0 0 0 0.24,-0.11 V 13.33 A 0.16,0.16 0 0 0 13.03,13.2 v 0 a 0.14,0.14 0 0 0 -0.22,0.13 v 2.51 A 0.15,0.15 0 0 0 12.85,16 Z"/><rect rx="0.18000001" x="11.75" width="3.29" height="0.38999999" y="9.8999996" style="opacity:0.75;fill:#ff9300"/><rect rx="0.18000001" x="11.75" width="3.29" height="0.38999999" y="10.53" style="opacity:0.75;fill:#ff9300"/></svg>',
|
|
39
|
+
"microsoft.network/applicationgateways":
|
|
40
|
+
'<svg xmlns="http://www.w3.org/2000/svg" id="az12-acac5a34-a032-49f9-9397-37f4f1b4ae9a" width="16.994371" height="16.994371" viewBox="0 0 16.994371 16.994371" version="1.1"><defs id="az12-defs63243"><linearGradient id="az12-f6d5399b-a5cb-4c09-96cc-9e3bb1af2386" x1="9" y1="19.25" x2="9" y2="-0.46000001" gradientTransform="rotate(45,0.00354733,-0.00354732)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#5e9624" id="az12-stop63224" /><stop offset="0.55" stop-color="#6dad2a" id="az12-stop63226" /><stop offset="1" stop-color="#76bc2d" id="az12-stop63228" /></linearGradient><linearGradient id="az12-a43242a2-4d95-4f6d-8870-2702ceb6aebc" x1="7.54" y1="6.4400001" x2="7.5300002" y2="5.1799998" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ccc" id="az12-stop63231" /><stop offset="0.12" stop-color="#d7d7d7" id="az12-stop63233" /><stop offset="0.42" stop-color="#ebebeb" id="az12-stop63235" /><stop offset="0.72" stop-color="#f8f8f8" id="az12-stop63237" /><stop offset="1" stop-color="#fcfcfc" id="az12-stop63239" /></linearGradient><linearGradient id="az12-eedce6dd-706a-43c4-ac66-66b73578221d" x1="19.283199" y1="15.1828" x2="19.283199" y2="13.9284" href="#az12-a43242a2-4d95-4f6d-8870-2702ceb6aebc" gradientUnits="userSpaceOnUse" /></defs><rect x="-6.1750002" y="5.841835" width="12.35" height="12.35" rx="0.56999999" transform="rotate(-45)" id="az12-rect63245" style="fill:url(#az12-f6d5399b-a5cb-4c09-96cc-9e3bb1af2386)" /><g id="az12-g63253" transform="translate(-0.49366538,-0.50281421)"><path d="m 10.89,10.51 h 2.84 a 0.11,0.11 0 0 0 0.1,-0.11 V 7.57 A 0.1,0.1 0 0 0 13.65,7.5 l -0.78,0.78 v 0.05 a 0.1,0.1 0 0 1 -0.14,0 L 9.26,4.91 a 0.1,0.1 0 0 0 -0.14,0 L 8.24,5.79 a 0.11,0.11 0 0 0 0,0.15 l 3.41,3.41 a 0.11,0.11 0 0 1 0,0.15 l -0.05,0.05 -0.78,0.78 a 0.11,0.11 0 0 0 0.07,0.18 z" id="az12-path63247" style="fill:#ffffff" /><path d="M 6.92,10.51 H 4.08 A 0.11,0.11 0 0 1 4,10.4 V 7.57 A 0.1,0.1 0 0 1 4.17,7.5 l 0.79,0.78 v 0.05 a 0.1,0.1 0 0 0 0.14,0 L 8.55,4.91 a 0.1,0.1 0 0 1 0.14,0 l 0.88,0.88 a 0.11,0.11 0 0 1 0,0.15 L 6.16,9.35 a 0.11,0.11 0 0 0 0,0.15 v 0.05 l 0.78,0.78 a 0.11,0.11 0 0 1 -0.02,0.18 z" id="az12-path63249" style="fill:#ffffff" /><path d="m 6.82,13.07 2,2 a 0.1,0.1 0 0 0 0.14,0 l 2,-2 A 0.1,0.1 0 0 0 10.89,12.9 H 9.72 A 0.11,0.11 0 0 1 9.62,12.8 V 8 A 0.1,0.1 0 0 0 9.52,7.89 H 8.28 A 0.11,0.11 0 0 0 8.17,8 v 4.8 a 0.1,0.1 0 0 1 -0.1,0.1 H 6.89 a 0.1,0.1 0 0 0 -0.07,0.17 z" id="az12-path63251" style="fill:#ffffff" /></g><path id="az12-ac0a9c0c-2e8c-4843-b02b-2fadf76b27d0" d="m 10.156335,7.2771858 a 2.71,2.71 0 0 1 -3.3200004,-4.28 v 0 a 2.71,2.71 0 0 1 3.2900004,4.3" style="fill:#0078d4" /><circle cx="7.036335" cy="5.0471859" r="0.87" id="az12-circle63256" style="fill:url(#az12-a43242a2-4d95-4f6d-8870-2702ceb6aebc)" /><g id="az12-g63266" transform="translate(-0.49366538,-0.50281421)"><path d="M 6.67,7 6.86,7.3 7,7.5 A 5.94,5.94 0 0 1 7.34,6.4 0.85,0.85 0 0 1 6.89,6.17 6.71,6.71 0 0 0 6.67,7 Z" id="az12-path63258" style="opacity:0.55;fill:#f2f2f2" /><path d="M 7.24,4.73 A 4,4 0 0 1 7,3.8 2.48,2.48 0 0 0 6.66,4.26 3.51,3.51 0 0 0 6.86,5 1,1 0 0 1 7.24,4.73 Z" id="az12-path63260" style="opacity:0.55;fill:#f2f2f2" /><path d="M 8.17,6.14 A 0.87,0.87 0 0 1 7.69,6.4 4.62,4.62 0 0 0 8.15,6.81 4.14,4.14 0 0 0 8.8,7.2 V 7.13 A 0.53,0.53 0 0 1 9,6.73 3.6,3.6 0 0 1 8.17,6.14 Z" id="az12-path63262" style="opacity:0.55;fill:#f2f2f2" /><path d="M 10.79,7.2 A 4.14,4.14 0 0 1 9.92,7.1 v 0 a 0.55,0.55 0 0 1 -0.16,0.39 3.84,3.84 0 0 0 1.08,0.08 2.93,2.93 0 0 0 0.37,-0.42 z" id="az12-path63264" style="opacity:0.55;fill:#f2f2f2" /></g><circle cx="8.866334" cy="6.6271858" r="0.56" id="az12-circle63268" style="fill:url(#az12-eedce6dd-706a-43c4-ac66-66b73578221d)" /><circle cx="10.146335" cy="5.2371855" r="0.60000002" id="az12-circle63270" style="fill:#f2f2f2" /><g id="az12-g63276" transform="translate(-0.49366538,-0.50281421)"><path d="M 9.21,4.42 A 4.29,4.29 0 0 1 11.09,4 2.24,2.24 0 0 0 10.62,3.55 4.5,4.5 0 0 0 9.13,3.9 c -0.1,0 -0.19,0.11 -0.29,0.16 v 0 A 5.85,5.85 0 0 1 8.21,3.13 L 7.87,3.26 a 5.35,5.35 0 0 0 0.65,1 3.92,3.92 0 0 0 -0.67,0.55 0.87,0.87 0 0 1 0.43,0.35 3.29,3.29 0 0 1 0.61,-0.48 9.16,9.16 0 0 0 1.17,1 0.57,0.57 0 0 1 0.2,-0.32 8.44,8.44 0 0 1 -1.05,-0.94 z" id="az12-path63272" style="opacity:0.55;fill:#f2f2f2" /><path d="m 11.55,6.09 v 0 h -0.1 v 0 h -0.08 v 0 l -0.1,-0.06 a 0.61,0.61 0 0 1 -0.2,0.3 l 0.12,0.07 v 0 l 0.11,0.06 v 0 l 0.28,0.14 v 0 a 3.58,3.58 0 0 0 0.09,-0.35 z" id="az12-path63274" style="opacity:0.55;fill:#f2f2f2" /></g><circle cx="7.036335" cy="5.0471859" r="0.87" id="az12-circle63278" style="fill:#f2f2f2" /><circle cx="8.866334" cy="6.6271858" r="0.56" id="az12-circle63280" style="fill:#f2f2f2" /></svg>',
|
|
41
|
+
"microsoft.network/privateendpoints":
|
|
42
|
+
'<svg xmlns="http://www.w3.org/2000/svg" width="53.798553mm" height="49.537819mm" viewBox="0 0 53.798553 49.537819" version="1.1" id="az13-svg8"><defs id="az13-defs2" /><g id="az13-layer1" transform="translate(-77.843845,-68.46614)"><path style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#7b7b7b;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.4000001;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" d="m 102.94336,75.623047 v 24.320312 h 3.40039 V 75.623047 Z" id="az13-path4546" /><circle style="opacity:1;vector-effect:none;fill:#369dc6;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53865981;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal" id="az13-path4529" cx="104.74665" cy="73.30896" r="4.8428197" /><circle style="opacity:1;vector-effect:none;fill:#84b926;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.53865981;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal" id="az13-path4529-0" cx="104.7939" cy="103.04635" r="5.9295011" /><path style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#369dc6;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:3.4000001;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" d="m 116.61133,88.082031 a 1.70017,1.70017 0 0 0 -1.16016,2.929688 l 12.07422,11.873051 -12.24805,12.20312 a 1.70017,1.70017 0 1 0 2.39844,2.41016 l 13.4668,-13.41797 a 1.70017,1.70017 0 0 0 -0.008,-2.41602 L 117.83594,88.587891 a 1.70017,1.70017 0 0 0 -1.22461,-0.50586 z m -23.787111,0.002 a 1.70017,1.70017 0 0 0 -1.173828,0.503907 L 78.351562,101.66406 a 1.70017,1.70017 0 0 0 -0.0078,2.41602 l 13.466797,13.41797 a 1.70017,1.70017 0 1 0 2.398437,-2.41016 L 81.960938,102.88477 94.035156,91.011719 a 1.70017,1.70017 0 0 0 -1.210937,-2.927735 z" id="az13-path4548-6" /></g></svg>',
|
|
43
|
+
"microsoft.network/virtualnetworks":
|
|
44
|
+
'<svg xmlns="http://www.w3.org/2000/svg" id="az14-a1606a52-fb14-4637-87de-4d524bba1829" width="18.006025" height="10.784314" viewBox="0 0 18.006025 10.784314" version="1.1"><defs id="az14-defs70798"><linearGradient id="az14-f020fb7e-2243-4501-8153-5d69bd3c34f7" x1="9.8800001" y1="8.5900002" x2="11.52" y2="10.23" gradientTransform="rotate(-0.08,-285.46384,-1454.0801)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#86d633" id="az14-stop70783" /><stop offset="1" stop-color="#5e9624" id="az14-stop70785" /></linearGradient><linearGradient id="az14-b3c2bc94-8c7c-48a2-9719-6ee899a43a97" x1="6.1799998" y1="8.5900002" x2="7.8099999" y2="10.23" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#86d633" id="az14-stop70788" /><stop offset="1" stop-color="#5e9624" id="az14-stop70790" /></linearGradient><linearGradient id="az14-e900c35d-0958-4d4f-b28f-302eeaaf52f5" x1="2.48" y1="8.5900002" x2="4.1100001" y2="10.23" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#86d633" id="az14-stop70793" /><stop offset="1" stop-color="#5e9624" id="az14-stop70795" /></linearGradient></defs><title id="az14-title70800">Icon-networking-61</title><circle cx="12.744286" cy="5.3829632" r="1.16" id="az14-circle70802" style="fill:url(#az14-f020fb7e-2243-4501-8153-5d69bd3c34f7)" /><circle cx="9.0442858" cy="5.3929634" r="1.16" id="az14-circle70804" style="fill:url(#az14-b3c2bc94-8c7c-48a2-9719-6ee899a43a97)" /><circle cx="5.3442855" cy="5.3929634" r="1.16" id="az14-circle70806" style="fill:url(#az14-e900c35d-0958-4d4f-b28f-302eeaaf52f5)" /><path d="M 6.1863956,10.030542 5.5226439,10.69615 a 0.3,0.3 0 0 1 -0.4242636,5.93e-4 L 0.18421208,5.7962782 A 0.6,0.6 0 0 1 0.18302731,4.9477509 L 0.84677897,4.2821431 6.1858032,9.6062787 a 0.3,0.3 0 0 1 5.924e-4,0.4242633 z" id="az14-path70808" style="fill:#50e6ff" /><path d="M 5.4221989,0.10117925 6.0878067,0.76493091 A 0.3,0.3 0 0 1 6.0883991,1.1891946 L 0.84193654,6.4503285 0.17632875,5.7865769 A 0.6,0.6 0 0 1 0.17514398,4.9380496 L 4.9979353,0.10177164 a 0.3,0.3 0 0 1 0.4242636,-5.9239e-4 z" id="az14-path70810" style="fill:#1490df" /><path d="m 17.160946,4.2730297 0.663752,0.6656078 a 0.6,0.6 0 0 1 -0.0012,0.8485273 l -4.914168,4.9004642 a 0.3,0.3 0 0 1 -0.424264,-5.92e-4 l -0.663752,-0.665608 a 0.3,0.3 0 0 1 5.93e-4,-0.4242636 z" id="az14-path70812" style="fill:#50e6ff" /><path d="M 17.822617,5.7800309 17.157009,6.4437825 11.910546,1.1826486 a 0.3,0.3 0 0 1 5.93e-4,-0.42426368 l 0.672688,-0.67081284 a 0.3,0.3 0 0 1 0.424264,5.9238e-4 l 4.822791,4.83627794 a 0.6,0.6 0 0 1 -0.0012,0.8485273 z" id="az14-path70814" style="fill:#1490df" /></svg>',
|
|
45
|
+
"microsoft.operationalinsights/workspaces":
|
|
46
|
+
'<svg xmlns="http://www.w3.org/2000/svg" id="az15-b388e944-5509-49c9-84d7-f38bffa995b2" width="16.901033" height="16.900316" viewBox="0 0 16.901033 16.900316" version="1.1"><defs id="az15-defs6196"><linearGradient id="az15-a997e203-1d7d-4cb9-b131-5dc44e029b46" x1="5.23" y1="17.450001" x2="5.23" y2="8.0900002" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#1988d9" id="az15-stop6180" /><stop offset="0.9" stop-color="#54aef0" id="az15-stop6182" /></linearGradient><linearGradient id="az15-e122e9d8-aee5-4f1a-a60e-b1eae355daa5" x1="11.5" y1="12.45" x2="11.5" y2="0.55000001" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#198ab3" id="az15-stop6185" /><stop offset="0.01" stop-color="#198bb4" id="az15-stop6187" /><stop offset="0.44" stop-color="#27b2d7" id="az15-stop6189" /><stop offset="0.79" stop-color="#2fcbed" id="az15-stop6191" /><stop offset="1" stop-color="#32d4f5" id="az15-stop6193" /></linearGradient></defs><title id="az15-title6198">Icon-manage-307</title><path d="m 5.04,12.580316 h 4.32 v 4.32 H 5.04 Z m -4.44,4.32 h 3.72 v -4.32 H 0 v 3.72 a 0.6,0.6 0 0 0 0.6,0.6 z m -0.6,-5 H 4.32 V 7.5403162 H 0 Z" id="az15-path6200" style="fill:url(#az15-a997e203-1d7d-4cb9-b131-5dc44e029b46)" /><path d="M 10.95,3.1622647e-4 A 5.89,5.89 0 0 1 16.9,6.0003162 5.89,5.89 0 0 1 10.95,11.950316 H 5 V 5.9503162 A 5.89,5.89 0 0 1 10.95,3.1622647e-4 Z" id="az15-path6202" style="fill:url(#az15-e122e9d8-aee5-4f1a-a60e-b1eae355daa5);fill-rule:evenodd" /><rect x="7.04" y="5.1003165" width="1.36" height="4.0799999" id="az15-rect6204" style="fill:#ffffff" /><rect x="9.7600002" y="6.4603167" width="1.36" height="2.72" id="az15-rect6206" style="fill:#ffffff" /><rect x="12.48" y="3.7403162" width="1.36" height="5.4400001" id="az15-rect6208" style="fill:#ffffff" /></svg>',
|
|
47
|
+
"microsoft.search/searchservices":
|
|
48
|
+
'<svg xmlns="http://www.w3.org/2000/svg" id="az16-f470e112-f1d8-4c18-a381-9b54e11a9ca3" width="18" height="13.098808" viewBox="0 0 18 13.098808" version="1.1"><defs id="az16-defs1728"><linearGradient id="az16-b198f9ad-224e-4f37-99bb-f1c5a20d3916" x1="9" y1="0.36000001" x2="9" y2="18.309999" gradientUnits="userSpaceOnUse"><stop offset="0.18" stop-color="#5ea0ef" id="az16-stop1723" /><stop offset="1" stop-color="#0078d4" id="az16-stop1725" /></linearGradient></defs><title id="az16-title1730">Icon-web-44</title><path d="m 18,9.0010133 a 4.12,4.12 0 0 0 -3.51,-4 5.15,5.15 0 0 0 -5.25,-5.00000002 5.25,5.25 0 0 0 -5,3.49000002 4.86,4.86 0 0 0 -4.24,4.78 5,5 0 0 0 5.07,4.8199997 h 0.44 8.21 a 0.78,0.78 0 0 0 0.22,0 A 4.13,4.13 0 0 0 18,9.0010133 Z" id="az16-path1732" style="fill:url(#az16-b198f9ad-224e-4f37-99bb-f1c5a20d3916)" /><path d="m 12.33,4.2710133 a 3.07,3.07 0 0 0 -5.61,0.85 3.16,3.16 0 0 0 0.33,2.27 l -2.34,2.37 a 0.79,0.79 0 0 0 0,1.1199997 0.78,0.78 0 0 0 0.56,0.23 0.76,0.76 0 0 0 0.56,-0.23 L 8.16,8.5210133 a 3.14,3.14 0 0 0 0.81,0.33 3.08,3.08 0 0 0 3.36,-4.58 z m -0.54,2.1 a 2.16,2.16 0 0 1 -2.09,1.65 1.79,1.79 0 0 1 -0.51,-0.07 1.87,1.87 0 0 1 -0.7,-0.32 2.13,2.13 0 0 1 -0.56,-0.56 2.17,2.17 0 0 1 -0.31,-1.73 2.14,2.14 0 0 1 2.08,-1.66 2.31,2.31 0 0 1 0.52,0.06 2.18,2.18 0 0 1 1.32,1 2.13,2.13 0 0 1 0.25,1.63 z" id="az16-path1734" style="fill:#f2f2f2" /><ellipse cx="9.6899996" cy="5.8610134" rx="2.1500001" ry="2.1600001" id="az16-ellipse1736" style="fill:#83b9f9" /></svg>',
|
|
49
|
+
"microsoft.servicebus/namespaces":
|
|
50
|
+
'<svg width="17" height="15.142" viewBox="0 0 17 15.142" version="1.1" id="az17-svg34435" xmlns="http://www.w3.org/2000/svg"><defs id="az17-defs34394"><linearGradient id="az17-bbd02878-309a-4490-8196-946338d0f593" x1="8.9949999" y1="10.299" x2="8.9949999" y2="13.199" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#005ba1" id="az17-stop34383" /><stop offset="0.258" stop-color="#00589d" id="az17-stop34385" /><stop offset="0.525" stop-color="#004f90" id="az17-stop34387" /><stop offset="0.796" stop-color="#003f7c" id="az17-stop34389" /><stop offset="1" stop-color="#003067" id="az17-stop34391" /></linearGradient></defs><polygon points="4.612,7.384 4.612,7.396 4.606,7.4 4.612,7.4 4.612,13.201 13.382,13.201 13.382,7.4 13.387,7.4 13.382,7.396 13.382,7.384 13.363,7.384 8.997,4.405 4.631,7.384 " fill="#50e6ff" id="az17-polygon34396" transform="translate(-0.5,-1.43)" /><path d="m 4.106,5.97 c 0,-0.1 0.008,5.681 0.008,5.8 l 4.381,-2.9 z" fill="#32bedd" id="az17-path34398" /><path d="m 12.884,5.97 -4.389,2.9 4.381,2.9 c 0,-0.117 0.008,-5.9 0.008,-5.8 z" fill="#198ab3" id="az17-path34400" /><polygon points="4.614,13.194 4.614,13.199 13.376,13.199 13.376,13.194 8.995,10.299 " fill="url(#az17-bbd02878-309a-4490-8196-946338d0f593)" id="az17-polygon34402" style="fill:url(#az17-bbd02878-309a-4490-8196-946338d0f593)" transform="translate(-0.5,-1.43)" /><path d="m 0.572,0 h 1.29 V 3.6 A 0.286,0.286 0 0 1 1.576,3.886 H 0.286 A 0.286,0.286 0 0 1 0,3.605 V 0.57 A 0.572,0.572 0 0 1 0.572,0 Z" fill="#999999" id="az17-path34404" /><path d="m 0.572,0 h 1.29 V 3.6 A 0.286,0.286 0 0 1 1.576,3.886 H 0.286 A 0.286,0.286 0 0 1 0,3.605 V 0.57 A 0.572,0.572 0 0 1 0.572,0 Z" fill="#999999" opacity="0.5" id="az17-path34406" /><path d="m 15.138,0 h 1.29 A 0.572,0.572 0 0 1 17,0.57 v 3.035 a 0.286,0.286 0 0 1 -0.286,0.286 h -1.29 A 0.286,0.286 0 0 1 15.138,3.605 Z" fill="#999999" id="az17-path34410" /><path d="m 15.138,0 h 1.29 A 0.572,0.572 0 0 1 17,0.57 v 3.035 a 0.286,0.286 0 0 1 -0.286,0.286 h -1.29 A 0.286,0.286 0 0 1 15.138,3.605 Z" fill="#999999" opacity="0.5" id="az17-path34412" /><path d="M 17,0.567 V 1.814 H 0 V 0.567 A 0.567,0.567 0 0 1 0.567,0 h 15.87 A 0.567,0.567 0 0 1 17,0.567 Z" fill="#949494" id="az17-path34416" /><path d="m 0.286,11.249 h 1.29 a 0.286,0.286 0 0 1 0.286,0.286 v 3.6 H 0.572 A 0.572,0.572 0 0 1 0,14.57 v -3.035 a 0.286,0.286 0 0 1 0.286,-0.286 z" fill="#999999" id="az17-path34418" /><path d="m 0.286,11.249 h 1.29 a 0.286,0.286 0 0 1 0.286,0.286 v 3.6 H 0.572 A 0.572,0.572 0 0 1 0,14.57 v -3.035 a 0.286,0.286 0 0 1 0.286,-0.286 z" fill="#999999" opacity="0.5" id="az17-path34420" /><path d="m 15.424,11.249 h 1.29 A 0.286,0.286 0 0 1 17,11.535 v 3.035 a 0.572,0.572 0 0 1 -0.572,0.572 h -1.29 v -3.6 a 0.286,0.286 0 0 1 0.286,-0.293 z" fill="#999999" id="az17-path34424" /><path d="m 15.424,11.249 h 1.29 A 0.286,0.286 0 0 1 17,11.535 v 3.035 a 0.572,0.572 0 0 1 -0.572,0.572 h -1.29 v -3.6 a 0.286,0.286 0 0 1 0.286,-0.293 z" fill="#999999" opacity="0.5" id="az17-path34426" /><path d="m 0,14.573 v -1.247 h 17 v 1.247 A 0.567,0.567 0 0 1 16.433,15.14 H 0.567 A 0.567,0.567 0 0 1 0,14.573 Z" fill="#949494" id="az17-path34430" /></svg>',
|
|
51
|
+
"microsoft.sql/servers":
|
|
52
|
+
'<svg xmlns="http://www.w3.org/2000/svg" id="az18-b1cfe86c-f00b-4507-bce2-50d07e45fe96" width="17.1" height="17.040001" viewBox="0 0 17.1 17.040001" version="1.1"><defs id="az18-defs15769"><linearGradient id="az18-b39dcf83-187e-4c64-98df-431bb60809d2" x1="0.5" y1="10.04" x2="13.18" y2="10.04" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#005ba1" id="az18-stop15754" /><stop offset="0.07" stop-color="#0060a9" id="az18-stop15756" /><stop offset="0.36" stop-color="#0071c8" id="az18-stop15758" /><stop offset="0.52" stop-color="#0078d4" id="az18-stop15760" /><stop offset="0.64" stop-color="#0074cd" id="az18-stop15762" /><stop offset="0.82" stop-color="#006abb" id="az18-stop15764" /><stop offset="1" stop-color="#005ba1" id="az18-stop15766" /></linearGradient></defs><title id="az18-title15771">Icon-databases-132</title><path d="M 6.34,4.6 C 2.84,4.6 0,3.6 0,2.3 v 12.21 c 0,1.26 2.79,2.28 6.25,2.3 h 0.09 c 3.5,0 6.34,-1 6.34,-2.3 V 2.3 c 0,1.27 -2.84,2.3 -6.34,2.3 z" id="az18-path15773" style="fill:url(#az18-b39dcf83-187e-4c64-98df-431bb60809d2)" /><path d="M 12.68,2.3 C 12.68,3.57 9.84,4.6 6.34,4.6 2.84,4.6 0,3.57 0,2.3 0,1.03 2.84,0 6.34,0 c 3.5,0 6.34,1 6.34,2.3" id="az18-path15775" style="fill:#e8e8e8" /><path d="M 11.2,2.11 C 11.2,2.92 9.02,3.57 6.34,3.57 3.66,3.57 1.5,2.92 1.5,2.11 1.5,1.3 3.66,0.65 6.34,0.65 c 2.68,0 4.86,0.66 4.86,1.46" id="az18-path15777" style="fill:#50e6ff" /><path d="M 6.34,2.45 A 12,12 0 0 0 2.5,3 11.25,11.25 0 0 0 6.35,3.57 11.25,11.25 0 0 0 10.2,3 12,12 0 0 0 6.34,2.45 Z" id="az18-path15779" style="fill:#198ab3" /><path d="M 10.24,10.61 V 7.23 H 9.31 v 4.14 h 2.46 V 10.61 Z M 3.09,8.94 A 1.92,1.92 0 0 1 2.58,8.63 0.44,0.44 0 0 1 2.5,8.31 0.38,0.38 0 0 1 2.66,8 0.72,0.72 0 0 1 3.08,7.89 a 1.67,1.67 0 0 1 1,0.29 V 7.32 a 2.67,2.67 0 0 0 -1,-0.16 1.74,1.74 0 0 0 -1.2,0.35 1.13,1.13 0 0 0 -0.41,0.9 c 0,0.51 0.32,0.91 1,1.21 A 2.9,2.9 0 0 1 3.08,9.98 0.4,0.4 0 0 1 3.24,10.3 0.38,0.38 0 0 1 3.08,10.61 0.75,0.75 0 0 1 2.63,10.73 1.6,1.6 0 0 1 1.5,10.28 v 0.93 A 2.29,2.29 0 0 0 2.57,11.44 2,2 0 0 0 3.75,11.12 1.1,1.1 0 0 0 4.18,10.2 1,1 0 0 0 3.93,9.5 2.42,2.42 0 0 0 3.09,8.94 Z m 5.2,1.57 A 2.4,2.4 0 0 0 8.62,9.24 2.32,2.32 0 0 0 8.37,8.14 1.81,1.81 0 0 0 7.67,7.39 2,2 0 0 0 6.67,7.13 2.18,2.18 0 0 0 5.58,7.4 1.87,1.87 0 0 0 4.85,8.17 2.41,2.41 0 0 0 4.59,9.32 a 2.26,2.26 0 0 0 0.24,1.05 1.83,1.83 0 0 0 0.68,0.75 2,2 0 0 0 1,0.29 l 0.85,1 H 8.55 L 7.35,11.3 A 1.81,1.81 0 0 0 8.29,10.51 Z M 7.36,10.25 a 1,1 0 0 1 -1.53,0 1.51,1.51 0 0 1 -0.28,-1 1.48,1.48 0 0 1 0.29,-1 0.92,0.92 0 0 1 0.78,-0.37 0.89,0.89 0 0 1 0.75,0.37 1.62,1.62 0 0 1 0.27,1 1.46,1.46 0 0 1 -0.28,1.03 z" id="az18-path15781" style="fill:#f2f2f2" /><path d="m 14.31,17 0.24,-0.79 0.47,-0.27 0.81,0.36 0.52,-0.53 V 15.71 L 15.98,15 16.2,14.5 17.01,14.21 H 17.1 V 13.48 H 17 l -0.8,-0.24 -0.26,-0.46 0.35,-0.82 -0.53,-0.51 H 15.7 l -0.71,0.36 -0.49,-0.3 -0.32,-0.89 h -0.74 v 0.11 l -0.24,0.79 -0.51,0.22 -0.87,-0.4 -0.51,0.53 0.05,0.1 0.38,0.74 -0.2,0.51 -0.94,0.29 v 0.74 h 0.11 l 0.79,0.24 0.22,0.51 -0.39,0.86 0.53,0.52 0.09,-0.05 0.74,-0.38 0.51,0.2 0.34,0.89 h 0.73 z m -1.2,-2.36 a 1.0642486,1.0642486 0 1 1 1.49,-1.52 1.0642486,1.0642486 0 0 1 -1.49,1.52 z" id="az18-path15783" style="fill:#949494" /></svg>',
|
|
53
|
+
"microsoft.storage/storageaccounts":
|
|
54
|
+
'<svg xmlns="http://www.w3.org/2000/svg" id="az19-f2f04349-8aee-4413-84c9-a9053611b319" width="17" height="13.67" viewBox="0 0 17 13.67" version="1.1"><defs id="az19-defs75527"><linearGradient id="az19-ad4c4f96-09aa-4f91-ba10-5cb8ad530f74" x1="9" y1="15.83" x2="9" y2="5.79" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#b3b3b3" id="az19-stop75520" /><stop offset="0.26" stop-color="#c1c1c1" id="az19-stop75522" /><stop offset="1" stop-color="#e6e6e6" id="az19-stop75524" /></linearGradient></defs><title id="az19-title75529">Icon-storage-86</title><path d="m 0,3.62 h 17 v 9.48 a 0.57,0.57 0 0 1 -0.57,0.57 H 0.57 A 0.57,0.57 0 0 1 0,13.1 Z" id="az19-path75531" style="fill:url(#az19-ad4c4f96-09aa-4f91-ba10-5cb8ad530f74)" /><path d="M 0.57,0 H 16.43 A 0.57,0.57 0 0 1 17,0.57000001 V 3.62 H 0 V 0.56000001 A 0.57,0.57 0 0 1 0.57,0 Z" id="az19-path75533" style="fill:#37c2b1" /><path d="m 2.31,4.72 h 12.37 a 0.27,0.27 0 0 1 0.26,0.27 v 1.4 A 0.27,0.27 0 0 1 14.68,6.66 H 2.31 A 0.27,0.27 0 0 1 2.05,6.39 V 4.99 A 0.27,0.27 0 0 1 2.31,4.72 Z" id="az19-path75535" style="fill:#ffffff" /><path d="m 2.32,7.51 h 12.37 a 0.27,0.27 0 0 1 0.26,0.27 V 9.19 A 0.27,0.27 0 0 1 14.69,9.46 H 2.32 A 0.27,0.27 0 0 1 2.06,9.19 V 7.83 A 0.27,0.27 0 0 1 2.32,7.51 Z" id="az19-path75537" style="fill:#37c2b1" /><path d="m 2.32,10.33 h 12.37 a 0.27,0.27 0 0 1 0.26,0.27 v 1.41 a 0.27,0.27 0 0 1 -0.26,0.27 H 2.32 A 0.27,0.27 0 0 1 2.06,12.01 V 10.6 a 0.27,0.27 0 0 1 0.26,-0.27 z" id="az19-path75539" style="fill:#258277" /></svg>',
|
|
55
|
+
"microsoft.web/serverfarms":
|
|
56
|
+
'<svg xmlns="http://www.w3.org/2000/svg" id="az20-fca2105f-c039-4f34-bd65-8ab95d4ecdb9" width="16.84009" height="17.001196" viewBox="0 0 16.84009 17.001196" version="1.1"><defs id="az20-defs1242"><linearGradient id="az20-a773af38-43e4-4fd2-9485-f8aac63ca91b" x1="5.5700002" y1="17.5" x2="5.5700002" y2="0.5" gradientUnits="userSpaceOnUse"><stop offset="0.05" stop-color="#949494" id="az20-stop1226" /><stop offset="0.36" stop-color="#979797" id="az20-stop1228" /><stop offset="0.54" stop-color="#9f9f9f" id="az20-stop1230" /><stop offset="0.69" stop-color="#adadad" id="az20-stop1232" /><stop offset="0.73" stop-color="#b3b3b3" id="az20-stop1234" /></linearGradient><linearGradient id="az20-b4779ae6-74a5-486d-8aad-cd011859785a" x1="10.56" y1="6.02" x2="10.56" y2="19.709999" gradientUnits="userSpaceOnUse"><stop offset="0.18" stop-color="#5ea0ef" id="az20-stop1237" /><stop offset="1" stop-color="#0078d4" id="az20-stop1239" /></linearGradient></defs><title id="az20-title1244">Icon-web-46</title><path d="m 9.9800893,16.430091 a 0.56,0.56 0 0 1 -0.57,0.57 H 0.56008929 a 0.56,0.56 0 0 1 -0.55999999704,-0.57 V 0.57009092 A 0.56,0.56 0 0 1 0.56008929,9.0924122e-5 H 9.4200893 a 0.56,0.56 0 0 1 0.57,0.569999995878 z" id="az20-path1246" style="fill:url(#az20-a773af38-43e4-4fd2-9485-f8aac63ca91b)" /><path d="m 1.4200893,5.9600909 a 1.08,1.08 0 0 1 1.13,-1.08 h 5 a 1.08,1.08 0 0 1 1.05,1.08 v 0 a 1.08,1.08 0 0 1 -1.08,1.09 h -5 a 1.09,1.09 0 0 1 -1.1,-1.09 z" id="az20-path1248" style="fill:#003067" /><path d="m 1.4200893,2.7400909 a 1.09,1.09 0 0 1 1.13,-1.09 h 5 a 1.08,1.08 0 0 1 1.05,1.09 v 0 a 1.08,1.08 0 0 1 -1.08,1.08 h -5 a 1.08,1.08 0 0 1 -1.1,-1.08 z" id="az20-path1250" style="fill:#003067" /><circle cx="2.5900893" cy="2.7400908" r="0.73000002" id="az20-circle1252" style="fill:#50e6ff" /><circle cx="2.5900893" cy="5.9600911" r="0.73000002" id="az20-circle1254" style="fill:#50e6ff" /><path d="m 16.840089,13.880091 a 3.12,3.12 0 0 0 -2.67,-3 3.93,3.93 0 0 0 -4,-3.8000001 4,4 0 0 0 -3.8299997,2.66 3.7,3.7 0 0 0 -3.22,3.5900001 3.77,3.77 0 0 0 3.86,3.67 h 0.34 6.2599997 0.17 a 3.15,3.15 0 0 0 3.09,-3.12 z" id="az20-path1256" style="fill:url(#az20-b4779ae6-74a5-486d-8aad-cd011859785a)" /></svg>',
|
|
57
|
+
"microsoft.web/sites":
|
|
58
|
+
'<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" id="az21-b70acf0a-34b4-4bdf-9024-7496043ff915" width="16.967587" height="16.971489" viewBox="0 0 16.967587 16.971489" version="1.1"><defs id="az21-defs3367"><radialGradient id="az21-e2cf8746-c9a8-4eee-86c2-4951983c6032" cx="13428.81" cy="3518.8601" r="56.669998" gradientTransform="matrix(0.15,0,0,0.15,-2005.33,-518.83)" gradientUnits="userSpaceOnUse"><stop offset="0.18" stop-color="#5ea0ef" id="az21-stop3347" /><stop offset="1" stop-color="#0078d4" id="az21-stop3349" /></radialGradient><linearGradient id="az21-bdd213dd-d313-473c-8ff4-0133fd3a9033" x1="4.4000001" y1="11.48" x2="4.3699999" y2="7.5300002" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ccc" id="az21-stop3352" /><stop offset="1" stop-color="#fcfcfc" id="az21-stop3354" /></linearGradient><linearGradient id="az21-afcc63c5-3649-4476-a742-bcb53a569f3c" x1="10.13" y1="15.45" x2="10.13" y2="11.9" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ccc" id="az21-stop3357" /><stop offset="1" stop-color="#fcfcfc" id="az21-stop3359" /></linearGradient><linearGradient id="az21-bd873f0b-9954-4aa5-a3df-9f4c64e8729d" x1="14.18" y1="11.15" x2="14.18" y2="7.3800001" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#ccc" id="az21-stop3362" /><stop offset="1" stop-color="#fcfcfc" id="az21-stop3364" /></linearGradient><linearGradient xlink:href="#az21-bdd213dd-d313-473c-8ff4-0133fd3a9033" id="az21-linearGradient3401" gradientUnits="userSpaceOnUse" x1="4.4000001" y1="11.48" x2="4.3699999" y2="7.5300002" /><linearGradient xlink:href="#az21-afcc63c5-3649-4476-a742-bcb53a569f3c" id="az21-linearGradient3403" gradientUnits="userSpaceOnUse" x1="10.13" y1="15.45" x2="10.13" y2="11.9" /><linearGradient xlink:href="#az21-bdd213dd-d313-473c-8ff4-0133fd3a9033" id="az21-linearGradient3405" gradientUnits="userSpaceOnUse" x1="4.4000001" y1="11.48" x2="4.3699999" y2="7.5300002" /><linearGradient xlink:href="#az21-afcc63c5-3649-4476-a742-bcb53a569f3c" id="az21-linearGradient3407" gradientUnits="userSpaceOnUse" x1="10.13" y1="15.45" x2="10.13" y2="11.9" /></defs><title id="az21-title3369">Icon-web-41</title><path id="az21-ee75dd06-1aca-4f76-9d11-d05a284020ad" d="M 13.713088,15.188401 A 8.5030877,8.5030877 0 0 1 3.2930877,1.7484011 l 0.09,-0.06 A 8.5,8.5 0 0 1 13.713088,15.188401" style="fill:url(#az21-e2cf8746-c9a8-4eee-86c2-4951983c6032)" /><path d="m 6.1930877,6.6984011 a 13,13 0 0 1 8.9100003,-3.58 8.47,8.47 0 0 0 -1.49,-1.44 14.34,14.34 0 0 0 -4.6900003,1.1 12.54,12.54 0 0 0 -4.08,2.82 2.76,2.76 0 0 1 1.35,1.1 z" id="az21-path3372" style="opacity:0.6;fill:#ffffff" /><path d="m 1.9830877,10.118401 a 17.86,17.86 0 0 0 -0.83,2.62 7.82,7.82 0 0 0 0.62,0.92 c 0.18,0.23 0.35,0.44 0.55,0.65 a 17.94,17.94 0 0 1 1.08,-3.47 2.76,2.76 0 0 1 -1.42,-0.72 z" id="az21-path3374" style="opacity:0.6;fill:#ffffff" /><path d="m 2.9630877,5.5784011 a 12,12 0 0 1 -0.69,-2.94 8.15,8.15 0 0 0 -1.1,1.45 12.69,12.69 0 0 0 0.57,2.38 2.69,2.69 0 0 1 1.22,-0.89 z" id="az21-path3376" style="opacity:0.55;fill:#f2f2f2" /><circle cx="3.8830879" cy="8.1484013" r="2.73" id="az21-circle3378" style="fill:url(#az21-linearGradient3401)" /><path d="m 7.8630877,13.138401 a 1.77,1.77 0 0 1 0.54,-1.27 11.88,11.88 0 0 1 -2.53,-1.86 2.74,2.74 0 0 1 -1.49,0.83 13.1,13.1 0 0 0 1.45,1.28 12.12,12.12 0 0 0 2.05,1.25 1.79,1.79 0 0 1 -0.02,-0.23 z" id="az21-path3380" style="opacity:0.55;fill:#f2f2f2" /><path d="m 14.163088,13.348401 a 12,12 0 0 1 -2.76,-0.32 0.41,0.41 0 0 1 0,0.11 1.75,1.75 0 0 1 -0.51,1.24 13.69,13.69 0 0 0 3.42,0.24 8.21,8.21 0 0 0 1.19,-1.34 11.5,11.5 0 0 1 -1.34,0.07 z" id="az21-path3382" style="opacity:0.55;fill:#f2f2f2" /><circle cx="9.6330881" cy="13.138401" r="1.78" id="az21-circle3384" style="fill:url(#az21-linearGradient3403)" /><path d="m 11.823088,8.3984011 a 1.83,1.83 0 0 1 0.61,-1 25.5,25.5 0 0 1 -4.4600003,-4.14 16.91,16.91 0 0 1 -2,-2.92000003 7.64,7.64 0 0 0 -1.09,0.42 18.14,18.14 0 0 0 2.15,3.18000003 26.44,26.44 0 0 0 4.7900003,4.46 z" id="az21-path3386" style="opacity:0.7;fill:#f2f2f2" /><circle cx="13.683088" cy="8.7384014" r="1.89" id="az21-circle3388" style="fill:url(#az21-bd873f0b-9954-4aa5-a3df-9f4c64e8729d)" /><path d="m 16.853088,10.008401 -0.35,-0.1699999 v 0 l -0.3,-0.16 h -0.06 l -0.26,-0.21 h -0.07 l -0.31,-0.2 a 1.76,1.76 0 0 1 -0.64,0.9199999 c 0.12,0.08 0.25,0.15 0.38,0.22 l 0.08,0.05 0.35,0.19 v 0 l 0.86,0.45 v 0 a 8.63,8.63 0 0 0 0.29,-1.1099999 z" id="az21-path3390" style="opacity:0.55;fill:#f2f2f2" /><circle cx="3.8830879" cy="8.1484013" r="2.73" id="az21-circle3392" style="fill:url(#az21-linearGradient3405)" /><circle cx="9.6330881" cy="13.138401" r="1.78" id="az21-circle3394" style="fill:url(#az21-linearGradient3407)" /></svg>',
|
|
59
|
+
}
|
|
60
|
+
# fmt: on
|
|
61
|
+
|
|
62
|
+
# same artwork, older ARM types
|
|
63
|
+
_ALIASES = {
|
|
64
|
+
"microsoft.dbforpostgresql/servers": "microsoft.dbforpostgresql/flexibleservers",
|
|
65
|
+
"microsoft.dbformysql/servers": "microsoft.dbformysql/flexibleservers",
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
def icon_for(arm_type):
|
|
70
|
+
"""The inline SVG for an ARM type, or None (caller falls back to a plain box)."""
|
|
71
|
+
t = (arm_type or "").lower()
|
|
72
|
+
return AZURE_SVG.get(t) or AZURE_SVG.get(_ALIASES.get(t, ""))
|