@plucky-ai/chat-sdk 0.0.1-alpha.9 → 0.2.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/dist/index.cjs +445 -59
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +71 -46
- package/dist/index.d.ts +71 -46
- package/dist/index.js +419 -59
- package/dist/index.js.map +1 -1
- package/dist/package.json +2 -2
- package/package.json +17 -6
package/dist/index.d.cts
CHANGED
|
@@ -1,55 +1,80 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
declare const ToolResultContentBlockSchema: z.ZodObject<{
|
|
4
|
-
type: z.ZodLiteral<"tool_result">;
|
|
5
|
-
toolUseId: z.ZodString;
|
|
6
|
-
content: z.ZodString;
|
|
7
|
-
}, z.core.$strip>;
|
|
8
|
-
|
|
9
|
-
type ToolResultContentBlock = z$1.infer<typeof ToolResultContentBlockSchema>;
|
|
1
|
+
import { ToolResultContentBlock } from "@plucky-ai/llm";
|
|
2
|
+
import { ZodObject, z } from "zod";
|
|
10
3
|
|
|
4
|
+
//#region src/types.d.ts
|
|
11
5
|
type Mode = 'push' | 'overlay';
|
|
12
|
-
interface
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
6
|
+
interface SimpleToolConfig {
|
|
7
|
+
name: string;
|
|
8
|
+
description: string;
|
|
9
|
+
defaultLoadingText?: string | null;
|
|
10
|
+
defaultSuccessText?: string | null;
|
|
11
|
+
inputSchema?: ZodObject | Record<string, unknown>;
|
|
12
|
+
}
|
|
13
|
+
type InferToolInput<T$1 extends ZodObject<any> | Record<string, unknown> | undefined> = T$1 extends ZodObject<any> ? z.infer<T$1> : Record<string, unknown>;
|
|
14
|
+
interface ToolConfig<TInputSchema extends ZodObject<any> | Record<string, unknown> | undefined = undefined> extends Omit<SimpleToolConfig, 'inputSchema'> {
|
|
15
|
+
inputSchema?: TInputSchema;
|
|
16
|
+
cb?: (input: InferToolInput<TInputSchema>) => Promise<string> | string;
|
|
17
17
|
}
|
|
18
18
|
interface InitOptions {
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
19
|
+
appId: string;
|
|
20
|
+
baseUrl?: string;
|
|
21
|
+
mode?: Mode;
|
|
22
|
+
containerId?: string;
|
|
23
|
+
user?: {
|
|
24
|
+
id?: string;
|
|
25
|
+
email?: string;
|
|
26
|
+
name?: string;
|
|
27
|
+
externalId?: string;
|
|
28
|
+
metadata?: Record<string, any>;
|
|
29
|
+
};
|
|
30
|
+
tags?: Array<string>;
|
|
31
|
+
tools?: Array<ToolConfig<any>>;
|
|
32
|
+
width?: number;
|
|
33
|
+
fullscreen?: boolean;
|
|
34
|
+
}
|
|
35
|
+
interface PluckyAPIOptions extends InitOptions {
|
|
36
|
+
tools: Array<ToolConfig<any>>;
|
|
37
|
+
tags: Array<string>;
|
|
38
|
+
fullscreen?: boolean;
|
|
39
|
+
}
|
|
40
|
+
interface MountOptions {
|
|
41
|
+
appId: string;
|
|
42
|
+
baseUrl: string;
|
|
43
|
+
iframeTitle?: string;
|
|
44
|
+
widthPx?: number;
|
|
45
|
+
heightPx?: number;
|
|
46
|
+
zIndex?: number;
|
|
47
|
+
idPrefix?: string;
|
|
48
|
+
nonce?: string;
|
|
49
|
+
dir?: 'ltr' | 'rtl';
|
|
32
50
|
}
|
|
33
51
|
interface PluckyAPI {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
52
|
+
init: (opts: InitOptions) => PluckyAPI;
|
|
53
|
+
setMode: (mode: Mode) => void;
|
|
54
|
+
switchMode: (mode: 'push' | 'overlay') => void;
|
|
55
|
+
open: () => void;
|
|
56
|
+
close: () => void;
|
|
57
|
+
toggle: () => void;
|
|
58
|
+
on: <T = any>(event: MessageType, cb: (payload: T) => void) => () => void;
|
|
59
|
+
isReady: () => boolean;
|
|
60
|
+
setInput: (input: string) => void;
|
|
61
|
+
sendMessage: (args: {
|
|
62
|
+
content: string | Array<ToolResultContentBlock>;
|
|
63
|
+
lastMessageId?: string;
|
|
64
|
+
createChat?: boolean;
|
|
65
|
+
}) => void;
|
|
66
|
+
isOpen: () => boolean;
|
|
67
|
+
registerTool: (tool: ToolConfig<any>) => void;
|
|
68
|
+
registerManyTools: (tools: Array<ToolConfig<any>>) => void;
|
|
69
|
+
removeTool: (name: string) => void;
|
|
70
|
+
setWidth: (px: number) => void;
|
|
71
|
+
setFullscreen: (fullscreen: boolean) => void;
|
|
50
72
|
}
|
|
51
|
-
|
|
73
|
+
type MessageType = 'PLUCKY_LOAD_CONFIG' | 'PLUCKY_TOOL_CONFIG_UPDATED' | 'PLUCKY_SESSION_LOADED' | 'PLUCKY_CLOSE' | 'PLUCKY_SET_WIDTH' | 'PLUCKY_SWITCH_MODE' | 'PLUCKY_TOOL_CALL' | 'PLUCKY_WIDGET_MOUNTED' | 'PLUCKY_RESPONSE_RECEIVED' | 'PLUCKY_SEND_MESSAGE' | 'PLUCKY_SESSION_REQUEST' | 'PLUCKY_SESSION_UPDATED' | 'PLUCKY_SET_INPUT' | 'PLUCKY_SET_FULLSCREEN';
|
|
74
|
+
//#endregion
|
|
75
|
+
//#region src/index.d.ts
|
|
52
76
|
declare function init(opts: InitOptions): PluckyAPI;
|
|
53
77
|
declare function getAPI(): PluckyAPI;
|
|
54
|
-
|
|
55
|
-
export {
|
|
78
|
+
//#endregion
|
|
79
|
+
export { InitOptions, MessageType, Mode, MountOptions, PluckyAPI, PluckyAPIOptions, SimpleToolConfig, ToolConfig, getAPI, init };
|
|
80
|
+
//# sourceMappingURL=index.d.cts.map
|
package/dist/index.d.ts
CHANGED
|
@@ -1,55 +1,80 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
declare const ToolResultContentBlockSchema: z.ZodObject<{
|
|
4
|
-
type: z.ZodLiteral<"tool_result">;
|
|
5
|
-
toolUseId: z.ZodString;
|
|
6
|
-
content: z.ZodString;
|
|
7
|
-
}, z.core.$strip>;
|
|
8
|
-
|
|
9
|
-
type ToolResultContentBlock = z$1.infer<typeof ToolResultContentBlockSchema>;
|
|
1
|
+
import { ZodObject, z } from "zod";
|
|
2
|
+
import { ToolResultContentBlock } from "@plucky-ai/llm";
|
|
10
3
|
|
|
4
|
+
//#region src/types.d.ts
|
|
11
5
|
type Mode = 'push' | 'overlay';
|
|
12
|
-
interface
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
6
|
+
interface SimpleToolConfig {
|
|
7
|
+
name: string;
|
|
8
|
+
description: string;
|
|
9
|
+
defaultLoadingText?: string | null;
|
|
10
|
+
defaultSuccessText?: string | null;
|
|
11
|
+
inputSchema?: ZodObject | Record<string, unknown>;
|
|
12
|
+
}
|
|
13
|
+
type InferToolInput<T$1 extends ZodObject<any> | Record<string, unknown> | undefined> = T$1 extends ZodObject<any> ? z.infer<T$1> : Record<string, unknown>;
|
|
14
|
+
interface ToolConfig<TInputSchema extends ZodObject<any> | Record<string, unknown> | undefined = undefined> extends Omit<SimpleToolConfig, 'inputSchema'> {
|
|
15
|
+
inputSchema?: TInputSchema;
|
|
16
|
+
cb?: (input: InferToolInput<TInputSchema>) => Promise<string> | string;
|
|
17
17
|
}
|
|
18
18
|
interface InitOptions {
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
19
|
+
appId: string;
|
|
20
|
+
baseUrl?: string;
|
|
21
|
+
mode?: Mode;
|
|
22
|
+
containerId?: string;
|
|
23
|
+
user?: {
|
|
24
|
+
id?: string;
|
|
25
|
+
email?: string;
|
|
26
|
+
name?: string;
|
|
27
|
+
externalId?: string;
|
|
28
|
+
metadata?: Record<string, any>;
|
|
29
|
+
};
|
|
30
|
+
tags?: Array<string>;
|
|
31
|
+
tools?: Array<ToolConfig<any>>;
|
|
32
|
+
width?: number;
|
|
33
|
+
fullscreen?: boolean;
|
|
34
|
+
}
|
|
35
|
+
interface PluckyAPIOptions extends InitOptions {
|
|
36
|
+
tools: Array<ToolConfig<any>>;
|
|
37
|
+
tags: Array<string>;
|
|
38
|
+
fullscreen?: boolean;
|
|
39
|
+
}
|
|
40
|
+
interface MountOptions {
|
|
41
|
+
appId: string;
|
|
42
|
+
baseUrl: string;
|
|
43
|
+
iframeTitle?: string;
|
|
44
|
+
widthPx?: number;
|
|
45
|
+
heightPx?: number;
|
|
46
|
+
zIndex?: number;
|
|
47
|
+
idPrefix?: string;
|
|
48
|
+
nonce?: string;
|
|
49
|
+
dir?: 'ltr' | 'rtl';
|
|
32
50
|
}
|
|
33
51
|
interface PluckyAPI {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
52
|
+
init: (opts: InitOptions) => PluckyAPI;
|
|
53
|
+
setMode: (mode: Mode) => void;
|
|
54
|
+
switchMode: (mode: 'push' | 'overlay') => void;
|
|
55
|
+
open: () => void;
|
|
56
|
+
close: () => void;
|
|
57
|
+
toggle: () => void;
|
|
58
|
+
on: <T = any>(event: MessageType, cb: (payload: T) => void) => () => void;
|
|
59
|
+
isReady: () => boolean;
|
|
60
|
+
setInput: (input: string) => void;
|
|
61
|
+
sendMessage: (args: {
|
|
62
|
+
content: string | Array<ToolResultContentBlock>;
|
|
63
|
+
lastMessageId?: string;
|
|
64
|
+
createChat?: boolean;
|
|
65
|
+
}) => void;
|
|
66
|
+
isOpen: () => boolean;
|
|
67
|
+
registerTool: (tool: ToolConfig<any>) => void;
|
|
68
|
+
registerManyTools: (tools: Array<ToolConfig<any>>) => void;
|
|
69
|
+
removeTool: (name: string) => void;
|
|
70
|
+
setWidth: (px: number) => void;
|
|
71
|
+
setFullscreen: (fullscreen: boolean) => void;
|
|
50
72
|
}
|
|
51
|
-
|
|
73
|
+
type MessageType = 'PLUCKY_LOAD_CONFIG' | 'PLUCKY_TOOL_CONFIG_UPDATED' | 'PLUCKY_SESSION_LOADED' | 'PLUCKY_CLOSE' | 'PLUCKY_SET_WIDTH' | 'PLUCKY_SWITCH_MODE' | 'PLUCKY_TOOL_CALL' | 'PLUCKY_WIDGET_MOUNTED' | 'PLUCKY_RESPONSE_RECEIVED' | 'PLUCKY_SEND_MESSAGE' | 'PLUCKY_SESSION_REQUEST' | 'PLUCKY_SESSION_UPDATED' | 'PLUCKY_SET_INPUT' | 'PLUCKY_SET_FULLSCREEN';
|
|
74
|
+
//#endregion
|
|
75
|
+
//#region src/index.d.ts
|
|
52
76
|
declare function init(opts: InitOptions): PluckyAPI;
|
|
53
77
|
declare function getAPI(): PluckyAPI;
|
|
54
|
-
|
|
55
|
-
export {
|
|
78
|
+
//#endregion
|
|
79
|
+
export { InitOptions, MessageType, Mode, MountOptions, PluckyAPI, PluckyAPIOptions, SimpleToolConfig, ToolConfig, getAPI, init };
|
|
80
|
+
//# sourceMappingURL=index.d.ts.map
|