@rinzai/zen 0.8.5 → 0.9.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.
Files changed (75) hide show
  1. package/dist/animated-number/index.d.ts.map +1 -1
  2. package/dist/animated-number/index.js +19 -18
  3. package/dist/breadcrumbs/index.d.ts +15 -0
  4. package/dist/breadcrumbs/index.d.ts.map +1 -0
  5. package/dist/breadcrumbs/index.js +39 -0
  6. package/dist/card/index.d.ts +3 -1
  7. package/dist/card/index.d.ts.map +1 -1
  8. package/dist/card/index.js +3 -2
  9. package/dist/chart/donut.d.ts.map +1 -1
  10. package/dist/chart/donut.js +72 -70
  11. package/dist/chart/index.d.ts.map +1 -1
  12. package/dist/chart/index.js +154 -152
  13. package/dist/code-block/index.js +1 -1
  14. package/dist/code-input/index.d.ts +20 -0
  15. package/dist/code-input/index.d.ts.map +1 -0
  16. package/dist/code-input/index.js +44 -0
  17. package/dist/command-palette/index.d.ts +37 -0
  18. package/dist/command-palette/index.d.ts.map +1 -0
  19. package/dist/command-palette/index.js +120 -0
  20. package/dist/dialog/index.d.ts +9 -1
  21. package/dist/dialog/index.d.ts.map +1 -1
  22. package/dist/dialog/index.js +116 -32
  23. package/dist/empty-state/index.d.ts +14 -0
  24. package/dist/empty-state/index.d.ts.map +1 -0
  25. package/dist/empty-state/index.js +31 -0
  26. package/dist/file-drop/index.d.ts +18 -0
  27. package/dist/file-drop/index.d.ts.map +1 -0
  28. package/dist/file-drop/index.js +49 -0
  29. package/dist/index.d.ts +13 -1
  30. package/dist/index.d.ts.map +1 -1
  31. package/dist/lib.js +75 -63
  32. package/dist/pagination/index.d.ts +26 -0
  33. package/dist/pagination/index.d.ts.map +1 -0
  34. package/dist/pagination/index.js +62 -0
  35. package/dist/skeleton/index.d.ts +12 -2
  36. package/dist/skeleton/index.d.ts.map +1 -1
  37. package/dist/skeleton/index.js +11 -5
  38. package/dist/sparkline/index.d.ts +15 -0
  39. package/dist/sparkline/index.d.ts.map +1 -0
  40. package/dist/sparkline/index.js +56 -0
  41. package/dist/stepper/index.d.ts +19 -0
  42. package/dist/stepper/index.d.ts.map +1 -0
  43. package/dist/stepper/index.js +53 -0
  44. package/dist/table/index.d.ts +6 -1
  45. package/dist/table/index.d.ts.map +1 -1
  46. package/dist/table/index.js +78 -46
  47. package/dist/table-of-contents/index.d.ts +1 -0
  48. package/dist/table-of-contents/index.d.ts.map +1 -1
  49. package/dist/table-of-contents/index.js +25 -23
  50. package/dist/tag-input/index.d.ts +19 -0
  51. package/dist/tag-input/index.d.ts.map +1 -0
  52. package/dist/tag-input/index.js +61 -0
  53. package/dist/theme.css +159 -0
  54. package/dist/timeline/index.d.ts +18 -0
  55. package/dist/timeline/index.d.ts.map +1 -0
  56. package/dist/timeline/index.js +45 -0
  57. package/dist/tree/index.d.ts.map +1 -1
  58. package/dist/tree/index.js +68 -67
  59. package/dist/utils/indicator.d.ts.map +1 -1
  60. package/dist/utils/indicator.js +1 -1
  61. package/dist/utils/motion.d.ts +3 -0
  62. package/dist/utils/motion.d.ts.map +1 -0
  63. package/dist/utils/motion.js +7 -0
  64. package/dist/utils/section-link.d.ts +9 -0
  65. package/dist/utils/section-link.d.ts.map +1 -0
  66. package/dist/utils/section-link.js +10 -0
  67. package/dist/utils/theme-wave.d.ts.map +1 -1
  68. package/dist/utils/theme-wave.js +84 -83
  69. package/dist/utils/useAnchoredPopup.d.ts.map +1 -1
  70. package/dist/utils/useAnchoredPopup.js +6 -1
  71. package/dist/utils/useSeen.d.ts +4 -0
  72. package/dist/utils/useSeen.d.ts.map +1 -0
  73. package/dist/utils/useSeen.js +17 -0
  74. package/dist/zen.css +1 -1
  75. package/package.json +1 -1
