@microsoft/agents-hosting-teams
Version:
Microsoft 365 Agents SDK for JavaScript
225 lines • 7.63 kB
JavaScript
"use strict";
/**
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License.
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.parseValueAction = parseValueAction;
exports.parseValueActionName = parseValueActionName;
exports.parseValueContinuation = parseValueContinuation;
exports.parseValueActionExecuteSelector = parseValueActionExecuteSelector;
exports.parseValueDataset = parseValueDataset;
exports.parseValueActionFeedbackLoopData = parseValueActionFeedbackLoopData;
exports.parseAdaptiveCardInvokeAction = parseAdaptiveCardInvokeAction;
exports.parseValueSearchQuery = parseValueSearchQuery;
exports.parseValueQuery = parseValueQuery;
exports.parseValueAgentMessagePreviewAction = parseValueAgentMessagePreviewAction;
exports.parseValueAgentActivityPreview = parseValueAgentActivityPreview;
exports.parseValueCommandId = parseValueCommandId;
exports.parseValueMessagingExtensionQuery = parseValueMessagingExtensionQuery;
const zod_1 = require("zod");
const agents_activity_1 = require("@microsoft/agents-activity");
const messaging_extension_1 = require("../messaging-extension");
const adaptive_cards_1 = require("../adaptive-cards");
/**
* Parses the given value as a value action.
*
* @param {unknown} value - The value to parse.
* @returns {string} - The parsed value action.
*/
function parseValueAction(value) {
const valueActionZodSchema = zod_1.z.object({
action: zod_1.z.string().min(1)
});
valueActionZodSchema.passthrough().parse(value);
return value;
}
/**
* Parses the given value as a value action name.
*
* @param {unknown} value - The value to parse.
* @returns {string} - The parsed value action name.
*/
function parseValueActionName(value) {
const valueActionNameZodSchema = zod_1.z.object({
actionName: zod_1.z.string().min(1),
});
valueActionNameZodSchema.passthrough().parse(value);
return value;
}
/**
* Parses the given value as a value continuation.
*
* @param {unknown} value - The value to parse.
* @returns {string} - The parsed value continuation.
*/
function parseValueContinuation(value) {
const valueContinuationZodSchema = zod_1.z.object({
continuation: zod_1.z.string().min(1)
});
valueContinuationZodSchema.passthrough().parse(value);
return value;
}
/**
* Parses the given value as a value action execute selector.
*
* @param {unknown} value - The value to parse.
* @returns {object} - The parsed value action execute selector.
*/
function parseValueActionExecuteSelector(value) {
const actionZodSchema = zod_1.z.object({
type: zod_1.z.string().min(1),
verb: zod_1.z.string().min(1)
});
const actionValueExecuteSelector = zod_1.z.object({
action: actionZodSchema
});
const parsedValue = actionValueExecuteSelector.passthrough().parse(value);
return {
action: {
type: parsedValue.action.type,
verb: parsedValue.action.verb
}
};
}
/**
* Parses the given value as a dataset.
*
* @param {unknown} value - The value to parse.
* @returns {object} - The parsed dataset.
*/
function parseValueDataset(value) {
const datasetZodSchema = zod_1.z.object({
dataset: zod_1.z.string().min(1)
});
const parsedValue = datasetZodSchema.passthrough().parse(value);
return {
dataset: parsedValue.dataset
};
}
/**
* Parses the given value as action feedback loop data.
*
* @param {unknown} value - The value to parse.
* @returns {object} - The parsed action feedback loop data.
*/
function parseValueActionFeedbackLoopData(value) {
const feedbackLoopDataActionValueZodSchema = zod_1.z.object({
actionValue: zod_1.z.object({
reaction: zod_1.z.union([zod_1.z.literal('like'), zod_1.z.literal('dislike')]),
feedback: zod_1.z.union([zod_1.z.string().min(1), zod_1.z.record(zod_1.z.string(), zod_1.z.any())])
})
});
const parsedValue = feedbackLoopDataActionValueZodSchema.passthrough().parse(value);
return {
actionValue: {
reaction: parsedValue.actionValue.reaction,
feedback: parsedValue.actionValue.feedback
}
};
}
/**
* Parses the given value as an adaptive card invoke action.
*
* @param {unknown} value - The value to parse.
* @returns {AdaptiveCardInvokeAction} - The parsed adaptive card invoke action.
*/
function parseAdaptiveCardInvokeAction(value) {
agents_activity_1.adaptiveCardInvokeActionZodSchema.passthrough().parse(value);
return value;
}
/**
* Parses the given value as a search query.
*
* @param {unknown} value - The value to parse.
* @returns {object} - The parsed search query.
*/
function parseValueSearchQuery(value) {
const queryOptionsZodSchema = zod_1.z.object({
top: zod_1.z.number(),
skip: zod_1.z.number(),
});
const searchValueZodSchema = adaptive_cards_1.adaptiveCardsSearchParamsZodSchema.extend({
queryOptions: queryOptionsZodSchema
});
const validSearchValue = searchValueZodSchema.passthrough().parse(value);
return {
queryOptions: {
top: validSearchValue.queryOptions.top,
skip: validSearchValue.queryOptions.skip
},
queryText: validSearchValue.queryText,
dataset: validSearchValue.dataset
};
}
/**
* Parses the given value as a query.
*
* @param {unknown} value - The value to parse.
* @returns {object} - The parsed query.
*/
function parseValueQuery(value) {
const urlZodSchema = zod_1.z.object({
url: zod_1.z.string().min(1)
});
const parsedValue = urlZodSchema.passthrough().parse(value);
return {
url: parsedValue.url
};
}
/**
* Parses the given value as an activity message preview action.
*
* @param {unknown} value - The value to parse.
* @returns {object} - The parsed message preview action.
*/
function parseValueAgentMessagePreviewAction(value) {
const botMessagePreviewActionZodSchema = zod_1.z.object({
botMessagePreviewAction: zod_1.z.string().min(1)
});
const parsedValue = botMessagePreviewActionZodSchema.passthrough().parse(value);
return {
botMessagePreviewAction: parsedValue.botMessagePreviewAction
};
}
/**
* Parses the given value as an activity preview.
*
* @param {unknown} value - The value to parse.
* @returns {object} - The parsed activity preview.
*/
function parseValueAgentActivityPreview(value) {
const botActivityPreviewZodSchema = zod_1.z.object({
botActivityPreview: zod_1.z.array(agents_activity_1.activityZodSchema.partial())
});
const parsedValue = botActivityPreviewZodSchema.passthrough().parse(value);
return {
botActivityPreview: parsedValue.botActivityPreview
};
}
/**
* Parses the given value as a command ID.
*
* @param {unknown} value - The value to parse.
* @returns {object} - The parsed command ID.
*/
function parseValueCommandId(value) {
const commandIdZodSchema = zod_1.z.object({
commandId: zod_1.z.string().min(1)
});
const parsedValue = commandIdZodSchema.passthrough().parse(value);
return {
commandId: parsedValue.commandId
};
}
/**
* Parses the given value as a messaging extension query.
*
* @param {unknown} value - The value to parse.
* @returns {MessagingExtensionQuery} - The parsed messaging extension query.
*/
function parseValueMessagingExtensionQuery(value) {
messaging_extension_1.messagingExtensionQueryZodSchema.passthrough().parse(value);
return value;
}
//# sourceMappingURL=activityValueParsers.js.map