simvyn 2.6.2 → 2.6.3
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/dist/dashboard/assets/{index-DPTLVb11.css → index-CdpK-4e0.css} +80 -0
- package/dist/dashboard/assets/{index-CV-ugcyG.js → index-QWG80lyd.js} +38 -5
- package/dist/dashboard/assets/{index-CV-ugcyG.js.map → index-QWG80lyd.js.map} +1 -1
- package/dist/dashboard/index.html +2 -2
- package/package.json +1 -1
|
@@ -677,6 +677,14 @@
|
|
|
677
677
|
height: calc(var(--spacing) * 48);
|
|
678
678
|
}
|
|
679
679
|
|
|
680
|
+
.h-\[14px\] {
|
|
681
|
+
height: 14px;
|
|
682
|
+
}
|
|
683
|
+
|
|
684
|
+
.h-\[18px\] {
|
|
685
|
+
height: 18px;
|
|
686
|
+
}
|
|
687
|
+
|
|
680
688
|
.h-\[calc\(100vh-240px\)\] {
|
|
681
689
|
height: calc(100vh - 240px);
|
|
682
690
|
}
|
|
@@ -793,10 +801,18 @@
|
|
|
793
801
|
width: calc(var(--spacing) * 84);
|
|
794
802
|
}
|
|
795
803
|
|
|
804
|
+
.w-\[14px\] {
|
|
805
|
+
width: 14px;
|
|
806
|
+
}
|
|
807
|
+
|
|
796
808
|
.w-\[30\%\] {
|
|
797
809
|
width: 30%;
|
|
798
810
|
}
|
|
799
811
|
|
|
812
|
+
.w-\[32px\] {
|
|
813
|
+
width: 32px;
|
|
814
|
+
}
|
|
815
|
+
|
|
800
816
|
.w-\[56px\] {
|
|
801
817
|
width: 56px;
|
|
802
818
|
}
|
|
@@ -886,6 +902,16 @@
|
|
|
886
902
|
translate: var(--tw-translate-x) var(--tw-translate-y);
|
|
887
903
|
}
|
|
888
904
|
|
|
905
|
+
.translate-x-\[2px\] {
|
|
906
|
+
--tw-translate-x: 2px;
|
|
907
|
+
translate: var(--tw-translate-x) var(--tw-translate-y);
|
|
908
|
+
}
|
|
909
|
+
|
|
910
|
+
.translate-x-\[16px\] {
|
|
911
|
+
--tw-translate-x: 16px;
|
|
912
|
+
translate: var(--tw-translate-x) var(--tw-translate-y);
|
|
913
|
+
}
|
|
914
|
+
|
|
889
915
|
.-translate-y-1\/2 {
|
|
890
916
|
--tw-translate-y: calc(calc(1 / 2 * 100%) * -1);
|
|
891
917
|
translate: var(--tw-translate-x) var(--tw-translate-y);
|
|
@@ -1307,6 +1333,16 @@
|
|
|
1307
1333
|
border-color: var(--color-text-secondary);
|
|
1308
1334
|
}
|
|
1309
1335
|
|
|
1336
|
+
.border-white\/5 {
|
|
1337
|
+
border-color: #ffffff0d;
|
|
1338
|
+
}
|
|
1339
|
+
|
|
1340
|
+
@supports (color: color-mix(in lab, red, red)) {
|
|
1341
|
+
.border-white\/5 {
|
|
1342
|
+
border-color: color-mix(in oklab, var(--color-white) 5%, transparent);
|
|
1343
|
+
}
|
|
1344
|
+
}
|
|
1345
|
+
|
|
1310
1346
|
.border-white\/8 {
|
|
1311
1347
|
border-color: #ffffff14;
|
|
1312
1348
|
}
|
|
@@ -1373,6 +1409,16 @@
|
|
|
1373
1409
|
}
|
|
1374
1410
|
}
|
|
1375
1411
|
|
|
1412
|
+
.bg-accent-blue\/40 {
|
|
1413
|
+
background-color: #4fa8e166;
|
|
1414
|
+
}
|
|
1415
|
+
|
|
1416
|
+
@supports (color: color-mix(in lab, red, red)) {
|
|
1417
|
+
.bg-accent-blue\/40 {
|
|
1418
|
+
background-color: color-mix(in oklab, var(--color-accent-blue) 40%, transparent);
|
|
1419
|
+
}
|
|
1420
|
+
}
|
|
1421
|
+
|
|
1376
1422
|
.bg-amber-500\/15 {
|
|
1377
1423
|
background-color: #f99c0026;
|
|
1378
1424
|
}
|
|
@@ -1519,6 +1565,16 @@
|
|
|
1519
1565
|
background-color: var(--color-text-muted);
|
|
1520
1566
|
}
|
|
1521
1567
|
|
|
1568
|
+
.bg-text-muted\/20 {
|
|
1569
|
+
background-color: #54555833;
|
|
1570
|
+
}
|
|
1571
|
+
|
|
1572
|
+
@supports (color: color-mix(in lab, red, red)) {
|
|
1573
|
+
.bg-text-muted\/20 {
|
|
1574
|
+
background-color: color-mix(in oklab, var(--color-text-muted) 20%, transparent);
|
|
1575
|
+
}
|
|
1576
|
+
}
|
|
1577
|
+
|
|
1522
1578
|
.bg-text-muted\/50 {
|
|
1523
1579
|
background-color: #54555880;
|
|
1524
1580
|
}
|
|
@@ -1529,6 +1585,16 @@
|
|
|
1529
1585
|
}
|
|
1530
1586
|
}
|
|
1531
1587
|
|
|
1588
|
+
.bg-text-muted\/60 {
|
|
1589
|
+
background-color: #54555899;
|
|
1590
|
+
}
|
|
1591
|
+
|
|
1592
|
+
@supports (color: color-mix(in lab, red, red)) {
|
|
1593
|
+
.bg-text-muted\/60 {
|
|
1594
|
+
background-color: color-mix(in oklab, var(--color-text-muted) 60%, transparent);
|
|
1595
|
+
}
|
|
1596
|
+
}
|
|
1597
|
+
|
|
1532
1598
|
.bg-transparent {
|
|
1533
1599
|
background-color: #0000;
|
|
1534
1600
|
}
|
|
@@ -1914,6 +1980,16 @@
|
|
|
1914
1980
|
}
|
|
1915
1981
|
}
|
|
1916
1982
|
|
|
1983
|
+
.text-text-muted\/60 {
|
|
1984
|
+
color: #54555899;
|
|
1985
|
+
}
|
|
1986
|
+
|
|
1987
|
+
@supports (color: color-mix(in lab, red, red)) {
|
|
1988
|
+
.text-text-muted\/60 {
|
|
1989
|
+
color: color-mix(in oklab, var(--color-text-muted) 60%, transparent);
|
|
1990
|
+
}
|
|
1991
|
+
}
|
|
1992
|
+
|
|
1917
1993
|
.text-text-primary {
|
|
1918
1994
|
color: var(--color-text-primary);
|
|
1919
1995
|
}
|
|
@@ -2090,6 +2166,10 @@
|
|
|
2090
2166
|
border-color: var(--color-glass-border-hover);
|
|
2091
2167
|
}
|
|
2092
2168
|
|
|
2169
|
+
.hover\:bg-\[rgba\(255\,255\,255\,0\.05\)\]:hover {
|
|
2170
|
+
background-color: #ffffff0d;
|
|
2171
|
+
}
|
|
2172
|
+
|
|
2093
2173
|
.hover\:bg-\[rgba\(255\,255\,255\,0\.08\)\]:hover {
|
|
2094
2174
|
background-color: #ffffff14;
|
|
2095
2175
|
}
|
|
@@ -30529,6 +30529,7 @@ function StateIndicator({ state }) {
|
|
|
30529
30529
|
}
|
|
30530
30530
|
function DeviceSelector() {
|
|
30531
30531
|
const [open, setOpen] = reactExports.useState(false);
|
|
30532
|
+
const [showAll, setShowAll] = reactExports.useState(false);
|
|
30532
30533
|
const [contextMenu, setContextMenu] = reactExports.useState(null);
|
|
30533
30534
|
const ref = reactExports.useRef(null);
|
|
30534
30535
|
const devices = useDeviceStore((s) => s.devices);
|
|
@@ -30545,7 +30546,10 @@ function DeviceSelector() {
|
|
|
30545
30546
|
toast(`${name} disconnected`, { description: "Physical device removed" });
|
|
30546
30547
|
}, []);
|
|
30547
30548
|
useWsListener("devices", "device-disconnected", handleDeviceDisconnected);
|
|
30548
|
-
const
|
|
30549
|
+
const selectedSet = new Set(selectedDeviceIds);
|
|
30550
|
+
const filteredDevices = showAll ? devices : devices.filter((d) => d.state === "booted" || selectedSet.has(d.id));
|
|
30551
|
+
const hiddenCount = devices.length - filteredDevices.length;
|
|
30552
|
+
const groups = groupDevices(filteredDevices);
|
|
30549
30553
|
reactExports.useEffect(() => {
|
|
30550
30554
|
if (!isMultiSelect && selectedDeviceIds.length > 1) {
|
|
30551
30555
|
truncateToFirst();
|
|
@@ -30573,7 +30577,6 @@ function DeviceSelector() {
|
|
|
30573
30577
|
e.preventDefault();
|
|
30574
30578
|
setContextMenu({ x: e.clientX, y: e.clientY, deviceId });
|
|
30575
30579
|
};
|
|
30576
|
-
const selectedSet = new Set(selectedDeviceIds);
|
|
30577
30580
|
const firstDevice = devices.find((d) => d.id === selectedDeviceIds[0]);
|
|
30578
30581
|
let label;
|
|
30579
30582
|
if (selectedDeviceIds.length === 0) {
|
|
@@ -30588,7 +30591,10 @@ function DeviceSelector() {
|
|
|
30588
30591
|
"button",
|
|
30589
30592
|
{
|
|
30590
30593
|
type: "button",
|
|
30591
|
-
onClick: () =>
|
|
30594
|
+
onClick: () => {
|
|
30595
|
+
if (!open) setShowAll(false);
|
|
30596
|
+
setOpen(!open);
|
|
30597
|
+
},
|
|
30592
30598
|
className: "glass-button flex items-center gap-2 px-3 py-1.5 text-sm",
|
|
30593
30599
|
children: [
|
|
30594
30600
|
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { children: label }),
|
|
@@ -30609,6 +30615,29 @@ function DeviceSelector() {
|
|
|
30609
30615
|
}
|
|
30610
30616
|
),
|
|
30611
30617
|
open && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "glass-panel absolute top-full right-0 z-50 mt-2 w-84 max-h-96 overflow-y-auto p-1 shadow-xl shadow-black/30 !backdrop-blur-2xl !bg-[rgba(30,30,45,0.6)]", children: [
|
|
30618
|
+
devices.length > 0 && /* @__PURE__ */ jsxRuntimeExports.jsxs(
|
|
30619
|
+
"button",
|
|
30620
|
+
{
|
|
30621
|
+
type: "button",
|
|
30622
|
+
onClick: () => setShowAll(!showAll),
|
|
30623
|
+
className: "flex w-full items-center justify-between border-b border-white/5 px-3 py-2 text-xs text-text-muted hover:bg-[rgba(255,255,255,0.05)] cursor-pointer",
|
|
30624
|
+
children: [
|
|
30625
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("span", { children: showAll ? "Showing all devices" : hiddenCount > 0 ? `Show ${hiddenCount} inactive device${hiddenCount === 1 ? "" : "s"}` : "Show inactive devices" }),
|
|
30626
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
30627
|
+
"span",
|
|
30628
|
+
{
|
|
30629
|
+
className: `relative inline-flex h-[18px] w-[32px] shrink-0 items-center rounded-full transition-colors ${showAll ? "bg-accent-blue/40" : "bg-text-muted/20"}`,
|
|
30630
|
+
children: /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
30631
|
+
"span",
|
|
30632
|
+
{
|
|
30633
|
+
className: `inline-block h-[14px] w-[14px] rounded-full transition-transform ${showAll ? "translate-x-[16px] bg-accent-blue" : "translate-x-[2px] bg-text-muted/60"}`
|
|
30634
|
+
}
|
|
30635
|
+
)
|
|
30636
|
+
}
|
|
30637
|
+
)
|
|
30638
|
+
]
|
|
30639
|
+
}
|
|
30640
|
+
),
|
|
30612
30641
|
Object.entries(groups).map(([platform, devs]) => /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { children: [
|
|
30613
30642
|
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "px-3 py-1 text-[10px] font-semibold uppercase tracking-wider text-text-muted", children: platform }),
|
|
30614
30643
|
devs.map((d) => {
|
|
@@ -30674,6 +30703,10 @@ function DeviceSelector() {
|
|
|
30674
30703
|
);
|
|
30675
30704
|
})
|
|
30676
30705
|
] }, platform)),
|
|
30706
|
+
filteredDevices.length === 0 && devices.length > 0 && /* @__PURE__ */ jsxRuntimeExports.jsxs("div", { className: "px-3 py-4 text-center", children: [
|
|
30707
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "text-sm text-text-muted", children: "No active devices" }),
|
|
30708
|
+
/* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "mt-1 text-xs text-text-muted/60", children: "Use the toggle above to show inactive devices" })
|
|
30709
|
+
] }),
|
|
30677
30710
|
devices.length === 0 && /* @__PURE__ */ jsxRuntimeExports.jsx("div", { className: "px-3 py-4 text-center text-sm text-text-muted", children: "No devices detected" })
|
|
30678
30711
|
] }),
|
|
30679
30712
|
contextMenu && /* @__PURE__ */ jsxRuntimeExports.jsx(
|
|
@@ -52380,7 +52413,7 @@ function ToolSettingsPanel() {
|
|
|
52380
52413
|
const [copied, setCopied] = reactExports.useState(false);
|
|
52381
52414
|
const devices = useDeviceStore((s) => s.devices);
|
|
52382
52415
|
const modules = useModuleStore((s) => s.modules);
|
|
52383
|
-
const version = "2.6.
|
|
52416
|
+
const version = "2.6.3";
|
|
52384
52417
|
const fetchStorage = reactExports.useCallback(() => {
|
|
52385
52418
|
fetch("/api/tool-settings/storage").then((r) => r.json()).then((data) => setStorage(data)).catch(() => {
|
|
52386
52419
|
});
|
|
@@ -53729,4 +53762,4 @@ function App() {
|
|
|
53729
53762
|
clientExports.createRoot(document.getElementById("root")).render(
|
|
53730
53763
|
/* @__PURE__ */ jsxRuntimeExports.jsx(reactExports.StrictMode, { children: /* @__PURE__ */ jsxRuntimeExports.jsx(App, {}) })
|
|
53731
53764
|
);
|
|
53732
|
-
//# sourceMappingURL=index-
|
|
53765
|
+
//# sourceMappingURL=index-QWG80lyd.js.map
|