@audere/ui 0.3.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.
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/lib/utils.ts","../../src/surface/Surface.tsx","../../src/workflow/TaskCard.tsx","../../src/workflow/Checklist.tsx","../../src/workflow/ProgressTracker.tsx"],"names":["jsx","jsxs"],"mappings":"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","file":"index.js","sourcesContent":["import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n","import * as React from \"react\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"../lib/utils\";\n\nconst surfaceVariants = cva(\n \"rounded-xl border border-border bg-card text-card-foreground shadow-sm\",\n {\n variants: {\n padding: {\n none: \"p-0\",\n sm: \"p-4\",\n md: \"p-6\",\n },\n },\n defaultVariants: {\n padding: \"none\",\n },\n },\n);\n\nexport type SurfaceProps = React.ComponentProps<\"div\"> &\n VariantProps<typeof surfaceVariants>;\n\n/**\n * Default elevated panel for tables, metrics, charts, and grouped content.\n * Uses theme CSS variables (`--card`, `--border`); host apps must define :root tokens.\n */\nexport function Surface({ className, padding, ...props }: SurfaceProps) {\n return (\n <div\n data-slot=\"surface\"\n className={cn(surfaceVariants({ padding }), className)}\n {...props}\n />\n );\n}\n\nexport { surfaceVariants };\n","import type { ReactNode } from \"react\";\n\nimport { Surface } from \"../surface/Surface\";\n\nexport type TaskStatus = \"todo\" | \"in-progress\" | \"done\";\n\nexport type TaskCardProps = {\n status: TaskStatus;\n title: string;\n description?: string;\n footer?: ReactNode;\n actions?: ReactNode;\n};\n\nexport function TaskCard({\n status,\n title,\n description,\n footer,\n actions,\n}: TaskCardProps) {\n const statusLabel =\n status === \"done\" ? \"Completed\" : status === \"in-progress\" ? \"In Progress\" : \"To Do\";\n\n return (\n <Surface\n padding=\"none\"\n className=\"transition-colors hover:border-primary/30\"\n >\n <div className=\"px-5 pb-5 pt-5\">\n <div className=\"mb-3 flex items-start justify-between gap-3\">\n <span className=\"inline-flex items-center rounded-full bg-muted px-2 py-0.5 text-xs font-medium text-muted-foreground\">\n {statusLabel}\n </span>\n {actions}\n </div>\n <h3 className=\"mb-1 text-sm font-semibold leading-snug text-foreground\">\n {title}\n </h3>\n {description ? (\n <p className=\"mb-4 line-clamp-2 text-xs text-muted-foreground\">{description}</p>\n ) : null}\n {footer ? (\n <div className=\"mt-4 border-t border-border pt-4 text-xs text-muted-foreground\">\n {footer}\n </div>\n ) : null}\n </div>\n </Surface>\n );\n}\n","import { Surface } from \"../surface/Surface\";\n\nexport type ChecklistItem = {\n id: string | number;\n label: string;\n status: \"todo\" | \"pending\" | \"done\";\n meta?: string;\n};\n\nexport type ChecklistProps = {\n title?: string;\n items: ChecklistItem[];\n};\n\nexport function Checklist({ title, items }: ChecklistProps) {\n return (\n <Surface padding=\"none\">\n {title ? (\n <div className=\"flex items-center justify-between rounded-t-[inherit] border-b border-border bg-muted/50 px-4 py-3\">\n <h3 className=\"text-sm font-semibold text-foreground\">{title}</h3>\n </div>\n ) : null}\n <div className=\"p-2\">\n {items.map((item) => (\n <div\n key={item.id}\n className=\"group flex cursor-pointer items-start gap-3 rounded-md p-3 transition-colors hover:bg-muted/60\"\n >\n <div className=\"mt-0.5 h-5 w-5 rounded-full border border-border group-hover:border-primary\" />\n <div className=\"min-w-0 flex-1\">\n <p\n className={\n item.status === \"done\"\n ? \"text-sm font-medium text-muted-foreground line-through\"\n : \"text-sm font-medium text-foreground\"\n }\n >\n {item.label}\n </p>\n {item.meta ? (\n <p className=\"mt-0.5 text-xs text-muted-foreground\">{item.meta}</p>\n ) : null}\n </div>\n </div>\n ))}\n </div>\n </Surface>\n );\n}\n","import { Surface } from \"../surface/Surface\";\n\nexport type ProgressStep = {\n id: string | number;\n title: string;\n description?: string;\n state: \"complete\" | \"current\" | \"upcoming\";\n};\n\nexport type ProgressTrackerProps = {\n title?: string;\n steps: ProgressStep[];\n};\n\nexport function ProgressTracker({ title, steps }: ProgressTrackerProps) {\n return (\n <Surface padding=\"none\">\n {title ? (\n <div className=\"px-4 pb-2 pt-4\">\n <h3 className=\"text-sm font-medium text-foreground\">{title}</h3>\n </div>\n ) : null}\n <div className=\"space-y-6 px-4 pb-6 pt-2\">\n <div className=\"relative ml-3 space-y-6 border-l-2 border-border\">\n {steps.map((step) => (\n <div key={step.id} className=\"relative pl-6\">\n <div className=\"absolute -left-[9px] top-1 flex h-4 w-4 items-center justify-center rounded-full border-2 border-border bg-card\">\n {step.state === \"complete\" ? (\n <div className=\"h-2 w-2 rounded-full bg-primary\" />\n ) : null}\n {step.state === \"current\" ? (\n <div className=\"h-2 w-2 animate-pulse rounded-full bg-primary/80\" />\n ) : null}\n </div>\n <h4 className=\"text-sm font-semibold text-foreground\">{step.title}</h4>\n {step.description ? (\n <p className=\"mt-1 text-xs text-muted-foreground\">{step.description}</p>\n ) : null}\n </div>\n ))}\n </div>\n </div>\n </Surface>\n );\n}\n"]}
package/package.json ADDED
@@ -0,0 +1,108 @@
1
+ {
2
+ "name": "@audere/ui",
3
+ "version": "0.3.0",
4
+ "description": "Shared Audere UI components and design primitives",
5
+ "type": "module",
6
+ "sideEffects": false,
7
+ "private": false,
8
+ "files": [
9
+ "dist"
10
+ ],
11
+ "main": "./dist/index.js",
12
+ "module": "./dist/index.js",
13
+ "types": "./dist/index.d.ts",
14
+ "exports": {
15
+ ".": {
16
+ "types": "./dist/index.d.ts",
17
+ "import": "./dist/index.js",
18
+ "default": "./dist/index.js"
19
+ },
20
+ "./data": {
21
+ "types": "./dist/data/index.d.ts",
22
+ "import": "./dist/data/index.js",
23
+ "default": "./dist/data/index.js"
24
+ },
25
+ "./charts": {
26
+ "types": "./dist/charts/index.d.ts",
27
+ "import": "./dist/charts/index.js",
28
+ "default": "./dist/charts/index.js"
29
+ },
30
+ "./theme": {
31
+ "types": "./dist/theme/index.d.ts",
32
+ "import": "./dist/theme/index.js",
33
+ "default": "./dist/theme/index.js"
34
+ },
35
+ "./workflow": {
36
+ "types": "./dist/workflow/index.d.ts",
37
+ "import": "./dist/workflow/index.js",
38
+ "default": "./dist/workflow/index.js"
39
+ },
40
+ "./ai": {
41
+ "types": "./dist/ai/index.d.ts",
42
+ "import": "./dist/ai/index.js",
43
+ "default": "./dist/ai/index.js"
44
+ },
45
+ "./primitives": {
46
+ "types": "./dist/primitives/index.d.ts",
47
+ "import": "./dist/primitives/index.js",
48
+ "default": "./dist/primitives/index.js"
49
+ },
50
+ "./lib/utils": {
51
+ "types": "./dist/lib/utils.d.ts",
52
+ "import": "./dist/lib/utils.js",
53
+ "default": "./dist/lib/utils.js"
54
+ },
55
+ "./surface": {
56
+ "types": "./dist/surface/index.d.ts",
57
+ "import": "./dist/surface/index.js",
58
+ "default": "./dist/surface/index.js"
59
+ },
60
+ "./composition": {
61
+ "types": "./dist/composition/index.d.ts",
62
+ "import": "./dist/composition/index.js",
63
+ "default": "./dist/composition/index.js"
64
+ },
65
+ "./layout": {
66
+ "types": "./dist/layout/index.d.ts",
67
+ "import": "./dist/layout/index.js",
68
+ "default": "./dist/layout/index.js"
69
+ }
70
+ },
71
+ "scripts": {
72
+ "clean": "rimraf dist",
73
+ "build": "npm run clean && tsup",
74
+ "typecheck": "tsc --noEmit -p tsconfig.build.json",
75
+ "prepublishOnly": "npm run build && npm run typecheck"
76
+ },
77
+ "peerDependencies": {
78
+ "react": "^18.0.0",
79
+ "react-dom": "^18.0.0",
80
+ "react-router": "^7.0.0",
81
+ "lucide-react": "^0.400.0",
82
+ "@radix-ui/react-slot": "^1.0.0",
83
+ "@radix-ui/react-tabs": "^1.0.0",
84
+ "class-variance-authority": "^0.7.0",
85
+ "clsx": "^2.0.0",
86
+ "tailwind-merge": "^2.0.0",
87
+ "recharts": "^2.0.0"
88
+ },
89
+ "peerDependenciesMeta": {
90
+ "recharts": {
91
+ "optional": true
92
+ }
93
+ },
94
+ "devDependencies": {
95
+ "typescript": "^5.8.3",
96
+ "tsup": "^8.2.4",
97
+ "rimraf": "^6.0.1",
98
+ "@types/react": "^18.3.23",
99
+ "@types/react-dom": "^18.3.7",
100
+ "react": "^18.3.1",
101
+ "react-dom": "^18.3.1",
102
+ "recharts": "^2.15.4"
103
+ },
104
+ "publishConfig": {
105
+ "registry": "https://registry.npmjs.org/",
106
+ "access": "public"
107
+ }
108
+ }