@arch-cadre/ui 0.0.44 → 0.0.47

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 (262) hide show
  1. package/dist/components/accordion.js +18 -0
  2. package/dist/components/alert-dialog.js +39 -0
  3. package/dist/components/alert.js +24 -0
  4. package/dist/components/aspect-ratio.js +7 -0
  5. package/dist/components/avatar.js +14 -0
  6. package/dist/components/badge.js +22 -0
  7. package/dist/components/breadcrumb.js +30 -0
  8. package/dist/components/button-group.js +28 -0
  9. package/dist/components/button.js +33 -0
  10. package/dist/components/calendar.js +76 -0
  11. package/dist/components/card.js +24 -0
  12. package/dist/components/checkbox.js +9 -0
  13. package/dist/components/collapsible.js +13 -0
  14. package/dist/components/command.js +34 -0
  15. package/dist/components/context-menu.js +51 -0
  16. package/dist/components/dialog.js +36 -0
  17. package/dist/components/drawer.js +35 -0
  18. package/dist/components/dropdown-menu.js +51 -0
  19. package/dist/components/empty.js +33 -0
  20. package/dist/components/field.js +78 -0
  21. package/dist/components/form.js +59 -0
  22. package/dist/components/hover-card.js +14 -0
  23. package/dist/components/input-group.js +63 -0
  24. package/dist/components/input-otp.js +21 -0
  25. package/dist/components/input.js +6 -0
  26. package/dist/components/item.js +66 -0
  27. package/dist/components/kbd.js +9 -0
  28. package/dist/components/label.js +8 -0
  29. package/dist/components/language-switcher.js +20 -0
  30. package/dist/components/menubar.js +54 -0
  31. package/dist/components/navigation-menu.js +31 -0
  32. package/dist/components/pagination.js +31 -0
  33. package/dist/components/popover.js +17 -0
  34. package/dist/components/progress.js +8 -0
  35. package/dist/components/radio-group.js +12 -0
  36. package/dist/components/scroll-area.js +13 -0
  37. package/dist/components/select.js +38 -0
  38. package/dist/components/separator.js +8 -0
  39. package/dist/components/sheet.js +40 -0
  40. package/dist/components/sidebar.js +213 -0
  41. package/dist/components/skeleton.js +6 -0
  42. package/dist/components/slider.js +14 -0
  43. package/dist/components/sonner.js +21 -0
  44. package/dist/components/spinner.js +7 -0
  45. package/dist/components/switch.js +8 -0
  46. package/dist/components/table.js +28 -0
  47. package/dist/components/tabs.js +17 -0
  48. package/dist/components/textarea.js +6 -0
  49. package/dist/components/toggle-group.js +22 -0
  50. package/dist/components/toggle.js +26 -0
  51. package/dist/components/tooltip.js +17 -0
  52. package/dist/hooks/use-mobile.js +15 -0
  53. package/dist/hooks/use-user.js +25 -0
  54. package/dist/lib/{utils.mjs → utils.js} +1 -1
  55. package/dist/logo.js +28 -0
  56. package/dist/postcss.config.mjs +1 -2
  57. package/dist/providers/auth-provider.js +27 -0
  58. package/dist/providers/index.js +23 -0
  59. package/dist/shared/access-denied.js +6 -0
  60. package/dist/shared/loader.js +41 -0
  61. package/dist/shared/page-loader.js +6 -0
  62. package/dist/shared/scroll-fade-effect.js +5 -0
  63. package/package.json +17 -20
  64. package/build.config.ts +0 -23
  65. package/components.json +0 -20
  66. package/dist/components/.gitkeep +0 -0
  67. package/dist/components/accordion.d.ts +0 -7
  68. package/dist/components/accordion.mjs +0 -58
  69. package/dist/components/alert-dialog.d.ts +0 -14
  70. package/dist/components/alert-dialog.mjs +0 -144
  71. package/dist/components/alert.d.ts +0 -9
  72. package/dist/components/alert.mjs +0 -62
  73. package/dist/components/aspect-ratio.d.ts +0 -4
  74. package/dist/components/aspect-ratio.mjs +0 -9
  75. package/dist/components/avatar.d.ts +0 -6
  76. package/dist/components/avatar.mjs +0 -50
  77. package/dist/components/badge.d.ts +0 -9
  78. package/dist/components/badge.mjs +0 -37
  79. package/dist/components/breadcrumb.d.ts +0 -11
  80. package/dist/components/breadcrumb.mjs +0 -105
  81. package/dist/components/button-group.d.ts +0 -13
  82. package/dist/components/button-group.mjs +0 -76
  83. package/dist/components/button.d.ts +0 -10
  84. package/dist/components/button.mjs +0 -51
  85. package/dist/components/calendar.d.ts +0 -8
  86. package/dist/components/calendar.mjs +0 -191
  87. package/dist/components/card.d.ts +0 -9
  88. package/dist/components/card.mjs +0 -90
  89. package/dist/components/checkbox.d.ts +0 -4
  90. package/dist/components/checkbox.mjs +0 -30
  91. package/dist/components/collapsible.d.ts +0 -6
  92. package/dist/components/collapsible.mjs +0 -31
  93. package/dist/components/command.d.ts +0 -18
  94. package/dist/components/command.mjs +0 -169
  95. package/dist/components/context-menu.d.ts +0 -25
  96. package/dist/components/context-menu.mjs +0 -218
  97. package/dist/components/dialog.d.ts +0 -15
  98. package/dist/components/dialog.mjs +0 -130
  99. package/dist/components/drawer.d.ts +0 -13
  100. package/dist/components/drawer.mjs +0 -124
  101. package/dist/components/dropdown-menu.d.ts +0 -25
  102. package/dist/components/dropdown-menu.mjs +0 -226
  103. package/dist/components/empty.d.ts +0 -12
  104. package/dist/components/empty.mjs +0 -102
  105. package/dist/components/field.d.ts +0 -25
  106. package/dist/components/field.mjs +0 -228
  107. package/dist/components/form.d.ts +0 -23
  108. package/dist/components/form.mjs +0 -123
  109. package/dist/components/hover-card.d.ts +0 -6
  110. package/dist/components/hover-card.mjs +0 -35
  111. package/dist/components/input-group.d.ts +0 -16
  112. package/dist/components/input-group.mjs +0 -155
  113. package/dist/components/input-otp.d.ts +0 -11
  114. package/dist/components/input-otp.mjs +0 -59
  115. package/dist/components/input.d.ts +0 -3
  116. package/dist/components/input.mjs +0 -19
  117. package/dist/components/item.d.ts +0 -23
  118. package/dist/components/item.mjs +0 -187
  119. package/dist/components/kbd.d.ts +0 -4
  120. package/dist/components/kbd.mjs +0 -28
  121. package/dist/components/label.d.ts +0 -4
  122. package/dist/components/label.mjs +0 -21
  123. package/dist/components/language-switcher.d.ts +0 -2
  124. package/dist/components/language-switcher.mjs +0 -30
  125. package/dist/components/menubar.d.ts +0 -26
  126. package/dist/components/menubar.mjs +0 -246
  127. package/dist/components/navigation-menu.d.ts +0 -14
  128. package/dist/components/navigation-menu.mjs +0 -166
  129. package/dist/components/pagination.d.ts +0 -15
  130. package/dist/components/pagination.mjs +0 -116
  131. package/dist/components/popover.d.ts +0 -7
  132. package/dist/components/popover.mjs +0 -40
  133. package/dist/components/progress.d.ts +0 -4
  134. package/dist/components/progress.mjs +0 -30
  135. package/dist/components/radio-group.d.ts +0 -5
  136. package/dist/components/radio-group.mjs +0 -43
  137. package/dist/components/scroll-area.d.ts +0 -7
  138. package/dist/components/scroll-area.mjs +0 -59
  139. package/dist/components/select.d.ts +0 -15
  140. package/dist/components/select.mjs +0 -173
  141. package/dist/components/separator.d.ts +0 -4
  142. package/dist/components/separator.mjs +0 -25
  143. package/dist/components/sheet.d.ts +0 -13
  144. package/dist/components/sheet.mjs +0 -119
  145. package/dist/components/sidebar.d.ts +0 -69
  146. package/dist/components/sidebar.mjs +0 -635
  147. package/dist/components/skeleton.d.ts +0 -3
  148. package/dist/components/skeleton.mjs +0 -13
  149. package/dist/components/slider.d.ts +0 -4
  150. package/dist/components/slider.mjs +0 -59
  151. package/dist/components/sonner.d.ts +0 -4
  152. package/dist/components/sonner.mjs +0 -36
  153. package/dist/components/spinner.d.ts +0 -3
  154. package/dist/components/spinner.mjs +0 -15
  155. package/dist/components/switch.d.ts +0 -4
  156. package/dist/components/switch.mjs +0 -30
  157. package/dist/components/table.d.ts +0 -10
  158. package/dist/components/table.mjs +0 -115
  159. package/dist/components/tabs.d.ts +0 -7
  160. package/dist/components/tabs.mjs +0 -63
  161. package/dist/components/textarea.d.ts +0 -3
  162. package/dist/components/textarea.mjs +0 -16
  163. package/dist/components/toggle-group.d.ts +0 -9
  164. package/dist/components/toggle-group.mjs +0 -65
  165. package/dist/components/toggle.d.ts +0 -9
  166. package/dist/components/toggle.mjs +0 -41
  167. package/dist/components/tooltip.d.ts +0 -7
  168. package/dist/components/tooltip.mjs +0 -49
  169. package/dist/hooks/.gitkeep +0 -0
  170. package/dist/hooks/use-mobile.d.ts +0 -1
  171. package/dist/hooks/use-mobile.mjs +0 -17
  172. package/dist/hooks/use-user.d.ts +0 -12
  173. package/dist/hooks/use-user.mjs +0 -12
  174. package/dist/index.mjs +0 -15
  175. package/dist/lib/utils.d.ts +0 -2
  176. package/dist/logo.d.ts +0 -15
  177. package/dist/logo.mjs +0 -32
  178. package/dist/postcss.config.d.mts +0 -3
  179. package/dist/providers/auth-provider.d.ts +0 -15
  180. package/dist/providers/auth-provider.mjs +0 -37
  181. package/dist/providers/index.d.ts +0 -7
  182. package/dist/providers/index.mjs +0 -33
  183. package/dist/shared/access-denied.d.ts +0 -2
  184. package/dist/shared/access-denied.mjs +0 -12
  185. package/dist/shared/loader.d.ts +0 -11
  186. package/dist/shared/loader.mjs +0 -98
  187. package/dist/shared/page-loader.d.ts +0 -7
  188. package/dist/shared/page-loader.mjs +0 -6
  189. package/dist/shared/scroll-fade-effect.d.ts +0 -4
  190. package/dist/shared/scroll-fade-effect.mjs +0 -20
  191. package/dist/styles/globals.css +0 -1
  192. package/postcss.config.mjs +0 -6
  193. package/scripts/switchToDist.js +0 -55
  194. package/scripts/switchToSrc.js +0 -52
  195. package/src/components/.gitkeep +0 -0
  196. package/src/components/accordion.tsx +0 -66
  197. package/src/components/alert-dialog.tsx +0 -157
  198. package/src/components/alert.tsx +0 -66
  199. package/src/components/aspect-ratio.tsx +0 -12
  200. package/src/components/avatar.tsx +0 -53
  201. package/src/components/badge.tsx +0 -46
  202. package/src/components/breadcrumb.tsx +0 -111
  203. package/src/components/button-group.tsx +0 -86
  204. package/src/components/button.tsx +0 -62
  205. package/src/components/calendar.tsx +0 -220
  206. package/src/components/card.tsx +0 -92
  207. package/src/components/checkbox.tsx +0 -32
  208. package/src/components/collapsible.tsx +0 -34
  209. package/src/components/command.tsx +0 -184
  210. package/src/components/context-menu.tsx +0 -252
  211. package/src/components/dialog.tsx +0 -143
  212. package/src/components/drawer.tsx +0 -135
  213. package/src/components/dropdown-menu.tsx +0 -257
  214. package/src/components/empty.tsx +0 -105
  215. package/src/components/field.tsx +0 -251
  216. package/src/components/form.tsx +0 -170
  217. package/src/components/hover-card.tsx +0 -44
  218. package/src/components/input-group.tsx +0 -170
  219. package/src/components/input-otp.tsx +0 -77
  220. package/src/components/input.tsx +0 -21
  221. package/src/components/item.tsx +0 -193
  222. package/src/components/kbd.tsx +0 -29
  223. package/src/components/label.tsx +0 -24
  224. package/src/components/language-switcher.tsx +0 -49
  225. package/src/components/menubar.tsx +0 -276
  226. package/src/components/navigation-menu.tsx +0 -168
  227. package/src/components/pagination.tsx +0 -130
  228. package/src/components/popover.tsx +0 -48
  229. package/src/components/progress.tsx +0 -31
  230. package/src/components/radio-group.tsx +0 -45
  231. package/src/components/scroll-area.tsx +0 -67
  232. package/src/components/select.tsx +0 -190
  233. package/src/components/separator.tsx +0 -28
  234. package/src/components/sheet.tsx +0 -139
  235. package/src/components/sidebar.tsx +0 -726
  236. package/src/components/skeleton.tsx +0 -14
  237. package/src/components/slider.tsx +0 -63
  238. package/src/components/sonner.tsx +0 -41
  239. package/src/components/spinner.tsx +0 -17
  240. package/src/components/switch.tsx +0 -31
  241. package/src/components/table.tsx +0 -116
  242. package/src/components/tabs.tsx +0 -66
  243. package/src/components/textarea.tsx +0 -18
  244. package/src/components/toggle-group.tsx +0 -83
  245. package/src/components/toggle.tsx +0 -47
  246. package/src/components/tooltip.tsx +0 -61
  247. package/src/hooks/.gitkeep +0 -0
  248. package/src/hooks/use-mobile.ts +0 -21
  249. package/src/hooks/use-user.ts +0 -27
  250. package/src/index.ts +0 -15
  251. package/src/lib/utils.ts +0 -6
  252. package/src/logo.tsx +0 -49
  253. package/src/postcss.config.mjs +0 -6
  254. package/src/providers/auth-provider.tsx +0 -66
  255. package/src/providers/index.tsx +0 -50
  256. package/src/shared/access-denied.tsx +0 -31
  257. package/src/shared/loader.tsx +0 -109
  258. package/src/shared/page-loader.tsx +0 -24
  259. package/src/shared/scroll-fade-effect.tsx +0 -23
  260. package/src/styles/globals.css +0 -314
  261. package/tsconfig.json +0 -24
  262. /package/dist/{index.d.ts → index.js} +0 -0
