@schemavaults/ui 0.28.1 → 0.29.1

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.
@@ -124,3 +124,5 @@ export * from "./code-block";
124
124
  export type * from "./code-block";
125
125
  export * from "./segmented-control";
126
126
  export type * from "./segmented-control";
127
+ export * from "./marquee";
128
+ export type * from "./marquee";
@@ -61,4 +61,5 @@ export * from "./rating";
61
61
  export * from "./number-input";
62
62
  export * from "./code-block";
63
63
  export * from "./segmented-control";
64
+ export * from "./marquee";
64
65
  //# 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,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,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,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"}
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,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,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,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"}
@@ -0,0 +1,2 @@
1
+ export { Marquee, MarqueeItem, marqueeDirectionIds, marqueeFadeIds, marqueeGapIds, } from "./marquee";
2
+ export type { MarqueeProps, MarqueeItemProps, MarqueeDirectionId, MarqueeFadeId, MarqueeGapId, } from "./marquee";
@@ -0,0 +1,2 @@
1
+ export { Marquee, MarqueeItem, marqueeDirectionIds, marqueeFadeIds, marqueeGapIds, } from "./marquee";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/ui/marquee/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,WAAW,EACX,mBAAmB,EACnB,cAAc,EACd,aAAa,GACd,MAAM,WAAW,CAAC"}
@@ -0,0 +1,45 @@
1
+ import { type HTMLAttributes, type ReactElement, type ReactNode } from "react";
2
+ import { type VariantProps } from "class-variance-authority";
3
+ export declare const marqueeDirectionIds: readonly ["left", "right", "up", "down"];
4
+ export type MarqueeDirectionId = (typeof marqueeDirectionIds)[number];
5
+ export declare const marqueeFadeIds: readonly ["none", "background", "muted", "card"];
6
+ export type MarqueeFadeId = (typeof marqueeFadeIds)[number];
7
+ export declare const marqueeGapIds: readonly ["sm", "default", "lg", "xl"];
8
+ export type MarqueeGapId = (typeof marqueeGapIds)[number];
9
+ declare const marqueeRootVariants: (props?: ({
10
+ orientation?: "horizontal" | "vertical" | null | undefined;
11
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
12
+ export interface MarqueeProps extends Omit<HTMLAttributes<HTMLDivElement>, "children">, VariantProps<typeof marqueeRootVariants> {
13
+ /** Items to scroll. Each child is rendered as one cell of the rail. */
14
+ children: ReactNode;
15
+ /** Scroll direction. `left`/`right` scroll horizontally, `up`/`down` scroll vertically. Default: `"left"`. */
16
+ direction?: MarqueeDirectionId;
17
+ /** Seconds for one full loop. Lower = faster. Default: `30`. */
18
+ duration?: number;
19
+ /** How many copies of the content to render for a seamless loop. Default: `2`. Minimum: `2`. */
20
+ repeat?: number;
21
+ /** Pause animation on hover. Default: `true`. */
22
+ pauseOnHover?: boolean;
23
+ /** Edge fade mask color. Match this to the surface the marquee sits on. Default: `"none"`. */
24
+ fade?: MarqueeFadeId;
25
+ /** Length of the fade mask in pixels. Default: `64`. */
26
+ fadeSize?: number;
27
+ /** Spacing between items. Default: `"default"` (32px). */
28
+ gap?: MarqueeGapId;
29
+ }
30
+ export declare function Marquee({ className, children, direction, duration, repeat, pauseOnHover, fade, fadeSize, gap, ...props }: MarqueeProps): ReactElement;
31
+ export declare namespace Marquee {
32
+ var displayName: string;
33
+ }
34
+ export interface MarqueeItemProps extends HTMLAttributes<HTMLDivElement> {
35
+ children: ReactNode;
36
+ }
37
+ /**
38
+ * Optional convenience wrapper. You can pass plain children to <Marquee /> directly,
39
+ * but <MarqueeItem> gives you a styled, theme-aware "card" cell out of the box.
40
+ */
41
+ export declare function MarqueeItem({ className, children, ...props }: MarqueeItemProps): ReactElement;
42
+ export declare namespace MarqueeItem {
43
+ var displayName: string;
44
+ }
45
+ export default Marquee;
@@ -0,0 +1,119 @@
1
+ "use client";
2
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { Children, useCallback, useRef, } from "react";
4
+ import { cva } from "class-variance-authority";
5
+ import { domAnimation, LazyMotion, m, useAnimationFrame, useMotionValue, useReducedMotion, } from "../../../framer-motion";
6
+ import { cn } from "../../../lib/utils";
7
+ export const marqueeDirectionIds = [
8
+ "left",
9
+ "right",
10
+ "up",
11
+ "down",
12
+ ];
13
+ export const marqueeFadeIds = [
14
+ "none",
15
+ "background",
16
+ "muted",
17
+ "card",
18
+ ];
19
+ export const marqueeGapIds = [
20
+ "sm",
21
+ "default",
22
+ "lg",
23
+ "xl",
24
+ ];
25
+ const gapPx = {
26
+ sm: 16,
27
+ default: 32,
28
+ lg: 48,
29
+ xl: 64,
30
+ };
31
+ const fadeFromColor = {
32
+ none: "",
33
+ background: "from-background",
34
+ muted: "from-muted",
35
+ card: "from-card",
36
+ };
37
+ const marqueeRootVariants = cva("group/marquee relative flex overflow-hidden", {
38
+ variants: {
39
+ orientation: {
40
+ horizontal: "w-full flex-row",
41
+ vertical: "h-full flex-col",
42
+ },
43
+ },
44
+ defaultVariants: {
45
+ orientation: "horizontal",
46
+ },
47
+ });
48
+ function FadeMasks({ orientation, fade, size }) {
49
+ const fromClass = fadeFromColor[fade];
50
+ if (orientation === "horizontal") {
51
+ return (_jsxs(_Fragment, { children: [_jsx("div", { "aria-hidden": "true", className: cn("pointer-events-none absolute inset-y-0 left-0 z-10 bg-gradient-to-r to-transparent", fromClass), style: { width: size } }), _jsx("div", { "aria-hidden": "true", className: cn("pointer-events-none absolute inset-y-0 right-0 z-10 bg-gradient-to-l to-transparent", fromClass), style: { width: size } })] }));
52
+ }
53
+ return (_jsxs(_Fragment, { children: [_jsx("div", { "aria-hidden": "true", className: cn("pointer-events-none absolute inset-x-0 top-0 z-10 bg-gradient-to-b to-transparent", fromClass), style: { height: size } }), _jsx("div", { "aria-hidden": "true", className: cn("pointer-events-none absolute inset-x-0 bottom-0 z-10 bg-gradient-to-t to-transparent", fromClass), style: { height: size } })] }));
54
+ }
55
+ export function Marquee({ className, children, direction = "left", duration = 30, repeat = 2, pauseOnHover = true, fade = "none", fadeSize = 64, gap = "default", ...props }) {
56
+ const prefersReducedMotion = useReducedMotion();
57
+ const orientation = direction === "up" || direction === "down" ? "vertical" : "horizontal";
58
+ const isReversed = direction === "right" || direction === "down";
59
+ const childArray = Children.toArray(children);
60
+ const safeRepeat = Math.max(2, Math.floor(repeat));
61
+ const gapSize = gapPx[gap];
62
+ // Spacing is baked into each item via margin so the total track size is an exact
63
+ // integer multiple of one copy's size. This is what makes the modulo wrap seamless.
64
+ const itemSpacingStyle = orientation === "horizontal"
65
+ ? { marginRight: gapSize }
66
+ : { marginBottom: gapSize };
67
+ const copies = Array.from({ length: safeRepeat }, (_, copyIndex) => (_jsx("div", { "aria-hidden": copyIndex > 0 ? "true" : undefined, className: cn("flex shrink-0", orientation === "horizontal" ? "flex-row" : "flex-col"), children: childArray.map((child, itemIndex) => (_jsx("div", { className: "shrink-0", style: itemSpacingStyle, children: child }, `marquee-item-${copyIndex}-${itemIndex}`))) }, `marquee-copy-${copyIndex}`)));
68
+ // We drive the transform manually with useAnimationFrame so we can wrap with
69
+ // strict modulo arithmetic at the copy boundary — there's no array→array
70
+ // restart frame, no "snap back to start" between cycles, and no
71
+ // whileHover-induced reset. The result is a perfectly seamless loop in either
72
+ // direction at any duration, including when the user hovers in/out.
73
+ const offset = useMotionValue(0);
74
+ const trackRef = useRef(null);
75
+ const isHoveredRef = useRef(false);
76
+ useAnimationFrame((_t, deltaMs) => {
77
+ if (prefersReducedMotion)
78
+ return;
79
+ if (pauseOnHover && isHoveredRef.current)
80
+ return;
81
+ const el = trackRef.current;
82
+ if (!el)
83
+ return;
84
+ const fullSize = orientation === "horizontal" ? el.scrollWidth : el.scrollHeight;
85
+ const oneCopy = fullSize / safeRepeat;
86
+ if (oneCopy <= 0 || duration <= 0)
87
+ return;
88
+ const pxPerMs = oneCopy / (duration * 1000);
89
+ // Negative direction (left / up) walks toward -oneCopy then wraps to 0.
90
+ // Positive direction (right / down) walks toward +oneCopy then wraps to 0.
91
+ const sign = isReversed ? 1 : -1;
92
+ let next = offset.get() + sign * pxPerMs * deltaMs;
93
+ if (next <= -oneCopy)
94
+ next += oneCopy;
95
+ else if (next >= oneCopy)
96
+ next -= oneCopy;
97
+ offset.set(next);
98
+ });
99
+ const handleMouseEnter = useCallback(() => {
100
+ isHoveredRef.current = true;
101
+ }, []);
102
+ const handleMouseLeave = useCallback(() => {
103
+ isHoveredRef.current = false;
104
+ }, []);
105
+ return (_jsx(LazyMotion, { features: domAnimation, strict: true, children: _jsxs("div", { role: "marquee", "aria-label": props["aria-label"] ?? "Scrolling content", onMouseEnter: pauseOnHover ? handleMouseEnter : undefined, onMouseLeave: pauseOnHover ? handleMouseLeave : undefined, className: cn(marqueeRootVariants({ orientation }), className), ...props, children: [fade !== "none" ? (_jsx(FadeMasks, { orientation: orientation, fade: fade, size: fadeSize })) : null, _jsx(m.div, { ref: trackRef, className: cn("flex w-max", orientation === "horizontal" ? "flex-row" : "h-max flex-col"), style: orientation === "horizontal"
106
+ ? { x: offset, willChange: "transform" }
107
+ : { y: offset, willChange: "transform" }, children: copies })] }) }));
108
+ }
109
+ Marquee.displayName = "Marquee";
110
+ /**
111
+ * Optional convenience wrapper. You can pass plain children to <Marquee /> directly,
112
+ * but <MarqueeItem> gives you a styled, theme-aware "card" cell out of the box.
113
+ */
114
+ export function MarqueeItem({ className, children, ...props }) {
115
+ return (_jsx("div", { className: cn("flex items-center justify-center rounded-md border border-border bg-card px-4 py-2 text-sm text-card-foreground shadow-sm", className), ...props, children: children }));
116
+ }
117
+ MarqueeItem.displayName = "MarqueeItem";
118
+ export default Marquee;
119
+ //# sourceMappingURL=marquee.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"marquee.js","sourceRoot":"","sources":["../../../../src/components/ui/marquee/marquee.tsx"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export { m, AnimatePresence, domAnimation, LazyMotion, useAnimate, useTransform, useMotionValue, usePresence, useScroll, useMotionValueEvent, useReducedMotion, } from "framer-motion";
1
+ export { m, AnimatePresence, domAnimation, LazyMotion, useAnimate, useAnimationFrame, useTransform, useMotionValue, usePresence, useScroll, useMotionValueEvent, useReducedMotion, } from "framer-motion";
2
2
  export type { MotionValue, AnimationScope } from "framer-motion";
@@ -1,3 +1,3 @@
1
1
  "use client";
2
- export { m, AnimatePresence, domAnimation, LazyMotion, useAnimate, useTransform, useMotionValue, usePresence, useScroll, useMotionValueEvent, useReducedMotion, } from "framer-motion";
2
+ export { m, AnimatePresence, domAnimation, LazyMotion, useAnimate, useAnimationFrame, useTransform, useMotionValue, usePresence, useScroll, useMotionValueEvent, useReducedMotion, } from "framer-motion";
3
3
  //# sourceMappingURL=framer-motion.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"framer-motion.js","sourceRoot":"","sources":["../src/framer-motion.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EACL,CAAC,EACD,eAAe,EACf,YAAY,EACZ,UAAU,EACV,UAAU,EACV,YAAY,EACZ,cAAc,EACd,WAAW,EACX,SAAS,EACT,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"framer-motion.js","sourceRoot":"","sources":["../src/framer-motion.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EACL,CAAC,EACD,eAAe,EACf,YAAY,EACZ,UAAU,EACV,UAAU,EACV,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,WAAW,EACX,SAAS,EACT,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,eAAe,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@schemavaults/ui",
3
- "version": "0.28.1",
3
+ "version": "0.29.1",
4
4
  "private": false,
5
5
  "license": "UNLICENSED",
6
6
  "description": "React.js UI components for SchemaVaults frontend applications",
@@ -64,7 +64,7 @@
64
64
  "bun-types": "1.3.11",
65
65
  "eslint-plugin-storybook": "0.12.0",
66
66
  "ignore-loader": "0.1.2",
67
- "postcss": "8.5.6",
67
+ "postcss": "8.5.12",
68
68
  "postcss-loader": "8.1.1",
69
69
  "storybook": "8.6.17",
70
70
  "tailwindcss": "3.4.17",