@applica-software-guru/persona-chat-sdk 0.1.102
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/.eslintrc.cjs +11 -0
- package/.github/copilot-instructions.md +3 -0
- package/.nvmrc +1 -0
- package/.prettierignore +5 -0
- package/.prettierrc +8 -0
- package/CLAUDE.md +3 -0
- package/GEMINI.md +3 -0
- package/README.md +33 -0
- package/bitbucket-pipelines.yml +19 -0
- package/components.json +24 -0
- package/dist/bundle.cjs.js +28 -0
- package/dist/bundle.cjs.js.map +1 -0
- package/dist/bundle.es.js +5173 -0
- package/dist/bundle.es.js.map +1 -0
- package/dist/bundle.iife.js +28 -0
- package/dist/bundle.iife.js.map +1 -0
- package/dist/bundle.umd.js +28 -0
- package/dist/bundle.umd.js.map +1 -0
- package/dist/index.d.ts +8 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/logging.d.ts +18 -0
- package/dist/logging.d.ts.map +1 -0
- package/dist/messages.d.ts +9 -0
- package/dist/messages.d.ts.map +1 -0
- package/dist/projects.d.ts +17 -0
- package/dist/projects.d.ts.map +1 -0
- package/dist/protocol/base.d.ts +25 -0
- package/dist/protocol/base.d.ts.map +1 -0
- package/dist/protocol/index.d.ts +6 -0
- package/dist/protocol/index.d.ts.map +1 -0
- package/dist/protocol/rest.d.ts +25 -0
- package/dist/protocol/rest.d.ts.map +1 -0
- package/dist/protocol/transaction.d.ts +56 -0
- package/dist/protocol/transaction.d.ts.map +1 -0
- package/dist/protocol/webrtc.d.ts +60 -0
- package/dist/protocol/webrtc.d.ts.map +1 -0
- package/dist/protocol/websocket.d.ts +22 -0
- package/dist/protocol/websocket.d.ts.map +1 -0
- package/dist/runtime/context.d.ts +34 -0
- package/dist/runtime/context.d.ts.map +1 -0
- package/dist/runtime/file-attachment-adapter.d.ts +15 -0
- package/dist/runtime/file-attachment-adapter.d.ts.map +1 -0
- package/dist/runtime/handlers.d.ts +21 -0
- package/dist/runtime/handlers.d.ts.map +1 -0
- package/dist/runtime/listeners.d.ts +6 -0
- package/dist/runtime/listeners.d.ts.map +1 -0
- package/dist/runtime/protocols.d.ts +17 -0
- package/dist/runtime/protocols.d.ts.map +1 -0
- package/dist/runtime/threads.d.ts +34 -0
- package/dist/runtime/threads.d.ts.map +1 -0
- package/dist/runtime/utils.d.ts +10 -0
- package/dist/runtime/utils.d.ts.map +1 -0
- package/dist/runtime.d.ts +6 -0
- package/dist/runtime.d.ts.map +1 -0
- package/dist/storage/base.d.ts +9 -0
- package/dist/storage/base.d.ts.map +1 -0
- package/dist/storage/index.d.ts +3 -0
- package/dist/storage/index.d.ts.map +1 -0
- package/dist/storage/persona.d.ts +29 -0
- package/dist/storage/persona.d.ts.map +1 -0
- package/dist/tools.d.ts +72 -0
- package/dist/tools.d.ts.map +1 -0
- package/dist/types.d.ts +237 -0
- package/dist/types.d.ts.map +1 -0
- package/docs/README.md +13 -0
- package/docs/api-reference.md +16 -0
- package/docs/contributing.md +21 -0
- package/docs/customization.md +74 -0
- package/docs/features.md +7 -0
- package/docs/installation.md +9 -0
- package/docs/messages.md +214 -0
- package/docs/protocols.md +39 -0
- package/docs/transactions.md +121 -0
- package/docs/usage.md +40 -0
- package/jsconfig.node.json +10 -0
- package/package.json +82 -0
- package/playground/index.html +14 -0
- package/playground/src/app.tsx +10 -0
- package/playground/src/chat.tsx +117 -0
- package/playground/src/components/assistant-ui/assistant-modal.tsx +57 -0
- package/playground/src/components/assistant-ui/attachment.tsx +197 -0
- package/playground/src/components/assistant-ui/markdown-text.tsx +228 -0
- package/playground/src/components/assistant-ui/thread-list.tsx +91 -0
- package/playground/src/components/assistant-ui/thread.tsx +302 -0
- package/playground/src/components/assistant-ui/threadlist-sidebar.tsx +59 -0
- package/playground/src/components/assistant-ui/tool-fallback.tsx +93 -0
- package/playground/src/components/assistant-ui/tooltip-icon-button.tsx +42 -0
- package/playground/src/components/chat/logging.tsx +53 -0
- package/playground/src/components/ui/avatar.tsx +51 -0
- package/playground/src/components/ui/button.tsx +60 -0
- package/playground/src/components/ui/dialog.tsx +141 -0
- package/playground/src/components/ui/input.tsx +21 -0
- package/playground/src/components/ui/separator.tsx +26 -0
- package/playground/src/components/ui/sheet.tsx +139 -0
- package/playground/src/components/ui/sidebar.tsx +619 -0
- package/playground/src/components/ui/skeleton.tsx +13 -0
- package/playground/src/components/ui/tooltip.tsx +59 -0
- package/playground/src/hooks/theme.ts +70 -0
- package/playground/src/hooks/use-mobile.ts +19 -0
- package/playground/src/lib/utils.ts +6 -0
- package/playground/src/main.tsx +10 -0
- package/playground/src/styles.css +120 -0
- package/playground/src/tools.ts +149 -0
- package/playground/src/vite-env.d.ts +1 -0
- package/preview-build.sh +23 -0
- package/src/index.ts +7 -0
- package/src/logging.ts +34 -0
- package/src/messages.ts +202 -0
- package/src/projects.ts +57 -0
- package/src/protocol/base.ts +73 -0
- package/src/protocol/index.ts +5 -0
- package/src/protocol/rest.ts +107 -0
- package/src/protocol/transaction.ts +182 -0
- package/src/protocol/webrtc.ts +379 -0
- package/src/protocol/websocket.ts +111 -0
- package/src/runtime/context.ts +88 -0
- package/src/runtime/file-attachment-adapter.ts +48 -0
- package/src/runtime/handlers.ts +322 -0
- package/src/runtime/index.ts +6 -0
- package/src/runtime/listeners.ts +79 -0
- package/src/runtime/protocols.ts +169 -0
- package/src/runtime/threads.ts +105 -0
- package/src/runtime/utils.ts +46 -0
- package/src/runtime.tsx +334 -0
- package/src/storage/base.ts +13 -0
- package/src/storage/index.ts +2 -0
- package/src/storage/persona.ts +138 -0
- package/src/tools.ts +211 -0
- package/src/types.ts +284 -0
- package/tsconfig.json +36 -0
- package/tsconfig.node.json +15 -0
- package/vite.config.ts +74 -0
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
interface PersonaLogger {
|
|
2
|
+
log: (message: string, ...args: unknown[]) => void;
|
|
3
|
+
info: (message: string, ...args: unknown[]) => void;
|
|
4
|
+
warn: (message: string, ...args: unknown[]) => void;
|
|
5
|
+
error: (message: string, ...args: unknown[]) => void;
|
|
6
|
+
debug: (message: string, ...args: unknown[]) => void;
|
|
7
|
+
}
|
|
8
|
+
declare class PersonaConsoleLogger implements PersonaLogger {
|
|
9
|
+
prefix: string;
|
|
10
|
+
log(message: string, ...args: unknown[]): void;
|
|
11
|
+
info(message: string, ...args: unknown[]): void;
|
|
12
|
+
warn(message: string, ...args: unknown[]): void;
|
|
13
|
+
error(message: string, ...args: unknown[]): void;
|
|
14
|
+
debug(message: string, ...args: unknown[]): void;
|
|
15
|
+
}
|
|
16
|
+
export { PersonaConsoleLogger };
|
|
17
|
+
export type { PersonaLogger };
|
|
18
|
+
//# sourceMappingURL=logging.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logging.d.ts","sourceRoot":"","sources":["../../src/logging.ts"],"names":[],"mappings":"AAAA,UAAU,aAAa;IACrB,GAAG,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IACnD,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IACpD,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IACpD,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IACrD,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;CACtD;AAED,cAAM,oBAAqB,YAAW,aAAa;IACjD,MAAM,SAAe;IAErB,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE;IAIvC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE;IAIxC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE;IAIxC,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE;IAIzC,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE;CAG1C;AAED,OAAO,EAAE,oBAAoB,EAAE,CAAC;AAChC,YAAY,EAAE,aAAa,EAAE,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { PersonaMessage } from './types';
|
|
2
|
+
import { ThreadMessageLike } from '@assistant-ui/react';
|
|
3
|
+
export declare function generateMessageId(): string;
|
|
4
|
+
export declare function ensureMessageId(message: PersonaMessage): PersonaMessage;
|
|
5
|
+
declare function removeEmptyMessages(messages: PersonaMessage[]): PersonaMessage[];
|
|
6
|
+
declare function parseMessages(messages: PersonaMessage[]): PersonaMessage[];
|
|
7
|
+
declare function convertMessage(message: PersonaMessage): ThreadMessageLike;
|
|
8
|
+
export { parseMessages, convertMessage, removeEmptyMessages };
|
|
9
|
+
//# sourceMappingURL=messages.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/messages.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAmB,iBAAiB,EAAiB,MAAM,qBAAqB,CAAC;AAIxF,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,cAAc,GAAG,cAAc,CAiBvE;AAED,iBAAS,mBAAmB,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,cAAc,EAAE,CASzE;AACD,iBAAS,aAAa,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,cAAc,EAAE,CAyEnE;AAED,iBAAS,cAAc,CAAC,OAAO,EAAE,cAAc,GAAG,iBAAiB,CAsFlE;AAED,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,mBAAmB,EAAE,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { PersonaProjectSubscription } from './types';
|
|
2
|
+
type ProjectsApiConfig = {
|
|
3
|
+
baseUrl: string;
|
|
4
|
+
apiKey: string;
|
|
5
|
+
};
|
|
6
|
+
declare class ProjectsApi {
|
|
7
|
+
private readonly baseUrl;
|
|
8
|
+
private readonly apiKey;
|
|
9
|
+
constructor(config: ProjectsApiConfig);
|
|
10
|
+
private request;
|
|
11
|
+
getSubscription(projectId: string): Promise<PersonaProjectSubscription>;
|
|
12
|
+
changeSubscriptionPlan(projectId: string, toPlanType: PersonaProjectSubscription['planType']): Promise<PersonaProjectSubscription>;
|
|
13
|
+
addSubscriptionCredits(projectId: string, credits: number): Promise<PersonaProjectSubscription>;
|
|
14
|
+
}
|
|
15
|
+
export { ProjectsApi };
|
|
16
|
+
export type { ProjectsApiConfig };
|
|
17
|
+
//# sourceMappingURL=projects.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"projects.d.ts","sourceRoot":"","sources":["../../src/projects.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAC;AAE1D,KAAK,iBAAiB,GAAG;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,cAAM,WAAW;IACf,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;gBAEpB,MAAM,EAAE,iBAAiB;YAKvB,OAAO;IAiBf,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,0BAA0B,CAAC;IAIvE,sBAAsB,CAC1B,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,0BAA0B,CAAC,UAAU,CAAC,GACjD,OAAO,CAAC,0BAA0B,CAAC;IAOhC,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,0BAA0B,CAAC;CAMtG;AAED,OAAO,EAAE,WAAW,EAAE,CAAC;AACvB,YAAY,EAAE,iBAAiB,EAAE,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { MessageListenerCallback, PersonaAgentContext, PersonaPacket, PersonaProtocol, PersonaTransaction, ProtocolStatus, Session, StatusChangeCallback } from '../types';
|
|
2
|
+
declare abstract class PersonaProtocolBase implements PersonaProtocol {
|
|
3
|
+
abstract status: ProtocolStatus;
|
|
4
|
+
abstract session: Session;
|
|
5
|
+
abstract autostart: boolean;
|
|
6
|
+
private statusChangeCallbacks;
|
|
7
|
+
private messageCallbacks;
|
|
8
|
+
addStatusChangeListener(callback: StatusChangeCallback): void;
|
|
9
|
+
addPacketListener(callback: MessageListenerCallback): void;
|
|
10
|
+
syncSession(session: Session): Promise<void>;
|
|
11
|
+
notifyPacket(message: PersonaPacket): Promise<void>;
|
|
12
|
+
notifyPackets(messages: PersonaPacket[]): Promise<void>;
|
|
13
|
+
setSession(session: Session): Promise<void>;
|
|
14
|
+
setStatus(status: ProtocolStatus): Promise<void>;
|
|
15
|
+
clearListeners(): void;
|
|
16
|
+
setAgentContext(context: PersonaAgentContext): Promise<void>;
|
|
17
|
+
abstract getName(): string;
|
|
18
|
+
abstract getPriority(): number;
|
|
19
|
+
abstract connect(session?: Session): Promise<Session>;
|
|
20
|
+
abstract disconnect(): Promise<void>;
|
|
21
|
+
abstract sendPacket(packet: PersonaPacket): Promise<void>;
|
|
22
|
+
onTransaction(_: PersonaTransaction): void;
|
|
23
|
+
}
|
|
24
|
+
export { PersonaProtocolBase };
|
|
25
|
+
//# sourceMappingURL=base.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/protocol/base.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,mBAAmB,EACnB,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,cAAc,EACd,OAAO,EACP,oBAAoB,EACrB,MAAM,UAAU,CAAC;AAElB,uBAAe,mBAAoB,YAAW,eAAe;IAC3D,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAChC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAE5B,OAAO,CAAC,qBAAqB,CAA8B;IAC3D,OAAO,CAAC,gBAAgB,CAAiC;IAElD,uBAAuB,CAAC,QAAQ,EAAE,oBAAoB;IAItD,iBAAiB,CAAC,QAAQ,EAAE,uBAAuB;IAG7C,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5C,YAAY,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAGnD,aAAa,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAMvD,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAG3C,SAAS,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAStD,cAAc,IAAI,IAAI;IAKtB,eAAe,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAOnE,QAAQ,CAAC,OAAO,IAAI,MAAM;IAC1B,QAAQ,CAAC,WAAW,IAAI,MAAM;IAC9B,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IACrD,QAAQ,CAAC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IACpC,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAElD,aAAa,CAAC,CAAC,EAAE,kBAAkB;CAC3C;AAED,OAAO,EAAE,mBAAmB,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/protocol/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { PersonaProtocolBase } from './base';
|
|
2
|
+
import { Session, ProtocolStatus, PersonaProtocolBaseConfig, PersonaPacket } from '../types';
|
|
3
|
+
import { ToolInstance } from '../tools';
|
|
4
|
+
type PersonaRESTProtocolConfig = PersonaProtocolBaseConfig & {
|
|
5
|
+
apiUrl: string;
|
|
6
|
+
};
|
|
7
|
+
declare class PersonaRESTProtocol extends PersonaProtocolBase {
|
|
8
|
+
status: ProtocolStatus;
|
|
9
|
+
autostart: boolean;
|
|
10
|
+
session: Session;
|
|
11
|
+
config: PersonaRESTProtocolConfig;
|
|
12
|
+
notify: boolean;
|
|
13
|
+
context: Record<string, any>;
|
|
14
|
+
tools: ToolInstance[];
|
|
15
|
+
constructor(config: PersonaRESTProtocolConfig);
|
|
16
|
+
getName(): string;
|
|
17
|
+
getPriority(): number;
|
|
18
|
+
connect(session: Session): Promise<Session>;
|
|
19
|
+
disconnect(): Promise<void>;
|
|
20
|
+
syncSession(session: Session): Promise<void>;
|
|
21
|
+
sendPacket(packet: PersonaPacket): Promise<void>;
|
|
22
|
+
}
|
|
23
|
+
export { PersonaRESTProtocol };
|
|
24
|
+
export type { PersonaRESTProtocolConfig };
|
|
25
|
+
//# sourceMappingURL=rest.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rest.d.ts","sourceRoot":"","sources":["../../../src/protocol/rest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAC7C,OAAO,EAEL,OAAO,EACP,cAAc,EACd,yBAAyB,EAEzB,aAAa,EAEd,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,KAAK,yBAAyB,GAAG,yBAAyB,GAAG;IAC3D,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,cAAM,mBAAoB,SAAQ,mBAAmB;IACnD,MAAM,EAAE,cAAc,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,yBAAyB,CAAC;IAClC,MAAM,EAAE,OAAO,CAAQ;IACvB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAM;IAClC,KAAK,EAAE,YAAY,EAAE,CAAM;gBAEf,MAAM,EAAE,yBAAyB;IAOtC,OAAO,IAAI,MAAM;IAIjB,WAAW,IAAI,MAAM;IAIf,OAAO,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAK3C,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAK3B,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5C,UAAU,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;CAiD9D;AAED,OAAO,EAAE,mBAAmB,EAAE,CAAC;AAC/B,YAAY,EAAE,yBAAyB,EAAE,CAAC"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { PersonaProtocolBase } from './base';
|
|
2
|
+
import { Session, ProtocolStatus, PersonaProtocolBaseConfig, PersonaTransaction, FunctionCall, PersonaPacket } from '../types';
|
|
3
|
+
import { ToolInstance } from '../tools';
|
|
4
|
+
type FinishTransactionRequest = {
|
|
5
|
+
success: boolean;
|
|
6
|
+
output: any;
|
|
7
|
+
error: string | null;
|
|
8
|
+
};
|
|
9
|
+
declare class PersonaTransactionsManager {
|
|
10
|
+
private config;
|
|
11
|
+
constructor(config: PersonaTransactionProtocolConfig);
|
|
12
|
+
complete(transaction: PersonaTransaction, request: FinishTransactionRequest): Promise<void>;
|
|
13
|
+
fail(transaction: PersonaTransaction, request: FinishTransactionRequest): Promise<void>;
|
|
14
|
+
persist(transaction: PersonaTransaction, request: FinishTransactionRequest): Promise<void>;
|
|
15
|
+
}
|
|
16
|
+
export type PersonaToolCallback = (...args: any[]) => void | Record<string, any> | Promise<void | Record<string, any>>;
|
|
17
|
+
export type PersonaTools = {
|
|
18
|
+
[key: string]: PersonaToolCallback;
|
|
19
|
+
};
|
|
20
|
+
declare class PersonaPersistableTransaction {
|
|
21
|
+
private transaction;
|
|
22
|
+
private manager;
|
|
23
|
+
constructor(transaction: PersonaTransaction, manager: PersonaTransactionsManager);
|
|
24
|
+
getFunctionCall(): FunctionCall | null;
|
|
25
|
+
invoke(tools: PersonaTools, toolInstance?: ToolInstance): Promise<void>;
|
|
26
|
+
complete(output: any): Promise<void>;
|
|
27
|
+
fail(error: string): Promise<void>;
|
|
28
|
+
}
|
|
29
|
+
type PersonaTransactionCallback = (transaction: PersonaPersistableTransaction) => void;
|
|
30
|
+
type PersonaTransactionProtocolConfig = PersonaProtocolBaseConfig & {
|
|
31
|
+
apiUrl: string;
|
|
32
|
+
tools: PersonaTools | ToolInstance[];
|
|
33
|
+
onTransaction?: PersonaTransactionCallback;
|
|
34
|
+
};
|
|
35
|
+
declare class PersonaTransactionProtocol extends PersonaProtocolBase {
|
|
36
|
+
status: ProtocolStatus;
|
|
37
|
+
autostart: boolean;
|
|
38
|
+
session: Session;
|
|
39
|
+
config: PersonaTransactionProtocolConfig;
|
|
40
|
+
notify: boolean;
|
|
41
|
+
private _tools;
|
|
42
|
+
private _toolSchema;
|
|
43
|
+
constructor(config: PersonaTransactionProtocolConfig);
|
|
44
|
+
getName(): string;
|
|
45
|
+
getPriority(): number;
|
|
46
|
+
getToolInstance(name: string): ToolInstance | undefined;
|
|
47
|
+
connect(session: Session): Promise<Session>;
|
|
48
|
+
disconnect(): Promise<void>;
|
|
49
|
+
syncSession(session: Session): Promise<void>;
|
|
50
|
+
sendPacket(_: PersonaPacket): Promise<void>;
|
|
51
|
+
onTransaction(transaction: PersonaTransaction): void;
|
|
52
|
+
getTools(): PersonaTools;
|
|
53
|
+
}
|
|
54
|
+
export { PersonaTransactionProtocol };
|
|
55
|
+
export type { PersonaTransactionProtocolConfig, FinishTransactionRequest, PersonaPersistableTransaction, PersonaTransactionCallback };
|
|
56
|
+
//# sourceMappingURL=transaction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../src/protocol/transaction.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { PersonaProtocolBase } from './base';
|
|
2
|
+
import { PersonaPacket, PersonaProtocolBaseConfig, ProtocolStatus, Session } from '../types';
|
|
3
|
+
type AudioAnalysisData = {
|
|
4
|
+
localAmplitude: number;
|
|
5
|
+
remoteAmplitude: number;
|
|
6
|
+
};
|
|
7
|
+
type AudioVisualizerCallback = (data: AudioAnalysisData) => void;
|
|
8
|
+
type PersonaWebRTCMessageCallback = (data: MessageEvent) => void;
|
|
9
|
+
type PersonaWebRTCErrorCallback = (error: string) => void;
|
|
10
|
+
type PersonaWebRTCConfig = PersonaProtocolBaseConfig & {
|
|
11
|
+
webrtcUrl: string;
|
|
12
|
+
iceServers?: RTCIceServer[];
|
|
13
|
+
};
|
|
14
|
+
declare class PersonaWebRTCClient {
|
|
15
|
+
private config;
|
|
16
|
+
private pc;
|
|
17
|
+
private ws;
|
|
18
|
+
private localStream;
|
|
19
|
+
private remoteStream;
|
|
20
|
+
private audioCtx;
|
|
21
|
+
private localAnalyser;
|
|
22
|
+
private remoteAnalyser;
|
|
23
|
+
private analyzerFrame;
|
|
24
|
+
private dataChannel;
|
|
25
|
+
private isConnected;
|
|
26
|
+
private visualizerCallbacks;
|
|
27
|
+
private messageCallbacks;
|
|
28
|
+
private errorCallbacks;
|
|
29
|
+
private queuedMessages;
|
|
30
|
+
constructor(config: PersonaWebRTCConfig);
|
|
31
|
+
connect(session: Session): Promise<Session>;
|
|
32
|
+
disconnect(): Promise<void>;
|
|
33
|
+
addVisualizerCallback(callback: AudioVisualizerCallback): void;
|
|
34
|
+
addMessageCallback(callback: PersonaWebRTCMessageCallback): void;
|
|
35
|
+
addErrorCallback(callback: PersonaWebRTCErrorCallback): void;
|
|
36
|
+
createDataChannel(label?: string): void;
|
|
37
|
+
sendPacket(packet: PersonaPacket): void;
|
|
38
|
+
private _startAnalyzers;
|
|
39
|
+
private _stopAnalyzers;
|
|
40
|
+
}
|
|
41
|
+
type PersonaWebRTCProtocolConfig = PersonaWebRTCConfig & {
|
|
42
|
+
autostart?: boolean;
|
|
43
|
+
};
|
|
44
|
+
declare class PersonaWebRTCProtocol extends PersonaProtocolBase {
|
|
45
|
+
status: ProtocolStatus;
|
|
46
|
+
session: Session;
|
|
47
|
+
autostart: boolean;
|
|
48
|
+
config: PersonaWebRTCProtocolConfig;
|
|
49
|
+
webRTCClient: PersonaWebRTCClient;
|
|
50
|
+
constructor(config: PersonaWebRTCProtocolConfig);
|
|
51
|
+
getName(): string;
|
|
52
|
+
getPriority(): number;
|
|
53
|
+
syncSession(session: Session): Promise<void>;
|
|
54
|
+
connect(session?: Session): Promise<Session>;
|
|
55
|
+
disconnect(): Promise<void>;
|
|
56
|
+
sendPacket(packet: PersonaPacket): Promise<void>;
|
|
57
|
+
}
|
|
58
|
+
export { PersonaWebRTCProtocol };
|
|
59
|
+
export type { PersonaWebRTCProtocolConfig, AudioVisualizerCallback, AudioAnalysisData };
|
|
60
|
+
//# sourceMappingURL=webrtc.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webrtc.d.ts","sourceRoot":"","sources":["../../../src/protocol/webrtc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,yBAAyB,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAE7F,KAAK,iBAAiB,GAAG;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,KAAK,uBAAuB,GAAG,CAAC,IAAI,EAAE,iBAAiB,KAAK,IAAI,CAAC;AAEjE,KAAK,4BAA4B,GAAG,CAAC,IAAI,EAAE,YAAY,KAAK,IAAI,CAAC;AAEjE,KAAK,0BAA0B,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;AAE1D,KAAK,mBAAmB,GAAG,yBAAyB,GAAG;IACrD,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,YAAY,EAAE,CAAC;CAC7B,CAAC;AAEF,cAAM,mBAAmB;IACvB,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,EAAE,CAAkC;IAC5C,OAAO,CAAC,EAAE,CAA0B;IACpC,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,YAAY,CAAkC;IACtD,OAAO,CAAC,QAAQ,CAA6B;IAE7C,OAAO,CAAC,aAAa,CAA6B;IAClD,OAAO,CAAC,cAAc,CAA6B;IACnD,OAAO,CAAC,aAAa,CAAuB;IAC5C,OAAO,CAAC,WAAW,CAA+B;IAElD,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,mBAAmB,CAAiC;IAC5D,OAAO,CAAC,gBAAgB,CAAsC;IAC9D,OAAO,CAAC,cAAc,CAAoC;IAC1D,OAAO,CAAC,cAAc,CAAuB;gBAEjC,MAAM,EAAE,mBAAmB;IAI1B,OAAO,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAgI3C,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAoBjC,qBAAqB,CAAC,QAAQ,EAAE,uBAAuB,GAAG,IAAI;IAG9D,kBAAkB,CAAC,QAAQ,EAAE,4BAA4B,GAAG,IAAI;IAIhE,gBAAgB,CAAC,QAAQ,EAAE,0BAA0B,GAAG,IAAI;IAI5D,iBAAiB,CAAC,KAAK,SAAa,GAAG,IAAI;IAoB3C,UAAU,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IAU9C,OAAO,CAAC,eAAe;IAgDvB,OAAO,CAAC,cAAc;CAQvB;AAED,KAAK,2BAA2B,GAAG,mBAAmB,GAAG;IACvD,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,cAAM,qBAAsB,SAAQ,mBAAmB;IACrD,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,2BAA2B,CAAC;IACpC,YAAY,EAAE,mBAAmB,CAAC;gBAEtB,MAAM,EAAE,2BAA2B;IAwBxC,OAAO,IAAI,MAAM;IAGjB,WAAW,IAAI,MAAM;IAIf,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ5C,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAgB5C,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAYjC,UAAU,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;CAQxD;AAED,OAAO,EAAE,qBAAqB,EAAE,CAAC;AACjC,YAAY,EAAE,2BAA2B,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { PersonaPacket, PersonaProtocolBaseConfig, ProtocolStatus, Session } from '../types';
|
|
2
|
+
import { PersonaProtocolBase } from './base';
|
|
3
|
+
type PersonaWebSocketProtocolConfig = PersonaProtocolBaseConfig & {
|
|
4
|
+
webSocketUrl: string;
|
|
5
|
+
};
|
|
6
|
+
declare class PersonaWebSocketProtocol extends PersonaProtocolBase {
|
|
7
|
+
status: ProtocolStatus;
|
|
8
|
+
autostart: boolean;
|
|
9
|
+
session: Session;
|
|
10
|
+
config: PersonaWebSocketProtocolConfig;
|
|
11
|
+
webSocket: WebSocket | null;
|
|
12
|
+
constructor(config: PersonaWebSocketProtocolConfig);
|
|
13
|
+
getName(): string;
|
|
14
|
+
getPriority(): number;
|
|
15
|
+
syncSession(session: Session): Promise<void>;
|
|
16
|
+
connect(session?: Session): Promise<Session>;
|
|
17
|
+
disconnect(): Promise<void>;
|
|
18
|
+
sendPacket(packet: PersonaPacket): Promise<void>;
|
|
19
|
+
}
|
|
20
|
+
export { PersonaWebSocketProtocol };
|
|
21
|
+
export type { PersonaWebSocketProtocolConfig };
|
|
22
|
+
//# sourceMappingURL=websocket.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"websocket.d.ts","sourceRoot":"","sources":["../../../src/protocol/websocket.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,yBAAyB,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAC7F,OAAO,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAE7C,KAAK,8BAA8B,GAAG,yBAAyB,GAAG;IAChE,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,cAAM,wBAAyB,SAAQ,mBAAmB;IACxD,MAAM,EAAE,cAAc,CAAC;IACvB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,8BAA8B,CAAC;IACvC,SAAS,EAAE,SAAS,GAAG,IAAI,CAAC;gBAEhB,MAAM,EAAE,8BAA8B;IAS3C,OAAO,IAAI,MAAM;IAIjB,WAAW,IAAI,MAAM;IAIf,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IASlD,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAiD5C,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAU3B,UAAU,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;CAQxD;AAED,OAAO,EAAE,wBAAwB,EAAE,CAAC;AACpC,YAAY,EAAE,8BAA8B,EAAE,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { PersonaProtocol, ProtocolStatus } from '../types';
|
|
2
|
+
import { PersonaMessage } from '../types';
|
|
3
|
+
import { PersonaWebRTCProtocol } from '../protocol';
|
|
4
|
+
export type PersonaRuntimeContextType = {
|
|
5
|
+
protocols: PersonaProtocol[];
|
|
6
|
+
protocolsStatus: Map<string, ProtocolStatus>;
|
|
7
|
+
getMessages: () => PersonaMessage[];
|
|
8
|
+
};
|
|
9
|
+
export declare const PersonaRuntimeContext: import("react").Context<PersonaRuntimeContextType | undefined>;
|
|
10
|
+
/**
|
|
11
|
+
* Hook to access the PersonaRuntime context
|
|
12
|
+
*/
|
|
13
|
+
export declare function usePersonaRuntime(): PersonaRuntimeContextType;
|
|
14
|
+
/**
|
|
15
|
+
* Retrieves a specific protocol instance from the PersonaRuntimeContext.
|
|
16
|
+
*
|
|
17
|
+
* @param protocol - The name of the protocol to use.
|
|
18
|
+
* @returns {PersonaProtocol | null} - The protocol instance or null if not found.
|
|
19
|
+
* @throws {Error} - If the hook is used outside of a PersonaRuntimeProvider.
|
|
20
|
+
*/
|
|
21
|
+
export declare function usePersonaRuntimeProtocol(protocol: string): PersonaProtocol | null;
|
|
22
|
+
/**
|
|
23
|
+
* Gets the endpoint URL of the first available protocol
|
|
24
|
+
*/
|
|
25
|
+
export declare function usePersonaRuntimeEndpoint(): string | null;
|
|
26
|
+
/**
|
|
27
|
+
* Gets the WebRTC protocol instance
|
|
28
|
+
*/
|
|
29
|
+
export declare function usePersonaRuntimeWebRTCProtocol(): PersonaWebRTCProtocol | null;
|
|
30
|
+
/**
|
|
31
|
+
* Gets all messages from the current conversation
|
|
32
|
+
*/
|
|
33
|
+
export declare function usePersonaRuntimeMessages(): PersonaMessage[];
|
|
34
|
+
//# sourceMappingURL=context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/runtime/context.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAGpD,MAAM,MAAM,yBAAyB,GAAG;IACtC,SAAS,EAAE,eAAe,EAAE,CAAC;IAC7B,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IAC7C,WAAW,EAAE,MAAM,cAAc,EAAE,CAAC;CACrC,CAAC;AAEF,eAAO,MAAM,qBAAqB,gEAAkE,CAAC;AAErG;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,yBAAyB,CAM7D;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAyBlF;AAED;;GAEG;AACH,wBAAgB,yBAAyB,IAAI,MAAM,GAAG,IAAI,CAOzD;AAED;;GAEG;AACH,wBAAgB,+BAA+B,IAAI,qBAAqB,GAAG,IAAI,CAE9E;AAED;;GAEG;AACH,wBAAgB,yBAAyB,IAAI,cAAc,EAAE,CAM5D"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { AttachmentAdapter } from '@assistant-ui/react';
|
|
2
|
+
import type { PendingAttachment, CompleteAttachment, Attachment } from '@assistant-ui/react';
|
|
3
|
+
/**
|
|
4
|
+
* Generic file attachment adapter that accepts any file type.
|
|
5
|
+
* Files are read as base64 data URLs and sent with their original MIME type.
|
|
6
|
+
*/
|
|
7
|
+
export declare class SimpleFileAttachmentAdapter implements AttachmentAdapter {
|
|
8
|
+
accept: string;
|
|
9
|
+
add(state: {
|
|
10
|
+
file: File;
|
|
11
|
+
}): Promise<PendingAttachment>;
|
|
12
|
+
send(attachment: PendingAttachment): Promise<CompleteAttachment>;
|
|
13
|
+
remove(_attachment: Attachment): Promise<void>;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=file-attachment-adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-attachment-adapter.d.ts","sourceRoot":"","sources":["../../../src/runtime/file-attachment-adapter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAW7F;;;GAGG;AACH,qBAAa,2BAA4B,YAAW,iBAAiB;IACnE,MAAM,SAAO;IAEP,GAAG,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,IAAI,CAAA;KAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAWtD,IAAI,CAAC,UAAU,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAgBhE,MAAM,CAAC,WAAW,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;CACrD"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { AppendMessage } from '@assistant-ui/react';
|
|
2
|
+
import { StartRunConfig } from '@assistant-ui/react/dist/legacy-runtime/runtime-cores/core/ThreadRuntimeCore';
|
|
3
|
+
import { PersonaProtocol, PersonaMessage, TransformMessages } from '../types';
|
|
4
|
+
import type { PersonaLogger } from '../logging';
|
|
5
|
+
/**
|
|
6
|
+
* Creates the onNew handler for new messages
|
|
7
|
+
*/
|
|
8
|
+
export declare function createOnNewHandler(protocols: PersonaProtocol[], setMessages: React.Dispatch<React.SetStateAction<PersonaMessage[]>>, setIsRunning: React.Dispatch<React.SetStateAction<boolean>>, transformMessages?: TransformMessages, logger?: PersonaLogger): (message: AppendMessage) => Promise<void>;
|
|
9
|
+
/**
|
|
10
|
+
* Creates the onEdit handler for editing messages
|
|
11
|
+
*/
|
|
12
|
+
export declare function createOnEditHandler(protocols: PersonaProtocol[], messages: PersonaMessage[], setMessages: React.Dispatch<React.SetStateAction<PersonaMessage[]>>, setIsRunning: React.Dispatch<React.SetStateAction<boolean>>, transformMessages?: TransformMessages, logger?: PersonaLogger): (message: AppendMessage) => Promise<void>;
|
|
13
|
+
/**
|
|
14
|
+
* Creates the onReload handler for regenerating messages
|
|
15
|
+
*/
|
|
16
|
+
export declare function createOnReloadHandler(protocols: PersonaProtocol[], messages: PersonaMessage[], setMessages: React.Dispatch<React.SetStateAction<PersonaMessage[]>>, setIsRunning: React.Dispatch<React.SetStateAction<boolean>>, transformMessages?: TransformMessages, logger?: PersonaLogger): (parentId: string | null, config: StartRunConfig) => Promise<void>;
|
|
17
|
+
/**
|
|
18
|
+
* Creates the onCancel handler for cancelling message generation
|
|
19
|
+
*/
|
|
20
|
+
export declare function createOnCancelHandler(protocols: PersonaProtocol[], setMessages: React.Dispatch<React.SetStateAction<PersonaMessage[]>>, setIsRunning: React.Dispatch<React.SetStateAction<boolean>>, transformMessages?: TransformMessages): () => Promise<void>;
|
|
21
|
+
//# sourceMappingURL=handlers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../../src/runtime/handlers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,8EAA8E,CAAC;AAC9G,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC9E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAIhD;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,eAAe,EAAE,EAC5B,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,EAAE,CAAC,CAAC,EACnE,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,EAC3D,iBAAiB,CAAC,EAAE,iBAAiB,EACrC,MAAM,CAAC,EAAE,aAAa,aAEC,aAAa,mBAoHrC;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,eAAe,EAAE,EAC5B,QAAQ,EAAE,cAAc,EAAE,EAC1B,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,EAAE,CAAC,CAAC,EACnE,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,EAC3D,iBAAiB,CAAC,EAAE,iBAAiB,EACrC,MAAM,CAAC,EAAE,aAAa,aAEC,aAAa,mBAiDrC;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,eAAe,EAAE,EAC5B,QAAQ,EAAE,cAAc,EAAE,EAC1B,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,EAAE,CAAC,CAAC,EACnE,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,EAC3D,iBAAiB,CAAC,EAAE,iBAAiB,EACrC,MAAM,CAAC,EAAE,aAAa,cAEE,MAAM,GAAG,IAAI,UAAU,cAAc,mBAwE9D;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,eAAe,EAAE,EAC5B,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,EAAE,CAAC,CAAC,EACnE,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,EAC3D,iBAAiB,CAAC,EAAE,iBAAiB,uBAgCtC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { PersonaPacket, PersonaMessage, PersonaProtocol, TransformMessages } from '../types';
|
|
2
|
+
/**
|
|
3
|
+
* Creates packet listener for a protocol
|
|
4
|
+
*/
|
|
5
|
+
export declare function createPacketListener(protocol: PersonaProtocol, setMessages: React.Dispatch<React.SetStateAction<PersonaMessage[]>>, setIsRunning: React.Dispatch<React.SetStateAction<boolean>>, protocols: PersonaProtocol[], transformMessages?: TransformMessages): (message: PersonaPacket) => void;
|
|
6
|
+
//# sourceMappingURL=listeners.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"listeners.d.ts","sourceRoot":"","sources":["../../../src/runtime/listeners.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,cAAc,EAAwC,eAAe,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAGnI;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,eAAe,EACzB,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,EAAE,CAAC,CAAC,EACnE,YAAY,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,EAC3D,SAAS,EAAE,eAAe,EAAE,EAC5B,iBAAiB,CAAC,EAAE,iBAAiB,aAEpB,aAAa,UAS/B"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { PersonaProtocol, PersonaConfig } from '../types';
|
|
2
|
+
import type { PersonaLogger } from '../logging';
|
|
3
|
+
type ProtocolsConfig = PersonaConfig['protocols'];
|
|
4
|
+
/**
|
|
5
|
+
* Initializes protocols based on configuration
|
|
6
|
+
*/
|
|
7
|
+
export declare function initializeProtocols(_protocols: ProtocolsConfig, config: {
|
|
8
|
+
dev: boolean;
|
|
9
|
+
baseUrl?: string;
|
|
10
|
+
apiKey: string;
|
|
11
|
+
agentId: string;
|
|
12
|
+
userId?: string;
|
|
13
|
+
tools?: PersonaConfig['tools'];
|
|
14
|
+
logger?: PersonaLogger;
|
|
15
|
+
}): PersonaProtocol[];
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=protocols.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"protocols.d.ts","sourceRoot":"","sources":["../../../src/runtime/protocols.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAA6B,aAAa,EAAE,MAAM,UAAU,CAAC;AACrF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAWhD,KAAK,eAAe,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;AAElD;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,eAAe,EAC3B,MAAM,EAAE;IACN,GAAG,EAAE,OAAO,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;IAC/B,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB,GACA,eAAe,EAAE,CAiEnB"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { ThreadData } from '../types';
|
|
2
|
+
import type { SessionStorage } from '../storage';
|
|
3
|
+
/**
|
|
4
|
+
* Generates a new session ID
|
|
5
|
+
*/
|
|
6
|
+
export declare function generateSessionId(): string;
|
|
7
|
+
/**
|
|
8
|
+
* Creates the thread list adapter for multi-thread support
|
|
9
|
+
*/
|
|
10
|
+
export declare function createThreadListAdapter(currentThreadId: string, threadList: ThreadData[], setCurrentThreadId: (id: string) => void, setThreadList: React.Dispatch<React.SetStateAction<ThreadData[]>>, storage: SessionStorage, onThreadCreate?: (threadId: string) => void, onThreadSwitch?: (threadId: string) => void, onThreadArchive?: (threadId: string) => void, onThreadUnarchive?: (threadId: string) => void, onThreadDelete?: (threadId: string) => void): {
|
|
11
|
+
threadId: string;
|
|
12
|
+
threads: {
|
|
13
|
+
id: string;
|
|
14
|
+
threadId: string;
|
|
15
|
+
title: string;
|
|
16
|
+
status: "regular";
|
|
17
|
+
}[];
|
|
18
|
+
archivedThreads: {
|
|
19
|
+
id: string;
|
|
20
|
+
threadId: string;
|
|
21
|
+
title: string;
|
|
22
|
+
status: "archived";
|
|
23
|
+
}[];
|
|
24
|
+
onSwitchToNewThread: () => void;
|
|
25
|
+
onSwitchToThread: (threadId: string) => void;
|
|
26
|
+
onArchive: (threadId: string) => void;
|
|
27
|
+
onUnarchive: (threadId: string) => void;
|
|
28
|
+
onDelete: (threadId: string) => Promise<void>;
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* Generates a default thread ID
|
|
32
|
+
*/
|
|
33
|
+
export declare function generateDefaultThreadId(): string;
|
|
34
|
+
//# sourceMappingURL=threads.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"threads.d.ts","sourceRoot":"","sources":["../../../src/runtime/threads.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAGjD;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAO1C;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,eAAe,EAAE,MAAM,EACvB,UAAU,EAAE,UAAU,EAAE,EACxB,kBAAkB,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,EACxC,aAAa,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC,CAAC,EACjE,OAAO,EAAE,cAAc,EACvB,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,EAC3C,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,EAC3C,eAAe,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,EAC5C,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,EAC9C,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI;;;;;;;;;;;;;;;iCAkCZ,MAAM;0BAKb,MAAM;4BASJ,MAAM;yBAKH,MAAM;EAepC;AAED;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,CAEhD"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { PersonaProtocol } from '../types';
|
|
2
|
+
/**
|
|
3
|
+
* Converts a File object to a base64 string
|
|
4
|
+
*/
|
|
5
|
+
export declare function fileToBase64(file: File): Promise<string>;
|
|
6
|
+
/**
|
|
7
|
+
* Extracts the first available protocol endpoint URL
|
|
8
|
+
*/
|
|
9
|
+
export declare function getFirstAvailableProtocolEndpoint(protocols: PersonaProtocol[]): string | null;
|
|
10
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/runtime/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAGhD;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAexD;AAED;;GAEG;AACH,wBAAgB,iCAAiC,CAAC,SAAS,EAAE,eAAe,EAAE,GAAG,MAAM,GAAG,IAAI,CAmB7F"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { PropsWithChildren } from 'react';
|
|
2
|
+
import { PersonaConfig, PersonaMessage, PersonaResponse, ThreadData } from './types';
|
|
3
|
+
export { usePersonaRuntime, usePersonaRuntimeProtocol, usePersonaRuntimeEndpoint, usePersonaRuntimeWebRTCProtocol, usePersonaRuntimeMessages, } from './runtime/context';
|
|
4
|
+
export type { PersonaMessage, PersonaResponse, ThreadData };
|
|
5
|
+
export declare function PersonaRuntimeProvider({ children, ...config }: PropsWithChildren<PersonaConfig>): import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
//# sourceMappingURL=runtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/runtime.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAoC,iBAAiB,EAAmB,MAAM,OAAO,CAAC;AAS7F,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAA2B,UAAU,EAAE,MAAM,SAAS,CAAC;AAS9G,OAAO,EACL,iBAAiB,EACjB,yBAAyB,EACzB,yBAAyB,EACzB,+BAA+B,EAC/B,yBAAyB,GAC1B,MAAM,mBAAmB,CAAC;AAE3B,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC;AAiT5D,wBAAgB,sBAAsB,CAAC,EAAE,QAAQ,EAAE,GAAG,MAAM,EAAE,EAAE,iBAAiB,CAAC,aAAa,CAAC,2CAE/F"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { PersonaMessage, Session, ThreadData } from '../types';
|
|
2
|
+
export interface SessionStorage {
|
|
3
|
+
sync(sessionId: Session): Promise<PersonaMessage[]>;
|
|
4
|
+
archive(sessionId: Session): Promise<void>;
|
|
5
|
+
unarchive(sessionId: Session): Promise<void>;
|
|
6
|
+
delete(sessionId: Session): Promise<void>;
|
|
7
|
+
list(agentId: string, userId?: string): Promise<ThreadData[]>;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=base.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../src/storage/base.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEpE,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,SAAS,EAAE,OAAO,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IAEpD,OAAO,CAAC,SAAS,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE3C,SAAS,CAAC,SAAS,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7C,MAAM,CAAC,SAAS,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1C,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;CAC/D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/storage/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,WAAW,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { PersonaMessage, Session, ThreadData } from '../types';
|
|
2
|
+
import type { SessionStorage } from './base';
|
|
3
|
+
import type { PersonaLogger } from '../logging';
|
|
4
|
+
type PersonaSessionStorageOptions = {
|
|
5
|
+
endpoint: string;
|
|
6
|
+
apiKey?: string;
|
|
7
|
+
pageSize?: number;
|
|
8
|
+
logger?: PersonaLogger;
|
|
9
|
+
};
|
|
10
|
+
export declare class PersonaSessionStorage implements SessionStorage {
|
|
11
|
+
private endpoint;
|
|
12
|
+
private apiKey?;
|
|
13
|
+
private pageSize;
|
|
14
|
+
private logger?;
|
|
15
|
+
constructor(opts: PersonaSessionStorageOptions);
|
|
16
|
+
private buildHeaders;
|
|
17
|
+
/**
|
|
18
|
+
* Fetch messages for a session from the Persona REST API
|
|
19
|
+
*/
|
|
20
|
+
sync(sessionId: Session): Promise<PersonaMessage[]>;
|
|
21
|
+
archive(sessionId: Session): Promise<void>;
|
|
22
|
+
unarchive(sessionId: Session): Promise<void>;
|
|
23
|
+
delete(sessionId: Session): Promise<void>;
|
|
24
|
+
_visiblility(sessionId: Session, visibility: 'active' | 'deleted' | 'archived'): Promise<void>;
|
|
25
|
+
clearAll(): Promise<void>;
|
|
26
|
+
list(agentId: string, userId?: string): Promise<ThreadData[]>;
|
|
27
|
+
}
|
|
28
|
+
export {};
|
|
29
|
+
//# sourceMappingURL=persona.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"persona.d.ts","sourceRoot":"","sources":["../../../src/storage/persona.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACpE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAC7C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,KAAK,4BAA4B,GAAG;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB,CAAC;AAEF,qBAAa,qBAAsB,YAAW,cAAc;IAC1D,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,MAAM,CAAC,CAAS;IACxB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,MAAM,CAAC,CAAgB;gBAEnB,IAAI,EAAE,4BAA4B;IAO9C,OAAO,CAAC,YAAY;IAMpB;;OAEG;IACG,IAAI,CAAC,SAAS,EAAE,OAAO,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IA8CnD,OAAO,CAAC,SAAS,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAI1C,SAAS,CAAC,SAAS,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5C,MAAM,CAAC,SAAS,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzC,YAAY,CAAC,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,GAAG,SAAS,GAAG,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAiB9F,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAIzB,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;CAyBpE"}
|