@still-forest/canopy 0.35.0 → 0.37.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.
@@ -15,27 +15,41 @@ declare interface ErrorOverlayProps {
15
15
  children?: React.ReactNode;
16
16
  }
17
17
 
18
- export declare const Interstitial: ({ variant, iconComponent, message, children }: InterstitialProps) => JSX.Element;
18
+ export declare const Interstitial: ({ variant, iconComponent, message, children, iconSize, iconClassName, }: InterstitialProps) => JSX.Element;
19
19
 
20
20
  export declare interface InterstitialProps {
21
21
  variant?: "error" | "info" | "success" | "warning";
22
22
  iconComponent?: default_2.ElementType;
23
23
  message?: string;
24
+ iconSize?: LoaderProps["size"];
25
+ iconClassName?: string;
24
26
  children?: default_2.ReactNode;
25
27
  }
26
28
 
27
- export declare const PageLoader: ({ iconComponent, message }: PageLoaderProps) => JSX.Element;
29
+ declare interface LoaderProps extends React.ComponentProps<"svg"> {
30
+ variant?: "default" | "wheel";
31
+ icon?: React.ComponentType<React.SVGProps<SVGSVGElement>>;
32
+ size?: "xs" | "sm" | "md" | "lg" | "xl" | "2xl" | "3xl" | "4xl" | "5xl" | "6xl" | "7xl" | "8xl" | "9xl" | "10xl";
33
+ }
34
+
35
+ export declare const PageLoader: ({ iconComponent, message, containerClassName, iconSize, fullScreen, iconClassName, }: PageLoaderProps) => JSX.Element;
28
36
 
29
37
  declare interface PageLoaderProps {
30
38
  iconComponent?: React.ElementType;
31
39
  message?: string;
40
+ containerClassName?: string;
41
+ iconSize?: LoaderProps["size"];
42
+ fullScreen?: boolean;
43
+ iconClassName?: string;
32
44
  }
33
45
 
34
- export declare const PageNotFound: ({ goHome, message }: PageNotFoundProps) => JSX.Element;
46
+ export declare const PageNotFound: ({ onBack, message, backIcon, backLabel, }: PageNotFoundProps) => JSX.Element;
35
47
 
36
48
  declare interface PageNotFoundProps {
37
49
  message?: string;
38
- goHome?: () => void;
50
+ backIcon?: React.ComponentType<React.SVGProps<SVGSVGElement>>;
51
+ backLabel?: string;
52
+ onBack?: () => void;
39
53
  }
40
54
 
41
55
  export { }
