@schemavaults/ui 0.36.0 → 0.38.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.
@@ -23,7 +23,7 @@ export function ThemedPageContainer({ children, ...props }) {
23
23
  const contentContainerClassName = typeof props.contentContainerClassName === "string"
24
24
  ? cn(props.contentContainerClassName, props.additionalContentContainerClassName)
25
25
  : defaultContentContainerClassName;
26
- return (_jsx(ThemedPageBackground, { className: cn("grow", "overflow-y-scroll no-scrollbar", "flex flex-col items-stretch justify-start", backgroundContentClassName), backgroundClassName: undefined, children: _jsx(PageColumnContainer, { className: contentContainerClassName, children: children }) }));
26
+ return (_jsx(ThemedPageBackground, { className: cn("grow", "flex flex-col items-stretch justify-start", backgroundContentClassName), backgroundClassName: undefined, children: _jsx(PageColumnContainer, { className: contentContainerClassName, children: children }) }));
27
27
  }
28
28
  export default ThemedPageContainer;
29
29
  //# sourceMappingURL=themed-page-container.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"themed-page-container.js","sourceRoot":"","sources":["../../../../src/components/layout/themed-page-container/themed-page-container.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,oBAAoB,MAAM,wCAAwC,CAAC;AAE1E,OAAO,mBAAmB,MAAM,2CAA2C,CAAC;AAC5E,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AASjC;;;;;;;;;;GAUG;AACH,MAAM,UAAU,mBAAmB,CAAC,EAClC,QAAQ,EACR,GAAG,KAAK,EACiB;IACzB,MAAM,0BAA0B,GAAW,EAAE,CAC3C,YAAY,EACZ,mBAAmB,CACpB,CAAC;IAEF,MAAM,gCAAgC,GAAW,EAAE,CACjD,YAAY,EACZ,yBAAyB,EACzB,KAAK,CAAC,mCAAmC,CAC1C,CAAC;IAEF,MAAM,0BAA0B,GAC9B,OAAO,KAAK,CAAC,mBAAmB,KAAK,QAAQ;QAC3C,CAAC,CAAC,KAAK,CAAC,mBAAmB;QAC3B,CAAC,CAAC,0BAA0B,CAAC;IACjC,MAAM,yBAAyB,GAC7B,OAAO,KAAK,CAAC,yBAAyB,KAAK,QAAQ;QACjD,CAAC,CAAC,EAAE,CACA,KAAK,CAAC,yBAAyB,EAC/B,KAAK,CAAC,mCAAmC,CAC1C;QACH,CAAC,CAAC,gCAAgC,CAAC;IAEvC,OAAO,CACL,KAAC,oBAAoB,IACnB,SAAS,EAAE,EAAE,CACX,MAAM,EACN,gCAAgC,EAChC,2CAA2C,EAC3C,0BAA0B,CAC3B,EACD,mBAAmB,EAAE,SAAS,YAE9B,KAAC,mBAAmB,IAAC,SAAS,EAAE,yBAAyB,YACtD,QAAQ,GACW,GACD,CACxB,CAAC;AACJ,CAAC;AAED,eAAe,mBAAmB,CAAC"}