@@ -0,0 +1,120 @@
1
+ "use client";
2
+ import { cx as e } from "../utils/cx.js";
3
+ import { useModal as t } from "../dialog/index.js";
4
+ import { useEffect as n, useId as r, useMemo as i, useRef as a, useState as o } from "react";
5
+ import { jsx as s, jsxs as c } from "react/jsx-runtime";
6
+ //#region packages/command-palette/index.tsx
7
+ function l({ open: l, onOpenChange: d, items: f, placeholder: p = "Search…", empty: m = "No results", label: h = "Commands", className: g }) {
8
+ let _ = a(null), v = a(null), y = a(null), b = r(), [x, S] = o(""), [C, w] = o(0);
9
+ t(_, l, v);
10
+ let [T, E] = o(l);
11
+ l !== T && (E(l), l && (S(""), w(0)));
12
+ let D = i(() => u(f, x), [f, x]), O = i(() => {
13
+ let e = /* @__PURE__ */ new Map();
14
+ return D.forEach((t, n) => {
15
+ let r = t.group ?? "";
16
+ e.set(r, [...e.get(r) ?? [], {
17
+ item: t,
18
+ index: n
19
+ }]);
20
+ }), e;
21
+ }, [D]), k = Math.min(C, D.length - 1);
22
+ n(() => {
23
+ y.current?.querySelector(`[data-index="${k}"]`)?.scrollIntoView({ block: "nearest" });
24
+ }, [k]);
25
+ let A = (e) => {
26
+ e && (d(!1), e.onSelect());
27
+ };
28
+ return /* @__PURE__ */ c("dialog", {
29
+ ref: _,
30
+ "aria-label": h,
31
+ className: e("zen__dialog zen__command-palette glass glass-blur glow-edge text-card-foreground bg-card/90! overflow-hidden p-0", "mx-auto mt-[12dvh] mb-auto w-[36rem] max-w-[calc(100vw-2rem)] rounded-xl", "backdrop:bg-[color:var(--backdrop-scrim,oklch(0_0_0/0.5))] backdrop:backdrop-blur-sm pointer-coarse:backdrop:backdrop-blur-none", g),
32
+ onCancel: (e) => {
33
+ e.preventDefault(), d(!1);
34
+ },
35
+ onClick: (e) => e.target === e.currentTarget && d(!1),
36
+ children: [/* @__PURE__ */ s("input", {
37
+ ref: v,
38
+ role: "combobox",
39
+ "aria-expanded": !0,
40
+ "aria-controls": `${b}-list`,
41
+ "aria-activedescendant": D.length ? `${b}-${k}` : void 0,
42
+ "aria-autocomplete": "list",
43
+ "aria-label": h,
44
+ placeholder: p,
45
+ value: x,
46
+ onChange: (e) => {
47
+ S(e.target.value), w(0);
48
+ },
49
+ onKeyDown: (e) => {
50
+ let t = D.length - 1, n = e.key === "ArrowDown" ? (k + 1) % (t + 1) : e.key === "ArrowUp" ? (k - 1 + t + 1) % (t + 1) : e.key === "Home" && e.ctrlKey ? 0 : e.key === "End" && e.ctrlKey ? t : null;
51
+ n !== null && D.length ? (e.preventDefault(), w(n)) : e.key === "Enter" && (e.preventDefault(), A(D[k]));
52
+ },
53
+ className: "border-tint/[0.07] h-14 w-full border-b bg-transparent px-5 text-base outline-hidden placeholder:text-[color:oklch(var(--muted-foreground)/var(--zen-placeholder))]"
54
+ }), /* @__PURE__ */ c("div", {
55
+ ref: y,
56
+ id: `${b}-list`,
57
+ role: "listbox",
58
+ "aria-label": h,
59
+ className: "max-h-[min(24rem,60dvh)] overflow-y-auto p-2",
60
+ children: [!D.length && /* @__PURE__ */ s("p", {
61
+ className: "text-muted-foreground my-0! px-3 py-8 text-center text-sm",
62
+ children: m
63
+ }), [...O].map(([e, t]) => /* @__PURE__ */ c("div", {
64
+ role: "group",
65
+ "aria-label": e || void 0,
66
+ className: "not-first:mt-2",
67
+ children: [e && /* @__PURE__ */ s("div", {
68
+ "aria-hidden": !0,
69
+ className: "text-muted-foreground text-2xs px-3 pt-2 pb-1 tracking-widest uppercase",
70
+ children: e
71
+ }), t.map(({ item: e, index: t }) => /* @__PURE__ */ c("div", {
72
+ id: `${b}-${t}`,
73
+ "data-index": t,
74
+ role: "option",
75
+ "aria-selected": t === k,
76
+ onPointerMove: () => t !== k && w(t),
77
+ onClick: () => A(e),
78
+ className: "text-muted-foreground aria-selected:bg-primary/15 aria-selected:text-foreground flex cursor-pointer items-center gap-3 rounded-lg px-3 py-2.5 text-sm aria-selected:shadow-[inset_0_0_0_1px_oklch(var(--primary)/0.25)] [&_svg]:size-4 [&_svg]:shrink-0",
79
+ children: [
80
+ e.icon,
81
+ /* @__PURE__ */ s("span", {
82
+ className: "min-w-0 flex-1 truncate",
83
+ children: e.label
84
+ }),
85
+ e.hint && /* @__PURE__ */ s("span", {
86
+ className: "text-muted-foreground text-xs",
87
+ children: e.hint
88
+ })
89
+ ]
90
+ }, e.id ?? e.label))]
91
+ }, e))]
92
+ })]
93
+ });
94
+ }
95
+ function u(e, t) {
96
+ let n = t.toLowerCase().split(/\s+/).filter(Boolean);
97
+ if (!n.length) return e;
98
+ let r = t.trim().toLowerCase(), i = e.filter((e) => {
99
+ let t = [
100
+ e.label,
101
+ ...e.keywords ?? [],
102
+ e.group ?? ""
103
+ ].join(" ").toLowerCase();
104
+ return n.every((e) => t.includes(e));
105
+ }), a = (e) => +!e.label.toLowerCase().startsWith(r);
106
+ return i.sort((e, t) => a(e) - a(t));
107
+ }
108
+ function d(e, t = "k") {
109
+ let r = a(e);
110
+ n(() => {
111
+ r.current = e;
112
+ }), n(() => {
113
+ let e = (e) => {
114
+ e.key.toLowerCase() !== t || !(e.metaKey || e.ctrlKey) || e.altKey || e.shiftKey || (e.preventDefault(), r.current());
115
+ };
116
+ return window.addEventListener("keydown", e), () => window.removeEventListener("keydown", e);
117
+ }, [t]);
118
+ }
119
+ //#endregion
120
+ export { l as default, u as search, d as useCommandPaletteShortcut };
@@ -5,9 +5,17 @@ import { ComponentProps, ReactNode, RefObject } from 'react';
5
5
  * the page behind is inert, and Escape closes it. `dismissible={false}` is for
