@vllnt/ui 0.2.1-canary.b3f1dff → 0.2.1-canary.bb791f1
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/components/alert-pulse/alert-pulse.js +93 -0
- package/dist/components/alert-pulse/index.js +6 -0
- package/dist/components/context-lens/context-lens.js +98 -0
- package/dist/components/context-lens/index.js +6 -0
- package/dist/components/floating-toolbar/floating-toolbar.js +66 -0
- package/dist/components/floating-toolbar/index.js +6 -0
- package/dist/components/follow-mode/follow-mode.js +89 -0
- package/dist/components/follow-mode/index.js +6 -0
- package/dist/components/handoff-beacon/handoff-beacon.js +78 -0
- package/dist/components/handoff-beacon/index.js +6 -0
- package/dist/components/index.js +68 -0
- package/dist/components/jarvis-dock/index.js +6 -0
- package/dist/components/jarvis-dock/jarvis-dock.js +98 -0
- package/dist/components/multi-select-lasso/index.js +6 -0
- package/dist/components/multi-select-lasso/multi-select-lasso.js +76 -0
- package/dist/components/object-inspector/index.js +6 -0
- package/dist/components/object-inspector/object-inspector.js +136 -0
- package/dist/components/policy-delivery-panel/index.js +6 -0
- package/dist/components/policy-delivery-panel/policy-delivery-panel.js +99 -0
- package/dist/components/property-section/index.js +6 -0
- package/dist/components/property-section/property-section.js +101 -0
- package/dist/components/relationship-inspector/index.js +6 -0
- package/dist/components/relationship-inspector/relationship-inspector.js +102 -0
- package/dist/components/routing-assignment-panel/index.js +6 -0
- package/dist/components/routing-assignment-panel/routing-assignment-panel.js +122 -0
- package/dist/components/runtime-overview-panel/index.js +6 -0
- package/dist/components/runtime-overview-panel/runtime-overview-panel.js +89 -0
- package/dist/components/selection-halo/index.js +6 -0
- package/dist/components/selection-halo/selection-halo.js +72 -0
- package/dist/components/snap-guides/index.js +6 -0
- package/dist/components/snap-guides/snap-guides.js +45 -0
- package/dist/components/sticky-metric/index.js +6 -0
- package/dist/components/sticky-metric/sticky-metric.js +83 -0
- package/dist/components/threshold-ring/index.js +6 -0
- package/dist/components/threshold-ring/threshold-ring.js +160 -0
- package/dist/index.d.ts +1248 -12
- package/package.json +1 -1
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { forwardRef } from "react";
|
|
4
|
+
import { cn } from "../../lib/utils";
|
|
5
|
+
const SEVERITY_STROKE = {
|
|
6
|
+
error: "stroke-red-500",
|
|
7
|
+
info: "stroke-blue-500",
|
|
8
|
+
warn: "stroke-amber-500"
|
|
9
|
+
};
|
|
10
|
+
const SEVERITY_FILL = {
|
|
11
|
+
error: "fill-red-500/20",
|
|
12
|
+
info: "fill-blue-500/20",
|
|
13
|
+
warn: "fill-amber-500/20"
|
|
14
|
+
};
|
|
15
|
+
const SEVERITY_LABEL = {
|
|
16
|
+
error: "Error",
|
|
17
|
+
info: "Info",
|
|
18
|
+
warn: "Warning"
|
|
19
|
+
};
|
|
20
|
+
const safeRadius = (value) => value < 6 ? 6 : value;
|
|
21
|
+
const AlertPulse = forwardRef(
|
|
22
|
+
(props, ref) => {
|
|
23
|
+
const {
|
|
24
|
+
className,
|
|
25
|
+
cx,
|
|
26
|
+
cy,
|
|
27
|
+
labels,
|
|
28
|
+
radius = 36,
|
|
29
|
+
reducedMotion = false,
|
|
30
|
+
severity = "warn",
|
|
31
|
+
...rest
|
|
32
|
+
} = props;
|
|
33
|
+
const r = safeRadius(radius);
|
|
34
|
+
const ariaLabel = labels?.region ?? SEVERITY_LABEL[severity];
|
|
35
|
+
const size = r * 2 + 24;
|
|
36
|
+
return /* @__PURE__ */ jsxs(
|
|
37
|
+
"svg",
|
|
38
|
+
{
|
|
39
|
+
"aria-label": ariaLabel,
|
|
40
|
+
className: cn(
|
|
41
|
+
"pointer-events-none absolute z-20 overflow-visible",
|
|
42
|
+
className
|
|
43
|
+
),
|
|
44
|
+
"data-alert-pulse": true,
|
|
45
|
+
"data-alert-severity": severity,
|
|
46
|
+
height: size,
|
|
47
|
+
ref,
|
|
48
|
+
role: "img",
|
|
49
|
+
style: {
|
|
50
|
+
left: cx - size / 2,
|
|
51
|
+
top: cy - size / 2
|
|
52
|
+
},
|
|
53
|
+
width: size,
|
|
54
|
+
...rest,
|
|
55
|
+
children: [
|
|
56
|
+
/* @__PURE__ */ jsx(
|
|
57
|
+
"circle",
|
|
58
|
+
{
|
|
59
|
+
className: cn("origin-center", SEVERITY_STROKE[severity]),
|
|
60
|
+
cx: size / 2,
|
|
61
|
+
cy: size / 2,
|
|
62
|
+
fill: "none",
|
|
63
|
+
r,
|
|
64
|
+
strokeOpacity: 0.7,
|
|
65
|
+
strokeWidth: 2
|
|
66
|
+
}
|
|
67
|
+
),
|
|
68
|
+
/* @__PURE__ */ jsx(
|
|
69
|
+
"circle",
|
|
70
|
+
{
|
|
71
|
+
className: cn(
|
|
72
|
+
"origin-center",
|
|
73
|
+
SEVERITY_STROKE[severity],
|
|
74
|
+
SEVERITY_FILL[severity],
|
|
75
|
+
reducedMotion ? null : "animate-ping"
|
|
76
|
+
),
|
|
77
|
+
cx: size / 2,
|
|
78
|
+
cy: size / 2,
|
|
79
|
+
"data-alert-pulse-ring": true,
|
|
80
|
+
r,
|
|
81
|
+
strokeOpacity: 0.4,
|
|
82
|
+
strokeWidth: 2
|
|
83
|
+
}
|
|
84
|
+
)
|
|
85
|
+
]
|
|
86
|
+
}
|
|
87
|
+
);
|
|
88
|
+
}
|
|
89
|
+
);
|
|
90
|
+
AlertPulse.displayName = "AlertPulse";
|
|
91
|
+
export {
|
|
92
|
+
AlertPulse
|
|
93
|
+
};
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { forwardRef, useId } from "react";
|
|
4
|
+
import { cn } from "../../lib/utils";
|
|
5
|
+
const DEFAULT_LABELS = {
|
|
6
|
+
region: "Context lens"
|
|
7
|
+
};
|
|
8
|
+
const clamp01 = (value) => {
|
|
9
|
+
if (value < 0) {
|
|
10
|
+
return 0;
|
|
11
|
+
}
|
|
12
|
+
if (value > 1) {
|
|
13
|
+
return 1;
|
|
14
|
+
}
|
|
15
|
+
return value;
|
|
16
|
+
};
|
|
17
|
+
const safeRadius = (value) => value < 0 ? 0 : value;
|
|
18
|
+
const ContextLens = forwardRef(
|
|
19
|
+
(props, ref) => {
|
|
20
|
+
const { className, focus, labels, opacity = 0.55, ...rest } = props;
|
|
21
|
+
const maskId = useId();
|
|
22
|
+
if (!focus) {
|
|
23
|
+
return null;
|
|
24
|
+
}
|
|
25
|
+
const resolvedLabels = { ...DEFAULT_LABELS, ...labels };
|
|
26
|
+
const inner = safeRadius(focus.inner);
|
|
27
|
+
const outer = safeRadius(Math.max(focus.outer, inner));
|
|
28
|
+
const fillOpacity = clamp01(opacity);
|
|
29
|
+
return /* @__PURE__ */ jsxs(
|
|
30
|
+
"svg",
|
|
31
|
+
{
|
|
32
|
+
"aria-hidden": "true",
|
|
33
|
+
"aria-label": resolvedLabels.region,
|
|
34
|
+
className: cn(
|
|
35
|
+
"pointer-events-none absolute inset-0 z-20 h-full w-full",
|
|
36
|
+
className
|
|
37
|
+
),
|
|
38
|
+
"data-context-lens": true,
|
|
39
|
+
ref,
|
|
40
|
+
...rest,
|
|
41
|
+
children: [
|
|
42
|
+
/* @__PURE__ */ jsx("defs", { children: /* @__PURE__ */ jsxs(
|
|
43
|
+
"radialGradient",
|
|
44
|
+
{
|
|
45
|
+
cx: focus.cx,
|
|
46
|
+
cy: focus.cy,
|
|
47
|
+
"data-context-lens-gradient": true,
|
|
48
|
+
gradientUnits: "userSpaceOnUse",
|
|
49
|
+
id: maskId,
|
|
50
|
+
r: outer === 0 ? 1 : outer,
|
|
51
|
+
children: [
|
|
52
|
+
/* @__PURE__ */ jsx("stop", { offset: "0%", stopColor: "black", stopOpacity: 0 }),
|
|
53
|
+
/* @__PURE__ */ jsx(
|
|
54
|
+
"stop",
|
|
55
|
+
{
|
|
56
|
+
offset: outer === 0 ? "100%" : `${inner / outer * 100}%`,
|
|
57
|
+
stopColor: "black",
|
|
58
|
+
stopOpacity: 0
|
|
59
|
+
}
|
|
60
|
+
),
|
|
61
|
+
/* @__PURE__ */ jsx("stop", { offset: "100%", stopColor: "black", stopOpacity: 1 })
|
|
62
|
+
]
|
|
63
|
+
}
|
|
64
|
+
) }),
|
|
65
|
+
/* @__PURE__ */ jsx(
|
|
66
|
+
"rect",
|
|
67
|
+
{
|
|
68
|
+
"data-context-lens-dim": true,
|
|
69
|
+
fill: "black",
|
|
70
|
+
fillOpacity,
|
|
71
|
+
height: "100%",
|
|
72
|
+
mask: `url(#${maskId}-mask)`,
|
|
73
|
+
width: "100%",
|
|
74
|
+
x: 0,
|
|
75
|
+
y: 0
|
|
76
|
+
}
|
|
77
|
+
),
|
|
78
|
+
/* @__PURE__ */ jsxs("mask", { id: `${maskId}-mask`, children: [
|
|
79
|
+
/* @__PURE__ */ jsx("rect", { fill: "white", height: "100%", width: "100%", x: 0, y: 0 }),
|
|
80
|
+
/* @__PURE__ */ jsx(
|
|
81
|
+
"circle",
|
|
82
|
+
{
|
|
83
|
+
cx: focus.cx,
|
|
84
|
+
cy: focus.cy,
|
|
85
|
+
fill: `url(#${maskId})`,
|
|
86
|
+
r: outer
|
|
87
|
+
}
|
|
88
|
+
)
|
|
89
|
+
] })
|
|
90
|
+
]
|
|
91
|
+
}
|
|
92
|
+
);
|
|
93
|
+
}
|
|
94
|
+
);
|
|
95
|
+
ContextLens.displayName = "ContextLens";
|
|
96
|
+
export {
|
|
97
|
+
ContextLens
|
|
98
|
+
};
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
+
import {
|
|
4
|
+
forwardRef
|
|
5
|
+
} from "react";
|
|
6
|
+
import { cn } from "../../lib/utils";
|
|
7
|
+
const VARIANT_CLASSES = {
|
|
8
|
+
destructive: "border-red-300 bg-red-500/10 text-red-700 hover:bg-red-500/20 dark:text-red-300",
|
|
9
|
+
ghost: "border-border bg-background text-foreground hover:bg-accent",
|
|
10
|
+
primary: "border-primary bg-primary text-primary-foreground hover:bg-primary/90"
|
|
11
|
+
};
|
|
12
|
+
const DEFAULT_LABELS = {
|
|
13
|
+
region: "Selection actions"
|
|
14
|
+
};
|
|
15
|
+
const FloatingToolbar = forwardRef(
|
|
16
|
+
(props, ref) => {
|
|
17
|
+
const { actions, className, labels, x, y, ...rest } = props;
|
|
18
|
+
const resolvedLabels = { ...DEFAULT_LABELS, ...labels };
|
|
19
|
+
return /* @__PURE__ */ jsx(
|
|
20
|
+
"div",
|
|
21
|
+
{
|
|
22
|
+
"aria-label": resolvedLabels.region,
|
|
23
|
+
className: cn(
|
|
24
|
+
"absolute z-30 flex -translate-y-full items-center gap-1 rounded-md border border-border bg-background/95 p-1 shadow-md backdrop-blur",
|
|
25
|
+
className
|
|
26
|
+
),
|
|
27
|
+
"data-floating-toolbar": true,
|
|
28
|
+
ref,
|
|
29
|
+
role: "toolbar",
|
|
30
|
+
style: { left: `${x.toString()}px`, top: `${y.toString()}px` },
|
|
31
|
+
...rest,
|
|
32
|
+
children: actions.map((action) => {
|
|
33
|
+
const variant = action.variant ?? "ghost";
|
|
34
|
+
const handleClick = () => {
|
|
35
|
+
action.onActivate();
|
|
36
|
+
};
|
|
37
|
+
return /* @__PURE__ */ jsxs(
|
|
38
|
+
"button",
|
|
39
|
+
{
|
|
40
|
+
"aria-label": action.ariaLabel ?? void 0,
|
|
41
|
+
className: cn(
|
|
42
|
+
"inline-flex h-7 items-center gap-1 rounded-md border px-2 text-xs font-medium transition-colors focus:outline-none focus-visible:ring-2 focus-visible:ring-ring",
|
|
43
|
+
VARIANT_CLASSES[variant],
|
|
44
|
+
action.disabled ? "cursor-not-allowed opacity-50" : ""
|
|
45
|
+
),
|
|
46
|
+
"data-action-id": action.id,
|
|
47
|
+
"data-variant": variant,
|
|
48
|
+
disabled: action.disabled,
|
|
49
|
+
onClick: handleClick,
|
|
50
|
+
type: "button",
|
|
51
|
+
children: [
|
|
52
|
+
action.glyph ? /* @__PURE__ */ jsx("span", { "aria-hidden": "true", className: "inline-flex h-3 w-3", children: action.glyph }) : null,
|
|
53
|
+
/* @__PURE__ */ jsx("span", { children: action.label })
|
|
54
|
+
]
|
|
55
|
+
},
|
|
56
|
+
action.id
|
|
57
|
+
);
|
|
58
|
+
})
|
|
59
|
+
}
|
|
60
|
+
);
|
|
61
|
+
}
|
|
62
|
+
);
|
|
63
|
+
FloatingToolbar.displayName = "FloatingToolbar";
|
|
64
|
+
export {
|
|
65
|
+
FloatingToolbar
|
|
66
|
+
};
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
+
import {
|
|
4
|
+
forwardRef
|
|
5
|
+
} from "react";
|
|
6
|
+
import { cn } from "../../lib/utils";
|
|
7
|
+
const PALETTE = {
|
|
8
|
+
amber: { chip: "bg-amber-500 text-white", ring: "ring-amber-500" },
|
|
9
|
+
blue: { chip: "bg-blue-500 text-white", ring: "ring-blue-500" },
|
|
10
|
+
emerald: { chip: "bg-emerald-500 text-white", ring: "ring-emerald-500" },
|
|
11
|
+
purple: { chip: "bg-purple-500 text-white", ring: "ring-purple-500" },
|
|
12
|
+
red: { chip: "bg-red-500 text-white", ring: "ring-red-500" },
|
|
13
|
+
rose: { chip: "bg-rose-500 text-white", ring: "ring-rose-500" }
|
|
14
|
+
};
|
|
15
|
+
const DEFAULT_LABELS = {
|
|
16
|
+
region: "Follow mode",
|
|
17
|
+
stop: "Stop"
|
|
18
|
+
};
|
|
19
|
+
const FollowMode = forwardRef(
|
|
20
|
+
(props, ref) => {
|
|
21
|
+
const {
|
|
22
|
+
children,
|
|
23
|
+
className,
|
|
24
|
+
color = "blue",
|
|
25
|
+
labels,
|
|
26
|
+
name,
|
|
27
|
+
onStop,
|
|
28
|
+
...rest
|
|
29
|
+
} = props;
|
|
30
|
+
const palette = PALETTE[color];
|
|
31
|
+
const resolvedLabels = { ...DEFAULT_LABELS, ...labels };
|
|
32
|
+
return /* @__PURE__ */ jsxs(
|
|
33
|
+
"div",
|
|
34
|
+
{
|
|
35
|
+
"aria-label": resolvedLabels.region,
|
|
36
|
+
className: cn(
|
|
37
|
+
"relative h-full w-full rounded-2xl ring-2 ring-inset",
|
|
38
|
+
palette.ring,
|
|
39
|
+
className
|
|
40
|
+
),
|
|
41
|
+
"data-follow-color": color,
|
|
42
|
+
ref,
|
|
43
|
+
...rest,
|
|
44
|
+
children: [
|
|
45
|
+
/* @__PURE__ */ jsxs(
|
|
46
|
+
"div",
|
|
47
|
+
{
|
|
48
|
+
className: "pointer-events-auto absolute left-1/2 top-2 z-30 flex -translate-x-1/2 items-center gap-1 rounded-full px-2 py-0.5 text-[11px] font-semibold shadow-sm",
|
|
49
|
+
"data-follow-chip": true,
|
|
50
|
+
children: [
|
|
51
|
+
/* @__PURE__ */ jsxs(
|
|
52
|
+
"span",
|
|
53
|
+
{
|
|
54
|
+
className: cn(
|
|
55
|
+
"inline-flex items-center gap-1 rounded-full px-1.5 py-0.5",
|
|
56
|
+
palette.chip
|
|
57
|
+
),
|
|
58
|
+
children: [
|
|
59
|
+
/* @__PURE__ */ jsx("span", { "aria-hidden": "true", children: "\u25B8" }),
|
|
60
|
+
/* @__PURE__ */ jsxs("span", { children: [
|
|
61
|
+
"Following ",
|
|
62
|
+
name
|
|
63
|
+
] })
|
|
64
|
+
]
|
|
65
|
+
}
|
|
66
|
+
),
|
|
67
|
+
onStop ? /* @__PURE__ */ jsx(
|
|
68
|
+
"button",
|
|
69
|
+
{
|
|
70
|
+
"aria-label": resolvedLabels.stop,
|
|
71
|
+
className: "inline-flex h-5 items-center rounded-full border border-border bg-background px-2 text-[10px] font-semibold uppercase tracking-wide text-muted-foreground hover:bg-accent focus:outline-none focus-visible:ring-2 focus-visible:ring-ring",
|
|
72
|
+
onClick: onStop,
|
|
73
|
+
type: "button",
|
|
74
|
+
children: resolvedLabels.stop
|
|
75
|
+
}
|
|
76
|
+
) : null
|
|
77
|
+
]
|
|
78
|
+
}
|
|
79
|
+
),
|
|
80
|
+
children
|
|
81
|
+
]
|
|
82
|
+
}
|
|
83
|
+
);
|
|
84
|
+
}
|
|
85
|
+
);
|
|
86
|
+
FollowMode.displayName = "FollowMode";
|
|
87
|
+
export {
|
|
88
|
+
FollowMode
|
|
89
|
+
};
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
+
import {
|
|
4
|
+
forwardRef
|
|
5
|
+
} from "react";
|
|
6
|
+
import { cn } from "../../lib/utils";
|
|
7
|
+
const LEVEL_RING = {
|
|
8
|
+
info: "ring-blue-500",
|
|
9
|
+
request: "ring-amber-500",
|
|
10
|
+
urgent: "ring-red-500 animate-pulse"
|
|
11
|
+
};
|
|
12
|
+
const LEVEL_DOT = {
|
|
13
|
+
info: "bg-blue-500",
|
|
14
|
+
request: "bg-amber-500",
|
|
15
|
+
urgent: "bg-red-500"
|
|
16
|
+
};
|
|
17
|
+
const DEFAULT_LABELS = {
|
|
18
|
+
region: "Attention"
|
|
19
|
+
};
|
|
20
|
+
const HandoffBeacon = forwardRef(
|
|
21
|
+
(props, ref) => {
|
|
22
|
+
const {
|
|
23
|
+
className,
|
|
24
|
+
labels,
|
|
25
|
+
level = "info",
|
|
26
|
+
message,
|
|
27
|
+
source,
|
|
28
|
+
x,
|
|
29
|
+
y,
|
|
30
|
+
...rest
|
|
31
|
+
} = props;
|
|
32
|
+
const resolvedLabels = { ...DEFAULT_LABELS, ...labels };
|
|
33
|
+
return /* @__PURE__ */ jsxs(
|
|
34
|
+
"div",
|
|
35
|
+
{
|
|
36
|
+
"aria-label": resolvedLabels.region,
|
|
37
|
+
className: cn(
|
|
38
|
+
"pointer-events-none absolute z-30 flex -translate-x-1/2 -translate-y-1/2 flex-col items-center gap-1",
|
|
39
|
+
className
|
|
40
|
+
),
|
|
41
|
+
"data-handoff-level": level,
|
|
42
|
+
ref,
|
|
43
|
+
role: "status",
|
|
44
|
+
style: { left: `${x.toString()}px`, top: `${y.toString()}px` },
|
|
45
|
+
...rest,
|
|
46
|
+
children: [
|
|
47
|
+
/* @__PURE__ */ jsx(
|
|
48
|
+
"span",
|
|
49
|
+
{
|
|
50
|
+
"aria-hidden": "true",
|
|
51
|
+
className: cn(
|
|
52
|
+
"block h-3 w-3 rounded-full ring-2 ring-offset-2 ring-offset-background",
|
|
53
|
+
LEVEL_DOT[level],
|
|
54
|
+
LEVEL_RING[level]
|
|
55
|
+
)
|
|
56
|
+
}
|
|
57
|
+
),
|
|
58
|
+
source || message ? /* @__PURE__ */ jsx(
|
|
59
|
+
"div",
|
|
60
|
+
{
|
|
61
|
+
className: "pointer-events-auto rounded-md border border-border bg-popover px-2 py-1 text-center text-[11px] font-medium shadow-md",
|
|
62
|
+
"data-handoff-card": true,
|
|
63
|
+
children: source ? /* @__PURE__ */ jsxs("p", { className: "text-foreground", children: [
|
|
64
|
+
/* @__PURE__ */ jsx("span", { className: "font-semibold", children: source }),
|
|
65
|
+
message ? /* @__PURE__ */ jsx("span", { className: "text-muted-foreground", children: " \xB7 " }) : null,
|
|
66
|
+
message ? /* @__PURE__ */ jsx("span", { children: message }) : null
|
|
67
|
+
] }) : message ? /* @__PURE__ */ jsx("p", { className: "text-foreground", children: message }) : null
|
|
68
|
+
}
|
|
69
|
+
) : null
|
|
70
|
+
]
|
|
71
|
+
}
|
|
72
|
+
);
|
|
73
|
+
}
|
|
74
|
+
);
|
|
75
|
+
HandoffBeacon.displayName = "HandoffBeacon";
|
|
76
|
+
export {
|
|
77
|
+
HandoffBeacon
|
|
78
|
+
};
|
package/dist/components/index.js
CHANGED
|
@@ -505,6 +505,15 @@ import {
|
|
|
505
505
|
import {
|
|
506
506
|
FloatingActionButton
|
|
507
507
|
} from "./floating-action-button";
|
|
508
|
+
import {
|
|
509
|
+
FloatingToolbar
|
|
510
|
+
} from "./floating-toolbar";
|
|
511
|
+
import {
|
|
512
|
+
SelectionHalo
|
|
513
|
+
} from "./selection-halo";
|
|
514
|
+
import {
|
|
515
|
+
SnapGuides
|
|
516
|
+
} from "./snap-guides";
|
|
508
517
|
import {
|
|
509
518
|
KeyboardShortcutsHelp
|
|
510
519
|
} from "./keyboard-shortcuts-help";
|
|
@@ -525,6 +534,12 @@ import {
|
|
|
525
534
|
import {
|
|
526
535
|
HorizontalScrollRow
|
|
527
536
|
} from "./horizontal-scroll-row";
|
|
537
|
+
import {
|
|
538
|
+
FollowMode
|
|
539
|
+
} from "./follow-mode";
|
|
540
|
+
import {
|
|
541
|
+
HandoffBeacon
|
|
542
|
+
} from "./handoff-beacon";
|
|
528
543
|
import {
|
|
529
544
|
ViewSwitcher
|
|
530
545
|
} from "./view-switcher";
|
|
@@ -538,6 +553,9 @@ import {
|
|
|
538
553
|
FlowFullscreen,
|
|
539
554
|
useFlowDiagram
|
|
540
555
|
} from "./flow-diagram";
|
|
556
|
+
import {
|
|
557
|
+
AlertPulse
|
|
558
|
+
} from "./alert-pulse";
|
|
541
559
|
import { AnchorPort } from "./anchor-port";
|
|
542
560
|
import {
|
|
543
561
|
BottomActivityStrip
|
|
@@ -548,42 +566,75 @@ import {
|
|
|
548
566
|
import {
|
|
549
567
|
ConnectorEdge
|
|
550
568
|
} from "./connector-edge";
|
|
569
|
+
import {
|
|
570
|
+
ContextLens
|
|
571
|
+
} from "./context-lens";
|
|
551
572
|
import { EdgeLabel } from "./edge-label";
|
|
552
573
|
import { GroupHull } from "./group-hull";
|
|
553
574
|
import {
|
|
554
575
|
HeatOverlay
|
|
555
576
|
} from "./heat-overlay";
|
|
577
|
+
import {
|
|
578
|
+
JarvisDock
|
|
579
|
+
} from "./jarvis-dock";
|
|
556
580
|
import {
|
|
557
581
|
LiveCursor
|
|
558
582
|
} from "./live-cursor";
|
|
559
583
|
import {
|
|
560
584
|
MetricCluster
|
|
561
585
|
} from "./metric-cluster";
|
|
586
|
+
import {
|
|
587
|
+
MultiSelectLasso
|
|
588
|
+
} from "./multi-select-lasso";
|
|
562
589
|
import {
|
|
563
590
|
ObjectCard
|
|
564
591
|
} from "./object-card";
|
|
565
592
|
import { ObjectHandle } from "./object-handle";
|
|
593
|
+
import {
|
|
594
|
+
ObjectInspector
|
|
595
|
+
} from "./object-inspector";
|
|
566
596
|
import {
|
|
567
597
|
PlaybackGhost
|
|
568
598
|
} from "./playback-ghost";
|
|
599
|
+
import {
|
|
600
|
+
PolicyDeliveryPanel
|
|
601
|
+
} from "./policy-delivery-panel";
|
|
569
602
|
import {
|
|
570
603
|
PresenceStack
|
|
571
604
|
} from "./presence-stack";
|
|
572
605
|
import {
|
|
573
606
|
PresenceSyncIndicator
|
|
574
607
|
} from "./presence-sync-indicator";
|
|
608
|
+
import {
|
|
609
|
+
PropertySection
|
|
610
|
+
} from "./property-section";
|
|
611
|
+
import {
|
|
612
|
+
RelationshipInspector
|
|
613
|
+
} from "./relationship-inspector";
|
|
614
|
+
import {
|
|
615
|
+
RoutingAssignmentPanel
|
|
616
|
+
} from "./routing-assignment-panel";
|
|
575
617
|
import {
|
|
576
618
|
RunTimeline
|
|
577
619
|
} from "./run-timeline";
|
|
620
|
+
import {
|
|
621
|
+
RuntimeOverviewPanel
|
|
622
|
+
} from "./runtime-overview-panel";
|
|
578
623
|
import {
|
|
579
624
|
SelectionPresence
|
|
580
625
|
} from "./selection-presence";
|
|
581
626
|
import {
|
|
582
627
|
StateBadgeOverlay
|
|
583
628
|
} from "./state-badge-overlay";
|
|
629
|
+
import {
|
|
630
|
+
StickyMetric
|
|
631
|
+
} from "./sticky-metric";
|
|
584
632
|
import {
|
|
585
633
|
ThreadBubble
|
|
586
634
|
} from "./thread-bubble";
|
|
635
|
+
import {
|
|
636
|
+
ThresholdRing
|
|
637
|
+
} from "./threshold-ring";
|
|
587
638
|
import {
|
|
588
639
|
TimelineScrubber
|
|
589
640
|
} from "./timeline-scrubber";
|
|
@@ -628,6 +679,7 @@ export {
|
|
|
628
679
|
AlertDialogPortal,
|
|
629
680
|
AlertDialogTitle,
|
|
630
681
|
AlertDialogTrigger,
|
|
682
|
+
AlertPulse,
|
|
631
683
|
AlertTitle,
|
|
632
684
|
AnchorPort,
|
|
633
685
|
AnimatedText,
|
|
@@ -689,6 +741,7 @@ export {
|
|
|
689
741
|
ConnectorEdge,
|
|
690
742
|
ContentCard,
|
|
691
743
|
ContentIntro,
|
|
744
|
+
ContextLens,
|
|
692
745
|
ContextMenu,
|
|
693
746
|
ContextMenuCheckboxItem,
|
|
694
747
|
ContextMenuContent,
|
|
@@ -768,10 +821,12 @@ export {
|
|
|
768
821
|
FilterBar,
|
|
769
822
|
Flashcard,
|
|
770
823
|
FloatingActionButton,
|
|
824
|
+
FloatingToolbar,
|
|
771
825
|
FlowControls,
|
|
772
826
|
FlowDiagram,
|
|
773
827
|
FlowErrorBoundary,
|
|
774
828
|
FlowFullscreen,
|
|
829
|
+
FollowMode,
|
|
775
830
|
Form,
|
|
776
831
|
FormControl,
|
|
777
832
|
FormDescription,
|
|
@@ -782,6 +837,7 @@ export {
|
|
|
782
837
|
GlassPanel,
|
|
783
838
|
Glossary,
|
|
784
839
|
GroupHull,
|
|
840
|
+
HandoffBeacon,
|
|
785
841
|
HeatOverlay,
|
|
786
842
|
Highlight,
|
|
787
843
|
HorizontalScrollRow,
|
|
@@ -795,6 +851,7 @@ export {
|
|
|
795
851
|
InputOTPGroup,
|
|
796
852
|
InputOTPSeparator,
|
|
797
853
|
InputOTPSlot,
|
|
854
|
+
JarvisDock,
|
|
798
855
|
KeyConcept,
|
|
799
856
|
KeyboardShortcutsHelp,
|
|
800
857
|
Label,
|
|
@@ -828,6 +885,7 @@ export {
|
|
|
828
885
|
MiniMapPanel,
|
|
829
886
|
ModelSelector,
|
|
830
887
|
MultiSelect,
|
|
888
|
+
MultiSelectLasso,
|
|
831
889
|
NavbarSaas,
|
|
832
890
|
NavigationMenu,
|
|
833
891
|
NavigationMenuContent,
|
|
@@ -841,6 +899,7 @@ export {
|
|
|
841
899
|
NumberTicker,
|
|
842
900
|
ObjectCard,
|
|
843
901
|
ObjectHandle,
|
|
902
|
+
ObjectInspector,
|
|
844
903
|
OrderBook,
|
|
845
904
|
OverviewBoard,
|
|
846
905
|
OverviewCard,
|
|
@@ -848,6 +907,7 @@ export {
|
|
|
848
907
|
PasswordInput,
|
|
849
908
|
PlanBadge,
|
|
850
909
|
PlaybackGhost,
|
|
910
|
+
PolicyDeliveryPanel,
|
|
851
911
|
Popover,
|
|
852
912
|
PopoverAnchor,
|
|
853
913
|
PopoverContent,
|
|
@@ -866,16 +926,20 @@ export {
|
|
|
866
926
|
ProgressTrackerOverview,
|
|
867
927
|
ProgressTrackerStat,
|
|
868
928
|
ProgressTrackerStats,
|
|
929
|
+
PropertySection,
|
|
869
930
|
Quiz,
|
|
870
931
|
RadioGroup,
|
|
871
932
|
RadioGroupItem,
|
|
872
933
|
Rating,
|
|
934
|
+
RelationshipInspector,
|
|
873
935
|
ResizableHandle,
|
|
874
936
|
ResizablePanel,
|
|
875
937
|
ResizablePanelGroup,
|
|
876
938
|
RightDock,
|
|
877
939
|
RoleBadge,
|
|
940
|
+
RoutingAssignmentPanel,
|
|
878
941
|
RunTimeline,
|
|
942
|
+
RuntimeOverviewPanel,
|
|
879
943
|
ScopeSelector,
|
|
880
944
|
ScrollArea,
|
|
881
945
|
ScrollBar,
|
|
@@ -893,6 +957,7 @@ export {
|
|
|
893
957
|
SelectSeparator,
|
|
894
958
|
SelectTrigger,
|
|
895
959
|
SelectValue,
|
|
960
|
+
SelectionHalo,
|
|
896
961
|
SelectionPresence,
|
|
897
962
|
Separator,
|
|
898
963
|
SeverityBadge,
|
|
@@ -915,6 +980,7 @@ export {
|
|
|
915
980
|
Skeleton,
|
|
916
981
|
Slider,
|
|
917
982
|
Slideshow,
|
|
983
|
+
SnapGuides,
|
|
918
984
|
SocialFAB,
|
|
919
985
|
SparklineGrid,
|
|
920
986
|
Spinner,
|
|
@@ -926,6 +992,7 @@ export {
|
|
|
926
992
|
StepByStep,
|
|
927
993
|
StepNavigation,
|
|
928
994
|
Stepper,
|
|
995
|
+
StickyMetric,
|
|
929
996
|
SubscriptionCard,
|
|
930
997
|
Summary,
|
|
931
998
|
Switch,
|
|
@@ -951,6 +1018,7 @@ export {
|
|
|
951
1018
|
ThemeToggle,
|
|
952
1019
|
ThinkingBlock,
|
|
953
1020
|
ThreadBubble,
|
|
1021
|
+
ThresholdRing,
|
|
954
1022
|
TickerTape,
|
|
955
1023
|
TimelineScrubber,
|
|
956
1024
|
Toast,
|