1
+ {"version":3,"file":"themed-page-container.js","sourceRoot":"","sources":["../../../../src/components/layout/themed-page-container/themed-page-container.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,oBAAoB,MAAM,wCAAwC,CAAC;AAE1E,OAAO,mBAAmB,MAAM,2CAA2C,CAAC;AAC5E,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AASjC;;;;;;;;;;GAUG;AACH,MAAM,UAAU,mBAAmB,CAAC,EAClC,QAAQ,EACR,GAAG,KAAK,EACiB;IACzB,MAAM,0BAA0B,GAAW,EAAE,CAC3C,YAAY,EACZ,mBAAmB,CACpB,CAAC;IAEF,MAAM,gCAAgC,GAAW,EAAE,CACjD,YAAY,EACZ,yBAAyB,EACzB,KAAK,CAAC,mCAAmC,CAC1C,CAAC;IAEF,MAAM,0BAA0B,GAC9B,OAAO,KAAK,CAAC,mBAAmB,KAAK,QAAQ;QAC3C,CAAC,CAAC,KAAK,CAAC,mBAAmB;QAC3B,CAAC,CAAC,0BAA0B,CAAC;IACjC,MAAM,yBAAyB,GAC7B,OAAO,KAAK,CAAC,yBAAyB,KAAK,QAAQ;QACjD,CAAC,CAAC,EAAE,CACA,KAAK,CAAC,yBAAyB,EAC/B,KAAK,CAAC,mCAAmC,CAC1C;QACH,CAAC,CAAC,gCAAgC,CAAC;IAEvC,OAAO,CACL,KAAC,oBAAoB,IACnB,SAAS,EAAE,EAAE,CACX,MAAM,EACN,2CAA2C,EAC3C,0BAA0B,CAC3B,EACD,mBAAmB,EAAE,SAAS,YAE9B,KAAC,mBAAmB,IAAC,SAAS,EAAE,yBAAyB,YACtD,QAAQ,GACW,GACD,CACxB,CAAC;AACJ,CAAC;AAED,eAAe,mBAAmB,CAAC"}
@@ -140,3 +140,5 @@ export * from "./tags-input";
140
140
  export type * from "./tags-input";
141
141
  export * from "./number-ticker";
142
142
  export type * from "./number-ticker";
143
+ export * from "./sparkline";
144
+ export type * from "./sparkline";
@@ -69,4 +69,5 @@ export * from "./toggle";
69
69
  export * from "./chip";
70
70
  export * from "./tags-input";
71
71
  export * from "./number-ticker";
72
+ export * from "./sparkline";
72
73
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/ui/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AAGzB,cAAc,aAAa,CAAC;AAG5B,cAAc,SAAS,CAAC;AAGxB,cAAc,WAAW,CAAC;AAG1B,cAAc,SAAS,CAAC;AAGxB,cAAc,mBAAmB,CAAC;AAGlC,cAAc,0BAA0B,CAAC;AAGzC,cAAc,UAAU,CAAC;AAGzB,cAAc,SAAS,CAAC;AAGxB,cAAc,kBAAkB,CAAC;AAGjC,cAAc,aAAa,CAAC;AAG5B,cAAc,kCAAkC,CAAC;AAGjD,cAAc,cAAc,CAAC;AAG7B,cAAc,SAAS,CAAC;AAGxB,cAAc,SAAS,CAAC;AAExB,cAAc,WAAW,CAAC;AAG1B,cAAc,YAAY,CAAC;AAG3B,cAAc,QAAQ,CAAC;AAGvB,cAAc,QAAQ,CAAC;AAGvB,cAAc,aAAa,CAAC;AAG5B,cAAc,iBAAiB,CAAC;AAGhC,cAAc,WAAW,CAAC;AAG1B,cAAc,mBAAmB,CAAC;AAGlC,cAAc,UAAU,CAAC;AAGzB,cAAc,WAAW,CAAC;AAG1B,cAAc,WAAW,CAAC;AAG1B,cAAc,YAAY,CAAC;AAG3B,cAAc,SAAS,CAAC;AAGxB,cAAc,aAAa,CAAC;AAG5B,cAAc,YAAY,CAAC;AAG3B,cAAc,YAAY,CAAC;AAG3B,cAAc,cAAc,CAAC;AAG7B,cAAc,eAAe,CAAC;AAG9B,cAAc,YAAY,CAAC;AAG3B,cAAc,2BAA2B,CAAC;AAG1C,cAAc,kBAAkB,CAAC;AAGjC,cAAc,gBAAgB,CAAC;AAG/B,cAAc,eAAe,CAAC;AAG9B,cAAc,WAAW,CAAC;AAG1B,cAAc,gBAAgB,CAAC;AAG/B,cAAc,cAAc,CAAC;AAG7B,cAAc,SAAS,CAAC;AAGxB,cAAc,UAAU,CAAC;AAGzB,cAAc,eAAe,CAAC;AAG9B,cAAc,qBAAqB,CAAC;AAGpC,cAAc,oBAAoB,CAAC;AAGnC,cAAc,mBAAmB,CAAC;AAGlC,cAAc,QAAQ,CAAC;AAGvB,cAAc,QAAQ,CAAC;AAGvB,cAAc,UAAU,CAAC;AAGzB,cAAc,UAAU,CAAC;AAGzB,cAAc,gBAAgB,CAAC;AAG/B,cAAc,qBAAqB,CAAC;AAGpC,cAAc,cAAc,CAAC;AAG7B,cAAc,cAAc,CAAC;AAG7B,cAAc,OAAO,CAAC;AAGtB,cAAc,eAAe,CAAC;AAG9B,cAAc,WAAW,CAAC;AAG1B,cAAc,UAAU,CAAC;AAGzB,cAAc,eAAe,CAAC;AAG9B,cAAc,aAAa,CAAC;AAG5B,cAAc,YAAY,CAAC;AAG3B,cAAc,UAAU,CAAC;AAGzB,cAAc,gBAAgB,CAAC;AAG/B,cAAc,cAAc,CAAC;AAG7B,cAAc,qBAAqB,CAAC;AAGpC,cAAc,WAAW,CAAC;AAG1B,cAAc,UAAU,CAAC;AAGzB,cAAc,QAAQ,CAAC;AAGvB,cAAc,cAAc,CAAC;AAG7B,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/ui/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AAGzB,cAAc,aAAa,CAAC;AAG5B,cAAc,SAAS,CAAC;AAGxB,cAAc,WAAW,CAAC;AAG1B,cAAc,SAAS,CAAC;AAGxB,cAAc,mBAAmB,CAAC;AAGlC,cAAc,0BAA0B,CAAC;AAGzC,cAAc,UAAU,CAAC;AAGzB,cAAc,SAAS,CAAC;AAGxB,cAAc,kBAAkB,CAAC;AAGjC,cAAc,aAAa,CAAC;AAG5B,cAAc,kCAAkC,CAAC;AAGjD,cAAc,cAAc,CAAC;AAG7B,cAAc,SAAS,CAAC;AAGxB,cAAc,SAAS,CAAC;AAExB,cAAc,WAAW,CAAC;AAG1B,cAAc,YAAY,CAAC;AAG3B,cAAc,QAAQ,CAAC;AAGvB,cAAc,QAAQ,CAAC;AAGvB,cAAc,aAAa,CAAC;AAG5B,cAAc,iBAAiB,CAAC;AAGhC,cAAc,WAAW,CAAC;AAG1B,cAAc,mBAAmB,CAAC;AAGlC,cAAc,UAAU,CAAC;AAGzB,cAAc,WAAW,CAAC;AAG1B,cAAc,WAAW,CAAC;AAG1B,cAAc,YAAY,CAAC;AAG3B,cAAc,SAAS,CAAC;AAGxB,cAAc,aAAa,CAAC;AAG5B,cAAc,YAAY,CAAC;AAG3B,cAAc,YAAY,CAAC;AAG3B,cAAc,cAAc,CAAC;AAG7B,cAAc,eAAe,CAAC;AAG9B,cAAc,YAAY,CAAC;AAG3B,cAAc,2BAA2B,CAAC;AAG1C,cAAc,kBAAkB,CAAC;AAGjC,cAAc,gBAAgB,CAAC;AAG/B,cAAc,eAAe,CAAC;AAG9B,cAAc,WAAW,CAAC;AAG1B,cAAc,gBAAgB,CAAC;AAG/B,cAAc,cAAc,CAAC;AAG7B,cAAc,SAAS,CAAC;AAGxB,cAAc,UAAU,CAAC;AAGzB,cAAc,eAAe,CAAC;AAG9B,cAAc,qBAAqB,CAAC;AAGpC,cAAc,oBAAoB,CAAC;AAGnC,cAAc,mBAAmB,CAAC;AAGlC,cAAc,QAAQ,CAAC;AAGvB,cAAc,QAAQ,CAAC;AAGvB,cAAc,UAAU,CAAC;AAGzB,cAAc,UAAU,CAAC;AAGzB,cAAc,gBAAgB,CAAC;AAG/B,cAAc,qBAAqB,CAAC;AAGpC,cAAc,cAAc,CAAC;AAG7B,cAAc,cAAc,CAAC;AAG7B,cAAc,OAAO,CAAC;AAGtB,cAAc,eAAe,CAAC;AAG9B,cAAc,WAAW,CAAC;AAG1B,cAAc,UAAU,CAAC;AAGzB,cAAc,eAAe,CAAC;AAG9B,cAAc,aAAa,CAAC;AAG5B,cAAc,YAAY,CAAC;AAG3B,cAAc,UAAU,CAAC;AAGzB,cAAc,gBAAgB,CAAC;AAG/B,cAAc,cAAc,CAAC;AAG7B,cAAc,qBAAqB,CAAC;AAGpC,cAAc,WAAW,CAAC;AAG1B,cAAc,UAAU,CAAC;AAGzB,cAAc,QAAQ,CAAC;AAGvB,cAAc,cAAc,CAAC;AAG7B,cAAc,iBAAiB,CAAC;AAGhC,cAAc,aAAa,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { Sparkline, sparklineVariants, sparklineVariantIds, sparklineColorIds, sparklineSizeIds, } from "./sparkline";
2
+ export type * from "./sparkline";
3
+ export { Sparkline as default } from "./sparkline";
@@ -0,0 +1,3 @@
1
+ export { Sparkline, sparklineVariants, sparklineVariantIds, sparklineColorIds, sparklineSizeIds, } from "./sparkline";
2
+ export { Sparkline as default } from "./sparkline";
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/ui/sparkline/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,SAAS,IAAI,OAAO,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,50 @@
1
+ import { type VariantProps } from "class-variance-authority";
2
+ import type { HTMLAttributes, ReactElement, Ref } from "react";
3
+ export declare const sparklineVariantIds: ["line", "area", "bar"];
4
+ export type SparklineVariantId = (typeof sparklineVariantIds)[number];
5
+ export declare const sparklineColorIds: ["default", "primary", "positive", "warning", "destructive", "muted", "auto"];
6
+ export type SparklineColorId = (typeof sparklineColorIds)[number];
7
+ export declare const sparklineSizeIds: ["sm", "md", "lg"];
8
+ export type SparklineSizeId = (typeof sparklineSizeIds)[number];
9
+ export declare const sparklineVariants: (props?: ({
10
+ size?: "sm" | "lg" | "md" | null | undefined;
11
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
12
+ export interface SparklineProps extends Omit<HTMLAttributes<HTMLDivElement>, "color">, VariantProps<typeof sparklineVariants> {
13
+ /** Numeric data points to plot, in order. */
14
+ data: ReadonlyArray<number>;
15
+ /** Visual style: continuous line, filled area, or bars. */
16
+ variant?: SparklineVariantId;
17
+ /**
18
+ * Color for the line/area/bars. `auto` infers from the trend
19
+ * (positive if up, destructive if down, muted if flat).
20
+ */
21
+ color?: SparklineColorId;
22
+ /** Accessible label describing what the sparkline represents. */
23
+ label: string;
24
+ /** Override the rendered width in pixels (defaults are size-aware). */
25
+ width?: number;
26
+ /** Override the rendered height in pixels (defaults are size-aware). */
27
+ height?: number;
28
+ /** Stroke width for line/area variants. Defaults to 1.5. */
29
+ strokeWidth?: number;
30
+ /** Show a dot at the last data point (line/area only). Defaults to true. */
31
+ showLastPoint?: boolean;
32
+ /** Render a filled gradient under area variant. Defaults to true. */
33
+ gradient?: boolean;
34
+ /**
35
+ * Show a horizontal baseline at the minimum value of the dataset.
36
+ * Defaults to false.
37
+ */
38
+ showBaseline?: boolean;
39
+ /** Override the minimum value of the y-axis (defaults to data min). */
40
+ min?: number;
41
+ /** Override the maximum value of the y-axis (defaults to data max). */
42
+ max?: number;
43
+ /** Optional ref forwarded to the wrapper element. */
44
+ ref?: Ref<HTMLDivElement>;
45
+ }
46
+ declare function Sparkline({ data, variant, color, label, size, width, height, strokeWidth, showLastPoint, gradient, showBaseline, min, max, className, ref, ...props }: SparklineProps): ReactElement;
47
+ declare namespace Sparkline {
48
+ var displayName: string;
49
+ }
50
+ export { Sparkline };
@@ -0,0 +1,134 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { cva } from "class-variance-authority";
4
+ import { useId } from "react";
5
+ import { cn } from "../../../lib/utils";
6
+ export const sparklineVariantIds = ["line", "area", "bar"];
7
+ export const sparklineColorIds = [
8
+ "default",
9
+ "primary",
10
+ "positive",
11
+ "warning",
12
+ "destructive",
13
+ "muted",
14
+ "auto",
15
+ ];
16
+ export const sparklineSizeIds = ["sm", "md", "lg"];
17
+ const SIZE_TO_DIMENSIONS = {
18
+ sm: { width: 80, height: 24 },
19
+ md: { width: 120, height: 36 },
20
+ lg: { width: 180, height: 56 },
21
+ };
22
+ export const sparklineVariants = cva("inline-flex shrink-0 items-center align-middle", {
23
+ variants: {
24
+ size: {
25
+ sm: "h-6",
26
+ md: "h-9",
27
+ lg: "h-14",
28
+ },
29
+ },
30
+ defaultVariants: {
31
+ size: "md",
32
+ },
33
+ });
34
+ const SPARKLINE_STROKE_CLASSES = {
35
+ default: "stroke-schemavaults-brand-blue",
36
+ primary: "stroke-primary",
37
+ positive: "stroke-emerald-500 dark:stroke-emerald-400",
38
+ warning: "stroke-warning",
39
+ destructive: "stroke-destructive",
40
+ muted: "stroke-muted-foreground",
41
+ };
42
+ const SPARKLINE_FILL_CLASSES = {
43
+ default: "text-schemavaults-brand-blue",
44
+ primary: "text-primary",
45
+ positive: "text-emerald-500 dark:text-emerald-400",
46
+ warning: "text-warning",
47
+ destructive: "text-destructive",
48
+ muted: "text-muted-foreground",
49
+ };
50
+ const SPARKLINE_BAR_FILL_CLASSES = {
51
+ default: "fill-schemavaults-brand-blue",
52
+ primary: "fill-primary",
53
+ positive: "fill-emerald-500 dark:fill-emerald-400",
54
+ warning: "fill-warning",
55
+ destructive: "fill-destructive",
56
+ muted: "fill-muted-foreground",
57
+ };
58
+ function resolveAutoColor(data) {
59
+ if (data.length < 2)
60
+ return "default";
61
+ const first = data[0];
62
+ const last = data[data.length - 1];
63
+ if (last > first)
64
+ return "positive";
65
+ if (last < first)
66
+ return "destructive";
67
+ return "muted";
68
+ }
69
+ function buildLinePath(points) {
70
+ if (points.length === 0)
71
+ return "";
72
+ const [first, ...rest] = points;
73
+ const [fx, fy] = first;
74
+ let d = `M ${fx.toFixed(2)} ${fy.toFixed(2)}`;
75
+ for (const [x, y] of rest) {
76
+ d += ` L ${x.toFixed(2)} ${y.toFixed(2)}`;
77
+ }
78
+ return d;
79
+ }
80
+ function buildAreaPath(points, height) {
81
+ if (points.length === 0)
82
+ return "";
83
+ const linePath = buildLinePath(points);
84
+ const last = points[points.length - 1];
85
+ const first = points[0];
86
+ return `${linePath} L ${last[0].toFixed(2)} ${height.toFixed(2)} L ${first[0].toFixed(2)} ${height.toFixed(2)} Z`;
87
+ }
88
+ function Sparkline({ data, variant = "line", color = "default", label, size, width, height, strokeWidth = 1.5, showLastPoint = true, gradient = true, showBaseline = false, min, max, className, ref, ...props }) {
89
+ const resolvedSize = size ?? "md";
90
+ const dims = SIZE_TO_DIMENSIONS[resolvedSize];
91
+ const w = width ?? dims.width;
92
+ const h = height ?? dims.height;
93
+ const resolvedColor = color === "auto"
94
+ ? resolveAutoColor(data)
95
+ : color;
96
+ const gradientId = useId();
97
+ if (data.length === 0) {
98
+ return (_jsx("div", { ref: ref, role: "img", "aria-label": label, "data-slot": "sparkline", "data-variant": variant, "data-color": resolvedColor, className: cn(sparklineVariants({ size }), className), style: { width: w, height: h }, ...props, children: _jsx("svg", { width: w, height: h, viewBox: `0 0 ${w} ${h}`, "aria-hidden": "true" }) }));
99
+ }
100
+ const dataMin = min ?? Math.min(...data);
101
+ const dataMax = max ?? Math.max(...data);
102
+ const range = dataMax - dataMin || 1;
103
+ // Inset to keep strokes/dots fully visible inside the viewBox.
104
+ const inset = Math.max(strokeWidth, 2);
105
+ const innerWidth = Math.max(0, w - inset * 2);
106
+ const innerHeight = Math.max(0, h - inset * 2);
107
+ const xStep = data.length === 1 ? 0 : innerWidth / (data.length - 1);
108
+ const points = data.map((value, index) => {
109
+ const x = data.length === 1 ? inset + innerWidth / 2 : inset + index * xStep;
110
+ const normalized = (value - dataMin) / range;
111
+ const y = inset + innerHeight * (1 - normalized);
112
+ return [x, y];
113
+ });
114
+ const lastPoint = points[points.length - 1];
115
+ const strokeClass = SPARKLINE_STROKE_CLASSES[resolvedColor];
116
+ const fillClass = SPARKLINE_FILL_CLASSES[resolvedColor];
117
+ const barFillClass = SPARKLINE_BAR_FILL_CLASSES[resolvedColor];
118
+ return (_jsx("div", { ref: ref, role: "img", "aria-label": label, "data-slot": "sparkline", "data-variant": variant, "data-color": resolvedColor, className: cn(sparklineVariants({ size }), className), style: { width: w, height: h }, ...props, children: _jsxs("svg", { width: w, height: h, viewBox: `0 0 ${w} ${h}`, preserveAspectRatio: "none", "aria-hidden": "true", className: "overflow-visible", children: [variant === "area" && gradient ? (_jsx("defs", { children: _jsxs("linearGradient", { id: gradientId, x1: "0", y1: "0", x2: "0", y2: "1", className: fillClass, children: [_jsx("stop", { offset: "0%", stopColor: "currentColor", stopOpacity: "0.35" }), _jsx("stop", { offset: "100%", stopColor: "currentColor", stopOpacity: "0" })] }) })) : null, showBaseline ? (_jsx("line", { x1: inset, x2: w - inset, y1: h - inset, y2: h - inset, className: "stroke-border", strokeWidth: 1, strokeDasharray: "2 2" })) : null, variant === "bar" ? ((() => {
119
+ const gap = data.length > 32 ? 1 : 2;
120
+ const totalGap = gap * Math.max(0, data.length - 1);
121
+ const barWidth = Math.max(1, (innerWidth - totalGap) / Math.max(1, data.length));
122
+ const minHeight = 1;
123
+ return (_jsx("g", { className: barFillClass, children: data.map((value, index) => {
124
+ const normalized = (value - dataMin) / range;
125
+ const barHeight = Math.max(minHeight, innerHeight * normalized);
126
+ const x = inset + index * (barWidth + gap);
127
+ const y = inset + (innerHeight - barHeight);
128
+ return (_jsx("rect", { x: x, y: y, width: barWidth, height: barHeight, rx: Math.min(1.5, barWidth / 2) }, index));
129
+ }) }));
130
+ })()) : null, variant === "area" ? (_jsx("path", { d: buildAreaPath(points, h - inset), fill: gradient ? `url(#${gradientId})` : "currentColor", fillOpacity: gradient ? 1 : 0.2, stroke: "none", className: fillClass })) : null, variant !== "bar" ? (_jsx("path", { d: buildLinePath(points), fill: "none", strokeWidth: strokeWidth, strokeLinecap: "round", strokeLinejoin: "round", className: strokeClass })) : null, variant !== "bar" && showLastPoint ? (_jsx("circle", { cx: lastPoint[0], cy: lastPoint[1], r: Math.max(strokeWidth + 0.5, 2), className: cn(fillClass, "fill-current"), stroke: "hsl(var(--background))", strokeWidth: 1 })) : null] }) }));
131
+ }
132
+ Sparkline.displayName = "Sparkline";
133
+ export { Sparkline };
134
+ //# sourceMappingURL=sparkline.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sparkline.js","sourceRoot":"","sources":["../../../../src/components/ui/sparkline/sparkline.tsx"],"names":[],"mappings":"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"}
@@ -11,7 +11,7 @@ import { cn } from "../../../lib/utils";
11
11
  export function ThemedPageBackground({ children, ...props }) {
12
12
  const backgroundClassNames = [
13
13
  "schemavaults-themed-page-background",
14
- "relative min-h-full w-full",
14
+ "relative min-h-full w-full shrink-0",
15
15
  "bg-schemavaults-brand-blue bg-gradient-to-b from-schemavaults-brand-red to-transparent",
16
16
  ];
17
17
  if (typeof props.backgroundClassName === "string") {
@@ -1 +1 @@
1
- {"version":3,"file":"themed-page-background.js","sourceRoot":"","sources":["../../../../src/components/ui/themed-page-background/themed-page-background.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAGb,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AASjC;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAAC,EACnC,QAAQ,EACR,GAAG,KAAK,EACkB;IAC1B,MAAM,oBAAoB,GAAa;QACrC,qCAAqC;QACrC,4BAA4B;QAC5B,wFAAwF;KACzF,CAAC;IACF,IAAI,OAAO,KAAK,CAAC,mBAAmB,KAAK,QAAQ,EAAE,CAAC;QAClD,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvD,CAAC;IAED,OAAO,CACL,cAAK,SAAS,EAAE,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,YAC5C,cACE,SAAS,EAAE,EAAE,CACX,sDAAsD,EACtD,eAAe,EACf,mBAAmB,EACnB,KAAK,CAAC,SAAS,CAChB,YAEA,QAAQ,GACL,GACF,CACP,CAAC;AACJ,CAAC;AAED,eAAe,oBAAoB,CAAC"}
1
+ {"version":3,"file":"themed-page-background.js","sourceRoot":"","sources":["../../../../src/components/ui/themed-page-background/themed-page-background.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAGb,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AASjC;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAAC,EACnC,QAAQ,EACR,GAAG,KAAK,EACkB;IAC1B,MAAM,oBAAoB,GAAa;QACrC,qCAAqC;QACrC,qCAAqC;QACrC,wFAAwF;KACzF,CAAC;IACF,IAAI,OAAO,KAAK,CAAC,mBAAmB,KAAK,QAAQ,EAAE,CAAC;QAClD,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvD,CAAC;IAED,OAAO,CACL,cAAK,SAAS,EAAE,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,YAC5C,cACE,SAAS,EAAE,EAAE,CACX,sDAAsD,EACtD,eAAe,EACf,mBAAmB,EACnB,KAAK,CAAC,SAAS,CAChB,YAEA,QAAQ,GACL,GACF,CACP,CAAC;AACJ,CAAC;AAED,eAAe,oBAAoB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@schemavaults/ui",
3
- "version": "0.36.0",
3
+ "version": "0.38.0",
4
4
  "private": false,
5
5
  "license": "UNLICENSED",
6
6
  "description": "React.js UI components for SchemaVaults frontend applications",