livedesk 0.1.201 → 0.1.203
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/hub/src/remote-hub.js +129 -9
- package/hub/src/server.js +45 -1
- package/package.json +2 -2
- package/web/dist/assets/icons-CFo4MnrY.js +1 -0
- package/web/dist/assets/index-DUGPp6ue.js +15 -0
- package/web/dist/assets/{index-E7mJlqTd.css → index-rxGxM3iv.css} +1 -1
- package/web/dist/assets/{react-Cdiodqh1.js → react-DBGbimXz.js} +1 -1
- package/web/dist/index.html +4 -4
- package/web/dist/assets/icons-CcFpdliC.js +0 -1
- package/web/dist/assets/index-CBwRrs3z.js +0 -12
package/hub/src/remote-hub.js
CHANGED
|
@@ -558,9 +558,26 @@ function safeText(value, maxLength = 1000) {
|
|
|
558
558
|
|
|
559
559
|
function normalizeApprovalLevel(value) {
|
|
560
560
|
const level = safeString(value, 80).toLowerCase();
|
|
561
|
+
if (level === 'read-only') {
|
|
562
|
+
return 'read-only';
|
|
563
|
+
}
|
|
561
564
|
return level === 'ai-assist' ? 'ai-assist' : 'task-only';
|
|
562
565
|
}
|
|
563
566
|
|
|
567
|
+
const SUPPORTED_AGENT_OPERATIONS = new Set([
|
|
568
|
+
'system.health',
|
|
569
|
+
'gpu.status',
|
|
570
|
+
'disk.status',
|
|
571
|
+
'process.list',
|
|
572
|
+
'service.status',
|
|
573
|
+
'diagnostics.collect'
|
|
574
|
+
]);
|
|
575
|
+
|
|
576
|
+
function normalizeAgentOperation(value) {
|
|
577
|
+
const operation = safeString(value, 80).toLowerCase();
|
|
578
|
+
return SUPPORTED_AGENT_OPERATIONS.has(operation) ? operation : '';
|
|
579
|
+
}
|
|
580
|
+
|
|
564
581
|
function normalizeRemoteInputEvent(value = {}) {
|
|
565
582
|
const input = value && typeof value === 'object' ? value : {};
|
|
566
583
|
const type = safeString(input.type || input.Type, 48);
|
|
@@ -933,6 +950,8 @@ function serializeTaskBatch(batch) {
|
|
|
933
950
|
batchId: batch.batchId,
|
|
934
951
|
title: batch.title,
|
|
935
952
|
instructionPreview: batch.instructionPreview,
|
|
953
|
+
operation: batch.operation,
|
|
954
|
+
targetQuery: batch.targetQuery,
|
|
936
955
|
approvalLevel: batch.approvalLevel,
|
|
937
956
|
status: batch.status,
|
|
938
957
|
requestedAt: batch.requestedAt,
|
|
@@ -942,6 +961,7 @@ function serializeTaskBatch(batch) {
|
|
|
942
961
|
pending: batch.pending,
|
|
943
962
|
completed: batch.completed,
|
|
944
963
|
failed: batch.failed,
|
|
964
|
+
cancelled: batch.cancelled,
|
|
945
965
|
timedOut: batch.timedOut,
|
|
946
966
|
results: Array.isArray(batch.results)
|
|
947
967
|
? batch.results.map(item => ({ ...item }))
|
|
@@ -1803,6 +1823,66 @@ export function createRemoteHub(options = {}) {
|
|
|
1803
1823
|
return listTaskBatches()[0] || null;
|
|
1804
1824
|
}
|
|
1805
1825
|
|
|
1826
|
+
function getTaskBatch(batchId) {
|
|
1827
|
+
return serializeTaskBatch(taskBatches.get(safeString(batchId, 128)) || null);
|
|
1828
|
+
}
|
|
1829
|
+
|
|
1830
|
+
function cancelTaskBatch(batchId) {
|
|
1831
|
+
const batch = taskBatches.get(safeString(batchId, 128));
|
|
1832
|
+
if (!batch) {
|
|
1833
|
+
return { ok: false, error: 'task-not-found' };
|
|
1834
|
+
}
|
|
1835
|
+
|
|
1836
|
+
for (const item of batch.results) {
|
|
1837
|
+
if (!['targeted', 'queued', 'running'].includes(item.status)) {
|
|
1838
|
+
continue;
|
|
1839
|
+
}
|
|
1840
|
+
const device = devices.get(item.deviceId);
|
|
1841
|
+
const task = device?.pendingTaskCommands?.get(item.commandId);
|
|
1842
|
+
if (task) {
|
|
1843
|
+
clearTaskTimeout(device, task.commandId);
|
|
1844
|
+
device.pendingTaskCommands.delete(task.commandId);
|
|
1845
|
+
task.status = 'cancelled';
|
|
1846
|
+
task.stage = 'Cancelled';
|
|
1847
|
+
task.updatedAt = new Date().toISOString();
|
|
1848
|
+
task.completedAt = task.updatedAt;
|
|
1849
|
+
task.error = 'cancelled-by-user';
|
|
1850
|
+
task.resultSummary = 'Cancelled by user.';
|
|
1851
|
+
syncTaskBatchFromTask(device, task);
|
|
1852
|
+
continue;
|
|
1853
|
+
}
|
|
1854
|
+
item.status = 'cancelled';
|
|
1855
|
+
item.stage = 'Cancelled';
|
|
1856
|
+
item.error = 'cancelled-by-user';
|
|
1857
|
+
item.sequence = Number(item.sequence || 0) + 1;
|
|
1858
|
+
}
|
|
1859
|
+
|
|
1860
|
+
recalculateTaskBatch(batch);
|
|
1861
|
+
return { ok: true, ...serializeTaskBatch(batch) };
|
|
1862
|
+
}
|
|
1863
|
+
|
|
1864
|
+
function retryTaskBatch(batchId, options = {}) {
|
|
1865
|
+
const batch = taskBatches.get(safeString(batchId, 128));
|
|
1866
|
+
if (!batch) {
|
|
1867
|
+
return { ok: false, error: 'task-not-found' };
|
|
1868
|
+
}
|
|
1869
|
+
const failedOnly = options.failedOnly !== false;
|
|
1870
|
+
const targetIds = batch.results
|
|
1871
|
+
.filter(item => !failedOnly || item.status === 'failed')
|
|
1872
|
+
.map(item => item.deviceId)
|
|
1873
|
+
.filter(deviceId => devices.get(deviceId)?.connected === true);
|
|
1874
|
+
if (targetIds.length === 0) {
|
|
1875
|
+
return { ok: false, error: 'no-retry-targets' };
|
|
1876
|
+
}
|
|
1877
|
+
return requestAgentTaskBatch(targetIds, {
|
|
1878
|
+
instruction: batch.instructionPreview,
|
|
1879
|
+
title: batch.title,
|
|
1880
|
+
operation: batch.operation,
|
|
1881
|
+
targetQuery: batch.targetQuery,
|
|
1882
|
+
approvalLevel: batch.approvalLevel
|
|
1883
|
+
});
|
|
1884
|
+
}
|
|
1885
|
+
|
|
1806
1886
|
function emitRemoteEvent(type, device = null, extra = {}) {
|
|
1807
1887
|
emitEvent(type, {
|
|
1808
1888
|
...extra,
|
|
@@ -2719,6 +2799,8 @@ export function createRemoteHub(options = {}) {
|
|
|
2719
2799
|
.slice(0, 500);
|
|
2720
2800
|
const now = new Date().toISOString();
|
|
2721
2801
|
const instruction = safeText(options.instruction, MAX_AGENT_TASK_CHARS);
|
|
2802
|
+
const operation = normalizeAgentOperation(options.operation);
|
|
2803
|
+
const targetQuery = safeText(options.targetQuery, 160);
|
|
2722
2804
|
const batchId = safeString(options.batchId, 128) || crypto.randomUUID();
|
|
2723
2805
|
const title = safeString(options.title, 120)
|
|
2724
2806
|
|| safeString(instruction.split(/\r?\n/)[0], 120)
|
|
@@ -2727,6 +2809,8 @@ export function createRemoteHub(options = {}) {
|
|
|
2727
2809
|
batchId,
|
|
2728
2810
|
title,
|
|
2729
2811
|
instructionPreview: safeText(instruction, 320),
|
|
2812
|
+
operation,
|
|
2813
|
+
targetQuery,
|
|
2730
2814
|
approvalLevel: normalizeApprovalLevel(options.approvalLevel),
|
|
2731
2815
|
status: targets.length > 0 ? 'running' : 'failed',
|
|
2732
2816
|
requestedAt: now,
|
|
@@ -2739,12 +2823,16 @@ export function createRemoteHub(options = {}) {
|
|
|
2739
2823
|
timedOut: 0,
|
|
2740
2824
|
results: targets.map(deviceId => ({
|
|
2741
2825
|
deviceId,
|
|
2826
|
+
deviceName: safeString(devices.get(deviceId)?.deviceName || devices.get(deviceId)?.hostname || deviceId, 160),
|
|
2742
2827
|
ok: false,
|
|
2743
2828
|
status: 'targeted',
|
|
2829
|
+
stage: 'Queued',
|
|
2830
|
+
result: '',
|
|
2744
2831
|
error: '',
|
|
2745
2832
|
commandId: '',
|
|
2746
2833
|
taskId: '',
|
|
2747
2834
|
approvalLevel: normalizeApprovalLevel(options.approvalLevel),
|
|
2835
|
+
sequence: 0,
|
|
2748
2836
|
updatedAt: now
|
|
2749
2837
|
}))
|
|
2750
2838
|
};
|
|
@@ -2768,12 +2856,16 @@ export function createRemoteHub(options = {}) {
|
|
|
2768
2856
|
if (!item) {
|
|
2769
2857
|
item = {
|
|
2770
2858
|
deviceId: id,
|
|
2859
|
+
deviceName: safeString(batch.results.find(result => result.deviceId === id)?.deviceName || id, 160),
|
|
2771
2860
|
ok: false,
|
|
2772
2861
|
status: 'targeted',
|
|
2862
|
+
stage: 'Queued',
|
|
2863
|
+
result: '',
|
|
2773
2864
|
error: '',
|
|
2774
2865
|
commandId: '',
|
|
2775
2866
|
taskId: '',
|
|
2776
2867
|
approvalLevel: batch.approvalLevel,
|
|
2868
|
+
sequence: 0,
|
|
2777
2869
|
updatedAt: new Date().toISOString()
|
|
2778
2870
|
};
|
|
2779
2871
|
batch.results.push(item);
|
|
@@ -2793,16 +2885,14 @@ export function createRemoteHub(options = {}) {
|
|
|
2793
2885
|
batch.queued = results.filter(item => item.ok === true).length;
|
|
2794
2886
|
batch.completed = results.filter(item => item.status === 'completed').length;
|
|
2795
2887
|
batch.failed = results.filter(item => item.status === 'failed' || (item.ok === false && !!item.error)).length;
|
|
2888
|
+
batch.cancelled = results.filter(item => item.status === 'cancelled').length;
|
|
2796
2889
|
batch.timedOut = results.filter(item => item.error === 'task-timeout').length;
|
|
2797
|
-
batch.pending = results.filter(item =>
|
|
2798
|
-
item.ok === true
|
|
2799
|
-
&& item.status !== 'completed'
|
|
2800
|
-
&& item.status !== 'failed').length;
|
|
2890
|
+
batch.pending = results.filter(item => ['targeted', 'queued', 'running'].includes(item.status)).length;
|
|
2801
2891
|
batch.updatedAt = new Date().toISOString();
|
|
2802
2892
|
|
|
2803
2893
|
if (batch.total === 0) {
|
|
2804
2894
|
batch.status = 'failed';
|
|
2805
|
-
} else if (batch.completed + batch.failed >= batch.total) {
|
|
2895
|
+
} else if (batch.completed + batch.failed + batch.cancelled >= batch.total) {
|
|
2806
2896
|
batch.status = batch.failed > 0 ? 'completed-with-failures' : 'completed';
|
|
2807
2897
|
} else if (batch.queued > 0) {
|
|
2808
2898
|
batch.status = 'running';
|
|
@@ -2831,10 +2921,13 @@ export function createRemoteHub(options = {}) {
|
|
|
2831
2921
|
|
|
2832
2922
|
item.ok = true;
|
|
2833
2923
|
item.status = safeString(task.status, 40) || 'queued';
|
|
2924
|
+
item.stage = safeString(task.stage, 160) || (item.status === 'running' ? 'Working' : '');
|
|
2925
|
+
item.result = safeText(task.resultSummary, MAX_AGENT_TASK_RESULT_CHARS);
|
|
2834
2926
|
item.error = safeString(task.error, 500);
|
|
2835
2927
|
item.commandId = safeString(task.commandId, 128);
|
|
2836
2928
|
item.taskId = safeString(task.taskId, 128);
|
|
2837
2929
|
item.approvalLevel = normalizeApprovalLevel(task.approvalLevel || batch.approvalLevel);
|
|
2930
|
+
item.sequence = Number(item.sequence || 0) + 1;
|
|
2838
2931
|
item.updatedAt = task.updatedAt || task.completedAt || task.sentAt || new Date().toISOString();
|
|
2839
2932
|
return recalculateTaskBatch(batch);
|
|
2840
2933
|
}
|
|
@@ -2852,10 +2945,13 @@ export function createRemoteHub(options = {}) {
|
|
|
2852
2945
|
|
|
2853
2946
|
item.ok = false;
|
|
2854
2947
|
item.status = 'failed';
|
|
2948
|
+
item.stage = 'Dispatch failed';
|
|
2949
|
+
item.result = '';
|
|
2855
2950
|
item.error = safeString(error, 500) || 'task-dispatch-failed';
|
|
2856
2951
|
item.commandId = safeString(extra.commandId, 128);
|
|
2857
2952
|
item.taskId = safeString(extra.taskId, 128);
|
|
2858
2953
|
item.approvalLevel = normalizeApprovalLevel(extra.approvalLevel || batch.approvalLevel);
|
|
2954
|
+
item.sequence = Number(item.sequence || 0) + 1;
|
|
2859
2955
|
item.updatedAt = new Date().toISOString();
|
|
2860
2956
|
return recalculateTaskBatch(batch);
|
|
2861
2957
|
}
|
|
@@ -4312,6 +4408,11 @@ export function createRemoteHub(options = {}) {
|
|
|
4312
4408
|
|
|
4313
4409
|
function requestAgentTask(deviceId, options = {}) {
|
|
4314
4410
|
const device = devices.get(String(deviceId || ''));
|
|
4411
|
+
const requestedOperation = safeString(options.operation, 80);
|
|
4412
|
+
const operation = normalizeAgentOperation(requestedOperation);
|
|
4413
|
+
if (requestedOperation && !operation) {
|
|
4414
|
+
return { ok: false, error: 'unsupported-agent-operation' };
|
|
4415
|
+
}
|
|
4315
4416
|
if (!device) {
|
|
4316
4417
|
return { ok: false, error: 'device-not-found' };
|
|
4317
4418
|
}
|
|
@@ -4338,8 +4439,11 @@ export function createRemoteHub(options = {}) {
|
|
|
4338
4439
|
taskId,
|
|
4339
4440
|
commandId,
|
|
4340
4441
|
title,
|
|
4442
|
+
operation,
|
|
4443
|
+
targetQuery: safeText(options.targetQuery, 160),
|
|
4341
4444
|
instructionPreview: safeText(instruction, 320),
|
|
4342
4445
|
status: 'completed',
|
|
4446
|
+
stage: 'Completed',
|
|
4343
4447
|
approvalLevel,
|
|
4344
4448
|
requestedAt: now,
|
|
4345
4449
|
sentAt: now,
|
|
@@ -4353,9 +4457,15 @@ export function createRemoteHub(options = {}) {
|
|
|
4353
4457
|
resultResponseId: approvalLevel === 'ai-assist'
|
|
4354
4458
|
? `synthetic-response-${taskId}`
|
|
4355
4459
|
: '',
|
|
4356
|
-
resultSummary:
|
|
4357
|
-
?
|
|
4358
|
-
|
|
4460
|
+
resultSummary: operation === 'process.list'
|
|
4461
|
+
? (safeString(options.targetQuery, 160).toLowerCase() === 'comfyui'
|
|
4462
|
+
? (device.status?.tools?.comfyui?.status === 'online'
|
|
4463
|
+
? 'ComfyUI is running.'
|
|
4464
|
+
: 'ComfyUI is not running.')
|
|
4465
|
+
: 'Process list collected.')
|
|
4466
|
+
: approvalLevel === 'ai-assist'
|
|
4467
|
+
? `Synthetic AI assist completed for ${device.deviceName}.`
|
|
4468
|
+
: `Synthetic task accepted by ${device.deviceName}.`
|
|
4359
4469
|
};
|
|
4360
4470
|
|
|
4361
4471
|
device.counters.commandsSent += 1;
|
|
@@ -4408,8 +4518,11 @@ export function createRemoteHub(options = {}) {
|
|
|
4408
4518
|
taskId,
|
|
4409
4519
|
commandId,
|
|
4410
4520
|
title,
|
|
4521
|
+
operation,
|
|
4522
|
+
targetQuery: safeText(options.targetQuery, 160),
|
|
4411
4523
|
instructionPreview: safeText(instruction, 320),
|
|
4412
4524
|
status: 'queued',
|
|
4525
|
+
stage: operation === 'process.list' ? 'Checking processes' : 'Queued',
|
|
4413
4526
|
approvalLevel,
|
|
4414
4527
|
requestedAt: now,
|
|
4415
4528
|
sentAt: now,
|
|
@@ -4422,14 +4535,17 @@ export function createRemoteHub(options = {}) {
|
|
|
4422
4535
|
resultSummary: ''
|
|
4423
4536
|
};
|
|
4424
4537
|
|
|
4538
|
+
const commandName = operation || 'agent.task';
|
|
4425
4539
|
const sent = writeJsonLine(device.socket, {
|
|
4426
4540
|
type: 'command',
|
|
4427
4541
|
commandId,
|
|
4428
|
-
command:
|
|
4542
|
+
command: commandName,
|
|
4429
4543
|
payload: {
|
|
4430
4544
|
taskId,
|
|
4431
4545
|
title,
|
|
4432
4546
|
instruction,
|
|
4547
|
+
operation,
|
|
4548
|
+
targetQuery: safeText(options.targetQuery, 160),
|
|
4433
4549
|
approvalLevel,
|
|
4434
4550
|
model: safeString(options.model, 120),
|
|
4435
4551
|
requestedAt: now
|
|
@@ -4450,6 +4566,7 @@ export function createRemoteHub(options = {}) {
|
|
|
4450
4566
|
commandId,
|
|
4451
4567
|
taskId,
|
|
4452
4568
|
title,
|
|
4569
|
+
operation,
|
|
4453
4570
|
approvalLevel
|
|
4454
4571
|
});
|
|
4455
4572
|
return { ok: true, commandId, taskId, approvalLevel };
|
|
@@ -5048,6 +5165,9 @@ export function createRemoteHub(options = {}) {
|
|
|
5048
5165
|
listDevices,
|
|
5049
5166
|
listTaskBatches,
|
|
5050
5167
|
getLatestTaskBatch,
|
|
5168
|
+
getTaskBatch,
|
|
5169
|
+
cancelTaskBatch,
|
|
5170
|
+
retryTaskBatch,
|
|
5051
5171
|
listDeviceFrames,
|
|
5052
5172
|
disconnectDevice,
|
|
5053
5173
|
sendCommand,
|
package/hub/src/server.js
CHANGED
|
@@ -1486,6 +1486,8 @@ app.post('/api/remote/devices/:deviceId/tasks', requireHubFeatureAccess, (req, r
|
|
|
1486
1486
|
taskId: req.body?.taskId,
|
|
1487
1487
|
commandId: req.body?.commandId,
|
|
1488
1488
|
approvalLevel: req.body?.approvalLevel,
|
|
1489
|
+
operation: req.body?.operation,
|
|
1490
|
+
targetQuery: req.body?.targetQuery,
|
|
1489
1491
|
model: req.body?.model
|
|
1490
1492
|
}));
|
|
1491
1493
|
});
|
|
@@ -1493,7 +1495,11 @@ app.post('/api/remote/devices/:deviceId/tasks', requireHubFeatureAccess, (req, r
|
|
|
1493
1495
|
app.post('/api/remote/tasks', requireHubFeatureAccess, (req, res) => {
|
|
1494
1496
|
noStore(res);
|
|
1495
1497
|
const requestedIds = normalizeDeviceIds(req.body?.deviceIds);
|
|
1496
|
-
const approvalLevel = req.body?.approvalLevel === 'ai-assist'
|
|
1498
|
+
const approvalLevel = req.body?.approvalLevel === 'ai-assist'
|
|
1499
|
+
? 'ai-assist'
|
|
1500
|
+
: req.body?.approvalLevel === 'read-only'
|
|
1501
|
+
? 'read-only'
|
|
1502
|
+
: 'task-only';
|
|
1497
1503
|
const devices = remoteHub.listDevices({ includeDataUrl: false });
|
|
1498
1504
|
const targetIds = requestedIds.length > 0
|
|
1499
1505
|
? requestedIds
|
|
@@ -1505,6 +1511,8 @@ app.post('/api/remote/tasks', requireHubFeatureAccess, (req, res) => {
|
|
|
1505
1511
|
instruction: req.body?.instruction,
|
|
1506
1512
|
title: req.body?.title,
|
|
1507
1513
|
approvalLevel,
|
|
1514
|
+
operation: req.body?.operation,
|
|
1515
|
+
targetQuery: req.body?.targetQuery,
|
|
1508
1516
|
model: req.body?.model,
|
|
1509
1517
|
batchId: req.body?.batchId
|
|
1510
1518
|
});
|
|
@@ -1518,6 +1526,42 @@ app.post('/api/remote/tasks', requireHubFeatureAccess, (req, res) => {
|
|
|
1518
1526
|
});
|
|
1519
1527
|
});
|
|
1520
1528
|
|
|
1529
|
+
app.get('/api/remote/tasks/:taskId', requireHubFeatureAccess, (req, res) => {
|
|
1530
|
+
noStore(res);
|
|
1531
|
+
const batch = remoteHub.getTaskBatch(req.params.taskId);
|
|
1532
|
+
if (!batch) {
|
|
1533
|
+
res.status(404).json({ ok: false, error: 'task-not-found' });
|
|
1534
|
+
return;
|
|
1535
|
+
}
|
|
1536
|
+
res.json({ ok: true, ...batch });
|
|
1537
|
+
});
|
|
1538
|
+
|
|
1539
|
+
app.get('/api/remote/tasks', requireHubFeatureAccess, (req, res) => {
|
|
1540
|
+
noStore(res);
|
|
1541
|
+
const limit = Math.max(1, Math.min(30, Number(req.query?.limit) || 30));
|
|
1542
|
+
res.json({ ok: true, tasks: remoteHub.listTaskBatches().slice(0, limit) });
|
|
1543
|
+
});
|
|
1544
|
+
|
|
1545
|
+
app.post('/api/remote/tasks/:taskId/cancel', requireHubFeatureAccess, (req, res) => {
|
|
1546
|
+
noStore(res);
|
|
1547
|
+
const result = remoteHub.cancelTaskBatch(req.params.taskId);
|
|
1548
|
+
if (!result.ok) {
|
|
1549
|
+
res.status(404).json(result);
|
|
1550
|
+
return;
|
|
1551
|
+
}
|
|
1552
|
+
res.json(result);
|
|
1553
|
+
});
|
|
1554
|
+
|
|
1555
|
+
app.post('/api/remote/tasks/:taskId/retry', requireHubFeatureAccess, (req, res) => {
|
|
1556
|
+
noStore(res);
|
|
1557
|
+
const result = remoteHub.retryTaskBatch(req.params.taskId, { failedOnly: req.body?.failedOnly !== false });
|
|
1558
|
+
if (!result.ok) {
|
|
1559
|
+
res.status(409).json(result);
|
|
1560
|
+
return;
|
|
1561
|
+
}
|
|
1562
|
+
res.json(result);
|
|
1563
|
+
});
|
|
1564
|
+
|
|
1521
1565
|
app.get('/api/remote/devices/:deviceId/thumbnail', (req, res) => {
|
|
1522
1566
|
noStore(res);
|
|
1523
1567
|
if (wantsBinaryFrame(req)) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "livedesk",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.203",
|
|
4
4
|
"description": "LiveDesk Hub and client launcher",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
},
|
|
32
32
|
"dependencies": {
|
|
33
33
|
"@ffmpeg-installer/ffmpeg": "^1.1.0",
|
|
34
|
-
"@livedesk/client": "0.1.
|
|
34
|
+
"@livedesk/client": "0.1.121",
|
|
35
35
|
"cors": "^2.8.5",
|
|
36
36
|
"express": "^4.21.2",
|
|
37
37
|
"ffmpeg-static": "^5.3.0",
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function te(i){return i&&i.__esModule&&Object.prototype.hasOwnProperty.call(i,"default")?i.default:i}var j={exports:{}},n={};var Y;function oe(){if(Y)return n;Y=1;var i=Symbol.for("react.transitional.element"),h=Symbol.for("react.portal"),p=Symbol.for("react.fragment"),l=Symbol.for("react.strict_mode"),x=Symbol.for("react.profiler"),k=Symbol.for("react.consumer"),E=Symbol.for("react.context"),M=Symbol.for("react.forward_ref"),C=Symbol.for("react.suspense"),$=Symbol.for("react.memo"),g=Symbol.for("react.lazy"),K=Symbol.for("react.activity"),S=Symbol.iterator;function G(e){return e===null||typeof e!="object"?null:(e=S&&e[S]||e["@@iterator"],typeof e=="function"?e:null)}var z={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},q=Object.assign,L={};function _(e,t,a){this.props=e,this.context=t,this.refs=L,this.updater=a||z}_.prototype.isReactComponent={},_.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},_.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function O(){}O.prototype=_.prototype;function N(e,t,a){this.props=e,this.context=t,this.refs=L,this.updater=a||z}var R=N.prototype=new O;R.constructor=N,q(R,_.prototype),R.isPureReactComponent=!0;var P=Array.isArray;function A(){}var u={H:null,A:null,T:null,S:null},V=Object.prototype.hasOwnProperty;function T(e,t,a){var r=a.ref;return{$$typeof:i,type:e,key:t,ref:r!==void 0?r:null,props:a}}function W(e,t){return T(e.type,t,e.props)}function b(e){return typeof e=="object"&&e!==null&&e.$$typeof===i}function Q(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,function(a){return t[a]})}var I=/\/+/g;function H(e,t){return typeof e=="object"&&e!==null&&e.key!=null?Q(""+e.key):t.toString(36)}function J(e){switch(e.status){case"fulfilled":return e.value;case"rejected":throw e.reason;default:switch(typeof e.status=="string"?e.then(A,A):(e.status="pending",e.then(function(t){e.status==="pending"&&(e.status="fulfilled",e.value=t)},function(t){e.status==="pending"&&(e.status="rejected",e.reason=t)})),e.status){case"fulfilled":return e.value;case"rejected":throw e.reason}}throw e}function v(e,t,a,r,c){var s=typeof e;(s==="undefined"||s==="boolean")&&(e=null);var y=!1;if(e===null)y=!0;else switch(s){case"bigint":case"string":case"number":y=!0;break;case"object":switch(e.$$typeof){case i:case h:y=!0;break;case g:return y=e._init,v(y(e._payload),t,a,r,c)}}if(y)return c=c(e),y=r===""?"."+H(e,0):r,P(c)?(a="",y!=null&&(a=y.replace(I,"$&/")+"/"),v(c,t,a,"",function(ee){return ee})):c!=null&&(b(c)&&(c=W(c,a+(c.key==null||e&&e.key===c.key?"":(""+c.key).replace(I,"$&/")+"/")+y)),t.push(c)),1;y=0;var f=r===""?".":r+":";if(P(e))for(var d=0;d<e.length;d++)r=e[d],s=f+H(r,d),y+=v(r,t,a,s,c);else if(d=G(e),typeof d=="function")for(e=d.call(e),d=0;!(r=e.next()).done;)r=r.value,s=f+H(r,d++),y+=v(r,t,a,s,c);else if(s==="object"){if(typeof e.then=="function")return v(J(e),t,a,r,c);throw t=String(e),Error("Objects are not valid as a React child (found: "+(t==="[object Object]"?"object with keys {"+Object.keys(e).join(", ")+"}":t)+"). If you meant to render a collection of children, use an array instead.")}return y}function w(e,t,a){if(e==null)return e;var r=[],c=0;return v(e,r,"","",function(s){return t.call(a,s,c++)}),r}function X(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(a){(e._status===0||e._status===-1)&&(e._status=1,e._result=a)},function(a){(e._status===0||e._status===-1)&&(e._status=2,e._result=a)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var U=typeof reportError=="function"?reportError:function(e){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var t=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof e=="object"&&e!==null&&typeof e.message=="string"?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",e);return}console.error(e)},F={map:w,forEach:function(e,t,a){w(e,function(){t.apply(this,arguments)},a)},count:function(e){var t=0;return w(e,function(){t++}),t},toArray:function(e){return w(e,function(t){return t})||[]},only:function(e){if(!b(e))throw Error("React.Children.only expected to receive a single React element child.");return e}};return n.Activity=K,n.Children=F,n.Component=_,n.Fragment=p,n.Profiler=x,n.PureComponent=N,n.StrictMode=l,n.Suspense=C,n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=u,n.__COMPILER_RUNTIME={__proto__:null,c:function(e){return u.H.useMemoCache(e)}},n.cache=function(e){return function(){return e.apply(null,arguments)}},n.cacheSignal=function(){return null},n.cloneElement=function(e,t,a){if(e==null)throw Error("The argument must be a React element, but you passed "+e+".");var r=q({},e.props),c=e.key;if(t!=null)for(s in t.key!==void 0&&(c=""+t.key),t)!V.call(t,s)||s==="key"||s==="__self"||s==="__source"||s==="ref"&&t.ref===void 0||(r[s]=t[s]);var s=arguments.length-2;if(s===1)r.children=a;else if(1<s){for(var y=Array(s),f=0;f<s;f++)y[f]=arguments[f+2];r.children=y}return T(e.type,c,r)},n.createContext=function(e){return e={$$typeof:E,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null},e.Provider=e,e.Consumer={$$typeof:k,_context:e},e},n.createElement=function(e,t,a){var r,c={},s=null;if(t!=null)for(r in t.key!==void 0&&(s=""+t.key),t)V.call(t,r)&&r!=="key"&&r!=="__self"&&r!=="__source"&&(c[r]=t[r]);var y=arguments.length-2;if(y===1)c.children=a;else if(1<y){for(var f=Array(y),d=0;d<y;d++)f[d]=arguments[d+2];c.children=f}if(e&&e.defaultProps)for(r in y=e.defaultProps,y)c[r]===void 0&&(c[r]=y[r]);return T(e,s,c)},n.createRef=function(){return{current:null}},n.forwardRef=function(e){return{$$typeof:M,render:e}},n.isValidElement=b,n.lazy=function(e){return{$$typeof:g,_payload:{_status:-1,_result:e},_init:X}},n.memo=function(e,t){return{$$typeof:$,type:e,compare:t===void 0?null:t}},n.startTransition=function(e){var t=u.T,a={};u.T=a;try{var r=e(),c=u.S;c!==null&&c(a,r),typeof r=="object"&&r!==null&&typeof r.then=="function"&&r.then(A,U)}catch(s){U(s)}finally{t!==null&&a.types!==null&&(t.types=a.types),u.T=t}},n.unstable_useCacheRefresh=function(){return u.H.useCacheRefresh()},n.use=function(e){return u.H.use(e)},n.useActionState=function(e,t,a){return u.H.useActionState(e,t,a)},n.useCallback=function(e,t){return u.H.useCallback(e,t)},n.useContext=function(e){return u.H.useContext(e)},n.useDebugValue=function(){},n.useDeferredValue=function(e,t){return u.H.useDeferredValue(e,t)},n.useEffect=function(e,t){return u.H.useEffect(e,t)},n.useEffectEvent=function(e){return u.H.useEffectEvent(e)},n.useId=function(){return u.H.useId()},n.useImperativeHandle=function(e,t,a){return u.H.useImperativeHandle(e,t,a)},n.useInsertionEffect=function(e,t){return u.H.useInsertionEffect(e,t)},n.useLayoutEffect=function(e,t){return u.H.useLayoutEffect(e,t)},n.useMemo=function(e,t){return u.H.useMemo(e,t)},n.useOptimistic=function(e,t){return u.H.useOptimistic(e,t)},n.useReducer=function(e,t,a){return u.H.useReducer(e,t,a)},n.useRef=function(e){return u.H.useRef(e)},n.useState=function(e){return u.H.useState(e)},n.useSyncExternalStore=function(e,t,a){return u.H.useSyncExternalStore(e,t,a)},n.useTransition=function(){return u.H.useTransition()},n.version="19.2.7",n}var D;function ne(){return D||(D=1,j.exports=oe()),j.exports}var m=ne();const yt=te(m);const re=i=>i.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),ae=i=>i.replace(/^([A-Z])|[\s-_]+(\w)/g,(h,p,l)=>l?l.toUpperCase():p.toLowerCase()),B=i=>{const h=ae(i);return h.charAt(0).toUpperCase()+h.slice(1)},Z=(...i)=>i.filter((h,p,l)=>!!h&&h.trim()!==""&&l.indexOf(h)===p).join(" ").trim(),ce=i=>{for(const h in i)if(h.startsWith("aria-")||h==="role"||h==="title")return!0};var se={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};const ie=m.forwardRef(({color:i="currentColor",size:h=24,strokeWidth:p=2,absoluteStrokeWidth:l,className:x="",children:k,iconNode:E,...M},C)=>m.createElement("svg",{ref:C,...se,width:h,height:h,stroke:i,strokeWidth:l?Number(p)*24/Number(h):p,className:Z("lucide",x),...!k&&!ce(M)&&{"aria-hidden":"true"},...M},[...E.map(([$,g])=>m.createElement($,g)),...Array.isArray(k)?k:[k]]));const o=(i,h)=>{const p=m.forwardRef(({className:l,...x},k)=>m.createElement(ie,{ref:k,iconNode:h,className:Z(`lucide-${re(B(i))}`,`lucide-${i}`,l),...x}));return p.displayName=B(i),p};const ue=[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]],ht=o("activity",ue);const ye=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]],dt=o("arrow-right",ye);const he=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],pt=o("arrow-up",he);const de=[["path",{d:"M3.85 8.62a4 4 0 0 1 4.78-4.77 4 4 0 0 1 6.74 0 4 4 0 0 1 4.78 4.78 4 4 0 0 1 0 6.74 4 4 0 0 1-4.77 4.78 4 4 0 0 1-6.75 0 4 4 0 0 1-4.78-4.77 4 4 0 0 1 0-6.76Z",key:"3c2336"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],lt=o("badge-check",de);const pe=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m4.9 4.9 14.2 14.2",key:"1m5liu"}]],ft=o("ban",pe);const le=[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]],kt=o("book-open",le);const fe=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],_t=o("check",fe);const ke=[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]],vt=o("chevron-left",ke);const _e=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],mt=o("chevron-right",_e);const ve=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]],xt=o("circle-alert",ve);const me=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],Mt=o("circle-check",me);const xe=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],gt=o("circle",xe);const Me=[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2",key:"116196"}]],wt=o("clipboard",Me);const ge=[["path",{d:"M12 6v6h4",key:"135r8i"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],Et=o("clock-3",ge);const we=[["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M17 20v2",key:"1rnc9c"}],["path",{d:"M17 2v2",key:"11trls"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M2 17h2",key:"7oei6x"}],["path",{d:"M2 7h2",key:"asdhe0"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"M20 17h2",key:"1fpfkl"}],["path",{d:"M20 7h2",key:"1o8tra"}],["path",{d:"M7 20v2",key:"4gnj0m"}],["path",{d:"M7 2v2",key:"1i4yhu"}],["rect",{x:"4",y:"4",width:"16",height:"16",rx:"2",key:"1vbyd7"}],["rect",{x:"8",y:"8",width:"8",height:"8",rx:"1",key:"z9xiuo"}]],Ct=o("cpu",we);const Ee=[["rect",{width:"20",height:"14",x:"2",y:"5",rx:"2",key:"ynyp8z"}],["line",{x1:"2",x2:"22",y1:"10",y2:"10",key:"1b3vmo"}]],$t=o("credit-card",Ee);const Ce=[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]],Nt=o("database",Ce);const $e=[["path",{d:"M21.54 15H17a2 2 0 0 0-2 2v4.54",key:"1djwo0"}],["path",{d:"M7 3.34V5a3 3 0 0 0 3 3a2 2 0 0 1 2 2c0 1.1.9 2 2 2a2 2 0 0 0 2-2c0-1.1.9-2 2-2h3.17",key:"1tzkfa"}],["path",{d:"M11 21.95V18a2 2 0 0 0-2-2a2 2 0 0 1-2-2v-1a2 2 0 0 0-2-2H2.05",key:"14pb5j"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],Rt=o("earth",$e);const Ne=[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M12 12v6",key:"3ahymv"}],["path",{d:"m15 15-3-3-3 3",key:"15xj92"}]],At=o("file-up",Ne);const Re=[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]],Tt=o("folder-open",Re);const Ae=[["path",{d:"M9 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v.5",key:"1dkoa9"}],["path",{d:"M12 10v4h4",key:"1czhmt"}],["path",{d:"m12 14 1.535-1.605a5 5 0 0 1 8 1.5",key:"lvuxfi"}],["path",{d:"M22 22v-4h-4",key:"1ewp4q"}],["path",{d:"m22 18-1.535 1.605a5 5 0 0 1-8-1.5",key:"14ync0"}]],bt=o("folder-sync",Ae);const Te=[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}],["path",{d:"M12 10v6",key:"1bos4e"}],["path",{d:"m9 13 3-3 3 3",key:"1pxg3c"}]],Ht=o("folder-up",Te);const be=[["line",{x1:"22",x2:"2",y1:"12",y2:"12",key:"1y58io"}],["path",{d:"M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z",key:"oot6mr"}],["line",{x1:"6",x2:"6.01",y1:"16",y2:"16",key:"sgf278"}],["line",{x1:"10",x2:"10.01",y1:"16",y2:"16",key:"1l4acy"}]],jt=o("hard-drive",be);const He=[["path",{d:"M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z",key:"1s6t7t"}],["circle",{cx:"16.5",cy:"7.5",r:".5",fill:"currentColor",key:"w0ekpg"}]],St=o("key-round",He);const je=[["rect",{width:"7",height:"7",x:"3",y:"3",rx:"1",key:"1g98yp"}],["rect",{width:"7",height:"7",x:"14",y:"3",rx:"1",key:"6d4xhi"}],["rect",{width:"7",height:"7",x:"14",y:"14",rx:"1",key:"nxv5o0"}],["rect",{width:"7",height:"7",x:"3",y:"14",rx:"1",key:"1bb6yr"}]],zt=o("layout-grid",je);const Se=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m4.93 4.93 4.24 4.24",key:"1ymg45"}],["path",{d:"m14.83 9.17 4.24-4.24",key:"1cb5xl"}],["path",{d:"m14.83 14.83 4.24 4.24",key:"q42g0n"}],["path",{d:"m9.17 14.83-4.24 4.24",key:"bqpfvv"}],["circle",{cx:"12",cy:"12",r:"4",key:"4exip2"}]],qt=o("life-buoy",Se);const ze=[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]],Lt=o("loader-circle",ze);const qe=[["circle",{cx:"12",cy:"16",r:"1",key:"1au0dj"}],["rect",{x:"3",y:"10",width:"18",height:"12",rx:"2",key:"6s8ecr"}],["path",{d:"M7 10V7a5 5 0 0 1 10 0v3",key:"1pqi11"}]],Ot=o("lock-keyhole",qe);const Le=[["path",{d:"m10 17 5-5-5-5",key:"1bsop3"}],["path",{d:"M15 12H3",key:"6jk70r"}],["path",{d:"M15 3h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4",key:"u53s6r"}]],Pt=o("log-in",Le);const Oe=[["path",{d:"m16 17 5-5-5-5",key:"1bji2h"}],["path",{d:"M21 12H9",key:"dn1m92"}],["path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4",key:"1uf3rs"}]],Vt=o("log-out",Oe);const Pe=[["path",{d:"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z",key:"1lielz"}],["path",{d:"M13 8H7",key:"14i4kc"}],["path",{d:"M17 12H7",key:"16if0g"}]],It=o("message-square-text",Pe);const Ve=[["rect",{width:"20",height:"14",x:"2",y:"3",rx:"2",key:"48i651"}],["line",{x1:"8",x2:"16",y1:"21",y2:"21",key:"1svkeh"}],["line",{x1:"12",x2:"12",y1:"17",y2:"21",key:"vw1qmm"}]],Ut=o("monitor",Ve);const Ie=[["path",{d:"M4.037 4.688a.495.495 0 0 1 .651-.651l16 6.5a.5.5 0 0 1-.063.947l-6.124 1.58a2 2 0 0 0-1.438 1.435l-1.579 6.126a.5.5 0 0 1-.947.063z",key:"edeuup"}]],Yt=o("mouse-pointer-2",Ie);const Ue=[["rect",{x:"16",y:"16",width:"6",height:"6",rx:"1",key:"4q2zg0"}],["rect",{x:"2",y:"16",width:"6",height:"6",rx:"1",key:"8cvhb9"}],["rect",{x:"9",y:"2",width:"6",height:"6",rx:"1",key:"1egb70"}],["path",{d:"M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3",key:"1jsf9p"}],["path",{d:"M12 12V8",key:"2874zd"}]],Dt=o("network",Ue);const Ye=[["polygon",{points:"6 3 20 12 6 21 6 3",key:"1oa8hb"}]],Bt=o("play",Ye);const De=[["path",{d:"M12 2v10",key:"mnfbl"}],["path",{d:"M18.4 6.6a9 9 0 1 1-12.77.04",key:"obofu9"}]],Zt=o("power",De);const Be=[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]],Kt=o("refresh-cw",Be);const Ze=[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]],Gt=o("rotate-ccw",Ze);const Ke=[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]],Wt=o("search",Ke);const Ge=[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z",key:"1ffxy3"}],["path",{d:"m21.854 2.147-10.94 10.939",key:"12cjpa"}]],Qt=o("send",Ge);const We=[["path",{d:"m10.852 14.772-.383.923",key:"11vil6"}],["path",{d:"M13.148 14.772a3 3 0 1 0-2.296-5.544l-.383-.923",key:"1v3clb"}],["path",{d:"m13.148 9.228.383-.923",key:"t2zzyc"}],["path",{d:"m13.53 15.696-.382-.924a3 3 0 1 1-2.296-5.544",key:"1bxfiv"}],["path",{d:"m14.772 10.852.923-.383",key:"k9m8cz"}],["path",{d:"m14.772 13.148.923.383",key:"1xvhww"}],["path",{d:"M4.5 10H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v4a2 2 0 0 1-2 2h-.5",key:"tn8das"}],["path",{d:"M4.5 14H4a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-4a2 2 0 0 0-2-2h-.5",key:"1g2pve"}],["path",{d:"M6 18h.01",key:"uhywen"}],["path",{d:"M6 6h.01",key:"1utrut"}],["path",{d:"m9.228 10.852-.923-.383",key:"1wtb30"}],["path",{d:"m9.228 13.148-.923.383",key:"1a830x"}]],Jt=o("server-cog",We);const Qe=[["rect",{width:"20",height:"8",x:"2",y:"2",rx:"2",ry:"2",key:"ngkwjq"}],["rect",{width:"20",height:"8",x:"2",y:"14",rx:"2",ry:"2",key:"iecqi9"}],["line",{x1:"6",x2:"6.01",y1:"6",y2:"6",key:"16zg32"}],["line",{x1:"6",x2:"6.01",y1:"18",y2:"18",key:"nzw8ys"}]],Xt=o("server",Qe);const Je=[["path",{d:"M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.1a2 2 0 0 1 1 1.72v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.39a2 2 0 0 0-.73-2.73l-.15-.08a2 2 0 0 1-1-1.74v-.5a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2z",key:"1qme2f"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]],Ft=o("settings",Je);const Xe=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"M12 8v4",key:"1got3b"}],["path",{d:"M12 16h.01",key:"1drbdi"}]],e1=o("shield-alert",Xe);const Fe=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],t1=o("shield-check",Fe);const et=[["line",{x1:"21",x2:"14",y1:"4",y2:"4",key:"obuewd"}],["line",{x1:"10",x2:"3",y1:"4",y2:"4",key:"1q6298"}],["line",{x1:"21",x2:"12",y1:"12",y2:"12",key:"1iu8h1"}],["line",{x1:"8",x2:"3",y1:"12",y2:"12",key:"ntss68"}],["line",{x1:"21",x2:"16",y1:"20",y2:"20",key:"14d8ph"}],["line",{x1:"12",x2:"3",y1:"20",y2:"20",key:"m0wm8r"}],["line",{x1:"14",x2:"14",y1:"2",y2:"6",key:"14e1ph"}],["line",{x1:"8",x2:"8",y1:"10",y2:"14",key:"1i6ji0"}],["line",{x1:"16",x2:"16",y1:"18",y2:"22",key:"1lctlv"}]],o1=o("sliders-horizontal",et);const tt=[["path",{d:"M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z",key:"4pj2yx"}],["path",{d:"M20 3v4",key:"1olli1"}],["path",{d:"M22 5h-4",key:"1gvqau"}],["path",{d:"M4 17v2",key:"vumght"}],["path",{d:"M5 18H3",key:"zchphs"}]],n1=o("sparkles",tt);const ot=[["path",{d:"M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z",key:"r04s7s"}]],r1=o("star",ot);const nt=[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]],a1=o("terminal",nt);const rt=[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}],["line",{x1:"10",x2:"10",y1:"11",y2:"17",key:"1uufr5"}],["line",{x1:"14",x2:"14",y1:"11",y2:"17",key:"xtxkd"}]],c1=o("trash-2",rt);const at=[["circle",{cx:"10",cy:"7",r:"1",key:"dypaad"}],["circle",{cx:"4",cy:"20",r:"1",key:"22iqad"}],["path",{d:"M4.7 19.3 19 5",key:"1enqfc"}],["path",{d:"m21 3-3 1 2 2Z",key:"d3ov82"}],["path",{d:"M9.26 7.68 5 12l2 5",key:"1esawj"}],["path",{d:"m10 14 5 2 3.5-3.5",key:"v8oal5"}],["path",{d:"m18 12 1-1 1 1-1 1Z",key:"1bh22v"}]],s1=o("usb",at);const ct=[["path",{d:"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2",key:"1yyitq"}],["path",{d:"M16 3.128a4 4 0 0 1 0 7.744",key:"16gr8j"}],["path",{d:"M22 21v-2a4 4 0 0 0-3-3.87",key:"kshegd"}],["circle",{cx:"9",cy:"7",r:"4",key:"nufk8"}]],i1=o("users",ct);const st=[["path",{d:"M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z",key:"uqj9uw"}],["path",{d:"M16 9a5 5 0 0 1 0 6",key:"1q6k2b"}],["path",{d:"M19.364 18.364a9 9 0 0 0 0-12.728",key:"ijwkga"}]],u1=o("volume-2",st);const it=[["path",{d:"M12 20h.01",key:"zekei9"}],["path",{d:"M2 8.82a15 15 0 0 1 20 0",key:"dnpr2z"}],["path",{d:"M5 12.859a10 10 0 0 1 14 0",key:"1x1e6c"}],["path",{d:"M8.5 16.429a5 5 0 0 1 7 0",key:"1bycff"}]],y1=o("wifi",it);const ut=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],h1=o("x",ut);export{lt as $,pt as A,ft as B,xt as C,a1 as D,kt as E,At as F,$t as G,jt as H,Nt as I,Ft as J,St as K,Ot as L,Ut as M,Dt as N,Pt as O,Vt as P,dt as Q,Kt as R,o1 as S,c1 as T,s1 as U,Rt as V,Xt as W,h1 as X,y1 as Y,t1 as Z,wt as _,m as a,u1 as a0,vt as a1,Bt as a2,Zt as a3,Ht as b,Lt as c,mt as d,e1 as e,i1 as f,Mt as g,bt as h,Qt as i,Tt as j,It as k,_t as l,yt as m,gt as n,Gt as o,n1 as p,Wt as q,ne as r,Et as s,r1 as t,qt as u,Ct as v,Jt as w,ht as x,zt as y,Yt as z};
|