@botonic/plugin-flow-builder 0.37.1 → 0.37.2-alpha.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.
Files changed (53) hide show
  1. package/lib/cjs/action/ai-agent.js +9 -4
  2. package/lib/cjs/action/ai-agent.js.map +1 -1
  3. package/lib/cjs/action/fallback.js +6 -2
  4. package/lib/cjs/action/fallback.js.map +1 -1
  5. package/lib/cjs/action/knowledge-bases.js +31 -29
  6. package/lib/cjs/action/knowledge-bases.js.map +1 -1
  7. package/lib/cjs/action/payload.js +2 -2
  8. package/lib/cjs/action/payload.js.map +1 -1
  9. package/lib/cjs/content-fields/flow-ai-agent.d.ts +3 -2
  10. package/lib/cjs/content-fields/flow-ai-agent.js +3 -1
  11. package/lib/cjs/content-fields/flow-ai-agent.js.map +1 -1
  12. package/lib/cjs/content-fields/hubtype-fields/ai-agent.d.ts +6 -0
  13. package/lib/cjs/tracking.d.ts +1 -12
  14. package/lib/cjs/tracking.js +15 -31
  15. package/lib/cjs/tracking.js.map +1 -1
  16. package/lib/cjs/types.d.ts +8 -44
  17. package/lib/cjs/types.js.map +1 -1
  18. package/lib/cjs/user-input/keyword.js +7 -5
  19. package/lib/cjs/user-input/keyword.js.map +1 -1
  20. package/lib/cjs/user-input/smart-intent.js +5 -2
  21. package/lib/cjs/user-input/smart-intent.js.map +1 -1
  22. package/lib/esm/action/ai-agent.js +9 -4
  23. package/lib/esm/action/ai-agent.js.map +1 -1
  24. package/lib/esm/action/fallback.js +8 -4
  25. package/lib/esm/action/fallback.js.map +1 -1
  26. package/lib/esm/action/knowledge-bases.js +33 -31
  27. package/lib/esm/action/knowledge-bases.js.map +1 -1
  28. package/lib/esm/action/payload.js +2 -2
  29. package/lib/esm/action/payload.js.map +1 -1
  30. package/lib/esm/content-fields/flow-ai-agent.d.ts +3 -2
  31. package/lib/esm/content-fields/flow-ai-agent.js +3 -1
  32. package/lib/esm/content-fields/flow-ai-agent.js.map +1 -1
  33. package/lib/esm/content-fields/hubtype-fields/ai-agent.d.ts +6 -0
  34. package/lib/esm/tracking.d.ts +1 -12
  35. package/lib/esm/tracking.js +15 -31
  36. package/lib/esm/tracking.js.map +1 -1
  37. package/lib/esm/types.d.ts +8 -44
  38. package/lib/esm/types.js.map +1 -1
  39. package/lib/esm/user-input/keyword.js +10 -8
  40. package/lib/esm/user-input/keyword.js.map +1 -1
  41. package/lib/esm/user-input/smart-intent.js +8 -5
  42. package/lib/esm/user-input/smart-intent.js.map +1 -1
  43. package/package.json +2 -2
  44. package/src/action/ai-agent.ts +12 -2
  45. package/src/action/fallback.ts +9 -4
  46. package/src/action/knowledge-bases.ts +47 -43
  47. package/src/action/payload.ts +3 -3
  48. package/src/content-fields/flow-ai-agent.tsx +6 -4
  49. package/src/content-fields/hubtype-fields/ai-agent.ts +7 -0
  50. package/src/tracking.ts +14 -35
  51. package/src/types.ts +19 -52
  52. package/src/user-input/keyword.ts +11 -9
  53. package/src/user-input/smart-intent.ts +9 -5
