@emblemvault/hustle-react 1.0.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 +225 -0
- package/dist/browser/hustle-react.js +14705 -0
- package/dist/browser/hustle-react.js.map +1 -0
- package/dist/components/index.cjs +3170 -0
- package/dist/components/index.cjs.map +1 -0
- package/dist/components/index.d.cts +58 -0
- package/dist/components/index.d.ts +58 -0
- package/dist/components/index.js +3143 -0
- package/dist/components/index.js.map +1 -0
- package/dist/hooks/index.cjs +695 -0
- package/dist/hooks/index.cjs.map +1 -0
- package/dist/hooks/index.d.cts +46 -0
- package/dist/hooks/index.d.ts +46 -0
- package/dist/hooks/index.js +691 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/hustle-S48t4lTZ.d.cts +222 -0
- package/dist/hustle-S48t4lTZ.d.ts +222 -0
- package/dist/index.cjs +3588 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +229 -0
- package/dist/index.d.ts +229 -0
- package/dist/index.js +3547 -0
- package/dist/index.js.map +1 -0
- package/dist/plugin-BUg7vMxe.d.cts +172 -0
- package/dist/plugin-BUg7vMxe.d.ts +172 -0
- package/dist/plugins/index.cjs +1235 -0
- package/dist/plugins/index.cjs.map +1 -0
- package/dist/plugins/index.d.cts +192 -0
- package/dist/plugins/index.d.ts +192 -0
- package/dist/plugins/index.js +1225 -0
- package/dist/plugins/index.js.map +1 -0
- package/dist/providers/index.cjs +694 -0
- package/dist/providers/index.cjs.map +1 -0
- package/dist/providers/index.d.cts +46 -0
- package/dist/providers/index.d.ts +46 -0
- package/dist/providers/index.js +691 -0
- package/dist/providers/index.js.map +1 -0
- package/package.json +87 -0
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { C as ChatMessage, T as ToolCall } from '../hustle-S48t4lTZ.cjs';
|
|
3
|
+
import 'hustle-incognito';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Props for HustleChat component
|
|
7
|
+
*/
|
|
8
|
+
interface HustleChatProps {
|
|
9
|
+
/** Additional CSS classes */
|
|
10
|
+
className?: string;
|
|
11
|
+
/** Placeholder text for input */
|
|
12
|
+
placeholder?: string;
|
|
13
|
+
/** Show settings button (opens modal with model selector, prompts, etc.) */
|
|
14
|
+
showSettings?: boolean;
|
|
15
|
+
/** Show debug info */
|
|
16
|
+
showDebug?: boolean;
|
|
17
|
+
/** Initial system prompt */
|
|
18
|
+
initialSystemPrompt?: string;
|
|
19
|
+
/** Callback when message is sent */
|
|
20
|
+
onMessage?: (message: ChatMessage) => void;
|
|
21
|
+
/** Callback when tool is called */
|
|
22
|
+
onToolCall?: (toolCall: ToolCall) => void;
|
|
23
|
+
/** Callback when response is received */
|
|
24
|
+
onResponse?: (content: string) => void;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* HustleChat - Complete streaming chat interface
|
|
28
|
+
*
|
|
29
|
+
* @example Basic usage
|
|
30
|
+
* ```tsx
|
|
31
|
+
* <HustleChat />
|
|
32
|
+
* ```
|
|
33
|
+
*
|
|
34
|
+
* @example With settings modal
|
|
35
|
+
* ```tsx
|
|
36
|
+
* <HustleChat
|
|
37
|
+
* showSettings
|
|
38
|
+
* placeholder="Ask me anything..."
|
|
39
|
+
* onMessage={(msg) => console.log('Sent:', msg)}
|
|
40
|
+
* />
|
|
41
|
+
* ```
|
|
42
|
+
*/
|
|
43
|
+
declare function HustleChat({ className, placeholder, showSettings, showDebug, initialSystemPrompt, onMessage, onToolCall, onResponse, }: HustleChatProps): react_jsx_runtime.JSX.Element;
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* MarkdownContent - Renders markdown using marked + highlight.js
|
|
47
|
+
*
|
|
48
|
+
* Uses marked for markdown parsing (lightweight, reliable)
|
|
49
|
+
* Uses highlight.js for code block syntax highlighting
|
|
50
|
+
* Adds copy and "Open in Emblem AI" buttons to code blocks
|
|
51
|
+
*/
|
|
52
|
+
interface MarkdownContentProps {
|
|
53
|
+
content: string;
|
|
54
|
+
className?: string;
|
|
55
|
+
}
|
|
56
|
+
declare function MarkdownContent({ content, className }: MarkdownContentProps): react_jsx_runtime.JSX.Element;
|
|
57
|
+
|
|
58
|
+
export { HustleChat, type HustleChatProps, MarkdownContent };
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
+
import { C as ChatMessage, T as ToolCall } from '../hustle-S48t4lTZ.js';
|
|
3
|
+
import 'hustle-incognito';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Props for HustleChat component
|
|
7
|
+
*/
|
|
8
|
+
interface HustleChatProps {
|
|
9
|
+
/** Additional CSS classes */
|
|
10
|
+
className?: string;
|
|
11
|
+
/** Placeholder text for input */
|
|
12
|
+
placeholder?: string;
|
|
13
|
+
/** Show settings button (opens modal with model selector, prompts, etc.) */
|
|
14
|
+
showSettings?: boolean;
|
|
15
|
+
/** Show debug info */
|
|
16
|
+
showDebug?: boolean;
|
|
17
|
+
/** Initial system prompt */
|
|
18
|
+
initialSystemPrompt?: string;
|
|
19
|
+
/** Callback when message is sent */
|
|
20
|
+
onMessage?: (message: ChatMessage) => void;
|
|
21
|
+
/** Callback when tool is called */
|
|
22
|
+
onToolCall?: (toolCall: ToolCall) => void;
|
|
23
|
+
/** Callback when response is received */
|
|
24
|
+
onResponse?: (content: string) => void;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* HustleChat - Complete streaming chat interface
|
|
28
|
+
*
|
|
29
|
+
* @example Basic usage
|
|
30
|
+
* ```tsx
|
|
31
|
+
* <HustleChat />
|
|
32
|
+
* ```
|
|
33
|
+
*
|
|
34
|
+
* @example With settings modal
|
|
35
|
+
* ```tsx
|
|
36
|
+
* <HustleChat
|
|
37
|
+
* showSettings
|
|
38
|
+
* placeholder="Ask me anything..."
|
|
39
|
+
* onMessage={(msg) => console.log('Sent:', msg)}
|
|
40
|
+
* />
|
|
41
|
+
* ```
|
|
42
|
+
*/
|
|
43
|
+
declare function HustleChat({ className, placeholder, showSettings, showDebug, initialSystemPrompt, onMessage, onToolCall, onResponse, }: HustleChatProps): react_jsx_runtime.JSX.Element;
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* MarkdownContent - Renders markdown using marked + highlight.js
|
|
47
|
+
*
|
|
48
|
+
* Uses marked for markdown parsing (lightweight, reliable)
|
|
49
|
+
* Uses highlight.js for code block syntax highlighting
|
|
50
|
+
* Adds copy and "Open in Emblem AI" buttons to code blocks
|
|
51
|
+
*/
|
|
52
|
+
interface MarkdownContentProps {
|
|
53
|
+
content: string;
|
|
54
|
+
className?: string;
|
|
55
|
+
}
|
|
56
|
+
declare function MarkdownContent({ content, className }: MarkdownContentProps): react_jsx_runtime.JSX.Element;
|
|
57
|
+
|
|
58
|
+
export { HustleChat, type HustleChatProps, MarkdownContent };
|