@devalok/shilp-sutra 0.26.0 → 0.27.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/ui/button.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
  import { jsx as e, jsxs as C } from "react/jsx-runtime";
3
- import { ay as J } from "../_chunks/vendor-utils.js";
3
+ import { c as J } from "../_chunks/vendor-utils.js";
4
4
  import { IconCheck as L, IconX as O } from "@tabler/icons-react";
5
5
  import { S as P, K as Q } from "../_chunks/primitives.js";
6
6
  import * as a from "react";
@@ -103,8 +103,8 @@ const R = J(
103
103
  onClickAsync: m,
104
104
  asyncFeedbackDuration: T = 1500,
105
105
  children: n,
106
- ...y
107
- }, N) => {
106
+ ...N
107
+ }, y) => {
108
108
  const u = U(), S = A ?? u.variant, z = V ?? u.color, i = B ?? u.size ?? "md", f = W[i], G = ee[i], [t, d] = a.useState("idle"), k = a.useRef(), o = a.useRef(!0);
109
109
  a.useEffect(() => () => {
110
110
  o.current = !1, clearTimeout(k.current);
@@ -127,10 +127,10 @@ const R = J(
127
127
  x && "w-full",
128
128
  h
129
129
  ),
130
- ref: N,
130
+ ref: y,
131
131
  disabled: w || s,
132
132
  "aria-busy": s || void 0,
133
- ...y
133
+ ...N
134
134
  };
135
135
  return /* @__PURE__ */ e(P, { ...v, children: /* @__PURE__ */ e(Q, { children: n }) });
136
136
  }
@@ -152,7 +152,7 @@ const R = J(
152
152
  return /* @__PURE__ */ C(
153
153
  "button",
154
154
  {
155
- ...y,
155
+ ...N,
156
156
  className: c(
157
157
  R({ variant: S, color: z, size: i }),
158
158
  x && "w-full",
@@ -161,7 +161,7 @@ const R = J(
161
161
  r && "transition-colors duration-moderate-01 ease-productive-standard",
162
162
  h
163
163
  ),
164
- ref: N,
164
+ ref: y,
165
165
  disabled: w || s || r,
166
166
  "aria-busy": s || void 0,
167
167
  onClick: j ? I : M,
package/dist/ui/card.js CHANGED
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import { jsx as t, jsxs as p } from "react/jsx-runtime";
3
3
  import * as s from "react";
4
- import { ay as v } from "../_chunks/vendor-utils.js";
4
+ import { c as v } from "../_chunks/vendor-utils.js";
5
5
  import { tweens as w, springs as b, motionProps as g } from "./lib/motion.js";
6
6
  import { cn as o } from "./lib/utils.js";
7
7
  import { m } from "../_chunks/framer.js";
package/dist/ui/chip.js CHANGED
@@ -2,7 +2,7 @@
2
2
  import { jsxs as p, jsx as a } from "react/jsx-runtime";
3
3
  import * as f from "react";
4
4
  import { IconX as N } from "@tabler/icons-react";
5
- import { ay as h } from "../_chunks/vendor-utils.js";
5
+ import { c as h } from "../_chunks/vendor-utils.js";
6
6
  import { springs as w, motionProps as C } from "./lib/motion.js";
7
7
  import { cn as k } from "./lib/utils.js";
8
8
  import { m as n } from "../_chunks/framer.js";
package/dist/ui/input.js CHANGED
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import { jsx as d, jsxs as v } from "react/jsx-runtime";
3
3
  import * as g from "react";
4
- import { ay as p } from "../_chunks/vendor-utils.js";
4
+ import { c as p } from "../_chunks/vendor-utils.js";
5
5
  import { cn as o } from "./lib/utils.js";
6
6
  import { motionProps as x } from "./lib/motion.js";
7
7
  import { useFormField as h } from "./form.js";
@@ -1,4 +1,4 @@
1
- import { az as d, aA as e } from "../../_chunks/vendor-utils.js";
1
+ import { e as d, a as e } from "../../_chunks/vendor-utils.js";
2
2
  const t = d({
3
3
  extend: {
4
4
  theme: {
@@ -1,9 +1,9 @@
1
1
  "use client";
2
- import { jsxs as o, jsx as r } from "react/jsx-runtime";
2
+ import { jsxs as o, jsx as a } from "react/jsx-runtime";
3
3
  import * as h from "react";
4
4
  import { aQ as d, aR as l } from "../_chunks/primitives.js";
5
- import { ay as c } from "../_chunks/vendor-utils.js";
6
- import { cn as a } from "./lib/utils.js";
5
+ import { c } from "../_chunks/vendor-utils.js";
6
+ import { cn as r } from "./lib/utils.js";
7
7
  import { springs as w } from "./lib/motion.js";
8
8
  import { m as x } from "../_chunks/framer.js";
9
9
  const N = c(
@@ -42,32 +42,32 @@ const N = c(
42
42
  ...p
43
43
  }, g) => {
44
44
  const e = s == null;
45
- return /* @__PURE__ */ o("div", { className: a("flex items-center gap-ds-03", n && "w-full"), children: [
46
- /* @__PURE__ */ r(
45
+ return /* @__PURE__ */ o("div", { className: r("flex items-center gap-ds-03", n && "w-full"), children: [
46
+ /* @__PURE__ */ a(
47
47
  d,
48
48
  {
49
49
  ref: g,
50
50
  value: e ? null : s,
51
- className: a(N({ size: u }), f),
51
+ className: r(N({ size: u }), f),
52
52
  ...p,
53
- children: e ? /* @__PURE__ */ r(
53
+ children: e ? /* @__PURE__ */ a(
54
54
  l,
55
55
  {
56
- className: a(
56
+ className: r(
57
57
  m({ color: t }),
58
58
  "w-2/5 animate-progress-indeterminate motion-reduce:animate-none",
59
59
  i
60
60
  )
61
61
  }
62
- ) : /* @__PURE__ */ r(
62
+ ) : /* @__PURE__ */ a(
63
63
  l,
64
64
  {
65
- className: a("h-full", i),
65
+ className: r("h-full", i),
66
66
  asChild: !0,
67
- children: /* @__PURE__ */ r(
67
+ children: /* @__PURE__ */ a(
68
68
  x.div,
69
69
  {
70
- className: a(m({ color: t })),
70
+ className: r(m({ color: t })),
71
71
  initial: !1,
72
72
  animate: { width: `${s || 0}%` },
73
73
  transition: w.smooth
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import { jsx as d, jsxs as z } from "react/jsx-runtime";
3
3
  import D, { useState as k, useRef as I, useEffect as S, useCallback as R, useId as E } from "react";
4
- import { ay as H } from "../_chunks/vendor-utils.js";
4
+ import { c as H } from "../_chunks/vendor-utils.js";
5
5
  import { cn as w } from "./lib/utils.js";
6
6
  import { springs as L } from "./lib/motion.js";
7
7
  import { L as T, m as C, A } from "../_chunks/framer.js";
package/dist/ui/select.js CHANGED
@@ -3,7 +3,7 @@ import { jsxs as l, jsx as e } from "react/jsx-runtime";
3
3
  import * as o from "react";
4
4
  import { ao as c, ap as g, aq as n, ar as m, as as w, at as p, au as N, av as f, aw as u, ax as v, ay as S, az as h, aA as I, aB as R, aC as C } from "../_chunks/primitives.js";
5
5
  import { IconChevronDown as y, IconChevronUp as j, IconCheck as B } from "@tabler/icons-react";
6
- import { ay as V } from "../_chunks/vendor-utils.js";
6
+ import { c as V } from "../_chunks/vendor-utils.js";
7
7
  import { cn as r } from "./lib/utils.js";
8
8
  import { tweens as z, springs as T } from "./lib/motion.js";
9
9
  import { m as D } from "../_chunks/framer.js";
package/dist/ui/sheet.js CHANGED
@@ -1,8 +1,8 @@
1
1
  "use client";
2
2
  import { jsx as r, jsxs as c } from "react/jsx-runtime";
3
3
  import * as o from "react";
4
- import { a9 as h, aa as R, ab as u, ac as x, ad as y, ae as b, af as P, ag as j } from "../_chunks/primitives.js";
5
- import { ay as T } from "../_chunks/vendor-utils.js";
4
+ import { a9 as h, aa as R, ab as u, ac as x, ad as b, ae as y, af as P, ag as j } from "../_chunks/primitives.js";
5
+ import { c as T } from "../_chunks/vendor-utils.js";
6
6
  import { IconX as A } from "@tabler/icons-react";
7
7
  import { cn as a } from "./lib/utils.js";
8
8
  import { tweens as M, motionProps as g, springs as z } from "./lib/motion.js";
@@ -116,23 +116,23 @@ const U = o.forwardRef(
116
116
  );
117
117
  U.displayName = "SheetFooter";
118
118
  const X = o.forwardRef(({ className: e, ...s }, t) => /* @__PURE__ */ r(
119
- y,
119
+ b,
120
120
  {
121
121
  ref: t,
122
122
  className: a("text-ds-lg font-semibold text-surface-fg", e),
123
123
  ...s
124
124
  }
125
125
  ));
126
- X.displayName = y.displayName;
126
+ X.displayName = b.displayName;
127
127
  const q = o.forwardRef(({ className: e, ...s }, t) => /* @__PURE__ */ r(
128
- b,
128
+ y,
129
129
  {
130
130
  ref: t,
131
131
  className: a("text-ds-md text-surface-fg-muted", e),
132
132
  ...s
133
133
  }
134
134
  ));
135
- q.displayName = b.displayName;
135
+ q.displayName = y.displayName;
136
136
  export {
137
137
  F as Sheet,
138
138
  Y as SheetClose,
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import { jsx as s, jsxs as h, Fragment as E } from "react/jsx-runtime";
3
3
  import { S as v } from "../_chunks/primitives.js";
4
- import { ay as T } from "../_chunks/vendor-utils.js";
4
+ import { c as T } from "../_chunks/vendor-utils.js";
5
5
  import { IconLayoutSidebarLeftCollapse as A } from "@tabler/icons-react";
6
6
  import { useIsMobile as D } from "../hooks/use-mobile.js";
7
7
  import { springs as O } from "./lib/motion.js";
@@ -15,7 +15,7 @@ import { TooltipProvider as j, Tooltip as $, TooltipTrigger as F, TooltipContent
15
15
  import { createContext as V, forwardRef as i, useState as I, useCallback as C, useEffect as W, useMemo as k, useContext as q } from "react";
16
16
  import { m as U } from "../_chunks/framer.js";
17
17
  const X = "sidebar:state", Y = 60 * 60 * 24 * 7, J = "16rem", Q = "18rem", Z = "3rem", ee = "b", z = V(null);
18
- function y() {
18
+ function N() {
19
19
  const a = q(z);
20
20
  if (!a)
21
21
  throw new Error("useSidebar must be used within a SidebarProvider.");
@@ -31,7 +31,7 @@ const ae = i(
31
31
  children: n,
32
32
  ...u
33
33
  }, f) => {
34
- const c = D(), [b, p] = I(!1), [N, x] = I(a), g = e ?? N, S = C(
34
+ const c = D(), [b, p] = I(!1), [y, x] = I(a), g = e ?? y, S = C(
35
35
  (l) => {
36
36
  const m = typeof l == "function" ? l(g) : l;
37
37
  t ? t(m) : x(m), typeof document < "u" && (document.cookie = `${X}=${m}; path=/; max-age=${Y}`);
@@ -93,7 +93,7 @@ const te = i(
93
93
  children: o,
94
94
  ...n
95
95
  }, u) => {
96
- const { isMobile: f, state: c, openMobile: b, setOpenMobile: p } = y();
96
+ const { isMobile: f, state: c, openMobile: b, setOpenMobile: p } = N();
97
97
  return t === "none" ? /* @__PURE__ */ s(
98
98
  "div",
99
99
  {
@@ -165,7 +165,7 @@ const te = i(
165
165
  );
166
166
  te.displayName = "Sidebar";
167
167
  const se = i(({ className: a, onClick: e, ...t }, d) => {
168
- const { toggleSidebar: o } = y();
168
+ const { toggleSidebar: o } = N();
169
169
  return /* @__PURE__ */ h(
170
170
  R,
171
171
  {
@@ -188,7 +188,7 @@ const se = i(({ className: a, onClick: e, ...t }, d) => {
188
188
  se.displayName = "SidebarTrigger";
189
189
  const re = i(
190
190
  ({ className: a, ...e }, t) => {
191
- const { toggleSidebar: d } = y();
191
+ const { toggleSidebar: d } = N();
192
192
  return /* @__PURE__ */ s(
193
193
  "button",
194
194
  {
@@ -400,7 +400,7 @@ const he = T(
400
400
  children: u,
401
401
  ...f
402
402
  }, c) => {
403
- const b = a ? v : "button", { isMobile: p, state: N } = y(), x = /* @__PURE__ */ s(
403
+ const b = a ? v : "button", { isMobile: p, state: y } = N(), x = /* @__PURE__ */ s(
404
404
  b,
405
405
  {
406
406
  ref: c,
@@ -431,7 +431,7 @@ const he = T(
431
431
  {
432
432
  side: "right",
433
433
  align: "center",
434
- hidden: N !== "collapsed" || p,
434
+ hidden: y !== "collapsed" || p,
435
435
  ...o
436
436
  }
437
437
  )
@@ -510,7 +510,7 @@ const we = i(({ className: a, showIcon: e = !1, ...t }, d) => {
510
510
  );
511
511
  });
512
512
  we.displayName = "SidebarMenuSkeleton";
513
- const ye = i(
513
+ const Ne = i(
514
514
  ({ className: a, ...e }, t) => /* @__PURE__ */ s(
515
515
  "ul",
516
516
  {
@@ -525,11 +525,11 @@ const ye = i(
525
525
  }
526
526
  )
527
527
  );
528
- ye.displayName = "SidebarMenuSub";
529
- const Ne = i(
528
+ Ne.displayName = "SidebarMenuSub";
529
+ const ye = i(
530
530
  ({ ...a }, e) => /* @__PURE__ */ s("li", { ref: e, ...a })
531
531
  );
532
- Ne.displayName = "SidebarMenuSubItem";
532
+ ye.displayName = "SidebarMenuSubItem";
533
533
  const Me = i(({ asChild: a = !1, size: e = "md", isActive: t, className: d, ...o }, n) => /* @__PURE__ */ s(
534
534
  a ? v : "a",
535
535
  {
@@ -566,12 +566,12 @@ export {
566
566
  ve as SidebarMenuButton,
567
567
  ge as SidebarMenuItem,
568
568
  we as SidebarMenuSkeleton,
569
- ye as SidebarMenuSub,
569
+ Ne as SidebarMenuSub,
570
570
  Me as SidebarMenuSubButton,
571
- Ne as SidebarMenuSubItem,
571
+ ye as SidebarMenuSubItem,
572
572
  ae as SidebarProvider,
573
573
  re as SidebarRail,
574
574
  le as SidebarSeparator,
575
575
  se as SidebarTrigger,
576
- y as useSidebar
576
+ N as useSidebar
577
577
  };
@@ -1,6 +1,6 @@
1
1
  import { jsx as l, jsxs as f } from "react/jsx-runtime";
2
2
  import * as o from "react";
3
- import { ay as g } from "../_chunks/vendor-utils.js";
3
+ import { c as g } from "../_chunks/vendor-utils.js";
4
4
  import { cn as r } from "./lib/utils.js";
5
5
  const k = g("bg-skeleton-base", {
6
6
  variants: {
package/dist/ui/tabs.js CHANGED
@@ -2,27 +2,27 @@
2
2
  import { jsx as s, jsxs as N } from "react/jsx-runtime";
3
3
  import { aS as h, aT as v, aU as b, aV as p } from "../_chunks/primitives.js";
4
4
  import * as t from "react";
5
- import { ay as g } from "../_chunks/vendor-utils.js";
5
+ import { c as g } from "../_chunks/vendor-utils.js";
6
6
  import { cn as u } from "./lib/utils.js";
7
7
  import { springs as m, tweens as T } from "./lib/motion.js";
8
8
  import { L as w, m as f } from "../_chunks/framer.js";
9
- const x = t.createContext(void 0), I = t.forwardRef(({ value: a, defaultValue: i, onValueChange: e, ...n }, r) => {
10
- const [o, c] = t.useState(a ?? i ?? "");
9
+ const x = t.createContext(void 0), I = t.forwardRef(({ value: e, defaultValue: i, onValueChange: a, ...n }, r) => {
10
+ const [o, c] = t.useState(e ?? i ?? "");
11
11
  t.useEffect(() => {
12
- a !== void 0 && c(a);
13
- }, [a]);
12
+ e !== void 0 && c(e);
13
+ }, [e]);
14
14
  const d = t.useCallback(
15
15
  (l) => {
16
- c(l), e == null || e(l);
16
+ c(l), a == null || a(l);
17
17
  },
18
- [e]
18
+ [a]
19
19
  );
20
20
  return /* @__PURE__ */ s(x.Provider, { value: o, children: /* @__PURE__ */ s(
21
21
  h,
22
22
  {
23
23
  ref: r,
24
- value: a,
25
- defaultValue: a === void 0 ? i : void 0,
24
+ value: e,
25
+ defaultValue: e === void 0 ? i : void 0,
26
26
  onValueChange: d,
27
27
  ...n
28
28
  }
@@ -59,7 +59,7 @@ const y = t.createContext({
59
59
  },
60
60
  defaultVariants: { variant: "line" }
61
61
  }
62
- ), R = t.forwardRef(({ className: a, variant: i, ...e }, n) => {
62
+ ), R = t.forwardRef(({ className: e, variant: i, ...a }, n) => {
63
63
  const r = i ?? "line", o = t.useId(), c = t.useMemo(
64
64
  () => ({ variant: r, layoutId: `tab-indicator-${o}` }),
65
65
  [r, o]
@@ -68,19 +68,19 @@ const y = t.createContext({
68
68
  v,
69
69
  {
70
70
  ref: n,
71
- className: u(C({ variant: r }), a),
72
- ...e
71
+ className: u(C({ variant: r }), e),
72
+ ...a
73
73
  }
74
74
  ) }) });
75
75
  });
76
76
  R.displayName = v.displayName;
77
- const V = t.forwardRef(({ className: a, variant: i, children: e, ...n }, r) => {
77
+ const V = t.forwardRef(({ className: e, variant: i, children: a, ...n }, r) => {
78
78
  const o = t.useContext(y), c = t.useContext(x), d = i ?? o.variant, l = n.value === c;
79
79
  return /* @__PURE__ */ N(
80
80
  b,
81
81
  {
82
82
  ref: r,
83
- className: u(L({ variant: d }), a),
83
+ className: u(L({ variant: d }), e),
84
84
  ...n,
85
85
  children: [
86
86
  d === "contained" && l && /* @__PURE__ */ s(
@@ -91,7 +91,7 @@ const V = t.forwardRef(({ className: a, variant: i, children: e, ...n }, r) => {
91
91
  transition: m.smooth
92
92
  }
93
93
  ),
94
- /* @__PURE__ */ s("span", { className: "relative z-[1] inline-flex items-center gap-ds-02", children: e }),
94
+ /* @__PURE__ */ s("span", { className: "relative z-[1] inline-flex items-center gap-ds-02", children: a }),
95
95
  d === "line" && l && /* @__PURE__ */ s(
96
96
  f.span,
97
97
  {
@@ -105,15 +105,15 @@ const V = t.forwardRef(({ className: a, variant: i, children: e, ...n }, r) => {
105
105
  );
106
106
  });
107
107
  V.displayName = b.displayName;
108
- const j = t.forwardRef(({ className: a, children: i, ...e }, n) => /* @__PURE__ */ s(
108
+ const j = t.forwardRef(({ className: e, children: i, ...a }, n) => /* @__PURE__ */ s(
109
109
  p,
110
110
  {
111
111
  ref: n,
112
112
  className: u(
113
113
  "mt-ds-05 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent-9 focus-visible:ring-offset-2",
114
- a
114
+ e
115
115
  ),
116
- ...e,
116
+ ...a,
117
117
  children: /* @__PURE__ */ s(
118
118
  f.div,
119
119
  {
package/dist/ui/text.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as e from "react";
2
- import { ay as o } from "../_chunks/vendor-utils.js";
2
+ import { c as o } from "../_chunks/vendor-utils.js";
3
3
  import { cn as d } from "./lib/utils.js";
4
4
  const p = o("font-sans", {
5
5
  variants: {
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import { jsx as c } from "react/jsx-runtime";
3
3
  import * as u from "react";
4
- import { ay as l } from "../_chunks/vendor-utils.js";
4
+ import { c as l } from "../_chunks/vendor-utils.js";
5
5
  import { cn as m } from "./lib/utils.js";
6
6
  import { motionProps as f } from "./lib/motion.js";
7
7
  import { useFormField as b } from "./form.js";
package/dist/ui/toast.js CHANGED
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import { jsx as s, jsxs as d } from "react/jsx-runtime";
3
3
  import * as g from "react";
4
- import { t as f } from "../_chunks/vendor-client.js";
4
+ import { t as f } from "../_chunks/sonner.js";
5
5
  import { IconInfoCircle as S, IconAlertTriangle as M, IconCircleX as O, IconCircleCheck as P, IconCheck as B, IconAlertCircle as U, IconPhoto as j, IconFile as L, IconRefresh as _, IconX as z, IconUpload as G } from "@tabler/icons-react";
6
6
  import { cn as b } from "./lib/utils.js";
7
7
  import { springs as p, tweens as y } from "./lib/motion.js";
@@ -1,7 +1,7 @@
1
1
  "use client";
2
2
  import { jsx as t } from "react/jsx-runtime";
3
3
  import * as l from "react";
4
- import { T as f } from "../_chunks/vendor-client.js";
4
+ import { T as f } from "../_chunks/sonner.js";
5
5
  import { cn as p } from "./lib/utils.js";
6
6
  const c = l.forwardRef(
7
7
  ({
package/dist/ui/toggle.js CHANGED
@@ -2,7 +2,7 @@
2
2
  import { jsx as i } from "react/jsx-runtime";
3
3
  import * as n from "react";
4
4
  import { aH as e } from "../_chunks/primitives.js";
5
- import { ay as d } from "../_chunks/vendor-utils.js";
5
+ import { c as d } from "../_chunks/vendor-utils.js";
6
6
  import { springs as m, motionProps as c } from "./lib/motion.js";
7
7
  import { cn as f } from "./lib/utils.js";
8
8
  import { m as l } from "../_chunks/framer.js";
@@ -25,14 +25,14 @@ const p = l.create(e), g = d(
25
25
  size: "md"
26
26
  }
27
27
  }
28
- ), u = n.forwardRef(({ className: t, variant: s, size: o, ...a }, r) => /* @__PURE__ */ i(
28
+ ), u = n.forwardRef(({ className: t, variant: s, size: o, ...r }, a) => /* @__PURE__ */ i(
29
29
  p,
30
30
  {
31
- ref: r,
31
+ ref: a,
32
32
  whileTap: { scale: 0.95 },
33
33
  transition: m.snappy,
34
34
  className: f(g({ variant: s, size: o }), t),
35
- ...c(a)
35
+ ...c(r)
36
36
  }
37
37
  ));
38
38
  u.displayName = e.displayName;
package/llms-full.txt CHANGED
@@ -5,7 +5,7 @@
5
5
  > All variant values and props verified from source CVA definitions.
6
6
  >
7
7
  > Package: @devalok/shilp-sutra
8
- > Version: 0.26.0
8
+ > Version: 0.27.0
9
9
 
10
10
  ---
11
11
 
package/llms.txt CHANGED
@@ -4,6 +4,22 @@
4
4
  > Built on the same primitives as shadcn/ui but with key API differences.
5
5
  > Read this file BEFORE writing any UI code. Do NOT guess from shadcn/ui knowledge.
6
6
 
7
+ ## BREAKING CHANGES (v0.27.0 — Externalized Dependencies)
8
+
9
+ FilePreview and MarkdownViewer dependencies are now **external** (not bundled).
10
+ Install them if you use these components:
11
+
12
+ ```bash
13
+ pnpm add react-pdf react-zoom-pan-pinch react-syntax-highlighter
14
+ ```
15
+
16
+ These are optional peerDependencies — consumers who don't use FilePreview or MarkdownViewer are unaffected.
17
+
18
+ **Next.js optimization:** Add to your `next.config.js`:
19
+ ```js
20
+ optimizePackageImports: ['@devalok/shilp-sutra']
21
+ ```
22
+
7
23
  ## BREAKING CHANGES (v0.23.0 — Semantic Surface & Shadow Tokens)
8
24
 
9
25
  **Surface tokens renamed:** Numeric `surface-1..4` replaced with semantic names.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@devalok/shilp-sutra",
3
- "version": "0.26.0",
3
+ "version": "0.27.0",
4
4
  "description": "Devalok Design System — tokens, components, and patterns for Next.js",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -696,6 +696,9 @@
696
696
  "react": "^18 || ^19",
697
697
  "react-dom": "^18 || ^19",
698
698
  "react-markdown": "^10.0.0",
699
+ "react-pdf": "^10.0.0",
700
+ "react-syntax-highlighter": "^15.0.0 || ^16.0.0",
701
+ "react-zoom-pan-pinch": "^3.0.0",
699
702
  "remark-gfm": "^4.0.0",
700
703
  "tailwindcss": "^3.4.0"
701
704
  },
@@ -748,6 +751,15 @@
748
751
  "react-markdown": {
749
752
  "optional": true
750
753
  },
754
+ "react-pdf": {
755
+ "optional": true
756
+ },
757
+ "react-syntax-highlighter": {
758
+ "optional": true
759
+ },
760
+ "react-zoom-pan-pinch": {
761
+ "optional": true
762
+ },
751
763
  "remark-gfm": {
752
764
  "optional": true
753
765
  },
@@ -759,7 +771,6 @@
759
771
  "@emoji-mart/data": "^1.2.1",
760
772
  "@emoji-mart/react": "^1.1.1",
761
773
  "@floating-ui/react-dom": "^2.1.7",
762
- "@react-pdf/renderer": "^4.3.2",
763
774
  "@tabler/icons-react": "^3.37.1",
764
775
  "@tanstack/react-table": "^8.21.2",
765
776
  "@tanstack/react-virtual": "^3.13.19",
@@ -790,6 +801,7 @@
790
801
  "d3-time-format": "^4.1.0",
791
802
  "d3-transition": "^3.0.1",
792
803
  "date-fns": "^4.1.0",
804
+ "esbuild": "^0.27.4",
793
805
  "framer-motion": "^12.36.0",
794
806
  "input-otp": "^1.4.2",
795
807
  "react-markdown": "^10.1.0",