@@ -1,4 +1,4 @@
1
- import { E as o, a as e, I as s, P as t, b as l } from "./chunks/PageNotFound-p3jnz0na.js";
1
+ import { E as o, a as e, I as s, P as t, b as l } from "./chunks/PageNotFound-D4e2bv36.js";
2
2
  export {
3
3
  o as ErrorFallback,
4
4
  e as ErrorOverlay,
@@ -9,7 +9,7 @@ declare function Button({ className, variant, size, asChild, ...props }: React_2
9
9
 
10
10
  declare const buttonVariants: (props?: ({
11
11
  variant?: "link" | "default" | "secondary" | "destructive" | "outline" | "ghost" | "unstyled" | null | undefined;
12
- size?: "default" | "unstyled" | "xs" | "sm" | "md" | "lg" | "xl" | "icon" | null | undefined;
12
+ size?: "default" | "xs" | "sm" | "md" | "lg" | "xl" | "icon" | "unstyled" | null | undefined;
13
13
  } & ClassProp) | undefined) => string;
14
14
 
15
15
  export declare const MenuItemText: ({ children }: {
@@ -1,4 +1,4 @@
1
- import { M as r, a as b, b as i, S as s } from "./chunks/SidebarLayout-BrWkHR7S.js";
1
+ import { M as r, a as b, b as i, S as s } from "./chunks/SidebarLayout-C0jOUIuV.js";
2
2
  export {
3
3
  r as MenuItemText,
4
4
  b as Sidebar,
@@ -67,6 +67,8 @@ declare interface TextBaseProps {
67
67
  truncate?: boolean;
68
68
  numeric?: boolean;
69
69
  className?: string;
70
+ inheritColor?: boolean;
71
+ inline?: boolean;
70
72
  as?: TypographyElement;
71
73
  }
72
74
 
@@ -1,6 +1,6 @@
1
- import { C as o } from "./chunks/Code-zUdzRHTD.js";
2
- import { H as p, T as s } from "./chunks/Heading-DpvcMbmF.js";
3
- import { P as x } from "./chunks/Paragraph-DjkeVXzm.js";
1
+ import { C as o } from "./chunks/Code-BLilg72p.js";
2
+ import { H as p, T as s } from "./chunks/Heading-DjVutKs1.js";
3
+ import { P as x } from "./chunks/Paragraph-ai9KZse1.js";
4
4
  export {
5
5
  o as Code,
6
6
  p as Heading,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@still-forest/canopy",
3
- "version": "0.35.0",
3
+ "version": "0.37.0",
4
4
  "author": "John Szymanowski",
5
5
  "license": "MIT",
6
6
  "description": "React components, built with Tailwind CSS, Shadcn, and VisX",
@@ -72,6 +72,8 @@
72
72
  },
73
73
  "dependencies": {
74
74
  "@radix-ui/react-collapsible": "^1.1.12",
75
+ "@radix-ui/react-separator": "^1.1.7",
76
+ "@radix-ui/react-slot": "1.2.3",
75
77
  "cmdk": "^1.1.1",
76
78
  "date-fns": "^4.1.0",
77
79
  "lucide-react": "^0.543.0",
@@ -1,107 +0,0 @@
1
- import { j as e } from "./jsx-runtime-B0GD0xBr.js";
2
- import { c, B as l } from "./calendar-DKwGFkIw.js";
3
- import "react";
4
- import { F as o, B as d } from "./Layout-CvVv48kM.js";
5
- import { C as m } from "./Code-zUdzRHTD.js";
6
- import { H as h } from "./Heading-DpvcMbmF.js";
7
- import { c as x } from "./index-CRiPKpXj.js";
8
- /**
9
- * @license lucide-react v0.543.0 - ISC
10
- *
11
- * This source code is licensed under the ISC license.
12
- * See the LICENSE file in the root directory of this source tree.
13
- */
14
- const u = [
15
- ["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }],
16
- ["path", { d: "m15 9-6 6", key: "1uzhvr" }],
17
- ["path", { d: "m9 9 6 6", key: "z0biqf" }]
18
- ], p = c("circle-x", u);
19
- /**
20
- * @license lucide-react v0.543.0 - ISC
21
- *
22
- * This source code is licensed under the ISC license.
23
- * See the LICENSE file in the root directory of this source tree.
24
- */
25
- const f = [
26
- ["path", { d: "M12 17h.01", key: "p32p05" }],
27
- ["path", { d: "M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7z", key: "1mlx9k" }],
28
- ["path", { d: "M9.1 9a3 3 0 0 1 5.82 1c0 2-3 3-3 3", key: "mhlwft" }]
29
- ], j = c("file-question-mark", f);
30
- /**
31
- * @license lucide-react v0.543.0 - ISC
32
- *
33
- * This source code is licensed under the ISC license.
34
- * See the LICENSE file in the root directory of this source tree.
35
- */
36
- const y = [
37
- ["path", { d: "M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8", key: "5wwlr5" }],
38
- [
39
- "path",
40
- {
41
- d: "M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",
42
- key: "r6nss1"
43
- }
44
- ]
45
- ], w = c("house", y);
46
- /**
47
- * @license lucide-react v0.543.0 - ISC
48
- *
49
- * This source code is licensed under the ISC license.
50
- * See the LICENSE file in the root directory of this source tree.
51
- */
52
- const k = [["path", { d: "M21 12a9 9 0 1 1-6.219-8.56", key: "13zald" }]], g = c("loader-circle", k);
53
- /**
54
- * @license lucide-react v0.543.0 - ISC
55
- *
56
- * This source code is licensed under the ISC license.
57
- * See the LICENSE file in the root directory of this source tree.
58
- */
59
- const N = [
60
- ["path", { d: "M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8", key: "1357e3" }],
61
- ["path", { d: "M3 3v5h5", key: "1xhq8a" }]
62
- ], v = c("rotate-ccw", N), a = ({ variant: n, iconComponent: t, message: r, children: i }) => {
63
- if (!t && !r && !i)
64
- return /* @__PURE__ */ e.jsx(o, { align: "center", className: "h-full w-full", justify: "center", children: "Content missing" });
65
- const s = t || null;
66
- return /* @__PURE__ */ e.jsx(o, { align: "center", className: "h-full w-full", justify: "center", children: /* @__PURE__ */ e.jsxs(o, { direction: "col", justify: "center", children: [
67
- s && /* @__PURE__ */ e.jsx(o, { align: "center", className: "my-6", gapX: "4", justify: "center", children: /* @__PURE__ */ e.jsx(
68
- s,
69
- {
70
- "aria-hidden": !!r,
71
- "aria-label": r ? void 0 : `${n || "info"} icon`,
72
- className: x(
73
- n === "error" && "text-destructive",
74
- n === "success" && "text-success",
75
- n === "warning" && "text-warning",
76
- n === "info" && "text-info"
77
- ),
78
- "data-testid": "icon",
79
- role: r ? void 0 : "img",
80
- size: 128
81
- }
82
- ) }),
83
- /* @__PURE__ */ e.jsxs(o, { className: "max-w-[500px]", direction: "col", justify: "center", children: [
84
- r ? /* @__PURE__ */ e.jsx(h, { align: "center", level: "4", weight: "normal", children: r }) : null,
85
- i
86
- ] })
87
- ] }) });
88
- }, C = ({ message: n = "Something went wrong.", children: t }) => /* @__PURE__ */ e.jsx(a, { iconComponent: p, message: n, variant: "error", children: t }), _ = () => {
89
- try {
90
- window.location.reload();
91
- } catch {
92
- console.warn("Page reload prevented in test environment");
93
- }
94
- }, E = ({ error: n, onRetry: t = _ }) => /* @__PURE__ */ e.jsx(C, { children: /* @__PURE__ */ e.jsxs(o, { align: "center", className: "mt-8", direction: "col", children: [
95
- /* @__PURE__ */ e.jsx(d, { className: "mb-8 p-4", variant: "muted", width: "full", children: /* @__PURE__ */ e.jsx(m, { align: "center", size: "xs", variant: "inherit", children: n.message || "Unknown error occurred" }) }),
96
- /* @__PURE__ */ e.jsx(l, { icon: /* @__PURE__ */ e.jsx(v, {}), onClick: t, variant: "primary", children: "Reload" })
97
- ] }) }), M = () => /* @__PURE__ */ e.jsx(g, { className: "animate-spin text-info", "data-testid": "icon", size: 64 }), L = ({ iconComponent: n, message: t }) => {
98
- const r = n || M;
99
- return /* @__PURE__ */ e.jsx(a, { iconComponent: r, message: t });
100
- }, P = ({ goHome: n, message: t = "404: Not found" }) => /* @__PURE__ */ e.jsx(a, { iconComponent: j, message: t, variant: "warning", children: /* @__PURE__ */ e.jsx(o, { align: "center", className: "mt-8", direction: "col", children: n && /* @__PURE__ */ e.jsx(l, { icon: /* @__PURE__ */ e.jsx(w, {}), onClick: n, variant: "primary", children: "Home" }) }) });
101
- export {
102
- E,
103
- a as I,
104
- L as P,
105
- C as a,
106
- P as b
107
- };