@cognigy/rest-api-client
Version:
Cognigy REST-Client
85 lines • 3.71 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.slotFillerSchema = exports.slotFillerDataSchema = exports.slotFillerBaseDataSchema = void 0;
const IEntityMeta_1 = require("./IEntityMeta");
const TSlotFillerType_1 = require("./TSlotFillerType");
exports.slotFillerBaseDataSchema = {
title: "slotFillerBaseDataSchema",
type: "object",
additionalProperties: false,
properties: {
name: { type: "string", format: "resource-name" },
usePositiveOnly: { type: "boolean" },
removeNegated: { type: "boolean" },
storeResultInContext: { type: "boolean" },
contextKey: { type: "string" },
storeInContactProfile: { type: "boolean" },
profileKey: { type: "string" },
storeDetailedResults: { type: "boolean" },
skipIfResultInContext: { type: "boolean" },
additionalValidation: { type: "string" },
resultLocation: { type: "string" },
}
};
const slotFillerKeyphraseDataSchema = {
title: "slotFillerKeyphraseDataSchema",
type: "object",
additionalProperties: false,
properties: {
type: { type: "string", enum: ["slot"] },
slot: { type: "string", format: "resource-name" },
}
};
const slotFillerKeyphraseSchema = {
title: "slotFillerKeyphraseSchema",
type: "object",
additionalProperties: false,
properties: Object.assign(Object.assign({}, exports.slotFillerBaseDataSchema.properties), slotFillerKeyphraseDataSchema.properties)
};
const slotFillerRegexDataSchema = {
title: "slotFillerRegexDataSchema",
type: "object",
additionalProperties: false,
required: ["regex"],
properties: {
type: { type: "string", enum: ["regex"] },
regex: { type: "string", format: "regex" },
}
};
const slotFillerRegexSchema = {
title: "slotFillerRegexSchema",
type: "object",
additionalProperties: false,
required: ["regex"],
properties: Object.assign(Object.assign({}, exports.slotFillerBaseDataSchema.properties), slotFillerRegexDataSchema.properties)
};
const slotFillerGenericDataSchema = {
title: "slotFillerGenericDataSchema",
type: "object",
additionalProperties: false,
properties: {
type: { type: "string", enum: [...TSlotFillerType_1.slotFillerTypes.filter(value => ["regex", "slot"].includes(value) === false)] },
}
};
const slotFillerGenericSchema = {
title: "slotFillerGenericSchema",
type: "object",
additionalProperties: false,
properties: Object.assign(Object.assign({}, exports.slotFillerBaseDataSchema.properties), slotFillerGenericDataSchema.properties)
};
exports.slotFillerDataSchema = {
title: "slotFillerDataSchema",
type: "object",
oneOf: [
{ properties: slotFillerGenericSchema.properties },
{ properties: slotFillerKeyphraseSchema.properties },
{ properties: slotFillerRegexSchema.properties },
]
};
exports.slotFillerSchema = {
title: "slotFillerSchema",
type: "object",
additionalProperties: false,
properties: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, IEntityMeta_1.entityMetaSchema.properties), exports.slotFillerBaseDataSchema.properties), slotFillerGenericDataSchema.properties), slotFillerKeyphraseDataSchema.properties), slotFillerRegexDataSchema.properties), { type: { type: "string", enum: [...new Set(TSlotFillerType_1.slotFillerTypes)] }, referenceId: { type: "string", format: "uuid" }, flowReference: { type: "string", format: "mongo-id" }, projectReference: { type: "string", format: "mongo-id" }, organisationReference: { type: "string", format: "mongo-id" } }),
};
//# sourceMappingURL=ISlotFiller.js.map