@agentica/core
Version:
Agentic AI Library specialized in LLM Function Calling
259 lines • 7.43 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.createInitializeEvent = createInitializeEvent;
exports.createSelectEvent = createSelectEvent;
exports.createCancelEvent = createCancelEvent;
exports.createCallEvent = createCallEvent;
exports.createJsonParseErrorEvent = createJsonParseErrorEvent;
exports.createValidateEvent = createValidateEvent;
exports.createExecuteEvent = createExecuteEvent;
exports.createUserMessageEvent = createUserMessageEvent;
exports.createAssistantMessageEvent = createAssistantMessageEvent;
exports.createDescribeEvent = createDescribeEvent;
exports.createRequestEvent = createRequestEvent;
exports.createResponseEvent = createResponseEvent;
const uuid_1 = require("uuid");
const histories_1 = require("./histories");
/* -----------------------------------------------------------
FUNCTION SELECTS
----------------------------------------------------------- */
function createInitializeEvent() {
const event = {
id: (0, uuid_1.v4)(),
type: "initialize",
created_at: new Date().toISOString(),
};
return {
id: event.id,
type: event.type,
created_at: event.created_at,
toJSON: () => event,
};
}
function createSelectEvent(props) {
const id = (0, uuid_1.v4)();
const created_at = new Date().toISOString();
return {
type: "select",
id,
created_at,
selection: props.selection,
toJSON: () => ({
type: "select",
id,
created_at,
selection: props.selection.toJSON(),
}),
toHistory: () => (0, histories_1.createSelectHistory)({
id,
created_at,
selection: props.selection,
}),
};
}
function createCancelEvent(props) {
const id = (0, uuid_1.v4)();
const created_at = new Date().toISOString();
return {
type: "cancel",
id,
created_at,
selection: props.selection,
toJSON: () => ({
type: "cancel",
id,
created_at,
selection: props.selection.toJSON(),
}),
};
}
/* -----------------------------------------------------------
FUNCTION CALLS
----------------------------------------------------------- */
function createCallEvent(props) {
const created_at = new Date().toISOString();
return {
type: "call",
id: props.id,
created_at,
operation: props.operation,
arguments: props.arguments,
toJSON: () => ({
type: "call",
id: props.id,
created_at,
operation: props.operation.toJSON(),
arguments: props.arguments,
}),
};
}
function createJsonParseErrorEvent(props) {
const created_at = new Date().toISOString();
return {
type: "jsonParseError",
id: props.id,
created_at,
operation: props.operation,
arguments: props.arguments,
errorMessage: props.errorMessage,
};
}
function createValidateEvent(props) {
const created_at = new Date().toISOString();
return {
type: "validate",
id: props.id,
created_at,
operation: props.operation,
result: props.result,
toJSON: () => ({
type: "validate",
id: props.id,
created_at,
operation: props.operation.toJSON(),
result: props.result,
}),
};
}
function createExecuteEvent(props) {
const id = (0, uuid_1.v4)();
const created_at = new Date().toISOString();
return {
type: "execute",
id,
created_at,
protocol: props.operation.protocol,
operation: props.operation,
arguments: props.arguments,
value: props.value,
toJSON: () => ({
type: "execute",
id,
created_at,
protocol: props.operation.protocol,
operation: props.operation.toJSON(),
arguments: props.arguments,
value: props.value,
}),
toHistory: () => (0, histories_1.createExecuteHistory)(Object.assign({ id,
created_at }, props)),
};
}
/* -----------------------------------------------------------
CONTENTS
----------------------------------------------------------- */
function createUserMessageEvent(props) {
const id = (0, uuid_1.v4)();
const created_at = new Date().toISOString();
return {
type: "userMessage",
id,
created_at,
contents: props.contents,
toJSON: () => ({
type: "userMessage",
id,
created_at,
contents: props.contents,
}),
toHistory: () => (0, histories_1.createUserMessageHistory)({
id,
created_at,
contents: props.contents,
}),
};
}
function createAssistantMessageEvent(props) {
const id = (0, uuid_1.v4)();
const created_at = new Date().toISOString();
return {
type: "assistantMessage",
id,
created_at,
stream: props.stream,
join: props.join,
toJSON: () => ({
type: "assistantMessage",
id,
created_at,
done: props.done(),
text: props.get(),
}),
toHistory: () => ({
type: "assistantMessage",
id,
created_at,
text: props.get(),
toJSON: () => ({
type: "assistantMessage",
id,
created_at,
text: props.get(),
}),
}),
};
}
function createDescribeEvent(props) {
const id = (0, uuid_1.v4)();
const created_at = new Date().toISOString();
return {
type: "describe",
id,
created_at,
executes: props.executes,
stream: props.stream,
join: props.join,
toJSON: () => ({
type: "describe",
id,
created_at,
executes: props.executes.map(execute => execute.toJSON()),
done: props.done(),
text: props.get(),
}),
toHistory: () => ({
type: "describe",
id,
created_at,
executes: props.executes,
text: props.get(),
toJSON: () => ({
type: "describe",
id,
created_at,
executes: props.executes.map(execute => execute.toJSON()),
text: props.get(),
}),
}),
};
}
/* -----------------------------------------------------------
API REQUESTS
----------------------------------------------------------- */
function createRequestEvent(props) {
const id = (0, uuid_1.v4)();
const created_at = new Date().toISOString();
return {
type: "request",
id,
created_at,
source: props.source,
body: props.body,
options: props.options,
};
}
function createResponseEvent(props) {
const id = (0, uuid_1.v4)();
const created_at = new Date().toISOString();
return {
type: "response",
id,
created_at,
source: props.source,
body: props.body,
options: props.options,
stream: props.stream,
join: props.join,
};
}
//# sourceMappingURL=events.js.map