@untitled-devs/wasla 1.0.1 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +58 -66
- package/dist/apps/cli/src/cli-output.js +5 -5
- package/dist/apps/cli/src/commands/config.js +1 -1
- package/dist/apps/cli/src/commands/install.js +6 -6
- package/dist/apps/cli/src/commands/register.js +1 -1
- package/dist/apps/cli/src/commands/status.js +1 -1
- package/dist/apps/cli/src/commands/sync-to.js +2 -2
- package/dist/apps/cli/src/commands/watch.js +1 -1
- package/dist/apps/cli/src/index.js +4 -4
- package/dist/apps/cli/src/server/visualizer-server.js +6 -7
- package/dist/packages/adapters/src/base.d.ts +2 -2
- package/dist/packages/adapters/src/claude.js +9 -9
- package/dist/packages/adapters/src/factory.d.ts +4 -4
- package/dist/packages/adapters/src/gemini.js +10 -10
- package/dist/packages/core/src/types.d.ts +1 -1
- package/dist/packages/shared/src/config.js +3 -3
- package/dist/packages/shared/src/paths.js +4 -4
- package/dist/packages/sync/src/index.js +2 -2
- package/dist/packages/sync/src/scanner.js +3 -3
- package/dist/visualizer/assets/{index-cU_xphSj.js → index-DF8-6vb2.js} +1 -1
- package/dist/visualizer/favicon.png +0 -0
- package/dist/visualizer/index.html +3 -2
- package/dist/visualizer/logo.png +0 -0
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -1,25 +1,19 @@
|
|
|
1
1
|
|
|
2
|
-
```
|
|
3
|
-
██╗ ██╗ █████╗ ███████╗██╗ █████╗ ██████╗ ███████╗███╗ ██╗██╗███████╗
|
|
4
|
-
██║ ██║██╔══██╗██╔════╝██║ ██╔══██╗ ██╔════╝ ██╔════╝████╗ ██║██║██╔════╝
|
|
5
|
-
██║ █╗ ██║███████║███████╗██║ ███████║ ██║ ███╗█████╗ ██╔██╗ ██║██║█████╗
|
|
6
|
-
██║███╗██║██╔══██║╚════██║██║ ██╔══██║ ██║ ██║██╔══╝ ██║╚██╗██║██║██╔══╝
|
|
7
|
-
╚███╔███╔╝██║ ██║███████║███████╗██║ ██║ ╚██████╔╝███████╗██║ ╚████║██║███████╗
|
|
8
|
-
╚══╝╚══╝ ╚═╝ ╚═╝╚══════╝╚══════╝╚═╝ ╚═╝ ╚═════╝ ╚══════╝╚═╝ ╚═══╝╚═╝╚══════╝
|
|
9
|
-
```
|
|
10
2
|
<div align="center">
|
|
11
3
|
|
|
4
|
+
<img src="docs/static/img/logo-wordmark.png" alt="Wasla" width="640" />
|
|
5
|
+
|
|
12
6
|
**وصل جيني** — *One skill layer. Every AI orchestrator. Zero duplication.*
|
|
13
7
|
|
|
14
8
|
[](LICENSE)
|
|
15
|
-
[](https://github.com/The-Untitled-Org/wasla
|
|
9
|
+
[](https://github.com/The-Untitled-Org/wasla)
|
|
16
10
|
[](https://www.npmjs.com/package/@untitled-devs/wasla)
|
|
17
11
|
[](https://www.npmjs.com/package/@untitled-devs/wasla)
|
|
18
|
-
[](https://github.com/The-Untitled-Org/wasla/releases)
|
|
13
|
+
[](https://github.com/The-Untitled-Org/wasla/actions/workflows/ci-docs.yml)
|
|
14
|
+
[](https://codecov.io/gh/The-Untitled-Org/wasla)
|
|
21
15
|
[]()
|
|
22
|
-
[](https://github.com/The-Untitled-Org/wasla/graphs/contributors)
|
|
23
17
|
|
|
24
18
|
</div>
|
|
25
19
|
|
|
@@ -49,11 +43,11 @@ You end up **copy-pasting configs, duplicating agent definitions, and maintainin
|
|
|
49
43
|
|
|
50
44
|
---
|
|
51
45
|
|
|
52
|
-
## ✨ What
|
|
46
|
+
## ✨ What Wasla Does
|
|
53
47
|
|
|
54
|
-
|
|
48
|
+
Wasla syncs assets across orchestrators from the CLI. Helper skill registration is optional.
|
|
55
49
|
|
|
56
|
-
When sync is triggered — manually (`sync`) or continuously (`watch`) —
|
|
50
|
+
When sync is triggered — manually (`sync`) or continuously (`watch`) — Wasla:
|
|
57
51
|
|
|
58
52
|
1. **Scans** the known config directories of every supported orchestrator on your machine
|
|
59
53
|
(`~/.claude/`, `~/.gemini/`, `~/.openclaw/`)
|
|
@@ -74,12 +68,12 @@ Say you create an agent inside Gemini CLI:
|
|
|
74
68
|
~/.gemini/agents/researcher.md ← original, owned by Gemini
|
|
75
69
|
```
|
|
76
70
|
|
|
77
|
-
After `
|
|
71
|
+
After `wasla sync`, Wasla writes a minimal stub into every other tool:
|
|
78
72
|
|
|
79
73
|
```
|
|
80
|
-
~/.claude/agents/researcher.md ← stub, written by
|
|
81
|
-
~/.codex/agents/researcher.md ← stub, written by
|
|
82
|
-
~/.openclaw/agents/researcher.md ← stub, written by
|
|
74
|
+
~/.claude/agents/researcher.md ← stub, written by Wasla
|
|
75
|
+
~/.codex/agents/researcher.md ← stub, written by Wasla
|
|
76
|
+
~/.openclaw/agents/researcher.md ← stub, written by Wasla
|
|
83
77
|
```
|
|
84
78
|
|
|
85
79
|
Each stub contains only the minimum that native tool needs to load the original:
|
|
@@ -87,7 +81,7 @@ Each stub contains only the minimum that native tool needs to load the original:
|
|
|
87
81
|
```markdown
|
|
88
82
|
---
|
|
89
83
|
# researcher
|
|
90
|
-
|
|
84
|
+
wasla_ref: ~/.gemini/agents/researcher.md
|
|
91
85
|
origin: gemini
|
|
92
86
|
---
|
|
93
87
|
Refer to source definition at ~/.gemini/agents/researcher.md
|
|
@@ -125,8 +119,8 @@ The same pattern applies across every asset type:
|
|
|
125
119
|
|
|
126
120
|
```bash
|
|
127
121
|
npm i -g @untitled-devs/wasla
|
|
128
|
-
|
|
129
|
-
|
|
122
|
+
wasla config --scope workspace
|
|
123
|
+
wasla sync
|
|
130
124
|
```
|
|
131
125
|
|
|
132
126
|
Choose `workspace` or `user` once before running operational commands.
|
|
@@ -141,11 +135,11 @@ npx @untitled-devs/wasla sync
|
|
|
141
135
|
Optional helper registration:
|
|
142
136
|
|
|
143
137
|
```bash
|
|
144
|
-
|
|
138
|
+
wasla register
|
|
145
139
|
```
|
|
146
140
|
|
|
147
|
-
`register` detects supported orchestrators and adds the
|
|
148
|
-
Use `
|
|
141
|
+
`register` detects supported orchestrators and adds the Wasla helper skill inside each one.
|
|
142
|
+
Use `wasla register --to claude` (or comma-separated targets) to install only specific providers.
|
|
149
143
|
|
|
150
144
|
---
|
|
151
145
|
|
|
@@ -155,19 +149,19 @@ Use `waslagenie register --to claude` (or comma-separated targets) to install on
|
|
|
155
149
|
|
|
156
150
|
```bash
|
|
157
151
|
# Run once on demand
|
|
158
|
-
|
|
152
|
+
wasla sync
|
|
159
153
|
|
|
160
154
|
# Keep syncing while you work
|
|
161
|
-
|
|
155
|
+
wasla watch
|
|
162
156
|
|
|
163
157
|
# Open the visualizer dashboard
|
|
164
|
-
|
|
158
|
+
wasla visualizer
|
|
165
159
|
|
|
166
160
|
# Optional: install helper skill in all detected providers
|
|
167
|
-
|
|
161
|
+
wasla register
|
|
168
162
|
|
|
169
163
|
# Optional: install helper skill in specific providers only
|
|
170
|
-
|
|
164
|
+
wasla register --to claude,gemini
|
|
171
165
|
```
|
|
172
166
|
|
|
173
167
|
You can also run without global install:
|
|
@@ -202,10 +196,10 @@ For local development without repeated global installs:
|
|
|
202
196
|
|
|
203
197
|
```bash
|
|
204
198
|
npm link
|
|
205
|
-
|
|
199
|
+
wasla sync
|
|
206
200
|
```
|
|
207
201
|
|
|
208
|
-
Then after code changes, run `npm run build` (or any script that builds) and use `
|
|
202
|
+
Then after code changes, run `npm run build` (or any script that builds) and use `wasla` again.
|
|
209
203
|
|
|
210
204
|
---
|
|
211
205
|
|
|
@@ -214,7 +208,7 @@ Then after code changes, run `npm run build` (or any script that builds) and use
|
|
|
214
208
|
### One-time sync
|
|
215
209
|
|
|
216
210
|
```bash
|
|
217
|
-
|
|
211
|
+
wasla sync
|
|
218
212
|
```
|
|
219
213
|
|
|
220
214
|
```
|
|
@@ -237,16 +231,16 @@ waslagenie sync
|
|
|
237
231
|
|
|
238
232
|
### Automatic background sync — watch mode
|
|
239
233
|
|
|
240
|
-
`
|
|
234
|
+
`wasla watch` is the background sync process. It watches for file changes across all tool directories while the command is running.
|
|
241
235
|
|
|
242
236
|
```
|
|
243
|
-
[watch starts] →
|
|
244
|
-
[File changes] →
|
|
245
|
-
[watch stops] →
|
|
237
|
+
[watch starts] → Wasla process launched
|
|
238
|
+
[File changes] → Wasla detects change and syncs immediately
|
|
239
|
+
[watch stops] → Wasla process exits cleanly
|
|
246
240
|
```
|
|
247
241
|
|
|
248
242
|
```
|
|
249
|
-
👁
|
|
243
|
+
👁 Wasla active (session: Claude Code)
|
|
250
244
|
Monitoring: ~/.claude ~/.gemini ~/.codex ~/.openclaw
|
|
251
245
|
|
|
252
246
|
[14:32:01] New agent detected → ~/.gemini/agents/planner.md
|
|
@@ -266,10 +260,10 @@ Choose the active scope before running sync, watch, status, or the visualizer:
|
|
|
266
260
|
|
|
267
261
|
```bash
|
|
268
262
|
# Use the current project workspace registry
|
|
269
|
-
|
|
263
|
+
wasla config --scope workspace
|
|
270
264
|
|
|
271
265
|
# Use the user-level registry across projects
|
|
272
|
-
|
|
266
|
+
wasla config --scope user
|
|
273
267
|
```
|
|
274
268
|
|
|
275
269
|
All other commands use the saved scope automatically. They do not accept `--scope`.
|
|
@@ -279,7 +273,7 @@ All other commands use the saved scope automatically. They do not accept `--scop
|
|
|
279
273
|
### Status — see everything and where it lives
|
|
280
274
|
|
|
281
275
|
```bash
|
|
282
|
-
|
|
276
|
+
wasla status
|
|
283
277
|
```
|
|
284
278
|
|
|
285
279
|
```
|
|
@@ -321,55 +315,55 @@ review-pr command openclaw claude ✔ gemini ✔ codex ✔ her
|
|
|
321
315
|
|
|
322
316
|
## 🗃️ Registry Storage
|
|
323
317
|
|
|
324
|
-
|
|
318
|
+
Wasla keeps its own state separately from all orchestrators. You choose the active scope explicitly before the first sync:
|
|
325
319
|
|
|
326
320
|
**User-level** (available across all your projects):
|
|
327
321
|
```
|
|
328
|
-
~/.
|
|
322
|
+
~/.wasla/
|
|
329
323
|
├── registry.json ← user-scope assets and stub locations
|
|
330
324
|
└── config.json ← active scope preference
|
|
331
325
|
```
|
|
332
326
|
|
|
333
327
|
**Workspace-level** (scoped to current project only):
|
|
334
328
|
```
|
|
335
|
-
.
|
|
329
|
+
.wasla/
|
|
336
330
|
└── registry.json ← workspace-scope assets and stub locations
|
|
337
331
|
```
|
|
338
332
|
|
|
339
333
|
Switch anytime:
|
|
340
334
|
```bash
|
|
341
|
-
|
|
342
|
-
|
|
335
|
+
wasla config --scope workspace
|
|
336
|
+
wasla config --scope user
|
|
343
337
|
```
|
|
344
338
|
|
|
345
339
|
---
|
|
346
340
|
|
|
347
341
|
## 🌱 Gradual Centralization
|
|
348
342
|
|
|
349
|
-
|
|
343
|
+
Wasla respects the **zero-friction promise**: your agents live where they were born. You don't need to learn a new canonical location on day one.
|
|
350
344
|
|
|
351
|
-
But over time,
|
|
345
|
+
But over time, Wasla offers a path toward centralization — for portability, backup, and eventually team sharing.
|
|
352
346
|
|
|
353
347
|
```
|
|
354
348
|
Day 1 — Agents live in ~/.claude/, ~/.gemini/, ~/.codex/
|
|
355
|
-
|
|
349
|
+
Wasla syncs them via stubs. You don't change anything.
|
|
356
350
|
|
|
357
351
|
Over time — You discover agents scattered across 5 tool directories.
|
|
358
|
-
You run:
|
|
359
|
-
Now researcher lives in ~/.
|
|
352
|
+
You run: wasla migrate researcher --to ~/.wasla/
|
|
353
|
+
Now researcher lives in ~/.wasla/ and stubs point there.
|
|
360
354
|
|
|
361
|
-
Later — All your agents are in ~/.
|
|
362
|
-
Backup is:
|
|
363
|
-
New machine is:
|
|
355
|
+
Later — All your agents are in ~/.wasla/.
|
|
356
|
+
Backup is: wasla export
|
|
357
|
+
New machine is: wasla import backup.tar
|
|
364
358
|
```
|
|
365
359
|
|
|
366
360
|
**Commands:**
|
|
367
361
|
|
|
368
362
|
```bash
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
363
|
+
wasla status # see where every asset lives today
|
|
364
|
+
wasla migrate <name> --to ~/.wasla/ # optionally move an asset to central location
|
|
365
|
+
wasla export # bundle everything for backup or new machine
|
|
366
|
+
wasla import backup.tar # restore on a new machine
|
|
373
367
|
```
|
|
374
368
|
|
|
375
369
|
Nothing is forced. Centralization is a convenience, not a requirement.
|
|
@@ -379,7 +373,7 @@ Nothing is forced. Centralization is a convenience, not a requirement.
|
|
|
379
373
|
## 🏗️ Project Structure
|
|
380
374
|
|
|
381
375
|
```
|
|
382
|
-
wasla
|
|
376
|
+
wasla/
|
|
383
377
|
├── apps/
|
|
384
378
|
│ ├── cli/src/ # CLI commands and visualizer server
|
|
385
379
|
│ └── visualizer/src/ # React visualizer
|
|
@@ -397,12 +391,10 @@ wasla-genie/
|
|
|
397
391
|
|
|
398
392
|
---
|
|
399
393
|
|
|
400
|
-
## 🌍 Why "
|
|
394
|
+
## 🌍 Why "Wasla"?
|
|
401
395
|
|
|
402
396
|
**Wasla (وصلة)** is Arabic for *connection* — the act of joining what was always separate.
|
|
403
397
|
|
|
404
|
-
**Genie** — it appears when summoned, connects what you need, and watches quietly in the background until called again.
|
|
405
|
-
|
|
406
398
|
Your agents live where they were born.
|
|
407
399
|
Your tools see everything.
|
|
408
400
|
Nothing is ever duplicated.
|
|
@@ -412,8 +404,8 @@ Nothing is ever duplicated.
|
|
|
412
404
|
## 🤝 Contributing
|
|
413
405
|
|
|
414
406
|
```bash
|
|
415
|
-
git clone https://github.com/The-Untitled-Org/wasla
|
|
416
|
-
cd wasla
|
|
407
|
+
git clone https://github.com/The-Untitled-Org/wasla
|
|
408
|
+
cd wasla
|
|
417
409
|
npm install
|
|
418
410
|
npm run visualizer:install
|
|
419
411
|
npm run dev
|
|
@@ -434,7 +426,7 @@ MIT © [The Untitled Org](https://github.com/The-Untitled-Org)
|
|
|
434
426
|
<div align="center">
|
|
435
427
|
|
|
436
428
|
**Your agents live where they were born.**
|
|
437
|
-
**
|
|
429
|
+
**Wasla makes sure every tool can find them.**
|
|
438
430
|
|
|
439
431
|
⭐ Star this repo if you are tired of copy-pasting the same config into five different tools.
|
|
440
432
|
|
|
@@ -13,11 +13,11 @@ function color(text, ...codes) {
|
|
|
13
13
|
}
|
|
14
14
|
export function banner() {
|
|
15
15
|
console.log(color(`
|
|
16
|
-
__ __ _
|
|
17
|
-
\\ \\ / /_ _ ___| | __ _
|
|
18
|
-
\\ \\ /\\ / / _\` / __| |/ _\` |
|
|
19
|
-
\\ V V / (_| \\__ \\ | (_| |
|
|
20
|
-
\\_/\\_/ \\__,_|___/_|\\__,_
|
|
16
|
+
__ __ _
|
|
17
|
+
\\ \\ / /_ _ ___| | __ _
|
|
18
|
+
\\ \\ /\\ / / _\` / __| |/ _\` |
|
|
19
|
+
\\ V V / (_| \\__ \\ | (_| |
|
|
20
|
+
\\_/\\_/ \\__,_|___/_|\\__,_|
|
|
21
21
|
`, ansi.bold, ansi.cyan));
|
|
22
22
|
}
|
|
23
23
|
export function success(message) {
|
|
@@ -27,7 +27,7 @@ export async function configCommand(options) {
|
|
|
27
27
|
const response = await prompts({
|
|
28
28
|
type: 'select',
|
|
29
29
|
name: 'scope',
|
|
30
|
-
message: 'Where should
|
|
30
|
+
message: 'Where should Wasla store and sync assets?',
|
|
31
31
|
choices: [
|
|
32
32
|
{ title: 'Workspace - current project only', value: 'workspace' },
|
|
33
33
|
{ title: 'User - available across all projects', value: 'user' },
|
|
@@ -2,7 +2,7 @@ import { section, success, error, highlight, spacer } from '../cli-output.js';
|
|
|
2
2
|
import { readConfiguredScope } from '#shared/config.js';
|
|
3
3
|
export async function installCommand() {
|
|
4
4
|
try {
|
|
5
|
-
section('Preparing
|
|
5
|
+
section('Preparing Wasla CLI...');
|
|
6
6
|
spacer();
|
|
7
7
|
const scope = await readConfiguredScope();
|
|
8
8
|
if (scope) {
|
|
@@ -10,8 +10,8 @@ export async function installCommand() {
|
|
|
10
10
|
}
|
|
11
11
|
else {
|
|
12
12
|
console.log('Choose a scope before running sync:');
|
|
13
|
-
console.log('
|
|
14
|
-
console.log('
|
|
13
|
+
console.log(' wasla config --scope user');
|
|
14
|
+
console.log(' wasla config --scope workspace');
|
|
15
15
|
}
|
|
16
16
|
spacer();
|
|
17
17
|
highlight('CLI setup complete!');
|
|
@@ -19,9 +19,9 @@ export async function installCommand() {
|
|
|
19
19
|
console.log('This command does not write skills into Claude, Gemini, or other tools.');
|
|
20
20
|
console.log('');
|
|
21
21
|
console.log('Common commands:');
|
|
22
|
-
console.log('
|
|
23
|
-
console.log('
|
|
24
|
-
console.log('
|
|
22
|
+
console.log(' wasla sync');
|
|
23
|
+
console.log(' wasla sync-to --from gemini --to claude');
|
|
24
|
+
console.log(' wasla register # optional: add Wasla helper skills to tools');
|
|
25
25
|
console.log('');
|
|
26
26
|
}
|
|
27
27
|
catch (err) {
|
|
@@ -35,7 +35,7 @@ export async function registerCommand(options = {}) {
|
|
|
35
35
|
targets = requested.map((name) => installedByName.get(name));
|
|
36
36
|
}
|
|
37
37
|
spacer();
|
|
38
|
-
section('Registering
|
|
38
|
+
section('Registering Wasla helper skills...');
|
|
39
39
|
spacer();
|
|
40
40
|
await ensureDir(getRegistryDir(scope));
|
|
41
41
|
for (const adapter of targets) {
|
|
@@ -9,7 +9,7 @@ export async function statusCommand() {
|
|
|
9
9
|
const scope = await requireConfiguredScope();
|
|
10
10
|
const registryPath = getRegistryPath(scope);
|
|
11
11
|
if (!(await fileExists(registryPath))) {
|
|
12
|
-
error('Registry not found. Run:
|
|
12
|
+
error('Registry not found. Run: wasla sync');
|
|
13
13
|
process.exit(1);
|
|
14
14
|
}
|
|
15
15
|
const registry = new RegistryManager(scope);
|
|
@@ -10,8 +10,8 @@ export async function syncToCommand(options) {
|
|
|
10
10
|
const to = options.to;
|
|
11
11
|
if (!from || !to) {
|
|
12
12
|
error('Error: --from and --to are required');
|
|
13
|
-
console.log('Usage:
|
|
14
|
-
console.log('Example:
|
|
13
|
+
console.log('Usage: wasla sync-to --from <source> --to <target>');
|
|
14
|
+
console.log('Example: wasla sync-to --from gemini --to claude');
|
|
15
15
|
process.exit(1);
|
|
16
16
|
}
|
|
17
17
|
const targets = to.split(',').map((t) => t.trim());
|
|
@@ -24,7 +24,7 @@ export async function watchCommand() {
|
|
|
24
24
|
ignored: [
|
|
25
25
|
/(^|[\/\\])node_modules([\/\\]|$)/,
|
|
26
26
|
/(^|[\/\\])\.git([\/\\]|$)/,
|
|
27
|
-
/(^|[\/\\])\.
|
|
27
|
+
/(^|[\/\\])\.wasla([\/\\]|$)/,
|
|
28
28
|
/(^|[\/\\])dist([\/\\]|$)/,
|
|
29
29
|
/(^|[\/\\])output([\/\\]|$)/,
|
|
30
30
|
],
|
|
@@ -27,13 +27,13 @@ function readPackageVersion(moduleUrl) {
|
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
29
|
program
|
|
30
|
-
.name('
|
|
30
|
+
.name('wasla')
|
|
31
31
|
.description('Universal synchronization layer for AI agent orchestrators')
|
|
32
32
|
.version(readPackageVersion(import.meta.url));
|
|
33
|
-
program.addCommand(new Command('install').description('Prepare
|
|
33
|
+
program.addCommand(new Command('install').description('Prepare Wasla CLI state').action(installCommand));
|
|
34
34
|
program.addCommand(new Command('register')
|
|
35
35
|
.option('--to <targets>', 'Target provider(s), comma-separated. Example: claude,gemini')
|
|
36
|
-
.description('Register
|
|
36
|
+
.description('Register Wasla helper skills inside installed AI tools')
|
|
37
37
|
.action((options) => registerCommand(options)));
|
|
38
38
|
program.addCommand(new Command('sync')
|
|
39
39
|
.description('Scan and sync agents/MCPs across tools')
|
|
@@ -49,7 +49,7 @@ program.addCommand(new Command('status')
|
|
|
49
49
|
program.addCommand(new Command('config')
|
|
50
50
|
.option('--scope <scope>', 'Set scope to user or workspace')
|
|
51
51
|
.option('--show', 'Show current config')
|
|
52
|
-
.description('Configure
|
|
52
|
+
.description('Configure Wasla settings')
|
|
53
53
|
.action(async (options) => {
|
|
54
54
|
await configCommand(options);
|
|
55
55
|
}));
|
|
@@ -18,7 +18,7 @@ async function getEntityContent(scope, type, name, providerId) {
|
|
|
18
18
|
const scanner = new Scanner(scope);
|
|
19
19
|
await scanner.initialize();
|
|
20
20
|
const assetType = mapEntityType(type);
|
|
21
|
-
const discovered = providerId === '
|
|
21
|
+
const discovered = providerId === 'wasla'
|
|
22
22
|
? await scanner.scanAllTools([assetType])
|
|
23
23
|
: await scanner.scanTool(providerId, [assetType]);
|
|
24
24
|
const target = discovered
|
|
@@ -49,8 +49,7 @@ function isAllowedOrigin(origin, port) {
|
|
|
49
49
|
return origin === `http://127.0.0.1:${port}` || origin === `http://localhost:${port}`;
|
|
50
50
|
}
|
|
51
51
|
function isKnownProvider(scope, providerId) {
|
|
52
|
-
return (providerId === '
|
|
53
|
-
getAllAdapters(scope).some((adapter) => adapter.name === providerId));
|
|
52
|
+
return (providerId === 'wasla' || getAllAdapters(scope).some((adapter) => adapter.name === providerId));
|
|
54
53
|
}
|
|
55
54
|
function mapEntityType(type) {
|
|
56
55
|
if (type === 'instruction')
|
|
@@ -88,7 +87,7 @@ function openBrowser(url) {
|
|
|
88
87
|
exec(`xdg-open "${url}"`);
|
|
89
88
|
}
|
|
90
89
|
export const PROVIDER_ICONS = {
|
|
91
|
-
|
|
90
|
+
wasla: '/logo.png',
|
|
92
91
|
claude: 'https://cdn.simpleicons.org/claude',
|
|
93
92
|
gemini: 'https://cdn.simpleicons.org/googlegemini',
|
|
94
93
|
cursor: 'https://cdn.simpleicons.org/cursor',
|
|
@@ -105,9 +104,9 @@ async function buildConfig(scope) {
|
|
|
105
104
|
const installedNames = new Set(installed.map((adapter) => adapter.name));
|
|
106
105
|
const providers = [
|
|
107
106
|
{
|
|
108
|
-
id: '
|
|
109
|
-
title: '
|
|
110
|
-
iconUrl: PROVIDER_ICONS.
|
|
107
|
+
id: 'wasla',
|
|
108
|
+
title: 'Wasla',
|
|
109
|
+
iconUrl: PROVIDER_ICONS.wasla,
|
|
111
110
|
isHub: true,
|
|
112
111
|
isInstalled: true,
|
|
113
112
|
},
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare abstract class BaseAdapter implements
|
|
1
|
+
import { WaslaAdapter, Asset, AssetFormat } from '#core/types.js';
|
|
2
|
+
export declare abstract class BaseAdapter implements WaslaAdapter {
|
|
3
3
|
abstract name: string;
|
|
4
4
|
abstract displayName: string;
|
|
5
5
|
abstract mcpKey: string;
|
|
@@ -65,9 +65,9 @@ export class ClaudeAdapter extends BaseAdapter {
|
|
|
65
65
|
await writeText(targetPath, content);
|
|
66
66
|
}
|
|
67
67
|
async installSkill() {
|
|
68
|
-
// Write a
|
|
68
|
+
// Write a Wasla skill into Claude's native skills directory.
|
|
69
69
|
// We do NOT touch CLAUDE.md — that file belongs to the user.
|
|
70
|
-
const skillDir = join(this.paths.skill, '
|
|
70
|
+
const skillDir = join(this.paths.skill, 'wasla');
|
|
71
71
|
await ensureDir(skillDir);
|
|
72
72
|
const skillPath = join(skillDir, 'SKILL.md');
|
|
73
73
|
if (await fileExists(skillPath)) {
|
|
@@ -75,19 +75,19 @@ export class ClaudeAdapter extends BaseAdapter {
|
|
|
75
75
|
}
|
|
76
76
|
const skillContent = `---
|
|
77
77
|
description: >
|
|
78
|
-
Runs
|
|
78
|
+
Runs Wasla CLI commands to sync, inspect, or manage agents and MCPs
|
|
79
79
|
across AI orchestrators. Use when asked to sync tools, check sync status,
|
|
80
|
-
install
|
|
80
|
+
install Wasla, or troubleshoot why an agent isn't appearing in a tool.
|
|
81
81
|
---
|
|
82
82
|
|
|
83
|
-
#
|
|
83
|
+
# Wasla Operator
|
|
84
84
|
|
|
85
|
-
Use the \`
|
|
85
|
+
Use the \`wasla\` CLI to sync agents and MCPs across all installed AI tools.
|
|
86
86
|
|
|
87
87
|
\`\`\`bash
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
88
|
+
wasla sync # Mirror agents across all tools
|
|
89
|
+
wasla status # Show registry state
|
|
90
|
+
wasla watch # Auto-sync on file changes
|
|
91
91
|
\`\`\`
|
|
92
92
|
`;
|
|
93
93
|
await writeText(skillPath, skillContent);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare function getAdapter(toolName: string, scope?: 'user' | 'workspace'):
|
|
3
|
-
export declare function getInstalledAdapters(scope?: 'user' | 'workspace'): Promise<
|
|
4
|
-
export declare function getAllAdapters(scope?: 'user' | 'workspace'):
|
|
1
|
+
import { WaslaAdapter } from '#core/types.js';
|
|
2
|
+
export declare function getAdapter(toolName: string, scope?: 'user' | 'workspace'): WaslaAdapter;
|
|
3
|
+
export declare function getInstalledAdapters(scope?: 'user' | 'workspace'): Promise<WaslaAdapter[]>;
|
|
4
|
+
export declare function getAllAdapters(scope?: 'user' | 'workspace'): WaslaAdapter[];
|
|
@@ -64,30 +64,30 @@ export class GeminiAdapter extends BaseAdapter {
|
|
|
64
64
|
}
|
|
65
65
|
async installSkill() {
|
|
66
66
|
// Create the skills/ directory (Gemini CLI's native skill location) and
|
|
67
|
-
// write a
|
|
67
|
+
// write a Wasla skill file so Gemini knows how to run sync commands.
|
|
68
68
|
// We do NOT touch GEMINI.md — that file belongs to the user.
|
|
69
|
-
const skillDir = join(this.paths.skill, '
|
|
69
|
+
const skillDir = join(this.paths.skill, 'wasla');
|
|
70
70
|
await ensureDir(skillDir);
|
|
71
71
|
const skillPath = join(skillDir, 'SKILL.md');
|
|
72
72
|
if (await fileExists(skillPath)) {
|
|
73
73
|
return; // already installed, idempotent
|
|
74
74
|
}
|
|
75
75
|
const skillContent = `---
|
|
76
|
-
name:
|
|
76
|
+
name: wasla
|
|
77
77
|
description: >
|
|
78
|
-
Runs
|
|
78
|
+
Runs Wasla CLI commands to sync, inspect, or manage agents and MCPs
|
|
79
79
|
across AI orchestrators. Use when asked to sync tools, check sync status,
|
|
80
|
-
install
|
|
80
|
+
install Wasla, or troubleshoot why an agent isn't appearing in a tool.
|
|
81
81
|
---
|
|
82
82
|
|
|
83
|
-
#
|
|
83
|
+
# Wasla Operator
|
|
84
84
|
|
|
85
|
-
Use the \`
|
|
85
|
+
Use the \`wasla\` CLI to sync agents and MCPs across all installed AI tools.
|
|
86
86
|
|
|
87
87
|
\`\`\`bash
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
88
|
+
wasla sync # Mirror agents across all tools
|
|
89
|
+
wasla status # Show registry state
|
|
90
|
+
wasla watch # Auto-sync on file changes
|
|
91
91
|
\`\`\`
|
|
92
92
|
`;
|
|
93
93
|
await writeText(skillPath, skillContent);
|
|
@@ -10,17 +10,17 @@ export async function readConfiguredScope() {
|
|
|
10
10
|
return null;
|
|
11
11
|
const config = await readJSON(configPath);
|
|
12
12
|
if (typeof config !== 'object' || config === null || typeof config.scope !== 'string') {
|
|
13
|
-
throw new Error(`Invalid scope in ${configPath}. Run:
|
|
13
|
+
throw new Error(`Invalid scope in ${configPath}. Run: wasla config --scope <scope>`);
|
|
14
14
|
}
|
|
15
15
|
if (config.scope !== 'user' && config.scope !== 'workspace') {
|
|
16
|
-
throw new Error(`Invalid scope in ${configPath}. Run:
|
|
16
|
+
throw new Error(`Invalid scope in ${configPath}. Run: wasla config --scope <scope>`);
|
|
17
17
|
}
|
|
18
18
|
return config.scope;
|
|
19
19
|
}
|
|
20
20
|
export async function requireConfiguredScope() {
|
|
21
21
|
const scope = await readConfiguredScope();
|
|
22
22
|
if (!scope) {
|
|
23
|
-
throw new Error('Scope is not configured. Run:
|
|
23
|
+
throw new Error('Scope is not configured. Run: wasla config --scope <user|workspace>');
|
|
24
24
|
}
|
|
25
25
|
return scope;
|
|
26
26
|
}
|
|
@@ -11,18 +11,18 @@ export function getRegistryPath(scope) {
|
|
|
11
11
|
return resolve(`output/tests/${scope}-registry.json`);
|
|
12
12
|
}
|
|
13
13
|
if (scope === 'user') {
|
|
14
|
-
return expandTilde('~/.
|
|
14
|
+
return expandTilde('~/.wasla/registry.json');
|
|
15
15
|
}
|
|
16
|
-
return resolve('.
|
|
16
|
+
return resolve('.wasla/registry.json');
|
|
17
17
|
}
|
|
18
18
|
export function getRegistryDir(scope) {
|
|
19
19
|
if (process.env.NODE_ENV === 'test') {
|
|
20
20
|
return resolve('output/tests');
|
|
21
21
|
}
|
|
22
22
|
if (scope === 'user') {
|
|
23
|
-
return expandTilde('~/.
|
|
23
|
+
return expandTilde('~/.wasla');
|
|
24
24
|
}
|
|
25
|
-
return resolve('.
|
|
25
|
+
return resolve('.wasla');
|
|
26
26
|
}
|
|
27
27
|
export function getToolMarkers(scope = 'user') {
|
|
28
28
|
if (scope === 'workspace') {
|
|
@@ -261,7 +261,7 @@ export class Syncer {
|
|
|
261
261
|
catch {
|
|
262
262
|
await this.registry.load();
|
|
263
263
|
}
|
|
264
|
-
const candidates = sourceTool === '
|
|
264
|
+
const candidates = sourceTool === 'wasla'
|
|
265
265
|
? (await this.scanner.scanAllTools([type])).filter((item) => item.name === name)
|
|
266
266
|
: (await this.scanner.scanTool(sourceTool, [type])).filter((item) => item.name === name);
|
|
267
267
|
const sourceCandidates = candidates.filter((item) => item.tool !== targetTool);
|
|
@@ -269,7 +269,7 @@ export class Syncer {
|
|
|
269
269
|
if (items.length === 0) {
|
|
270
270
|
throw new Error(`Cannot find ${type}:${name} in ${sourceTool}`);
|
|
271
271
|
}
|
|
272
|
-
const sourceItems = sourceTool === '
|
|
272
|
+
const sourceItems = sourceTool === 'wasla' ? items.filter((item) => item.tool === items[0].tool) : items;
|
|
273
273
|
const sorted = sourceItems.sort((a, b) => b.modifiedAt - a.modifiedAt);
|
|
274
274
|
const source = type === 'skill'
|
|
275
275
|
? sorted.find((item) => item.relativePath.endsWith(`${sep}SKILL.md`) || item.relativePath === 'SKILL.md') || sorted[0]
|
|
@@ -113,9 +113,9 @@ export class Scanner {
|
|
|
113
113
|
if (process.env.DEBUG_SCANNER) {
|
|
114
114
|
console.log(`[Scanner] Processing: path=${filePath}, rel=${relativePath}, name=${name}, isStub=${isStub}`);
|
|
115
115
|
}
|
|
116
|
-
if (name.toLowerCase() === '
|
|
116
|
+
if (name.toLowerCase() === 'wasla') {
|
|
117
117
|
if (process.env.DEBUG_SCANNER) {
|
|
118
|
-
console.log(`[Scanner] Skipping
|
|
118
|
+
console.log(`[Scanner] Skipping wasla asset`);
|
|
119
119
|
}
|
|
120
120
|
continue;
|
|
121
121
|
}
|
|
@@ -201,7 +201,7 @@ export class Scanner {
|
|
|
201
201
|
return grouped;
|
|
202
202
|
}
|
|
203
203
|
extractAssetName(relativePathOrFileName) {
|
|
204
|
-
// For nested paths:
|
|
204
|
+
// For nested paths: wasla/SKILL.md -> wasla
|
|
205
205
|
// For flat files: researcher.md -> researcher
|
|
206
206
|
const parts = relativePathOrFileName.split(/[/\\]/);
|
|
207
207
|
if (parts.length > 1) {
|
|
@@ -141,4 +141,4 @@ To suppress this warning, you need to explicitly provide the \`palette.${t}Chann
|
|
|
141
141
|
animation: ${Pc} 1.4s linear infinite;
|
|
142
142
|
`,Lc=typeof Fc==`string`?null:Bt`
|
|
143
143
|
animation: ${Fc} 1.4s ease-in-out infinite;
|
|
144
|
-
`,Rc=e=>{let{classes:t,variant:n,color:r,disableShrink:i}=e;return Ea({root:[`root`,n,`color${Ko(r)}`],svg:[`svg`],track:[`track`],circle:[`circle`,i&&`circleDisableShrink`]},Mc,t)},zc=K(`span`,{name:`MuiCircularProgress`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[n.variant],t[`color${Ko(n.color)}`]]}})(Xo(({theme:e})=>({display:`inline-block`,variants:[{props:{variant:`determinate`},style:{transition:e.transitions.create(`transform`)}},{props:{variant:`indeterminate`},style:Ic||{animation:`${Pc} 1.4s linear infinite`}},...Object.entries(e.palette).filter(kc()).map(([t])=>({props:{color:t},style:{color:(e.vars||e).palette[t].main}}))]}))),Bc=K(`svg`,{name:`MuiCircularProgress`,slot:`Svg`})({display:`block`}),Vc=K(`circle`,{name:`MuiCircularProgress`,slot:`Circle`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.circle,n.disableShrink&&t.circleDisableShrink]}})(Xo(({theme:e})=>({stroke:`currentColor`,variants:[{props:{variant:`determinate`},style:{transition:e.transitions.create(`stroke-dashoffset`)}},{props:{variant:`indeterminate`},style:{strokeDasharray:`80px, 200px`,strokeDashoffset:0}},{props:({ownerState:e})=>e.variant===`indeterminate`&&!e.disableShrink,style:Lc||{animation:`${Fc} 1.4s ease-in-out infinite`}}]}))),Hc=K(`circle`,{name:`MuiCircularProgress`,slot:`Track`})(Xo(({theme:e})=>({stroke:`currentColor`,opacity:(e.vars||e).palette.action.activatedOpacity}))),Uc=z.forwardRef(function(e,t){let n=Zo({props:e,name:`MuiCircularProgress`}),{className:r,color:i=`primary`,disableShrink:a=!1,enableTrackSlot:o=!1,min:s,max:c,size:l=40,style:u,thickness:d=3.6,value:f=n.min??0,variant:p=`indeterminate`,...m}=n,h=s??0,g=c??100,_={...n,color:i,disableShrink:a,size:l,thickness:d,value:f,variant:p,enableTrackSlot:o},v=Rc(_),y={},b={},x={};if(p===`determinate`){let e=2*Math.PI*((Nc-d)/2),t=g-h;y.strokeDasharray=e.toFixed(3),y.strokeDashoffset=t>0?`${((g-f)/t*e).toFixed(3)}px`:`${e.toFixed(3)}px`,b.transform=`rotate(-90deg)`,x[`aria-valuenow`]=f,x[`aria-valuemin`]=h,x[`aria-valuemax`]=g}return(0,B.jsx)(zc,{className:V(v.root,r),style:{width:l,height:l,...b,...u},ownerState:_,ref:t,role:`progressbar`,...x,...m,children:(0,B.jsxs)(Bc,{className:v.svg,ownerState:_,viewBox:`${Nc/2} ${Nc/2} ${Nc} ${Nc}`,children:[o?(0,B.jsx)(Hc,{className:v.track,ownerState:_,cx:Nc,cy:Nc,r:(Nc-d)/2,fill:`none`,strokeWidth:d,"aria-hidden":`true`}):null,(0,B.jsx)(Vc,{className:v.circle,style:y,ownerState:_,cx:Nc,cy:Nc,r:(Nc-d)/2,fill:`none`,strokeWidth:d})]})})});function Wc(e){return ii(`MuiIconButton`,e)}var Gc=H(`MuiIconButton`,[`root`,`disabled`,`colorInherit`,`colorPrimary`,`colorSecondary`,`colorError`,`colorInfo`,`colorSuccess`,`colorWarning`,`edgeStart`,`edgeEnd`,`sizeSmall`,`sizeMedium`,`sizeLarge`,`loading`,`loadingIndicator`,`loadingWrapper`]),Kc=e=>{let{classes:t,disabled:n,color:r,edge:i,size:a,loading:o}=e;return Ea({root:[`root`,o&&`loading`,n&&`disabled`,r!==`default`&&`color${Ko(r)}`,i&&`edge${Ko(i)}`,`size${Ko(a)}`],loadingIndicator:[`loadingIndicator`],loadingWrapper:[`loadingWrapper`]},Wc,t)},qc=K(Tc,{name:`MuiIconButton`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,n.loading&&t.loading,n.color!==`default`&&t[`color${Ko(n.color)}`],n.edge&&t[`edge${Ko(n.edge)}`],t[`size${Ko(n.size)}`]]}})(Xo(({theme:e})=>({textAlign:`center`,flex:`0 0 auto`,fontSize:e.typography.pxToRem(24),padding:8,borderRadius:`50%`,color:(e.vars||e).palette.action.active,transition:e.transitions.create(`background-color`,{duration:e.transitions.duration.shortest}),variants:[{props:e=>!e.disableRipple,style:{"--IconButton-hoverBg":e.alpha((e.vars||e).palette.action.active,(e.vars||e).palette.action.hoverOpacity),"&:hover":{backgroundColor:`var(--IconButton-hoverBg)`,"@media (hover: none)":{backgroundColor:`transparent`}}}},{props:{edge:`start`},style:{marginLeft:-12}},{props:{edge:`start`,size:`small`},style:{marginLeft:-3}},{props:{edge:`end`},style:{marginRight:-12}},{props:{edge:`end`,size:`small`},style:{marginRight:-3}}]})),Xo(({theme:e})=>({variants:[{props:{color:`inherit`},style:{color:`inherit`}},...Object.entries(e.palette).filter(kc()).map(([t])=>({props:{color:t},style:{color:(e.vars||e).palette[t].main,"--IconButton-hoverBg":e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.hoverOpacity)}})),{props:{size:`small`},style:{padding:5,fontSize:e.typography.pxToRem(18)}},{props:{size:`large`},style:{padding:12,fontSize:e.typography.pxToRem(28)}}],[`&.${Gc.disabled}`]:{backgroundColor:`transparent`,color:(e.vars||e).palette.action.disabled},[`&.${Gc.loading}`]:{color:`transparent`}}))),Jc=K(`span`,{name:`MuiIconButton`,slot:`LoadingIndicator`})(({theme:e})=>({display:`none`,position:`absolute`,visibility:`visible`,top:`50%`,left:`50%`,transform:`translate(-50%, -50%)`,color:(e.vars||e).palette.action.disabled,variants:[{props:{loading:!0},style:{display:`flex`}}]})),Yc=z.forwardRef(function(e,t){let n=Zo({props:e,name:`MuiIconButton`}),{edge:r=!1,children:i,className:a,color:o=`default`,disabled:s=!1,disableFocusRipple:c=!1,size:l=`medium`,id:u,loading:d=null,loadingIndicator:f,...p}=n,m=cs(u),h=f??(0,B.jsx)(Uc,{"aria-labelledby":m,color:`inherit`,size:16}),g={...n,edge:r,color:o,disabled:s,disableFocusRipple:c,loading:d,loadingIndicator:h,size:l},_=Kc(g);return(0,B.jsxs)(qc,{id:d?m:u,className:V(_.root,a),centerRipple:!0,internalNativeButton:!0,focusRipple:!c,disabled:s||d,ref:t,...p,ownerState:g,children:[typeof d==`boolean`&&(0,B.jsx)(`span`,{className:_.loadingWrapper,style:{display:`contents`},children:(0,B.jsx)(Jc,{className:_.loadingIndicator,ownerState:g,children:d&&h})}),i]})}),Xc=ns((0,B.jsx)(`path`,{d:`M20,12A8,8 0 0,1 12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4C12.76,4 13.5,4.11 14.2, 4.31L15.77,2.74C14.61,2.26 13.34,2 12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0, 0 22,12M7.91,10.08L6.5,11.5L11,16L21,6L19.59,4.58L11,13.17L7.91,10.08Z`}),`SuccessOutlined`),Zc=ns((0,B.jsx)(`path`,{d:`M12 5.99L19.53 19H4.47L12 5.99M12 2L1 21h22L12 2zm1 14h-2v2h2v-2zm0-6h-2v4h2v-4z`}),`ReportProblemOutlined`),Qc=ns((0,B.jsx)(`path`,{d:`M11 15h2v2h-2zm0-8h2v6h-2zm.99-5C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z`}),`ErrorOutline`),$c=ns((0,B.jsx)(`path`,{d:`M11,9H13V7H11M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20, 12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10, 10 0 0,0 12,2M11,17H13V11H11V17Z`}),`InfoOutlined`),el=ns((0,B.jsx)(`path`,{d:`M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z`}),`Close`),tl=e=>{let{variant:t,color:n,severity:r,classes:i}=e;return Ea({root:[`root`,`color${Ko(n||r)}`,`${t}`],icon:[`icon`],message:[`message`],action:[`action`]},Ac,i)},nl=K(ic,{name:`MuiAlert`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[n.variant]]}})(Xo(({theme:e})=>{let t=e.palette.mode===`light`?e.darken:e.lighten,n=e.palette.mode===`light`?e.lighten:e.darken;return{...e.typography.body2,backgroundColor:`transparent`,display:`flex`,padding:`6px 16px`,variants:[...Object.entries(e.palette).filter(kc([`light`])).map(([r])=>({props:{colorSeverity:r,variant:`standard`},style:{color:e.vars?e.vars.palette.Alert[`${r}Color`]:t(e.palette[r].light,.6),backgroundColor:e.vars?e.vars.palette.Alert[`${r}StandardBg`]:n(e.palette[r].light,.9),[`& .${jc.icon}`]:e.vars?{color:e.vars.palette.Alert[`${r}IconColor`]}:{color:e.palette[r].main}}})),...Object.entries(e.palette).filter(kc([`light`])).map(([n])=>({props:{colorSeverity:n,variant:`outlined`},style:{color:e.vars?e.vars.palette.Alert[`${n}Color`]:t(e.palette[n].light,.6),border:`1px solid ${(e.vars||e).palette[n].light}`,[`& .${jc.icon}`]:e.vars?{color:e.vars.palette.Alert[`${n}IconColor`]}:{color:e.palette[n].main}}})),...Object.entries(e.palette).filter(kc([`dark`])).map(([t])=>({props:{colorSeverity:t,variant:`filled`},style:{fontWeight:e.typography.fontWeightMedium,...e.vars?{color:e.vars.palette.Alert[`${t}FilledColor`],backgroundColor:e.vars.palette.Alert[`${t}FilledBg`]}:{backgroundColor:e.palette.mode===`dark`?e.palette[t].dark:e.palette[t].main,color:e.palette.getContrastText(e.palette[t].main)}}}))]}})),rl=K(`div`,{name:`MuiAlert`,slot:`Icon`})({marginRight:12,padding:`7px 0`,display:`flex`,fontSize:22,opacity:.9}),il=K(`div`,{name:`MuiAlert`,slot:`Message`})({padding:`8px 0`,minWidth:0,overflow:`auto`}),al=K(`div`,{name:`MuiAlert`,slot:`Action`})({display:`flex`,alignItems:`flex-start`,padding:`4px 0 0 16px`,marginLeft:`auto`,marginRight:-8}),ol={success:(0,B.jsx)(Xc,{fontSize:`inherit`}),warning:(0,B.jsx)(Zc,{fontSize:`inherit`}),error:(0,B.jsx)(Qc,{fontSize:`inherit`}),info:(0,B.jsx)($c,{fontSize:`inherit`})},sl=z.forwardRef(function(e,t){let n=Zo({props:e,name:`MuiAlert`}),{action:r,children:i,className:a,closeText:o=`Close`,color:s,icon:c,iconMapping:l=ol,onClose:u,role:d=`alert`,severity:f=`success`,slotProps:p={},slots:m={},variant:h=`standard`,...g}=n,_={...n,color:s,severity:f,variant:h,colorSeverity:s||f},v=tl(_),y={slots:m,slotProps:p},[b,x]=q(`root`,{ref:t,shouldForwardComponentProp:!0,className:V(v.root,a),elementType:nl,externalForwardedProps:{...y,...g},ownerState:_,additionalProps:{role:d,elevation:0}}),[S,C]=q(`icon`,{className:v.icon,elementType:rl,externalForwardedProps:y,ownerState:_}),[w,T]=q(`message`,{className:v.message,elementType:il,externalForwardedProps:y,ownerState:_}),[E,D]=q(`action`,{className:v.action,elementType:al,externalForwardedProps:y,ownerState:_}),[O,ee]=q(`closeButton`,{elementType:Yc,externalForwardedProps:y,ownerState:_}),[te,k]=q(`closeIcon`,{elementType:el,externalForwardedProps:y,ownerState:_});return(0,B.jsxs)(b,{...x,children:[c===!1?null:(0,B.jsx)(S,{...C,children:c||l[f]||ol[f]}),(0,B.jsx)(w,{...T,children:i}),r==null?null:(0,B.jsx)(E,{...D,children:r}),r==null&&u?(0,B.jsx)(E,{...D,children:(0,B.jsx)(O,{size:`small`,"aria-label":o,title:o,color:`inherit`,onClick:u,...ee,children:(0,B.jsx)(te,{fontSize:`small`,...k})})}):null]})});function cl(e){return ii(`MuiTypography`,e)}H(`MuiTypography`,[`root`,`h1`,`h2`,`h3`,`h4`,`h5`,`h6`,`subtitle1`,`subtitle2`,`body1`,`body2`,`inherit`,`button`,`caption`,`overline`,`alignLeft`,`alignRight`,`alignCenter`,`alignJustify`,`noWrap`,`gutterBottom`]);var ll=e=>{let{align:t,gutterBottom:n,noWrap:r,variant:i,classes:a}=e;return Ea({root:[`root`,i,e.align!==`inherit`&&`align${Ko(t)}`,n&&`gutterBottom`,r&&`noWrap`]},cl,a)},ul=K(`span`,{name:`MuiTypography`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,n.variant&&t[n.variant],n.align!==`inherit`&&t[`align${Ko(n.align)}`],n.noWrap&&t.noWrap,n.gutterBottom&&t.gutterBottom]}})(Xo(({theme:e})=>({margin:0,variants:[{props:{variant:`inherit`},style:{font:`inherit`,lineHeight:`inherit`,letterSpacing:`inherit`}},...Object.entries(e.typography).filter(([e,t])=>e!==`inherit`&&t&&typeof t==`object`).map(([e,t])=>({props:{variant:e},style:t})),...Object.entries(e.palette).filter(kc()).map(([t])=>({props:{color:t},style:{color:(e.vars||e).palette[t].main}})),...Object.entries(e.palette?.text||{}).filter(([,e])=>typeof e==`string`).map(([t])=>({props:{color:`text${Ko(t)}`},style:{color:(e.vars||e).palette.text[t]}})),{props:({ownerState:e})=>e.align!==`inherit`,style:{textAlign:`var(--Typography-textAlign)`}},{props:({ownerState:e})=>e.noWrap,style:{overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`}},{props:({ownerState:e})=>e.gutterBottom,style:{marginBottom:`0.35em`}}]}))),dl={h1:`h1`,h2:`h2`,h3:`h3`,h4:`h4`,h5:`h5`,h6:`h6`,subtitle1:`h6`,subtitle2:`h6`,body1:`p`,body2:`p`,inherit:`p`},fl=z.forwardRef(function(e,t){let n=Zo({props:e,name:`MuiTypography`}),{color:r,align:i=`inherit`,className:a,component:o,gutterBottom:s=!1,noWrap:c=!1,variant:l=`body1`,variantMapping:u=dl,...d}=n,f={...n,align:i,color:r,className:a,component:o,gutterBottom:s,noWrap:c,variant:l,variantMapping:u};return(0,B.jsx)(ul,{as:o||u[l]||dl[l]||`span`,ref:t,className:V(ll(f).root,a),...d,ownerState:f,style:{...i!==`inherit`&&{"--Typography-textAlign":i},...d.style}})});function pl(e,t){if(!e||!t)return!1;if(e.contains(t))return!0;let n=t.getRootNode?.();if(n&&n instanceof ShadowRoot){let n=t;for(;n;){if(e===n)return!0;n=n.parentNode??n.host??null}}return!1}var ml=`bottom`,hl=`right`,gl=`left`,_l=`auto`,vl=[`top`,ml,hl,gl],yl=`start`,bl=`clippingParents`,xl=`viewport`,Sl=`popper`,Cl=`reference`,wl=vl.reduce(function(e,t){return e.concat([t+`-`+yl,t+`-end`])},[]),Tl=[].concat(vl,[_l]).reduce(function(e,t){return e.concat([t,t+`-`+yl,t+`-end`])},[]),El=[`beforeRead`,`read`,`afterRead`,`beforeMain`,`main`,`afterMain`,`beforeWrite`,`write`,`afterWrite`];function Dl(e){return e?(e.nodeName||``).toLowerCase():null}function Ol(e){if(e==null)return window;if(e.toString()!==`[object Window]`){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function kl(e){return e instanceof Ol(e).Element||e instanceof Element}function Al(e){return e instanceof Ol(e).HTMLElement||e instanceof HTMLElement}function jl(e){return typeof ShadowRoot>`u`?!1:e instanceof Ol(e).ShadowRoot||e instanceof ShadowRoot}function Ml(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var n=t.styles[e]||{},r=t.attributes[e]||{},i=t.elements[e];!Al(i)||!Dl(i)||(Object.assign(i.style,n),Object.keys(r).forEach(function(e){var t=r[e];t===!1?i.removeAttribute(e):i.setAttribute(e,t===!0?``:t)}))})}function Nl(e){var t=e.state,n={popper:{position:t.options.strategy,left:`0`,top:`0`,margin:`0`},arrow:{position:`absolute`},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var r=t.elements[e],i=t.attributes[e]||{},a=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]).reduce(function(e,t){return e[t]=``,e},{});!Al(r)||!Dl(r)||(Object.assign(r.style,a),Object.keys(i).forEach(function(e){r.removeAttribute(e)}))})}}var Pl={name:`applyStyles`,enabled:!0,phase:`write`,fn:Ml,effect:Nl,requires:[`computeStyles`]};function Fl(e){return e.split(`-`)[0]}var Il=Math.max,J=Math.min,Y=Math.round;function X(){var e=navigator.userAgentData;return e!=null&&e.brands&&Array.isArray(e.brands)?e.brands.map(function(e){return e.brand+`/`+e.version}).join(` `):navigator.userAgent}function Z(){return!/^((?!chrome|android).)*safari/i.test(X())}function Q(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!1);var r=e.getBoundingClientRect(),i=1,a=1;t&&Al(e)&&(i=e.offsetWidth>0&&Y(r.width)/e.offsetWidth||1,a=e.offsetHeight>0&&Y(r.height)/e.offsetHeight||1);var o=(kl(e)?Ol(e):window).visualViewport,s=!Z()&&n,c=(r.left+(s&&o?o.offsetLeft:0))/i,l=(r.top+(s&&o?o.offsetTop:0))/a,u=r.width/i,d=r.height/a;return{width:u,height:d,top:l,right:c+u,bottom:l+d,left:c,x:c,y:l}}function Ll(e){var t=Q(e),n=e.offsetWidth,r=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-r)<=1&&(r=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:r}}function Rl(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&jl(n)){var r=t;do{if(r&&e.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function zl(e){return Ol(e).getComputedStyle(e)}function Bl(e){return[`table`,`td`,`th`].indexOf(Dl(e))>=0}function Vl(e){return((kl(e)?e.ownerDocument:e.document)||window.document).documentElement}function Hl(e){return Dl(e)===`html`?e:e.assignedSlot||e.parentNode||(jl(e)?e.host:null)||Vl(e)}function Ul(e){return!Al(e)||zl(e).position===`fixed`?null:e.offsetParent}function Wl(e){var t=/firefox/i.test(X());if(/Trident/i.test(X())&&Al(e)&&zl(e).position===`fixed`)return null;var n=Hl(e);for(jl(n)&&(n=n.host);Al(n)&&[`html`,`body`].indexOf(Dl(n))<0;){var r=zl(n);if(r.transform!==`none`||r.perspective!==`none`||r.contain===`paint`||[`transform`,`perspective`].indexOf(r.willChange)!==-1||t&&r.willChange===`filter`||t&&r.filter&&r.filter!==`none`)return n;n=n.parentNode}return null}function Gl(e){for(var t=Ol(e),n=Ul(e);n&&Bl(n)&&zl(n).position===`static`;)n=Ul(n);return n&&(Dl(n)===`html`||Dl(n)===`body`&&zl(n).position===`static`)?t:n||Wl(e)||t}function Kl(e){return[`top`,`bottom`].indexOf(e)>=0?`x`:`y`}function ql(e,t,n){return Il(e,J(t,n))}function Jl(e,t,n){var r=ql(e,t,n);return r>n?n:r}function Yl(){return{top:0,right:0,bottom:0,left:0}}function Xl(e){return Object.assign({},Yl(),e)}function Zl(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}var Ql=function(e,t){return e=typeof e==`function`?e(Object.assign({},t.rects,{placement:t.placement})):e,Xl(typeof e==`number`?Zl(e,vl):e)};function $l(e){var t,n=e.state,r=e.name,i=e.options,a=n.elements.arrow,o=n.modifiersData.popperOffsets,s=Fl(n.placement),c=Kl(s),l=[`left`,`right`].indexOf(s)>=0?`height`:`width`;if(!(!a||!o)){var u=Ql(i.padding,n),d=Ll(a),f=c===`y`?`top`:gl,p=c===`y`?ml:hl,m=n.rects.reference[l]+n.rects.reference[c]-o[c]-n.rects.popper[l],h=o[c]-n.rects.reference[c],g=Gl(a),_=g?c===`y`?g.clientHeight||0:g.clientWidth||0:0,v=m/2-h/2,y=u[f],b=_-d[l]-u[p],x=_/2-d[l]/2+v,S=ql(y,x,b),C=c;n.modifiersData[r]=(t={},t[C]=S,t.centerOffset=S-x,t)}}function eu(e){var t=e.state,n=e.options.element,r=n===void 0?`[data-popper-arrow]`:n;r!=null&&(typeof r==`string`&&(r=t.elements.popper.querySelector(r),!r)||Rl(t.elements.popper,r)&&(t.elements.arrow=r))}var tu={name:`arrow`,enabled:!0,phase:`main`,fn:$l,effect:eu,requires:[`popperOffsets`],requiresIfExists:[`preventOverflow`]};function nu(e){return e.split(`-`)[1]}var ru={top:`auto`,right:`auto`,bottom:`auto`,left:`auto`};function iu(e,t){var n=e.x,r=e.y,i=t.devicePixelRatio||1;return{x:Y(n*i)/i||0,y:Y(r*i)/i||0}}function au(e){var t,n=e.popper,r=e.popperRect,i=e.placement,a=e.variation,o=e.offsets,s=e.position,c=e.gpuAcceleration,l=e.adaptive,u=e.roundOffsets,d=e.isFixed,f=o.x,p=f===void 0?0:f,m=o.y,h=m===void 0?0:m,g=typeof u==`function`?u({x:p,y:h}):{x:p,y:h};p=g.x,h=g.y;var _=o.hasOwnProperty(`x`),v=o.hasOwnProperty(`y`),y=gl,b=`top`,x=window;if(l){var S=Gl(n),C=`clientHeight`,w=`clientWidth`;if(S===Ol(n)&&(S=Vl(n),zl(S).position!==`static`&&s===`absolute`&&(C=`scrollHeight`,w=`scrollWidth`)),S=S,i===`top`||(i===`left`||i===`right`)&&a===`end`){b=ml;var T=d&&S===x&&x.visualViewport?x.visualViewport.height:S[C];h-=T-r.height,h*=c?1:-1}if(i===`left`||(i===`top`||i===`bottom`)&&a===`end`){y=hl;var E=d&&S===x&&x.visualViewport?x.visualViewport.width:S[w];p-=E-r.width,p*=c?1:-1}}var D=Object.assign({position:s},l&&ru),O=u===!0?iu({x:p,y:h},Ol(n)):{x:p,y:h};if(p=O.x,h=O.y,c){var ee;return Object.assign({},D,(ee={},ee[b]=v?`0`:``,ee[y]=_?`0`:``,ee.transform=(x.devicePixelRatio||1)<=1?`translate(`+p+`px, `+h+`px)`:`translate3d(`+p+`px, `+h+`px, 0)`,ee))}return Object.assign({},D,(t={},t[b]=v?h+`px`:``,t[y]=_?p+`px`:``,t.transform=``,t))}function ou(e){var t=e.state,n=e.options,r=n.gpuAcceleration,i=r===void 0?!0:r,a=n.adaptive,o=a===void 0?!0:a,s=n.roundOffsets,c=s===void 0?!0:s,l={placement:Fl(t.placement),variation:nu(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:i,isFixed:t.options.strategy===`fixed`};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,au(Object.assign({},l,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:o,roundOffsets:c})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,au(Object.assign({},l,{offsets:t.modifiersData.arrow,position:`absolute`,adaptive:!1,roundOffsets:c})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}var su={name:`computeStyles`,enabled:!0,phase:`beforeWrite`,fn:ou,data:{}},cu={passive:!0};function lu(e){var t=e.state,n=e.instance,r=e.options,i=r.scroll,a=i===void 0?!0:i,o=r.resize,s=o===void 0?!0:o,c=Ol(t.elements.popper),l=[].concat(t.scrollParents.reference,t.scrollParents.popper);return a&&l.forEach(function(e){e.addEventListener(`scroll`,n.update,cu)}),s&&c.addEventListener(`resize`,n.update,cu),function(){a&&l.forEach(function(e){e.removeEventListener(`scroll`,n.update,cu)}),s&&c.removeEventListener(`resize`,n.update,cu)}}var uu={name:`eventListeners`,enabled:!0,phase:`write`,fn:function(){},effect:lu,data:{}},du={left:`right`,right:`left`,bottom:`top`,top:`bottom`};function fu(e){return e.replace(/left|right|bottom|top/g,function(e){return du[e]})}var pu={start:`end`,end:`start`};function mu(e){return e.replace(/start|end/g,function(e){return pu[e]})}function hu(e){var t=Ol(e);return{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function gu(e){return Q(Vl(e)).left+hu(e).scrollLeft}function _u(e,t){var n=Ol(e),r=Vl(e),i=n.visualViewport,a=r.clientWidth,o=r.clientHeight,s=0,c=0;if(i){a=i.width,o=i.height;var l=Z();(l||!l&&t===`fixed`)&&(s=i.offsetLeft,c=i.offsetTop)}return{width:a,height:o,x:s+gu(e),y:c}}function vu(e){var t=Vl(e),n=hu(e),r=e.ownerDocument?.body,i=Il(t.scrollWidth,t.clientWidth,r?r.scrollWidth:0,r?r.clientWidth:0),a=Il(t.scrollHeight,t.clientHeight,r?r.scrollHeight:0,r?r.clientHeight:0),o=-n.scrollLeft+gu(e),s=-n.scrollTop;return zl(r||t).direction===`rtl`&&(o+=Il(t.clientWidth,r?r.clientWidth:0)-i),{width:i,height:a,x:o,y:s}}function yu(e){var t=zl(e),n=t.overflow,r=t.overflowX,i=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+i+r)}function bu(e){return[`html`,`body`,`#document`].indexOf(Dl(e))>=0?e.ownerDocument.body:Al(e)&&yu(e)?e:bu(Hl(e))}function xu(e,t){t===void 0&&(t=[]);var n=bu(e),r=n===e.ownerDocument?.body,i=Ol(n),a=r?[i].concat(i.visualViewport||[],yu(n)?n:[]):n,o=t.concat(a);return r?o:o.concat(xu(Hl(a)))}function Su(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function Cu(e,t){var n=Q(e,!1,t===`fixed`);return n.top+=e.clientTop,n.left+=e.clientLeft,n.bottom=n.top+e.clientHeight,n.right=n.left+e.clientWidth,n.width=e.clientWidth,n.height=e.clientHeight,n.x=n.left,n.y=n.top,n}function wu(e,t,n){return t===`viewport`?Su(_u(e,n)):kl(t)?Cu(t,n):Su(vu(Vl(e)))}function Tu(e){var t=xu(Hl(e)),n=[`absolute`,`fixed`].indexOf(zl(e).position)>=0&&Al(e)?Gl(e):e;return kl(n)?t.filter(function(e){return kl(e)&&Rl(e,n)&&Dl(e)!==`body`}):[]}function Eu(e,t,n,r){var i=t===`clippingParents`?Tu(e):[].concat(t),a=[].concat(i,[n]),o=a[0],s=a.reduce(function(t,n){var i=wu(e,n,r);return t.top=Il(i.top,t.top),t.right=J(i.right,t.right),t.bottom=J(i.bottom,t.bottom),t.left=Il(i.left,t.left),t},wu(e,o,r));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}function Du(e){var t=e.reference,n=e.element,r=e.placement,i=r?Fl(r):null,a=r?nu(r):null,o=t.x+t.width/2-n.width/2,s=t.y+t.height/2-n.height/2,c;switch(i){case`top`:c={x:o,y:t.y-n.height};break;case ml:c={x:o,y:t.y+t.height};break;case hl:c={x:t.x+t.width,y:s};break;case gl:c={x:t.x-n.width,y:s};break;default:c={x:t.x,y:t.y}}var l=i?Kl(i):null;if(l!=null){var u=l===`y`?`height`:`width`;switch(a){case yl:c[l]=c[l]-(t[u]/2-n[u]/2);break;case`end`:c[l]=c[l]+(t[u]/2-n[u]/2);break;default:}}return c}function Ou(e,t){t===void 0&&(t={});var n=t,r=n.placement,i=r===void 0?e.placement:r,a=n.strategy,o=a===void 0?e.strategy:a,s=n.boundary,c=s===void 0?bl:s,l=n.rootBoundary,u=l===void 0?xl:l,d=n.elementContext,f=d===void 0?Sl:d,p=n.altBoundary,m=p===void 0?!1:p,h=n.padding,g=h===void 0?0:h,_=Xl(typeof g==`number`?Zl(g,vl):g),v=f===`popper`?Cl:Sl,y=e.rects.popper,b=e.elements[m?v:f],x=Eu(kl(b)?b:b.contextElement||Vl(e.elements.popper),c,u,o),S=Q(e.elements.reference),C=Du({reference:S,element:y,strategy:`absolute`,placement:i}),w=Su(Object.assign({},y,C)),T=f===`popper`?w:S,E={top:x.top-T.top+_.top,bottom:T.bottom-x.bottom+_.bottom,left:x.left-T.left+_.left,right:T.right-x.right+_.right},D=e.modifiersData.offset;if(f===`popper`&&D){var O=D[i];Object.keys(E).forEach(function(e){var t=[`right`,`bottom`].indexOf(e)>=0?1:-1,n=[`top`,`bottom`].indexOf(e)>=0?`y`:`x`;E[e]+=O[n]*t})}return E}function ku(e,t){t===void 0&&(t={});var n=t,r=n.placement,i=n.boundary,a=n.rootBoundary,o=n.padding,s=n.flipVariations,c=n.allowedAutoPlacements,l=c===void 0?Tl:c,u=nu(r),d=u?s?wl:wl.filter(function(e){return nu(e)===u}):vl,f=d.filter(function(e){return l.indexOf(e)>=0});f.length===0&&(f=d);var p=f.reduce(function(t,n){return t[n]=Ou(e,{placement:n,boundary:i,rootBoundary:a,padding:o})[Fl(n)],t},{});return Object.keys(p).sort(function(e,t){return p[e]-p[t]})}function Au(e){if(Fl(e)===`auto`)return[];var t=fu(e);return[mu(e),t,mu(t)]}function ju(e){var t=e.state,n=e.options,r=e.name;if(!t.modifiersData[r]._skip){for(var i=n.mainAxis,a=i===void 0?!0:i,o=n.altAxis,s=o===void 0?!0:o,c=n.fallbackPlacements,l=n.padding,u=n.boundary,d=n.rootBoundary,f=n.altBoundary,p=n.flipVariations,m=p===void 0?!0:p,h=n.allowedAutoPlacements,g=t.options.placement,_=Fl(g)===g,v=c||(_||!m?[fu(g)]:Au(g)),y=[g].concat(v).reduce(function(e,n){return e.concat(Fl(n)===`auto`?ku(t,{placement:n,boundary:u,rootBoundary:d,padding:l,flipVariations:m,allowedAutoPlacements:h}):n)},[]),b=t.rects.reference,x=t.rects.popper,S=new Map,C=!0,w=y[0],T=0;T<y.length;T++){var E=y[T],D=Fl(E),O=nu(E)===yl,ee=[`top`,ml].indexOf(D)>=0,te=ee?`width`:`height`,k=Ou(t,{placement:E,boundary:u,rootBoundary:d,altBoundary:f,padding:l}),A=ee?O?hl:gl:O?ml:`top`;b[te]>x[te]&&(A=fu(A));var ne=fu(A),j=[];if(a&&j.push(k[D]<=0),s&&j.push(k[A]<=0,k[ne]<=0),j.every(function(e){return e})){w=E,C=!1;break}S.set(E,j)}if(C)for(var re=m?3:1,M=function(e){var t=y.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return w=t,`break`},N=re;N>0&&M(N)!==`break`;N--);t.placement!==w&&(t.modifiersData[r]._skip=!0,t.placement=w,t.reset=!0)}}var Mu={name:`flip`,enabled:!0,phase:`main`,fn:ju,requiresIfExists:[`offset`],data:{_skip:!1}};function Nu(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function Pu(e){return[`top`,hl,ml,gl].some(function(t){return e[t]>=0})}function Fu(e){var t=e.state,n=e.name,r=t.rects.reference,i=t.rects.popper,a=t.modifiersData.preventOverflow,o=Ou(t,{elementContext:`reference`}),s=Ou(t,{altBoundary:!0}),c=Nu(o,r),l=Nu(s,i,a),u=Pu(c),d=Pu(l);t.modifiersData[n]={referenceClippingOffsets:c,popperEscapeOffsets:l,isReferenceHidden:u,hasPopperEscaped:d},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":u,"data-popper-escaped":d})}var Iu={name:`hide`,enabled:!0,phase:`main`,requiresIfExists:[`preventOverflow`],fn:Fu};function Lu(e,t,n){var r=Fl(e),i=[`left`,`top`].indexOf(r)>=0?-1:1,a=typeof n==`function`?n(Object.assign({},t,{placement:e})):n,o=a[0],s=a[1];return o||=0,s=(s||0)*i,[`left`,`right`].indexOf(r)>=0?{x:s,y:o}:{x:o,y:s}}function Ru(e){var t=e.state,n=e.options,r=e.name,i=n.offset,a=i===void 0?[0,0]:i,o=Tl.reduce(function(e,n){return e[n]=Lu(n,t.rects,a),e},{}),s=o[t.placement],c=s.x,l=s.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[r]=o}var zu={name:`offset`,enabled:!0,phase:`main`,requires:[`popperOffsets`],fn:Ru};function Bu(e){var t=e.state,n=e.name;t.modifiersData[n]=Du({reference:t.rects.reference,element:t.rects.popper,strategy:`absolute`,placement:t.placement})}var Vu={name:`popperOffsets`,enabled:!0,phase:`read`,fn:Bu,data:{}};function Hu(e){return e===`x`?`y`:`x`}function Uu(e){var t=e.state,n=e.options,r=e.name,i=n.mainAxis,a=i===void 0?!0:i,o=n.altAxis,s=o===void 0?!1:o,c=n.boundary,l=n.rootBoundary,u=n.altBoundary,d=n.padding,f=n.tether,p=f===void 0?!0:f,m=n.tetherOffset,h=m===void 0?0:m,g=Ou(t,{boundary:c,rootBoundary:l,padding:d,altBoundary:u}),_=Fl(t.placement),v=nu(t.placement),y=!v,b=Kl(_),x=Hu(b),S=t.modifiersData.popperOffsets,C=t.rects.reference,w=t.rects.popper,T=typeof h==`function`?h(Object.assign({},t.rects,{placement:t.placement})):h,E=typeof T==`number`?{mainAxis:T,altAxis:T}:Object.assign({mainAxis:0,altAxis:0},T),D=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,O={x:0,y:0};if(S){if(a){var ee=b===`y`?`top`:gl,te=b===`y`?ml:hl,k=b===`y`?`height`:`width`,A=S[b],ne=A+g[ee],j=A-g[te],re=p?-w[k]/2:0,M=v===`start`?C[k]:w[k],N=v===`start`?-w[k]:-C[k],ie=t.elements.arrow,ae=p&&ie?Ll(ie):{width:0,height:0},oe=t.modifiersData[`arrow#persistent`]?t.modifiersData[`arrow#persistent`].padding:Yl(),se=oe[ee],P=oe[te],F=ql(0,C[k],ae[k]),ce=y?C[k]/2-re-F-se-E.mainAxis:M-F-se-E.mainAxis,le=y?-C[k]/2+re+F+P+E.mainAxis:N+F+P+E.mainAxis,ue=t.elements.arrow&&Gl(t.elements.arrow),I=ue?b===`y`?ue.clientTop||0:ue.clientLeft||0:0,de=D?.[b]??0,L=A+ce-de-I,fe=A+le-de,pe=ql(p?J(ne,L):ne,A,p?Il(j,fe):j);S[b]=pe,O[b]=pe-A}if(s){var me=b===`x`?`top`:gl,he=b===`x`?ml:hl,ge=S[x],_e=x===`y`?`height`:`width`,ve=ge+g[me],ye=ge-g[he],be=[`top`,gl].indexOf(_)!==-1,R=D?.[x]??0,xe=be?ve:ge-C[_e]-w[_e]-R+E.altAxis,Se=be?ge+C[_e]+w[_e]-R-E.altAxis:ye,Ce=p&&be?Jl(xe,ge,Se):ql(p?xe:ve,ge,p?Se:ye);S[x]=Ce,O[x]=Ce-ge}t.modifiersData[r]=O}}var Wu={name:`preventOverflow`,enabled:!0,phase:`main`,fn:Uu,requiresIfExists:[`offset`]};function Gu(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}function Ku(e){return e===Ol(e)||!Al(e)?hu(e):Gu(e)}function qu(e){var t=e.getBoundingClientRect(),n=Y(t.width)/e.offsetWidth||1,r=Y(t.height)/e.offsetHeight||1;return n!==1||r!==1}function Ju(e,t,n){n===void 0&&(n=!1);var r=Al(t),i=Al(t)&&qu(t),a=Vl(t),o=Q(e,i,n),s={scrollLeft:0,scrollTop:0},c={x:0,y:0};return(r||!r&&!n)&&((Dl(t)!==`body`||yu(a))&&(s=Ku(t)),Al(t)?(c=Q(t,!0),c.x+=t.clientLeft,c.y+=t.clientTop):a&&(c.x=gu(a))),{x:o.left+s.scrollLeft-c.x,y:o.top+s.scrollTop-c.y,width:o.width,height:o.height}}function Yu(e){var t=new Map,n=new Set,r=[];e.forEach(function(e){t.set(e.name,e)});function i(e){n.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach(function(e){if(!n.has(e)){var r=t.get(e);r&&i(r)}}),r.push(e)}return e.forEach(function(e){n.has(e.name)||i(e)}),r}function Xu(e){var t=Yu(e);return El.reduce(function(e,n){return e.concat(t.filter(function(e){return e.phase===n}))},[])}function Zu(e){var t;return function(){return t||=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})}),t}}function Qu(e){var t=e.reduce(function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e},{});return Object.keys(t).map(function(e){return t[e]})}var $u={placement:`bottom`,modifiers:[],strategy:`absolute`};function ed(){return![...arguments].some(function(e){return!(e&&typeof e.getBoundingClientRect==`function`)})}function td(e){e===void 0&&(e={});var t=e,n=t.defaultModifiers,r=n===void 0?[]:n,i=t.defaultOptions,a=i===void 0?$u:i;return function(e,t,n){n===void 0&&(n=a);var i={placement:`bottom`,orderedModifiers:[],options:Object.assign({},$u,a),modifiersData:{},elements:{reference:e,popper:t},attributes:{},styles:{}},o=[],s=!1,c={state:i,setOptions:function(n){var o=typeof n==`function`?n(i.options):n;u(),i.options=Object.assign({},a,i.options,o),i.scrollParents={reference:kl(e)?xu(e):e.contextElement?xu(e.contextElement):[],popper:xu(t)};var s=Xu(Qu([].concat(r,i.options.modifiers)));return i.orderedModifiers=s.filter(function(e){return e.enabled}),l(),c.update()},forceUpdate:function(){if(!s){var e=i.elements,t=e.reference,n=e.popper;if(ed(t,n)){i.rects={reference:Ju(t,Gl(n),i.options.strategy===`fixed`),popper:Ll(n)},i.reset=!1,i.placement=i.options.placement,i.orderedModifiers.forEach(function(e){return i.modifiersData[e.name]=Object.assign({},e.data)});for(var r=0;r<i.orderedModifiers.length;r++){if(i.reset===!0){i.reset=!1,r=-1;continue}var a=i.orderedModifiers[r],o=a.fn,l=a.options,u=l===void 0?{}:l,d=a.name;typeof o==`function`&&(i=o({state:i,options:u,name:d,instance:c})||i)}}}},update:Zu(function(){return new Promise(function(e){c.forceUpdate(),e(i)})}),destroy:function(){u(),s=!0}};if(!ed(e,t))return c;c.setOptions(n).then(function(e){!s&&n.onFirstUpdate&&n.onFirstUpdate(e)});function l(){i.orderedModifiers.forEach(function(e){var t=e.name,n=e.options,r=n===void 0?{}:n,a=e.effect;if(typeof a==`function`){var s=a({state:i,name:t,instance:c,options:r});o.push(s||function(){})}})}function u(){o.forEach(function(e){return e()}),o=[]}return c}}var nd=td({defaultModifiers:[uu,Vu,su,Pl,zu,Mu,Wu,tu,Iu]});function rd(e){let{elementType:t,externalSlotProps:n,ownerState:r,skipResolvingSlotProps:i=!1,...a}=e,o=i?{}:Zs(n,r),{props:s,internalRef:c}=ec({...a,externalSlotProps:o}),l=ps(c,o?.ref,e.additionalProps?.ref);return Xs(t,{...s,ref:l},r)}function id(e){return e?.props?.ref||null}function ad(e){return typeof e==`function`?e():e}var od=z.forwardRef(function(e,t){let{children:n,container:r,disablePortal:i=!1}=e,[a,o]=z.useState(null),s=ps(z.isValidElement(n)?id(n):null,t);if(bi(()=>{i||o(ad(r)||document.body)},[r,i]),bi(()=>{if(a&&!i)return ss(t,a),()=>{ss(t,null)}},[t,a,i]),i){if(z.isValidElement(n)){let e={ref:s};return z.cloneElement(n,e)}return n}return a&&Ss.createPortal(n,a)});function sd(e){return ii(`MuiPopper`,e)}H(`MuiPopper`,[`root`]);function cd(e,t){if(t===`ltr`)return e;switch(e){case`bottom-end`:return`bottom-start`;case`bottom-start`:return`bottom-end`;case`top-end`:return`top-start`;case`top-start`:return`top-end`;default:return e}}function ld(e){return typeof e==`function`?e():e}function ud(e){return e.nodeType!==void 0}var dd=e=>{let{classes:t}=e;return Ea({root:[`root`]},sd,t)},fd={},pd=z.forwardRef(function(e,t){let{anchorEl:n,children:r,direction:i,disablePortal:a,modifiers:o,open:s,placement:c,popperOptions:l,popperRef:u,slotProps:d={},slots:f={},TransitionProps:p,ownerState:m,...h}=e,g=z.useRef(null),_=ps(g,t),v=z.useRef(null),y=ps(v,u),b=z.useRef(y);bi(()=>{b.current=y},[y]),z.useImperativeHandle(u,()=>v.current,[]);let x=cd(c,i),[S,C]=z.useState(x),[w,T]=z.useState(ld(n));z.useEffect(()=>{v.current&&v.current.forceUpdate()}),z.useEffect(()=>{n&&T(ld(n))},[n]),bi(()=>{if(!w||!s)return;let e=e=>{C(e.placement)},t=[{name:`preventOverflow`,options:{altBoundary:a}},{name:`flip`,options:{altBoundary:a}},{name:`onUpdate`,enabled:!0,phase:`afterWrite`,fn:({state:t})=>{e(t)}}];o!=null&&(t=t.concat(o)),l&&l.modifiers!=null&&(t=t.concat(l.modifiers));let n=nd(w,g.current,{placement:x,...l,modifiers:t});b.current(n);let r=g.current;return()=>{if(r){let{style:e}=r,t=e.position,i=e.top,a=e.left,o=e.transform;n.destroy(),e.position=t,e.top=i,e.left=a,e.transform=o}else n.destroy();b.current(null)}},[w,a,o,s,l,x]);let E={placement:S};p!==null&&(E.TransitionProps=p);let D=dd(e),O=f.root??`div`;return(0,B.jsx)(O,{...rd({elementType:O,externalSlotProps:d.root,externalForwardedProps:h,additionalProps:{role:`tooltip`,ref:_},ownerState:e,className:D.root}),children:typeof r==`function`?r(E):r})}),md=K(z.forwardRef(function(e,t){let{anchorEl:n,children:r,container:i,direction:a=`ltr`,disablePortal:o=!1,keepMounted:s=!1,modifiers:c,open:l,placement:u=`bottom`,popperOptions:d=fd,popperRef:f,style:p,transition:m=!1,slotProps:h={},slots:g={},..._}=e,[v,y]=z.useState(!0),b=()=>{y(!1)},x=()=>{y(!0)};if(!s&&!l&&(!m||v))return null;let S;if(i)S=i;else if(n){let e=ld(n);S=e&&ud(e)?as(e).body:as(null).body}let C=!l&&s&&(!m||v)?`none`:void 0,w=m?{in:l,onEnter:b,onExited:x}:void 0;return(0,B.jsx)(od,{disablePortal:o,container:S,children:(0,B.jsx)(pd,{anchorEl:n,direction:a,disablePortal:o,modifiers:c,ref:t,open:m?!v:l,placement:u,popperOptions:d,popperRef:f,slotProps:h,slots:g,..._,style:{position:`fixed`,top:0,left:0,display:C,...p},TransitionProps:w,children:r})})}),{name:`MuiPopper`,slot:`Root`})({}),hd=z.forwardRef(function(e,t){let n=Gi(),{anchorEl:r,component:i,container:a,disablePortal:o,keepMounted:s,modifiers:c,open:l,placement:u,popperOptions:d,popperRef:f,transition:p,slots:m,slotProps:h,...g}=Zo({props:e,name:`MuiPopper`}),_={anchorEl:r,container:a,disablePortal:o,keepMounted:s,modifiers:c,open:l,placement:u,popperOptions:d,popperRef:f,transition:p,...g};return(0,B.jsx)(md,{as:i,direction:n?`rtl`:`ltr`,slots:m,slotProps:h,..._,ref:t})}),gd=ns((0,B.jsx)(`path`,{d:`M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm5 13.59L15.59 17 12 13.41 8.41 17 7 15.59 10.59 12 7 8.41 8.41 7 12 10.59 15.59 7 17 8.41 13.41 12 17 15.59z`}),`Cancel`);function _d(e){return ii(`MuiChip`,e)}var vd=H(`MuiChip`,[`root`,`sizeSmall`,`sizeMedium`,`colorDefault`,`colorError`,`colorInfo`,`colorPrimary`,`colorSecondary`,`colorSuccess`,`colorWarning`,`disabled`,`clickable`,`deletable`,`outlined`,`filled`,`avatar`,`icon`,`label`,`deleteIcon`,`focusVisible`]),$=e=>{let{classes:t,disabled:n,size:r,color:i,onDelete:a,clickable:o,variant:s}=e;return Ea({root:[`root`,s,n&&`disabled`,`size${Ko(r)}`,`color${Ko(i)}`,o&&`clickable`,a&&`deletable`],label:[`label`],avatar:[`avatar`],icon:[`icon`],deleteIcon:[`deleteIcon`]},_d,t)},yd=K(`div`,{name:`MuiChip`,slot:`Root`,shouldForwardProp:e=>Ro(e)&&e!==`focusableWhenDisabled`&&e!==`skipFocusWhenDisabled`,overridesResolver:(e,t)=>{let{ownerState:n}=e,{color:r,clickable:i,onDelete:a,size:o,variant:s}=n;return[{[`& .${vd.avatar}`]:t.avatar},{[`& .${vd.icon}`]:t.icon},{[`& .${vd.deleteIcon}`]:t.deleteIcon},t.root,t[`size${Ko(o)}`],t[`color${Ko(r)}`],i&&t.clickable,a&&t.deletable,t[s]]}})(Xo(({theme:e})=>{let t=e.palette.mode===`light`?e.palette.grey[700]:e.palette.grey[300];return{maxWidth:`100%`,fontFamily:e.typography.fontFamily,fontSize:e.typography.pxToRem(13),display:`inline-flex`,alignItems:`center`,justifyContent:`center`,height:32,lineHeight:1.5,color:(e.vars||e).palette.text.primary,backgroundColor:(e.vars||e).palette.action.selected,borderRadius:32/2,whiteSpace:`nowrap`,transition:e.transitions.create([`background-color`,`box-shadow`]),cursor:`unset`,outline:0,textDecoration:`none`,border:0,padding:0,verticalAlign:`middle`,boxSizing:`border-box`,[`&.${vd.disabled}`]:{opacity:(e.vars||e).palette.action.disabledOpacity,pointerEvents:`none`},[`& .${vd.avatar}`]:{marginLeft:5,marginRight:-6,width:24,height:24,color:e.vars?e.vars.palette.Chip.defaultAvatarColor:t,fontSize:e.typography.pxToRem(12)},[`& .${vd.icon}`]:{marginLeft:5,marginRight:-6},[`& .${vd.deleteIcon}`]:{WebkitTapHighlightColor:`transparent`,color:e.alpha((e.vars||e).palette.text.primary,.26),fontSize:22,cursor:`pointer`,margin:`0 5px 0 -6px`,"&:hover":{color:e.alpha((e.vars||e).palette.text.primary,.4)}},variants:[{props:{color:`primary`},style:{[`& .${vd.avatar}`]:{color:(e.vars||e).palette.primary.contrastText,backgroundColor:(e.vars||e).palette.primary.dark}}},{props:{color:`secondary`},style:{[`& .${vd.avatar}`]:{color:(e.vars||e).palette.secondary.contrastText,backgroundColor:(e.vars||e).palette.secondary.dark}}},{props:{size:`small`},style:{height:24,[`& .${vd.avatar}`]:{marginLeft:4,marginRight:-4,width:18,height:18,fontSize:e.typography.pxToRem(10)},[`& .${vd.icon}`]:{fontSize:18,marginLeft:4,marginRight:-4},[`& .${vd.deleteIcon}`]:{fontSize:16,marginRight:4,marginLeft:-4}}},...Object.entries(e.palette).filter(kc([`contrastText`])).map(([t])=>({props:{color:t},style:{backgroundColor:(e.vars||e).palette[t].main,color:(e.vars||e).palette[t].contrastText,[`& .${vd.deleteIcon}`]:{color:e.alpha((e.vars||e).palette[t].contrastText,.7),"&:hover, &:active":{color:(e.vars||e).palette[t].contrastText}}}})),{props:e=>e.iconColor===e.color,style:{[`& .${vd.icon}`]:{color:e.vars?e.vars.palette.Chip.defaultIconColor:t}}},{props:e=>e.iconColor===e.color&&e.color!==`default`,style:{[`& .${vd.icon}`]:{color:`inherit`}}},{props:{onDelete:!0},style:{[`&.${vd.focusVisible}`]:{backgroundColor:e.alpha((e.vars||e).palette.action.selected,`${(e.vars||e).palette.action.selectedOpacity} + ${(e.vars||e).palette.action.focusOpacity}`)}}},...Object.entries(e.palette).filter(kc([`dark`])).map(([t])=>({props:{color:t,onDelete:!0},style:{[`&.${vd.focusVisible}`]:{background:(e.vars||e).palette[t].dark}}})),{props:{clickable:!0},style:{userSelect:`none`,WebkitTapHighlightColor:`transparent`,cursor:`pointer`,"&:hover":{backgroundColor:e.alpha((e.vars||e).palette.action.selected,`${(e.vars||e).palette.action.selectedOpacity} + ${(e.vars||e).palette.action.hoverOpacity}`)},[`&.${vd.focusVisible}`]:{backgroundColor:e.alpha((e.vars||e).palette.action.selected,`${(e.vars||e).palette.action.selectedOpacity} + ${(e.vars||e).palette.action.focusOpacity}`)},"&:active":{boxShadow:(e.vars||e).shadows[1]}}},...Object.entries(e.palette).filter(kc([`dark`])).map(([t])=>({props:{color:t,clickable:!0},style:{[`&:hover, &.${vd.focusVisible}`]:{backgroundColor:(e.vars||e).palette[t].dark}}})),{props:{variant:`outlined`},style:{backgroundColor:`transparent`,border:e.vars?`1px solid ${e.vars.palette.Chip.defaultBorder}`:`1px solid ${e.palette.mode===`light`?e.palette.grey[400]:e.palette.grey[700]}`,[`&.${vd.clickable}:hover`]:{backgroundColor:(e.vars||e).palette.action.hover},[`&.${vd.focusVisible}`]:{backgroundColor:(e.vars||e).palette.action.focus},[`& .${vd.avatar}`]:{marginLeft:4},[`& .${vd.icon}`]:{marginLeft:4},[`& .${vd.deleteIcon}`]:{marginRight:5}}},{props:{size:`small`,variant:`outlined`},style:{[`& .${vd.avatar}`]:{marginLeft:2},[`& .${vd.icon}`]:{marginLeft:2},[`& .${vd.deleteIcon}`]:{marginRight:3}}},...Object.entries(e.palette).filter(kc()).map(([t])=>({props:{variant:`outlined`,color:t},style:{color:(e.vars||e).palette[t].main,border:`1px solid ${e.alpha((e.vars||e).palette[t].main,.7)}`,[`&.${vd.clickable}:hover`]:{backgroundColor:e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.hoverOpacity)},[`&.${vd.focusVisible}`]:{backgroundColor:e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.focusOpacity)},[`& .${vd.deleteIcon}`]:{color:e.alpha((e.vars||e).palette[t].main,.7),"&:hover, &:active":{color:(e.vars||e).palette[t].main}}}}))]}})),bd=K(`span`,{name:`MuiChip`,slot:`Label`})({overflow:`hidden`,textOverflow:`ellipsis`,paddingLeft:12,paddingRight:12,whiteSpace:`nowrap`,variants:[{props:{variant:`outlined`},style:{paddingLeft:11,paddingRight:11}},{props:{size:`small`},style:{paddingLeft:8,paddingRight:8}},{props:{size:`small`,variant:`outlined`},style:{paddingLeft:7,paddingRight:7}}]});function xd(e){return e.key===`Backspace`||e.key===`Delete`}var Sd=z.forwardRef(function(e,t){let n=Zo({props:e,name:`MuiChip`}),{avatar:r,className:i,clickable:a,color:o=`default`,component:s,deleteIcon:c,disabled:l=!1,icon:u,label:d,onClick:f,onDelete:p,onKeyDown:m,onKeyUp:h,size:g=`medium`,variant:_=`filled`,tabIndex:v,skipFocusWhenDisabled:y=!1,slots:b={},slotProps:x={},...S}=n,{nativeButton:C,...w}=S,T=ms(z.useRef(null),t),E=e=>{e.stopPropagation(),p(e)},D=e=>{e.currentTarget===e.target&&xd(e)&&e.preventDefault(),m&&m(e)},O=e=>{e.currentTarget===e.target&&p&&xd(e)&&p(e),h&&h(e)},ee=a!==!1&&f?!0:a,te=ee||p?Tc:s||`div`,k={...n,component:te,disabled:l,size:g,color:o,iconColor:z.isValidElement(u)&&u.props.color||o,onDelete:!!p,clickable:ee,variant:_},A=$(k),ne=te===Tc?{component:s||`div`,internalNativeButton:!1,focusVisibleClassName:A.focusVisible,...p&&{disableRipple:!0},...C!==void 0&&{nativeButton:C}}:{},j=null;p&&(j=c&&z.isValidElement(c)?z.cloneElement(c,{className:V(c.props.className,A.deleteIcon),onClick:E}):(0,B.jsx)(gd,{className:A.deleteIcon,onClick:E}));let re=null;r&&z.isValidElement(r)&&(re=z.cloneElement(r,{className:V(A.avatar,r.props.className)}));let M=null;u&&z.isValidElement(u)&&(M=z.cloneElement(u,{className:V(A.icon,u.props.className)}));let N={slots:b,slotProps:x},[ie,ae]=q(`root`,{elementType:yd,externalForwardedProps:{...N,...w},ownerState:k,shouldForwardComponentProp:!0,ref:T,className:V(A.root,i),additionalProps:{disabled:ee&&l?!0:void 0,tabIndex:y&&l?-1:v,...ne},getSlotProps:e=>({...e,onClick:t=>{e.onClick?.(t),f?.(t)},onKeyDown:t=>{e.onKeyDown?.(t),D(t)},onKeyUp:t=>{e.onKeyUp?.(t),O(t)}})}),[oe,se]=q(`label`,{elementType:bd,externalForwardedProps:N,ownerState:k,className:A.label});return(0,B.jsxs)(ie,{as:te,...ae,children:[re||M,(0,B.jsx)(oe,{...se,children:d}),j]})}),Cd=ns((0,B.jsx)(`path`,{d:`M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z`}),`Person`);function wd(e){return ii(`MuiAvatar`,e)}H(`MuiAvatar`,[`root`,`colorDefault`,`circular`,`rounded`,`square`,`img`,`fallback`]);var Td=e=>{let{classes:t,variant:n,colorDefault:r}=e;return Ea({root:[`root`,n,r&&`colorDefault`],img:[`img`],fallback:[`fallback`]},wd,t)},Ed=K(`div`,{name:`MuiAvatar`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[n.variant],n.colorDefault&&t.colorDefault]}})(Xo(({theme:e})=>({position:`relative`,display:`flex`,alignItems:`center`,justifyContent:`center`,flexShrink:0,width:40,height:40,fontFamily:e.typography.fontFamily,fontSize:e.typography.pxToRem(20),lineHeight:1,borderRadius:`50%`,overflow:`hidden`,userSelect:`none`,variants:[{props:{variant:`rounded`},style:{borderRadius:(e.vars||e).shape.borderRadius}},{props:{variant:`square`},style:{borderRadius:0}},{props:{colorDefault:!0},style:{color:(e.vars||e).palette.background.default,"@media (forced-colors: active)":{boxSizing:`border-box`,border:`1px solid ButtonBorder`},...e.vars?{backgroundColor:e.vars.palette.Avatar.defaultBg}:{backgroundColor:e.palette.grey[400],...e.applyStyles(`dark`,{backgroundColor:e.palette.grey[600]})}}}]}))),Dd=K(`img`,{name:`MuiAvatar`,slot:`Img`})({width:`100%`,height:`100%`,textAlign:`center`,objectFit:`cover`,color:`transparent`,textIndent:1e4}),Od=K(Cd,{name:`MuiAvatar`,slot:`Fallback`})({width:`75%`,height:`75%`});function kd(e,t,n,r){let[i,a]=z.useState(!1);return z.useEffect(()=>{if(!e&&!t)return;a(!1);let i=!0,o=new Image;return o.onload=()=>{i&&a(`loaded`)},o.onerror=()=>{i&&a(`error`)},o.crossOrigin=n,o.referrerPolicy=r,o.src=e,t&&(o.srcset=t),()=>{i=!1}},[n,r,e,t]),i}var Ad=z.forwardRef(function(e,t){let n=Zo({props:e,name:`MuiAvatar`}),{alt:r,children:i,className:a,component:o=`div`,slots:s={},slotProps:c={},sizes:l,src:u,srcSet:d,variant:f=`circular`,...p}=n,m=null,h={...n,component:o,variant:f},{crossOrigin:g,referrerPolicy:_}=(typeof c.img==`function`?c.img(h):c.img)??{},v=kd(u,d,g,_),y=u||d,b=y&&v!==`error`;h.colorDefault=!b,delete h.ownerState;let x=Td(h),S={slots:s,slotProps:c},[C,w]=q(`root`,{ref:t,className:V(x.root,a),elementType:Ed,externalForwardedProps:{...S,component:o,...p},ownerState:h}),[T,E]=q(`img`,{className:x.img,elementType:Dd,externalForwardedProps:S,additionalProps:{alt:r,src:u,srcSet:d,sizes:l},ownerState:h}),[D,O]=q(`fallback`,{className:x.fallback,elementType:Od,externalForwardedProps:S,shouldForwardComponentProp:!0,ownerState:h});return m=b?(0,B.jsx)(T,{...E}):i||i===0?i:y&&r?r[0]:(0,B.jsx)(D,{...O}),(0,B.jsx)(C,{...w,children:m})}),jd={entering:{opacity:1},entered:{opacity:1},exiting:{opacity:0},exited:{opacity:0}},Md={opacity:0,visibility:`hidden`},Nd=z.forwardRef(function(e,t){let n=Io(),r={enter:n.transitions.duration.enteringScreen,exit:n.transitions.duration.leavingScreen},{addEndListener:i,appear:a=!0,children:o,easing:s,in:c,onEnter:l,onEntered:u,onEntering:d,onExit:f,onExited:p,onExiting:m,style:h,timeout:g=r,..._}=e,v=z.useRef(null),y=ms(v,id(o),t),b=Ks(v,d),x=Ks(v,(e,t)=>{Gs(e);let r=Js({style:h,timeout:g,easing:s},{mode:`enter`});e.style.transition=n.transitions.create(`opacity`,r),l&&l(e,t)}),S=Ks(v,u),C=Ks(v,m),w=Ks(v,e=>{let t=Js({style:h,timeout:g,easing:s},{mode:`exit`});e.style.transition=n.transitions.create(`opacity`,t),f&&f(e)}),T=Ks(v,e=>{e.style.transition=``,p&&p(e)});return(0,B.jsx)(Os,{appear:a,in:c,nodeRef:v,onEnter:x,onEntered:S,onEntering:b,onExit:w,onExited:T,onExiting:C,addEndListener:e=>{i&&i(v.current,e)},timeout:g,..._,children:(e,{ownerState:t,...n})=>{let r=qs(e,c,jd,Md,h,o.props.style);return z.cloneElement(o,{style:r,ref:y,...n})}})});function Pd(e){return ii(`MuiBackdrop`,e)}H(`MuiBackdrop`,[`root`,`invisible`]);var Fd=e=>{let{classes:t,invisible:n}=e;return Ea({root:[`root`,n&&`invisible`]},Pd,t)},Id=K(`div`,{name:`MuiBackdrop`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,n.invisible&&t.invisible]}})({position:`fixed`,display:`flex`,alignItems:`center`,justifyContent:`center`,right:0,bottom:0,top:0,left:0,backgroundColor:`rgba(0, 0, 0, 0.5)`,WebkitTapHighlightColor:`transparent`,variants:[{props:{invisible:!0},style:{backgroundColor:`transparent`}}]}),Ld=z.forwardRef(function(e,t){let n=Zo({props:e,name:`MuiBackdrop`}),{children:r,className:i,component:a=`div`,invisible:o=!1,open:s,slotProps:c={},slots:l={},transitionDuration:u,...d}=n,f={...n,component:a,invisible:o},p=Fd(f),m={component:a,slots:l,slotProps:c},[h,g]=q(`root`,{elementType:Id,externalForwardedProps:m,className:V(p.root,i),ownerState:f}),[_,v]=q(`transition`,{elementType:Nd,externalForwardedProps:m,ownerState:f});return(0,B.jsx)(_,{in:s,timeout:u,...d,...v,children:(0,B.jsx)(h,{...g,ref:t,children:r})})}),Rd=H(`MuiBox`,[`root`]),zd=ni({themeId:E,defaultTheme:Po(),defaultClassName:Rd.root,generateClassName:ei.generate});function Bd(e){return ii(`MuiCard`,e)}H(`MuiCard`,[`root`]);var Vd=e=>{let{classes:t}=e;return Ea({root:[`root`]},Bd,t)},Hd=K(ic,{name:`MuiCard`,slot:`Root`})({overflow:`hidden`}),Ud=z.forwardRef(function(e,t){let n=Zo({props:e,name:`MuiCard`}),{className:r,raised:i=!1,...a}=n,o={...n,raised:i};return(0,B.jsx)(Hd,{className:V(Vd(o).root,r),elevation:i?8:void 0,ref:t,ownerState:o,...a})});function Wd(e){return ii(`MuiCardContent`,e)}H(`MuiCardContent`,[`root`]);var Gd=e=>{let{classes:t}=e;return Ea({root:[`root`]},Wd,t)},Kd=K(`div`,{name:`MuiCardContent`,slot:`Root`})({padding:16,"&:last-child":{paddingBottom:24}}),qd=z.forwardRef(function(e,t){let n=Zo({props:e,name:`MuiCardContent`}),{className:r,component:i=`div`,...a}=n,o={...n,component:i};return(0,B.jsx)(Kd,{as:i,className:V(Gd(o).root,r),ownerState:o,ref:t,...a})}),Jd=typeof Yo({})==`function`,Yd=(e,t)=>({WebkitFontSmoothing:`antialiased`,MozOsxFontSmoothing:`grayscale`,boxSizing:`border-box`,WebkitTextSizeAdjust:`100%`,...t&&!e.vars&&{colorScheme:e.palette.mode}}),Xd=e=>({color:(e.vars||e).palette.text.primary,...e.typography.body1,backgroundColor:(e.vars||e).palette.background.default,"@media print":{backgroundColor:(e.vars||e).palette.common.white}}),Zd=(e,t=!1)=>{let n={};t&&e.colorSchemes&&typeof e.getColorSchemeSelector==`function`&&Object.entries(e.colorSchemes).forEach(([t,r])=>{let i=e.getColorSchemeSelector(t);i.startsWith(`@`)?n[i]={":root":{colorScheme:r.palette?.mode}}:n[i.replace(/\s*&/,``)]={colorScheme:r.palette?.mode}});let r={html:Yd(e,t),"*, *::before, *::after":{boxSizing:`inherit`},"strong, b":{fontWeight:e.typography.fontWeightBold},body:{margin:0,...Xd(e),"&::backdrop":{backgroundColor:(e.vars||e).palette.background.default}},...n},i=e.components?.MuiCssBaseline?.styleOverrides;return i&&(r=[r,i]),r},Qd=`mui-ecs`,$d=e=>{let t=Zd(e,!1),n=Array.isArray(t)?t[0]:t;return!e.vars&&n&&(n.html[`:root:has(${Qd})`]={colorScheme:e.palette.mode}),e.colorSchemes&&Object.entries(e.colorSchemes).forEach(([t,r])=>{let i=e.getColorSchemeSelector(t);i.startsWith(`@`)?n[i]={[`:root:not(:has(.${Qd}))`]:{colorScheme:r.palette?.mode}}:n[i.replace(/\s*&/,``)]={[`&:not(:has(.${Qd}))`]:{colorScheme:r.palette?.mode}}}),t},ef=Yo(Jd?({theme:e,enableColorScheme:t})=>Zd(e,t):({theme:e})=>$d(e));function tf(e){let{children:t,enableColorScheme:n=!1}=Zo({props:e,name:`MuiCssBaseline`});return(0,B.jsxs)(z.Fragment,{children:[Jd&&(0,B.jsx)(ef,{enableColorScheme:n}),!Jd&&!n&&(0,B.jsx)(`span`,{className:Qd,style:{display:`none`}}),t]})}function nf(e=window){let t=e.document.documentElement.clientWidth;return e.innerWidth-t}function rf(e){let t=as(e);return t.body===e?os(e).innerWidth>t.documentElement.clientWidth:e.scrollHeight>e.clientHeight}function af(e,t){t?e.setAttribute(`aria-hidden`,`true`):e.removeAttribute(`aria-hidden`)}function of(e){return parseFloat(os(e).getComputedStyle(e).paddingRight)||0}function sf(e){let t=[`TEMPLATE`,`SCRIPT`,`STYLE`,`LINK`,`MAP`,`META`,`NOSCRIPT`,`PICTURE`,`COL`,`COLGROUP`,`PARAM`,`SLOT`,`SOURCE`,`TRACK`].includes(e.tagName),n=e.tagName===`INPUT`&&e.getAttribute(`type`)===`hidden`;return t||n}function cf(e,t,n,r,i){let a=[t,n,...r];[].forEach.call(e.children,e=>{let t=!a.includes(e),n=!sf(e);t&&n&&af(e,i)})}function lf(e,t){let n=-1;return e.some((e,r)=>t(e)?(n=r,!0):!1),n}function uf(e,t){let n=[],r=e.container;if(!t.disableScrollLock){if(rf(r)){let e=nf(os(r));n.push({value:r.style.paddingRight,property:`padding-right`,el:r}),r.style.paddingRight=`${of(r)+e}px`;let t=as(r).querySelectorAll(`.mui-fixed`);[].forEach.call(t,t=>{n.push({value:t.style.paddingRight,property:`padding-right`,el:t}),t.style.paddingRight=`${of(t)+e}px`})}let e;if(r.parentNode instanceof DocumentFragment)e=as(r).body;else{let t=r.parentElement,n=os(r);e=t?.nodeName===`HTML`&&n.getComputedStyle(t).overflowY===`scroll`?t:r}n.push({value:e.style.overflow,property:`overflow`,el:e},{value:e.style.overflowX,property:`overflow-x`,el:e},{value:e.style.overflowY,property:`overflow-y`,el:e}),e.style.overflow=`hidden`}return()=>{n.forEach(({value:e,el:t,property:n})=>{e?t.style.setProperty(n,e):t.style.removeProperty(n)})}}function df(e){let t=[];return[].forEach.call(e.children,e=>{e.getAttribute(`aria-hidden`)===`true`&&t.push(e)}),t}var ff=class{constructor(){this.modals=[],this.containers=[]}add(e,t){let n=this.modals.indexOf(e);if(n!==-1)return n;n=this.modals.length,this.modals.push(e),e.modalRef&&af(e.modalRef,!1);let r=df(t);cf(t,e.mount,e.modalRef,r,!0);let i=lf(this.containers,e=>e.container===t);return i===-1?(this.containers.push({modals:[e],container:t,restore:null,hiddenSiblings:r}),n):(this.containers[i].modals.push(e),n)}mount(e,t){let n=lf(this.containers,t=>t.modals.includes(e)),r=this.containers[n];r.restore||=uf(r,t)}remove(e,t=!0){let n=this.modals.indexOf(e);if(n===-1)return n;let r=lf(this.containers,t=>t.modals.includes(e)),i=this.containers[r];if(i.modals.splice(i.modals.indexOf(e),1),this.modals.splice(n,1),i.modals.length===0)i.restore&&i.restore(),e.modalRef&&af(e.modalRef,t),cf(i.container,e.mount,e.modalRef,i.hiddenSiblings,!1),this.containers.splice(r,1);else{let e=i.modals[i.modals.length-1];e.modalRef&&af(e.modalRef,!1)}return n}isTopModal(e){return this.modals.length>0&&this.modals[this.modals.length-1]===e}},pf=pl,mf=`data-mui-focusable`;function hf(e){return e?e.hasAttribute(`data-mui-focusable`)?e:e.querySelector(`[${mf}]`):null}var gf=[`input`,`select`,`textarea`,`a[href]`,`button`,`[tabindex]`,`audio[controls]`,`video[controls]`,`[contenteditable]:not([contenteditable="false"])`].join(`,`);function _f(e){let t=parseInt(e.getAttribute(`tabindex`)||``,10);return Number.isNaN(t)?e.contentEditable===`true`||(e.nodeName===`AUDIO`||e.nodeName===`VIDEO`||e.nodeName===`DETAILS`)&&e.getAttribute(`tabindex`)===null?0:e.tabIndex:t}function vf(e){if(e.tagName!==`INPUT`||e.type!==`radio`||!e.name)return!1;let t=t=>e.ownerDocument.querySelector(`input[type="radio"]${t}`),n=t(`[name="${e.name}"]:checked`);return n||=t(`[name="${e.name}"]`),n!==e}function yf(e){return!(e.disabled||e.tagName===`INPUT`&&e.type===`hidden`||vf(e))}function bf(e){let t=[],n=[];return Array.from(e.querySelectorAll(gf)).forEach((e,r)=>{let i=_f(e);i===-1||!yf(e)||(i===0?t.push(e):n.push({documentOrder:r,tabIndex:i,node:e}))}),n.sort((e,t)=>e.tabIndex===t.tabIndex?e.documentOrder-t.documentOrder:e.tabIndex-t.tabIndex).map(e=>e.node).concat(t)}function xf(){return!0}function Sf(e){let{children:t,disableAutoFocus:n=!1,disableEnforceFocus:r=!1,disableRestoreFocus:i=!1,getTabbable:a=bf,isEnabled:o=xf,open:s}=e,c=z.useRef(!1),l=z.useRef(null),u=z.useRef(null),d=z.useRef(null),f=z.useRef(null),p=z.useRef(!1),m=z.useRef(null),h=ps(id(t),m),g=z.useRef(null);z.useEffect(()=>{!s||!m.current||(p.current=!n)},[n,s]),z.useEffect(()=>{if(c.current=!1,!s||!m.current)return;let e=is(as(m.current)),t=hf(m.current)??m.current;return pf(m.current,e)||(t.hasAttribute(`tabIndex`)||t.setAttribute(`tabIndex`,`-1`),p.current&&t.focus()),()=>{!i&&d.current&&(c.current=!0,d.current.focus(),d.current=null)}},[s]),z.useEffect(()=>{if(!s||!m.current)return;let e=as(m.current),t=t=>{g.current=t,!(r||!o()||t.key!==`Tab`)&&is(e)===m.current&&t.shiftKey&&(c.current=!0,u.current&&u.current.focus())},n=()=>{let t=m.current;if(t===null)return;let n=is(e);if(!e.hasFocus()||!o()||c.current){c.current=!1;return}if(pf(t,n)||r&&n!==l.current&&n!==u.current)return;if(n!==f.current)f.current=null;else if(f.current!==null)return;if(!p.current)return;let i=[];if((n===l.current||n===u.current)&&(i=a(m.current)),i.length>0){let e=!!(g.current?.shiftKey&&g.current?.key===`Tab`),t=i[0],n=i[i.length-1];typeof t!=`string`&&typeof n!=`string`&&(e?n.focus():t.focus())}else t.focus()};e.addEventListener(`focusin`,n),e.addEventListener(`keydown`,t,!0);let i=setInterval(()=>{let t=is(e);t&&t.tagName===`BODY`&&n()},50);return()=>{clearInterval(i),e.removeEventListener(`focusin`,n),e.removeEventListener(`keydown`,t,!0)}},[n,r,i,o,s,a]);let _=e=>{d.current===null&&(d.current=e.relatedTarget),p.current=!0,f.current=e.target;let n=t.props.onFocus;n&&n(e)},v=e=>{d.current===null&&(d.current=e.relatedTarget),p.current=!0};return(0,B.jsxs)(z.Fragment,{children:[(0,B.jsx)(`div`,{tabIndex:s?0:-1,onFocus:v,ref:l,"data-testid":`sentinelStart`}),z.cloneElement(t,{ref:h,onFocus:_}),(0,B.jsx)(`div`,{tabIndex:s?0:-1,onFocus:v,ref:u,"data-testid":`sentinelEnd`})]})}function Cf(e){return typeof e==`function`?e():e}function wf(e){return e?e.props.hasOwnProperty(`in`):!1}var Tf=()=>{},Ef=new ff;function Df(e){let{container:t,disableScrollLock:n=!1,closeAfterTransition:r=!1,onTransitionEnter:i,onTransitionExited:a,children:o,onClose:s,open:c,rootRef:l}=e,u=z.useRef({}),d=z.useRef(null),f=z.useRef(null),p=ps(f,l),[m,h]=z.useState(!c),g=wf(o),_=!0;(e[`aria-hidden`]===`false`||e[`aria-hidden`]===!1)&&(_=!1);let v=()=>as(d.current),y=()=>(u.current.modalRef=f.current,u.current.mount=d.current,u.current),b=()=>{Ef.mount(y(),{disableScrollLock:n}),f.current&&(f.current.scrollTop=0)},x=ds(()=>{let e=Cf(t)||v().body;Ef.add(y(),e),f.current&&b()}),S=()=>Ef.isTopModal(y()),C=ds(e=>{d.current=e,e&&(c&&S()?b():f.current&&af(f.current,_))}),w=z.useCallback(()=>{Ef.remove(y(),_)},[_]);z.useEffect(()=>()=>{w()},[w]),z.useEffect(()=>{c?x():(!g||!r)&&w()},[c,w,g,r,x]);let T=e=>t=>{e.onKeyDown?.(t),!(t.key!==`Escape`||t.which===229||!S())&&(t.stopPropagation(),s&&s(t,`escapeKeyDown`))},E=e=>t=>{e.onClick?.(t),t.target===t.currentTarget&&s&&s(t,`backdropClick`)};return{getRootProps:(t={})=>{let n=Qs(e);delete n.onTransitionEnter,delete n.onTransitionExited;let r={...n,...t};return{role:`presentation`,...r,onKeyDown:T(r),ref:p}},getBackdropProps:(e={})=>{let t=e;return{"aria-hidden":!0,...t,onClick:E(t),open:c}},getTransitionProps:()=>({onEnter:qo(()=>{h(!1),i&&i()},o?.props.onEnter??Tf),onExited:qo(()=>{h(!0),a&&a(),r&&w()},o?.props.onExited??Tf)}),rootRef:p,portalRef:C,isTopModal:S,exited:m,hasTransition:g}}function Of(e){return ii(`MuiModal`,e)}H(`MuiModal`,[`root`,`hidden`,`backdrop`]);var kf=e=>{let{open:t,exited:n,classes:r}=e;return Ea({root:[`root`,!t&&n&&`hidden`],backdrop:[`backdrop`]},Of,r)},Af=K(`div`,{name:`MuiModal`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,!n.open&&n.exited&&t.hidden]}})(Xo(({theme:e})=>({position:`fixed`,zIndex:(e.vars||e).zIndex.modal,right:0,bottom:0,top:0,left:0,variants:[{props:({ownerState:e})=>!e.open&&e.exited,style:{visibility:`hidden`}}]}))),jf=K(Ld,{name:`MuiModal`,slot:`Backdrop`})({zIndex:-1}),Mf=z.forwardRef(function(e,t){let n=Zo({name:`MuiModal`,props:e}),{classes:r,className:i,closeAfterTransition:a=!1,children:o,container:s,component:c,disableAutoFocus:l=!1,disableEnforceFocus:u=!1,disablePortal:d=!1,disableRestoreFocus:f=!1,disableScrollLock:p=!1,hideBackdrop:m=!1,keepMounted:h=!1,onClose:g,onTransitionEnter:_,onTransitionExited:v,open:y,slotProps:b={},slots:x={},theme:S,...C}=n,w={...n,closeAfterTransition:a,disableAutoFocus:l,disableEnforceFocus:u,disablePortal:d,disableRestoreFocus:f,disableScrollLock:p,hideBackdrop:m,keepMounted:h},{getRootProps:T,getBackdropProps:E,getTransitionProps:D,portalRef:O,isTopModal:ee,exited:te,hasTransition:k}=Df({...w,rootRef:t}),A={...w,exited:te},ne=kf(A),j={};if(o.props.tabIndex===void 0&&(j.tabIndex=`-1`),k){let{onEnter:e,onExited:t}=D();j.onEnter=e,j.onExited=t}let re={slots:x,slotProps:b},[M,N]=q(`root`,{ref:t,elementType:Af,externalForwardedProps:{...re,...C,component:c},getSlotProps:T,ownerState:A,className:V(i,ne?.root,!A.open&&A.exited&&ne?.hidden)}),[ie,ae]=q(`backdrop`,{elementType:jf,externalForwardedProps:re,shouldForwardComponentProp:!0,getSlotProps:e=>E({...e,onClick:t=>{e?.onClick&&e.onClick(t)}}),className:ne?.backdrop,ownerState:A});return!h&&!y&&(!k||te)?null:(0,B.jsx)(od,{ref:O,container:s,disablePortal:d,children:(0,B.jsxs)(M,{...N,children:[m?null:(0,B.jsx)(ie,{...ae}),(0,B.jsx)(Sf,{disableEnforceFocus:u,disableAutoFocus:l,disableRestoreFocus:f,isEnabled:ee,open:y,children:z.cloneElement(o,j)})]})})});function Nf(e){return ii(`MuiDialog`,e)}H(`MuiDialog`,[`root`,`backdrop`,`scrollPaper`,`scrollBody`,`container`,`paper`,`paperWidthFalse`,`paperWidthXs`,`paperWidthSm`,`paperWidthMd`,`paperWidthLg`,`paperWidthXl`,`paperFullWidth`,`paperFullScreen`]);var Pf=z.createContext({}),Ff=K(Ld,{name:`MuiDialog`,slot:`Backdrop`})({zIndex:-1}),If=e=>{let{classes:t,scroll:n,maxWidth:r,fullWidth:i,fullScreen:a}=e;return Ea({root:[`root`],backdrop:[`backdrop`],container:[`container`,`scroll${Ko(n)}`],paper:[`paper`,`paperWidth${Ko(String(r))}`,i&&`paperFullWidth`,a&&`paperFullScreen`]},Nf,t)},Lf=K(Mf,{name:`MuiDialog`,slot:`Root`})({"@media print":{position:`absolute !important`}}),Rf=K(`div`,{name:`MuiDialog`,slot:`Container`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.container,t[`scroll${Ko(n.scroll)}`]]}})({height:`100%`,"@media print":{height:`auto`},outline:0,variants:[{props:{scroll:`paper`},style:{display:`flex`,justifyContent:`center`,alignItems:`center`}},{props:{scroll:`body`},style:{overflowY:`auto`,overflowX:`hidden`,textAlign:`center`,"&::after":{content:`""`,display:`inline-block`,verticalAlign:`middle`,height:`100%`,width:`0`}}}]}),zf=K(ic,{name:`MuiDialog`,slot:`Paper`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.paper,t[`paperWidth${Ko(String(n.maxWidth))}`],n.fullWidth&&t.paperFullWidth,n.fullScreen&&t.paperFullScreen]}})(Xo(({theme:e})=>({margin:32,position:`relative`,overflowY:`auto`,"@media print":{overflowY:`visible`,boxShadow:`none`},variants:[{props:{scroll:`paper`},style:{display:`flex`,flexDirection:`column`,maxHeight:`calc(100% - 64px)`}},{props:{scroll:`body`},style:{display:`inline-block`,verticalAlign:`middle`,textAlign:`initial`}},{props:({ownerState:e})=>!e.maxWidth,style:{maxWidth:`calc(100% - 64px)`}},{props:{maxWidth:`xs`},style:{maxWidth:e.breakpoints.unit===`px`?Math.max(e.breakpoints.values.xs,444):`max(${e.breakpoints.values.xs}${e.breakpoints.unit}, 444px)`}},{props:{maxWidth:`xs`,scroll:`body`},style:{[e.breakpoints.down(Math.max(e.breakpoints.values.xs,444)+64)]:{maxWidth:`calc(100% - 64px)`}}},...Object.keys(e.breakpoints.values).filter(e=>e!==`xs`).map(t=>({props:{maxWidth:t},style:{maxWidth:`${e.breakpoints.values[t]}${e.breakpoints.unit}`}})),...Object.keys(e.breakpoints.values).filter(e=>e!==`xs`).map(t=>({props:{maxWidth:t,scroll:`body`},style:{[e.breakpoints.down(e.breakpoints.values[t]+64)]:{maxWidth:`calc(100% - 64px)`}}})),{props:({ownerState:e})=>e.fullWidth,style:{width:`calc(100% - 64px)`}},{props:({ownerState:e})=>e.fullScreen,style:{margin:0,width:`100%`,maxWidth:`100%`,height:`100%`,maxHeight:`none`,borderRadius:0}},{props:({ownerState:e})=>e.fullScreen&&e.scroll===`body`,style:{margin:0,maxWidth:`100%`}}]}))),Bf=z.forwardRef(function(e,t){let n=Zo({props:e,name:`MuiDialog`}),r=Io(),i={enter:r.transitions.duration.enteringScreen,exit:r.transitions.duration.leavingScreen},{"aria-describedby":a,"aria-labelledby":o,"aria-modal":s=!0,children:c,className:l,fullScreen:u=!1,fullWidth:d=!1,maxWidth:f=`sm`,onClick:p,onClose:m,open:h,PaperComponent:g=ic,role:_=`dialog`,scroll:v=`paper`,slots:y={},slotProps:b={},transitionDuration:x=i,...S}=n,C={...n,fullScreen:u,fullWidth:d,maxWidth:f,scroll:v},w=If(C),T=z.useRef(),E=e=>{T.current=e.target===e.currentTarget},D=e=>{p&&p(e),T.current&&(T.current=null,m&&m(e,`backdropClick`))},O=$i(o),ee=z.useMemo(()=>({titleId:O}),[O]),te={slots:y,slotProps:b},[k,A]=q(`root`,{elementType:Lf,shouldForwardComponentProp:!0,externalForwardedProps:te,ownerState:C,className:V(w.root,l),ref:t}),[ne,j]=q(`backdrop`,{elementType:Ff,shouldForwardComponentProp:!0,externalForwardedProps:te,ownerState:C,className:w.backdrop}),[re,M]=q(`paper`,{elementType:zf,shouldForwardComponentProp:!0,externalForwardedProps:te,ownerState:C,className:w.paper,additionalProps:{elevation:24,role:_,"aria-describedby":a,"aria-labelledby":O,"aria-modal":s,tabIndex:-1,[mf]:``}}),[N,ie]=q(`container`,{elementType:Rf,externalForwardedProps:te,ownerState:C,className:w.container}),[ae,oe]=q(`transition`,{elementType:Nd,externalForwardedProps:te,ownerState:C,additionalProps:{appear:!0,in:h,timeout:x,role:`presentation`}});return(0,B.jsx)(k,{closeAfterTransition:!0,slots:{backdrop:ne},slotProps:{backdrop:{transitionDuration:x,...j}},onClose:m,open:h,onClick:D,...A,...S,children:(0,B.jsx)(ae,{...oe,children:(0,B.jsx)(N,{onMouseDown:E,...ie,children:(0,B.jsx)(re,{as:g,...M,children:(0,B.jsx)(Pf.Provider,{value:ee,children:c})})})})})});function Vf(e){return ii(`MuiDialogContent`,e)}H(`MuiDialogContent`,[`root`,`dividers`]);function Hf(e){return ii(`MuiDialogTitle`,e)}var Uf=H(`MuiDialogTitle`,[`root`]),Wf=e=>{let{classes:t,dividers:n}=e;return Ea({root:[`root`,n&&`dividers`]},Vf,t)},Gf=K(`div`,{name:`MuiDialogContent`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,n.dividers&&t.dividers]}})(Xo(({theme:e})=>({flex:`1 1 auto`,WebkitOverflowScrolling:`touch`,overflowY:`auto`,padding:`20px 24px`,variants:[{props:({ownerState:e})=>e.dividers,style:{padding:`16px 24px`,borderTop:`1px solid ${(e.vars||e).palette.divider}`,borderBottom:`1px solid ${(e.vars||e).palette.divider}`}},{props:({ownerState:e})=>!e.dividers,style:{[`.${Uf.root} + &`]:{paddingTop:0}}}]}))),Kf=z.forwardRef(function(e,t){let n=Zo({props:e,name:`MuiDialogContent`}),{className:r,dividers:i=!1,...a}=n,o={...n,dividers:i};return(0,B.jsx)(Gf,{className:V(Wf(o).root,r),ownerState:o,ref:t,...a})}),qf=e=>{let{classes:t}=e;return Ea({root:[`root`]},Hf,t)},Jf=K(fl,{name:`MuiDialogTitle`,slot:`Root`})({padding:`16px 24px`,flex:`0 0 auto`}),Yf=z.forwardRef(function(e,t){let n=Zo({props:e,name:`MuiDialogTitle`}),{className:r,id:i,...a}=n,o=n,s=qf(o),{titleId:c=i}=z.useContext(Pf);return(0,B.jsx)(Jf,{component:`h2`,className:V(s.root,r),ownerState:o,ref:t,variant:`h6`,id:i??c,...a})});function Xf(e){return`scale(${e}, ${e**2})`}var Zf={entering:{opacity:1,transform:Xf(1)},entered:{opacity:1,transform:`none`},exiting:{opacity:0,transform:Xf(.75)},exited:{opacity:0,transform:Xf(.75)}},Qf={opacity:0,transform:Xf(.75),visibility:`hidden`},$f=z.forwardRef(function(e,t){let{addEndListener:n,appear:r=!0,children:i,easing:a,in:o,onEnter:s,onEntered:c,onEntering:l,onExit:u,onExited:d,onExiting:f,style:p,timeout:m=`auto`,...h}=e,g=Ws(),_=z.useRef(),v=Io(),y=z.useRef(null),b=ms(y,id(i),t),x=Ks(y,l),S=Ks(y,(e,t)=>{Gs(e);let{duration:n,delay:r,easing:i}=Js({style:p,timeout:m,easing:a},{mode:`enter`}),o;m===`auto`?(o=v.transitions.getAutoHeightDuration(e.clientHeight),_.current=o):o=n,e.style.transition=[v.transitions.create(`opacity`,{duration:o,delay:r}),v.transitions.create(`transform`,{duration:o*.666,delay:r,easing:i})].join(`,`),s&&s(e,t)}),C=Ks(y,c),w=Ks(y,f),T=Ks(y,e=>{let{duration:t,delay:n,easing:r}=Js({style:p,timeout:m,easing:a},{mode:`exit`}),i;m===`auto`?(i=v.transitions.getAutoHeightDuration(e.clientHeight),_.current=i):i=t,e.style.transition=[v.transitions.create(`opacity`,{duration:i,delay:n}),v.transitions.create(`transform`,{duration:i*.666,delay:n||i*.333,easing:r})].join(`,`),e.style.opacity=0,e.style.transform=Xf(.75),u&&u(e)}),E=Ks(y,e=>{e.style.transition=``,d&&d(e)});return(0,B.jsx)(Os,{appear:r,in:o,nodeRef:y,onEnter:S,onEntered:C,onEntering:x,onExit:T,onExited:E,onExiting:w,addEndListener:e=>{m===`auto`&&g.start(_.current||0,e),n&&n(y.current,e)},timeout:m===`auto`?null:m,...h,children:(e,{ownerState:t,...n})=>{let r=qs(e,o,Zf,Qf,p,i.props.style);return z.cloneElement(i,{style:r,ref:b,...n})}})});$f&&($f.muiSupportAuto=!0);function ep(e){return ii(`MuiTooltip`,e)}var tp=H(`MuiTooltip`,[`popper`,`popperInteractive`,`popperArrow`,`popperClose`,`tooltip`,`tooltipArrow`,`touch`,`tooltipPlacementLeft`,`tooltipPlacementRight`,`tooltipPlacementTop`,`tooltipPlacementBottom`,`arrow`]);function np(e){return Math.round(e*1e5)/1e5}var rp=e=>{let{classes:t,disableInteractive:n,arrow:r,touch:i,placement:a}=e;return Ea({popper:[`popper`,!n&&`popperInteractive`,r&&`popperArrow`],tooltip:[`tooltip`,r&&`tooltipArrow`,i&&`touch`,`tooltipPlacement${Ko(a.split(`-`)[0])}`],arrow:[`arrow`]},ep,t)},ip=K(hd,{name:`MuiTooltip`,slot:`Popper`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.popper,!n.disableInteractive&&t.popperInteractive,n.arrow&&t.popperArrow,!n.open&&t.popperClose]}})(Xo(({theme:e})=>({zIndex:(e.vars||e).zIndex.tooltip,pointerEvents:`none`,variants:[{props:({ownerState:e,open:t})=>t&&!e.disableInteractive,style:{pointerEvents:`auto`}},{props:({ownerState:e})=>e.arrow,style:{[`&[data-popper-placement*="bottom"] .${tp.arrow}`]:{top:0,marginTop:`-0.71em`,"&::before":{transformOrigin:`0 100%`}},[`&[data-popper-placement*="top"] .${tp.arrow}`]:{bottom:0,marginBottom:`-0.71em`,"&::before":{transformOrigin:`100% 0`}},[`&[data-popper-placement*="right"] .${tp.arrow}`]:{height:`1em`,width:`0.71em`,insetInlineStart:0,marginInlineStart:`-0.71em`,"&::before":{transformOrigin:`100% 100%`}},[`&[data-popper-placement*="left"] .${tp.arrow}`]:{height:`1em`,width:`0.71em`,insetInlineEnd:0,marginInlineEnd:`-0.71em`,"&::before":{transformOrigin:`0 0`}}}}]}))),ap=K(`div`,{name:`MuiTooltip`,slot:`Tooltip`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.tooltip,n.touch&&t.touch,n.arrow&&t.tooltipArrow,t[`tooltipPlacement${Ko(n.placement.split(`-`)[0])}`]]}})(Xo(({theme:e})=>({backgroundColor:e.vars?e.vars.palette.Tooltip.bg:e.alpha(e.palette.grey[700],.92),borderRadius:(e.vars||e).shape.borderRadius,color:(e.vars||e).palette.common.white,fontFamily:e.typography.fontFamily,padding:`4px 8px`,fontSize:e.typography.pxToRem(11),maxWidth:300,margin:2,wordWrap:`break-word`,fontWeight:e.typography.fontWeightMedium,[`.${tp.popper}[data-popper-placement*="left"] &`]:{transformOrigin:`right center`,marginInlineEnd:`14px`},[`.${tp.popper}[data-popper-placement*="right"] &`]:{transformOrigin:`left center`,marginInlineStart:`14px`},[`.${tp.popper}[data-popper-placement*="top"] &`]:{transformOrigin:`center bottom`,marginBottom:`14px`},[`.${tp.popper}[data-popper-placement*="bottom"] &`]:{transformOrigin:`center top`,marginTop:`14px`},variants:[{props:({ownerState:e})=>e.arrow,style:{position:`relative`,marginBlock:0}},{props:({ownerState:e})=>e.touch,style:{padding:`8px 16px`,fontSize:e.typography.pxToRem(14),lineHeight:`${np(16/14)}em`,fontWeight:e.typography.fontWeightRegular}},{props:({ownerState:e})=>e.touch,style:{[`.${tp.popper}[data-popper-placement*="left"] &`]:{marginInlineEnd:`24px`},[`.${tp.popper}[data-popper-placement*="right"] &`]:{marginInlineStart:`24px`},[`.${tp.popper}[data-popper-placement*="top"] &`]:{marginBottom:`24px`},[`.${tp.popper}[data-popper-placement*="bottom"] &`]:{marginTop:`24px`}}}]}))),op=K(`span`,{name:`MuiTooltip`,slot:`Arrow`})(Xo(({theme:e})=>({overflow:`hidden`,position:`absolute`,width:`1em`,height:`0.71em`,boxSizing:`border-box`,color:e.vars?e.vars.palette.Tooltip.bg:e.alpha(e.palette.grey[700],.9),"&::before":{content:`""`,margin:`auto`,display:`block`,width:`100%`,height:`100%`,backgroundColor:`currentColor`,transform:`rotate(45deg)`}}))),sp=!1,cp=new Us,lp={x:0,y:0};function up(e,t){return(n,...r)=>{t&&t(n,...r),e(n,...r)}}var dp=z.forwardRef(function(e,t){let n=Zo({props:e,name:`MuiTooltip`}),{arrow:r=!1,children:i,classes:a,describeChild:o=!1,disableFocusListener:s=!1,disableHoverListener:c=!1,disableInteractive:l=!1,disableTouchListener:u=!1,enterDelay:d=100,enterNextDelay:f=0,enterTouchDelay:p=700,followCursor:m=!1,id:h,leaveDelay:g=0,leaveTouchDelay:_=1500,onClose:v,onOpen:y,open:b,placement:x=`bottom`,slotProps:S={},slots:C={},title:w,...T}=n,E=z.isValidElement(i)?i:(0,B.jsx)(`span`,{children:i}),D=Io(),[O,ee]=z.useState(),[te,k]=z.useState(null),A=z.useRef(!1),ne=l||m,j=Ws(),re=Ws(),M=Ws(),N=Ws(),[ie,ae]=us({controlled:b,default:!1,name:`Tooltip`,state:`open`}),oe=ie,se=cs(h),P=z.useRef(),F=fs(()=>{P.current!==void 0&&(document.body.style.WebkitUserSelect=P.current,P.current=void 0),N.clear()});z.useEffect(()=>F,[F]);let ce=e=>{cp.clear(),sp=!0,ae(!0),y&&!oe&&y(e)},le=fs(e=>{cp.start(800+g,()=>{sp=!1}),ae(!1),v&&oe&&v(e),j.start(D.transitions.duration.shortest,()=>{A.current=!1})}),ue=e=>{A.current&&e.type!==`touchstart`||(O&&O.removeAttribute(`title`),re.clear(),M.clear(),d||sp&&f?re.start(sp?f:d,()=>{ce(e)}):ce(e))},I=e=>{re.clear(),M.start(g,()=>{le(e)})},[,de]=z.useState(!1),L=e=>{let t=e?.target??O;if(!t||t.disabled||!ac(t)){de(!1);let n=e??new Event(`blur`);!e&&t&&(Object.defineProperty(n,"target",{value:t}),Object.defineProperty(n,"currentTarget",{value:t})),I(n)}},fe=e=>{if(O||ee(e.currentTarget),ac(e.target)){let t=e=>{e.target.disabled&&L(e),e.target.removeEventListener(`blur`,t)};e.target.addEventListener(`blur`,t),de(!0),ue(e)}},pe=e=>{A.current=!0;let t=E.props;t.onTouchStart&&t.onTouchStart(e)},me=e=>{pe(e),M.clear(),j.clear(),F(),P.current=document.body.style.WebkitUserSelect,document.body.style.WebkitUserSelect=`none`,N.start(p,()=>{document.body.style.WebkitUserSelect=P.current,ue(e)})},he=e=>{E.props.onTouchEnd&&E.props.onTouchEnd(e),F(),M.start(_,()=>{le(e)})};z.useEffect(()=>{if(!oe)return;function e(e){e.key===`Escape`&&le(e)}return document.addEventListener(`keydown`,e),()=>{document.removeEventListener(`keydown`,e)}},[le,oe]);let ge=ms(id(E),ee,t);!w&&w!==0&&(oe=!1);let _e=z.useRef(),ve=e=>{let t=E.props;t.onMouseMove&&t.onMouseMove(e),lp={x:e.clientX,y:e.clientY},_e.current&&_e.current.update()},ye={},be=typeof w==`string`;o?(ye.title=!oe&&be&&!c?w:null,ye[`aria-describedby`]=oe?se:null):(ye[`aria-label`]=be?w:null,ye[`aria-labelledby`]=oe&&!be?se:null);let R={...ye,...T,...E.props,className:V(T.className,E.props.className),onTouchStart:pe,ref:ge,...m?{onMouseMove:ve}:{}},xe={};u||(R.onTouchStart=me,R.onTouchEnd=he),c||(R.onMouseOver=up(ue,R.onMouseOver),R.onMouseLeave=up(I,R.onMouseLeave),ne||(xe.onMouseOver=ue,xe.onMouseLeave=I)),s||(R.onFocus=up(fe,R.onFocus),R.onBlur=up(L,R.onBlur),ne||(xe.onFocus=fe,xe.onBlur=L));let Se={...n,arrow:r,disableInteractive:ne,placement:x,touch:A.current},Ce=typeof S.popper==`function`?S.popper(Se):S.popper,we=z.useMemo(()=>{let e=[{name:`arrow`,enabled:!!te,options:{element:te,padding:4}}];return Ce?.popperOptions?.modifiers&&(e=e.concat(Ce.popperOptions.modifiers)),{...Ce?.popperOptions,modifiers:e}},[te,Ce?.popperOptions]),Te=rp(Se),Ee={slots:C,slotProps:{arrow:S.arrow,popper:Ce,tooltip:S.tooltip,transition:S.transition}},[De,Oe]=q(`popper`,{elementType:ip,externalForwardedProps:Ee,ownerState:Se,className:Te.popper}),[ke,Ae]=q(`transition`,{elementType:$f,externalForwardedProps:Ee,ownerState:Se}),[je,Me]=q(`tooltip`,{elementType:ap,className:Te.tooltip,externalForwardedProps:Ee,ownerState:Se}),[Ne,Pe]=q(`arrow`,{elementType:op,className:Te.arrow,externalForwardedProps:Ee,ownerState:Se,ref:k});return(0,B.jsxs)(z.Fragment,{children:[z.cloneElement(E,R),(0,B.jsx)(De,{as:hd,placement:x,anchorEl:m?{getBoundingClientRect:()=>({top:lp.y,left:lp.x,right:lp.x,bottom:lp.y,width:0,height:0})}:O,popperRef:_e,open:O?oe:!1,id:se,transition:!0,...xe,...Oe,popperOptions:we,children:({TransitionProps:e})=>(0,B.jsx)(ke,{timeout:D.transitions.duration.shorter,...e,...Ae,children:(0,B.jsxs)(je,{...Me,children:[w,r?(0,B.jsx)(Ne,{...Pe}):null]})})})]})}),fp=Na({createStyledComponent:K(`div`,{name:`MuiStack`,slot:`Root`}),useThemeProps:e=>Zo({props:e,name:`MuiStack`})}),pp=g(),mp=[`instruction`,`agent`,`skill`,`mcp`];function hp(e){return e===`instruction`?`Instructions`:e===`agent`?`Agents`:e===`skill`?`Skills`:`MCPs`}function gp({data:e,onEntityDragStart:t,onEntityDrop:n,onEntityDelete:r,onEntityClick:i}){let a=(e,t)=>{e.stopPropagation(),r(t)};return(0,B.jsx)(Ud,{variant:`providerNode`,className:[`provider-card`,e.isHub?`provider-card-hub`:``,e.isInstalled===!1?`provider-card-unavailable`:``].filter(Boolean).join(` `),elevation:0,onDragOver:t=>{e.isInstalled!==!1&&(t.preventDefault(),t.dataTransfer.dropEffect=`copy`)},onDrop:e.isInstalled===!1?void 0:t=>n(e.providerId,t),children:(0,B.jsxs)(qd,{children:[(0,B.jsxs)(fp,{direction:`row`,className:`provider-node-header`,children:[(0,B.jsxs)(fp,{direction:`row`,spacing:1,className:`floating-inline`,children:[e.iconUrl?(0,B.jsx)(Ad,{src:e.iconUrl,alt:e.title,className:`provider-node-avatar`}):null,(0,B.jsxs)(fl,{variant:`h6`,children:[e.title,e.isInstalled===!1?` (not installed)`:``]})]}),(0,B.jsx)(zd,{className:e.isInstalled===!1?`provider-node-status provider-node-status-unavailable`:`provider-node-status`})]}),(0,B.jsxs)(fp,{className:`provider-groups`,children:[mp.map(n=>{let r=e.attachedByType[n]??[];return r.length?(0,B.jsxs)(fp,{className:`provider-group`,children:[(0,B.jsx)(fl,{variant:`overline`,className:`provider-group-title`,children:hp(n)}),(0,B.jsx)(fp,{direction:`row`,className:`provider-chip-wrap`,children:r.map(r=>{let o={name:r,type:n,providerId:e.providerId};return(0,B.jsx)(Sd,{size:`small`,label:r,draggable:e.isInstalled!==!1,className:`entity-chip entity-chip-${n}`,onDragStart:e=>t(o,e),onDelete:e.isHub||e.isInstalled===!1?void 0:e=>a(e,o),onClick:()=>i(o)},`${n}-${r}`)})})]},n):null}),Object.values(e.attachedByType).some(e=>e.length>0)?null:(0,B.jsx)(fl,{variant:`body2`,color:`text.secondary`,children:`No attached entities`})]})]})})}var _p=ns((0,B.jsx)(`path`,{d:`M11.01 3.05C6.51 3.54 3 7.36 3 12c0 4.97 4.03 9 9 9 4.63 0 8.45-3.5 8.95-8 .09-.79-.78-1.42-1.54-.95-.84.54-1.84.85-2.91.85-2.98 0-5.4-2.42-5.4-5.4 0-1.06.31-2.06.84-2.89.45-.67-.04-1.63-.93-1.56`}),`DarkModeRounded`),vp=ns((0,B.jsx)(`path`,{d:`M12 7c-2.76 0-5 2.24-5 5s2.24 5 5 5 5-2.24 5-5-2.24-5-5-5M2 13h2c.55 0 1-.45 1-1s-.45-1-1-1H2c-.55 0-1 .45-1 1s.45 1 1 1m18 0h2c.55 0 1-.45 1-1s-.45-1-1-1h-2c-.55 0-1 .45-1 1s.45 1 1 1M11 2v2c0 .55.45 1 1 1s1-.45 1-1V2c0-.55-.45-1-1-1s-1 .45-1 1m0 18v2c0 .55.45 1 1 1s1-.45 1-1v-2c0-.55-.45-1-1-1s-1 .45-1 1M5.99 4.58c-.39-.39-1.03-.39-1.41 0-.39.39-.39 1.03 0 1.41l1.06 1.06c.39.39 1.03.39 1.41 0s.39-1.03 0-1.41zm12.37 12.37c-.39-.39-1.03-.39-1.41 0-.39.39-.39 1.03 0 1.41l1.06 1.06c.39.39 1.03.39 1.41 0 .39-.39.39-1.03 0-1.41zm1.06-10.96c.39-.39.39-1.03 0-1.41-.39-.39-1.03-.39-1.41 0l-1.06 1.06c-.39.39-.39 1.03 0 1.41s1.03.39 1.41 0zM7.05 18.36c.39-.39.39-1.03 0-1.41-.39-.39-1.03-.39-1.41 0l-1.06 1.06c-.39.39-.39 1.03 0 1.41s1.03.39 1.41 0z`}),`LightModeRounded`),yp=ns((0,B.jsx)(`path`,{d:`M12 3c-.55 0-1 .45-1 1v8c0 .55.45 1 1 1s1-.45 1-1V4c0-.55-.45-1-1-1m5.14 2.86c-.39.39-.38 1-.01 1.39 1.13 1.2 1.83 2.8 1.87 4.57.09 3.83-3.08 7.13-6.91 7.17C8.18 19.05 5 15.9 5 12c0-1.84.71-3.51 1.87-4.76.37-.39.37-1-.01-1.38-.4-.4-1.05-.39-1.43.02C3.98 7.42 3.07 9.47 3 11.74c-.14 4.88 3.83 9.1 8.71 9.25 5.1.16 9.29-3.93 9.29-9 0-2.37-.92-4.51-2.42-6.11-.38-.41-1.04-.42-1.44-.02`}),`PowerSettingsNewRounded`),bp=ns((0,B.jsx)(`path`,{d:`M12 4V2.21c0-.45-.54-.67-.85-.35l-2.8 2.79c-.2.2-.2.51 0 .71l2.79 2.79c.32.31.86.09.86-.36V6c3.31 0 6 2.69 6 6 0 .79-.15 1.56-.44 2.25-.15.36-.04.77.23 1.04.51.51 1.37.33 1.64-.34.37-.91.57-1.91.57-2.95 0-4.42-3.58-8-8-8m0 14c-3.31 0-6-2.69-6-6 0-.79.15-1.56.44-2.25.15-.36.04-.77-.23-1.04-.51-.51-1.37-.33-1.64.34C4.2 9.96 4 10.96 4 12c0 4.42 3.58 8 8 8v1.79c0 .45.54.67.85.35l2.79-2.79c.2-.2.2-.51 0-.71l-2.79-2.79c-.31-.31-.85-.09-.85.36z`}),`SyncRounded`);function xp(e){let{isDark:t,connected:n,onToggleTheme:r,onRefresh:i,onShutdown:a}=e;return(0,B.jsx)(Ud,{variant:`glassPill`,sx:{position:`absolute`,top:20,right:20,zIndex:12},children:(0,B.jsxs)(fp,{direction:`row`,spacing:1,children:[(0,B.jsx)(dp,{title:n?`Connected to Local System`:`Disconnected`,children:(0,B.jsx)(Yc,{color:n?`success`:`default`,size:`small`,children:(0,B.jsx)(bp,{fontSize:`small`})})}),(0,B.jsx)(dp,{title:t?`Switch to light mode`:`Switch to dark mode`,children:(0,B.jsx)(Yc,{size:`small`,onClick:r,children:t?(0,B.jsx)(vp,{fontSize:`small`}):(0,B.jsx)(_p,{fontSize:`small`})})}),(0,B.jsx)(dp,{title:`Close Visualizer`,children:(0,B.jsx)(Yc,{size:`small`,color:`error`,onClick:a,children:(0,B.jsx)(yp,{fontSize:`small`})})}),(0,B.jsx)(dp,{title:`Reload canvas config`,children:(0,B.jsx)(Yc,{size:`small`,onClick:i,children:(0,B.jsx)(bp,{fontSize:`small`})})})]})})}var Sp=1e4;function Cp(e){let t=(0,z.useMemo)(()=>e||`${window.location.protocol===`https:`?`wss:`:`ws:`}//${window.location.host}`,[e]),n=(0,z.useRef)(null),r=(0,z.useRef)(new Map),[i,a]=(0,z.useState)(!1);return(0,z.useEffect)(()=>{let e=new WebSocket(t);return n.current=e,e.onopen=()=>a(!0),e.onclose=()=>a(!1),e.onerror=()=>a(!1),e.onmessage=e=>{let t=JSON.parse(e.data);if(t.type!==`CONNECTION_CHANGED_RESULT`||!t.requestId)return;let n=r.current.get(t.requestId);n&&(window.clearTimeout(n.timeout),r.current.delete(t.requestId),t.ok?n.resolve():n.reject(Error(t.error||`Visualizer update failed`)))},()=>{e.close(),n.current=null;for(let e of r.current.values())window.clearTimeout(e.timeout),e.reject(Error(`Visualizer disconnected`));r.current.clear()}},[t]),{connected:i,send:(0,z.useCallback)(e=>{if(!n.current||n.current.readyState!==WebSocket.OPEN)return Promise.reject(Error(`Visualizer is disconnected`));let t=crypto.randomUUID(),i={type:`CONNECTION_CHANGED`,requestId:t,payload:e};return new Promise((e,a)=>{let o=window.setTimeout(()=>{r.current.delete(t),a(Error(`Visualizer update timed out`))},Sp);r.current.set(t,{resolve:e,reject:a,timeout:o}),n.current?.send(JSON.stringify(i))})},[])}}var wp=`application/wasla-provider-entity`,Tp=[`north-west`,`north`,`north-east`,`west`,`east`,`south-west`,`south`,`south-east`];function Ep(e){return[...e.entities.instructions,...e.entities.agents,...e.entities.skills,...e.entities.mcps]}function Dp(){return{instruction:[],agent:[],skill:[],mcp:[]}}function Op(e){let t=new Map(Ep(e).map(e=>[e.id,e])),n=new Map,r=e=>{let t=n.get(e);if(t)return t;let r=Dp();return n.set(e,r),r};for(let n of e.connections){let e=t.get(n.entityId);if(!e)continue;let i=r(n.providerId);i[e.type].includes(e.name)||i[e.type].push(e.name)}let i=e.providers.find(e=>e.isHub);if(i){let e=r(i.id);for(let n of t.values())e[n.type].includes(n.name)||e[n.type].push(n.name)}return n}function kp(e,t){return{providerId:e.id,title:e.title,attachedByType:t.get(e.id)??Dp(),iconUrl:e.iconUrl,isHub:e.isHub,isInstalled:e.isInstalled}}function Ap({config:e,mode:t,onToggleMode:n,onRefreshConfig:r}){let{connected:i,send:a}=Cp(e.websocketUrl),[o,s]=(0,z.useState)(()=>Op(e)),[c,l]=(0,z.useState)({open:!1,title:``,body:``}),[u,d]=(0,z.useState)(!1),[f,p]=(0,z.useState)(null),[m,h]=(0,z.useState)([]),g=(0,z.useRef)(null),_=e.providers.find(e=>e.isHub),v=e.providers.filter(e=>!e.isHub);(0,z.useEffect)(()=>{s(Op(e))},[e]),(0,z.useLayoutEffect)(()=>{let e=g.current;if(!e||!_)return;let t=()=>{let t=e.getBoundingClientRect(),n=e.querySelector(`[data-provider-slot="${_.id}"]`);if(!n)return;let r=n.getBoundingClientRect(),i=r.left-t.left+r.width/2,a=r.top-t.top+r.height/2;h(v.flatMap(n=>{let r=e.querySelector(`[data-provider-slot="${n.id}"]`);if(!r)return[];let o=r.getBoundingClientRect();return[{providerId:n.id,x1:i,y1:a,x2:o.left-t.left+o.width/2,y2:o.top-t.top+o.height/2}]}))},n=new ResizeObserver(t);n.observe(e);for(let t of e.querySelectorAll(`[data-provider-slot]`))n.observe(t);return window.addEventListener(`resize`,t),t(),()=>{n.disconnect(),window.removeEventListener(`resize`,t)}},[o,e.providers]);let y=(0,z.useCallback)((e,t,n,r)=>{s(i=>{let a=new Map(i),o=a.get(e)??Dp(),s=o[t],c=r===`add`?s.includes(n)?s:[...s,n]:s.filter(e=>e!==n);return a.set(e,{...o,[t]:c}),a})},[]),b=(0,z.useCallback)((e,t)=>{t.stopPropagation(),t.dataTransfer.setData(wp,JSON.stringify(e)),t.dataTransfer.effectAllowed=`copy`},[]),x=(0,z.useCallback)((t,n)=>{n.preventDefault(),n.stopPropagation();let i=n.dataTransfer.getData(wp);if(!i)return;let o=JSON.parse(i);o.providerId===t||t===_?.id||e.providers.find(e=>e.id===t)?.isInstalled!==!1&&(y(t,o.type,o.name,`add`),p(null),a({sourceEntity:o.name,entityType:o.type,sourceProvider:o.providerId,targetProvider:t,action:`ATTACH`}).then(r).catch(e=>{y(t,o.type,o.name,`remove`),p(e instanceof Error?e.message:String(e))}))},[e.providers,_?.id,y,r,a]),S=(0,z.useCallback)(e=>{y(e.providerId,e.type,e.name,`remove`),p(null),a({sourceEntity:e.name,entityType:e.type,sourceProvider:e.providerId,targetProvider:e.providerId,action:`DETACH`}).then(r).catch(t=>{y(e.providerId,e.type,e.name,`add`),p(t instanceof Error?t.message:String(t))})},[y,r,a]),C=(0,z.useCallback)(async e=>{try{let t=`type=${encodeURIComponent(e.type)}&name=${encodeURIComponent(e.name)}&provider=${encodeURIComponent(e.providerId)}`,n=await fetch(`/api/entity-content?${t}`);if(!n.ok)throw Error(`Failed`);let r=await n.json();l({open:!0,title:`${e.type}: ${e.name}`,body:r.content||`No content found.`})}catch{l({open:!0,title:`${e.type}: ${e.name}`,body:`Unable to load content.`})}},[]),w=(0,z.useCallback)(()=>{fetch(`/api/shutdown`,{method:`POST`,keepalive:!0}),window.close(),window.setTimeout(()=>d(!0),100)},[]),T={onEntityDragStart:b,onEntityDrop:x,onEntityDelete:S,onEntityClick:C};return u?(0,B.jsx)(zd,{className:`workspace-closed`,children:(0,B.jsx)(Ud,{variant:`glassPanel`,className:`workspace-closed-card`,children:(0,B.jsxs)(fp,{spacing:1,children:[(0,B.jsx)(fl,{variant:`h6`,children:`Visualizer closed`}),(0,B.jsx)(fl,{variant:`body2`,color:`text.secondary`,children:`The local server has stopped. You can close this tab.`})]})})}):(0,B.jsxs)(zd,{className:`workspace-shell`,children:[(0,B.jsx)(xp,{isDark:t===`dark`,connected:i,onToggleTheme:n,onRefresh:()=>void r(),onShutdown:w}),f?(0,B.jsx)(sl,{severity:`error`,onClose:()=>p(null),sx:{position:`absolute`,top:76,right:20,zIndex:12,maxWidth:520},children:f}):null,(0,B.jsxs)(zd,{ref:g,className:`workspace-stage`,children:[(0,B.jsx)(`svg`,{className:`provider-connectors`,"aria-hidden":`true`,children:m.map(e=>(0,B.jsx)(`line`,{x1:e.x1,y1:e.y1,x2:e.x2,y2:e.y2},e.providerId))}),_?(0,B.jsx)(zd,{className:`provider-slot provider-slot-center`,"data-provider-slot":_.id,children:(0,B.jsx)(gp,{data:kp(_,o),...T})}):null,v.map((e,t)=>{let n=Tp[t];return n?(0,B.jsx)(zd,{className:`provider-slot provider-slot-${n}`,"data-provider-slot":e.id,children:(0,B.jsx)(gp,{data:kp(e,o),...T})},e.id):null})]}),(0,B.jsxs)(Bf,{open:c.open,onClose:()=>l(e=>({...e,open:!1})),fullWidth:!0,maxWidth:`md`,children:[(0,B.jsx)(Yf,{children:c.title}),(0,B.jsx)(Kf,{children:(0,B.jsx)(zd,{component:`pre`,className:`entity-content-preview`,children:c.body})})]})]})}function jp({mode:e,onToggleMode:t}){let[n,r]=(0,z.useState)(null),[i,a]=(0,z.useState)(null),o=(0,z.useCallback)(async()=>{a(null);let e=window.__WASLA_VISUALIZER_CONFIG__;if(e){r(e);return}try{let e=await fetch(`/api/config`);if(!e.ok)throw Error(`Config fetch failed`);r(await e.json())}catch{r(null),a(`Cannot load workspace config. Start with: waslagenie ui`)}},[]);return(0,z.useEffect)(()=>{o()},[o]),n?(0,B.jsx)(Ap,{config:n,mode:e,onToggleMode:t,onRefreshConfig:o}):(0,B.jsx)(zd,{className:`workspace-loading`,children:(0,B.jsxs)(fp,{spacing:.75,className:`loading-state`,children:[(0,B.jsx)(fl,{variant:`body1`,children:i??`Loading workspace config...`}),i?(0,B.jsx)(fl,{variant:`caption`,color:`text.secondary`,children:`No demo data is used in this view.`}):null]})})}function Mp(e){let t=e===`dark`,n=t?`rgba(148, 163, 184, 0.18)`:`rgba(16, 24, 40, 0.09)`,r=t?`color-mix(in srgb, var(--mui-palette-background-paper) 80%, transparent)`:`color-mix(in srgb, var(--mui-palette-background-paper) 90%, transparent)`,i=t?`color-mix(in srgb, var(--mui-palette-background-paper) 78%, transparent)`:`color-mix(in srgb, var(--mui-palette-background-paper) 88%, transparent)`,a=t?`0 18px 46px color-mix(in srgb, #000000 38%, transparent)`:`0 8px 28px color-mix(in srgb, #101828 7%, transparent)`;return Po({cssVariables:!0,palette:{mode:e,primary:{main:t?`#7da7ff`:`#356ef3`},secondary:{main:t?`#a78bfa`:`#0891b2`},background:{default:t?`#0d1017`:`#fbfbfc`,paper:t?`#131e33`:`#ffffff`}},customGlass:{panelBg:r,panelBorder:n,softShadow:a},shape:{borderRadius:14},typography:{fontFamily:`"Sora", "IBM Plex Sans", "Segoe UI", sans-serif`},components:{MuiCssBaseline:{styleOverrides:{body:{background:t?`#0d1017`:`#fbfbfc`},".workspace-shell":{position:`relative`,minHeight:`100dvh`,overflow:`auto`,backgroundColor:`var(--mui-palette-background-default)`,backgroundImage:t?`radial-gradient(circle, rgba(255,255,255,0.12) 1px, transparent 1px)`:`radial-gradient(circle, rgba(16,24,40,0.10) 1px, transparent 1px)`,backgroundSize:`20px 20px`},".workspace-loading":{height:`100dvh`,display:`grid`,placeItems:`center`},".workspace-closed":{minHeight:`100dvh`,display:`grid`,placeItems:`center`,backgroundColor:`var(--mui-palette-background-default)`},".workspace-closed-card":{width:360,textAlign:`center`},".workspace-stage":{position:`relative`,minWidth:1260,minHeight:`100dvh`,boxSizing:`border-box`,padding:`56px 42px`,display:`grid`,gridTemplateColumns:`repeat(3, 336px)`,gridTemplateRows:`repeat(3, auto)`,alignItems:`center`,justifyContent:`center`,columnGap:88,rowGap:64},".provider-connectors":{position:`absolute`,inset:0,width:`100%`,height:`100%`,pointerEvents:`none`,overflow:`visible`},".provider-connectors line":{stroke:`color-mix(in srgb, var(--mui-palette-primary-main) 32%, var(--mui-palette-divider))`,strokeWidth:1,vectorEffect:`non-scaling-stroke`},".provider-slot":{position:`relative`,zIndex:1},".provider-slot-center":{gridColumn:2,gridRow:2,zIndex:2},".provider-slot-north-west":{gridColumn:1,gridRow:1},".provider-slot-north":{gridColumn:2,gridRow:1},".provider-slot-north-east":{gridColumn:3,gridRow:1},".provider-slot-west":{gridColumn:1,gridRow:2},".provider-slot-east":{gridColumn:3,gridRow:2},".provider-slot-south-west":{gridColumn:1,gridRow:3},".provider-slot-south":{gridColumn:2,gridRow:3},".provider-slot-south-east":{gridColumn:3,gridRow:3},".provider-card":{position:`relative`,zIndex:1},".provider-node-header":{display:`flex`,justifyContent:`space-between`,alignItems:`center`,marginBottom:20},".provider-node-avatar":{width:24,height:24},".provider-card-hub":{borderColor:`color-mix(in srgb, var(--mui-palette-primary-main) 54%, var(--mui-palette-divider))`,boxShadow:t?`0 18px 48px rgba(0,0,0,0.42), 0 0 0 1px rgba(125,167,255,0.12)`:`0 14px 42px rgba(16,24,40,0.08), 0 0 0 1px rgba(53,110,243,0.10)`},".provider-card-unavailable":{opacity:.58},".provider-node-status":{width:10,height:10,borderRadius:`50%`,backgroundColor:`var(--mui-palette-success-main)`,boxShadow:`0 0 0 8px color-mix(in srgb, var(--mui-palette-success-main) 20%, transparent)`,animation:`wasla-pulse 1.4s infinite`},".provider-node-status-unavailable":{backgroundColor:`var(--mui-palette-text-disabled)`,boxShadow:`none`,animation:`none`},".entity-node-row":{display:`flex`,alignItems:`center`,gap:8},".entity-node-label":{fontWeight:600},".entity-node-instruction":{borderLeftColor:`var(--mui-palette-info-main)`},".entity-node-agent":{borderLeftColor:`var(--mui-palette-warning-main)`},".entity-node-skill":{borderLeftColor:`var(--mui-palette-secondary-main)`},".entity-node-mcp":{borderLeftColor:`var(--mui-palette-success-main)`},".floating-row":{display:`flex`,alignItems:`center`,justifyContent:`space-between`},".floating-inline":{display:`flex`,alignItems:`center`},".floating-chip-wrap":{display:`flex`,flexWrap:`wrap`,rowGap:6},".provider-chip-wrap":{display:`flex`,flexWrap:`wrap`,gap:6},".provider-groups":{gap:14},".provider-group":{gap:6},".provider-group-title":{color:`var(--mui-palette-text-secondary)`,letterSpacing:`0.1em`,fontSize:10,lineHeight:1},".entity-content-preview":{margin:0,whiteSpace:`pre-wrap`,wordBreak:`break-word`,fontFamily:`ui-monospace, SFMono-Regular, Menlo, monospace`,fontSize:13},".loading-state":{alignItems:`center`},"@keyframes wasla-pulse":{"0%":{transform:`scale(1)`,opacity:1},"50%":{transform:`scale(1.15)`,opacity:.6},"100%":{transform:`scale(1)`,opacity:1}}}},MuiCard:{variants:[{props:{variant:`glassPanel`},style:{padding:8,borderRadius:16,backdropFilter:`blur(18px)`,backgroundColor:r,border:`1px solid ${n}`,boxShadow:a}},{props:{variant:`glassPill`},style:{borderRadius:999,padding:6,backdropFilter:`blur(18px)`,backgroundColor:i,border:`1px solid ${n}`}},{props:{variant:`providerNode`},style:{width:336,minHeight:188,borderRadius:14,border:`1px solid ${n}`,backdropFilter:`blur(20px)`,backgroundColor:r,boxShadow:a}},{props:{variant:`entityNode`},style:{minWidth:190,padding:`8px 10px`,borderLeftWidth:4,borderLeftStyle:`solid`,borderRadius:12,backdropFilter:`blur(18px)`,backgroundColor:r,boxShadow:a}},{props:{variant:`hintPanel`},style:{padding:`8px 12px`,borderRadius:16,border:`1px solid ${n}`,backdropFilter:`blur(18px)`,backgroundColor:r}}],styleOverrides:{root:{backgroundImage:`none`}}},MuiChip:{styleOverrides:{root:{height:26,borderRadius:8,border:`1px solid ${n}`,backgroundColor:t?`color-mix(in srgb, var(--mui-palette-background-paper) 82%, white 3%)`:`#f7f7f8`,"&.entity-chip":{cursor:`grab`},"&.entity-chip:active":{cursor:`grabbing`}},label:{paddingLeft:9,paddingRight:9,fontSize:11,color:`var(--mui-palette-text-secondary)`},deleteIcon:{fontSize:15,marginRight:4,color:`var(--mui-palette-text-disabled)`,"&:hover":{color:`var(--mui-palette-error-main)`}}}},MuiIconButton:{styleOverrides:{root:{"&.palette-toggle":{padding:0}}}},MuiPaper:{styleOverrides:{root:{backgroundImage:`none`}}}}})}function Np(){let[e,t]=z.useState(`light`);return(0,B.jsxs)(Go,{theme:Mp(e),children:[(0,B.jsx)(tf,{}),(0,B.jsx)(jp,{mode:e,onToggleMode:()=>t(e=>e===`light`?`dark`:`light`)})]})}(0,pp.createRoot)(document.getElementById(`root`)).render((0,B.jsx)(z.StrictMode,{children:(0,B.jsx)(Np,{})}));
|
|
144
|
+
`,Rc=e=>{let{classes:t,variant:n,color:r,disableShrink:i}=e;return Ea({root:[`root`,n,`color${Ko(r)}`],svg:[`svg`],track:[`track`],circle:[`circle`,i&&`circleDisableShrink`]},Mc,t)},zc=K(`span`,{name:`MuiCircularProgress`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[n.variant],t[`color${Ko(n.color)}`]]}})(Xo(({theme:e})=>({display:`inline-block`,variants:[{props:{variant:`determinate`},style:{transition:e.transitions.create(`transform`)}},{props:{variant:`indeterminate`},style:Ic||{animation:`${Pc} 1.4s linear infinite`}},...Object.entries(e.palette).filter(kc()).map(([t])=>({props:{color:t},style:{color:(e.vars||e).palette[t].main}}))]}))),Bc=K(`svg`,{name:`MuiCircularProgress`,slot:`Svg`})({display:`block`}),Vc=K(`circle`,{name:`MuiCircularProgress`,slot:`Circle`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.circle,n.disableShrink&&t.circleDisableShrink]}})(Xo(({theme:e})=>({stroke:`currentColor`,variants:[{props:{variant:`determinate`},style:{transition:e.transitions.create(`stroke-dashoffset`)}},{props:{variant:`indeterminate`},style:{strokeDasharray:`80px, 200px`,strokeDashoffset:0}},{props:({ownerState:e})=>e.variant===`indeterminate`&&!e.disableShrink,style:Lc||{animation:`${Fc} 1.4s ease-in-out infinite`}}]}))),Hc=K(`circle`,{name:`MuiCircularProgress`,slot:`Track`})(Xo(({theme:e})=>({stroke:`currentColor`,opacity:(e.vars||e).palette.action.activatedOpacity}))),Uc=z.forwardRef(function(e,t){let n=Zo({props:e,name:`MuiCircularProgress`}),{className:r,color:i=`primary`,disableShrink:a=!1,enableTrackSlot:o=!1,min:s,max:c,size:l=40,style:u,thickness:d=3.6,value:f=n.min??0,variant:p=`indeterminate`,...m}=n,h=s??0,g=c??100,_={...n,color:i,disableShrink:a,size:l,thickness:d,value:f,variant:p,enableTrackSlot:o},v=Rc(_),y={},b={},x={};if(p===`determinate`){let e=2*Math.PI*((Nc-d)/2),t=g-h;y.strokeDasharray=e.toFixed(3),y.strokeDashoffset=t>0?`${((g-f)/t*e).toFixed(3)}px`:`${e.toFixed(3)}px`,b.transform=`rotate(-90deg)`,x[`aria-valuenow`]=f,x[`aria-valuemin`]=h,x[`aria-valuemax`]=g}return(0,B.jsx)(zc,{className:V(v.root,r),style:{width:l,height:l,...b,...u},ownerState:_,ref:t,role:`progressbar`,...x,...m,children:(0,B.jsxs)(Bc,{className:v.svg,ownerState:_,viewBox:`${Nc/2} ${Nc/2} ${Nc} ${Nc}`,children:[o?(0,B.jsx)(Hc,{className:v.track,ownerState:_,cx:Nc,cy:Nc,r:(Nc-d)/2,fill:`none`,strokeWidth:d,"aria-hidden":`true`}):null,(0,B.jsx)(Vc,{className:v.circle,style:y,ownerState:_,cx:Nc,cy:Nc,r:(Nc-d)/2,fill:`none`,strokeWidth:d})]})})});function Wc(e){return ii(`MuiIconButton`,e)}var Gc=H(`MuiIconButton`,[`root`,`disabled`,`colorInherit`,`colorPrimary`,`colorSecondary`,`colorError`,`colorInfo`,`colorSuccess`,`colorWarning`,`edgeStart`,`edgeEnd`,`sizeSmall`,`sizeMedium`,`sizeLarge`,`loading`,`loadingIndicator`,`loadingWrapper`]),Kc=e=>{let{classes:t,disabled:n,color:r,edge:i,size:a,loading:o}=e;return Ea({root:[`root`,o&&`loading`,n&&`disabled`,r!==`default`&&`color${Ko(r)}`,i&&`edge${Ko(i)}`,`size${Ko(a)}`],loadingIndicator:[`loadingIndicator`],loadingWrapper:[`loadingWrapper`]},Wc,t)},qc=K(Tc,{name:`MuiIconButton`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,n.loading&&t.loading,n.color!==`default`&&t[`color${Ko(n.color)}`],n.edge&&t[`edge${Ko(n.edge)}`],t[`size${Ko(n.size)}`]]}})(Xo(({theme:e})=>({textAlign:`center`,flex:`0 0 auto`,fontSize:e.typography.pxToRem(24),padding:8,borderRadius:`50%`,color:(e.vars||e).palette.action.active,transition:e.transitions.create(`background-color`,{duration:e.transitions.duration.shortest}),variants:[{props:e=>!e.disableRipple,style:{"--IconButton-hoverBg":e.alpha((e.vars||e).palette.action.active,(e.vars||e).palette.action.hoverOpacity),"&:hover":{backgroundColor:`var(--IconButton-hoverBg)`,"@media (hover: none)":{backgroundColor:`transparent`}}}},{props:{edge:`start`},style:{marginLeft:-12}},{props:{edge:`start`,size:`small`},style:{marginLeft:-3}},{props:{edge:`end`},style:{marginRight:-12}},{props:{edge:`end`,size:`small`},style:{marginRight:-3}}]})),Xo(({theme:e})=>({variants:[{props:{color:`inherit`},style:{color:`inherit`}},...Object.entries(e.palette).filter(kc()).map(([t])=>({props:{color:t},style:{color:(e.vars||e).palette[t].main,"--IconButton-hoverBg":e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.hoverOpacity)}})),{props:{size:`small`},style:{padding:5,fontSize:e.typography.pxToRem(18)}},{props:{size:`large`},style:{padding:12,fontSize:e.typography.pxToRem(28)}}],[`&.${Gc.disabled}`]:{backgroundColor:`transparent`,color:(e.vars||e).palette.action.disabled},[`&.${Gc.loading}`]:{color:`transparent`}}))),Jc=K(`span`,{name:`MuiIconButton`,slot:`LoadingIndicator`})(({theme:e})=>({display:`none`,position:`absolute`,visibility:`visible`,top:`50%`,left:`50%`,transform:`translate(-50%, -50%)`,color:(e.vars||e).palette.action.disabled,variants:[{props:{loading:!0},style:{display:`flex`}}]})),Yc=z.forwardRef(function(e,t){let n=Zo({props:e,name:`MuiIconButton`}),{edge:r=!1,children:i,className:a,color:o=`default`,disabled:s=!1,disableFocusRipple:c=!1,size:l=`medium`,id:u,loading:d=null,loadingIndicator:f,...p}=n,m=cs(u),h=f??(0,B.jsx)(Uc,{"aria-labelledby":m,color:`inherit`,size:16}),g={...n,edge:r,color:o,disabled:s,disableFocusRipple:c,loading:d,loadingIndicator:h,size:l},_=Kc(g);return(0,B.jsxs)(qc,{id:d?m:u,className:V(_.root,a),centerRipple:!0,internalNativeButton:!0,focusRipple:!c,disabled:s||d,ref:t,...p,ownerState:g,children:[typeof d==`boolean`&&(0,B.jsx)(`span`,{className:_.loadingWrapper,style:{display:`contents`},children:(0,B.jsx)(Jc,{className:_.loadingIndicator,ownerState:g,children:d&&h})}),i]})}),Xc=ns((0,B.jsx)(`path`,{d:`M20,12A8,8 0 0,1 12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4C12.76,4 13.5,4.11 14.2, 4.31L15.77,2.74C14.61,2.26 13.34,2 12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0, 0 22,12M7.91,10.08L6.5,11.5L11,16L21,6L19.59,4.58L11,13.17L7.91,10.08Z`}),`SuccessOutlined`),Zc=ns((0,B.jsx)(`path`,{d:`M12 5.99L19.53 19H4.47L12 5.99M12 2L1 21h22L12 2zm1 14h-2v2h2v-2zm0-6h-2v4h2v-4z`}),`ReportProblemOutlined`),Qc=ns((0,B.jsx)(`path`,{d:`M11 15h2v2h-2zm0-8h2v6h-2zm.99-5C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z`}),`ErrorOutline`),$c=ns((0,B.jsx)(`path`,{d:`M11,9H13V7H11M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20, 12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10, 10 0 0,0 12,2M11,17H13V11H11V17Z`}),`InfoOutlined`),el=ns((0,B.jsx)(`path`,{d:`M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z`}),`Close`),tl=e=>{let{variant:t,color:n,severity:r,classes:i}=e;return Ea({root:[`root`,`color${Ko(n||r)}`,`${t}`],icon:[`icon`],message:[`message`],action:[`action`]},Ac,i)},nl=K(ic,{name:`MuiAlert`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[n.variant]]}})(Xo(({theme:e})=>{let t=e.palette.mode===`light`?e.darken:e.lighten,n=e.palette.mode===`light`?e.lighten:e.darken;return{...e.typography.body2,backgroundColor:`transparent`,display:`flex`,padding:`6px 16px`,variants:[...Object.entries(e.palette).filter(kc([`light`])).map(([r])=>({props:{colorSeverity:r,variant:`standard`},style:{color:e.vars?e.vars.palette.Alert[`${r}Color`]:t(e.palette[r].light,.6),backgroundColor:e.vars?e.vars.palette.Alert[`${r}StandardBg`]:n(e.palette[r].light,.9),[`& .${jc.icon}`]:e.vars?{color:e.vars.palette.Alert[`${r}IconColor`]}:{color:e.palette[r].main}}})),...Object.entries(e.palette).filter(kc([`light`])).map(([n])=>({props:{colorSeverity:n,variant:`outlined`},style:{color:e.vars?e.vars.palette.Alert[`${n}Color`]:t(e.palette[n].light,.6),border:`1px solid ${(e.vars||e).palette[n].light}`,[`& .${jc.icon}`]:e.vars?{color:e.vars.palette.Alert[`${n}IconColor`]}:{color:e.palette[n].main}}})),...Object.entries(e.palette).filter(kc([`dark`])).map(([t])=>({props:{colorSeverity:t,variant:`filled`},style:{fontWeight:e.typography.fontWeightMedium,...e.vars?{color:e.vars.palette.Alert[`${t}FilledColor`],backgroundColor:e.vars.palette.Alert[`${t}FilledBg`]}:{backgroundColor:e.palette.mode===`dark`?e.palette[t].dark:e.palette[t].main,color:e.palette.getContrastText(e.palette[t].main)}}}))]}})),rl=K(`div`,{name:`MuiAlert`,slot:`Icon`})({marginRight:12,padding:`7px 0`,display:`flex`,fontSize:22,opacity:.9}),il=K(`div`,{name:`MuiAlert`,slot:`Message`})({padding:`8px 0`,minWidth:0,overflow:`auto`}),al=K(`div`,{name:`MuiAlert`,slot:`Action`})({display:`flex`,alignItems:`flex-start`,padding:`4px 0 0 16px`,marginLeft:`auto`,marginRight:-8}),ol={success:(0,B.jsx)(Xc,{fontSize:`inherit`}),warning:(0,B.jsx)(Zc,{fontSize:`inherit`}),error:(0,B.jsx)(Qc,{fontSize:`inherit`}),info:(0,B.jsx)($c,{fontSize:`inherit`})},sl=z.forwardRef(function(e,t){let n=Zo({props:e,name:`MuiAlert`}),{action:r,children:i,className:a,closeText:o=`Close`,color:s,icon:c,iconMapping:l=ol,onClose:u,role:d=`alert`,severity:f=`success`,slotProps:p={},slots:m={},variant:h=`standard`,...g}=n,_={...n,color:s,severity:f,variant:h,colorSeverity:s||f},v=tl(_),y={slots:m,slotProps:p},[b,x]=q(`root`,{ref:t,shouldForwardComponentProp:!0,className:V(v.root,a),elementType:nl,externalForwardedProps:{...y,...g},ownerState:_,additionalProps:{role:d,elevation:0}}),[S,C]=q(`icon`,{className:v.icon,elementType:rl,externalForwardedProps:y,ownerState:_}),[w,T]=q(`message`,{className:v.message,elementType:il,externalForwardedProps:y,ownerState:_}),[E,D]=q(`action`,{className:v.action,elementType:al,externalForwardedProps:y,ownerState:_}),[O,ee]=q(`closeButton`,{elementType:Yc,externalForwardedProps:y,ownerState:_}),[te,k]=q(`closeIcon`,{elementType:el,externalForwardedProps:y,ownerState:_});return(0,B.jsxs)(b,{...x,children:[c===!1?null:(0,B.jsx)(S,{...C,children:c||l[f]||ol[f]}),(0,B.jsx)(w,{...T,children:i}),r==null?null:(0,B.jsx)(E,{...D,children:r}),r==null&&u?(0,B.jsx)(E,{...D,children:(0,B.jsx)(O,{size:`small`,"aria-label":o,title:o,color:`inherit`,onClick:u,...ee,children:(0,B.jsx)(te,{fontSize:`small`,...k})})}):null]})});function cl(e){return ii(`MuiTypography`,e)}H(`MuiTypography`,[`root`,`h1`,`h2`,`h3`,`h4`,`h5`,`h6`,`subtitle1`,`subtitle2`,`body1`,`body2`,`inherit`,`button`,`caption`,`overline`,`alignLeft`,`alignRight`,`alignCenter`,`alignJustify`,`noWrap`,`gutterBottom`]);var ll=e=>{let{align:t,gutterBottom:n,noWrap:r,variant:i,classes:a}=e;return Ea({root:[`root`,i,e.align!==`inherit`&&`align${Ko(t)}`,n&&`gutterBottom`,r&&`noWrap`]},cl,a)},ul=K(`span`,{name:`MuiTypography`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,n.variant&&t[n.variant],n.align!==`inherit`&&t[`align${Ko(n.align)}`],n.noWrap&&t.noWrap,n.gutterBottom&&t.gutterBottom]}})(Xo(({theme:e})=>({margin:0,variants:[{props:{variant:`inherit`},style:{font:`inherit`,lineHeight:`inherit`,letterSpacing:`inherit`}},...Object.entries(e.typography).filter(([e,t])=>e!==`inherit`&&t&&typeof t==`object`).map(([e,t])=>({props:{variant:e},style:t})),...Object.entries(e.palette).filter(kc()).map(([t])=>({props:{color:t},style:{color:(e.vars||e).palette[t].main}})),...Object.entries(e.palette?.text||{}).filter(([,e])=>typeof e==`string`).map(([t])=>({props:{color:`text${Ko(t)}`},style:{color:(e.vars||e).palette.text[t]}})),{props:({ownerState:e})=>e.align!==`inherit`,style:{textAlign:`var(--Typography-textAlign)`}},{props:({ownerState:e})=>e.noWrap,style:{overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`}},{props:({ownerState:e})=>e.gutterBottom,style:{marginBottom:`0.35em`}}]}))),dl={h1:`h1`,h2:`h2`,h3:`h3`,h4:`h4`,h5:`h5`,h6:`h6`,subtitle1:`h6`,subtitle2:`h6`,body1:`p`,body2:`p`,inherit:`p`},fl=z.forwardRef(function(e,t){let n=Zo({props:e,name:`MuiTypography`}),{color:r,align:i=`inherit`,className:a,component:o,gutterBottom:s=!1,noWrap:c=!1,variant:l=`body1`,variantMapping:u=dl,...d}=n,f={...n,align:i,color:r,className:a,component:o,gutterBottom:s,noWrap:c,variant:l,variantMapping:u};return(0,B.jsx)(ul,{as:o||u[l]||dl[l]||`span`,ref:t,className:V(ll(f).root,a),...d,ownerState:f,style:{...i!==`inherit`&&{"--Typography-textAlign":i},...d.style}})});function pl(e,t){if(!e||!t)return!1;if(e.contains(t))return!0;let n=t.getRootNode?.();if(n&&n instanceof ShadowRoot){let n=t;for(;n;){if(e===n)return!0;n=n.parentNode??n.host??null}}return!1}var ml=`bottom`,hl=`right`,gl=`left`,_l=`auto`,vl=[`top`,ml,hl,gl],yl=`start`,bl=`clippingParents`,xl=`viewport`,Sl=`popper`,Cl=`reference`,wl=vl.reduce(function(e,t){return e.concat([t+`-`+yl,t+`-end`])},[]),Tl=[].concat(vl,[_l]).reduce(function(e,t){return e.concat([t,t+`-`+yl,t+`-end`])},[]),El=[`beforeRead`,`read`,`afterRead`,`beforeMain`,`main`,`afterMain`,`beforeWrite`,`write`,`afterWrite`];function Dl(e){return e?(e.nodeName||``).toLowerCase():null}function Ol(e){if(e==null)return window;if(e.toString()!==`[object Window]`){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function kl(e){return e instanceof Ol(e).Element||e instanceof Element}function Al(e){return e instanceof Ol(e).HTMLElement||e instanceof HTMLElement}function jl(e){return typeof ShadowRoot>`u`?!1:e instanceof Ol(e).ShadowRoot||e instanceof ShadowRoot}function Ml(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var n=t.styles[e]||{},r=t.attributes[e]||{},i=t.elements[e];!Al(i)||!Dl(i)||(Object.assign(i.style,n),Object.keys(r).forEach(function(e){var t=r[e];t===!1?i.removeAttribute(e):i.setAttribute(e,t===!0?``:t)}))})}function Nl(e){var t=e.state,n={popper:{position:t.options.strategy,left:`0`,top:`0`,margin:`0`},arrow:{position:`absolute`},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(e){var r=t.elements[e],i=t.attributes[e]||{},a=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]).reduce(function(e,t){return e[t]=``,e},{});!Al(r)||!Dl(r)||(Object.assign(r.style,a),Object.keys(i).forEach(function(e){r.removeAttribute(e)}))})}}var Pl={name:`applyStyles`,enabled:!0,phase:`write`,fn:Ml,effect:Nl,requires:[`computeStyles`]};function Fl(e){return e.split(`-`)[0]}var Il=Math.max,J=Math.min,Y=Math.round;function X(){var e=navigator.userAgentData;return e!=null&&e.brands&&Array.isArray(e.brands)?e.brands.map(function(e){return e.brand+`/`+e.version}).join(` `):navigator.userAgent}function Z(){return!/^((?!chrome|android).)*safari/i.test(X())}function Q(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!1);var r=e.getBoundingClientRect(),i=1,a=1;t&&Al(e)&&(i=e.offsetWidth>0&&Y(r.width)/e.offsetWidth||1,a=e.offsetHeight>0&&Y(r.height)/e.offsetHeight||1);var o=(kl(e)?Ol(e):window).visualViewport,s=!Z()&&n,c=(r.left+(s&&o?o.offsetLeft:0))/i,l=(r.top+(s&&o?o.offsetTop:0))/a,u=r.width/i,d=r.height/a;return{width:u,height:d,top:l,right:c+u,bottom:l+d,left:c,x:c,y:l}}function Ll(e){var t=Q(e),n=e.offsetWidth,r=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-r)<=1&&(r=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:r}}function Rl(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&jl(n)){var r=t;do{if(r&&e.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function zl(e){return Ol(e).getComputedStyle(e)}function Bl(e){return[`table`,`td`,`th`].indexOf(Dl(e))>=0}function Vl(e){return((kl(e)?e.ownerDocument:e.document)||window.document).documentElement}function Hl(e){return Dl(e)===`html`?e:e.assignedSlot||e.parentNode||(jl(e)?e.host:null)||Vl(e)}function Ul(e){return!Al(e)||zl(e).position===`fixed`?null:e.offsetParent}function Wl(e){var t=/firefox/i.test(X());if(/Trident/i.test(X())&&Al(e)&&zl(e).position===`fixed`)return null;var n=Hl(e);for(jl(n)&&(n=n.host);Al(n)&&[`html`,`body`].indexOf(Dl(n))<0;){var r=zl(n);if(r.transform!==`none`||r.perspective!==`none`||r.contain===`paint`||[`transform`,`perspective`].indexOf(r.willChange)!==-1||t&&r.willChange===`filter`||t&&r.filter&&r.filter!==`none`)return n;n=n.parentNode}return null}function Gl(e){for(var t=Ol(e),n=Ul(e);n&&Bl(n)&&zl(n).position===`static`;)n=Ul(n);return n&&(Dl(n)===`html`||Dl(n)===`body`&&zl(n).position===`static`)?t:n||Wl(e)||t}function Kl(e){return[`top`,`bottom`].indexOf(e)>=0?`x`:`y`}function ql(e,t,n){return Il(e,J(t,n))}function Jl(e,t,n){var r=ql(e,t,n);return r>n?n:r}function Yl(){return{top:0,right:0,bottom:0,left:0}}function Xl(e){return Object.assign({},Yl(),e)}function Zl(e,t){return t.reduce(function(t,n){return t[n]=e,t},{})}var Ql=function(e,t){return e=typeof e==`function`?e(Object.assign({},t.rects,{placement:t.placement})):e,Xl(typeof e==`number`?Zl(e,vl):e)};function $l(e){var t,n=e.state,r=e.name,i=e.options,a=n.elements.arrow,o=n.modifiersData.popperOffsets,s=Fl(n.placement),c=Kl(s),l=[`left`,`right`].indexOf(s)>=0?`height`:`width`;if(!(!a||!o)){var u=Ql(i.padding,n),d=Ll(a),f=c===`y`?`top`:gl,p=c===`y`?ml:hl,m=n.rects.reference[l]+n.rects.reference[c]-o[c]-n.rects.popper[l],h=o[c]-n.rects.reference[c],g=Gl(a),_=g?c===`y`?g.clientHeight||0:g.clientWidth||0:0,v=m/2-h/2,y=u[f],b=_-d[l]-u[p],x=_/2-d[l]/2+v,S=ql(y,x,b),C=c;n.modifiersData[r]=(t={},t[C]=S,t.centerOffset=S-x,t)}}function eu(e){var t=e.state,n=e.options.element,r=n===void 0?`[data-popper-arrow]`:n;r!=null&&(typeof r==`string`&&(r=t.elements.popper.querySelector(r),!r)||Rl(t.elements.popper,r)&&(t.elements.arrow=r))}var tu={name:`arrow`,enabled:!0,phase:`main`,fn:$l,effect:eu,requires:[`popperOffsets`],requiresIfExists:[`preventOverflow`]};function nu(e){return e.split(`-`)[1]}var ru={top:`auto`,right:`auto`,bottom:`auto`,left:`auto`};function iu(e,t){var n=e.x,r=e.y,i=t.devicePixelRatio||1;return{x:Y(n*i)/i||0,y:Y(r*i)/i||0}}function au(e){var t,n=e.popper,r=e.popperRect,i=e.placement,a=e.variation,o=e.offsets,s=e.position,c=e.gpuAcceleration,l=e.adaptive,u=e.roundOffsets,d=e.isFixed,f=o.x,p=f===void 0?0:f,m=o.y,h=m===void 0?0:m,g=typeof u==`function`?u({x:p,y:h}):{x:p,y:h};p=g.x,h=g.y;var _=o.hasOwnProperty(`x`),v=o.hasOwnProperty(`y`),y=gl,b=`top`,x=window;if(l){var S=Gl(n),C=`clientHeight`,w=`clientWidth`;if(S===Ol(n)&&(S=Vl(n),zl(S).position!==`static`&&s===`absolute`&&(C=`scrollHeight`,w=`scrollWidth`)),S=S,i===`top`||(i===`left`||i===`right`)&&a===`end`){b=ml;var T=d&&S===x&&x.visualViewport?x.visualViewport.height:S[C];h-=T-r.height,h*=c?1:-1}if(i===`left`||(i===`top`||i===`bottom`)&&a===`end`){y=hl;var E=d&&S===x&&x.visualViewport?x.visualViewport.width:S[w];p-=E-r.width,p*=c?1:-1}}var D=Object.assign({position:s},l&&ru),O=u===!0?iu({x:p,y:h},Ol(n)):{x:p,y:h};if(p=O.x,h=O.y,c){var ee;return Object.assign({},D,(ee={},ee[b]=v?`0`:``,ee[y]=_?`0`:``,ee.transform=(x.devicePixelRatio||1)<=1?`translate(`+p+`px, `+h+`px)`:`translate3d(`+p+`px, `+h+`px, 0)`,ee))}return Object.assign({},D,(t={},t[b]=v?h+`px`:``,t[y]=_?p+`px`:``,t.transform=``,t))}function ou(e){var t=e.state,n=e.options,r=n.gpuAcceleration,i=r===void 0?!0:r,a=n.adaptive,o=a===void 0?!0:a,s=n.roundOffsets,c=s===void 0?!0:s,l={placement:Fl(t.placement),variation:nu(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:i,isFixed:t.options.strategy===`fixed`};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,au(Object.assign({},l,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:o,roundOffsets:c})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,au(Object.assign({},l,{offsets:t.modifiersData.arrow,position:`absolute`,adaptive:!1,roundOffsets:c})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}var su={name:`computeStyles`,enabled:!0,phase:`beforeWrite`,fn:ou,data:{}},cu={passive:!0};function lu(e){var t=e.state,n=e.instance,r=e.options,i=r.scroll,a=i===void 0?!0:i,o=r.resize,s=o===void 0?!0:o,c=Ol(t.elements.popper),l=[].concat(t.scrollParents.reference,t.scrollParents.popper);return a&&l.forEach(function(e){e.addEventListener(`scroll`,n.update,cu)}),s&&c.addEventListener(`resize`,n.update,cu),function(){a&&l.forEach(function(e){e.removeEventListener(`scroll`,n.update,cu)}),s&&c.removeEventListener(`resize`,n.update,cu)}}var uu={name:`eventListeners`,enabled:!0,phase:`write`,fn:function(){},effect:lu,data:{}},du={left:`right`,right:`left`,bottom:`top`,top:`bottom`};function fu(e){return e.replace(/left|right|bottom|top/g,function(e){return du[e]})}var pu={start:`end`,end:`start`};function mu(e){return e.replace(/start|end/g,function(e){return pu[e]})}function hu(e){var t=Ol(e);return{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function gu(e){return Q(Vl(e)).left+hu(e).scrollLeft}function _u(e,t){var n=Ol(e),r=Vl(e),i=n.visualViewport,a=r.clientWidth,o=r.clientHeight,s=0,c=0;if(i){a=i.width,o=i.height;var l=Z();(l||!l&&t===`fixed`)&&(s=i.offsetLeft,c=i.offsetTop)}return{width:a,height:o,x:s+gu(e),y:c}}function vu(e){var t=Vl(e),n=hu(e),r=e.ownerDocument?.body,i=Il(t.scrollWidth,t.clientWidth,r?r.scrollWidth:0,r?r.clientWidth:0),a=Il(t.scrollHeight,t.clientHeight,r?r.scrollHeight:0,r?r.clientHeight:0),o=-n.scrollLeft+gu(e),s=-n.scrollTop;return zl(r||t).direction===`rtl`&&(o+=Il(t.clientWidth,r?r.clientWidth:0)-i),{width:i,height:a,x:o,y:s}}function yu(e){var t=zl(e),n=t.overflow,r=t.overflowX,i=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+i+r)}function bu(e){return[`html`,`body`,`#document`].indexOf(Dl(e))>=0?e.ownerDocument.body:Al(e)&&yu(e)?e:bu(Hl(e))}function xu(e,t){t===void 0&&(t=[]);var n=bu(e),r=n===e.ownerDocument?.body,i=Ol(n),a=r?[i].concat(i.visualViewport||[],yu(n)?n:[]):n,o=t.concat(a);return r?o:o.concat(xu(Hl(a)))}function Su(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function Cu(e,t){var n=Q(e,!1,t===`fixed`);return n.top+=e.clientTop,n.left+=e.clientLeft,n.bottom=n.top+e.clientHeight,n.right=n.left+e.clientWidth,n.width=e.clientWidth,n.height=e.clientHeight,n.x=n.left,n.y=n.top,n}function wu(e,t,n){return t===`viewport`?Su(_u(e,n)):kl(t)?Cu(t,n):Su(vu(Vl(e)))}function Tu(e){var t=xu(Hl(e)),n=[`absolute`,`fixed`].indexOf(zl(e).position)>=0&&Al(e)?Gl(e):e;return kl(n)?t.filter(function(e){return kl(e)&&Rl(e,n)&&Dl(e)!==`body`}):[]}function Eu(e,t,n,r){var i=t===`clippingParents`?Tu(e):[].concat(t),a=[].concat(i,[n]),o=a[0],s=a.reduce(function(t,n){var i=wu(e,n,r);return t.top=Il(i.top,t.top),t.right=J(i.right,t.right),t.bottom=J(i.bottom,t.bottom),t.left=Il(i.left,t.left),t},wu(e,o,r));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}function Du(e){var t=e.reference,n=e.element,r=e.placement,i=r?Fl(r):null,a=r?nu(r):null,o=t.x+t.width/2-n.width/2,s=t.y+t.height/2-n.height/2,c;switch(i){case`top`:c={x:o,y:t.y-n.height};break;case ml:c={x:o,y:t.y+t.height};break;case hl:c={x:t.x+t.width,y:s};break;case gl:c={x:t.x-n.width,y:s};break;default:c={x:t.x,y:t.y}}var l=i?Kl(i):null;if(l!=null){var u=l===`y`?`height`:`width`;switch(a){case yl:c[l]=c[l]-(t[u]/2-n[u]/2);break;case`end`:c[l]=c[l]+(t[u]/2-n[u]/2);break;default:}}return c}function Ou(e,t){t===void 0&&(t={});var n=t,r=n.placement,i=r===void 0?e.placement:r,a=n.strategy,o=a===void 0?e.strategy:a,s=n.boundary,c=s===void 0?bl:s,l=n.rootBoundary,u=l===void 0?xl:l,d=n.elementContext,f=d===void 0?Sl:d,p=n.altBoundary,m=p===void 0?!1:p,h=n.padding,g=h===void 0?0:h,_=Xl(typeof g==`number`?Zl(g,vl):g),v=f===`popper`?Cl:Sl,y=e.rects.popper,b=e.elements[m?v:f],x=Eu(kl(b)?b:b.contextElement||Vl(e.elements.popper),c,u,o),S=Q(e.elements.reference),C=Du({reference:S,element:y,strategy:`absolute`,placement:i}),w=Su(Object.assign({},y,C)),T=f===`popper`?w:S,E={top:x.top-T.top+_.top,bottom:T.bottom-x.bottom+_.bottom,left:x.left-T.left+_.left,right:T.right-x.right+_.right},D=e.modifiersData.offset;if(f===`popper`&&D){var O=D[i];Object.keys(E).forEach(function(e){var t=[`right`,`bottom`].indexOf(e)>=0?1:-1,n=[`top`,`bottom`].indexOf(e)>=0?`y`:`x`;E[e]+=O[n]*t})}return E}function ku(e,t){t===void 0&&(t={});var n=t,r=n.placement,i=n.boundary,a=n.rootBoundary,o=n.padding,s=n.flipVariations,c=n.allowedAutoPlacements,l=c===void 0?Tl:c,u=nu(r),d=u?s?wl:wl.filter(function(e){return nu(e)===u}):vl,f=d.filter(function(e){return l.indexOf(e)>=0});f.length===0&&(f=d);var p=f.reduce(function(t,n){return t[n]=Ou(e,{placement:n,boundary:i,rootBoundary:a,padding:o})[Fl(n)],t},{});return Object.keys(p).sort(function(e,t){return p[e]-p[t]})}function Au(e){if(Fl(e)===`auto`)return[];var t=fu(e);return[mu(e),t,mu(t)]}function ju(e){var t=e.state,n=e.options,r=e.name;if(!t.modifiersData[r]._skip){for(var i=n.mainAxis,a=i===void 0?!0:i,o=n.altAxis,s=o===void 0?!0:o,c=n.fallbackPlacements,l=n.padding,u=n.boundary,d=n.rootBoundary,f=n.altBoundary,p=n.flipVariations,m=p===void 0?!0:p,h=n.allowedAutoPlacements,g=t.options.placement,_=Fl(g)===g,v=c||(_||!m?[fu(g)]:Au(g)),y=[g].concat(v).reduce(function(e,n){return e.concat(Fl(n)===`auto`?ku(t,{placement:n,boundary:u,rootBoundary:d,padding:l,flipVariations:m,allowedAutoPlacements:h}):n)},[]),b=t.rects.reference,x=t.rects.popper,S=new Map,C=!0,w=y[0],T=0;T<y.length;T++){var E=y[T],D=Fl(E),O=nu(E)===yl,ee=[`top`,ml].indexOf(D)>=0,te=ee?`width`:`height`,k=Ou(t,{placement:E,boundary:u,rootBoundary:d,altBoundary:f,padding:l}),A=ee?O?hl:gl:O?ml:`top`;b[te]>x[te]&&(A=fu(A));var ne=fu(A),j=[];if(a&&j.push(k[D]<=0),s&&j.push(k[A]<=0,k[ne]<=0),j.every(function(e){return e})){w=E,C=!1;break}S.set(E,j)}if(C)for(var re=m?3:1,M=function(e){var t=y.find(function(t){var n=S.get(t);if(n)return n.slice(0,e).every(function(e){return e})});if(t)return w=t,`break`},N=re;N>0&&M(N)!==`break`;N--);t.placement!==w&&(t.modifiersData[r]._skip=!0,t.placement=w,t.reset=!0)}}var Mu={name:`flip`,enabled:!0,phase:`main`,fn:ju,requiresIfExists:[`offset`],data:{_skip:!1}};function Nu(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function Pu(e){return[`top`,hl,ml,gl].some(function(t){return e[t]>=0})}function Fu(e){var t=e.state,n=e.name,r=t.rects.reference,i=t.rects.popper,a=t.modifiersData.preventOverflow,o=Ou(t,{elementContext:`reference`}),s=Ou(t,{altBoundary:!0}),c=Nu(o,r),l=Nu(s,i,a),u=Pu(c),d=Pu(l);t.modifiersData[n]={referenceClippingOffsets:c,popperEscapeOffsets:l,isReferenceHidden:u,hasPopperEscaped:d},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":u,"data-popper-escaped":d})}var Iu={name:`hide`,enabled:!0,phase:`main`,requiresIfExists:[`preventOverflow`],fn:Fu};function Lu(e,t,n){var r=Fl(e),i=[`left`,`top`].indexOf(r)>=0?-1:1,a=typeof n==`function`?n(Object.assign({},t,{placement:e})):n,o=a[0],s=a[1];return o||=0,s=(s||0)*i,[`left`,`right`].indexOf(r)>=0?{x:s,y:o}:{x:o,y:s}}function Ru(e){var t=e.state,n=e.options,r=e.name,i=n.offset,a=i===void 0?[0,0]:i,o=Tl.reduce(function(e,n){return e[n]=Lu(n,t.rects,a),e},{}),s=o[t.placement],c=s.x,l=s.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=l),t.modifiersData[r]=o}var zu={name:`offset`,enabled:!0,phase:`main`,requires:[`popperOffsets`],fn:Ru};function Bu(e){var t=e.state,n=e.name;t.modifiersData[n]=Du({reference:t.rects.reference,element:t.rects.popper,strategy:`absolute`,placement:t.placement})}var Vu={name:`popperOffsets`,enabled:!0,phase:`read`,fn:Bu,data:{}};function Hu(e){return e===`x`?`y`:`x`}function Uu(e){var t=e.state,n=e.options,r=e.name,i=n.mainAxis,a=i===void 0?!0:i,o=n.altAxis,s=o===void 0?!1:o,c=n.boundary,l=n.rootBoundary,u=n.altBoundary,d=n.padding,f=n.tether,p=f===void 0?!0:f,m=n.tetherOffset,h=m===void 0?0:m,g=Ou(t,{boundary:c,rootBoundary:l,padding:d,altBoundary:u}),_=Fl(t.placement),v=nu(t.placement),y=!v,b=Kl(_),x=Hu(b),S=t.modifiersData.popperOffsets,C=t.rects.reference,w=t.rects.popper,T=typeof h==`function`?h(Object.assign({},t.rects,{placement:t.placement})):h,E=typeof T==`number`?{mainAxis:T,altAxis:T}:Object.assign({mainAxis:0,altAxis:0},T),D=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,O={x:0,y:0};if(S){if(a){var ee=b===`y`?`top`:gl,te=b===`y`?ml:hl,k=b===`y`?`height`:`width`,A=S[b],ne=A+g[ee],j=A-g[te],re=p?-w[k]/2:0,M=v===`start`?C[k]:w[k],N=v===`start`?-w[k]:-C[k],ie=t.elements.arrow,ae=p&&ie?Ll(ie):{width:0,height:0},oe=t.modifiersData[`arrow#persistent`]?t.modifiersData[`arrow#persistent`].padding:Yl(),se=oe[ee],P=oe[te],F=ql(0,C[k],ae[k]),ce=y?C[k]/2-re-F-se-E.mainAxis:M-F-se-E.mainAxis,le=y?-C[k]/2+re+F+P+E.mainAxis:N+F+P+E.mainAxis,ue=t.elements.arrow&&Gl(t.elements.arrow),I=ue?b===`y`?ue.clientTop||0:ue.clientLeft||0:0,de=D?.[b]??0,L=A+ce-de-I,fe=A+le-de,pe=ql(p?J(ne,L):ne,A,p?Il(j,fe):j);S[b]=pe,O[b]=pe-A}if(s){var me=b===`x`?`top`:gl,he=b===`x`?ml:hl,ge=S[x],_e=x===`y`?`height`:`width`,ve=ge+g[me],ye=ge-g[he],be=[`top`,gl].indexOf(_)!==-1,R=D?.[x]??0,xe=be?ve:ge-C[_e]-w[_e]-R+E.altAxis,Se=be?ge+C[_e]+w[_e]-R-E.altAxis:ye,Ce=p&&be?Jl(xe,ge,Se):ql(p?xe:ve,ge,p?Se:ye);S[x]=Ce,O[x]=Ce-ge}t.modifiersData[r]=O}}var Wu={name:`preventOverflow`,enabled:!0,phase:`main`,fn:Uu,requiresIfExists:[`offset`]};function Gu(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}function Ku(e){return e===Ol(e)||!Al(e)?hu(e):Gu(e)}function qu(e){var t=e.getBoundingClientRect(),n=Y(t.width)/e.offsetWidth||1,r=Y(t.height)/e.offsetHeight||1;return n!==1||r!==1}function Ju(e,t,n){n===void 0&&(n=!1);var r=Al(t),i=Al(t)&&qu(t),a=Vl(t),o=Q(e,i,n),s={scrollLeft:0,scrollTop:0},c={x:0,y:0};return(r||!r&&!n)&&((Dl(t)!==`body`||yu(a))&&(s=Ku(t)),Al(t)?(c=Q(t,!0),c.x+=t.clientLeft,c.y+=t.clientTop):a&&(c.x=gu(a))),{x:o.left+s.scrollLeft-c.x,y:o.top+s.scrollTop-c.y,width:o.width,height:o.height}}function Yu(e){var t=new Map,n=new Set,r=[];e.forEach(function(e){t.set(e.name,e)});function i(e){n.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach(function(e){if(!n.has(e)){var r=t.get(e);r&&i(r)}}),r.push(e)}return e.forEach(function(e){n.has(e.name)||i(e)}),r}function Xu(e){var t=Yu(e);return El.reduce(function(e,n){return e.concat(t.filter(function(e){return e.phase===n}))},[])}function Zu(e){var t;return function(){return t||=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})}),t}}function Qu(e){var t=e.reduce(function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e},{});return Object.keys(t).map(function(e){return t[e]})}var $u={placement:`bottom`,modifiers:[],strategy:`absolute`};function ed(){return![...arguments].some(function(e){return!(e&&typeof e.getBoundingClientRect==`function`)})}function td(e){e===void 0&&(e={});var t=e,n=t.defaultModifiers,r=n===void 0?[]:n,i=t.defaultOptions,a=i===void 0?$u:i;return function(e,t,n){n===void 0&&(n=a);var i={placement:`bottom`,orderedModifiers:[],options:Object.assign({},$u,a),modifiersData:{},elements:{reference:e,popper:t},attributes:{},styles:{}},o=[],s=!1,c={state:i,setOptions:function(n){var o=typeof n==`function`?n(i.options):n;u(),i.options=Object.assign({},a,i.options,o),i.scrollParents={reference:kl(e)?xu(e):e.contextElement?xu(e.contextElement):[],popper:xu(t)};var s=Xu(Qu([].concat(r,i.options.modifiers)));return i.orderedModifiers=s.filter(function(e){return e.enabled}),l(),c.update()},forceUpdate:function(){if(!s){var e=i.elements,t=e.reference,n=e.popper;if(ed(t,n)){i.rects={reference:Ju(t,Gl(n),i.options.strategy===`fixed`),popper:Ll(n)},i.reset=!1,i.placement=i.options.placement,i.orderedModifiers.forEach(function(e){return i.modifiersData[e.name]=Object.assign({},e.data)});for(var r=0;r<i.orderedModifiers.length;r++){if(i.reset===!0){i.reset=!1,r=-1;continue}var a=i.orderedModifiers[r],o=a.fn,l=a.options,u=l===void 0?{}:l,d=a.name;typeof o==`function`&&(i=o({state:i,options:u,name:d,instance:c})||i)}}}},update:Zu(function(){return new Promise(function(e){c.forceUpdate(),e(i)})}),destroy:function(){u(),s=!0}};if(!ed(e,t))return c;c.setOptions(n).then(function(e){!s&&n.onFirstUpdate&&n.onFirstUpdate(e)});function l(){i.orderedModifiers.forEach(function(e){var t=e.name,n=e.options,r=n===void 0?{}:n,a=e.effect;if(typeof a==`function`){var s=a({state:i,name:t,instance:c,options:r});o.push(s||function(){})}})}function u(){o.forEach(function(e){return e()}),o=[]}return c}}var nd=td({defaultModifiers:[uu,Vu,su,Pl,zu,Mu,Wu,tu,Iu]});function rd(e){let{elementType:t,externalSlotProps:n,ownerState:r,skipResolvingSlotProps:i=!1,...a}=e,o=i?{}:Zs(n,r),{props:s,internalRef:c}=ec({...a,externalSlotProps:o}),l=ps(c,o?.ref,e.additionalProps?.ref);return Xs(t,{...s,ref:l},r)}function id(e){return e?.props?.ref||null}function ad(e){return typeof e==`function`?e():e}var od=z.forwardRef(function(e,t){let{children:n,container:r,disablePortal:i=!1}=e,[a,o]=z.useState(null),s=ps(z.isValidElement(n)?id(n):null,t);if(bi(()=>{i||o(ad(r)||document.body)},[r,i]),bi(()=>{if(a&&!i)return ss(t,a),()=>{ss(t,null)}},[t,a,i]),i){if(z.isValidElement(n)){let e={ref:s};return z.cloneElement(n,e)}return n}return a&&Ss.createPortal(n,a)});function sd(e){return ii(`MuiPopper`,e)}H(`MuiPopper`,[`root`]);function cd(e,t){if(t===`ltr`)return e;switch(e){case`bottom-end`:return`bottom-start`;case`bottom-start`:return`bottom-end`;case`top-end`:return`top-start`;case`top-start`:return`top-end`;default:return e}}function ld(e){return typeof e==`function`?e():e}function ud(e){return e.nodeType!==void 0}var dd=e=>{let{classes:t}=e;return Ea({root:[`root`]},sd,t)},fd={},pd=z.forwardRef(function(e,t){let{anchorEl:n,children:r,direction:i,disablePortal:a,modifiers:o,open:s,placement:c,popperOptions:l,popperRef:u,slotProps:d={},slots:f={},TransitionProps:p,ownerState:m,...h}=e,g=z.useRef(null),_=ps(g,t),v=z.useRef(null),y=ps(v,u),b=z.useRef(y);bi(()=>{b.current=y},[y]),z.useImperativeHandle(u,()=>v.current,[]);let x=cd(c,i),[S,C]=z.useState(x),[w,T]=z.useState(ld(n));z.useEffect(()=>{v.current&&v.current.forceUpdate()}),z.useEffect(()=>{n&&T(ld(n))},[n]),bi(()=>{if(!w||!s)return;let e=e=>{C(e.placement)},t=[{name:`preventOverflow`,options:{altBoundary:a}},{name:`flip`,options:{altBoundary:a}},{name:`onUpdate`,enabled:!0,phase:`afterWrite`,fn:({state:t})=>{e(t)}}];o!=null&&(t=t.concat(o)),l&&l.modifiers!=null&&(t=t.concat(l.modifiers));let n=nd(w,g.current,{placement:x,...l,modifiers:t});b.current(n);let r=g.current;return()=>{if(r){let{style:e}=r,t=e.position,i=e.top,a=e.left,o=e.transform;n.destroy(),e.position=t,e.top=i,e.left=a,e.transform=o}else n.destroy();b.current(null)}},[w,a,o,s,l,x]);let E={placement:S};p!==null&&(E.TransitionProps=p);let D=dd(e),O=f.root??`div`;return(0,B.jsx)(O,{...rd({elementType:O,externalSlotProps:d.root,externalForwardedProps:h,additionalProps:{role:`tooltip`,ref:_},ownerState:e,className:D.root}),children:typeof r==`function`?r(E):r})}),md=K(z.forwardRef(function(e,t){let{anchorEl:n,children:r,container:i,direction:a=`ltr`,disablePortal:o=!1,keepMounted:s=!1,modifiers:c,open:l,placement:u=`bottom`,popperOptions:d=fd,popperRef:f,style:p,transition:m=!1,slotProps:h={},slots:g={},..._}=e,[v,y]=z.useState(!0),b=()=>{y(!1)},x=()=>{y(!0)};if(!s&&!l&&(!m||v))return null;let S;if(i)S=i;else if(n){let e=ld(n);S=e&&ud(e)?as(e).body:as(null).body}let C=!l&&s&&(!m||v)?`none`:void 0,w=m?{in:l,onEnter:b,onExited:x}:void 0;return(0,B.jsx)(od,{disablePortal:o,container:S,children:(0,B.jsx)(pd,{anchorEl:n,direction:a,disablePortal:o,modifiers:c,ref:t,open:m?!v:l,placement:u,popperOptions:d,popperRef:f,slotProps:h,slots:g,..._,style:{position:`fixed`,top:0,left:0,display:C,...p},TransitionProps:w,children:r})})}),{name:`MuiPopper`,slot:`Root`})({}),hd=z.forwardRef(function(e,t){let n=Gi(),{anchorEl:r,component:i,container:a,disablePortal:o,keepMounted:s,modifiers:c,open:l,placement:u,popperOptions:d,popperRef:f,transition:p,slots:m,slotProps:h,...g}=Zo({props:e,name:`MuiPopper`}),_={anchorEl:r,container:a,disablePortal:o,keepMounted:s,modifiers:c,open:l,placement:u,popperOptions:d,popperRef:f,transition:p,...g};return(0,B.jsx)(md,{as:i,direction:n?`rtl`:`ltr`,slots:m,slotProps:h,..._,ref:t})}),gd=ns((0,B.jsx)(`path`,{d:`M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm5 13.59L15.59 17 12 13.41 8.41 17 7 15.59 10.59 12 7 8.41 8.41 7 12 10.59 15.59 7 17 8.41 13.41 12 17 15.59z`}),`Cancel`);function _d(e){return ii(`MuiChip`,e)}var vd=H(`MuiChip`,[`root`,`sizeSmall`,`sizeMedium`,`colorDefault`,`colorError`,`colorInfo`,`colorPrimary`,`colorSecondary`,`colorSuccess`,`colorWarning`,`disabled`,`clickable`,`deletable`,`outlined`,`filled`,`avatar`,`icon`,`label`,`deleteIcon`,`focusVisible`]),$=e=>{let{classes:t,disabled:n,size:r,color:i,onDelete:a,clickable:o,variant:s}=e;return Ea({root:[`root`,s,n&&`disabled`,`size${Ko(r)}`,`color${Ko(i)}`,o&&`clickable`,a&&`deletable`],label:[`label`],avatar:[`avatar`],icon:[`icon`],deleteIcon:[`deleteIcon`]},_d,t)},yd=K(`div`,{name:`MuiChip`,slot:`Root`,shouldForwardProp:e=>Ro(e)&&e!==`focusableWhenDisabled`&&e!==`skipFocusWhenDisabled`,overridesResolver:(e,t)=>{let{ownerState:n}=e,{color:r,clickable:i,onDelete:a,size:o,variant:s}=n;return[{[`& .${vd.avatar}`]:t.avatar},{[`& .${vd.icon}`]:t.icon},{[`& .${vd.deleteIcon}`]:t.deleteIcon},t.root,t[`size${Ko(o)}`],t[`color${Ko(r)}`],i&&t.clickable,a&&t.deletable,t[s]]}})(Xo(({theme:e})=>{let t=e.palette.mode===`light`?e.palette.grey[700]:e.palette.grey[300];return{maxWidth:`100%`,fontFamily:e.typography.fontFamily,fontSize:e.typography.pxToRem(13),display:`inline-flex`,alignItems:`center`,justifyContent:`center`,height:32,lineHeight:1.5,color:(e.vars||e).palette.text.primary,backgroundColor:(e.vars||e).palette.action.selected,borderRadius:32/2,whiteSpace:`nowrap`,transition:e.transitions.create([`background-color`,`box-shadow`]),cursor:`unset`,outline:0,textDecoration:`none`,border:0,padding:0,verticalAlign:`middle`,boxSizing:`border-box`,[`&.${vd.disabled}`]:{opacity:(e.vars||e).palette.action.disabledOpacity,pointerEvents:`none`},[`& .${vd.avatar}`]:{marginLeft:5,marginRight:-6,width:24,height:24,color:e.vars?e.vars.palette.Chip.defaultAvatarColor:t,fontSize:e.typography.pxToRem(12)},[`& .${vd.icon}`]:{marginLeft:5,marginRight:-6},[`& .${vd.deleteIcon}`]:{WebkitTapHighlightColor:`transparent`,color:e.alpha((e.vars||e).palette.text.primary,.26),fontSize:22,cursor:`pointer`,margin:`0 5px 0 -6px`,"&:hover":{color:e.alpha((e.vars||e).palette.text.primary,.4)}},variants:[{props:{color:`primary`},style:{[`& .${vd.avatar}`]:{color:(e.vars||e).palette.primary.contrastText,backgroundColor:(e.vars||e).palette.primary.dark}}},{props:{color:`secondary`},style:{[`& .${vd.avatar}`]:{color:(e.vars||e).palette.secondary.contrastText,backgroundColor:(e.vars||e).palette.secondary.dark}}},{props:{size:`small`},style:{height:24,[`& .${vd.avatar}`]:{marginLeft:4,marginRight:-4,width:18,height:18,fontSize:e.typography.pxToRem(10)},[`& .${vd.icon}`]:{fontSize:18,marginLeft:4,marginRight:-4},[`& .${vd.deleteIcon}`]:{fontSize:16,marginRight:4,marginLeft:-4}}},...Object.entries(e.palette).filter(kc([`contrastText`])).map(([t])=>({props:{color:t},style:{backgroundColor:(e.vars||e).palette[t].main,color:(e.vars||e).palette[t].contrastText,[`& .${vd.deleteIcon}`]:{color:e.alpha((e.vars||e).palette[t].contrastText,.7),"&:hover, &:active":{color:(e.vars||e).palette[t].contrastText}}}})),{props:e=>e.iconColor===e.color,style:{[`& .${vd.icon}`]:{color:e.vars?e.vars.palette.Chip.defaultIconColor:t}}},{props:e=>e.iconColor===e.color&&e.color!==`default`,style:{[`& .${vd.icon}`]:{color:`inherit`}}},{props:{onDelete:!0},style:{[`&.${vd.focusVisible}`]:{backgroundColor:e.alpha((e.vars||e).palette.action.selected,`${(e.vars||e).palette.action.selectedOpacity} + ${(e.vars||e).palette.action.focusOpacity}`)}}},...Object.entries(e.palette).filter(kc([`dark`])).map(([t])=>({props:{color:t,onDelete:!0},style:{[`&.${vd.focusVisible}`]:{background:(e.vars||e).palette[t].dark}}})),{props:{clickable:!0},style:{userSelect:`none`,WebkitTapHighlightColor:`transparent`,cursor:`pointer`,"&:hover":{backgroundColor:e.alpha((e.vars||e).palette.action.selected,`${(e.vars||e).palette.action.selectedOpacity} + ${(e.vars||e).palette.action.hoverOpacity}`)},[`&.${vd.focusVisible}`]:{backgroundColor:e.alpha((e.vars||e).palette.action.selected,`${(e.vars||e).palette.action.selectedOpacity} + ${(e.vars||e).palette.action.focusOpacity}`)},"&:active":{boxShadow:(e.vars||e).shadows[1]}}},...Object.entries(e.palette).filter(kc([`dark`])).map(([t])=>({props:{color:t,clickable:!0},style:{[`&:hover, &.${vd.focusVisible}`]:{backgroundColor:(e.vars||e).palette[t].dark}}})),{props:{variant:`outlined`},style:{backgroundColor:`transparent`,border:e.vars?`1px solid ${e.vars.palette.Chip.defaultBorder}`:`1px solid ${e.palette.mode===`light`?e.palette.grey[400]:e.palette.grey[700]}`,[`&.${vd.clickable}:hover`]:{backgroundColor:(e.vars||e).palette.action.hover},[`&.${vd.focusVisible}`]:{backgroundColor:(e.vars||e).palette.action.focus},[`& .${vd.avatar}`]:{marginLeft:4},[`& .${vd.icon}`]:{marginLeft:4},[`& .${vd.deleteIcon}`]:{marginRight:5}}},{props:{size:`small`,variant:`outlined`},style:{[`& .${vd.avatar}`]:{marginLeft:2},[`& .${vd.icon}`]:{marginLeft:2},[`& .${vd.deleteIcon}`]:{marginRight:3}}},...Object.entries(e.palette).filter(kc()).map(([t])=>({props:{variant:`outlined`,color:t},style:{color:(e.vars||e).palette[t].main,border:`1px solid ${e.alpha((e.vars||e).palette[t].main,.7)}`,[`&.${vd.clickable}:hover`]:{backgroundColor:e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.hoverOpacity)},[`&.${vd.focusVisible}`]:{backgroundColor:e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.focusOpacity)},[`& .${vd.deleteIcon}`]:{color:e.alpha((e.vars||e).palette[t].main,.7),"&:hover, &:active":{color:(e.vars||e).palette[t].main}}}}))]}})),bd=K(`span`,{name:`MuiChip`,slot:`Label`})({overflow:`hidden`,textOverflow:`ellipsis`,paddingLeft:12,paddingRight:12,whiteSpace:`nowrap`,variants:[{props:{variant:`outlined`},style:{paddingLeft:11,paddingRight:11}},{props:{size:`small`},style:{paddingLeft:8,paddingRight:8}},{props:{size:`small`,variant:`outlined`},style:{paddingLeft:7,paddingRight:7}}]});function xd(e){return e.key===`Backspace`||e.key===`Delete`}var Sd=z.forwardRef(function(e,t){let n=Zo({props:e,name:`MuiChip`}),{avatar:r,className:i,clickable:a,color:o=`default`,component:s,deleteIcon:c,disabled:l=!1,icon:u,label:d,onClick:f,onDelete:p,onKeyDown:m,onKeyUp:h,size:g=`medium`,variant:_=`filled`,tabIndex:v,skipFocusWhenDisabled:y=!1,slots:b={},slotProps:x={},...S}=n,{nativeButton:C,...w}=S,T=ms(z.useRef(null),t),E=e=>{e.stopPropagation(),p(e)},D=e=>{e.currentTarget===e.target&&xd(e)&&e.preventDefault(),m&&m(e)},O=e=>{e.currentTarget===e.target&&p&&xd(e)&&p(e),h&&h(e)},ee=a!==!1&&f?!0:a,te=ee||p?Tc:s||`div`,k={...n,component:te,disabled:l,size:g,color:o,iconColor:z.isValidElement(u)&&u.props.color||o,onDelete:!!p,clickable:ee,variant:_},A=$(k),ne=te===Tc?{component:s||`div`,internalNativeButton:!1,focusVisibleClassName:A.focusVisible,...p&&{disableRipple:!0},...C!==void 0&&{nativeButton:C}}:{},j=null;p&&(j=c&&z.isValidElement(c)?z.cloneElement(c,{className:V(c.props.className,A.deleteIcon),onClick:E}):(0,B.jsx)(gd,{className:A.deleteIcon,onClick:E}));let re=null;r&&z.isValidElement(r)&&(re=z.cloneElement(r,{className:V(A.avatar,r.props.className)}));let M=null;u&&z.isValidElement(u)&&(M=z.cloneElement(u,{className:V(A.icon,u.props.className)}));let N={slots:b,slotProps:x},[ie,ae]=q(`root`,{elementType:yd,externalForwardedProps:{...N,...w},ownerState:k,shouldForwardComponentProp:!0,ref:T,className:V(A.root,i),additionalProps:{disabled:ee&&l?!0:void 0,tabIndex:y&&l?-1:v,...ne},getSlotProps:e=>({...e,onClick:t=>{e.onClick?.(t),f?.(t)},onKeyDown:t=>{e.onKeyDown?.(t),D(t)},onKeyUp:t=>{e.onKeyUp?.(t),O(t)}})}),[oe,se]=q(`label`,{elementType:bd,externalForwardedProps:N,ownerState:k,className:A.label});return(0,B.jsxs)(ie,{as:te,...ae,children:[re||M,(0,B.jsx)(oe,{...se,children:d}),j]})}),Cd=ns((0,B.jsx)(`path`,{d:`M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z`}),`Person`);function wd(e){return ii(`MuiAvatar`,e)}H(`MuiAvatar`,[`root`,`colorDefault`,`circular`,`rounded`,`square`,`img`,`fallback`]);var Td=e=>{let{classes:t,variant:n,colorDefault:r}=e;return Ea({root:[`root`,n,r&&`colorDefault`],img:[`img`],fallback:[`fallback`]},wd,t)},Ed=K(`div`,{name:`MuiAvatar`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[n.variant],n.colorDefault&&t.colorDefault]}})(Xo(({theme:e})=>({position:`relative`,display:`flex`,alignItems:`center`,justifyContent:`center`,flexShrink:0,width:40,height:40,fontFamily:e.typography.fontFamily,fontSize:e.typography.pxToRem(20),lineHeight:1,borderRadius:`50%`,overflow:`hidden`,userSelect:`none`,variants:[{props:{variant:`rounded`},style:{borderRadius:(e.vars||e).shape.borderRadius}},{props:{variant:`square`},style:{borderRadius:0}},{props:{colorDefault:!0},style:{color:(e.vars||e).palette.background.default,"@media (forced-colors: active)":{boxSizing:`border-box`,border:`1px solid ButtonBorder`},...e.vars?{backgroundColor:e.vars.palette.Avatar.defaultBg}:{backgroundColor:e.palette.grey[400],...e.applyStyles(`dark`,{backgroundColor:e.palette.grey[600]})}}}]}))),Dd=K(`img`,{name:`MuiAvatar`,slot:`Img`})({width:`100%`,height:`100%`,textAlign:`center`,objectFit:`cover`,color:`transparent`,textIndent:1e4}),Od=K(Cd,{name:`MuiAvatar`,slot:`Fallback`})({width:`75%`,height:`75%`});function kd(e,t,n,r){let[i,a]=z.useState(!1);return z.useEffect(()=>{if(!e&&!t)return;a(!1);let i=!0,o=new Image;return o.onload=()=>{i&&a(`loaded`)},o.onerror=()=>{i&&a(`error`)},o.crossOrigin=n,o.referrerPolicy=r,o.src=e,t&&(o.srcset=t),()=>{i=!1}},[n,r,e,t]),i}var Ad=z.forwardRef(function(e,t){let n=Zo({props:e,name:`MuiAvatar`}),{alt:r,children:i,className:a,component:o=`div`,slots:s={},slotProps:c={},sizes:l,src:u,srcSet:d,variant:f=`circular`,...p}=n,m=null,h={...n,component:o,variant:f},{crossOrigin:g,referrerPolicy:_}=(typeof c.img==`function`?c.img(h):c.img)??{},v=kd(u,d,g,_),y=u||d,b=y&&v!==`error`;h.colorDefault=!b,delete h.ownerState;let x=Td(h),S={slots:s,slotProps:c},[C,w]=q(`root`,{ref:t,className:V(x.root,a),elementType:Ed,externalForwardedProps:{...S,component:o,...p},ownerState:h}),[T,E]=q(`img`,{className:x.img,elementType:Dd,externalForwardedProps:S,additionalProps:{alt:r,src:u,srcSet:d,sizes:l},ownerState:h}),[D,O]=q(`fallback`,{className:x.fallback,elementType:Od,externalForwardedProps:S,shouldForwardComponentProp:!0,ownerState:h});return m=b?(0,B.jsx)(T,{...E}):i||i===0?i:y&&r?r[0]:(0,B.jsx)(D,{...O}),(0,B.jsx)(C,{...w,children:m})}),jd={entering:{opacity:1},entered:{opacity:1},exiting:{opacity:0},exited:{opacity:0}},Md={opacity:0,visibility:`hidden`},Nd=z.forwardRef(function(e,t){let n=Io(),r={enter:n.transitions.duration.enteringScreen,exit:n.transitions.duration.leavingScreen},{addEndListener:i,appear:a=!0,children:o,easing:s,in:c,onEnter:l,onEntered:u,onEntering:d,onExit:f,onExited:p,onExiting:m,style:h,timeout:g=r,..._}=e,v=z.useRef(null),y=ms(v,id(o),t),b=Ks(v,d),x=Ks(v,(e,t)=>{Gs(e);let r=Js({style:h,timeout:g,easing:s},{mode:`enter`});e.style.transition=n.transitions.create(`opacity`,r),l&&l(e,t)}),S=Ks(v,u),C=Ks(v,m),w=Ks(v,e=>{let t=Js({style:h,timeout:g,easing:s},{mode:`exit`});e.style.transition=n.transitions.create(`opacity`,t),f&&f(e)}),T=Ks(v,e=>{e.style.transition=``,p&&p(e)});return(0,B.jsx)(Os,{appear:a,in:c,nodeRef:v,onEnter:x,onEntered:S,onEntering:b,onExit:w,onExited:T,onExiting:C,addEndListener:e=>{i&&i(v.current,e)},timeout:g,..._,children:(e,{ownerState:t,...n})=>{let r=qs(e,c,jd,Md,h,o.props.style);return z.cloneElement(o,{style:r,ref:y,...n})}})});function Pd(e){return ii(`MuiBackdrop`,e)}H(`MuiBackdrop`,[`root`,`invisible`]);var Fd=e=>{let{classes:t,invisible:n}=e;return Ea({root:[`root`,n&&`invisible`]},Pd,t)},Id=K(`div`,{name:`MuiBackdrop`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,n.invisible&&t.invisible]}})({position:`fixed`,display:`flex`,alignItems:`center`,justifyContent:`center`,right:0,bottom:0,top:0,left:0,backgroundColor:`rgba(0, 0, 0, 0.5)`,WebkitTapHighlightColor:`transparent`,variants:[{props:{invisible:!0},style:{backgroundColor:`transparent`}}]}),Ld=z.forwardRef(function(e,t){let n=Zo({props:e,name:`MuiBackdrop`}),{children:r,className:i,component:a=`div`,invisible:o=!1,open:s,slotProps:c={},slots:l={},transitionDuration:u,...d}=n,f={...n,component:a,invisible:o},p=Fd(f),m={component:a,slots:l,slotProps:c},[h,g]=q(`root`,{elementType:Id,externalForwardedProps:m,className:V(p.root,i),ownerState:f}),[_,v]=q(`transition`,{elementType:Nd,externalForwardedProps:m,ownerState:f});return(0,B.jsx)(_,{in:s,timeout:u,...d,...v,children:(0,B.jsx)(h,{...g,ref:t,children:r})})}),Rd=H(`MuiBox`,[`root`]),zd=ni({themeId:E,defaultTheme:Po(),defaultClassName:Rd.root,generateClassName:ei.generate});function Bd(e){return ii(`MuiCard`,e)}H(`MuiCard`,[`root`]);var Vd=e=>{let{classes:t}=e;return Ea({root:[`root`]},Bd,t)},Hd=K(ic,{name:`MuiCard`,slot:`Root`})({overflow:`hidden`}),Ud=z.forwardRef(function(e,t){let n=Zo({props:e,name:`MuiCard`}),{className:r,raised:i=!1,...a}=n,o={...n,raised:i};return(0,B.jsx)(Hd,{className:V(Vd(o).root,r),elevation:i?8:void 0,ref:t,ownerState:o,...a})});function Wd(e){return ii(`MuiCardContent`,e)}H(`MuiCardContent`,[`root`]);var Gd=e=>{let{classes:t}=e;return Ea({root:[`root`]},Wd,t)},Kd=K(`div`,{name:`MuiCardContent`,slot:`Root`})({padding:16,"&:last-child":{paddingBottom:24}}),qd=z.forwardRef(function(e,t){let n=Zo({props:e,name:`MuiCardContent`}),{className:r,component:i=`div`,...a}=n,o={...n,component:i};return(0,B.jsx)(Kd,{as:i,className:V(Gd(o).root,r),ownerState:o,ref:t,...a})}),Jd=typeof Yo({})==`function`,Yd=(e,t)=>({WebkitFontSmoothing:`antialiased`,MozOsxFontSmoothing:`grayscale`,boxSizing:`border-box`,WebkitTextSizeAdjust:`100%`,...t&&!e.vars&&{colorScheme:e.palette.mode}}),Xd=e=>({color:(e.vars||e).palette.text.primary,...e.typography.body1,backgroundColor:(e.vars||e).palette.background.default,"@media print":{backgroundColor:(e.vars||e).palette.common.white}}),Zd=(e,t=!1)=>{let n={};t&&e.colorSchemes&&typeof e.getColorSchemeSelector==`function`&&Object.entries(e.colorSchemes).forEach(([t,r])=>{let i=e.getColorSchemeSelector(t);i.startsWith(`@`)?n[i]={":root":{colorScheme:r.palette?.mode}}:n[i.replace(/\s*&/,``)]={colorScheme:r.palette?.mode}});let r={html:Yd(e,t),"*, *::before, *::after":{boxSizing:`inherit`},"strong, b":{fontWeight:e.typography.fontWeightBold},body:{margin:0,...Xd(e),"&::backdrop":{backgroundColor:(e.vars||e).palette.background.default}},...n},i=e.components?.MuiCssBaseline?.styleOverrides;return i&&(r=[r,i]),r},Qd=`mui-ecs`,$d=e=>{let t=Zd(e,!1),n=Array.isArray(t)?t[0]:t;return!e.vars&&n&&(n.html[`:root:has(${Qd})`]={colorScheme:e.palette.mode}),e.colorSchemes&&Object.entries(e.colorSchemes).forEach(([t,r])=>{let i=e.getColorSchemeSelector(t);i.startsWith(`@`)?n[i]={[`:root:not(:has(.${Qd}))`]:{colorScheme:r.palette?.mode}}:n[i.replace(/\s*&/,``)]={[`&:not(:has(.${Qd}))`]:{colorScheme:r.palette?.mode}}}),t},ef=Yo(Jd?({theme:e,enableColorScheme:t})=>Zd(e,t):({theme:e})=>$d(e));function tf(e){let{children:t,enableColorScheme:n=!1}=Zo({props:e,name:`MuiCssBaseline`});return(0,B.jsxs)(z.Fragment,{children:[Jd&&(0,B.jsx)(ef,{enableColorScheme:n}),!Jd&&!n&&(0,B.jsx)(`span`,{className:Qd,style:{display:`none`}}),t]})}function nf(e=window){let t=e.document.documentElement.clientWidth;return e.innerWidth-t}function rf(e){let t=as(e);return t.body===e?os(e).innerWidth>t.documentElement.clientWidth:e.scrollHeight>e.clientHeight}function af(e,t){t?e.setAttribute(`aria-hidden`,`true`):e.removeAttribute(`aria-hidden`)}function of(e){return parseFloat(os(e).getComputedStyle(e).paddingRight)||0}function sf(e){let t=[`TEMPLATE`,`SCRIPT`,`STYLE`,`LINK`,`MAP`,`META`,`NOSCRIPT`,`PICTURE`,`COL`,`COLGROUP`,`PARAM`,`SLOT`,`SOURCE`,`TRACK`].includes(e.tagName),n=e.tagName===`INPUT`&&e.getAttribute(`type`)===`hidden`;return t||n}function cf(e,t,n,r,i){let a=[t,n,...r];[].forEach.call(e.children,e=>{let t=!a.includes(e),n=!sf(e);t&&n&&af(e,i)})}function lf(e,t){let n=-1;return e.some((e,r)=>t(e)?(n=r,!0):!1),n}function uf(e,t){let n=[],r=e.container;if(!t.disableScrollLock){if(rf(r)){let e=nf(os(r));n.push({value:r.style.paddingRight,property:`padding-right`,el:r}),r.style.paddingRight=`${of(r)+e}px`;let t=as(r).querySelectorAll(`.mui-fixed`);[].forEach.call(t,t=>{n.push({value:t.style.paddingRight,property:`padding-right`,el:t}),t.style.paddingRight=`${of(t)+e}px`})}let e;if(r.parentNode instanceof DocumentFragment)e=as(r).body;else{let t=r.parentElement,n=os(r);e=t?.nodeName===`HTML`&&n.getComputedStyle(t).overflowY===`scroll`?t:r}n.push({value:e.style.overflow,property:`overflow`,el:e},{value:e.style.overflowX,property:`overflow-x`,el:e},{value:e.style.overflowY,property:`overflow-y`,el:e}),e.style.overflow=`hidden`}return()=>{n.forEach(({value:e,el:t,property:n})=>{e?t.style.setProperty(n,e):t.style.removeProperty(n)})}}function df(e){let t=[];return[].forEach.call(e.children,e=>{e.getAttribute(`aria-hidden`)===`true`&&t.push(e)}),t}var ff=class{constructor(){this.modals=[],this.containers=[]}add(e,t){let n=this.modals.indexOf(e);if(n!==-1)return n;n=this.modals.length,this.modals.push(e),e.modalRef&&af(e.modalRef,!1);let r=df(t);cf(t,e.mount,e.modalRef,r,!0);let i=lf(this.containers,e=>e.container===t);return i===-1?(this.containers.push({modals:[e],container:t,restore:null,hiddenSiblings:r}),n):(this.containers[i].modals.push(e),n)}mount(e,t){let n=lf(this.containers,t=>t.modals.includes(e)),r=this.containers[n];r.restore||=uf(r,t)}remove(e,t=!0){let n=this.modals.indexOf(e);if(n===-1)return n;let r=lf(this.containers,t=>t.modals.includes(e)),i=this.containers[r];if(i.modals.splice(i.modals.indexOf(e),1),this.modals.splice(n,1),i.modals.length===0)i.restore&&i.restore(),e.modalRef&&af(e.modalRef,t),cf(i.container,e.mount,e.modalRef,i.hiddenSiblings,!1),this.containers.splice(r,1);else{let e=i.modals[i.modals.length-1];e.modalRef&&af(e.modalRef,!1)}return n}isTopModal(e){return this.modals.length>0&&this.modals[this.modals.length-1]===e}},pf=pl,mf=`data-mui-focusable`;function hf(e){return e?e.hasAttribute(`data-mui-focusable`)?e:e.querySelector(`[${mf}]`):null}var gf=[`input`,`select`,`textarea`,`a[href]`,`button`,`[tabindex]`,`audio[controls]`,`video[controls]`,`[contenteditable]:not([contenteditable="false"])`].join(`,`);function _f(e){let t=parseInt(e.getAttribute(`tabindex`)||``,10);return Number.isNaN(t)?e.contentEditable===`true`||(e.nodeName===`AUDIO`||e.nodeName===`VIDEO`||e.nodeName===`DETAILS`)&&e.getAttribute(`tabindex`)===null?0:e.tabIndex:t}function vf(e){if(e.tagName!==`INPUT`||e.type!==`radio`||!e.name)return!1;let t=t=>e.ownerDocument.querySelector(`input[type="radio"]${t}`),n=t(`[name="${e.name}"]:checked`);return n||=t(`[name="${e.name}"]`),n!==e}function yf(e){return!(e.disabled||e.tagName===`INPUT`&&e.type===`hidden`||vf(e))}function bf(e){let t=[],n=[];return Array.from(e.querySelectorAll(gf)).forEach((e,r)=>{let i=_f(e);i===-1||!yf(e)||(i===0?t.push(e):n.push({documentOrder:r,tabIndex:i,node:e}))}),n.sort((e,t)=>e.tabIndex===t.tabIndex?e.documentOrder-t.documentOrder:e.tabIndex-t.tabIndex).map(e=>e.node).concat(t)}function xf(){return!0}function Sf(e){let{children:t,disableAutoFocus:n=!1,disableEnforceFocus:r=!1,disableRestoreFocus:i=!1,getTabbable:a=bf,isEnabled:o=xf,open:s}=e,c=z.useRef(!1),l=z.useRef(null),u=z.useRef(null),d=z.useRef(null),f=z.useRef(null),p=z.useRef(!1),m=z.useRef(null),h=ps(id(t),m),g=z.useRef(null);z.useEffect(()=>{!s||!m.current||(p.current=!n)},[n,s]),z.useEffect(()=>{if(c.current=!1,!s||!m.current)return;let e=is(as(m.current)),t=hf(m.current)??m.current;return pf(m.current,e)||(t.hasAttribute(`tabIndex`)||t.setAttribute(`tabIndex`,`-1`),p.current&&t.focus()),()=>{!i&&d.current&&(c.current=!0,d.current.focus(),d.current=null)}},[s]),z.useEffect(()=>{if(!s||!m.current)return;let e=as(m.current),t=t=>{g.current=t,!(r||!o()||t.key!==`Tab`)&&is(e)===m.current&&t.shiftKey&&(c.current=!0,u.current&&u.current.focus())},n=()=>{let t=m.current;if(t===null)return;let n=is(e);if(!e.hasFocus()||!o()||c.current){c.current=!1;return}if(pf(t,n)||r&&n!==l.current&&n!==u.current)return;if(n!==f.current)f.current=null;else if(f.current!==null)return;if(!p.current)return;let i=[];if((n===l.current||n===u.current)&&(i=a(m.current)),i.length>0){let e=!!(g.current?.shiftKey&&g.current?.key===`Tab`),t=i[0],n=i[i.length-1];typeof t!=`string`&&typeof n!=`string`&&(e?n.focus():t.focus())}else t.focus()};e.addEventListener(`focusin`,n),e.addEventListener(`keydown`,t,!0);let i=setInterval(()=>{let t=is(e);t&&t.tagName===`BODY`&&n()},50);return()=>{clearInterval(i),e.removeEventListener(`focusin`,n),e.removeEventListener(`keydown`,t,!0)}},[n,r,i,o,s,a]);let _=e=>{d.current===null&&(d.current=e.relatedTarget),p.current=!0,f.current=e.target;let n=t.props.onFocus;n&&n(e)},v=e=>{d.current===null&&(d.current=e.relatedTarget),p.current=!0};return(0,B.jsxs)(z.Fragment,{children:[(0,B.jsx)(`div`,{tabIndex:s?0:-1,onFocus:v,ref:l,"data-testid":`sentinelStart`}),z.cloneElement(t,{ref:h,onFocus:_}),(0,B.jsx)(`div`,{tabIndex:s?0:-1,onFocus:v,ref:u,"data-testid":`sentinelEnd`})]})}function Cf(e){return typeof e==`function`?e():e}function wf(e){return e?e.props.hasOwnProperty(`in`):!1}var Tf=()=>{},Ef=new ff;function Df(e){let{container:t,disableScrollLock:n=!1,closeAfterTransition:r=!1,onTransitionEnter:i,onTransitionExited:a,children:o,onClose:s,open:c,rootRef:l}=e,u=z.useRef({}),d=z.useRef(null),f=z.useRef(null),p=ps(f,l),[m,h]=z.useState(!c),g=wf(o),_=!0;(e[`aria-hidden`]===`false`||e[`aria-hidden`]===!1)&&(_=!1);let v=()=>as(d.current),y=()=>(u.current.modalRef=f.current,u.current.mount=d.current,u.current),b=()=>{Ef.mount(y(),{disableScrollLock:n}),f.current&&(f.current.scrollTop=0)},x=ds(()=>{let e=Cf(t)||v().body;Ef.add(y(),e),f.current&&b()}),S=()=>Ef.isTopModal(y()),C=ds(e=>{d.current=e,e&&(c&&S()?b():f.current&&af(f.current,_))}),w=z.useCallback(()=>{Ef.remove(y(),_)},[_]);z.useEffect(()=>()=>{w()},[w]),z.useEffect(()=>{c?x():(!g||!r)&&w()},[c,w,g,r,x]);let T=e=>t=>{e.onKeyDown?.(t),!(t.key!==`Escape`||t.which===229||!S())&&(t.stopPropagation(),s&&s(t,`escapeKeyDown`))},E=e=>t=>{e.onClick?.(t),t.target===t.currentTarget&&s&&s(t,`backdropClick`)};return{getRootProps:(t={})=>{let n=Qs(e);delete n.onTransitionEnter,delete n.onTransitionExited;let r={...n,...t};return{role:`presentation`,...r,onKeyDown:T(r),ref:p}},getBackdropProps:(e={})=>{let t=e;return{"aria-hidden":!0,...t,onClick:E(t),open:c}},getTransitionProps:()=>({onEnter:qo(()=>{h(!1),i&&i()},o?.props.onEnter??Tf),onExited:qo(()=>{h(!0),a&&a(),r&&w()},o?.props.onExited??Tf)}),rootRef:p,portalRef:C,isTopModal:S,exited:m,hasTransition:g}}function Of(e){return ii(`MuiModal`,e)}H(`MuiModal`,[`root`,`hidden`,`backdrop`]);var kf=e=>{let{open:t,exited:n,classes:r}=e;return Ea({root:[`root`,!t&&n&&`hidden`],backdrop:[`backdrop`]},Of,r)},Af=K(`div`,{name:`MuiModal`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,!n.open&&n.exited&&t.hidden]}})(Xo(({theme:e})=>({position:`fixed`,zIndex:(e.vars||e).zIndex.modal,right:0,bottom:0,top:0,left:0,variants:[{props:({ownerState:e})=>!e.open&&e.exited,style:{visibility:`hidden`}}]}))),jf=K(Ld,{name:`MuiModal`,slot:`Backdrop`})({zIndex:-1}),Mf=z.forwardRef(function(e,t){let n=Zo({name:`MuiModal`,props:e}),{classes:r,className:i,closeAfterTransition:a=!1,children:o,container:s,component:c,disableAutoFocus:l=!1,disableEnforceFocus:u=!1,disablePortal:d=!1,disableRestoreFocus:f=!1,disableScrollLock:p=!1,hideBackdrop:m=!1,keepMounted:h=!1,onClose:g,onTransitionEnter:_,onTransitionExited:v,open:y,slotProps:b={},slots:x={},theme:S,...C}=n,w={...n,closeAfterTransition:a,disableAutoFocus:l,disableEnforceFocus:u,disablePortal:d,disableRestoreFocus:f,disableScrollLock:p,hideBackdrop:m,keepMounted:h},{getRootProps:T,getBackdropProps:E,getTransitionProps:D,portalRef:O,isTopModal:ee,exited:te,hasTransition:k}=Df({...w,rootRef:t}),A={...w,exited:te},ne=kf(A),j={};if(o.props.tabIndex===void 0&&(j.tabIndex=`-1`),k){let{onEnter:e,onExited:t}=D();j.onEnter=e,j.onExited=t}let re={slots:x,slotProps:b},[M,N]=q(`root`,{ref:t,elementType:Af,externalForwardedProps:{...re,...C,component:c},getSlotProps:T,ownerState:A,className:V(i,ne?.root,!A.open&&A.exited&&ne?.hidden)}),[ie,ae]=q(`backdrop`,{elementType:jf,externalForwardedProps:re,shouldForwardComponentProp:!0,getSlotProps:e=>E({...e,onClick:t=>{e?.onClick&&e.onClick(t)}}),className:ne?.backdrop,ownerState:A});return!h&&!y&&(!k||te)?null:(0,B.jsx)(od,{ref:O,container:s,disablePortal:d,children:(0,B.jsxs)(M,{...N,children:[m?null:(0,B.jsx)(ie,{...ae}),(0,B.jsx)(Sf,{disableEnforceFocus:u,disableAutoFocus:l,disableRestoreFocus:f,isEnabled:ee,open:y,children:z.cloneElement(o,j)})]})})});function Nf(e){return ii(`MuiDialog`,e)}H(`MuiDialog`,[`root`,`backdrop`,`scrollPaper`,`scrollBody`,`container`,`paper`,`paperWidthFalse`,`paperWidthXs`,`paperWidthSm`,`paperWidthMd`,`paperWidthLg`,`paperWidthXl`,`paperFullWidth`,`paperFullScreen`]);var Pf=z.createContext({}),Ff=K(Ld,{name:`MuiDialog`,slot:`Backdrop`})({zIndex:-1}),If=e=>{let{classes:t,scroll:n,maxWidth:r,fullWidth:i,fullScreen:a}=e;return Ea({root:[`root`],backdrop:[`backdrop`],container:[`container`,`scroll${Ko(n)}`],paper:[`paper`,`paperWidth${Ko(String(r))}`,i&&`paperFullWidth`,a&&`paperFullScreen`]},Nf,t)},Lf=K(Mf,{name:`MuiDialog`,slot:`Root`})({"@media print":{position:`absolute !important`}}),Rf=K(`div`,{name:`MuiDialog`,slot:`Container`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.container,t[`scroll${Ko(n.scroll)}`]]}})({height:`100%`,"@media print":{height:`auto`},outline:0,variants:[{props:{scroll:`paper`},style:{display:`flex`,justifyContent:`center`,alignItems:`center`}},{props:{scroll:`body`},style:{overflowY:`auto`,overflowX:`hidden`,textAlign:`center`,"&::after":{content:`""`,display:`inline-block`,verticalAlign:`middle`,height:`100%`,width:`0`}}}]}),zf=K(ic,{name:`MuiDialog`,slot:`Paper`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.paper,t[`paperWidth${Ko(String(n.maxWidth))}`],n.fullWidth&&t.paperFullWidth,n.fullScreen&&t.paperFullScreen]}})(Xo(({theme:e})=>({margin:32,position:`relative`,overflowY:`auto`,"@media print":{overflowY:`visible`,boxShadow:`none`},variants:[{props:{scroll:`paper`},style:{display:`flex`,flexDirection:`column`,maxHeight:`calc(100% - 64px)`}},{props:{scroll:`body`},style:{display:`inline-block`,verticalAlign:`middle`,textAlign:`initial`}},{props:({ownerState:e})=>!e.maxWidth,style:{maxWidth:`calc(100% - 64px)`}},{props:{maxWidth:`xs`},style:{maxWidth:e.breakpoints.unit===`px`?Math.max(e.breakpoints.values.xs,444):`max(${e.breakpoints.values.xs}${e.breakpoints.unit}, 444px)`}},{props:{maxWidth:`xs`,scroll:`body`},style:{[e.breakpoints.down(Math.max(e.breakpoints.values.xs,444)+64)]:{maxWidth:`calc(100% - 64px)`}}},...Object.keys(e.breakpoints.values).filter(e=>e!==`xs`).map(t=>({props:{maxWidth:t},style:{maxWidth:`${e.breakpoints.values[t]}${e.breakpoints.unit}`}})),...Object.keys(e.breakpoints.values).filter(e=>e!==`xs`).map(t=>({props:{maxWidth:t,scroll:`body`},style:{[e.breakpoints.down(e.breakpoints.values[t]+64)]:{maxWidth:`calc(100% - 64px)`}}})),{props:({ownerState:e})=>e.fullWidth,style:{width:`calc(100% - 64px)`}},{props:({ownerState:e})=>e.fullScreen,style:{margin:0,width:`100%`,maxWidth:`100%`,height:`100%`,maxHeight:`none`,borderRadius:0}},{props:({ownerState:e})=>e.fullScreen&&e.scroll===`body`,style:{margin:0,maxWidth:`100%`}}]}))),Bf=z.forwardRef(function(e,t){let n=Zo({props:e,name:`MuiDialog`}),r=Io(),i={enter:r.transitions.duration.enteringScreen,exit:r.transitions.duration.leavingScreen},{"aria-describedby":a,"aria-labelledby":o,"aria-modal":s=!0,children:c,className:l,fullScreen:u=!1,fullWidth:d=!1,maxWidth:f=`sm`,onClick:p,onClose:m,open:h,PaperComponent:g=ic,role:_=`dialog`,scroll:v=`paper`,slots:y={},slotProps:b={},transitionDuration:x=i,...S}=n,C={...n,fullScreen:u,fullWidth:d,maxWidth:f,scroll:v},w=If(C),T=z.useRef(),E=e=>{T.current=e.target===e.currentTarget},D=e=>{p&&p(e),T.current&&(T.current=null,m&&m(e,`backdropClick`))},O=$i(o),ee=z.useMemo(()=>({titleId:O}),[O]),te={slots:y,slotProps:b},[k,A]=q(`root`,{elementType:Lf,shouldForwardComponentProp:!0,externalForwardedProps:te,ownerState:C,className:V(w.root,l),ref:t}),[ne,j]=q(`backdrop`,{elementType:Ff,shouldForwardComponentProp:!0,externalForwardedProps:te,ownerState:C,className:w.backdrop}),[re,M]=q(`paper`,{elementType:zf,shouldForwardComponentProp:!0,externalForwardedProps:te,ownerState:C,className:w.paper,additionalProps:{elevation:24,role:_,"aria-describedby":a,"aria-labelledby":O,"aria-modal":s,tabIndex:-1,[mf]:``}}),[N,ie]=q(`container`,{elementType:Rf,externalForwardedProps:te,ownerState:C,className:w.container}),[ae,oe]=q(`transition`,{elementType:Nd,externalForwardedProps:te,ownerState:C,additionalProps:{appear:!0,in:h,timeout:x,role:`presentation`}});return(0,B.jsx)(k,{closeAfterTransition:!0,slots:{backdrop:ne},slotProps:{backdrop:{transitionDuration:x,...j}},onClose:m,open:h,onClick:D,...A,...S,children:(0,B.jsx)(ae,{...oe,children:(0,B.jsx)(N,{onMouseDown:E,...ie,children:(0,B.jsx)(re,{as:g,...M,children:(0,B.jsx)(Pf.Provider,{value:ee,children:c})})})})})});function Vf(e){return ii(`MuiDialogContent`,e)}H(`MuiDialogContent`,[`root`,`dividers`]);function Hf(e){return ii(`MuiDialogTitle`,e)}var Uf=H(`MuiDialogTitle`,[`root`]),Wf=e=>{let{classes:t,dividers:n}=e;return Ea({root:[`root`,n&&`dividers`]},Vf,t)},Gf=K(`div`,{name:`MuiDialogContent`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,n.dividers&&t.dividers]}})(Xo(({theme:e})=>({flex:`1 1 auto`,WebkitOverflowScrolling:`touch`,overflowY:`auto`,padding:`20px 24px`,variants:[{props:({ownerState:e})=>e.dividers,style:{padding:`16px 24px`,borderTop:`1px solid ${(e.vars||e).palette.divider}`,borderBottom:`1px solid ${(e.vars||e).palette.divider}`}},{props:({ownerState:e})=>!e.dividers,style:{[`.${Uf.root} + &`]:{paddingTop:0}}}]}))),Kf=z.forwardRef(function(e,t){let n=Zo({props:e,name:`MuiDialogContent`}),{className:r,dividers:i=!1,...a}=n,o={...n,dividers:i};return(0,B.jsx)(Gf,{className:V(Wf(o).root,r),ownerState:o,ref:t,...a})}),qf=e=>{let{classes:t}=e;return Ea({root:[`root`]},Hf,t)},Jf=K(fl,{name:`MuiDialogTitle`,slot:`Root`})({padding:`16px 24px`,flex:`0 0 auto`}),Yf=z.forwardRef(function(e,t){let n=Zo({props:e,name:`MuiDialogTitle`}),{className:r,id:i,...a}=n,o=n,s=qf(o),{titleId:c=i}=z.useContext(Pf);return(0,B.jsx)(Jf,{component:`h2`,className:V(s.root,r),ownerState:o,ref:t,variant:`h6`,id:i??c,...a})});function Xf(e){return`scale(${e}, ${e**2})`}var Zf={entering:{opacity:1,transform:Xf(1)},entered:{opacity:1,transform:`none`},exiting:{opacity:0,transform:Xf(.75)},exited:{opacity:0,transform:Xf(.75)}},Qf={opacity:0,transform:Xf(.75),visibility:`hidden`},$f=z.forwardRef(function(e,t){let{addEndListener:n,appear:r=!0,children:i,easing:a,in:o,onEnter:s,onEntered:c,onEntering:l,onExit:u,onExited:d,onExiting:f,style:p,timeout:m=`auto`,...h}=e,g=Ws(),_=z.useRef(),v=Io(),y=z.useRef(null),b=ms(y,id(i),t),x=Ks(y,l),S=Ks(y,(e,t)=>{Gs(e);let{duration:n,delay:r,easing:i}=Js({style:p,timeout:m,easing:a},{mode:`enter`}),o;m===`auto`?(o=v.transitions.getAutoHeightDuration(e.clientHeight),_.current=o):o=n,e.style.transition=[v.transitions.create(`opacity`,{duration:o,delay:r}),v.transitions.create(`transform`,{duration:o*.666,delay:r,easing:i})].join(`,`),s&&s(e,t)}),C=Ks(y,c),w=Ks(y,f),T=Ks(y,e=>{let{duration:t,delay:n,easing:r}=Js({style:p,timeout:m,easing:a},{mode:`exit`}),i;m===`auto`?(i=v.transitions.getAutoHeightDuration(e.clientHeight),_.current=i):i=t,e.style.transition=[v.transitions.create(`opacity`,{duration:i,delay:n}),v.transitions.create(`transform`,{duration:i*.666,delay:n||i*.333,easing:r})].join(`,`),e.style.opacity=0,e.style.transform=Xf(.75),u&&u(e)}),E=Ks(y,e=>{e.style.transition=``,d&&d(e)});return(0,B.jsx)(Os,{appear:r,in:o,nodeRef:y,onEnter:S,onEntered:C,onEntering:x,onExit:T,onExited:E,onExiting:w,addEndListener:e=>{m===`auto`&&g.start(_.current||0,e),n&&n(y.current,e)},timeout:m===`auto`?null:m,...h,children:(e,{ownerState:t,...n})=>{let r=qs(e,o,Zf,Qf,p,i.props.style);return z.cloneElement(i,{style:r,ref:b,...n})}})});$f&&($f.muiSupportAuto=!0);function ep(e){return ii(`MuiTooltip`,e)}var tp=H(`MuiTooltip`,[`popper`,`popperInteractive`,`popperArrow`,`popperClose`,`tooltip`,`tooltipArrow`,`touch`,`tooltipPlacementLeft`,`tooltipPlacementRight`,`tooltipPlacementTop`,`tooltipPlacementBottom`,`arrow`]);function np(e){return Math.round(e*1e5)/1e5}var rp=e=>{let{classes:t,disableInteractive:n,arrow:r,touch:i,placement:a}=e;return Ea({popper:[`popper`,!n&&`popperInteractive`,r&&`popperArrow`],tooltip:[`tooltip`,r&&`tooltipArrow`,i&&`touch`,`tooltipPlacement${Ko(a.split(`-`)[0])}`],arrow:[`arrow`]},ep,t)},ip=K(hd,{name:`MuiTooltip`,slot:`Popper`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.popper,!n.disableInteractive&&t.popperInteractive,n.arrow&&t.popperArrow,!n.open&&t.popperClose]}})(Xo(({theme:e})=>({zIndex:(e.vars||e).zIndex.tooltip,pointerEvents:`none`,variants:[{props:({ownerState:e,open:t})=>t&&!e.disableInteractive,style:{pointerEvents:`auto`}},{props:({ownerState:e})=>e.arrow,style:{[`&[data-popper-placement*="bottom"] .${tp.arrow}`]:{top:0,marginTop:`-0.71em`,"&::before":{transformOrigin:`0 100%`}},[`&[data-popper-placement*="top"] .${tp.arrow}`]:{bottom:0,marginBottom:`-0.71em`,"&::before":{transformOrigin:`100% 0`}},[`&[data-popper-placement*="right"] .${tp.arrow}`]:{height:`1em`,width:`0.71em`,insetInlineStart:0,marginInlineStart:`-0.71em`,"&::before":{transformOrigin:`100% 100%`}},[`&[data-popper-placement*="left"] .${tp.arrow}`]:{height:`1em`,width:`0.71em`,insetInlineEnd:0,marginInlineEnd:`-0.71em`,"&::before":{transformOrigin:`0 0`}}}}]}))),ap=K(`div`,{name:`MuiTooltip`,slot:`Tooltip`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.tooltip,n.touch&&t.touch,n.arrow&&t.tooltipArrow,t[`tooltipPlacement${Ko(n.placement.split(`-`)[0])}`]]}})(Xo(({theme:e})=>({backgroundColor:e.vars?e.vars.palette.Tooltip.bg:e.alpha(e.palette.grey[700],.92),borderRadius:(e.vars||e).shape.borderRadius,color:(e.vars||e).palette.common.white,fontFamily:e.typography.fontFamily,padding:`4px 8px`,fontSize:e.typography.pxToRem(11),maxWidth:300,margin:2,wordWrap:`break-word`,fontWeight:e.typography.fontWeightMedium,[`.${tp.popper}[data-popper-placement*="left"] &`]:{transformOrigin:`right center`,marginInlineEnd:`14px`},[`.${tp.popper}[data-popper-placement*="right"] &`]:{transformOrigin:`left center`,marginInlineStart:`14px`},[`.${tp.popper}[data-popper-placement*="top"] &`]:{transformOrigin:`center bottom`,marginBottom:`14px`},[`.${tp.popper}[data-popper-placement*="bottom"] &`]:{transformOrigin:`center top`,marginTop:`14px`},variants:[{props:({ownerState:e})=>e.arrow,style:{position:`relative`,marginBlock:0}},{props:({ownerState:e})=>e.touch,style:{padding:`8px 16px`,fontSize:e.typography.pxToRem(14),lineHeight:`${np(16/14)}em`,fontWeight:e.typography.fontWeightRegular}},{props:({ownerState:e})=>e.touch,style:{[`.${tp.popper}[data-popper-placement*="left"] &`]:{marginInlineEnd:`24px`},[`.${tp.popper}[data-popper-placement*="right"] &`]:{marginInlineStart:`24px`},[`.${tp.popper}[data-popper-placement*="top"] &`]:{marginBottom:`24px`},[`.${tp.popper}[data-popper-placement*="bottom"] &`]:{marginTop:`24px`}}}]}))),op=K(`span`,{name:`MuiTooltip`,slot:`Arrow`})(Xo(({theme:e})=>({overflow:`hidden`,position:`absolute`,width:`1em`,height:`0.71em`,boxSizing:`border-box`,color:e.vars?e.vars.palette.Tooltip.bg:e.alpha(e.palette.grey[700],.9),"&::before":{content:`""`,margin:`auto`,display:`block`,width:`100%`,height:`100%`,backgroundColor:`currentColor`,transform:`rotate(45deg)`}}))),sp=!1,cp=new Us,lp={x:0,y:0};function up(e,t){return(n,...r)=>{t&&t(n,...r),e(n,...r)}}var dp=z.forwardRef(function(e,t){let n=Zo({props:e,name:`MuiTooltip`}),{arrow:r=!1,children:i,classes:a,describeChild:o=!1,disableFocusListener:s=!1,disableHoverListener:c=!1,disableInteractive:l=!1,disableTouchListener:u=!1,enterDelay:d=100,enterNextDelay:f=0,enterTouchDelay:p=700,followCursor:m=!1,id:h,leaveDelay:g=0,leaveTouchDelay:_=1500,onClose:v,onOpen:y,open:b,placement:x=`bottom`,slotProps:S={},slots:C={},title:w,...T}=n,E=z.isValidElement(i)?i:(0,B.jsx)(`span`,{children:i}),D=Io(),[O,ee]=z.useState(),[te,k]=z.useState(null),A=z.useRef(!1),ne=l||m,j=Ws(),re=Ws(),M=Ws(),N=Ws(),[ie,ae]=us({controlled:b,default:!1,name:`Tooltip`,state:`open`}),oe=ie,se=cs(h),P=z.useRef(),F=fs(()=>{P.current!==void 0&&(document.body.style.WebkitUserSelect=P.current,P.current=void 0),N.clear()});z.useEffect(()=>F,[F]);let ce=e=>{cp.clear(),sp=!0,ae(!0),y&&!oe&&y(e)},le=fs(e=>{cp.start(800+g,()=>{sp=!1}),ae(!1),v&&oe&&v(e),j.start(D.transitions.duration.shortest,()=>{A.current=!1})}),ue=e=>{A.current&&e.type!==`touchstart`||(O&&O.removeAttribute(`title`),re.clear(),M.clear(),d||sp&&f?re.start(sp?f:d,()=>{ce(e)}):ce(e))},I=e=>{re.clear(),M.start(g,()=>{le(e)})},[,de]=z.useState(!1),L=e=>{let t=e?.target??O;if(!t||t.disabled||!ac(t)){de(!1);let n=e??new Event(`blur`);!e&&t&&(Object.defineProperty(n,"target",{value:t}),Object.defineProperty(n,"currentTarget",{value:t})),I(n)}},fe=e=>{if(O||ee(e.currentTarget),ac(e.target)){let t=e=>{e.target.disabled&&L(e),e.target.removeEventListener(`blur`,t)};e.target.addEventListener(`blur`,t),de(!0),ue(e)}},pe=e=>{A.current=!0;let t=E.props;t.onTouchStart&&t.onTouchStart(e)},me=e=>{pe(e),M.clear(),j.clear(),F(),P.current=document.body.style.WebkitUserSelect,document.body.style.WebkitUserSelect=`none`,N.start(p,()=>{document.body.style.WebkitUserSelect=P.current,ue(e)})},he=e=>{E.props.onTouchEnd&&E.props.onTouchEnd(e),F(),M.start(_,()=>{le(e)})};z.useEffect(()=>{if(!oe)return;function e(e){e.key===`Escape`&&le(e)}return document.addEventListener(`keydown`,e),()=>{document.removeEventListener(`keydown`,e)}},[le,oe]);let ge=ms(id(E),ee,t);!w&&w!==0&&(oe=!1);let _e=z.useRef(),ve=e=>{let t=E.props;t.onMouseMove&&t.onMouseMove(e),lp={x:e.clientX,y:e.clientY},_e.current&&_e.current.update()},ye={},be=typeof w==`string`;o?(ye.title=!oe&&be&&!c?w:null,ye[`aria-describedby`]=oe?se:null):(ye[`aria-label`]=be?w:null,ye[`aria-labelledby`]=oe&&!be?se:null);let R={...ye,...T,...E.props,className:V(T.className,E.props.className),onTouchStart:pe,ref:ge,...m?{onMouseMove:ve}:{}},xe={};u||(R.onTouchStart=me,R.onTouchEnd=he),c||(R.onMouseOver=up(ue,R.onMouseOver),R.onMouseLeave=up(I,R.onMouseLeave),ne||(xe.onMouseOver=ue,xe.onMouseLeave=I)),s||(R.onFocus=up(fe,R.onFocus),R.onBlur=up(L,R.onBlur),ne||(xe.onFocus=fe,xe.onBlur=L));let Se={...n,arrow:r,disableInteractive:ne,placement:x,touch:A.current},Ce=typeof S.popper==`function`?S.popper(Se):S.popper,we=z.useMemo(()=>{let e=[{name:`arrow`,enabled:!!te,options:{element:te,padding:4}}];return Ce?.popperOptions?.modifiers&&(e=e.concat(Ce.popperOptions.modifiers)),{...Ce?.popperOptions,modifiers:e}},[te,Ce?.popperOptions]),Te=rp(Se),Ee={slots:C,slotProps:{arrow:S.arrow,popper:Ce,tooltip:S.tooltip,transition:S.transition}},[De,Oe]=q(`popper`,{elementType:ip,externalForwardedProps:Ee,ownerState:Se,className:Te.popper}),[ke,Ae]=q(`transition`,{elementType:$f,externalForwardedProps:Ee,ownerState:Se}),[je,Me]=q(`tooltip`,{elementType:ap,className:Te.tooltip,externalForwardedProps:Ee,ownerState:Se}),[Ne,Pe]=q(`arrow`,{elementType:op,className:Te.arrow,externalForwardedProps:Ee,ownerState:Se,ref:k});return(0,B.jsxs)(z.Fragment,{children:[z.cloneElement(E,R),(0,B.jsx)(De,{as:hd,placement:x,anchorEl:m?{getBoundingClientRect:()=>({top:lp.y,left:lp.x,right:lp.x,bottom:lp.y,width:0,height:0})}:O,popperRef:_e,open:O?oe:!1,id:se,transition:!0,...xe,...Oe,popperOptions:we,children:({TransitionProps:e})=>(0,B.jsx)(ke,{timeout:D.transitions.duration.shorter,...e,...Ae,children:(0,B.jsxs)(je,{...Me,children:[w,r?(0,B.jsx)(Ne,{...Pe}):null]})})})]})}),fp=Na({createStyledComponent:K(`div`,{name:`MuiStack`,slot:`Root`}),useThemeProps:e=>Zo({props:e,name:`MuiStack`})}),pp=g(),mp=[`instruction`,`agent`,`skill`,`mcp`];function hp(e){return e===`instruction`?`Instructions`:e===`agent`?`Agents`:e===`skill`?`Skills`:`MCPs`}function gp({data:e,onEntityDragStart:t,onEntityDrop:n,onEntityDelete:r,onEntityClick:i}){let a=(e,t)=>{e.stopPropagation(),r(t)};return(0,B.jsx)(Ud,{variant:`providerNode`,className:[`provider-card`,e.isHub?`provider-card-hub`:``,e.isInstalled===!1?`provider-card-unavailable`:``].filter(Boolean).join(` `),elevation:0,onDragOver:t=>{e.isInstalled!==!1&&(t.preventDefault(),t.dataTransfer.dropEffect=`copy`)},onDrop:e.isInstalled===!1?void 0:t=>n(e.providerId,t),children:(0,B.jsxs)(qd,{children:[(0,B.jsxs)(fp,{direction:`row`,className:`provider-node-header`,children:[(0,B.jsxs)(fp,{direction:`row`,spacing:1,className:`floating-inline`,children:[e.iconUrl?(0,B.jsx)(Ad,{src:e.iconUrl,alt:e.title,className:`provider-node-avatar`}):null,(0,B.jsxs)(fl,{variant:`h6`,children:[e.title,e.isInstalled===!1?` (not installed)`:``]})]}),(0,B.jsx)(zd,{className:e.isInstalled===!1?`provider-node-status provider-node-status-unavailable`:`provider-node-status`})]}),(0,B.jsxs)(fp,{className:`provider-groups`,children:[mp.map(n=>{let r=e.attachedByType[n]??[];return r.length?(0,B.jsxs)(fp,{className:`provider-group`,children:[(0,B.jsx)(fl,{variant:`overline`,className:`provider-group-title`,children:hp(n)}),(0,B.jsx)(fp,{direction:`row`,className:`provider-chip-wrap`,children:r.map(r=>{let o={name:r,type:n,providerId:e.providerId};return(0,B.jsx)(Sd,{size:`small`,label:r,draggable:e.isInstalled!==!1,className:`entity-chip entity-chip-${n}`,onDragStart:e=>t(o,e),onDelete:e.isHub||e.isInstalled===!1?void 0:e=>a(e,o),onClick:()=>i(o)},`${n}-${r}`)})})]},n):null}),Object.values(e.attachedByType).some(e=>e.length>0)?null:(0,B.jsx)(fl,{variant:`body2`,color:`text.secondary`,children:`No attached entities`})]})]})})}var _p=ns((0,B.jsx)(`path`,{d:`M11.01 3.05C6.51 3.54 3 7.36 3 12c0 4.97 4.03 9 9 9 4.63 0 8.45-3.5 8.95-8 .09-.79-.78-1.42-1.54-.95-.84.54-1.84.85-2.91.85-2.98 0-5.4-2.42-5.4-5.4 0-1.06.31-2.06.84-2.89.45-.67-.04-1.63-.93-1.56`}),`DarkModeRounded`),vp=ns((0,B.jsx)(`path`,{d:`M12 7c-2.76 0-5 2.24-5 5s2.24 5 5 5 5-2.24 5-5-2.24-5-5-5M2 13h2c.55 0 1-.45 1-1s-.45-1-1-1H2c-.55 0-1 .45-1 1s.45 1 1 1m18 0h2c.55 0 1-.45 1-1s-.45-1-1-1h-2c-.55 0-1 .45-1 1s.45 1 1 1M11 2v2c0 .55.45 1 1 1s1-.45 1-1V2c0-.55-.45-1-1-1s-1 .45-1 1m0 18v2c0 .55.45 1 1 1s1-.45 1-1v-2c0-.55-.45-1-1-1s-1 .45-1 1M5.99 4.58c-.39-.39-1.03-.39-1.41 0-.39.39-.39 1.03 0 1.41l1.06 1.06c.39.39 1.03.39 1.41 0s.39-1.03 0-1.41zm12.37 12.37c-.39-.39-1.03-.39-1.41 0-.39.39-.39 1.03 0 1.41l1.06 1.06c.39.39 1.03.39 1.41 0 .39-.39.39-1.03 0-1.41zm1.06-10.96c.39-.39.39-1.03 0-1.41-.39-.39-1.03-.39-1.41 0l-1.06 1.06c-.39.39-.39 1.03 0 1.41s1.03.39 1.41 0zM7.05 18.36c.39-.39.39-1.03 0-1.41-.39-.39-1.03-.39-1.41 0l-1.06 1.06c-.39.39-.39 1.03 0 1.41s1.03.39 1.41 0z`}),`LightModeRounded`),yp=ns((0,B.jsx)(`path`,{d:`M12 3c-.55 0-1 .45-1 1v8c0 .55.45 1 1 1s1-.45 1-1V4c0-.55-.45-1-1-1m5.14 2.86c-.39.39-.38 1-.01 1.39 1.13 1.2 1.83 2.8 1.87 4.57.09 3.83-3.08 7.13-6.91 7.17C8.18 19.05 5 15.9 5 12c0-1.84.71-3.51 1.87-4.76.37-.39.37-1-.01-1.38-.4-.4-1.05-.39-1.43.02C3.98 7.42 3.07 9.47 3 11.74c-.14 4.88 3.83 9.1 8.71 9.25 5.1.16 9.29-3.93 9.29-9 0-2.37-.92-4.51-2.42-6.11-.38-.41-1.04-.42-1.44-.02`}),`PowerSettingsNewRounded`),bp=ns((0,B.jsx)(`path`,{d:`M12 4V2.21c0-.45-.54-.67-.85-.35l-2.8 2.79c-.2.2-.2.51 0 .71l2.79 2.79c.32.31.86.09.86-.36V6c3.31 0 6 2.69 6 6 0 .79-.15 1.56-.44 2.25-.15.36-.04.77.23 1.04.51.51 1.37.33 1.64-.34.37-.91.57-1.91.57-2.95 0-4.42-3.58-8-8-8m0 14c-3.31 0-6-2.69-6-6 0-.79.15-1.56.44-2.25.15-.36.04-.77-.23-1.04-.51-.51-1.37-.33-1.64.34C4.2 9.96 4 10.96 4 12c0 4.42 3.58 8 8 8v1.79c0 .45.54.67.85.35l2.79-2.79c.2-.2.2-.51 0-.71l-2.79-2.79c-.31-.31-.85-.09-.85.36z`}),`SyncRounded`);function xp(e){let{isDark:t,connected:n,onToggleTheme:r,onRefresh:i,onShutdown:a}=e;return(0,B.jsx)(Ud,{variant:`glassPill`,sx:{position:`absolute`,top:20,right:20,zIndex:12},children:(0,B.jsxs)(fp,{direction:`row`,spacing:1,children:[(0,B.jsx)(dp,{title:n?`Connected to Local System`:`Disconnected`,children:(0,B.jsx)(Yc,{color:n?`success`:`default`,size:`small`,children:(0,B.jsx)(bp,{fontSize:`small`})})}),(0,B.jsx)(dp,{title:t?`Switch to light mode`:`Switch to dark mode`,children:(0,B.jsx)(Yc,{size:`small`,onClick:r,children:t?(0,B.jsx)(vp,{fontSize:`small`}):(0,B.jsx)(_p,{fontSize:`small`})})}),(0,B.jsx)(dp,{title:`Close Visualizer`,children:(0,B.jsx)(Yc,{size:`small`,color:`error`,onClick:a,children:(0,B.jsx)(yp,{fontSize:`small`})})}),(0,B.jsx)(dp,{title:`Reload canvas config`,children:(0,B.jsx)(Yc,{size:`small`,onClick:i,children:(0,B.jsx)(bp,{fontSize:`small`})})})]})})}var Sp=1e4;function Cp(e){let t=(0,z.useMemo)(()=>e||`${window.location.protocol===`https:`?`wss:`:`ws:`}//${window.location.host}`,[e]),n=(0,z.useRef)(null),r=(0,z.useRef)(new Map),[i,a]=(0,z.useState)(!1);return(0,z.useEffect)(()=>{let e=new WebSocket(t);return n.current=e,e.onopen=()=>a(!0),e.onclose=()=>a(!1),e.onerror=()=>a(!1),e.onmessage=e=>{let t=JSON.parse(e.data);if(t.type!==`CONNECTION_CHANGED_RESULT`||!t.requestId)return;let n=r.current.get(t.requestId);n&&(window.clearTimeout(n.timeout),r.current.delete(t.requestId),t.ok?n.resolve():n.reject(Error(t.error||`Visualizer update failed`)))},()=>{e.close(),n.current=null;for(let e of r.current.values())window.clearTimeout(e.timeout),e.reject(Error(`Visualizer disconnected`));r.current.clear()}},[t]),{connected:i,send:(0,z.useCallback)(e=>{if(!n.current||n.current.readyState!==WebSocket.OPEN)return Promise.reject(Error(`Visualizer is disconnected`));let t=crypto.randomUUID(),i={type:`CONNECTION_CHANGED`,requestId:t,payload:e};return new Promise((e,a)=>{let o=window.setTimeout(()=>{r.current.delete(t),a(Error(`Visualizer update timed out`))},Sp);r.current.set(t,{resolve:e,reject:a,timeout:o}),n.current?.send(JSON.stringify(i))})},[])}}var wp=`application/wasla-provider-entity`,Tp=[`north-west`,`north`,`north-east`,`west`,`east`,`south-west`,`south`,`south-east`];function Ep(e){return[...e.entities.instructions,...e.entities.agents,...e.entities.skills,...e.entities.mcps]}function Dp(){return{instruction:[],agent:[],skill:[],mcp:[]}}function Op(e){let t=new Map(Ep(e).map(e=>[e.id,e])),n=new Map,r=e=>{let t=n.get(e);if(t)return t;let r=Dp();return n.set(e,r),r};for(let n of e.connections){let e=t.get(n.entityId);if(!e)continue;let i=r(n.providerId);i[e.type].includes(e.name)||i[e.type].push(e.name)}let i=e.providers.find(e=>e.isHub);if(i){let e=r(i.id);for(let n of t.values())e[n.type].includes(n.name)||e[n.type].push(n.name)}return n}function kp(e,t){return{providerId:e.id,title:e.title,attachedByType:t.get(e.id)??Dp(),iconUrl:e.iconUrl,isHub:e.isHub,isInstalled:e.isInstalled}}function Ap({config:e,mode:t,onToggleMode:n,onRefreshConfig:r}){let{connected:i,send:a}=Cp(e.websocketUrl),[o,s]=(0,z.useState)(()=>Op(e)),[c,l]=(0,z.useState)({open:!1,title:``,body:``}),[u,d]=(0,z.useState)(!1),[f,p]=(0,z.useState)(null),[m,h]=(0,z.useState)([]),g=(0,z.useRef)(null),_=e.providers.find(e=>e.isHub),v=e.providers.filter(e=>!e.isHub);(0,z.useEffect)(()=>{s(Op(e))},[e]),(0,z.useLayoutEffect)(()=>{let e=g.current;if(!e||!_)return;let t=()=>{let t=e.getBoundingClientRect(),n=e.querySelector(`[data-provider-slot="${_.id}"]`);if(!n)return;let r=n.getBoundingClientRect(),i=r.left-t.left+r.width/2,a=r.top-t.top+r.height/2;h(v.flatMap(n=>{let r=e.querySelector(`[data-provider-slot="${n.id}"]`);if(!r)return[];let o=r.getBoundingClientRect();return[{providerId:n.id,x1:i,y1:a,x2:o.left-t.left+o.width/2,y2:o.top-t.top+o.height/2}]}))},n=new ResizeObserver(t);n.observe(e);for(let t of e.querySelectorAll(`[data-provider-slot]`))n.observe(t);return window.addEventListener(`resize`,t),t(),()=>{n.disconnect(),window.removeEventListener(`resize`,t)}},[o,e.providers]);let y=(0,z.useCallback)((e,t,n,r)=>{s(i=>{let a=new Map(i),o=a.get(e)??Dp(),s=o[t],c=r===`add`?s.includes(n)?s:[...s,n]:s.filter(e=>e!==n);return a.set(e,{...o,[t]:c}),a})},[]),b=(0,z.useCallback)((e,t)=>{t.stopPropagation(),t.dataTransfer.setData(wp,JSON.stringify(e)),t.dataTransfer.effectAllowed=`copy`},[]),x=(0,z.useCallback)((t,n)=>{n.preventDefault(),n.stopPropagation();let i=n.dataTransfer.getData(wp);if(!i)return;let o=JSON.parse(i);o.providerId===t||t===_?.id||e.providers.find(e=>e.id===t)?.isInstalled!==!1&&(y(t,o.type,o.name,`add`),p(null),a({sourceEntity:o.name,entityType:o.type,sourceProvider:o.providerId,targetProvider:t,action:`ATTACH`}).then(r).catch(e=>{y(t,o.type,o.name,`remove`),p(e instanceof Error?e.message:String(e))}))},[e.providers,_?.id,y,r,a]),S=(0,z.useCallback)(e=>{y(e.providerId,e.type,e.name,`remove`),p(null),a({sourceEntity:e.name,entityType:e.type,sourceProvider:e.providerId,targetProvider:e.providerId,action:`DETACH`}).then(r).catch(t=>{y(e.providerId,e.type,e.name,`add`),p(t instanceof Error?t.message:String(t))})},[y,r,a]),C=(0,z.useCallback)(async e=>{try{let t=`type=${encodeURIComponent(e.type)}&name=${encodeURIComponent(e.name)}&provider=${encodeURIComponent(e.providerId)}`,n=await fetch(`/api/entity-content?${t}`);if(!n.ok)throw Error(`Failed`);let r=await n.json();l({open:!0,title:`${e.type}: ${e.name}`,body:r.content||`No content found.`})}catch{l({open:!0,title:`${e.type}: ${e.name}`,body:`Unable to load content.`})}},[]),w=(0,z.useCallback)(()=>{fetch(`/api/shutdown`,{method:`POST`,keepalive:!0}),window.close(),window.setTimeout(()=>d(!0),100)},[]),T={onEntityDragStart:b,onEntityDrop:x,onEntityDelete:S,onEntityClick:C};return u?(0,B.jsx)(zd,{className:`workspace-closed`,children:(0,B.jsx)(Ud,{variant:`glassPanel`,className:`workspace-closed-card`,children:(0,B.jsxs)(fp,{spacing:1,children:[(0,B.jsx)(fl,{variant:`h6`,children:`Visualizer closed`}),(0,B.jsx)(fl,{variant:`body2`,color:`text.secondary`,children:`The local server has stopped. You can close this tab.`})]})})}):(0,B.jsxs)(zd,{className:`workspace-shell`,children:[(0,B.jsx)(xp,{isDark:t===`dark`,connected:i,onToggleTheme:n,onRefresh:()=>void r(),onShutdown:w}),f?(0,B.jsx)(sl,{severity:`error`,onClose:()=>p(null),sx:{position:`absolute`,top:76,right:20,zIndex:12,maxWidth:520},children:f}):null,(0,B.jsxs)(zd,{ref:g,className:`workspace-stage`,children:[(0,B.jsx)(`svg`,{className:`provider-connectors`,"aria-hidden":`true`,children:m.map(e=>(0,B.jsx)(`line`,{x1:e.x1,y1:e.y1,x2:e.x2,y2:e.y2},e.providerId))}),_?(0,B.jsx)(zd,{className:`provider-slot provider-slot-center`,"data-provider-slot":_.id,children:(0,B.jsx)(gp,{data:kp(_,o),...T})}):null,v.map((e,t)=>{let n=Tp[t];return n?(0,B.jsx)(zd,{className:`provider-slot provider-slot-${n}`,"data-provider-slot":e.id,children:(0,B.jsx)(gp,{data:kp(e,o),...T})},e.id):null})]}),(0,B.jsxs)(Bf,{open:c.open,onClose:()=>l(e=>({...e,open:!1})),fullWidth:!0,maxWidth:`md`,children:[(0,B.jsx)(Yf,{children:c.title}),(0,B.jsx)(Kf,{children:(0,B.jsx)(zd,{component:`pre`,className:`entity-content-preview`,children:c.body})})]})]})}function jp({mode:e,onToggleMode:t}){let[n,r]=(0,z.useState)(null),[i,a]=(0,z.useState)(null),o=(0,z.useCallback)(async()=>{a(null);let e=window.__WASLA_VISUALIZER_CONFIG__;if(e){r(e);return}try{let e=await fetch(`/api/config`);if(!e.ok)throw Error(`Config fetch failed`);r(await e.json())}catch{r(null),a(`Cannot load workspace config. Start with: wasla ui`)}},[]);return(0,z.useEffect)(()=>{o()},[o]),n?(0,B.jsx)(Ap,{config:n,mode:e,onToggleMode:t,onRefreshConfig:o}):(0,B.jsx)(zd,{className:`workspace-loading`,children:(0,B.jsxs)(fp,{spacing:.75,className:`loading-state`,children:[(0,B.jsx)(fl,{variant:`body1`,children:i??`Loading workspace config...`}),i?(0,B.jsx)(fl,{variant:`caption`,color:`text.secondary`,children:`No demo data is used in this view.`}):null]})})}function Mp(e){let t=e===`dark`,n=t?`rgba(148, 163, 184, 0.18)`:`rgba(16, 24, 40, 0.09)`,r=t?`color-mix(in srgb, var(--mui-palette-background-paper) 80%, transparent)`:`color-mix(in srgb, var(--mui-palette-background-paper) 90%, transparent)`,i=t?`color-mix(in srgb, var(--mui-palette-background-paper) 78%, transparent)`:`color-mix(in srgb, var(--mui-palette-background-paper) 88%, transparent)`,a=t?`0 18px 46px color-mix(in srgb, #000000 38%, transparent)`:`0 8px 28px color-mix(in srgb, #101828 7%, transparent)`;return Po({cssVariables:!0,palette:{mode:e,primary:{main:t?`#7da7ff`:`#356ef3`},secondary:{main:t?`#a78bfa`:`#0891b2`},background:{default:t?`#0d1017`:`#fbfbfc`,paper:t?`#131e33`:`#ffffff`}},customGlass:{panelBg:r,panelBorder:n,softShadow:a},shape:{borderRadius:14},typography:{fontFamily:`"Sora", "IBM Plex Sans", "Segoe UI", sans-serif`},components:{MuiCssBaseline:{styleOverrides:{body:{background:t?`#0d1017`:`#fbfbfc`},".workspace-shell":{position:`relative`,minHeight:`100dvh`,overflow:`auto`,backgroundColor:`var(--mui-palette-background-default)`,backgroundImage:t?`radial-gradient(circle, rgba(255,255,255,0.12) 1px, transparent 1px)`:`radial-gradient(circle, rgba(16,24,40,0.10) 1px, transparent 1px)`,backgroundSize:`20px 20px`},".workspace-loading":{height:`100dvh`,display:`grid`,placeItems:`center`},".workspace-closed":{minHeight:`100dvh`,display:`grid`,placeItems:`center`,backgroundColor:`var(--mui-palette-background-default)`},".workspace-closed-card":{width:360,textAlign:`center`},".workspace-stage":{position:`relative`,minWidth:1260,minHeight:`100dvh`,boxSizing:`border-box`,padding:`56px 42px`,display:`grid`,gridTemplateColumns:`repeat(3, 336px)`,gridTemplateRows:`repeat(3, auto)`,alignItems:`center`,justifyContent:`center`,columnGap:88,rowGap:64},".provider-connectors":{position:`absolute`,inset:0,width:`100%`,height:`100%`,pointerEvents:`none`,overflow:`visible`},".provider-connectors line":{stroke:`color-mix(in srgb, var(--mui-palette-primary-main) 32%, var(--mui-palette-divider))`,strokeWidth:1,vectorEffect:`non-scaling-stroke`},".provider-slot":{position:`relative`,zIndex:1},".provider-slot-center":{gridColumn:2,gridRow:2,zIndex:2},".provider-slot-north-west":{gridColumn:1,gridRow:1},".provider-slot-north":{gridColumn:2,gridRow:1},".provider-slot-north-east":{gridColumn:3,gridRow:1},".provider-slot-west":{gridColumn:1,gridRow:2},".provider-slot-east":{gridColumn:3,gridRow:2},".provider-slot-south-west":{gridColumn:1,gridRow:3},".provider-slot-south":{gridColumn:2,gridRow:3},".provider-slot-south-east":{gridColumn:3,gridRow:3},".provider-card":{position:`relative`,zIndex:1},".provider-node-header":{display:`flex`,justifyContent:`space-between`,alignItems:`center`,marginBottom:20},".provider-node-avatar":{width:24,height:24},".provider-card-hub":{borderColor:`color-mix(in srgb, var(--mui-palette-primary-main) 54%, var(--mui-palette-divider))`,boxShadow:t?`0 18px 48px rgba(0,0,0,0.42), 0 0 0 1px rgba(125,167,255,0.12)`:`0 14px 42px rgba(16,24,40,0.08), 0 0 0 1px rgba(53,110,243,0.10)`},".provider-card-unavailable":{opacity:.58},".provider-node-status":{width:10,height:10,borderRadius:`50%`,backgroundColor:`var(--mui-palette-success-main)`,boxShadow:`0 0 0 8px color-mix(in srgb, var(--mui-palette-success-main) 20%, transparent)`,animation:`wasla-pulse 1.4s infinite`},".provider-node-status-unavailable":{backgroundColor:`var(--mui-palette-text-disabled)`,boxShadow:`none`,animation:`none`},".entity-node-row":{display:`flex`,alignItems:`center`,gap:8},".entity-node-label":{fontWeight:600},".entity-node-instruction":{borderLeftColor:`var(--mui-palette-info-main)`},".entity-node-agent":{borderLeftColor:`var(--mui-palette-warning-main)`},".entity-node-skill":{borderLeftColor:`var(--mui-palette-secondary-main)`},".entity-node-mcp":{borderLeftColor:`var(--mui-palette-success-main)`},".floating-row":{display:`flex`,alignItems:`center`,justifyContent:`space-between`},".floating-inline":{display:`flex`,alignItems:`center`},".floating-chip-wrap":{display:`flex`,flexWrap:`wrap`,rowGap:6},".provider-chip-wrap":{display:`flex`,flexWrap:`wrap`,gap:6},".provider-groups":{gap:14},".provider-group":{gap:6},".provider-group-title":{color:`var(--mui-palette-text-secondary)`,letterSpacing:`0.1em`,fontSize:10,lineHeight:1},".entity-content-preview":{margin:0,whiteSpace:`pre-wrap`,wordBreak:`break-word`,fontFamily:`ui-monospace, SFMono-Regular, Menlo, monospace`,fontSize:13},".loading-state":{alignItems:`center`},"@keyframes wasla-pulse":{"0%":{transform:`scale(1)`,opacity:1},"50%":{transform:`scale(1.15)`,opacity:.6},"100%":{transform:`scale(1)`,opacity:1}}}},MuiCard:{variants:[{props:{variant:`glassPanel`},style:{padding:8,borderRadius:16,backdropFilter:`blur(18px)`,backgroundColor:r,border:`1px solid ${n}`,boxShadow:a}},{props:{variant:`glassPill`},style:{borderRadius:999,padding:6,backdropFilter:`blur(18px)`,backgroundColor:i,border:`1px solid ${n}`}},{props:{variant:`providerNode`},style:{width:336,minHeight:188,borderRadius:14,border:`1px solid ${n}`,backdropFilter:`blur(20px)`,backgroundColor:r,boxShadow:a}},{props:{variant:`entityNode`},style:{minWidth:190,padding:`8px 10px`,borderLeftWidth:4,borderLeftStyle:`solid`,borderRadius:12,backdropFilter:`blur(18px)`,backgroundColor:r,boxShadow:a}},{props:{variant:`hintPanel`},style:{padding:`8px 12px`,borderRadius:16,border:`1px solid ${n}`,backdropFilter:`blur(18px)`,backgroundColor:r}}],styleOverrides:{root:{backgroundImage:`none`}}},MuiChip:{styleOverrides:{root:{height:26,borderRadius:8,border:`1px solid ${n}`,backgroundColor:t?`color-mix(in srgb, var(--mui-palette-background-paper) 82%, white 3%)`:`#f7f7f8`,"&.entity-chip":{cursor:`grab`},"&.entity-chip:active":{cursor:`grabbing`}},label:{paddingLeft:9,paddingRight:9,fontSize:11,color:`var(--mui-palette-text-secondary)`},deleteIcon:{fontSize:15,marginRight:4,color:`var(--mui-palette-text-disabled)`,"&:hover":{color:`var(--mui-palette-error-main)`}}}},MuiIconButton:{styleOverrides:{root:{"&.palette-toggle":{padding:0}}}},MuiPaper:{styleOverrides:{root:{backgroundImage:`none`}}}}})}function Np(){let[e,t]=z.useState(`light`);return(0,B.jsxs)(Go,{theme:Mp(e),children:[(0,B.jsx)(tf,{}),(0,B.jsx)(jp,{mode:e,onToggleMode:()=>t(e=>e===`light`?`dark`:`light`)})]})}(0,pp.createRoot)(document.getElementById(`root`)).render((0,B.jsx)(z.StrictMode,{children:(0,B.jsx)(Np,{})}));
|
|
Binary file
|
|
@@ -3,8 +3,9 @@
|
|
|
3
3
|
<head>
|
|
4
4
|
<meta charset="UTF-8" />
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
|
-
<
|
|
7
|
-
<
|
|
6
|
+
<link rel="icon" type="image/png" href="/favicon.png" />
|
|
7
|
+
<title>Wasla Visualizer</title>
|
|
8
|
+
<script type="module" crossorigin src="/assets/index-DF8-6vb2.js"></script>
|
|
8
9
|
</head>
|
|
9
10
|
<body>
|
|
10
11
|
<div id="root"></div>
|
package/dist/visualizer/logo.png
CHANGED
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@untitled-devs/wasla",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.2",
|
|
4
4
|
"description": "Universal synchronization layer for AI agent orchestrators",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
7
|
-
"url": "git+https://github.com/The-Untitled-Org/wasla
|
|
7
|
+
"url": "git+https://github.com/The-Untitled-Org/wasla.git"
|
|
8
8
|
},
|
|
9
|
-
"homepage": "https://the-untitled-org.github.io/wasla
|
|
9
|
+
"homepage": "https://the-untitled-org.github.io/wasla/",
|
|
10
10
|
"preferGlobal": true,
|
|
11
11
|
"type": "module",
|
|
12
12
|
"main": "dist/apps/cli/src/index.js",
|
|
13
13
|
"bin": {
|
|
14
|
-
"
|
|
14
|
+
"wasla": "dist/apps/cli/src/index.js"
|
|
15
15
|
},
|
|
16
16
|
"imports": {
|
|
17
17
|
"#adapters/*": "./dist/packages/adapters/src/*",
|