@schemavaults/ui 0.76.0 → 0.77.0
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/ui/index.d.ts +2 -0
- package/dist/components/ui/index.js +1 -0
- package/dist/components/ui/index.js.map +1 -1
- package/dist/components/ui/presence-indicator/index.d.ts +2 -0
- package/dist/components/ui/presence-indicator/index.js +2 -0
- package/dist/components/ui/presence-indicator/index.js.map +1 -0
- package/dist/components/ui/presence-indicator/presence-indicator.d.ts +36 -0
- package/dist/components/ui/presence-indicator/presence-indicator.js +95 -0
- package/dist/components/ui/presence-indicator/presence-indicator.js.map +1 -0
- package/package.json +1 -1
|
@@ -82,6 +82,8 @@ export * from "./description-list";
|
|
|
82
82
|
export type * from "./description-list";
|
|
83
83
|
export * from "./status-blinker";
|
|
84
84
|
export type * from "./status-blinker";
|
|
85
|
+
export * from "./presence-indicator";
|
|
86
|
+
export type * from "./presence-indicator";
|
|
85
87
|
export * from "./context-menu";
|
|
86
88
|
export type * from "./context-menu";
|
|
87
89
|
export * from "./inline-menu";
|
|
@@ -40,6 +40,7 @@ export * from "./skeleton";
|
|
|
40
40
|
export * from "./key-value-with-skeleton";
|
|
41
41
|
export * from "./description-list";
|
|
42
42
|
export * from "./status-blinker";
|
|
43
|
+
export * from "./presence-indicator";
|
|
43
44
|
export * from "./context-menu";
|
|
44
45
|
export * from "./inline-menu";
|
|
45
46
|
export * from "./stepper";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/ui/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/ui/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/ui/presence-indicator/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,iBAAiB,IAAI,OAAO,EAC5B,iBAAiB,EACjB,eAAe,GAChB,MAAM,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { HTMLAttributes, ReactElement, Ref } from "react";
|
|
2
|
+
export declare const presenceStatusIds: readonly ["online", "idle", "busy", "away", "dnd", "offline", "invisible"];
|
|
3
|
+
export type PresenceStatusId = (typeof presenceStatusIds)[number];
|
|
4
|
+
export declare const presenceSizeIds: readonly ["xs", "sm", "md", "lg", "xl"];
|
|
5
|
+
export type PresenceSizeId = (typeof presenceSizeIds)[number];
|
|
6
|
+
export interface PresenceIndicatorProps extends Omit<HTMLAttributes<HTMLSpanElement>, "children" | "aria-label"> {
|
|
7
|
+
/** Semantic presence status. Defaults to `"online"`. */
|
|
8
|
+
status?: PresenceStatusId;
|
|
9
|
+
/** Visual size of the dot. Defaults to `"md"`. */
|
|
10
|
+
size?: PresenceSizeId;
|
|
11
|
+
/** Render a soft `ping` animation around the dot. */
|
|
12
|
+
pulse?: boolean;
|
|
13
|
+
/**
|
|
14
|
+
* Render a contrasting ring around the dot. Useful when overlaying the
|
|
15
|
+
* indicator on top of an `Avatar` or coloured surface.
|
|
16
|
+
*/
|
|
17
|
+
bordered?: boolean;
|
|
18
|
+
/**
|
|
19
|
+
* Render a text label next to the dot. Pass `true` to use the default
|
|
20
|
+
* status label (e.g. `"Online"`), or a string for a custom one.
|
|
21
|
+
*/
|
|
22
|
+
label?: boolean | string;
|
|
23
|
+
/**
|
|
24
|
+
* Accessible label describing the status. Defaults to a humanised version of
|
|
25
|
+
* the `status` (e.g. `"Online"`). Set to `null` to mark the indicator as
|
|
26
|
+
* purely decorative (e.g. when paired with adjacent text that already
|
|
27
|
+
* conveys the status).
|
|
28
|
+
*/
|
|
29
|
+
"aria-label"?: string | null;
|
|
30
|
+
ref?: Ref<HTMLSpanElement>;
|
|
31
|
+
}
|
|
32
|
+
declare function PresenceIndicator({ className, status, size, pulse, bordered, label, ref, "aria-label": ariaLabelProp, ...rest }: PresenceIndicatorProps): ReactElement;
|
|
33
|
+
declare namespace PresenceIndicator {
|
|
34
|
+
var displayName: string;
|
|
35
|
+
}
|
|
36
|
+
export { PresenceIndicator };
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { cn } from "../../../lib/utils";
|
|
4
|
+
export const presenceStatusIds = [
|
|
5
|
+
"online",
|
|
6
|
+
"idle",
|
|
7
|
+
"busy",
|
|
8
|
+
"away",
|
|
9
|
+
"dnd",
|
|
10
|
+
"offline",
|
|
11
|
+
"invisible",
|
|
12
|
+
];
|
|
13
|
+
export const presenceSizeIds = [
|
|
14
|
+
"xs",
|
|
15
|
+
"sm",
|
|
16
|
+
"md",
|
|
17
|
+
"lg",
|
|
18
|
+
"xl",
|
|
19
|
+
];
|
|
20
|
+
const dotColorClasses = {
|
|
21
|
+
online: "bg-green-500",
|
|
22
|
+
idle: "bg-yellow-400",
|
|
23
|
+
busy: "bg-orange-500",
|
|
24
|
+
away: "bg-amber-500",
|
|
25
|
+
dnd: "bg-destructive",
|
|
26
|
+
offline: "bg-muted-foreground/50",
|
|
27
|
+
invisible: "bg-transparent border border-muted-foreground/60",
|
|
28
|
+
};
|
|
29
|
+
const dotSizeClasses = {
|
|
30
|
+
xs: "h-1.5 w-1.5",
|
|
31
|
+
sm: "h-2 w-2",
|
|
32
|
+
md: "h-2.5 w-2.5",
|
|
33
|
+
lg: "h-3 w-3",
|
|
34
|
+
xl: "h-3.5 w-3.5",
|
|
35
|
+
};
|
|
36
|
+
const dndBarSizeClasses = {
|
|
37
|
+
xs: "h-px w-[60%]",
|
|
38
|
+
sm: "h-px w-[60%]",
|
|
39
|
+
md: "h-px w-[60%]",
|
|
40
|
+
lg: "h-[1.5px] w-[60%]",
|
|
41
|
+
xl: "h-[1.5px] w-[60%]",
|
|
42
|
+
};
|
|
43
|
+
const ringSizeClasses = {
|
|
44
|
+
xs: "ring-[1.5px]",
|
|
45
|
+
sm: "ring-2",
|
|
46
|
+
md: "ring-2",
|
|
47
|
+
lg: "ring-2",
|
|
48
|
+
xl: "ring-[2.5px]",
|
|
49
|
+
};
|
|
50
|
+
const labelTextClasses = {
|
|
51
|
+
xs: "text-[10px]",
|
|
52
|
+
sm: "text-xs",
|
|
53
|
+
md: "text-xs",
|
|
54
|
+
lg: "text-sm",
|
|
55
|
+
xl: "text-sm",
|
|
56
|
+
};
|
|
57
|
+
const statusLabels = {
|
|
58
|
+
online: "Online",
|
|
59
|
+
idle: "Idle",
|
|
60
|
+
busy: "Busy",
|
|
61
|
+
away: "Away",
|
|
62
|
+
dnd: "Do not disturb",
|
|
63
|
+
offline: "Offline",
|
|
64
|
+
invisible: "Invisible",
|
|
65
|
+
};
|
|
66
|
+
const pulseColorClasses = {
|
|
67
|
+
online: "bg-green-500",
|
|
68
|
+
idle: "bg-yellow-400",
|
|
69
|
+
busy: "bg-orange-500",
|
|
70
|
+
away: "bg-amber-500",
|
|
71
|
+
dnd: "bg-destructive",
|
|
72
|
+
offline: "bg-muted-foreground/50",
|
|
73
|
+
invisible: "bg-muted-foreground/40",
|
|
74
|
+
};
|
|
75
|
+
function PresenceDot({ status, size, pulse, bordered, }) {
|
|
76
|
+
return (_jsxs("span", { className: "relative inline-flex items-center justify-center", children: [pulse ? (_jsx("span", { "aria-hidden": "true", className: cn("absolute inline-flex h-full w-full rounded-full opacity-75 animate-ping", pulseColorClasses[status], dotSizeClasses[size]) })) : null, _jsx("span", { "data-slot": "presence-indicator-dot", className: cn("relative inline-flex items-center justify-center rounded-full", dotColorClasses[status], dotSizeClasses[size], bordered && cn(ringSizeClasses[size], "ring-background")), children: status === "dnd" ? (_jsx("span", { "aria-hidden": "true", className: cn("block rounded-full bg-destructive-foreground", dndBarSizeClasses[size]) })) : null })] }));
|
|
77
|
+
}
|
|
78
|
+
function PresenceIndicator({ className, status = "online", size = "md", pulse = false, bordered = false, label, ref, "aria-label": ariaLabelProp, ...rest }) {
|
|
79
|
+
const decorative = ariaLabelProp === null;
|
|
80
|
+
const ariaLabel = decorative
|
|
81
|
+
? undefined
|
|
82
|
+
: (ariaLabelProp ?? statusLabels[status]);
|
|
83
|
+
const labelText = label === true
|
|
84
|
+
? statusLabels[status]
|
|
85
|
+
: typeof label === "string"
|
|
86
|
+
? label
|
|
87
|
+
: null;
|
|
88
|
+
if (labelText !== null) {
|
|
89
|
+
return (_jsxs("span", { ref: ref, "data-slot": "presence-indicator", "data-status": status, role: decorative ? undefined : "status", "aria-label": ariaLabel, "aria-hidden": decorative ? true : undefined, className: cn("inline-flex items-center gap-1.5 text-foreground", className), ...rest, children: [_jsx(PresenceDot, { status: status, size: size, pulse: pulse, bordered: bordered }), _jsx("span", { className: cn("font-medium leading-none", labelTextClasses[size]), children: labelText })] }));
|
|
90
|
+
}
|
|
91
|
+
return (_jsx("span", { ref: ref, "data-slot": "presence-indicator", "data-status": status, role: decorative ? undefined : "status", "aria-label": ariaLabel, "aria-hidden": decorative ? true : undefined, className: cn("inline-flex shrink-0 items-center justify-center", className), ...rest, children: _jsx(PresenceDot, { status: status, size: size, pulse: pulse, bordered: bordered }) }));
|
|
92
|
+
}
|
|
93
|
+
PresenceIndicator.displayName = "PresenceIndicator";
|
|
94
|
+
export { PresenceIndicator };
|
|
95
|
+
//# sourceMappingURL=presence-indicator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"presence-indicator.js","sourceRoot":"","sources":["../../../../src/components/ui/presence-indicator/presence-indicator.tsx"],"names":[],"mappings":"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"}
|