@@ -1,5 +1,6 @@
1
- import { __awaiter } from "tslib";
2
- import { EventAction, trackEvent } from '../tracking';
1
+ import { __awaiter, __rest } from "tslib";
2
+ import { EventAction } from '@botonic/core';
3
+ import { trackEvent } from '../tracking';
3
4
  export function getContentsByFallback({ cmsApi, flowBuilderPlugin, request, }) {
4
5
  return __awaiter(this, void 0, void 0, function* () {
5
6
  const fallbackNode = yield getFallbackNode(cmsApi, request);
@@ -16,11 +17,14 @@ function getFallbackNode(cmsApi, request) {
16
17
  const isFirstFallbackOption = !!request.session.user.extra_data.isFirstFallbackOption;
17
18
  const fallbackNode = cmsApi.getFallbackNode(isFirstFallbackOption);
18
19
  request.session.user.extra_data.isFirstFallbackOption = !isFirstFallbackOption;
19
- yield trackEvent(request, EventAction.Fallback, {
20
+ const event = {
21
+ action: EventAction.Fallback,
20
22
  userInput: request.input.data,
21
23
  fallbackOut: isFirstFallbackOption ? 1 : 2,
22
24
  fallbackMessageId: request.input.message_id,
23
- });
25
+ };
26
+ const { action } = event, eventArgs = __rest(event, ["action"]);
27
+ yield trackEvent(request, action, eventArgs);
24
28
  return fallbackNode;
25
29
  });
26
30
  }
@@ -1 +1 @@
1
- {"version":3,"file":"fallback.js","sourceRoot":"","sources":["../../../src/action/fallback.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAGrD,MAAM,UAAgB,qBAAqB,CAAC,EAC1C,MAAM,EACN,iBAAiB,EACjB,OAAO,GACY;;QACnB,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAC3D,MAAM,gBAAgB,GACpB,MAAM,iBAAiB,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAA;QAEzD,OAAO,gBAAgB,CAAA;IACzB,CAAC;CAAA;AAED,SAAe,eAAe,CAAC,MAAsB,EAAE,OAAsB;;;QAC3E,IAAI,CAAA,MAAA,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,0CAAE,qBAAqB,MAAK,SAAS,EAAE;YACxE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,mCAC1B,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,KAClC,qBAAqB,EAAE,IAAI,GAC5B,CAAA;SACF;QAED,MAAM,qBAAqB,GACzB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAA;QACzD,MAAM,YAAY,GAAG,MAAM,CAAC,eAAe,CAAC,qBAAqB,CAAC,CAAA;QAClE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,qBAAqB,GAAG,CAAC,qBAAqB,CAAA;QAE9E,MAAM,UAAU,CAAC,OAAO,EAAE,WAAW,CAAC,QAAQ,EAAE;YAC9C,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI;YAC7B,WAAW,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1C,iBAAiB,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU;SAC5C,CAAC,CAAA;QAEF,OAAO,YAAY,CAAA;;CACpB"}
1
+ {"version":3,"file":"fallback.js","sourceRoot":"","sources":["../../../src/action/fallback.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAiB,MAAM,eAAe,CAAA;AAK1D,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAGxC,MAAM,UAAgB,qBAAqB,CAAC,EAC1C,MAAM,EACN,iBAAiB,EACjB,OAAO,GACY;;QACnB,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAC3D,MAAM,gBAAgB,GACpB,MAAM,iBAAiB,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAA;QAEzD,OAAO,gBAAgB,CAAA;IACzB,CAAC;CAAA;AAED,SAAe,eAAe,CAAC,MAAsB,EAAE,OAAsB;;;QAC3E,IAAI,CAAA,MAAA,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,0CAAE,qBAAqB,MAAK,SAAS,EAAE;YACxE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,mCAC1B,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,KAClC,qBAAqB,EAAE,IAAI,GAC5B,CAAA;SACF;QAED,MAAM,qBAAqB,GACzB,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAA;QACzD,MAAM,YAAY,GAAG,MAAM,CAAC,eAAe,CAAC,qBAAqB,CAAC,CAAA;QAClE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,qBAAqB,GAAG,CAAC,qBAAqB,CAAA;QAE9E,MAAM,KAAK,GAAkB;YAC3B,MAAM,EAAE,WAAW,CAAC,QAAQ;YAC5B,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,IAAc;YACvC,WAAW,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1C,iBAAiB,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU;SAC5C,CAAA;QACD,MAAM,EAAE,MAAM,KAAmB,KAAK,EAAnB,SAAS,UAAK,KAAK,EAAhC,UAAwB,CAAQ,CAAA;QAEtC,MAAM,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,CAAA;QAE5C,OAAO,YAAY,CAAA;;CACpB"}
@@ -1,6 +1,8 @@
1
- import { __awaiter } from "tslib";
1
+ import { __awaiter, __rest } from "tslib";
2
+ import { EventAction, KnowledgebaseFailReason, } from '@botonic/core';
2
3
  import { DISABLED_MEMORY_LENGTH, FlowKnowledgeBase, } from '../content-fields';
3
- import { EventAction, KnowledgebaseFailReason, trackEvent } from '../tracking';
4
+ import { getFlowBuilderPlugin } from '../helpers';
5
+ import { trackEvent } from '../tracking';
4
6
  import { inputHasTextData, isKnowledgeBasesAllowed } from '../utils';
5
7
  export function getContentsByKnowledgeBase({ cmsApi, flowBuilderPlugin, request, }) {
6
8
  return __awaiter(this, void 0, void 0, function* () {
@@ -16,11 +18,10 @@ export function getContentsByKnowledgeBase({ cmsApi, flowBuilderPlugin, request,
16
18
  return contents;
17
19
  }
18
20
  const sourceIds = knowledgeBaseContent.sourcesData.map(source => source.id);
19
- const flowId = cmsApi.getNodeById(knowledgeBaseContent.id).flow_id;
20
21
  if (flowBuilderPlugin.getKnowledgeBaseResponse &&
21
22
  inputHasTextData(request.input) &&
22
23
  sourceIds.length > 0) {
23
- const contentsWithKnowledgeResponse = yield getContentsWithKnowledgeResponse(flowBuilderPlugin.getKnowledgeBaseResponse, request, contents, knowledgeBaseContent, flowId);
24
+ const contentsWithKnowledgeResponse = yield getContentsWithKnowledgeResponse(flowBuilderPlugin.getKnowledgeBaseResponse, request, contents, knowledgeBaseContent);
24
25
  if (contentsWithKnowledgeResponse) {
25
26
  return contentsWithKnowledgeResponse;
26
27
  }
@@ -29,7 +30,7 @@ export function getContentsByKnowledgeBase({ cmsApi, flowBuilderPlugin, request,
29
30
  return [];
30
31
  });
31
32
  }
32
- function getContentsWithKnowledgeResponse(getKnowledgeBaseResponse, request, contents, knowledgeBaseContent, flowId) {
33
+ function getContentsWithKnowledgeResponse(getKnowledgeBaseResponse, request, contents, knowledgeBaseContent) {
33
34
  return __awaiter(this, void 0, void 0, function* () {
34
35
  const sourceIds = knowledgeBaseContent.sourcesData.map(source => source.id);
35
36
  const instructions = knowledgeBaseContent.instructions;
@@ -38,7 +39,7 @@ function getContentsWithKnowledgeResponse(getKnowledgeBaseResponse, request, con
38
39
  ? knowledgeBaseContent.memoryLength
39
40
  : DISABLED_MEMORY_LENGTH;
40
41
  const knowledgeBaseResponse = yield getKnowledgeBaseResponse(request, sourceIds, instructions, messageId, memoryLength);
41
- yield trackKnowledgeBase(knowledgeBaseResponse, request, knowledgeBaseContent, flowId);
42
+ yield trackKnowledgeBase(knowledgeBaseResponse, request, knowledgeBaseContent);
42
43
  if (!knowledgeBaseResponse.hasKnowledge ||
43
44
  !knowledgeBaseResponse.isFaithful) {
44
45
  return undefined;
@@ -55,33 +56,34 @@ function updateContentsWithResponse(contents, response) {
55
56
  return content;
56
57
  });
57
58
  }
58
- function trackKnowledgeBase(response, request, knowledgeBaseContent, flowId) {
59
+ function trackKnowledgeBase(response, request, knowledgeBaseContent) {
59
60
  return __awaiter(this, void 0, void 0, function* () {
60
- const sourceIds = knowledgeBaseContent.sourcesData.map(source => source.id);
61
- const knowledgebaseInferenceId = response.inferenceId;
62
- const knowledgebaseSourcesIds = sourceIds;
63
- const knowledgebaseChunksIds = response.chunkIds;
64
- const knowledgebaseMessageId = request.input.message_id;
65
- const flowThreadId = request.session.flow_thread_id;
66
- const flowNodeId = knowledgeBaseContent.id;
67
- let knowledgebaseFailReason;
68
- if (!response.isFaithful) {
69
- knowledgebaseFailReason = KnowledgebaseFailReason.Hallucination;
70
- }
71
- if (!response.hasKnowledge) {
72
- knowledgebaseFailReason = KnowledgebaseFailReason.NoKnowledge;
73
- }
74
- yield trackEvent(request, EventAction.Knowledgebase, {
75
- knowledgebaseInferenceId,
76
- knowledgebaseFailReason,
77
- knowledgebaseSourcesIds,
78
- knowledgebaseChunksIds,
79
- knowledgebaseMessageId,
61
+ const flowBuilderPlugin = getFlowBuilderPlugin(request.plugins);
62
+ const flowId = flowBuilderPlugin.cmsApi.getNodeById(knowledgeBaseContent.id).flow_id;
63
+ const getKnowledgeFailReason = () => {
64
+ let knowledgebaseFailReason;
65
+ if (!response.isFaithful) {
66
+ knowledgebaseFailReason = KnowledgebaseFailReason.Hallucination;
67
+ }
68
+ if (!response.hasKnowledge) {
69
+ knowledgebaseFailReason = KnowledgebaseFailReason.NoKnowledge;
70
+ }
71
+ return knowledgebaseFailReason;
72
+ };
73
+ const event = {
74
+ action: EventAction.Knowledgebase,
75
+ knowledgebaseInferenceId: response.inferenceId,
76
+ knowledgebaseFailReason: getKnowledgeFailReason(),
77
+ knowledgebaseSourcesIds: knowledgeBaseContent.sourcesData.map(source => source.id),
78
+ knowledgebaseChunksIds: response.chunkIds,
79
+ knowledgebaseMessageId: request.input.message_id,
80
80
  userInput: request.input.data,
81
- flowThreadId,
82
- flowId,
83
- flowNodeId,
84
- });
81
+ flowThreadId: request.session.flow_thread_id,
82
+ flowId: flowId,
83
+ flowNodeId: knowledgeBaseContent.id,
84
+ };
85
+ const { action } = event, eventArgs = __rest(event, ["action"]);
86
+ yield trackEvent(request, action, eventArgs);
85
87
  });
86
88
  }
87
89
  //# sourceMappingURL=knowledge-bases.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"knowledge-bases.js","sourceRoot":"","sources":["../../../src/action/knowledge-bases.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"knowledge-bases.js","sourceRoot":"","sources":["../../../src/action/knowledge-bases.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import { __awaiter } from "tslib";
2
- import { storeCaseRating } from '@botonic/core';
2
+ import { EventAction, storeCaseRating } from '@botonic/core';
3
3
  import { v7 as uuid } from 'uuid';
4
4
  import { AGENT_RATING_PAYLOAD, SEPARATOR } from '../constants';
5
- import { EventAction, trackEvent } from '../tracking';
5
+ import { trackEvent } from '../tracking';
6
6
  export function getContentsByPayload(context) {
7
7
  var _a, _b;
8
8
  return __awaiter(this, void 0, void 0, function* () {
@@ -1 +1 @@
1
- {"version":3,"file":"payload.js","sourceRoot":"","sources":["../../../src/action/payload.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"payload.js","sourceRoot":"","sources":["../../../src/action/payload.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  /// <reference types="react" />
2
- import { AgenticOutputMessage } from '../types';
2
+ import { AgenticOutputMessage } from '@botonic/core';
3
3
  import { ContentFieldsBase } from './content-fields-base';
4
- import { HtAiAgentNode } from './hubtype-fields/ai-agent';
4
+ import { HtAiAgentNode, HtInputGuardrailRule } from './hubtype-fields/ai-agent';
5
5
  export declare class FlowAiAgent extends ContentFieldsBase {
6
6
  code: string;
7
7
  name: string;
@@ -9,6 +9,7 @@ export declare class FlowAiAgent extends ContentFieldsBase {
9
9
  activeTools?: {
10
10
  name: string;
11
11
  }[];
12
+ inputGuardrailRules: HtInputGuardrailRule[];
12
13
  responses: AgenticOutputMessage[];
13
14
  static fromHubtypeCMS(component: HtAiAgentNode): FlowAiAgent;
14
15
  toBotonic(id: string): JSX.Element;
@@ -16,10 +16,12 @@ export class FlowAiAgent extends ContentFieldsBase {
16
16
  newAiAgent.name = component.content.name;
17
17
  newAiAgent.instructions = component.content.instructions;
18
18
  newAiAgent.activeTools = component.content.active_tools;
19
+ newAiAgent.inputGuardrailRules =
20
+ component.content.input_guardrail_rules || [];
19
21
  return newAiAgent;
20
22
  }
21
23
  toBotonic(id) {
22
- return (_jsx(_Fragment, { children: this.responses.map(response => {
24
+ return (_jsx(_Fragment, { children: this.responses.map((response) => {
23
25
  if (response.type === 'text') {
24
26
  return _jsx(Text, { children: response.content.text }, id);
25
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"flow-ai-agent.js","sourceRoot":"","sources":["../../../src/content-fields/flow-ai-agent.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAA;AAEvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAA;AAEpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAG5C,MAAM,OAAO,WAAY,SAAQ,iBAAiB;IAAlD;;QACS,SAAI,GAAW,EAAE,CAAA;QACjB,SAAI,GAAW,EAAE,CAAA;QACjB,iBAAY,GAAW,EAAE,CAAA;QAGzB,cAAS,GAA2B,EAAE,CAAA;IAkD/C,CAAC;IAhDC,MAAM,CAAC,cAAc,CAAC,SAAwB;QAC5C,MAAM,UAAU,GAAG,IAAI,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QAChD,UAAU,CAAC,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAA;QACxC,UAAU,CAAC,YAAY,GAAG,SAAS,CAAC,OAAO,CAAC,YAAY,CAAA;QACxD,UAAU,CAAC,WAAW,GAAG,SAAS,CAAC,OAAO,CAAC,YAAY,CAAA;QAEvD,OAAO,UAAU,CAAA;IACnB,CAAC;IAED,SAAS,CAAC,EAAU;QAClB,OAAO,CACL,4BACG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;gBAC7B,IAAI,QAAQ,CAAC,IAAI,KAAK,MAAM,EAAE;oBAC5B,OAAO,KAAC,IAAI,cAAW,QAAQ,CAAC,OAAO,CAAC,IAAI,IAA1B,EAAE,CAAgC,CAAA;iBACrD;gBAED,IAAI,QAAQ,CAAC,IAAI,KAAK,iBAAiB,EAAE;oBACvC,OAAO,CACL,MAAC,IAAI,eACF,QAAQ,CAAC,OAAO,CAAC,IAAI,EACrB,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,CAAC,CACrD,KAAC,MAAM,kBAEL,OAAO,EAAE,aAAa,qBAAqB,GAAG,WAAW,EAAE,gBAE1D,MAAM,KAHF,WAAW,CAIT,CACV,CAAC,KATO,EAAE,CAUN,CACR,CAAA;iBACF;gBAED,IAAI,QAAQ,CAAC,IAAI,KAAK,UAAU,EAAE;oBAChC,OAAO,CACL,KAAC,QAAQ,cACN,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CACvC,WAAW,CAAC,WAAW,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,CACnD,IAHY,EAAE,CAIN,CACZ,CAAA;iBACF;gBAED,OAAO,mBAAK,CAAA;YACd,CAAC,CAAC,GACD,CACJ,CAAA;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"flow-ai-agent.js","sourceRoot":"","sources":["../../../src/content-fields/flow-ai-agent.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAA;AAEvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAA;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAG5C,MAAM,OAAO,WAAY,SAAQ,iBAAiB;IAAlD;;QACS,SAAI,GAAW,EAAE,CAAA;QACjB,SAAI,GAAW,EAAE,CAAA;QACjB,iBAAY,GAAW,EAAE,CAAA;QAIzB,cAAS,GAA2B,EAAE,CAAA;IAmD/C,CAAC;IAjDC,MAAM,CAAC,cAAc,CAAC,SAAwB;QAC5C,MAAM,UAAU,GAAG,IAAI,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QAChD,UAAU,CAAC,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAA;QACxC,UAAU,CAAC,YAAY,GAAG,SAAS,CAAC,OAAO,CAAC,YAAY,CAAA;QACxD,UAAU,CAAC,WAAW,GAAG,SAAS,CAAC,OAAO,CAAC,YAAY,CAAA;QACvD,UAAU,CAAC,mBAAmB;YAC5B,SAAS,CAAC,OAAO,CAAC,qBAAqB,IAAI,EAAE,CAAA;QAC/C,OAAO,UAAU,CAAA;IACnB,CAAC;IAED,SAAS,CAAC,EAAU;QAClB,OAAO,CACL,4BACG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAA8B,EAAE,EAAE;gBACrD,IAAI,QAAQ,CAAC,IAAI,KAAK,MAAM,EAAE;oBAC5B,OAAO,KAAC,IAAI,cAAW,QAAQ,CAAC,OAAO,CAAC,IAAI,IAA1B,EAAE,CAAgC,CAAA;iBACrD;gBAED,IAAI,QAAQ,CAAC,IAAI,KAAK,iBAAiB,EAAE;oBACvC,OAAO,CACL,MAAC,IAAI,eACF,QAAQ,CAAC,OAAO,CAAC,IAAI,EACrB,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,CAAC,CACrD,KAAC,MAAM,kBAEL,OAAO,EAAE,aAAa,qBAAqB,GAAG,WAAW,EAAE,gBAE1D,MAAM,KAHF,WAAW,CAIT,CACV,CAAC,KATO,EAAE,CAUN,CACR,CAAA;iBACF;gBAED,IAAI,QAAQ,CAAC,IAAI,KAAK,UAAU,EAAE;oBAChC,OAAO,CACL,KAAC,QAAQ,cACN,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CACvC,WAAW,CAAC,WAAW,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,CACnD,IAHY,EAAE,CAIN,CACZ,CAAA;iBACF;gBAED,OAAO,mBAAK,CAAA;YACd,CAAC,CAAC,GACD,CACJ,CAAA;IACH,CAAC;CACF"}
@@ -1,5 +1,10 @@
1
1
  import { HtBaseNode } from './common';
2
2
  import { HtNodeWithContentType } from './node-types';
3
+ export interface HtInputGuardrailRule {
4
+ name: string;
5
+ description: string;
6
+ is_active: boolean;
7
+ }
3
8
  export interface HtAiAgentNode extends HtBaseNode {
4
9
  type: HtNodeWithContentType.AI_AGENT;
5
10
  content: {
@@ -8,5 +13,6 @@ export interface HtAiAgentNode extends HtBaseNode {
8
13
  active_tools?: {
9
14
  name: string;
10
15
  }[];
16
+ input_guardrail_rules?: HtInputGuardrailRule[];
11
17
  };
12
18
  }
@@ -1,16 +1,5 @@
1
+ import { EventAction } from '@botonic/core';
1
2
  import { ActionRequest } from '@botonic/react';
2
3
  import { FlowContent } from './content-fields';
3
- export declare enum EventAction {
4
- FlowNode = "flow_node",
5
- Keyword = "nlu_keyword",
6
- IntentSmart = "nlu_intent_smart",
7
- Knowledgebase = "knowledgebase",
8
- Fallback = "fallback",
9
- FeedbackCase = "feedback_case"
10
- }
11
- export declare enum KnowledgebaseFailReason {
12
- NoKnowledge = "no_knowledge",
13
- Hallucination = "hallucination"
14
- }
15
4
  export declare function trackEvent(request: ActionRequest, eventAction: EventAction, args?: Record<string, any>): Promise<void>;
16
5
  export declare function trackFlowContent(request: ActionRequest, contents: FlowContent[]): Promise<void>;
@@ -1,21 +1,8 @@
1
- import { __awaiter } from "tslib";
1
+ import { __awaiter, __rest } from "tslib";
2
+ import { EventAction } from '@botonic/core';
2
3
  import { v7 as uuidv7 } from 'uuid';
3
4
  import { HtNodeWithContentType, } from './content-fields/hubtype-fields';
4
5
  import { getFlowBuilderPlugin } from './helpers';
5
- export var EventAction;
6
- (function (EventAction) {
7
- EventAction["FlowNode"] = "flow_node";
8
- EventAction["Keyword"] = "nlu_keyword";
9
- EventAction["IntentSmart"] = "nlu_intent_smart";
10
- EventAction["Knowledgebase"] = "knowledgebase";
11
- EventAction["Fallback"] = "fallback";
12
- EventAction["FeedbackCase"] = "feedback_case";
13
- })(EventAction || (EventAction = {}));
14
- export var KnowledgebaseFailReason;
15
- (function (KnowledgebaseFailReason) {
16
- KnowledgebaseFailReason["NoKnowledge"] = "no_knowledge";
17
- KnowledgebaseFailReason["Hallucination"] = "hallucination";
18
- })(KnowledgebaseFailReason || (KnowledgebaseFailReason = {}));
19
6
  export function trackEvent(request, eventAction, args) {
20
7
  return __awaiter(this, void 0, void 0, function* () {
21
8
  const flowBuilderPlugin = getFlowBuilderPlugin(request.plugins);
@@ -26,36 +13,33 @@ export function trackEvent(request, eventAction, args) {
26
13
  });
27
14
  }
28
15
  export function trackFlowContent(request, contents) {
29
- var _a;
30
16
  return __awaiter(this, void 0, void 0, function* () {
31
17
  const flowBuilderPlugin = getFlowBuilderPlugin(request.plugins);
32
18
  const cmsApi = flowBuilderPlugin.cmsApi;
33
19
  for (const content of contents) {
34
20
  const nodeContent = cmsApi.getNodeById(content.id);
35
21
  if (nodeContent.type !== HtNodeWithContentType.KNOWLEDGE_BASE) {
36
- const eventArgs = getContentEventArgs(request, {
37
- code: nodeContent.code,
38
- flowId: nodeContent.flow_id,
39
- flowName: flowBuilderPlugin.getFlowName(nodeContent.flow_id),
40
- id: nodeContent.id,
41
- isMeaningful: (_a = nodeContent.is_meaningful) !== null && _a !== void 0 ? _a : false,
42
- });
43
- yield trackEvent(request, EventAction.FlowNode, eventArgs);
22
+ const event = getContentEventArgs(request, nodeContent);
23
+ const { action } = event, eventArgs = __rest(event, ["action"]);
24
+ yield trackEvent(request, action, eventArgs);
44
25
  }
45
26
  }
46
27
  });
47
28
  }
48
- function getContentEventArgs(request, contentInfo) {
49
- var _a;
29
+ function getContentEventArgs(request, nodeContent) {
30
+ var _a, _b;
31
+ const flowBuilderPlugin = getFlowBuilderPlugin(request.plugins);
32
+ const flowName = flowBuilderPlugin.getFlowName(nodeContent.flow_id);
50
33
  const flowThreadId = (_a = request.session.flow_thread_id) !== null && _a !== void 0 ? _a : uuidv7();
51
34
  request.session.flow_thread_id = flowThreadId;
52
35
  return {
36
+ action: EventAction.FlowNode,
53
37
  flowThreadId,
54
- flowId: contentInfo.flowId,
55
- flowName: contentInfo.flowName,
56
- flowNodeId: contentInfo.id,
57
- flowNodeContentId: contentInfo.code,
58
- flowNodeIsMeaningful: contentInfo.isMeaningful,
38
+ flowId: nodeContent.flow_id,
39
+ flowName: flowName,
40
+ flowNodeId: nodeContent.id,
41
+ flowNodeContentId: nodeContent.code,
42
+ flowNodeIsMeaningful: (_b = nodeContent.is_meaningful) !== null && _b !== void 0 ? _b : false,
59
43
  };
60
44
  }
61
45
  //# sourceMappingURL=tracking.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tracking.js","sourceRoot":"","sources":["../../src/tracking.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAA;AAGnC,OAAO,EAEL,qBAAqB,GACtB,MAAM,iCAAiC,CAAA;AACxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAEhD,MAAM,CAAN,IAAY,WAOX;AAPD,WAAY,WAAW;IACrB,qCAAsB,CAAA;IACtB,sCAAuB,CAAA;IACvB,+CAAgC,CAAA;IAChC,8CAA+B,CAAA;IAC/B,oCAAqB,CAAA;IACrB,6CAA8B,CAAA;AAChC,CAAC,EAPW,WAAW,KAAX,WAAW,QAOtB;AAED,MAAM,CAAN,IAAY,uBAGX;AAHD,WAAY,uBAAuB;IACjC,uDAA4B,CAAA;IAC5B,0DAA+B,CAAA;AACjC,CAAC,EAHW,uBAAuB,KAAvB,uBAAuB,QAGlC;AAED,MAAM,UAAgB,UAAU,CAC9B,OAAsB,EACtB,WAAwB,EACxB,IAA0B;;QAE1B,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAC/D,IAAI,iBAAiB,CAAC,UAAU,EAAE;YAChC,MAAM,iBAAiB,CAAC,UAAU,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,CAAC,CAAA;SAC/D;QACD,OAAM;IACR,CAAC;CAAA;AAED,MAAM,UAAgB,gBAAgB,CACpC,OAAsB,EACtB,QAAuB;;;QAEvB,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAC/D,MAAM,MAAM,GAAG,iBAAiB,CAAC,MAAM,CAAA;QACvC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;YAC9B,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAoB,OAAO,CAAC,EAAE,CAAC,CAAA;YACrE,IAAI,WAAW,CAAC,IAAI,KAAK,qBAAqB,CAAC,cAAc,EAAE;gBAC7D,MAAM,SAAS,GAAG,mBAAmB,CAAC,OAAO,EAAE;oBAC7C,IAAI,EAAE,WAAW,CAAC,IAAI;oBACtB,MAAM,EAAE,WAAW,CAAC,OAAO;oBAC3B,QAAQ,EAAE,iBAAiB,CAAC,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC;oBAC5D,EAAE,EAAE,WAAW,CAAC,EAAE;oBAClB,YAAY,EAAE,MAAA,WAAW,CAAC,aAAa,mCAAI,KAAK;iBACjD,CAAC,CAAA;gBACF,MAAM,UAAU,CAAC,OAAO,EAAE,WAAW,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;aAC3D;SACF;;CACF;AAED,SAAS,mBAAmB,CAC1B,OAAsB,EACtB,WAMC;;IAED,MAAM,YAAY,GAAG,MAAA,OAAO,CAAC,OAAO,CAAC,cAAc,mCAAI,MAAM,EAAE,CAAA;IAC/D,OAAO,CAAC,OAAO,CAAC,cAAc,GAAG,YAAY,CAAA;IAE7C,OAAO;QACL,YAAY;QACZ,MAAM,EAAE,WAAW,CAAC,MAAM;QAC1B,QAAQ,EAAE,WAAW,CAAC,QAAQ;QAC9B,UAAU,EAAE,WAAW,CAAC,EAAE;QAC1B,iBAAiB,EAAE,WAAW,CAAC,IAAI;QACnC,oBAAoB,EAAE,WAAW,CAAC,YAAY;KAC/C,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"tracking.js","sourceRoot":"","sources":["../../src/tracking.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAa,MAAM,eAAe,CAAA;AAEtD,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAA;AAGnC,OAAO,EAEL,qBAAqB,GACtB,MAAM,iCAAiC,CAAA;AACxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAEhD,MAAM,UAAgB,UAAU,CAC9B,OAAsB,EACtB,WAAwB,EACxB,IAA0B;;QAE1B,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAC/D,IAAI,iBAAiB,CAAC,UAAU,EAAE;YAChC,MAAM,iBAAiB,CAAC,UAAU,CAAC,OAAO,EAAE,WAAW,EAAE,IAAI,CAAC,CAAA;SAC/D;QACD,OAAM;IACR,CAAC;CAAA;AAED,MAAM,UAAgB,gBAAgB,CACpC,OAAsB,EACtB,QAAuB;;QAEvB,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAC/D,MAAM,MAAM,GAAG,iBAAiB,CAAC,MAAM,CAAA;QACvC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;YAC9B,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAoB,OAAO,CAAC,EAAE,CAAC,CAAA;YACrE,IAAI,WAAW,CAAC,IAAI,KAAK,qBAAqB,CAAC,cAAc,EAAE;gBAC7D,MAAM,KAAK,GAAG,mBAAmB,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;gBACvD,MAAM,EAAE,MAAM,KAAmB,KAAK,EAAnB,SAAS,UAAK,KAAK,EAAhC,UAAwB,CAAQ,CAAA;gBACtC,MAAM,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,CAAA;aAC7C;SACF;IACH,CAAC;CAAA;AAED,SAAS,mBAAmB,CAC1B,OAAsB,EACtB,WAA8B;;IAE9B,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAC/D,MAAM,QAAQ,GAAG,iBAAiB,CAAC,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;IACnE,MAAM,YAAY,GAAG,MAAA,OAAO,CAAC,OAAO,CAAC,cAAc,mCAAI,MAAM,EAAE,CAAA;IAC/D,OAAO,CAAC,OAAO,CAAC,cAAc,GAAG,YAAY,CAAA;IAE7C,OAAO;QACL,MAAM,EAAE,WAAW,CAAC,QAAQ;QAC5B,YAAY;QACZ,MAAM,EAAE,WAAW,CAAC,OAAO;QAC3B,QAAQ,EAAE,QAAQ;QAClB,UAAU,EAAE,WAAW,CAAC,EAAE;QAC1B,iBAAiB,EAAE,WAAW,CAAC,IAAI;QACnC,oBAAoB,EAAE,MAAA,WAAW,CAAC,aAAa,mCAAI,KAAK;KACzD,CAAA;AACH,CAAC"}
@@ -1,4 +1,4 @@
1
- import { BotContext, PluginPreRequest, ResolvedPlugins } from '@botonic/core';
1
+ import { BotContext, InferenceResponse, KnowledgeBasesResponse, PluginPreRequest, ResolvedPlugins } from '@botonic/core';
2
2
  import { FlowContent } from './content-fields';
3
3
  import { HtFlowBuilderData } from './content-fields/hubtype-fields';
4
4
  export interface InShadowingConfig {
@@ -23,14 +23,19 @@ export interface BotonicPluginFlowBuilderOptions<TPlugins extends ResolvedPlugin
23
23
  customRatingMessageEnabled?: boolean;
24
24
  }
25
25
  export type TrackEventFunction<TPlugins extends ResolvedPlugins = ResolvedPlugins, TExtraData = any> = (request: BotContext<TPlugins, TExtraData>, eventAction: string, args?: Record<string, any>) => Promise<void>;
26
- export type KnowledgeBaseFunction<TPlugins extends ResolvedPlugins = ResolvedPlugins, TExtraData = any> = (request: BotContext<TPlugins, TExtraData>, sources: string[], instructions: string, messageId: string, memoryLength: number) => Promise<KnowledgeBaseResponse>;
27
- export type AiAgentFunction<TPlugins extends ResolvedPlugins = ResolvedPlugins, TExtraData = any> = (request: BotContext<TPlugins, TExtraData>, aiAgentArgs: AiAgentArgs) => Promise<AgenticOutputMessage[] | undefined>;
26
+ export type KnowledgeBaseFunction<TPlugins extends ResolvedPlugins = ResolvedPlugins, TExtraData = any> = (request: BotContext<TPlugins, TExtraData>, sources: string[], instructions: string, messageId: string, memoryLength: number) => Promise<KnowledgeBasesResponse>;
27
+ export type AiAgentFunction<TPlugins extends ResolvedPlugins = ResolvedPlugins, TExtraData = any> = (request: BotContext<TPlugins, TExtraData>, aiAgentArgs: AiAgentArgs) => Promise<InferenceResponse>;
28
+ export interface GuardrailRule {
29
+ name: string;
30
+ description: string;
31
+ }
28
32
  export interface AiAgentArgs {
29
33
  name: string;
30
34
  instructions: string;
31
35
  activeTools?: {
32
36
  name: string;
33
37
  }[];
38
+ inputGuardrailRules?: GuardrailRule[];
34
39
  }
35
40
  export type ContentFilter<TPlugins extends ResolvedPlugins = ResolvedPlugins, TExtraData = any> = (request: BotContext<TPlugins, TExtraData>, content: FlowContent) => Promise<FlowContent> | FlowContent;
36
41
  export interface FlowBuilderApiOptions {
@@ -48,13 +53,6 @@ export declare enum FlowBuilderJSONVersion {
48
53
  DRAFT = "draft",
49
54
  LATEST = "latest"
50
55
  }
51
- export interface KnowledgeBaseResponse {
52
- inferenceId: string;
53
- hasKnowledge: boolean;
54
- isFaithful: boolean;
55
- chunkIds: string[];
56
- answer: string;
57
- }
58
56
  export interface SmartIntentResponse {
59
57
  data: {
60
58
  smart_intent_title: string;
@@ -68,37 +66,3 @@ export interface SmartIntentResponse {
68
66
  export interface PayloadParamsBase {
69
67
  followUpContentID?: string;
70
68
  }
71
- export interface OutputBaseMessage {
72
- type: 'text' | 'textWithButtons' | 'carousel' | 'exit';
73
- }
74
- export interface TextMessage extends OutputBaseMessage {
75
- type: 'text';
76
- content: {
77
- text: string;
78
- };
79
- }
80
- export interface TextWithButtonsMessage extends OutputBaseMessage {
81
- type: 'textWithButtons';
82
- content: {
83
- text: string;
84
- buttons: string[];
85
- };
86
- }
87
- export interface CarouselMessage extends OutputBaseMessage {
88
- type: 'carousel';
89
- content: {
90
- elements: {
91
- title: string;
92
- subtitle: string;
93
- image: string;
94
- button: {
95
- text: string;
96
- url: string;
97
- };
98
- }[];
99
- };
100
- }
101
- export interface ExitMessage extends OutputBaseMessage {
102
- type: 'exit';
103
- }
104
- export type AgenticOutputMessage = TextMessage | TextWithButtonsMessage | CarouselMessage | ExitMessage;
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AA8EA,MAAM,CAAN,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,+CAAyB,CAAA;IACzB,iDAA2B,CAAA;AAC7B,CAAC,EAHW,kBAAkB,KAAlB,kBAAkB,QAG7B;AAED,MAAM,CAAN,IAAY,sBAGX;AAHD,WAAY,sBAAsB;IAChC,yCAAe,CAAA;IACf,2CAAiB,CAAA;AACnB,CAAC,EAHW,sBAAsB,KAAtB,sBAAsB,QAGjC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AA8FA,MAAM,CAAN,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,+CAAyB,CAAA;IACzB,iDAA2B,CAAA;AAC7B,CAAC,EAHW,kBAAkB,KAAlB,kBAAkB,QAG7B;AAED,MAAM,CAAN,IAAY,sBAGX;AAHD,WAAY,sBAAsB;IAChC,yCAAe,CAAA;IACf,2CAAiB,CAAA;AACnB,CAAC,EAHW,sBAAsB,KAAtB,sBAAsB,QAGjC"}
@@ -1,7 +1,7 @@
1
- import { __awaiter } from "tslib";
2
- import { NluType } from '@botonic/core';
1
+ import { __awaiter, __rest } from "tslib";
2
+ import { EventAction, NluType } from '@botonic/core';
3
3
  import { REG_EXP_PATTERN } from '../constants';
4
- import { EventAction, trackEvent } from '../tracking';
4
+ import { trackEvent } from '../tracking';
5
5
  export class KeywordMatcher {
6
6
  constructor({ cmsApi, locale, request }) {
7
7
  this.cmsApi = cmsApi;
@@ -63,16 +63,18 @@ export class KeywordMatcher {
63
63
  }
64
64
  trackKeywordEvent() {
65
65
  return __awaiter(this, void 0, void 0, function* () {
66
- const eventArgs = {
66
+ const event = {
67
+ action: EventAction.Keyword,
68
+ flowThreadId: this.request.session.flow_thread_id,
69
+ flowNodeId: this.keywordNodeId,
70
+ flowId: this.flowId,
67
71
  nluKeywordName: this.matchedKeyword,
68
72
  nluKeywordIsRegex: this.isRegExp,
69
73
  nluKeywordMessageId: this.request.input.message_id,
70
74
  userInput: this.request.input.data,
71
- flowThreadId: this.request.session.flow_thread_id,
72
- flowId: this.flowId,
73
- flowNodeId: this.keywordNodeId,
74
75
  };
75
- yield trackEvent(this.request, EventAction.Keyword, eventArgs);
76
+ const { action } = event, eventArgs = __rest(event, ["action"]);
77
+ yield trackEvent(this.request, action, eventArgs);
76
78
  });
77
79
  }
78
80
  }
@@ -1 +1 @@
1
- {"version":3,"file":"keyword.js","sourceRoot":"","sources":["../../../src/user-input/keyword.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"keyword.js","sourceRoot":"","sources":["../../../src/user-input/keyword.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
- import { __awaiter } from "tslib";
2
- import { NluType } from '@botonic/core';
1
+ import { __awaiter, __rest } from "tslib";
2
+ import { EventAction, NluType } from '@botonic/core';
3
3
  import axios from 'axios';
4
4
  import { getFlowBuilderPlugin } from '../helpers';
5
- import { EventAction, trackEvent } from '../tracking';
5
+ import { trackEvent } from '../tracking';
6
6
  export class SmartIntentsApi {
7
7
  constructor(cmsApi, currentRequest, smartIntentsConfig, flowId) {
8
8
  this.cmsApi = cmsApi;
@@ -33,7 +33,8 @@ export class SmartIntentsApi {
33
33
  matchedValue: smartIntentNode.content.title,
34
34
  payload: targetPayload,
35
35
  };
36
- yield trackEvent(this.currentRequest, EventAction.IntentSmart, {
36
+ const event = {
37
+ action: EventAction.IntentSmart,
37
38
  nluIntentSmartTitle: response.data.smart_intent_title,
38
39
  nluIntentSmartNumUsed: response.data.smart_intents_used.length,
39
40
  nluIntentSmartMessageId: this.currentRequest.input.message_id,
@@ -41,7 +42,9 @@ export class SmartIntentsApi {
41
42
  flowThreadId: this.currentRequest.session.flow_thread_id,
42
43
  flowId: smartIntentNode.flow_id,
43
44
  flowNodeId: smartIntentNode.id,
44
- });
45
+ };
46
+ const { action } = event, eventArgs = __rest(event, ["action"]);
47
+ yield trackEvent(this.currentRequest, action, eventArgs);
45
48
  return smartIntentNode;
46
49
  }
47
50
  }
@@ -1 +1 @@
1
- {"version":3,"file":"smart-intent.js","sourceRoot":"","sources":["../../../src/user-input/smart-intent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"smart-intent.js","sourceRoot":"","sources":["../../../src/user-input/smart-intent.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@botonic/plugin-flow-builder",
3
- "version": "0.37.1",
3
+ "version": "0.37.2-alpha.0",
4
4
  "main": "./lib/cjs/index.js",
5
5
  "module": "./lib/esm/index.js",
6
6
  "description": "Use Flow Builder to show your contents",
@@ -14,7 +14,7 @@
14
14
  "lint_core": "../../node_modules/.bin/eslint_d --cache --quiet 'src/**/*.ts*'"
15
15
  },
16
16
  "dependencies": {
17
- "@botonic/react": "^0.37.1",
17
+ "@botonic/react": "0.37.2-alpha.0",
18
18
  "axios": "^1.10.0",
19
19
  "uuid": "^10.0.0"
20
20
  },
@@ -1,5 +1,6 @@
1
1
  import { FlowContent } from '../content-fields'
2
2
  import { FlowAiAgent } from '../content-fields/flow-ai-agent'
3
+ import { GuardrailRule } from '../types'
3
4
  import { FlowBuilderContext } from './index'
4
5
 
5
6
  export async function getContentsByAiAgent({
@@ -24,12 +25,21 @@ export async function getContentsByAiAgent({
24
25
  return []
25
26
  }
26
27
 
28
+ const activeInputGuardrailRules: GuardrailRule[] =
29
+ aiAgentContent.inputGuardrailRules
30
+ ?.filter(rule => rule.is_active)
31
+ ?.map(rule => ({
32
+ name: rule.name,
33
+ description: rule.description,
34
+ })) || []
35
+
27
36
  const aiAgentResponse = await flowBuilderPlugin.getAiAgentResponse?.(
28
37
  request,
29
38
  {
30
39
  name: aiAgentContent.name,
31
40
  instructions: aiAgentContent.instructions,
32
41
  activeTools: aiAgentContent.activeTools,
42
+ inputGuardrailRules: activeInputGuardrailRules,
33
43
  }
34
44
  )
35
45
 
@@ -37,11 +47,11 @@ export async function getContentsByAiAgent({
37
47
  return []
38
48
  }
39
49
 
40
- if (aiAgentResponse.length === 1 && aiAgentResponse[0].type === 'exit') {
50
+ if (aiAgentResponse.exit) {
41
51
  return []
42
52
  }
43
53
 
44
- aiAgentContent.responses = aiAgentResponse
54
+ aiAgentContent.responses = aiAgentResponse.messages
45
55
 
46
56
  return contents
47
57
  }
@@ -1,8 +1,9 @@
1
+ import { EventAction, EventFallback } from '@botonic/core'
1
2
  import { ActionRequest } from '@botonic/react'
2
3
 
3
4
  import { FlowBuilderApi } from '../api'
4
5
  import { FlowContent } from '../content-fields'
5
- import { EventAction, trackEvent } from '../tracking'
6
+ import { trackEvent } from '../tracking'
6
7
  import { FlowBuilderContext } from './index'
7
8
 
8
9
  export async function getContentsByFallback({
@@ -30,11 +31,15 @@ async function getFallbackNode(cmsApi: FlowBuilderApi, request: ActionRequest) {
30
31
  const fallbackNode = cmsApi.getFallbackNode(isFirstFallbackOption)
31
32
  request.session.user.extra_data.isFirstFallbackOption = !isFirstFallbackOption
32
33
 
33
- await trackEvent(request, EventAction.Fallback, {
34
- userInput: request.input.data,
34
+ const event: EventFallback = {
35
+ action: EventAction.Fallback,
36
+ userInput: request.input.data as string,
35
37
  fallbackOut: isFirstFallbackOption ? 1 : 2,
36
38
  fallbackMessageId: request.input.message_id,
37
- })
39
+ }
40
+ const { action, ...eventArgs } = event
41
+
42
+ await trackEvent(request, action, eventArgs)
38
43
 
39
44
  return fallbackNode
40
45
  }