@lukeashford/aurelius 2.12.0 → 2.14.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/README.md +109 -118
- package/dist/index.d.mts +195 -11
- package/dist/index.d.ts +195 -11
- package/dist/index.js +1034 -362
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +965 -307
- package/dist/index.mjs.map +1 -1
- package/dist/styles/theme.css +20 -0
- package/llms.md +68 -4
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,161 +1,152 @@
|
|
|
1
|
-
# Aurelius
|
|
1
|
+
# Aurelius — Agent Development Guide
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
This file provides instructions for AI coding agents working **on** this repository (developing the
|
|
4
|
+
library itself).
|
|
5
5
|
|
|
6
|
-
|
|
7
|
-
cinematic aesthetic.
|
|
8
|
-
|
|
9
|
-
[Live Demo](https://aurelius.lukeashford.com/)
|
|
6
|
+
For agents **using** the library in other projects, see `llms.md`.
|
|
10
7
|
|
|
11
8
|
---
|
|
12
9
|
|
|
13
|
-
##
|
|
14
|
-
|
|
15
|
-
Aurelius relies on deep blacks, rich golds, and refined typography to convey stability, trust, and
|
|
16
|
-
quiet luxury.
|
|
17
|
-
|
|
18
|
-
**Core principles:**
|
|
19
|
-
|
|
20
|
-
- **Cinematic:** Strictly dark mode. No white backgrounds.
|
|
21
|
-
- **Refined:** Gold (`#c9a227`) is reserved for primary actions and key highlights.
|
|
22
|
-
- **Grounded:** Subtle 1px borders over heavy drop shadows.
|
|
10
|
+
## README
|
|
23
11
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
1. **React Components** — Use `<Button />`, `<Card />`, etc. whenever possible
|
|
27
|
-
2. **Tailwind utilities** — Build custom layouts with token-based classes (`bg-obsidian`,
|
|
28
|
-
`text-gold`)
|
|
29
|
-
3. **Design tokens** — Direct access to values as a last resort
|
|
12
|
+
See @README.md for project orientation, philosophy, and quick start commands.
|
|
30
13
|
|
|
31
14
|
---
|
|
32
15
|
|
|
33
|
-
##
|
|
34
|
-
|
|
35
|
-
This package includes a machine-readable manifest and ESLint enforcement for AI coding assistants.
|
|
36
|
-
|
|
37
|
-
**Prompt your agent:**
|
|
16
|
+
## Project Structure
|
|
38
17
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
18
|
+
```
|
|
19
|
+
aurelius/
|
|
20
|
+
├── src/ # Library source code
|
|
21
|
+
│ ├── components/ # React components
|
|
22
|
+
│ │ ├── chat/ # Chat interface components
|
|
23
|
+
│ │ │ └── hooks/ # React hooks (useArtifacts, useScrollAnchor, etc.)
|
|
24
|
+
│ │ └── icons/ # Icon components
|
|
25
|
+
│ ├── styles/ # CSS and theme definitions
|
|
26
|
+
│ │ ├── base.css # Entry point (imports theme + Tailwind)
|
|
27
|
+
│ │ └── theme.css # Design tokens and custom utilities
|
|
28
|
+
│ └── utils/ # Utility functions (cx, etc.)
|
|
29
|
+
├── demo/ # Demo site (Vite + React)
|
|
30
|
+
│ └── src/components/ # Demo components (ChatDemo, etc.)
|
|
31
|
+
├── scripts/ # Build scripts
|
|
32
|
+
│ └── generate-manifest.js # Generates llms.md from source
|
|
33
|
+
├── llms.md # Auto-generated AI manifest (DO NOT EDIT)
|
|
34
|
+
├── CLAUDE.md # This file
|
|
35
|
+
└── README.md # Human-readable overview
|
|
36
|
+
```
|
|
45
37
|
|
|
46
|
-
|
|
47
|
-
while staying within design system constraints.
|
|
38
|
+
---
|
|
48
39
|
|
|
49
|
-
|
|
40
|
+
## Development Guidelines
|
|
50
41
|
|
|
51
|
-
|
|
42
|
+
### Adding Components
|
|
52
43
|
|
|
53
|
-
|
|
44
|
+
1. Create component file in `src/components/` (or appropriate subdirectory)
|
|
45
|
+
2. Add JSDoc comments to the component and its props interface — these are auto-extracted to
|
|
46
|
+
`llms.md`
|
|
47
|
+
3. Export from `src/components/index.ts`
|
|
48
|
+
4. Run `npm run build` to regenerate `llms.md`
|
|
54
49
|
|
|
55
|
-
###
|
|
50
|
+
### JSDoc Format for Props
|
|
56
51
|
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
52
|
+
```tsx
|
|
53
|
+
export interface MyComponentProps {
|
|
54
|
+
/**
|
|
55
|
+
* Description of this prop
|
|
56
|
+
*/
|
|
57
|
+
propName: string
|
|
58
|
+
/**
|
|
59
|
+
* Another prop with type annotation in description
|
|
60
|
+
* @default "defaultValue"
|
|
61
|
+
*/
|
|
62
|
+
optionalProp?: 'option1' | 'option2'
|
|
63
|
+
}
|
|
61
64
|
|
|
62
|
-
|
|
63
|
-
|
|
65
|
+
/**
|
|
66
|
+
* Component description goes here.
|
|
67
|
+
* This will be extracted to llms.md.
|
|
68
|
+
*/
|
|
69
|
+
export function MyComponent({propName, optionalProp = 'option1'}: MyComponentProps) {
|
|
70
|
+
// ...
|
|
71
|
+
}
|
|
64
72
|
```
|
|
65
73
|
|
|
66
|
-
###
|
|
74
|
+
### Tailwind CSS v4
|
|
67
75
|
|
|
68
|
-
|
|
76
|
+
This project uses Tailwind CSS v4 with `@theme` design tokens:
|
|
69
77
|
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
78
|
+
- All colors defined in `src/styles/theme.css` under `@theme { }`
|
|
79
|
+
- Custom utilities defined with `@utility` directive
|
|
80
|
+
- ESLint enforces design system constraints (no arbitrary values)
|
|
73
81
|
|
|
74
|
-
|
|
75
|
-
plugins: [
|
|
76
|
-
tailwindcss(),
|
|
77
|
-
],
|
|
78
|
-
})
|
|
79
|
-
```
|
|
82
|
+
**Restricted patterns (will fail lint):**
|
|
80
83
|
|
|
81
|
-
|
|
84
|
+
- `bg-[#...]`, `text-[...]` — arbitrary color values
|
|
85
|
+
- `rounded-sm`, `rounded` — use design system border radius
|
|
86
|
+
- `max-h-[...]`, `w-[...]` — use relative units or design tokens
|
|
82
87
|
|
|
83
|
-
|
|
88
|
+
### Testing Changes
|
|
84
89
|
|
|
85
|
-
```
|
|
86
|
-
|
|
87
|
-
|
|
90
|
+
```bash
|
|
91
|
+
# Type check
|
|
92
|
+
npm run typecheck
|
|
88
93
|
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
```
|
|
94
|
+
# Lint (must pass with 0 warnings)
|
|
95
|
+
npm run lint
|
|
92
96
|
|
|
93
|
-
|
|
97
|
+
# Full build (typecheck + lint + compile + generate manifest)
|
|
98
|
+
npm run build
|
|
94
99
|
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
import './index.css'
|
|
100
|
+
# Run demo to visually test
|
|
101
|
+
npm run dev:demo
|
|
98
102
|
```
|
|
99
103
|
|
|
100
|
-
###
|
|
104
|
+
### Documentation
|
|
101
105
|
|
|
102
|
-
|
|
103
|
-
|
|
106
|
+
- **README.md** — Keep focused on human orientation. No component API docs.
|
|
107
|
+
- **llms.md** — Auto-generated. Never edit directly. Add JSDoc to components instead.
|
|
108
|
+
- **CLAUDE.md** — This file. Update when project structure or processes change.
|
|
104
109
|
|
|
105
|
-
|
|
106
|
-
// eslint.config.mjs
|
|
107
|
-
export {default} from '@lukeashford/aurelius/eslint';
|
|
108
|
-
```
|
|
110
|
+
### Commit Guidelines
|
|
109
111
|
|
|
110
|
-
|
|
112
|
+
- Use conventional commits: `feat:`, `fix:`, `refactor:`, `docs:`, `chore:`
|
|
113
|
+
- Run `npm run build` before committing to ensure everything compiles
|
|
114
|
+
- The build regenerates `llms.md` — commit it with your changes
|
|
111
115
|
|
|
112
|
-
|
|
113
|
-
// eslint.config.mjs
|
|
114
|
-
import {createAureliusESLintConfig} from '@lukeashford/aurelius/eslint';
|
|
116
|
+
---
|
|
115
117
|
|
|
116
|
-
|
|
117
|
-
entryPoint: './app/styles.css'
|
|
118
|
-
});
|
|
119
|
-
```
|
|
118
|
+
## Key Files
|
|
120
119
|
|
|
121
|
-
|
|
120
|
+
| File | Purpose |
|
|
121
|
+
|---------------------------------------------|------------------------------------------|
|
|
122
|
+
| `src/styles/theme.css` | Design tokens (colors, fonts, utilities) |
|
|
123
|
+
| `src/components/index.ts` | Main export barrel |
|
|
124
|
+
| `src/components/chat/hooks/useArtifacts.ts` | Artifacts panel state management |
|
|
125
|
+
| `src/components/chat/ChatInterface.tsx` | Main chat orchestrator component |
|
|
126
|
+
| `scripts/generate-manifest.js` | Generates llms.md from source |
|
|
127
|
+
| `eslint/index.js` | ESLint config enforcing design system |
|
|
122
128
|
|
|
123
|
-
|
|
124
|
-
`bg-[#123456]` or `text-[15px]`
|
|
125
|
-
- **CSS files:** Tailwind v4 CSS best practices, valid `@apply` directives, no arbitrary value
|
|
126
|
-
overuse, and proper theme token usage
|
|
129
|
+
---
|
|
127
130
|
|
|
128
|
-
|
|
131
|
+
## Common Tasks
|
|
129
132
|
|
|
130
|
-
Add a
|
|
133
|
+
### Add a new icon
|
|
131
134
|
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
"dev": "npm run lint && vite",
|
|
137
|
-
"build": "npm run lint && vite build"
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
```
|
|
135
|
+
1. Create `src/components/icons/MyIcon.tsx`
|
|
136
|
+
2. Add React import and IconProps type
|
|
137
|
+
3. Export from `src/components/icons/index.ts`
|
|
138
|
+
4. Export from `src/components/index.ts`
|
|
141
139
|
|
|
142
|
-
|
|
143
|
-
pipeline so lint failures block merges.
|
|
140
|
+
### Add a new color token
|
|
144
141
|
|
|
145
|
-
|
|
142
|
+
1. Add to `@theme { }` block in `src/styles/theme.css`:
|
|
143
|
+
```css
|
|
144
|
+
--color-mycolor: #hexvalue;
|
|
145
|
+
```
|
|
146
|
+
2. Run `npm run build` — the color will auto-appear in `llms.md`
|
|
146
147
|
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
<Card variant="featured" className="p-8 max-w-sm mx-auto">
|
|
153
|
-
<h2 className="text-gold text-2xl mb-6">Sign In</h2>
|
|
154
|
-
<Input placeholder="email@example.com"/>
|
|
155
|
-
<Button variant="primary" className="w-full mt-4">
|
|
156
|
-
Enter
|
|
157
|
-
</Button>
|
|
158
|
-
</Card>
|
|
159
|
-
)
|
|
160
|
-
}
|
|
161
|
-
```
|
|
148
|
+
### Update component documentation
|
|
149
|
+
|
|
150
|
+
1. Edit JSDoc comments in the component file
|
|
151
|
+
2. Run `npm run build` to regenerate `llms.md`
|
|
152
|
+
3. Commit both files
|
package/dist/index.d.mts
CHANGED
|
@@ -594,6 +594,45 @@ interface StepperProps extends React$1.HTMLAttributes<HTMLDivElement> {
|
|
|
594
594
|
}
|
|
595
595
|
declare const Stepper: React$1.ForwardRefExoticComponent<StepperProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
596
596
|
|
|
597
|
+
declare function ChevronLeftIcon({ className, ...props }: IconProps): React$1.JSX.Element;
|
|
598
|
+
|
|
599
|
+
declare function ChevronRightIcon({ className, ...props }: IconProps): React$1.JSX.Element;
|
|
600
|
+
|
|
601
|
+
declare function CloseIcon({ className, ...props }: IconProps): React$1.JSX.Element;
|
|
602
|
+
|
|
603
|
+
declare function ExpandIcon({ className, ...props }: IconProps): React$1.JSX.Element;
|
|
604
|
+
|
|
605
|
+
declare function HistoryIcon({ className, ...props }: IconProps): React$1.JSX.Element;
|
|
606
|
+
|
|
607
|
+
declare function LayersIcon({ className, ...props }: IconProps): React$1.JSX.Element;
|
|
608
|
+
|
|
609
|
+
declare function PlusIcon({ className, ...props }: IconProps): React$1.JSX.Element;
|
|
610
|
+
|
|
611
|
+
declare function CheckSquareIcon({ className, ...props }: IconProps): React$1.JSX.Element;
|
|
612
|
+
|
|
613
|
+
declare function EmptySquareIcon({ className, ...props }: IconProps): React$1.JSX.Element;
|
|
614
|
+
|
|
615
|
+
interface CrossSquareIconProps extends IconProps {
|
|
616
|
+
/**
|
|
617
|
+
* Visual variant for different states
|
|
618
|
+
* - 'cancelled': subtle ash coloring
|
|
619
|
+
* - 'failed': error red coloring
|
|
620
|
+
*/
|
|
621
|
+
variant?: 'cancelled' | 'failed';
|
|
622
|
+
}
|
|
623
|
+
declare function CrossSquareIcon({ className, variant, ...props }: CrossSquareIconProps): React$1.JSX.Element;
|
|
624
|
+
|
|
625
|
+
/**
|
|
626
|
+
* Square loading spinner with "snake" animation.
|
|
627
|
+
* A golden stroke travels around a square border.
|
|
628
|
+
*/
|
|
629
|
+
declare function SquareLoaderIcon({ className, ...props }: IconProps): React$1.JSX.Element;
|
|
630
|
+
|
|
631
|
+
interface IconProps {
|
|
632
|
+
className?: string;
|
|
633
|
+
'aria-hidden'?: boolean;
|
|
634
|
+
}
|
|
635
|
+
|
|
597
636
|
type MessageVariant = 'user' | 'assistant';
|
|
598
637
|
interface MessageBranchInfo {
|
|
599
638
|
/**
|
|
@@ -777,9 +816,10 @@ interface ConversationSidebarProps extends React$1.HTMLAttributes<HTMLDivElement
|
|
|
777
816
|
*/
|
|
778
817
|
onToggleCollapse?: () => void;
|
|
779
818
|
/**
|
|
780
|
-
* Current width of the sidebar (when expanded)
|
|
819
|
+
* Current width of the sidebar (when expanded).
|
|
820
|
+
* Accepts CSS width value (e.g., "15vw", "256px").
|
|
781
821
|
*/
|
|
782
|
-
width?:
|
|
822
|
+
width?: string;
|
|
783
823
|
/**
|
|
784
824
|
* Callback to start resizing
|
|
785
825
|
*/
|
|
@@ -800,6 +840,52 @@ interface CollapsedSidebarToggleProps extends React$1.ButtonHTMLAttributes<HTMLB
|
|
|
800
840
|
}
|
|
801
841
|
declare const CollapsedSidebarToggle: React$1.ForwardRefExoticComponent<CollapsedSidebarToggleProps & React$1.RefAttributes<HTMLButtonElement>>;
|
|
802
842
|
|
|
843
|
+
type TaskStatus = 'pending' | 'in_progress' | 'done' | 'cancelled' | 'failed';
|
|
844
|
+
interface Task {
|
|
845
|
+
/**
|
|
846
|
+
* Unique identifier for the task
|
|
847
|
+
*/
|
|
848
|
+
id: string;
|
|
849
|
+
/**
|
|
850
|
+
* Task description text
|
|
851
|
+
*/
|
|
852
|
+
label: string;
|
|
853
|
+
/**
|
|
854
|
+
* Current status of the task
|
|
855
|
+
*/
|
|
856
|
+
status: TaskStatus;
|
|
857
|
+
/**
|
|
858
|
+
* Optional subtasks (shown when parent is in_progress or done)
|
|
859
|
+
*/
|
|
860
|
+
subtasks?: Task[];
|
|
861
|
+
}
|
|
862
|
+
interface TodosListProps extends React$1.HTMLAttributes<HTMLDivElement> {
|
|
863
|
+
/**
|
|
864
|
+
* Array of tasks to display
|
|
865
|
+
*/
|
|
866
|
+
tasks: Task[];
|
|
867
|
+
/**
|
|
868
|
+
* Title for the todos list
|
|
869
|
+
* @default "Tasks"
|
|
870
|
+
*/
|
|
871
|
+
title?: string;
|
|
872
|
+
}
|
|
873
|
+
/**
|
|
874
|
+
* TodosList displays a structured list of tasks with status indicators.
|
|
875
|
+
*
|
|
876
|
+
* Features:
|
|
877
|
+
* - Nested tasks with indentation
|
|
878
|
+
* - Status indicators: done (checkmark), in_progress (snake animation), pending (empty), cancelled, failed
|
|
879
|
+
* - Done tasks are crossed out with golden checkmark
|
|
880
|
+
* - Cancelled/failed tasks are crossed out with subtle styling and sorted to bottom of their local group
|
|
881
|
+
* - Max 1/4 screen height with scroll
|
|
882
|
+
* - Subtasks appear when parent task is in_progress or done
|
|
883
|
+
*
|
|
884
|
+
* The component automatically sorts cancelled/failed tasks to the bottom of their local group
|
|
885
|
+
* (not globally), so just changing a task's status will reorder it appropriately.
|
|
886
|
+
*/
|
|
887
|
+
declare const TodosList: React$1.ForwardRefExoticComponent<TodosListProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
888
|
+
|
|
803
889
|
interface UseScrollAnchorOptions {
|
|
804
890
|
/**
|
|
805
891
|
* Behavior for scrolling. Defaults to 'smooth'.
|
|
@@ -842,7 +928,48 @@ interface UseScrollAnchorReturn {
|
|
|
842
928
|
*/
|
|
843
929
|
declare function useScrollAnchor(options?: UseScrollAnchorOptions): UseScrollAnchorReturn;
|
|
844
930
|
|
|
845
|
-
|
|
931
|
+
/**
|
|
932
|
+
* Script element types following standard screenplay format
|
|
933
|
+
*/
|
|
934
|
+
type ScriptElementType = 'scene-heading' | 'action' | 'character' | 'dialogue' | 'parenthetical' | 'transition' | 'title' | 'subtitle';
|
|
935
|
+
/**
|
|
936
|
+
* A single element in the script
|
|
937
|
+
*/
|
|
938
|
+
interface ScriptElement {
|
|
939
|
+
type: ScriptElementType;
|
|
940
|
+
content: string;
|
|
941
|
+
}
|
|
942
|
+
interface ScriptCardProps extends React$1.HTMLAttributes<HTMLDivElement> {
|
|
943
|
+
/**
|
|
944
|
+
* Title of the script (shown at top)
|
|
945
|
+
*/
|
|
946
|
+
title?: string;
|
|
947
|
+
/**
|
|
948
|
+
* Subtitle/metadata (e.g., "30-second spot • Directed by AI Creative")
|
|
949
|
+
*/
|
|
950
|
+
subtitle?: string;
|
|
951
|
+
/**
|
|
952
|
+
* Array of script elements in order
|
|
953
|
+
*/
|
|
954
|
+
elements: ScriptElement[];
|
|
955
|
+
/**
|
|
956
|
+
* Maximum height before scrolling (default: 16rem / 256px)
|
|
957
|
+
*/
|
|
958
|
+
maxHeight?: string;
|
|
959
|
+
}
|
|
960
|
+
/**
|
|
961
|
+
* ScriptCard displays a formatted movie/video script.
|
|
962
|
+
*
|
|
963
|
+
* Follows standard screenplay formatting conventions:
|
|
964
|
+
* - Scene headings: uppercase, gold, left-aligned
|
|
965
|
+
* - Action: silver, full width
|
|
966
|
+
* - Character names: uppercase, centered-left
|
|
967
|
+
* - Dialogue: indented from both sides
|
|
968
|
+
* - Transitions: uppercase, right-aligned
|
|
969
|
+
*/
|
|
970
|
+
declare const ScriptCard: React$1.ForwardRefExoticComponent<ScriptCardProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
971
|
+
|
|
972
|
+
type ArtifactType = 'text' | 'image' | 'video' | 'audio' | 'html';
|
|
846
973
|
interface Artifact {
|
|
847
974
|
id: string;
|
|
848
975
|
type: ArtifactType;
|
|
@@ -870,6 +997,14 @@ interface Artifact {
|
|
|
870
997
|
* Whether this artifact is still loading (shows skeleton)
|
|
871
998
|
*/
|
|
872
999
|
isPending?: boolean;
|
|
1000
|
+
/**
|
|
1001
|
+
* Whether the artifact should span full width in the grid
|
|
1002
|
+
*/
|
|
1003
|
+
fullWidth?: boolean;
|
|
1004
|
+
/**
|
|
1005
|
+
* For html artifacts - structured script elements (used by ScriptCard)
|
|
1006
|
+
*/
|
|
1007
|
+
scriptElements?: ScriptElement[];
|
|
873
1008
|
}
|
|
874
1009
|
interface UseArtifactsReturn {
|
|
875
1010
|
/**
|
|
@@ -920,13 +1055,30 @@ interface UseArtifactsReturn {
|
|
|
920
1055
|
declare function useArtifacts(): UseArtifactsReturn;
|
|
921
1056
|
|
|
922
1057
|
interface UseResizableProps {
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
1058
|
+
/**
|
|
1059
|
+
* Initial width as percentage of viewport (0-100)
|
|
1060
|
+
*/
|
|
1061
|
+
initialWidthPercent: number;
|
|
1062
|
+
/**
|
|
1063
|
+
* Minimum width as percentage of viewport (0-100)
|
|
1064
|
+
*/
|
|
1065
|
+
minWidthPercent: number;
|
|
1066
|
+
/**
|
|
1067
|
+
* Maximum width as percentage of viewport (0-100)
|
|
1068
|
+
*/
|
|
1069
|
+
maxWidthPercent: number;
|
|
1070
|
+
/**
|
|
1071
|
+
* Direction to resize from
|
|
1072
|
+
*/
|
|
926
1073
|
direction: 'left' | 'right';
|
|
927
1074
|
}
|
|
928
|
-
|
|
929
|
-
|
|
1075
|
+
/**
|
|
1076
|
+
* Hook for resizable panels with percentage-based widths.
|
|
1077
|
+
* Returns width as a CSS percentage string (e.g., "50%").
|
|
1078
|
+
*/
|
|
1079
|
+
declare function useResizable({ initialWidthPercent, minWidthPercent, maxWidthPercent, direction, }: UseResizableProps): {
|
|
1080
|
+
width: string;
|
|
1081
|
+
widthPercent: number;
|
|
930
1082
|
isResizing: boolean;
|
|
931
1083
|
startResizing: (e: React.MouseEvent) => void;
|
|
932
1084
|
};
|
|
@@ -1172,6 +1324,16 @@ interface ChatInterfaceProps extends Omit<React$1.HTMLAttributes<HTMLDivElement>
|
|
|
1172
1324
|
* Called when the artifacts panel is opened or closed (controlled).
|
|
1173
1325
|
*/
|
|
1174
1326
|
onArtifactsPanelOpenChange?: (open: boolean) => void;
|
|
1327
|
+
/**
|
|
1328
|
+
* Tasks to display in the todos list below the artifacts panel.
|
|
1329
|
+
* Shows a list of tasks with status indicators.
|
|
1330
|
+
*/
|
|
1331
|
+
tasks?: Task[];
|
|
1332
|
+
/**
|
|
1333
|
+
* Title for the todos list
|
|
1334
|
+
* @default "Tasks"
|
|
1335
|
+
*/
|
|
1336
|
+
tasksTitle?: string;
|
|
1175
1337
|
}
|
|
1176
1338
|
/**
|
|
1177
1339
|
* ChatInterface is the main orchestrator for a full-featured chat experience.
|
|
@@ -1255,9 +1417,13 @@ interface ArtifactsPanelProps extends React$1.HTMLAttributes<HTMLDivElement> {
|
|
|
1255
1417
|
*/
|
|
1256
1418
|
isLoading?: boolean;
|
|
1257
1419
|
/**
|
|
1258
|
-
* Current width of the panel (
|
|
1420
|
+
* Current width of the panel as CSS value (e.g., "50vw", "400px").
|
|
1421
|
+
*/
|
|
1422
|
+
width?: string;
|
|
1423
|
+
/**
|
|
1424
|
+
* Width as percentage of viewport (0-100) for column calculations.
|
|
1259
1425
|
*/
|
|
1260
|
-
|
|
1426
|
+
widthPercent?: number;
|
|
1261
1427
|
/**
|
|
1262
1428
|
* Callback to start resizing
|
|
1263
1429
|
*/
|
|
@@ -1268,6 +1434,9 @@ interface ArtifactsPanelProps extends React$1.HTMLAttributes<HTMLDivElement> {
|
|
|
1268
1434
|
*
|
|
1269
1435
|
* When collapsed, shows a thin strip with layers icon at top.
|
|
1270
1436
|
* When expanded, shows chevron at top-right to collapse.
|
|
1437
|
+
* Click on artifacts to expand them to full screen modal.
|
|
1438
|
+
*
|
|
1439
|
+
* Supports fullWidth artifacts that span all columns in the grid.
|
|
1271
1440
|
*/
|
|
1272
1441
|
declare const ArtifactsPanel: React$1.ForwardRefExoticComponent<ArtifactsPanelProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
1273
1442
|
/**
|
|
@@ -1415,6 +1584,21 @@ interface VideoCardProps extends Omit<CardProps, 'title'> {
|
|
|
1415
1584
|
}
|
|
1416
1585
|
declare const VideoCard: React$1.ForwardRefExoticComponent<VideoCardProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
1417
1586
|
|
|
1587
|
+
interface AudioCardProps extends Omit<CardProps, 'title'> {
|
|
1588
|
+
src: string;
|
|
1589
|
+
title?: React$1.ReactNode;
|
|
1590
|
+
subtitle?: React$1.ReactNode;
|
|
1591
|
+
playing?: boolean;
|
|
1592
|
+
controls?: boolean;
|
|
1593
|
+
volume?: number;
|
|
1594
|
+
muted?: boolean;
|
|
1595
|
+
loop?: boolean;
|
|
1596
|
+
mediaClassName?: string;
|
|
1597
|
+
contentClassName?: string;
|
|
1598
|
+
playerProps?: any;
|
|
1599
|
+
}
|
|
1600
|
+
declare const AudioCard: React$1.ForwardRefExoticComponent<AudioCardProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
1601
|
+
|
|
1418
1602
|
type SectionHeadingLevel = 'h2' | 'h3';
|
|
1419
1603
|
interface SectionHeadingProps extends React$1.HTMLAttributes<HTMLHeadingElement> {
|
|
1420
1604
|
level?: SectionHeadingLevel;
|
|
@@ -1433,4 +1617,4 @@ declare const SectionHeading: React$1.ForwardRefExoticComponent<SectionHeadingPr
|
|
|
1433
1617
|
|
|
1434
1618
|
declare const version = "2.0.0";
|
|
1435
1619
|
|
|
1436
|
-
export { Accordion, AccordionContent, type AccordionContentProps, AccordionItem, type AccordionItemProps, type AccordionProps, AccordionTrigger, type AccordionTriggerProps, Alert, AlertDialog, type AlertDialogProps, type AlertProps, type AlertVariant, type Artifact, type ArtifactType, ArtifactsPanel, type ArtifactsPanelProps, ArtifactsPanelToggle, type ArtifactsPanelToggleProps, type AspectRatio, type AspectRatioPreset, type Attachment, type AttachmentItem, AttachmentPreview, type AttachmentPreviewProps, type AttachmentStatus, Avatar, type AvatarProps, type AvatarSize, Badge, type BadgeProps, type BadgeVariant, BranchNavigator, type BranchNavigatorProps, BrandIcon, type BrandIconProps, type BrandIconSize, type BrandIconVariant, Breadcrumb, BreadcrumbItem, type BreadcrumbItemProps, BreadcrumbLink, type BreadcrumbLinkProps, type BreadcrumbProps, Button, type ButtonProps, type ButtonSize, type ButtonVariant, Card, type CardBodyProps, type CardFooterProps, type CardHeaderProps, type CardMediaProps, type CardProps, type CardVariant, ChatInput, type ChatInputPosition, type ChatInputProps, ChatInterface, type ChatInterfaceProps, type ChatMessage, ChatView, type ChatViewItem, type ChatViewProps, Checkbox, type CheckboxProps, Col, type ColOffset, type ColOrder, type ColProps, type ColSpan, CollapsedSidebarToggle, type CollapsedSidebarToggleProps, ColorSwatch, type ColorSwatchProps, ConfirmDialog, type ConfirmDialogProps, Container, type ContainerProps, type ContainerSize, type Conversation, ConversationSidebar, type ConversationSidebarProps, type ConversationTree, Divider, type DividerProps, Drawer, type DrawerPosition, type DrawerProps, FileChip, type FileChipProps, type FileChipStatus, HelperText, type HelperTextProps, ImageCard, type ImageCardProps, Input, type InputAddonProps, type InputElementProps, InputGroup, type InputGroupProps, InputLeftAddon, InputLeftElement, type InputProps, InputRightAddon, InputRightElement, InputWrapper, type InputWrapperProps, Label, type LabelProps, List, ListItem, type ListItemProps, ListItemText, type ListItemTextProps, type ListProps, ListSubheader, type ListSubheaderProps, MarkdownContent, type MarkdownContentProps, Menu, MenuContent, type MenuContentProps, MenuItem, type MenuItemProps, MenuLabel, type MenuProps, MenuSeparator, MenuTrigger, type MenuTriggerProps, Message, MessageActions, type MessageActionsConfig, type MessageActionsProps, type MessageActionsVariant, type MessageBranchInfo, type MessageNode, type MessageProps, type MessageVariant, Modal, type ModalProps, Navbar, NavbarBrand, type NavbarBrandProps, NavbarContent, type NavbarContentProps, NavbarDivider, NavbarItem, type NavbarItemProps, NavbarLink, type NavbarLinkProps, type NavbarProps, Pagination, type PaginationProps, Popover, type PopoverAlign, type PopoverPosition, type PopoverProps, Progress, type ProgressProps, PromptDialog, type PromptDialogProps, Radio, type RadioProps, Row, type RowAlign, type RowGutter, type RowJustify, type RowProps, SectionHeading, type SectionHeadingLevel, type SectionHeadingProps, Select, type SelectOption, type SelectProps, Skeleton, type SkeletonProps, Slider, type SliderProps, Spinner, type SpinnerProps, Stack, type StackDirection, type StackGap, type StackProps, type Step, type StepStatus, Stepper, type StepperProps, StreamingCursor, type StreamingCursorProps, Switch, type SwitchProps, Tab, TabList, type TabListProps, TabPanel, type TabPanelProps, type TabProps, Table, TableBody, type TableBodyProps, TableCaption, type TableCaptionProps, TableCell, type TableCellProps, TableFooter, type TableFooterProps, TableHead, type TableHeadProps, TableHeader, type TableHeaderProps, type TableProps, TableRow, type TableRowProps, Tabs, type TabsProps, Textarea, type TextareaProps, ThinkingIndicator, type ThinkingIndicatorProps, type ToastData, type ToastPosition, ToastProvider, type ToastProviderProps, type ToastVariant, Tooltip, type TooltipProps, type UseArtifactsReturn, type UseScrollAnchorOptions, type UseScrollAnchorReturn, type VideoAspectRatio, type VideoAspectRatioPreset, VideoCard, type VideoCardProps, addMessageToTree, createEmptyTree, createPreviewUrl, generateId, getActivePathMessages, getSiblingInfo, isBranchPoint, isImageFile, messagesToTree, revokePreviewUrl, switchBranch, updateNodeContent, useArtifacts, useResizable, useScrollAnchor, useToast, version };
|
|
1620
|
+
export { Accordion, AccordionContent, type AccordionContentProps, AccordionItem, type AccordionItemProps, type AccordionProps, AccordionTrigger, type AccordionTriggerProps, Alert, AlertDialog, type AlertDialogProps, type AlertProps, type AlertVariant, type Artifact, type ArtifactType, ArtifactsPanel, type ArtifactsPanelProps, ArtifactsPanelToggle, type ArtifactsPanelToggleProps, type AspectRatio, type AspectRatioPreset, type Attachment, type AttachmentItem, AttachmentPreview, type AttachmentPreviewProps, type AttachmentStatus, AudioCard, type AudioCardProps, Avatar, type AvatarProps, type AvatarSize, Badge, type BadgeProps, type BadgeVariant, BranchNavigator, type BranchNavigatorProps, BrandIcon, type BrandIconProps, type BrandIconSize, type BrandIconVariant, Breadcrumb, BreadcrumbItem, type BreadcrumbItemProps, BreadcrumbLink, type BreadcrumbLinkProps, type BreadcrumbProps, Button, type ButtonProps, type ButtonSize, type ButtonVariant, Card, type CardBodyProps, type CardFooterProps, type CardHeaderProps, type CardMediaProps, type CardProps, type CardVariant, ChatInput, type ChatInputPosition, type ChatInputProps, ChatInterface, type ChatInterfaceProps, type ChatMessage, ChatView, type ChatViewItem, type ChatViewProps, CheckSquareIcon, Checkbox, type CheckboxProps, ChevronLeftIcon, ChevronRightIcon, CloseIcon, Col, type ColOffset, type ColOrder, type ColProps, type ColSpan, CollapsedSidebarToggle, type CollapsedSidebarToggleProps, ColorSwatch, type ColorSwatchProps, ConfirmDialog, type ConfirmDialogProps, Container, type ContainerProps, type ContainerSize, type Conversation, ConversationSidebar, type ConversationSidebarProps, type ConversationTree, CrossSquareIcon, Divider, type DividerProps, Drawer, type DrawerPosition, type DrawerProps, EmptySquareIcon, ExpandIcon, FileChip, type FileChipProps, type FileChipStatus, HelperText, type HelperTextProps, HistoryIcon, type IconProps, ImageCard, type ImageCardProps, Input, type InputAddonProps, type InputElementProps, InputGroup, type InputGroupProps, InputLeftAddon, InputLeftElement, type InputProps, InputRightAddon, InputRightElement, InputWrapper, type InputWrapperProps, Label, type LabelProps, LayersIcon, List, ListItem, type ListItemProps, ListItemText, type ListItemTextProps, type ListProps, ListSubheader, type ListSubheaderProps, MarkdownContent, type MarkdownContentProps, Menu, MenuContent, type MenuContentProps, MenuItem, type MenuItemProps, MenuLabel, type MenuProps, MenuSeparator, MenuTrigger, type MenuTriggerProps, Message, MessageActions, type MessageActionsConfig, type MessageActionsProps, type MessageActionsVariant, type MessageBranchInfo, type MessageNode, type MessageProps, type MessageVariant, Modal, type ModalProps, Navbar, NavbarBrand, type NavbarBrandProps, NavbarContent, type NavbarContentProps, NavbarDivider, NavbarItem, type NavbarItemProps, NavbarLink, type NavbarLinkProps, type NavbarProps, Pagination, type PaginationProps, PlusIcon, Popover, type PopoverAlign, type PopoverPosition, type PopoverProps, Progress, type ProgressProps, PromptDialog, type PromptDialogProps, Radio, type RadioProps, Row, type RowAlign, type RowGutter, type RowJustify, type RowProps, ScriptCard, type ScriptCardProps, type ScriptElement, type ScriptElementType, SectionHeading, type SectionHeadingLevel, type SectionHeadingProps, Select, type SelectOption, type SelectProps, Skeleton, type SkeletonProps, Slider, type SliderProps, Spinner, type SpinnerProps, SquareLoaderIcon, Stack, type StackDirection, type StackGap, type StackProps, type Step, type StepStatus, Stepper, type StepperProps, StreamingCursor, type StreamingCursorProps, Switch, type SwitchProps, Tab, TabList, type TabListProps, TabPanel, type TabPanelProps, type TabProps, Table, TableBody, type TableBodyProps, TableCaption, type TableCaptionProps, TableCell, type TableCellProps, TableFooter, type TableFooterProps, TableHead, type TableHeadProps, TableHeader, type TableHeaderProps, type TableProps, TableRow, type TableRowProps, Tabs, type TabsProps, type Task, type TaskStatus, Textarea, type TextareaProps, ThinkingIndicator, type ThinkingIndicatorProps, type ToastData, type ToastPosition, ToastProvider, type ToastProviderProps, type ToastVariant, TodosList, type TodosListProps, Tooltip, type TooltipProps, type UseArtifactsReturn, type UseScrollAnchorOptions, type UseScrollAnchorReturn, type VideoAspectRatio, type VideoAspectRatioPreset, VideoCard, type VideoCardProps, addMessageToTree, createEmptyTree, createPreviewUrl, generateId, getActivePathMessages, getSiblingInfo, isBranchPoint, isImageFile, messagesToTree, revokePreviewUrl, switchBranch, updateNodeContent, useArtifacts, useResizable, useScrollAnchor, useToast, version };
|