@@ -1,6 +0,0 @@
1
- /** @type {import('postcss-load-config').Config} */
2
- const config = {
3
- plugins: { "@tailwindcss/postcss": {} },
4
- };
5
-
6
- export default config;
@@ -1,66 +0,0 @@
1
- "use client";
2
-
3
- import type { AuthSession } from "@arch-cadre/core";
4
- import * as React from "react";
5
- import { createContext, type ReactNode, useEffect, useState } from "react";
6
- import { mutate } from "swr";
7
- import { PageLoader } from "../shared/page-loader";
8
-
9
- export const AuthContext = createContext<
10
- | {
11
- user: AuthSession["user"] | null | undefined;
12
- session: AuthSession["session"] | null | undefined;
13
- kryoPrefix: string;
14
- isLoading: boolean;
15
- refetchUser: () => Promise<void>;
16
- }
17
- | undefined
18
- >(undefined);
19
-
20
- export default function AuthProvider({
21
- children,
22
- initialSession,
23
- kryoPrefix = "/kryo",
24
- }: {
25
- children: ReactNode;
26
- initialSession?: AuthSession;
27
- kryoPrefix?: string;
28
- }) {
29
- const [isLoading, setIsLoading] = useState(true);
30
-
31
- const refetchUser = async () => {
32
- mutate("user");
33
- };
34
-
35
- useEffect(() => {
36
- setTimeout(() => {
37
- setIsLoading(false);
38
- }, 800);
39
- }, []);
40
-
41
- if (isLoading) {
42
- return <PageLoader text="User checking" />;
43
- }
44
-
45
- return (
46
- <AuthContext.Provider
47
- value={{
48
- user: initialSession?.user,
49
- session: initialSession?.session,
50
- kryoPrefix,
51
- isLoading,
52
- refetchUser,
53
- }}
54
- >
55
- {children}
56
- </AuthContext.Provider>
57
- );
58
- }
59
-
60
- // export const useUser = () => {
61
- // const context = useContext(AuthContext);
62
- // if (!context) {
63
- // throw new Error("useUser must be used within AuthProvider");
64
- // }
65
- // return context;
66
- // };
@@ -1,50 +0,0 @@
1
- "use client";
2
-
3
- import type { AuthSession } from "@arch-cadre/core";
4
- import * as React from "react";
5
- import { useEffect, useState } from "react";
6
- import { SWRConfig } from "swr";
7
- import { Toaster } from "../components/sonner";
8
- import { TooltipProvider } from "../components/tooltip";
9
- import { PageLoader } from "../shared/page-loader";
10
- import AuthProvider from "./auth-provider";
11
-
12
- export const AppProvider = ({
13
- children,
14
- initialSession,
15
- kryoPrefix,
16
- }: {
17
- children: React.ReactElement;
18
- initialSession?: AuthSession;
19
- kryoPrefix?: string;
20
- }) => {
21
- const [isLoading, setIsLoading] = useState(true);
22
-
23
- useEffect(() => {
24
- setTimeout(() => {
25
- setIsLoading(false);
26
- }, 800);
27
- }, []);
28
-
29
- if (isLoading) {
30
- return <PageLoader text="Initializing" />;
31
- }
32
-
33
- return (
34
- <SWRConfig
35
- value={{
36
- fetcher: (url: string) =>
37
- fetch(url).then((response) => responseon()),
38
- revalidateIfStale: true,
39
- }}
40
- >
41
- <AuthProvider initialSession={initialSession} kryoPrefix={kryoPrefix}>
42
- <TooltipProvider>
43
- {children}
44
-
45
- <Toaster position="top-right" expand={true} />
46
- </TooltipProvider>
47
- </AuthProvider>
48
- </SWRConfig>
49
- );
50
- };
@@ -1,31 +0,0 @@
1
- import { Icon } from "@iconify/react";
2
- import * as React from "react";
3
- import { Button } from "../components/button";
4
-
5
- export function AccessDenied() {
6
- return (
7
- <div className="flex flex-col items-center justify-center min-h-[60vh] text-center space-y-6 p-4">
8
- <div className="bg-destructive/10 p-6 rounded-full">
9
- <Icon
10
- icon="solar:shield-warning-bold-duotone"
11
- className="size-16 text-destructive"
12
- />
13
- </div>
14
- <div className="space-y-2">
15
- <h2 className="text-2xl font-bold tracking-tight">Access Denied</h2>
16
- <p className="text-muted-foreground max-w-[400px]">
17
- You do not have the required permissions to access this area. Please
18
- contact your administrator if you believe this is an error.
19
- </p>
20
- </div>
21
- <div className="flex gap-4">
22
- <Button asChild variant="outline">
23
- <a href="/">Go back home</a>
24
- </Button>
25
- <Button asChild>
26
- <a href="/signin">Sign in with another account</a>
27
- </Button>
28
- </div>
29
- </div>
30
- );
31
- }
@@ -1,109 +0,0 @@
1
- import { Slot } from "@radix-ui/react-slot";
2
- import type { VariantProps } from "class-variance-authority";
3
- import { cva } from "class-variance-authority";
4
- import * as React from "react";
5
- import { cn } from "../lib/utils";
6
-
7
- const loaderVariants = cva("spinner", {
8
- variants: {
9
- variant: {
10
- default: "stroke-primary",
11
- dark: "stroke-white",
12
- destructive: "stroke-destructive",
13
- secondary: "stroke-secondary",
14
- ghost: "stroke-accent",
15
- },
16
- size: {
17
- default: "h-5 w-5",
18
- md: "h-10 w-10",
19
- lg: "h-60 w-60",
20
- },
21
- },
22
- defaultVariants: {
23
- variant: "default",
24
- size: "default",
25
- },
26
- });
27
-
28
- export interface LoaderProps
29
- extends React.HTMLAttributes<HTMLDivElement>,
30
- VariantProps<typeof loaderVariants> {
31
- asChild?: boolean;
32
- }
33
-
34
- function Loader({
35
- className,
36
- variant,
37
- size,
38
- asChild = false,
39
- ...props
40
- }: React.ComponentProps<"div"> &
41
- VariantProps<typeof loaderVariants> &
42
- LoaderProps) {
43
- const Comp = asChild ? Slot : "div";
44
-
45
- return (
46
- <Comp className="flex items-center justify-center" {...props}>
47
- <style>
48
- {`
49
- .spinner {
50
- animation: animate-rotate 2s linear infinite;
51
- z-index: 2;
52
- max-width: 5rem;
53
- max-height: 5rem;
54
-
55
- .path {
56
- stroke-linecap: round;
57
- animation: animate-dash 1.75s ease-in-out infinite;
58
- }
59
- }
60
- `}
61
- </style>
62
- {/** biome-ignore lint/a11y/noSvgWithoutTitle: <all> */}
63
- <svg
64
- xmlns="http://www.w3.org/2000/svg"
65
- viewBox="0 0 24 24"
66
- className={cn(loaderVariants({ variant, size, className }))}
67
- >
68
- <g>
69
- <circle
70
- cx={12}
71
- cy={12}
72
- r={9.5}
73
- fill="none"
74
- strokeLinecap="round"
75
- strokeWidth={3}
76
- >
77
- <animate
78
- attributeName="stroke-dasharray"
79
- calcMode="spline"
80
- dur="1.5s"
81
- keySplines="0.42,0,0.58,1;0.42,0,0.58,1;0.42,0,0.58,1"
82
- keyTimes="0;0.475;0.95;1"
83
- repeatCount="indefinite"
84
- values="0 150;42 150;42 150;42 150"
85
- />
86
- <animate
87
- attributeName="stroke-dashoffset"
88
- calcMode="spline"
89
- dur="1.5s"
90
- keySplines="0.42,0,0.58,1;0.42,0,0.58,1;0.42,0,0.58,1"
91
- keyTimes="0;0.475;0.95;1"
92
- repeatCount="indefinite"
93
- values="0;-16;-59;-59"
94
- />
95
- </circle>
96
- <animateTransform
97
- attributeName="transform"
98
- dur="2s"
99
- repeatCount="indefinite"
100
- type="rotate"
101
- values="0 12 12;360 12 12"
102
- />
103
- </g>
104
- </svg>
105
- </Comp>
106
- );
107
- }
108
-
109
- export { Loader, loaderVariants };
@@ -1,24 +0,0 @@
1
- import * as React from "react";
2
- import { Logo } from "../logo";
3
- import { Loader } from "./loader";
4
-
5
- interface PageLoaderProps {
6
- withLogo?: boolean;
7
- text?: string;
8
- }
9
-
10
- export function PageLoader({ withLogo = true, text }: PageLoaderProps) {
11
- return (
12
- <div className="bg-background absolute inset-0 flex flex-col items-center justify-center space-y-6">
13
- {withLogo && (
14
- <div className="mb-6">
15
- <Logo />
16
- </div>
17
- )}
18
-
19
- <Loader />
20
-
21
- {text && <div className="text-xs lowercase">{text}</div>}
22
- </div>
23
- );
24
- }
@@ -1,23 +0,0 @@
1
- import * as React from "react";
2
-
3
- import { cn } from "../lib/utils";
4
-
5
- export function ScrollFadeEffect({
6
- className,
7
- orientation = "vertical",
8
- ...props
9
- }: React.ComponentProps<"div"> & {
10
- orientation?: "horizontal" | "vertical";
11
- }) {
12
- return (
13
- <div
14
- data-orientation={orientation}
15
- className={cn(
16
- "data-[orientation=horizontal]:overflow-x-auto data-[orientation=vertical]:overflow-y-auto",
17
- "data-[orientation=horizontal]:scroll-fade-effect-x data-[orientation=vertical]:scroll-fade-effect-y",
18
- className,
19
- )}
20
- {...props}
21
- />
22
- );
23
- }
@@ -1,314 +0,0 @@
1
- @import "tailwindcss";
2
- @source "../../../apps/**/*.{ts,tsx}";
3
- @source "../../../components/**/*.{ts,tsx}";
4
- @source "../**/*.{ts,tsx}";
5
-
6
- @import "tw-animate-css";
7
-
8
- @custom-variant dark (&:is(.dark *));
9
-
10
- @theme inline {
11
- --container: 1024px;
12
-
13
- --color-background: var(--background);
14
- --color-foreground: var(--foreground);
15
-
16
- --font-sans: var(--font-syne-sans);
17
- --font-mono: var(--font-syne-mono);
18
-
19
- --color-sidebar-ring: var(--sidebar-ring);
20
- --color-sidebar-border: var(--sidebar-border);
21
- --color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
22
- --color-sidebar-accent: var(--sidebar-accent);
23
- --color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
24
- --color-sidebar-primary: var(--sidebar-primary);
25
- --color-sidebar-foreground: var(--sidebar-foreground);
26
- --color-sidebar: var(--sidebar);
27
- --color-chart-5: var(--chart-5);
28
- --color-chart-4: var(--chart-4);
29
- --color-chart-3: var(--chart-3);
30
- --color-chart-2: var(--chart-2);
31
- --color-chart-1: var(--chart-1);
32
- --color-ring: var(--ring);
33
- --color-input: var(--input);
34
- --color-border: var(--border);
35
- --color-destructive: var(--destructive);
36
- --color-accent-foreground: var(--accent-foreground);
37
- --color-accent: var(--accent);
38
- --color-muted-foreground: var(--muted-foreground);
39
- --color-muted: var(--muted);
40
- --color-secondary-foreground: var(--secondary-foreground);
41
- --color-secondary: var(--secondary);
42
- --color-primary-foreground: var(--primary-foreground);
43
- --color-primary: var(--primary);
44
- --color-popover-foreground: var(--popover-foreground);
45
- --color-popover: var(--popover);
46
- --color-card-foreground: var(--card-foreground);
47
- --color-card: var(--card);
48
- --radius-sm: calc(var(--radius) - 4px);
49
- --radius-md: calc(var(--radius) - 2px);
50
- --radius-lg: var(--radius);
51
- --radius-xl: calc(var(--radius) + 4px);
52
- --radius-2xl: calc(var(--radius) + 8px);
53
- --radius-3xl: calc(var(--radius) + 12px);
54
- --radius-4xl: calc(var(--radius) + 16px);
55
- }
56
-
57
- :root {
58
- --radius: 0.5rem;
59
- --background: oklch(0.985 0 0);
60
- --foreground: oklch(0.24 0.06 245.57);
61
- --card: oklch(1 0 0);
62
- --card-foreground: oklch(0.24 0.06 245.57);
63
- --popover: oklch(1 0 0);
64
- --popover-foreground: oklch(0.24 0.06 245.57);
65
- --primary: oklch(0.24 0.06 245.57);
66
- --primary-foreground: oklch(0.985 0 0);
67
- --secondary: oklch(0.97 0 0);
68
- --secondary-foreground: oklch(0.24 0.06 245.57);
69
- --muted: oklch(0.97 0 0);
70
- --muted-foreground: oklch(0.556 0 0);
71
- --accent: oklch(0.97 0 0);
72
- --accent-foreground: oklch(0.24 0.06 245.57);
73
- --destructive: oklch(0.577 0.245 27.325);
74
- --border: oklch(0.922 0 0);
75
- --input: oklch(0.922 0 0);
76
- --ring: oklch(0.708 0 0);
77
- --chart-1: oklch(0.646 0.222 41.116);
78
- --chart-2: oklch(0.6 0.118 184.704);
79
- --chart-3: oklch(0.398 0.07 227.392);
80
- --chart-4: oklch(0.828 0.189 84.429);
81
- --chart-5: oklch(0.769 0.188 70.08);
82
- --sidebar: oklch(1 0 0);
83
- --sidebar-foreground: oklch(0.24 0.06 245.57);
84
- --sidebar-primary: oklch(0.24 0.06 245.57);
85
- --sidebar-primary-foreground: oklch(0.985 0 0);
86
- --sidebar-accent: oklch(0.97 0 0);
87
- --sidebar-accent-foreground: oklch(0.24 0.06 245.57);
88
- --sidebar-border: oklch(0.922 0 0);
89
- --sidebar-ring: oklch(0.708 0 0);
90
- }
91
-
92
- .dark {
93
- --background: oklch(0.145 0 0);
94
- --foreground: oklch(0.985 0 0);
95
- --card: oklch(0.205 0 0);
96
- --card-foreground: oklch(0.985 0 0);
97
- --popover: oklch(0.205 0 0);
98
- --popover-foreground: oklch(0.985 0 0);
99
- --primary: oklch(0.922 0 0);
100
- --primary-foreground: oklch(0.205 0 0);
101
- --secondary: oklch(0.269 0 0);
102
- --secondary-foreground: oklch(0.985 0 0);
103
- --muted: oklch(0.269 0 0);
104
- --muted-foreground: oklch(0.708 0 0);
105
- --accent: oklch(0.269 0 0);
106
- --accent-foreground: oklch(0.985 0 0);
107
- --destructive: oklch(0.704 0.191 22.216);
108
- --border: oklch(1 0 0 / 10%);
109
- --input: oklch(1 0 0 / 15%);
110
- --ring: oklch(0.556 0 0);
111
- --chart-1: oklch(0.488 0.243 264.376);
112
- --chart-2: oklch(0.696 0.17 162.48);
113
- --chart-3: oklch(0.769 0.188 70.08);
114
- --chart-4: oklch(0.627 0.265 303.9);
115
- --chart-5: oklch(0.645 0.246 16.439);
116
- --sidebar: oklch(0.205 0 0);
117
- --sidebar-foreground: oklch(0.985 0 0);
118
- --sidebar-primary: oklch(0.488 0.243 264.376);
119
- --sidebar-primary-foreground: oklch(0.985 0 0);
120
- --sidebar-accent: oklch(0.269 0 0);
121
- --sidebar-accent-foreground: oklch(0.985 0 0);
122
- --sidebar-border: oklch(1 0 0 / 10%);
123
- --sidebar-ring: oklch(0.556 0 0);
124
- }
125
-
126
- @layer utilities {
127
- /* Squircle style with fallback */
128
- .squircle {
129
- border-radius: 1rem;
130
- }
131
-
132
- @supports (corner-shape: squircle) {
133
- .squircle {
134
- border-radius: 2rem;
135
- corner-shape: squircle;
136
- }
137
- }
138
- }
139
-
140
- @layer base {
141
- * {
142
- @apply border-border outline-ring/50;
143
- }
144
- body {
145
- @apply bg-background text-foreground;
146
- }
147
-
148
- body:before {
149
- content: "";
150
- z-index: 1;
151
- pointer-events: none;
152
- opacity: 0.1;
153
- filter: url(#grain);
154
- background: #000;
155
- width: 100%;
156
- height: 100%;
157
- position: fixed;
158
- top: 0;
159
- left: 0;
160
- }
161
-
162
- [data-slot="sidebar-wrapper"]:before {
163
- content: "";
164
- z-index: 51;
165
- pointer-events: none;
166
- opacity: 0.1;
167
- filter: url(#grain);
168
- background: #000;
169
- width: 100%;
170
- height: 100%;
171
- position: fixed;
172
- top: 0;
173
- left: 0;
174
- }
175
-
176
- svg.grain-noise {
177
- z-index: -1;
178
- width: 0;
179
- height: 0;
180
- position: absolute;
181
- }
182
-
183
- .container {
184
- max-width: var(--container);
185
- margin: 0 auto;
186
- @apply px-4 sm:px-6 lg:px-8;
187
- }
188
-
189
- @keyframes show-top-mask {
190
- to {
191
- --top-mask-height: var(--mask-height);
192
- }
193
- }
194
-
195
- @keyframes hide-bottom-mask {
196
- to {
197
- --bottom-mask-height: 0px;
198
- }
199
- }
200
-
201
- @keyframes show-left-mask {
202
- to {
203
- --left-mask-width: var(--mask-width);
204
- }
205
- }
206
-
207
- @keyframes hide-right-mask {
208
- to {
209
- --right-mask-width: 0px;
210
- }
211
- }
212
- }
213
-
214
- @property --top-mask-height {
215
- syntax: "<length>";
216
- inherits: true;
217
- initial-value: 0px;
218
- }
219
-
220
- @property --bottom-mask-height {
221
- syntax: "<length>";
222
- inherits: true;
223
- initial-value: 64px;
224
- }
225
-
226
- @property --left-mask-width {
227
- syntax: "<length>";
228
- inherits: true;
229
- initial-value: 0px;
230
- }
231
-
232
- @property --right-mask-width {
233
- syntax: "<length>";
234
- inherits: true;
235
- initial-value: 64px;
236
- }
237
-
238
- @utility scroll-fade-effect-y {
239
- --mask-height: 64px;
240
- --mask-offset-top: 0px;
241
- --mask-offset-bottom: 0px;
242
- --scroll-buffer: 2rem;
243
-
244
- /* Set up the mask layers */
245
- mask-image:
246
- linear-gradient(to top, transparent, black 90%),
247
- linear-gradient(to bottom, transparent 0%, black 100%),
248
- linear-gradient(black, black);
249
-
250
- mask-size:
251
- 100% var(--top-mask-height),
252
- 100% var(--bottom-mask-height),
253
- 100% 100%;
254
- mask-repeat: no-repeat, no-repeat, no-repeat;
255
- mask-position:
256
- 0 var(--mask-offset-top),
257
- 0 calc(100% - var(--mask-offset-bottom)),
258
- 0 0;
259
- /* Exclude the gradient areas from the solid mask */
260
- mask-composite: exclude;
261
-
262
- animation-name: show-top-mask, hide-bottom-mask;
263
- animation-timeline: scroll(self), scroll(self);
264
- animation-range:
265
- 0 var(--scroll-buffer),
266
- calc(100% - var(--scroll-buffer)) 100%;
267
- animation-fill-mode: both;
268
- }
269
-
270
- @utility scroll-fade-effect-x {
271
- --mask-width: 64px;
272
- --mask-offset-left: 0px;
273
- --mask-offset-right: 0px;
274
- --scroll-buffer: 2rem;
275
-
276
- mask-image:
277
- linear-gradient(to left, transparent, black 90%),
278
- linear-gradient(to right, transparent 0%, black 100%),
279
- linear-gradient(black, black);
280
-
281
- mask-size:
282
- var(--left-mask-width) 100%,
283
- var(--right-mask-width) 100%,
284
- 100% 100%;
285
- mask-repeat: no-repeat, no-repeat, no-repeat;
286
- mask-position:
287
- var(--mask-offset-left) 0,
288
- calc(100% - var(--mask-offset-right)) 0,
289
- 0 0;
290
- mask-composite: exclude;
291
-
292
- animation-name: show-left-mask, hide-right-mask;
293
- animation-timeline: scroll(self inline), scroll(self inline);
294
- animation-range:
295
- 0 var(--scroll-buffer),
296
- calc(100% - var(--scroll-buffer)) 100%;
297
- animation-fill-mode: both;
298
- }
299
-
300
- @keyframes progress-fast {
301
- 0% {
302
- transform: translateX(-100%);
303
- }
304
- 50% {
305
- transform: translateX(-20%);
306
- }
307
- 100% {
308
- transform: translateX(100%);
309
- }
310
- }
311
-
312
- .animate-progress-fast {
313
- animation: progress-fast 1.5s infinite linear;
314
- }
package/tsconfig.json DELETED
@@ -1,24 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- "target": "ES2022",
4
- "lib": ["dom", "dom.iterable", "esnext"],
5
- "allowJs": true,
6
- "skipLibCheck": true,
7
- "strict": true,
8
- "forceConsistentCasingInFileNames": true,
9
- "noEmit": true,
10
- "esModuleInterop": true,
11
- "module": "esnext",
12
- "moduleResolution": "bundler",
13
- "resolveJsonModule": true,
14
- "isolatedModules": true,
15
- "jsx": "react-jsx",
16
- "incremental": false,
17
- "baseUrl": ".",
18
- "paths": {
19
- "@arch-cadre/ui/*": ["./src/*"]
20
- }
21
- },
22
- "include": ["."],
23
- "exclude": ["node_modules", "dist"]
24
- }
File without changes