6
6
  * flows the user must finish (no Escape or outside-click close). With `side`,
7
7
  * it's a sheet that slides in from that edge: a bottom sheet on phones, a side
8
- * panel for filters or details.
8
+ * panel for filters or details. On touch, a sheet swipes back to its edge to close.
9
9
  */
10
10
  export default function Dialog({ open, onOpenChange, title, description, children, dismissible, initialFocus, size, side, className, role, }: DialogProps): import('react').JSX.Element;
11
+ /**
12
+ * Opens and closes a <dialog> as a modal with `open`: focus moves in (to
13
+ * `initialFocus` if given) and back after, the page behind is inert and
14
+ * doesn't scroll, and toasts show inside it while it's open. For your own
15
+ * modal on a <dialog> (Dialog and CommandPalette use it); give the element
16
+ * the zen__dialog class for the open and close animation.
17
+ */
18
+ export declare function useModal(ref: RefObject<HTMLDialogElement | null>, open: boolean, initialFocus?: RefObject<HTMLElement | null>): void;
11
19
  /** The row of actions at the end of a dialog, right-aligned. */
12
20
  export declare function DialogFooter({ className, ...rest }: ComponentProps<'div'>): import('react').JSX.Element;
13
21
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/dialog/index.tsx"],"names":[],"mappings":"AACA,OAAe,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAGlD,OAAO,EACH,cAAc,EAGd,SAAS,EACT,SAAS,EAKZ,MAAM,OAAO,CAAC;AAKf;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAC3B,IAAI,EACJ,YAAY,EACZ,KAAK,EACL,WAAW,EACX,QAAQ,EACR,WAAkB,EAClB,YAAY,EACZ,IAAW,EACX,IAAI,EACJ,SAAS,EACT,IAAI,GACP,EAAE,WAAW,+BAwEb;AAED,gEAAgE;AAChE,wBAAgB,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,cAAc,CAAC,KAAK,CAAC,+BAEzE;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,WAAW,+BAW5D;AAED,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,KAAK,EAAE,SAAS,CAAC;IACjB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,iFAAiF;IACjF,YAAY,CAAC,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IAC7C,sEAAsE;IACtE,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACnB,8EAA8E;IAC9E,IAAI,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC;CAC3C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/dialog/index.tsx"],"names":[],"mappings":"AACA,OAAe,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAGlD,OAAO,EACH,cAAc,EAGd,SAAS,EACT,SAAS,EAKZ,MAAM,OAAO,CAAC;AAKf;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAC3B,IAAI,EACJ,YAAY,EACZ,KAAK,EACL,WAAW,EACX,QAAQ,EACR,WAAkB,EAClB,YAAY,EACZ,IAAW,EACX,IAAI,EACJ,SAAS,EACT,IAAI,GACP,EAAE,WAAW,+BAyDb;AAED;;;;;;GAMG;AACH,wBAAgB,QAAQ,CACpB,GAAG,EAAE,SAAS,CAAC,iBAAiB,GAAG,IAAI,CAAC,EACxC,IAAI,EAAE,OAAO,EACb,YAAY,CAAC,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,GAC7C,IAAI,CA4BN;AA0ID,gEAAgE;AAChE,wBAAgB,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,EAAE,cAAc,CAAC,KAAK,CAAC,+BAEzE;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,WAAW,+BAW5D;AAED,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,KAAK,EAAE,SAAS,CAAC;IACjB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,iFAAiF;IACjF,YAAY,CAAC,EAAE,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;IAC7C,sEAAsE;IACtE,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACnB,8EAA8E;IAC9E,IAAI,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC;CAC3C"}
@@ -7,64 +7,148 @@ import { createContext as i, useContext as a, useEffect as o, useId as s, useRef
7
7
  import { jsx as l, jsxs as u } from "react/jsx-runtime";
8
8
  //#region packages/dialog/index.tsx
9
9
  var d = i(() => {});
10
- function f({ open: n, onOpenChange: i, title: a, description: f, children: p, dismissible: m = !0, initialFocus: h, size: g = "md", side: _, className: v, role: y }) {
11
- t();
12
- let b = c(null), x = s(), S = s();
13
- return o(() => {
14
- let e = b.current;
15
- if (e) {
16
- if (n && !e.open) {
17
- let t = document.documentElement;
18
- t.toggleAttribute("data-zen-scrollbar", window.innerWidth > t.clientWidth), e.showModal(), h?.current?.focus();
19
- } else !n && e.open && e.close();
20
- }
21
- }, [n, h]), r(b, n), /* @__PURE__ */ l("dialog", {
22
- ref: b,
23
- role: y,
24
- "aria-labelledby": x,
25
- "aria-describedby": f ? S : void 0,
26
- "data-side": _,
27
- className: e("zen__dialog glass glass-blur glow-edge text-card-foreground bg-card/90! overflow-visible p-0", !_ && "m-auto max-h-[calc(100dvh-2rem)] max-w-[calc(100vw-2rem)] rounded-xl", !_ && (g === "lg" ? "w-[60rem]" : "w-[28rem]"), _ === "bottom" && "mx-auto mt-auto mb-0 max-h-[85dvh] w-full max-w-2xl rounded-t-2xl", (_ === "left" || _ === "right") && "my-0 h-dvh max-h-dvh w-[24rem] max-w-[calc(100vw-2.5rem)]", _ === "right" && "mr-0 ml-auto rounded-l-2xl", _ === "left" && "mr-auto ml-0 rounded-r-2xl", "backdrop:bg-[color:var(--backdrop-scrim,oklch(0_0_0/0.5))] backdrop:backdrop-blur-sm pointer-coarse:backdrop:backdrop-blur-none", v),
10
+ function f({ open: t, onOpenChange: n, title: r, description: i, children: a, dismissible: o = !0, initialFocus: f, size: m = "md", side: h, className: g, role: _ }) {
11
+ let y = c(null), b = s(), x = s();
12
+ return v(y, o && t ? h : void 0, () => n?.(!1)), p(y, t, f), /* @__PURE__ */ l("dialog", {
13
+ ref: y,
14
+ role: _,
15
+ "aria-labelledby": b,
16
+ "aria-describedby": i ? x : void 0,
17
+ "data-side": h,
18
+ className: e("zen__dialog glass glass-blur glow-edge text-card-foreground bg-card/90! overflow-visible p-0", !h && "m-auto max-h-[calc(100dvh-2rem)] max-w-[calc(100vw-2rem)] rounded-xl", !h && (m === "lg" ? "w-[60rem]" : "w-[28rem]"), h === "bottom" && "mx-auto mt-auto mb-0 max-h-[85dvh] w-full max-w-2xl rounded-t-2xl", (h === "left" || h === "right") && "my-0 h-dvh max-h-dvh w-[24rem] max-w-[calc(100vw-2.5rem)]", h === "right" && "mr-0 ml-auto rounded-l-2xl", h === "left" && "mr-auto ml-0 rounded-r-2xl", "backdrop:bg-[color:var(--backdrop-scrim,oklch(0_0_0/0.5))] backdrop:backdrop-blur-sm pointer-coarse:backdrop:backdrop-blur-none", g),
28
19
  onCancel: (e) => {
29
- e.preventDefault(), m && i?.(!1);
20
+ e.preventDefault(), o && n?.(!1);
30
21
  },
31
22
  onClick: (e) => {
32
- e.target === e.currentTarget && m && i?.(!1);
23
+ e.target === e.currentTarget && o && n?.(!1);
33
24
  },
34
25
  children: /* @__PURE__ */ u("div", {
35
- className: e("flex flex-col gap-4 overflow-x-hidden overflow-y-auto p-6", _ ? _ === "bottom" ? "max-h-[85dvh] pt-3" : "h-full" : "max-h-[calc(100dvh-2rem)]"),
26
+ className: e("flex flex-col gap-4 overflow-x-hidden overflow-y-auto p-6", h ? h === "bottom" ? "max-h-[85dvh] pt-3" : "h-full" : "max-h-[calc(100dvh-2rem)]"),
36
27
  children: [
37
- _ === "bottom" && /* @__PURE__ */ l("div", {
28
+ h === "bottom" && /* @__PURE__ */ l("div", {
38
29
  "aria-hidden": !0,
39
30
  className: "bg-tint/20 mx-auto h-1 w-10 shrink-0 rounded-full"
40
31
  }),
41
32
  /* @__PURE__ */ u("div", {
42
33
  className: "flex flex-col gap-2",
43
34
  children: [/* @__PURE__ */ l("h2", {
44
- id: x,
35
+ id: b,
45
36
  className: "text-lg font-semibold tracking-tight text-balance",
46
- children: a
47
- }), f && /* @__PURE__ */ l("p", {
48
- id: S,
37
+ children: r
38
+ }), i && /* @__PURE__ */ l("p", {
39
+ id: x,
49
40
  className: "text-muted-foreground mt-0! text-sm leading-5",
50
- children: f
41
+ children: i
51
42
  })]
52
43
  }),
53
44
  /* @__PURE__ */ l(d.Provider, {
54
- value: () => i?.(!1),
55
- children: p
45
+ value: () => n?.(!1),
46
+ children: a
56
47
  })
57
48
  ]
58
49
  })
59
50
  });
60
51
  }
61
- function p({ className: t, ...n }) {
52
+ function p(e, n, i) {
53
+ t(), o(() => {
54
+ let t = e.current;
55
+ if (t) {
56
+ if (n && !t.open) {
57
+ let e = document.documentElement;
58
+ e.toggleAttribute("data-zen-scrollbar", window.innerWidth > e.clientWidth);
59
+ let n = document.activeElement === document.body ? null : document.activeElement?.getBoundingClientRect(), r = !!n && !t.dataset.side;
60
+ if (t.toggleAttribute("data-zen-from", r), t.showModal(), r) {
61
+ let e = n.left + n.width / 2 - t.offsetLeft, r = n.top + n.height / 2 - t.offsetTop;
62
+ t.style.transformOrigin = `${Math.round(e)}px ${Math.round(r)}px`;
63
+ }
64
+ i?.current?.focus();
65
+ } else !n && t.open && t.close();
66
+ }
67
+ }, [
68
+ e,
69
+ n,
70
+ i
71
+ ]), r(e, n);
72
+ }
73
+ var m = .3, h = .5, g = 100, _ = 8;
74
+ function v(e, t, n) {
75
+ let r = c(n);
76
+ o(() => {
77
+ r.current = n;
78
+ }), o(() => {
79
+ let n = e.current;
80
+ if (!n || (n.style.removeProperty("--zen-swipe"), n.style.removeProperty("--zen-swipe-progress"), !t)) return;
81
+ let i = t === "bottom" ? "y" : "x", a = t === "left" ? -1 : 1, o = null, s = !1, c = () => i === "y" ? n.offsetHeight : n.offsetWidth, l = (e) => (i === "y" ? e.clientY - o.y : e.clientX - o.x) * a, u = (e) => i === "y" ? e.clientX - o.x : e.clientY - o.y, d = (e) => {
82
+ let t = e > 0 ? e : e / 6;
83
+ n.style.setProperty("--zen-swipe", i === "y" ? `0 ${t}px` : `${t * a}px 0`), n.style.setProperty("--zen-swipe-progress", String(Math.max(0, Math.min(1, e / c()))));
84
+ }, f = (e) => {
85
+ let t = o?.on;
86
+ if (o = null, t) {
87
+ if (delete n.dataset.swiping, s = !0, e) return r.current();
88
+ n.style.removeProperty("--zen-swipe"), n.style.removeProperty("--zen-swipe-progress");
89
+ }
90
+ }, p = (e) => {
91
+ if (s = !1, e.pointerType === "touch") {
92
+ if (!e.isPrimary) return f(!1);
93
+ y(e.target, n, i) || (o = {
94
+ id: e.pointerId,
95
+ x: e.clientX,
96
+ y: e.clientY,
97
+ points: [[e.timeStamp, 0]],
98
+ on: !1
99
+ });
100
+ }
101
+ }, v = (e) => {
102
+ if (!o || e.pointerId !== o.id) return;
103
+ let t = l(e);
104
+ if (!o.on) {
105
+ if (Math.hypot(t, u(e)) < _) return;
106
+ if (t <= 0 || Math.abs(u(e)) * 1.5 > t || b(e.target, n, i, a)) {
107
+ o = null;
108
+ return;
109
+ }
110
+ o.on = !0, n.dataset.swiping = "", n.setPointerCapture?.(e.pointerId);
111
+ }
112
+ o.points = [...o.points.filter(([t]) => e.timeStamp - t < g), [e.timeStamp, t]], d(t);
113
+ }, x = (e) => {
114
+ if (!o || e.pointerId !== o.id) return;
115
+ let t = l(e), [n, r] = o.points.find(([t]) => e.timeStamp - t < g) ?? [e.timeStamp, t], i = (t - r) / Math.max(1, e.timeStamp - n);
116
+ f(e.type === "pointerup" && (t > c() * m || t > 0 && i > h));
117
+ }, S = (e) => {
118
+ o?.on && e.preventDefault();
119
+ }, C = (e) => {
120
+ s && (s = !1, e.stopPropagation(), e.preventDefault());
121
+ };
122
+ return n.addEventListener("pointerdown", p), n.addEventListener("pointermove", v), n.addEventListener("pointerup", x), n.addEventListener("pointercancel", x), n.addEventListener("touchmove", S, { passive: !1 }), n.addEventListener("click", C, !0), () => {
123
+ n.removeEventListener("pointerdown", p), n.removeEventListener("pointermove", v), n.removeEventListener("pointerup", x), n.removeEventListener("pointercancel", x), n.removeEventListener("touchmove", S), n.removeEventListener("click", C, !0), delete n.dataset.swiping;
124
+ };
125
+ }, [e, t]);
126
+ }
127
+ function y(e, t, n) {
128
+ if (e.closest("input, textarea, select, [contenteditable]:not([contenteditable=\"false\"])")) return !0;
129
+ let r = n === "y" ? /pan-(y|up|down)/ : /pan-(x|left|right)/;
130
+ for (let n = e; n && n !== t; n = n.parentElement) {
131
+ let e = getComputedStyle(n).touchAction;
132
+ if (e && e !== "auto" && e !== "manipulation" && !r.test(e)) return !0;
133
+ }
134
+ return !1;
135
+ }
136
+ function b(e, t, n, r) {
137
+ for (let i = e; i; i = i === t ? null : i.parentElement) {
138
+ let e = getComputedStyle(i);
139
+ if (!/auto|scroll/.test(n === "y" ? e.overflowY : e.overflowX)) continue;
140
+ let t = n === "y" ? i.scrollTop : i.scrollLeft, a = n === "y" ? i.scrollHeight - i.clientHeight : i.scrollWidth - i.clientWidth;
141
+ if (!(a <= 0) && (r > 0 ? t > 0 : t < a - 1)) return !0;
142
+ }
143
+ return !1;
144
+ }
145
+ function x({ className: t, ...n }) {
62
146
  return /* @__PURE__ */ l("div", {
63
147
  className: e("flex justify-end gap-2", t),
64
148
  ...n
65
149
  });
66
150
  }
67
- function m({ onClick: e, ...t }) {
151
+ function S({ onClick: e, ...t }) {
68
152
  let r = a(d);
69
153
  return /* @__PURE__ */ l(n, {
70
154
  ...t,
@@ -74,4 +158,4 @@ function m({ onClick: e, ...t }) {
74
158
  });
75
159
  }
76
160
  //#endregion
77
- export { m as DialogClose, p as DialogFooter, f as default };
161
+ export { S as DialogClose, x as DialogFooter, f as default, p as useModal };
@@ -0,0 +1,14 @@
1
+ import { ComponentProps, ReactNode } from 'react';
2
+ /**
3
+ * What a list, table or page shows when there's nothing in it yet: an icon on
4
+ * a soft glow, a title, a line on what to do, and the action that does it
5
+ * (children, e.g. a Button).
6
+ */
7
+ export default function EmptyState({ icon, title, description, className, children, ...rest }: EmptyStateProps): import('react').JSX.Element;
8
+ export interface EmptyStateProps extends Omit<ComponentProps<'div'>, 'title'> {
9
+ /** An icon, shown on the accent's glow. */
10
+ icon?: ReactNode;
11
+ title: ReactNode;
12
+ description?: ReactNode;
13
+ }
14
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/empty-state/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElD;;;;GAIG;AACH,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,eAAe,+BAqB7G;AAED,MAAM,WAAW,eAAgB,SAAQ,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IACzE,2CAA2C;IAC3C,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,KAAK,EAAE,SAAS,CAAC;IACjB,WAAW,CAAC,EAAE,SAAS,CAAC;CAC3B"}
@@ -0,0 +1,31 @@
1
+ "use client";
2
+ import { cx as e } from "../utils/cx.js";
3
+ import { jsx as t, jsxs as n } from "react/jsx-runtime";
4
+ //#region packages/empty-state/index.tsx
5
+ function r({ icon: r, title: i, description: a, className: o, children: s, ...c }) {
6
+ return /* @__PURE__ */ n("div", {
7
+ className: e("zen__empty-state flex flex-col items-center gap-3 px-6 py-10 text-center", o),
8
+ ...c,
9
+ children: [
10
+ r && /* @__PURE__ */ t("div", {
11
+ "aria-hidden": !0,
12
+ className: "text-primary bg-primary/10 mb-1 grid size-12 place-items-center rounded-2xl shadow-[inset_0_0_0_1px_oklch(var(--primary)/0.25),0_0_32px_-6px_oklch(var(--glow)/calc(0.6*var(--glow-k)))] [&_svg]:size-6",
13
+ children: r
14
+ }),
15
+ /* @__PURE__ */ t("p", {
16
+ className: "text-foreground mt-0! text-base font-semibold tracking-tight text-balance",
17
+ children: i
18
+ }),
19
+ a && /* @__PURE__ */ t("p", {
20
+ className: "text-muted-foreground mt-0! max-w-sm text-sm leading-6 text-balance",
21
+ children: a
22
+ }),
23
+ s && /* @__PURE__ */ t("div", {
24
+ className: "mt-2 flex flex-wrap justify-center gap-2",
25
+ children: s
26
+ })
27
+ ]
28
+ });
29
+ }
30
+ //#endregion
31
+ export { r as default };
@@ -0,0 +1,18 @@
1
+ import { ComponentProps, ReactNode } from 'react';
2
+ /**
3
+ * Somewhere to drop files, or click (or press Enter) to choose them: it lights
4
+ * up while files are dragged over it. `onFiles` gets those that `accept` allows
5
+ * (one, unless `multiple`). Children are what it says, e.g. "Drop a CSV here".
6
+ */
7
+ export default function FileDrop({ onFiles, accept, multiple, disabled, className, children, ...rest }: FileDropProps): import('react').JSX.Element;
8
+ /** Whether `file` is one an <input accept> value allows: extensions (.csv), types (text/csv) and wildcards (image/*). */
9
+ export declare function accepts(file: File, accept?: string): boolean;
10
+ export interface FileDropProps extends Omit<ComponentProps<'label'>, 'onDrop'> {
11
+ onFiles: (files: File[]) => void;
12
+ /** As an <input type="file">'s accept: ".csv,.xlsx", "image/*". Dropped files are held to it too. */
13
+ accept?: string;
14
+ multiple?: boolean;
15
+ disabled?: boolean;
16
+ children?: ReactNode;
17
+ }
18
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../packages/file-drop/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAa,SAAS,EAAoB,MAAM,OAAO,CAAC;AAE/E;;;;GAIG;AACH,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,EAC7B,OAAO,EACP,MAAM,EACN,QAAgB,EAChB,QAAgB,EAChB,SAAS,EACT,QAAQ,EACR,GAAG,IAAI,EACV,EAAE,aAAa,+BAiEf;AAED,yHAAyH;AACzH,wBAAgB,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAU5D;AAED,MAAM,WAAW,aAAc,SAAQ,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC;IAC1E,OAAO,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC;IACjC,qGAAqG;IACrG,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACxB"}
@@ -0,0 +1,49 @@
1
+ "use client";
2
+ import { cx as e } from "../utils/cx.js";
3
+ import { useRef as t, useState as n } from "react";
4
+ import { jsx as r, jsxs as i } from "react/jsx-runtime";
5
+ //#region packages/file-drop/index.tsx
6
+ function a({ onFiles: a, accept: s, multiple: c = !1, disabled: l = !1, className: u, children: d, ...f }) {
7
+ let p = t(null), [m, h] = n(!1), g = t(0), _ = (e) => {
8
+ let t = e.filter((e) => o(e, s)).slice(0, c ? void 0 : 1);
9
+ t.length && a(t);
10
+ }, v = (e) => !l && e.dataTransfer.types.includes("Files");
11
+ return /* @__PURE__ */ i("label", {
12
+ ...f,
13
+ "data-over": m || void 0,
14
+ onDragEnter: (e) => {
15
+ v(e) && (e.preventDefault(), g.current++, h(!0));
16
+ },
17
+ onDragOver: (e) => {
18
+ v(e) && (e.preventDefault(), e.dataTransfer.dropEffect = "copy");
19
+ },
20
+ onDragLeave: () => {
21
+ --g.current <= 0 && (g.current = 0, h(!1));
22
+ },
23
+ onDrop: (e) => {
24
+ v(e) && (e.preventDefault(), g.current = 0, h(!1), _([...e.dataTransfer.files]));
25
+ },
26
+ className: e("zen__file-drop glow-edge text-muted-foreground relative flex cursor-pointer flex-col items-center justify-center gap-2 rounded-xl border border-dashed p-8 text-center text-sm", "border-tint/15 bg-tint/[0.02] transition-[border-color,background-color,box-shadow,color] duration-200", "hover:border-tint/25 hover:text-foreground has-[input:focus-visible]:border-glow/60 has-[input:focus-visible]:shadow-glow-focus", "data-over:border-primary/60 data-over:bg-primary/10 data-over:text-foreground data-over:shadow-[0_0_32px_-8px_oklch(var(--glow)/calc(0.8*var(--glow-k)))]", l && "pointer-events-none opacity-50", u),
27
+ children: [/* @__PURE__ */ r("input", {
28
+ ref: p,
29
+ type: "file",
30
+ accept: s,
31
+ multiple: c,
32
+ disabled: l,
33
+ className: "sr-only",
34
+ onChange: (e) => {
35
+ _([...e.target.files ?? []]), e.target.value = "";
36
+ }
37
+ }), d]
38
+ });
39
+ }
40
+ function o(e, t) {
41
+ if (!t) return !0;
42
+ let n = e.name.toLowerCase(), r = e.type.toLowerCase();
43
+ return t.split(",").some((e) => {
44
+ let t = e.trim().toLowerCase();
45
+ return t.startsWith(".") ? n.endsWith(t) : t.endsWith("/*") ? r.startsWith(t.slice(0, -1)) : r === t;
46
+ });
47
+ }
48
+ //#endregion
49
+ export { o as accepts, a as default };
package/dist/index.d.ts CHANGED
@@ -11,7 +11,7 @@ export { default as Chip, type ChipProps } from './chip';
11
11
  export { default as Collapse } from './collapse';
12
12
  export { default as Combobox, ComboboxCreate, ComboboxEmpty, ComboboxItem, ComboboxList, ComboboxPopup, type ComboboxProps, ComboboxSearch, ComboboxTrigger, } from './combobox';
13
13
  export { default as ConfirmDialog } from './confirm-dialog';
14
- export { default as Dialog, DialogClose, DialogFooter, type DialogProps } from './dialog';
14
+ export { default as Dialog, DialogClose, DialogFooter, type DialogProps, useModal } from './dialog';
15
15
  export { default as EditableCell, type EditableCellProps } from './editable-cell';
16
16
  export { default as Disclosure, DisclosureContent, type DisclosureProps, DisclosureTrigger } from './disclosure';
17
17
  export { default as Field, type FieldControl, type FieldProps, FormMessage, type FormMessageProps, useField, useFieldProps, } from './field';
@@ -54,6 +54,8 @@ export { cva, type VariantProps } from './utils/cva';
54
54
  export { cx } from './utils/cx';
55
55
  export { type Appearance, applyPreset, applyTheme, contrastRatio, customize, DEFAULT_THEME, type Intensity, INTENSITIES, normalizeTheme, oklchToLinearRgb, type PresetId, PRESETS, resetTheme, type ThemeSettings, themeVars, } from './utils/theme';
56
56
  export { prepareThemeWave, themeWave } from './utils/theme-wave';
57
+ export { followSectionLink } from './utils/section-link';
58
+ export { reducedMotion } from './utils/motion';
57
59
  export { useHydrated } from './utils/useHydrated';
58
60
  export { addMonths, currentMonth, formatMonth, fromMonthIndex, isMonth, type Month, monthIndex, monthNames, monthRange, monthsBetween, } from './utils/month';
59
61
  export { addDays, addMonthsToDate, type DateRange, type DateString, type DateStyle, dayIndex, dayOfWeek, daysBetween, daysInMonth, formatDate, formatDateRange, fromDayIndex, isDate, today, weekdayNames, weekStart, } from './utils/date';
@@ -67,4 +69,14 @@ declare module 'react' {
67
69
  [key: `--${string}`]: string | number;
68
70
  }
69
71
  }
72
+ export { Breadcrumb, type BreadcrumbProps, default as Breadcrumbs } from './breadcrumbs';
73
+ export { default as CodeInput, type CodeInputProps } from './code-input';
74
+ export { type CommandItem, default as CommandPalette, type CommandPaletteProps, useCommandPaletteShortcut, } from './command-palette';
75
+ export { default as EmptyState, type EmptyStateProps } from './empty-state';
76
+ export { accepts, default as FileDrop, type FileDropProps } from './file-drop';
77
+ export { pageRange, default as Pagination, type PaginationProps } from './pagination';
78
+ export { default as Sparkline, type SparklineProps } from './sparkline';
79
+ export { Step, type StepProps, default as Stepper, type StepperProps } from './stepper';
80
+ export { default as TagInput, type TagInputProps } from './tag-input';
81
+ export { default as Timeline, TimelineItem, type TimelineItemProps } from './timeline';
70
82
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../packages/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../packages/index.ts"],"names":[],"mappings":"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"}