@timmbr/ui 1.16.0 → 1.17.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.
@@ -4,6 +4,8 @@ import type { StepperProps } from './Stepper.types';
4
4
  * Progress through a sequence of steps (order tracking, checkout, onboarding).
5
5
  * Steps before `current` are complete; `status="error"` marks the current
6
6
  * step as failed (e.g. a cancelled order).
7
+ *
8
+ * Use `variant="progress"` for checkout/KYC flows with icons and status badges.
7
9
  */
8
10
  export declare const Stepper: React.ForwardRefExoticComponent<StepperProps & React.RefAttributes<HTMLOListElement>>;
9
11
  //# sourceMappingURL=Stepper.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Stepper.d.ts","sourceRoot":"","sources":["../../../src/components/Stepper/Stepper.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAQ/B,OAAO,KAAK,EAAa,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAQ/D;;;;GAIG;AACH,eAAO,MAAM,OAAO,uFA0EnB,CAAC"}
1
+ {"version":3,"file":"Stepper.d.ts","sourceRoot":"","sources":["../../../src/components/Stepper/Stepper.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAQ/B,OAAO,KAAK,EAA+B,YAAY,EAAE,MAAM,iBAAiB,CAAC;AASjF;;;;;;GAMG;AACH,eAAO,MAAM,OAAO,uFAsFnB,CAAC"}
@@ -3,6 +3,7 @@ import * as React from 'react';
3
3
  import { cn } from '@timmbr/utils';
4
4
  import { Check, X } from '@timmbr/icons';
5
5
  import { stepConnectorVariants, stepIndicatorVariants, stepperVariants } from './Stepper.styles.js';
6
+ import { ProgressStepper } from './subcomponents/ProgressStepper.js';
6
7
 
7
8
  function stateOf(index, current, status) {
8
9
  if (index < current) return "complete";
@@ -10,71 +11,84 @@ function stateOf(index, current, status) {
10
11
  return "upcoming";
11
12
  }
12
13
  const Stepper = React.forwardRef(
13
- ({ steps, current, status = "default", orientation = "horizontal", className, ...props }, ref) => /* @__PURE__ */ jsx(
14
- "ol",
15
- {
16
- ref,
17
- "data-slot": "stepper",
18
- "data-orientation": orientation,
19
- className: cn(stepperVariants({ orientation }), className),
20
- ...props,
21
- children: steps.map((step, index) => {
22
- const state = stateOf(index, current, status);
23
- const isLast = index === steps.length - 1;
24
- return /* @__PURE__ */ jsxs(
25
- "li",
26
- {
27
- "data-state": state,
28
- "aria-current": state === "current" || state === "error" ? "step" : void 0,
29
- className: cn(
30
- "relative flex min-w-0",
31
- orientation === "horizontal" ? "flex-1 flex-col items-center text-center" : "gap-3 pb-6 last:pb-0"
32
- ),
33
- children: [
34
- !isLast && /* @__PURE__ */ jsx(
35
- "span",
36
- {
37
- "aria-hidden": "true",
38
- className: stepConnectorVariants({
39
- orientation,
40
- complete: state === "complete"
41
- })
42
- }
14
+ ({ steps, current, status = "default", orientation = "horizontal", variant = "default", className, ...props }, ref) => {
15
+ if (variant === "progress") {
16
+ return /* @__PURE__ */ jsx(
17
+ ProgressStepper,
18
+ {
19
+ steps,
20
+ current,
21
+ status,
22
+ className
23
+ }
24
+ );
25
+ }
26
+ return /* @__PURE__ */ jsx(
27
+ "ol",
28
+ {
29
+ ref,
30
+ "data-slot": "stepper",
31
+ "data-orientation": orientation,
32
+ className: cn(stepperVariants({ orientation }), className),
33
+ ...props,
34
+ children: steps.map((step, index) => {
35
+ const state = stateOf(index, current, status);
36
+ const isLast = index === steps.length - 1;
37
+ return /* @__PURE__ */ jsxs(
38
+ "li",
39
+ {
40
+ "data-state": state,
41
+ "aria-current": state === "current" || state === "error" ? "step" : void 0,
42
+ className: cn(
43
+ "relative flex min-w-0",
44
+ orientation === "horizontal" ? "flex-1 flex-col items-center text-center" : "gap-3 pb-6 last:pb-0"
43
45
  ),
44
- /* @__PURE__ */ jsx("span", { className: stepIndicatorVariants({ state }), "aria-hidden": "true", children: state === "complete" ? /* @__PURE__ */ jsx(Check, { size: 14, strokeWidth: 3 }) : state === "error" ? /* @__PURE__ */ jsx(X, { size: 14, strokeWidth: 3 }) : index + 1 }),
45
- /* @__PURE__ */ jsxs(
46
- "span",
47
- {
48
- className: cn(
49
- "min-w-0",
50
- orientation === "horizontal" ? "mt-2 px-1" : "pt-0.5"
51
- ),
52
- children: [
53
- /* @__PURE__ */ jsxs(
54
- "span",
55
- {
56
- className: cn(
57
- "block text-body-2 font-medium",
58
- state === "upcoming" ? "text-muted-foreground" : "text-foreground",
59
- state === "error" && "text-destructive"
60
- ),
61
- children: [
62
- step.label,
63
- /* @__PURE__ */ jsx("span", { className: "sr-only", children: state === "complete" ? " (completed)" : state === "error" ? " (failed)" : "" })
64
- ]
65
- }
46
+ children: [
47
+ !isLast && /* @__PURE__ */ jsx(
48
+ "span",
49
+ {
50
+ "aria-hidden": "true",
51
+ className: stepConnectorVariants({
52
+ orientation,
53
+ complete: state === "complete"
54
+ })
55
+ }
56
+ ),
57
+ /* @__PURE__ */ jsx("span", { className: stepIndicatorVariants({ state }), "aria-hidden": "true", children: state === "complete" ? /* @__PURE__ */ jsx(Check, { size: 14, strokeWidth: 3 }) : state === "error" ? /* @__PURE__ */ jsx(X, { size: 14, strokeWidth: 3 }) : index + 1 }),
58
+ /* @__PURE__ */ jsxs(
59
+ "span",
60
+ {
61
+ className: cn(
62
+ "min-w-0",
63
+ orientation === "horizontal" ? "mt-2 px-1" : "pt-0.5"
66
64
  ),
67
- step.description && /* @__PURE__ */ jsx("span", { className: "mt-0.5 block text-caption-lg text-muted-foreground", children: step.description })
68
- ]
69
- }
70
- )
71
- ]
72
- },
73
- step.id ?? index
74
- );
75
- })
76
- }
77
- )
65
+ children: [
66
+ /* @__PURE__ */ jsxs(
67
+ "span",
68
+ {
69
+ className: cn(
70
+ "block text-body-2 font-medium",
71
+ state === "upcoming" ? "text-muted-foreground" : "text-foreground",
72
+ state === "error" && "text-destructive"
73
+ ),
74
+ children: [
75
+ step.label,
76
+ /* @__PURE__ */ jsx("span", { className: "sr-only", children: state === "complete" ? " (completed)" : state === "error" ? " (failed)" : "" })
77
+ ]
78
+ }
79
+ ),
80
+ step.description && /* @__PURE__ */ jsx("span", { className: "mt-0.5 block text-caption-lg text-muted-foreground", children: step.description })
81
+ ]
82
+ }
83
+ )
84
+ ]
85
+ },
86
+ step.id ?? index
87
+ );
88
+ })
89
+ }
90
+ );
91
+ }
78
92
  );
79
93
  Stepper.displayName = "Stepper";
80
94
 
@@ -11,4 +11,13 @@ export declare const stepConnectorVariants: (props?: ({
11
11
  complete?: boolean | null | undefined;
12
12
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
13
13
  export type StepperVariants = VariantProps<typeof stepperVariants>;
14
+ export declare const stepProgressIndicatorVariants: (props?: ({
15
+ state?: "current" | "error" | "complete" | "upcoming" | null | undefined;
16
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
17
+ export declare const stepProgressConnectorVariants: (props?: ({
18
+ state?: "current" | "error" | "complete" | "upcoming" | null | undefined;
19
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
20
+ export declare const stepProgressBadgeVariants: (props?: ({
21
+ state?: "current" | "error" | "complete" | "upcoming" | null | undefined;
22
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
14
23
  //# sourceMappingURL=Stepper.styles.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Stepper.styles.d.ts","sourceRoot":"","sources":["../../../src/components/Stepper/Stepper.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAElE,eAAO,MAAM,eAAe;;8EAQ1B,CAAC;AAEH,eAAO,MAAM,qBAAqB;;8EAajC,CAAC;AAEF,oDAAoD;AACpD,eAAO,MAAM,qBAAqB;;;8EAYhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,YAAY,CAAC,OAAO,eAAe,CAAC,CAAC"}
1
+ {"version":3,"file":"Stepper.styles.d.ts","sourceRoot":"","sources":["../../../src/components/Stepper/Stepper.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAElE,eAAO,MAAM,eAAe;;8EAQ1B,CAAC;AAEH,eAAO,MAAM,qBAAqB;;8EAajC,CAAC;AAEF,oDAAoD;AACpD,eAAO,MAAM,qBAAqB;;;8EAYhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,YAAY,CAAC,OAAO,eAAe,CAAC,CAAC;AAInE,eAAO,MAAM,6BAA6B;;8EAazC,CAAC;AAEF,eAAO,MAAM,6BAA6B;;8EAazC,CAAC;AAEF,eAAO,MAAM,yBAAyB;;8EAarC,CAAC"}
@@ -36,5 +36,47 @@ const stepConnectorVariants = cva("absolute", {
36
36
  },
37
37
  defaultVariants: { orientation: "horizontal", complete: false }
38
38
  });
39
+ const stepProgressIndicatorVariants = cva(
40
+ "relative z-10 flex size-10 shrink-0 items-center justify-center rounded-full border-2 transition-colors",
41
+ {
42
+ variants: {
43
+ state: {
44
+ complete: "border-primary bg-primary text-primary-foreground",
45
+ current: "border-primary bg-background text-primary ring-4 ring-primary/15",
46
+ error: "border-destructive bg-destructive text-destructive-foreground",
47
+ upcoming: "border-dashed border-muted-foreground/30 bg-background text-muted-foreground"
48
+ }
49
+ },
50
+ defaultVariants: { state: "upcoming" }
51
+ }
52
+ );
53
+ const stepProgressConnectorVariants = cva(
54
+ "absolute left-1/2 top-5 h-0.5 w-full",
55
+ {
56
+ variants: {
57
+ state: {
58
+ complete: "bg-primary",
59
+ current: "bg-primary",
60
+ error: "bg-destructive",
61
+ upcoming: "bg-border"
62
+ }
63
+ },
64
+ defaultVariants: { state: "upcoming" }
65
+ }
66
+ );
67
+ const stepProgressBadgeVariants = cva(
68
+ "inline-flex items-center rounded-full px-2.5 py-0.5 text-caption-lg font-medium",
69
+ {
70
+ variants: {
71
+ state: {
72
+ complete: "border-transparent bg-success/10 text-success",
73
+ current: "border-transparent bg-primary/10 text-primary",
74
+ error: "border-transparent bg-destructive/10 text-destructive",
75
+ upcoming: "border border-border bg-transparent text-muted-foreground"
76
+ }
77
+ },
78
+ defaultVariants: { state: "upcoming" }
79
+ }
80
+ );
39
81
 
40
- export { stepConnectorVariants, stepIndicatorVariants, stepperVariants };
82
+ export { stepConnectorVariants, stepIndicatorVariants, stepProgressBadgeVariants, stepProgressConnectorVariants, stepProgressIndicatorVariants, stepperVariants };
@@ -2,9 +2,20 @@ import type * as React from 'react';
2
2
  export type StepState = 'complete' | 'current' | 'error' | 'upcoming';
3
3
  export interface StepItem {
4
4
  id?: string;
5
+ /** Primary step name — rendered as bold title in the progress variant. */
5
6
  label: React.ReactNode;
6
- /** Secondary line, e.g. a date. */
7
+ /** Secondary line below the title — e.g. a date, hint, or sub-step name. */
7
8
  description?: React.ReactNode;
9
+ /** Icon rendered inside the step circle (progress variant).
10
+ * Completed steps always show <Check> regardless of this prop. */
11
+ icon?: React.ReactNode;
12
+ /** Override the auto-derived status badge text.
13
+ * Defaults: complete → 'Completed', current → 'In Progress', error → 'Failed', upcoming → 'Pending'. */
14
+ statusLabel?: string;
15
+ }
16
+ /** Step item for the `progress` variant — `label` and `icon` are required. */
17
+ export interface ProgressStepItem extends Omit<StepItem, 'icon'> {
18
+ icon: React.ReactNode;
8
19
  }
9
20
  export interface StepperProps extends React.OlHTMLAttributes<HTMLOListElement> {
10
21
  steps: StepItem[];
@@ -13,5 +24,7 @@ export interface StepperProps extends React.OlHTMLAttributes<HTMLOListElement> {
13
24
  /** `error` marks the current step as failed. */
14
25
  status?: 'default' | 'error';
15
26
  orientation?: 'horizontal' | 'vertical';
27
+ /** 'default' = numbered circles (existing). 'progress' = icon circles + status badges. */
28
+ variant?: 'default' | 'progress';
16
29
  }
17
30
  //# sourceMappingURL=Stepper.types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Stepper.types.d.ts","sourceRoot":"","sources":["../../../src/components/Stepper/Stepper.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAEpC,MAAM,MAAM,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,UAAU,CAAC;AAEtE,MAAM,WAAW,QAAQ;IACvB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,mCAAmC;IACnC,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC/B;AAED,MAAM,WAAW,YAAa,SAAQ,KAAK,CAAC,gBAAgB,CAAC,gBAAgB,CAAC;IAC5E,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,+DAA+D;IAC/D,OAAO,EAAE,MAAM,CAAC;IAChB,gDAAgD;IAChD,MAAM,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;IAC7B,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;CACzC"}
1
+ {"version":3,"file":"Stepper.types.d.ts","sourceRoot":"","sources":["../../../src/components/Stepper/Stepper.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAEpC,MAAM,MAAM,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,UAAU,CAAC;AAEtE,MAAM,WAAW,QAAQ;IACvB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,0EAA0E;IAC1E,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,4EAA4E;IAC5E,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC9B;uEACmE;IACnE,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB;6GACyG;IACzG,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,8EAA8E;AAC9E,MAAM,WAAW,gBAAiB,SAAQ,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC9D,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC;CACvB;AAED,MAAM,WAAW,YAAa,SAAQ,KAAK,CAAC,gBAAgB,CAAC,gBAAgB,CAAC;IAC5E,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,+DAA+D;IAC/D,OAAO,EAAE,MAAM,CAAC;IAChB,gDAAgD;IAChD,MAAM,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;IAC7B,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;IACxC,0FAA0F;IAC1F,OAAO,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC;CAClC"}
@@ -0,0 +1,10 @@
1
+ import * as React from 'react';
2
+ import type { StepperProps } from '../Stepper.types';
3
+ export interface ProgressStepperProps {
4
+ steps: StepperProps['steps'];
5
+ current: number;
6
+ status?: StepperProps['status'];
7
+ className?: string;
8
+ }
9
+ export declare const ProgressStepper: React.ForwardRefExoticComponent<ProgressStepperProps & React.RefAttributes<HTMLOListElement>>;
10
+ //# sourceMappingURL=ProgressStepper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProgressStepper.d.ts","sourceRoot":"","sources":["../../../../src/components/Stepper/subcomponents/ProgressStepper.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAQ/B,OAAO,KAAK,EAAa,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAehE,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,eAAe,+FAyE3B,CAAC"}
@@ -0,0 +1,77 @@
1
+ import { jsx, jsxs } from 'react/jsx-runtime';
2
+ import * as React from 'react';
3
+ import { cn } from '@timmbr/utils';
4
+ import { Check, X } from '@timmbr/icons';
5
+ import { stepProgressConnectorVariants, stepProgressIndicatorVariants, stepProgressBadgeVariants } from '../Stepper.styles.js';
6
+
7
+ function stateOf(index, current, status) {
8
+ if (index < current) return "complete";
9
+ if (index === current) return status === "error" ? "error" : "current";
10
+ return "upcoming";
11
+ }
12
+ const DEFAULT_BADGE_LABELS = {
13
+ complete: "Completed",
14
+ current: "In Progress",
15
+ error: "Failed",
16
+ upcoming: "Pending"
17
+ };
18
+ const ProgressStepper = React.forwardRef(
19
+ ({ steps, current, status = "default", className }, ref) => /* @__PURE__ */ jsx(
20
+ "ol",
21
+ {
22
+ ref,
23
+ "data-slot": "stepper",
24
+ "data-variant": "progress",
25
+ className: cn("flex items-start font-sans", className),
26
+ children: steps.map((step, index) => {
27
+ const state = stateOf(index, current, status);
28
+ const isLast = index === steps.length - 1;
29
+ const badgeLabel = step.statusLabel ?? DEFAULT_BADGE_LABELS[state];
30
+ return /* @__PURE__ */ jsxs(
31
+ "li",
32
+ {
33
+ "data-state": state,
34
+ "aria-current": state === "current" || state === "error" ? "step" : void 0,
35
+ className: "relative flex flex-1 flex-col items-center text-center",
36
+ children: [
37
+ !isLast && /* @__PURE__ */ jsx(
38
+ "span",
39
+ {
40
+ "aria-hidden": "true",
41
+ className: cn(stepProgressConnectorVariants({ state }), "top-[42px]")
42
+ }
43
+ ),
44
+ /* @__PURE__ */ jsxs("span", { className: "mb-1.5 block text-caption-lg font-medium uppercase tracking-wider text-muted-foreground", children: [
45
+ "Step ",
46
+ index + 1
47
+ ] }),
48
+ /* @__PURE__ */ jsx("span", { className: stepProgressIndicatorVariants({ state }), "aria-hidden": "true", children: state === "complete" ? /* @__PURE__ */ jsx(Check, { size: 18, strokeWidth: 2.5 }) : state === "error" ? /* @__PURE__ */ jsx(X, { size: 18, strokeWidth: 2.5 }) : step.icon ? step.icon : /* @__PURE__ */ jsx("span", { className: "text-body-2 font-semibold tabular-nums", children: index + 1 }) }),
49
+ /* @__PURE__ */ jsxs("span", { className: "mt-2.5 min-w-0 px-1", children: [
50
+ /* @__PURE__ */ jsxs(
51
+ "span",
52
+ {
53
+ className: cn(
54
+ "block text-body-2 font-semibold",
55
+ state === "upcoming" ? "text-muted-foreground" : "text-foreground",
56
+ state === "error" && "text-destructive"
57
+ ),
58
+ children: [
59
+ step.label,
60
+ /* @__PURE__ */ jsx("span", { className: "sr-only", children: state === "complete" ? " (completed)" : state === "error" ? " (failed)" : state === "current" ? " (in progress)" : " (pending)" })
61
+ ]
62
+ }
63
+ ),
64
+ step.description && /* @__PURE__ */ jsx("span", { className: "mt-0.5 block text-caption-lg text-muted-foreground", children: step.description }),
65
+ /* @__PURE__ */ jsx("span", { className: cn("mt-1.5 inline-flex", stepProgressBadgeVariants({ state })), children: badgeLabel })
66
+ ] })
67
+ ]
68
+ },
69
+ step.id ?? index
70
+ );
71
+ })
72
+ }
73
+ )
74
+ );
75
+ ProgressStepper.displayName = "ProgressStepper";
76
+
77
+ export { ProgressStepper };
@@ -0,0 +1,3 @@
1
+ export { ProgressStepper } from './ProgressStepper';
2
+ export type { ProgressStepperProps } from './ProgressStepper';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/Stepper/subcomponents/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,YAAY,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC"}
package/dist/index.js CHANGED
@@ -196,7 +196,7 @@ export { snackbarActionVariants, snackbarCloseVariants, snackbarHostVariants, sn
196
196
  export { spinnerIconVariants, spinnerVariants } from './components/Spinner/Spinner.styles.js';
197
197
  export { stackVariants } from './components/Stack/Stack.styles.js';
198
198
  export { statHelpTextVariants, statIndicatorVariants, statLabelVariants, statValueVariants, statVariants } from './components/Stat/Stat.styles.js';
199
- export { stepConnectorVariants, stepIndicatorVariants, stepperVariants } from './components/Stepper/Stepper.styles.js';
199
+ export { stepConnectorVariants, stepIndicatorVariants, stepProgressBadgeVariants, stepProgressConnectorVariants, stepProgressIndicatorVariants, stepperVariants } from './components/Stepper/Stepper.styles.js';
200
200
  export { stockMeterFillVariants, stockMeterTrackVariants, stockMeterVariants } from './components/StockMeter/StockMeter.styles.js';
201
201
  export { subNavFooterVariants, subNavIconVariants, subNavItemVariants, subNavListVariants } from './components/SubNav/SubNav.styles.js';
202
202
  export { swatchVariants } from './components/Swatch/Swatch.styles.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@timmbr/ui",
3
- "version": "1.16.0",
3
+ "version": "1.17.1",
4
4
  "description": "High-performance, Next.js App Router-compatible UI design system components for Timmbr",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -52,10 +52,10 @@
52
52
  "@tiptap/extension-placeholder": "^2.11.0",
53
53
  "@tiptap/extension-character-count": "^2.11.0",
54
54
  "@timmbr/hooks": "1.3.0",
55
- "@timmbr/motion": "1.2.5",
55
+ "@timmbr/icons": "1.6.1",
56
56
  "@timmbr/utils": "1.6.0",
57
- "@timmbr/icons": "1.6.0",
58
- "@timmbr/theme": "1.3.0"
57
+ "@timmbr/theme": "1.3.0",
58
+ "@timmbr/motion": "1.2.5"
59
59
  },
60
60
  "peerDependencies": {
61
61
  "next": ">=13.0.0 || >=14.0.0 || >=15.0.0 || >=16.0.0",