@botonic/plugin-flow-builder 0.22.6-alpha.1 → 0.23.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 (59) hide show
  1. package/lib/cjs/action/index.js +7 -32
  2. package/lib/cjs/action/index.js.map +1 -1
  3. package/lib/cjs/action/intent.js +7 -11
  4. package/lib/cjs/action/intent.js.map +1 -1
  5. package/lib/cjs/action/keyword.js +3 -7
  6. package/lib/cjs/action/keyword.js.map +1 -1
  7. package/lib/cjs/action/tracking.d.ts +16 -2
  8. package/lib/cjs/action/tracking.js +19 -3
  9. package/lib/cjs/action/tracking.js.map +1 -1
  10. package/lib/cjs/action/user-input.js +1 -5
  11. package/lib/cjs/action/user-input.js.map +1 -1
  12. package/lib/cjs/api.d.ts +2 -1
  13. package/lib/cjs/api.js +1 -0
  14. package/lib/cjs/api.js.map +1 -1
  15. package/lib/cjs/content-fields/flow-handoff.js +6 -9
  16. package/lib/cjs/content-fields/flow-handoff.js.map +1 -1
  17. package/lib/cjs/content-fields/flow-text.d.ts +1 -0
  18. package/lib/cjs/content-fields/flow-text.js +15 -1
  19. package/lib/cjs/content-fields/flow-text.js.map +1 -1
  20. package/lib/cjs/index.d.ts +2 -0
  21. package/lib/cjs/index.js +2 -0
  22. package/lib/cjs/index.js.map +1 -1
  23. package/lib/cjs/types.d.ts +2 -1
  24. package/lib/cjs/types.js.map +1 -1
  25. package/lib/esm/action/index.js +10 -35
  26. package/lib/esm/action/index.js.map +1 -1
  27. package/lib/esm/action/intent.js +8 -12
  28. package/lib/esm/action/intent.js.map +1 -1
  29. package/lib/esm/action/keyword.js +4 -8
  30. package/lib/esm/action/keyword.js.map +1 -1
  31. package/lib/esm/action/tracking.d.ts +16 -2
  32. package/lib/esm/action/tracking.js +18 -2
  33. package/lib/esm/action/tracking.js.map +1 -1
  34. package/lib/esm/action/user-input.js +2 -6
  35. package/lib/esm/action/user-input.js.map +1 -1
  36. package/lib/esm/api.d.ts +2 -1
  37. package/lib/esm/api.js +1 -0
  38. package/lib/esm/api.js.map +1 -1
  39. package/lib/esm/content-fields/flow-handoff.js +7 -10
  40. package/lib/esm/content-fields/flow-handoff.js.map +1 -1
  41. package/lib/esm/content-fields/flow-text.d.ts +1 -0
  42. package/lib/esm/content-fields/flow-text.js +15 -1
  43. package/lib/esm/content-fields/flow-text.js.map +1 -1
  44. package/lib/esm/index.d.ts +2 -0
  45. package/lib/esm/index.js +2 -0
  46. package/lib/esm/index.js.map +1 -1
  47. package/lib/esm/types.d.ts +2 -1
  48. package/lib/esm/types.js.map +1 -1
  49. package/package.json +2 -3
  50. package/src/action/index.tsx +10 -46
  51. package/src/action/intent.ts +9 -16
  52. package/src/action/keyword.ts +4 -11
  53. package/src/action/tracking.ts +22 -3
  54. package/src/action/user-input.ts +2 -9
  55. package/src/api.ts +3 -1
  56. package/src/content-fields/flow-handoff.tsx +8 -14
  57. package/src/content-fields/flow-text.tsx +23 -1
  58. package/src/index.ts +3 -0
  59. package/src/types.ts +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"keyword.js","sourceRoot":"","sources":["../../../src/action/keyword.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,SAAS,GACV,MAAM,iDAAiD,CAAA;AAKxD,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAEvC,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAAsB,EACtB,MAAc,EACd,OAAsB,EACtB,SAAiB;IAEjB,MAAM,WAAW,GAAG,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;IAC9D,IAAI,CAAC,WAAW,EAAE;QAChB,OAAO,SAAS,CAAA;KACjB;IACD,MAAM,oBAAoB,GAAyB;QACjD,UAAU,EAAE,SAAS,CAAC,gBAAgB;QACtC,UAAU,EAAE;YACV,qBAAqB,EAAE,IAAI;SAC5B;KACF,CAAA;IACD,MAAM,UAAU,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAA;IAC/C,OAAO,WAAW,CAAA;AACpB,CAAC"}
1
+ {"version":3,"file":"keyword.js","sourceRoot":"","sources":["../../../src/action/keyword.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAElD,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAAsB,EACtB,MAAc,EACd,OAAsB,EACtB,SAAiB;IAEjB,MAAM,WAAW,GAAG,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;IAC9D,IAAI,CAAC,WAAW,EAAE;QAChB,OAAO,SAAS,CAAA;KACjB;IACD,MAAM,SAAS,GAAG;QAChB,qBAAqB,EAAE,IAAI;KAC5B,CAAA;IACD,MAAM,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAA;IAChE,OAAO,WAAW,CAAA;AACpB,CAAC"}
@@ -1,3 +1,17 @@
1
- import { HtEventProps } from '@botonic/plugin-hubtype-analytics/lib/cjs/types';
2
1
  import { ActionRequest } from '@botonic/react';
3
- export declare function trackEvent(request: ActionRequest, event: HtEventProps): Promise<void>;
2
+ export declare function trackEvent(request: ActionRequest, eventName: EventName, args?: Record<string, any>): Promise<void>;
3
+ export declare enum EventName {
4
+ botAgentRating = "bot_agent_rating",
5
+ botChannelRating = "bot_channel_rating",
6
+ botFaqUseful = "bot_faq_useful",
7
+ botRating = "bot_rating",
8
+ botFaq = "bot_faq",
9
+ botStart = "bot_start",
10
+ botOpen = "bot_open",
11
+ botAiModel = "bot_ai_model",
12
+ botKeywordsModel = "bot_keywords_model",
13
+ fallback = "fallback",
14
+ handoffOption = "handoff_option",
15
+ handoffSuccess = "handoff_success",
16
+ handoffFail = "handoff_fail"
17
+ }
@@ -1,9 +1,25 @@
1
1
  import { getFlowBuilderPlugin } from '../helpers';
2
- export async function trackEvent(request, event) {
2
+ export async function trackEvent(request, eventName, args) {
3
3
  const flowBuilderPlugin = getFlowBuilderPlugin(request.plugins);
4
4
  if (flowBuilderPlugin.trackEvent) {
5
- await flowBuilderPlugin.trackEvent(request, event.event_type, event);
5
+ await flowBuilderPlugin.trackEvent(request, eventName, args);
6
6
  }
7
7
  return;
8
8
  }
9
+ export var EventName;
10
+ (function (EventName) {
11
+ EventName["botAgentRating"] = "bot_agent_rating";
12
+ EventName["botChannelRating"] = "bot_channel_rating";
13
+ EventName["botFaqUseful"] = "bot_faq_useful";
14
+ EventName["botRating"] = "bot_rating";
15
+ EventName["botFaq"] = "bot_faq";
16
+ EventName["botStart"] = "bot_start";
17
+ EventName["botOpen"] = "bot_open";
18
+ EventName["botAiModel"] = "bot_ai_model";
19
+ EventName["botKeywordsModel"] = "bot_keywords_model";
20
+ EventName["fallback"] = "fallback";
21
+ EventName["handoffOption"] = "handoff_option";
22
+ EventName["handoffSuccess"] = "handoff_success";
23
+ EventName["handoffFail"] = "handoff_fail";
24
+ })(EventName || (EventName = {}));
9
25
  //# sourceMappingURL=tracking.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tracking.js","sourceRoot":"","sources":["../../../src/action/tracking.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAEjD,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,OAAsB,EAAE,KAAmB;IAC1E,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAC/D,IAAI,iBAAiB,CAAC,UAAU,EAAE;QAChC,MAAM,iBAAiB,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,CAAA;KACrE;IACD,OAAM;AACR,CAAC"}
1
+ {"version":3,"file":"tracking.js","sourceRoot":"","sources":["../../../src/action/tracking.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAEjD,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,OAAsB,EACtB,SAAoB,EACpB,IAA0B;IAE1B,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAC/D,IAAI,iBAAiB,CAAC,UAAU,EAAE;QAChC,MAAM,iBAAiB,CAAC,UAAU,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,CAAA;KAC7D;IACD,OAAM;AACR,CAAC;AAED,MAAM,CAAN,IAAY,SAcX;AAdD,WAAY,SAAS;IACnB,gDAAmC,CAAA;IACnC,oDAAuC,CAAA;IACvC,4CAA+B,CAAA;IAC/B,qCAAwB,CAAA;IACxB,+BAAkB,CAAA;IAClB,mCAAsB,CAAA;IACtB,iCAAoB,CAAA;IACpB,wCAA2B,CAAA;IAC3B,oDAAuC,CAAA;IACvC,kCAAqB,CAAA;IACrB,6CAAgC,CAAA;IAChC,+CAAkC,CAAA;IAClC,yCAA4B,CAAA;AAC9B,CAAC,EAdW,SAAS,KAAT,SAAS,QAcpB"}
@@ -1,14 +1,10 @@
1
- import { EventName, } from '@botonic/plugin-hubtype-analytics/lib/cjs/types';
2
1
  import { getNodeByIntent } from './intent';
3
2
  import { getNodeByKeyword } from './keyword';
4
- import { trackEvent } from './tracking';
3
+ import { EventName, trackEvent } from './tracking';
5
4
  export async function getNodeByUserInput(cmsApi, locale, request) {
6
5
  if (request.session.is_first_interaction) {
7
6
  const startNode = cmsApi.getStartNode();
8
- const event = {
9
- event_type: EventName.botStart,
10
- };
11
- await trackEvent(request, event);
7
+ await trackEvent(request, EventName.botStart);
12
8
  return startNode;
13
9
  }
14
10
  if (request.input.data) {
@@ -1 +1 @@
1
- {"version":3,"file":"user-input.js","sourceRoot":"","sources":["../../../src/action/user-input.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,SAAS,GACV,MAAM,iDAAiD,CAAA;AAKxD,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAEvC,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,MAAsB,EACtB,MAAc,EACd,OAAsB;IAEtB,IAAI,OAAO,CAAC,OAAO,CAAC,oBAAoB,EAAE;QACxC,MAAM,SAAS,GAAG,MAAM,CAAC,YAAY,EAAE,CAAA;QACvC,MAAM,KAAK,GAAkB;YAC3B,UAAU,EAAE,SAAS,CAAC,QAAQ;SAC/B,CAAA;QACD,MAAM,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;QAChC,OAAO,SAAS,CAAA;KACjB;IAED,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE;QACtB,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;QACnE,IAAI,YAAY;YAAE,OAAO,YAAY,CAAA;QAErC,MAAM,WAAW,GAAG,MAAM,gBAAgB,CACxC,MAAM,EACN,MAAM,EACN,OAAO,EACP,OAAO,CAAC,KAAK,CAAC,IAAI,CACnB,CAAA;QACD,IAAI,WAAW;YAAE,OAAO,WAAW,CAAA;KACpC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC"}
1
+ {"version":3,"file":"user-input.js","sourceRoot":"","sources":["../../../src/action/user-input.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAA;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAA;AAC5C,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAElD,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,MAAsB,EACtB,MAAc,EACd,OAAsB;IAEtB,IAAI,OAAO,CAAC,OAAO,CAAC,oBAAoB,EAAE;QACxC,MAAM,SAAS,GAAG,MAAM,CAAC,YAAY,EAAE,CAAA;QACvC,MAAM,UAAU,CAAC,OAAO,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAA;QAC7C,OAAO,SAAS,CAAA;KACjB;IAED,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE;QACtB,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;QACnE,IAAI,YAAY;YAAE,OAAO,YAAY,CAAA;QAErC,MAAM,WAAW,GAAG,MAAM,gBAAgB,CACxC,MAAM,EACN,MAAM,EACN,OAAO,EACP,OAAO,CAAC,KAAK,CAAC,IAAI,CACnB,CAAA;QACD,IAAI,WAAW;YAAE,OAAO,WAAW,CAAA;KACpC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC"}
package/lib/esm/api.d.ts CHANGED
@@ -1,9 +1,10 @@
1
- import { Input } from '@botonic/core';
1
+ import { Input, PluginPreRequest } from '@botonic/core';
2
2
  import { HtFlowBuilderData, HtIntentNode, HtNodeComponent, HtNodeWithContent } from './content-fields/hubtype-fields';
3
3
  import { FlowBuilderApiOptions } from './types';
4
4
  export declare class FlowBuilderApi {
5
5
  url: string;
6
6
  flow: HtFlowBuilderData;
7
+ request: PluginPreRequest;
7
8
  private constructor();
8
9
  static create(options: FlowBuilderApiOptions): Promise<FlowBuilderApi>;
9
10
  private getFlow;
package/lib/esm/api.js CHANGED
@@ -7,6 +7,7 @@ export class FlowBuilderApi {
7
7
  const newApi = new FlowBuilderApi();
8
8
  newApi.url = options.url;
9
9
  newApi.flow = (_a = options.flow) !== null && _a !== void 0 ? _a : (await newApi.getFlow(options.accessToken));
10
+ newApi.request = options.request;
10
11
  return newApi;
11
12
  }
12
13
  async getFlow(token) {
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,6 @@
1
1
  import { HandOffBuilder } from '@botonic/core';
2
- import { EventName, } from '@botonic/plugin-hubtype-analytics/lib/cjs/types';
3
2
  import React from 'react';
4
- import { trackEvent } from '../action/tracking';
3
+ import { EventName, trackEvent } from '../action/tracking';
5
4
  import { getQueueAvailability } from '../functions/conditional-queue-status';
6
5
  import { ContentFieldsBase } from './content-fields-base';
7
6
  export class FlowHandoff extends ContentFieldsBase {
@@ -35,15 +34,13 @@ export class FlowHandoff extends ContentFieldsBase {
35
34
  }
36
35
  if (this.queue) {
37
36
  const availabilityData = await getQueueAvailability(this.queue.id);
38
- const event = {
39
- event_type: EventName.handoffSuccess,
40
- event_data: {
41
- queue_open: availabilityData.open,
42
- available_agents: availabilityData.available_agents > 0,
43
- threshold_reached: availabilityData.availability_threshold_waiting_cases > 0,
44
- },
37
+ const eventArgs = {
38
+ queue_open: availabilityData.open,
39
+ queue_id: this.queue.id,
40
+ available_agents: availabilityData.available_agents > 0,
41
+ threshold_reached: availabilityData.availability_threshold_waiting_cases > 0,
45
42
  };
46
- await trackEvent(request, event);
43
+ await trackEvent(request, EventName.handoffSuccess, eventArgs);
47
44
  handOffBuilder.withQueue(this.queue.id);
48
45
  await handOffBuilder.handOff();
49
46
  }
@@ -1 +1 @@
1
- {"version":3,"file":"flow-handoff.js","sourceRoot":"","sources":["../../../src/content-fields/flow-handoff.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAEL,SAAS,GACV,MAAM,iDAAiD,CAAA;AAExD,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAE/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAA;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAmBzD,MAAM,OAAO,WAAY,SAAQ,iBAAiB;IAMhD,MAAM,CAAC,cAAc,CACnB,UAAyB,EACzB,MAAc,EACd,MAAsB;QAEtB,MAAM,UAAU,GAAG,IAAI,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;QACjD,UAAU,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAA;QACjC,UAAU,CAAC,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QAC1E,UAAU,CAAC,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAClD,UAAU,EACV,MAAM,EACN,MAAM,CACP,CAAA;QACD,UAAU,CAAC,iBAAiB,GAAG,UAAU,CAAC,OAAO,CAAC,eAAe,CAAA;QAEjE,OAAO,UAAU,CAAA;IACnB,CAAC;IAEO,MAAM,CAAC,kBAAkB,CAC/B,UAAyB,EACzB,MAAc,EACd,MAAsB;;QAEtB,IAAI,MAAA,UAAU,CAAC,MAAM,0CAAE,EAAE,EAAE;YACzB,MAAM,iBAAiB,GAAG,MAAM,CAAC,WAAW,CAC1C,MAAA,UAAU,CAAC,MAAM,0CAAE,EAAE,CACtB,CAAA;YACD,IAAI,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,EAAE;gBAAE,OAAO,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,EAAE,CAAA;SACxD;QAED,MAAM,SAAS,GAAG,MAAA,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAC/C,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,MAAM,CACrC,0CAAE,EAAE,CAAA;QAEL,IAAI,CAAC,SAAS;YAAE,OAAO,SAAS,CAAA;QAEhC,MAAM,aAAa,GAAG,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAA;QAEnD,OAAQ,aAA+B,CAAC,OAAO,CAAC,OAAO,CAAA;IACzD,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,OAAsB;QACpC,aAAa;QACb,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;QAC1D,cAAc,CAAC,uBAAuB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;QAC9D,IAAI,IAAI,CAAC,eAAe,EAAE;YACxB,cAAc,CAAC,mBAAmB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;SACzD;QACD,IAAI,IAAI,CAAC,KAAK,EAAE;YACd,MAAM,gBAAgB,GAAG,MAAM,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YAClE,MAAM,KAAK,GAAwB;gBACjC,UAAU,EAAE,SAAS,CAAC,cAAc;gBACpC,UAAU,EAAE;oBACV,UAAU,EAAE,gBAAgB,CAAC,IAAI;oBACjC,gBAAgB,EAAE,gBAAgB,CAAC,gBAAgB,GAAG,CAAC;oBACvD,iBAAiB,EACf,gBAAgB,CAAC,oCAAoC,GAAG,CAAC;iBAC5D;aACF,CAAA;YACD,MAAM,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAA;YAEhC,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YACvC,MAAM,cAAc,CAAC,OAAO,EAAE,CAAA;SAC/B;IACH,CAAC;IAED,SAAS;QACP,OAAO,yCAAK,CAAA;IACd,CAAC;CACF"}
1
+ {"version":3,"file":"flow-handoff.js","sourceRoot":"","sources":["../../../src/content-fields/flow-handoff.tsx"],"names":[],"mappings":"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"}
@@ -9,5 +9,6 @@ export declare class FlowText extends ContentFieldsBase {
9
9
  buttons: FlowButton[];
10
10
  buttonStyle: HtButtonStyle;
11
11
  static fromHubtypeCMS(cmsText: HtTextNode, locale: string, cmsApi: FlowBuilderApi): FlowText;
12
+ static replaceVariables(text: string, extraData?: Record<string, any>): string;
12
13
  toBotonic(id: string): JSX.Element;
13
14
  }
@@ -1,5 +1,6 @@
1
1
  import { Text } from '@botonic/react';
2
2
  import React from 'react';
3
+ import { VARIABLE_REGEX } from '../constants';
3
4
  import { ContentFieldsBase } from './content-fields-base';
4
5
  import { FlowButton } from './flow-button';
5
6
  import { HtButtonStyle } from './hubtype-fields';
@@ -15,10 +16,23 @@ export class FlowText extends ContentFieldsBase {
15
16
  const newText = new FlowText(cmsText.id);
16
17
  newText.code = cmsText.code;
17
18
  newText.buttonStyle = cmsText.content.buttons_style || HtButtonStyle.BUTTON;
18
- newText.text = this.getTextByLocale(locale, cmsText.content.text);
19
+ newText.text = this.replaceVariables(this.getTextByLocale(locale, cmsText.content.text), cmsApi.request.session.user.extra_data);
19
20
  newText.buttons = cmsText.content.buttons.map(button => FlowButton.fromHubtypeCMS(button, locale, cmsApi));
20
21
  return newText;
21
22
  }
23
+ static replaceVariables(text, extraData) {
24
+ const matches = text.match(VARIABLE_REGEX);
25
+ let replacedText = text;
26
+ if (matches && extraData) {
27
+ matches.forEach(match => {
28
+ var _a;
29
+ const variable = match.slice(1, -1);
30
+ const value = (_a = extraData[variable]) !== null && _a !== void 0 ? _a : match;
31
+ replacedText = replacedText.replace(match, value);
32
+ });
33
+ }
34
+ return replacedText;
35
+ }
22
36
  toBotonic(id) {
23
37
  return (React.createElement(Text, { key: id },
24
38
  this.text,
@@ -1 +1 @@
1
- {"version":3,"file":"flow-text.js","sourceRoot":"","sources":["../../../src/content-fields/flow-text.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAA;AACrC,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,EAAE,aAAa,EAAc,MAAM,kBAAkB,CAAA;AAE5D,MAAM,OAAO,QAAS,SAAQ,iBAAiB;IAA/C;;QACS,SAAI,GAAG,EAAE,CAAA;QACT,SAAI,GAAG,EAAE,CAAA;QACT,YAAO,GAAiB,EAAE,CAAA;QAC1B,gBAAW,GAAG,aAAa,CAAC,MAAM,CAAA;IA2B3C,CAAC;IAzBC,MAAM,CAAC,cAAc,CACnB,OAAmB,EACnB,MAAc,EACd,MAAsB;QAEtB,MAAM,OAAO,GAAG,IAAI,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;QACxC,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;QAC3B,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,IAAI,aAAa,CAAC,MAAM,CAAA;QAC3E,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QACjE,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CACrD,UAAU,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAClD,CAAA;QACD,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,SAAS,CAAC,EAAU;QAClB,OAAO,CACL,oBAAC,IAAI,IAAC,GAAG,EAAE,EAAE;YACV,IAAI,CAAC,IAAI;YACT,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,CACxC,MAAM,CAAC,YAAY,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,CACnD,CACI,CACR,CAAA;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"flow-text.js","sourceRoot":"","sources":["../../../src/content-fields/flow-text.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAA;AACrC,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAA;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,EAAE,aAAa,EAAc,MAAM,kBAAkB,CAAA;AAE5D,MAAM,OAAO,QAAS,SAAQ,iBAAiB;IAA/C;;QACS,SAAI,GAAG,EAAE,CAAA;QACT,SAAI,GAAG,EAAE,CAAA;QACT,YAAO,GAAiB,EAAE,CAAA;QAC1B,gBAAW,GAAG,aAAa,CAAC,MAAM,CAAA;IAgD3C,CAAC;IA9CC,MAAM,CAAC,cAAc,CACnB,OAAmB,EACnB,MAAc,EACd,MAAsB;QAEtB,MAAM,OAAO,GAAG,IAAI,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;QACxC,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;QAC3B,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,IAAI,aAAa,CAAC,MAAM,CAAA;QAC3E,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAClC,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAClD,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CACvC,CAAA;QACD,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CACrD,UAAU,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAClD,CAAA;QACD,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,MAAM,CAAC,gBAAgB,CACrB,IAAY,EACZ,SAA+B;QAE/B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAA;QAE1C,IAAI,YAAY,GAAG,IAAI,CAAA;QACvB,IAAI,OAAO,IAAI,SAAS,EAAE;YACxB,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;;gBACtB,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;gBACnC,MAAM,KAAK,GAAG,MAAA,SAAS,CAAC,QAAQ,CAAC,mCAAI,KAAK,CAAA;gBAC1C,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;YACnD,CAAC,CAAC,CAAA;SACH;QAED,OAAO,YAAY,CAAA;IACrB,CAAC;IAED,SAAS,CAAC,EAAU;QAClB,OAAO,CACL,oBAAC,IAAI,IAAC,GAAG,EAAE,EAAE;YACV,IAAI,CAAC,IAAI;YACT,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,CACxC,MAAM,CAAC,YAAY,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,CACnD,CACI,CACR,CAAA;IACH,CAAC;CACF"}
@@ -23,3 +23,5 @@ export default class BotonicPluginFlowBuilder implements Plugin {
23
23
  callFunction(functionNode: HtFunctionNode, locale: string): Promise<string>;
24
24
  }
25
25
  export * from './action';
26
+ export * from './content-fields';
27
+ export { BotonicPluginFlowBuilderOptions } from './types';
package/lib/esm/index.js CHANGED
@@ -20,6 +20,7 @@ export default class BotonicPluginFlowBuilder {
20
20
  url: this.flowUrl,
21
21
  flow: this.flow,
22
22
  accessToken: this.getAccessToken(request.session),
23
+ request: this.currentRequest,
23
24
  });
24
25
  }
25
26
  getContentsByCode(code, locale, prevContents) {
@@ -83,4 +84,5 @@ export default class BotonicPluginFlowBuilder {
83
84
  }
84
85
  }
85
86
  export * from './action';
87
+ export * from './content-fields';
86
88
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,EACL,YAAY,EAEZ,WAAW,EACX,SAAS,EACT,QAAQ,EACR,SAAS,EACT,sBAAsB,GACvB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAKL,qBAAqB,GACtB,MAAM,iCAAiC,CAAA;AACxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAE/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAE/C,MAAM,CAAC,OAAO,OAAO,wBAAwB;IAc3C,YAAqB,OAAwC;QAAxC,YAAO,GAAP,OAAO,CAAiC;QAC3D,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAA;QAC9B,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;QACxB,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAA;QAClC,IAAI,CAAC,cAAc,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAA;QACpD,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAA;QACpC,MAAM,eAAe,GAAG,OAAO,CAAC,eAAe,IAAI,EAAE,CAAA;QACrD,IAAI,CAAC,SAAS,mCAAQ,iBAAiB,GAAK,eAAe,CAAE,CAAA;IAC/D,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,OAAyB;QACjC,IAAI,CAAC,cAAc,GAAG,OAAO,CAAA;QAC7B,IAAI,CAAC,MAAM,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC;YACxC,GAAG,EAAE,IAAI,CAAC,OAAO;YACjB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW,EAAE,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC;YACjD,OAAO,EAAE,IAAI,CAAC,cAAc;SAC7B,CAAC,CAAA;IACJ,CAAC;IAED,iBAAiB,CACf,IAAY,EACZ,MAAc,EACd,YAA4B;QAE5B,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAsB,CAAA;QACjE,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,CAAA;IAC3D,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,EAAU,EACV,MAAc,EACd,YAA4B;QAE5B,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAsB,CAAA;QAC7D,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,CAAA;IAC3D,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,IAAuB,EACvB,MAAc,EACd,YAA4B;QAE5B,MAAM,QAAQ,GAAG,YAAY,IAAI,EAAE,CAAA;QAEnC,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAEjD,IAAI,IAAI,CAAC,IAAI,KAAK,qBAAqB,CAAC,QAAQ,EAAE;YAChD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;YACtD,OAAO,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;SACxD;aAAM;YACL,IAAI,OAAO;gBAAE,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YACnC,yCAAyC;YAEzC,IAAI,IAAI,CAAC,SAAS;gBAChB,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;SACnE;QAED,OAAO,QAAQ,CAAA;IACjB,CAAC;IAEO,cAAc,CACpB,cAA+B,EAC/B,MAAc;QAEd,QAAQ,cAAc,CAAC,IAAI,EAAE;YAC3B,KAAK,qBAAqB,CAAC,IAAI;gBAC7B,OAAO,QAAQ,CAAC,cAAc,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACrE,KAAK,qBAAqB,CAAC,KAAK;gBAC9B,OAAO,SAAS,CAAC,cAAc,CAAC,cAAc,EAAE,MAAM,CAAC,CAAA;YACzD,KAAK,qBAAqB,CAAC,QAAQ;gBACjC,OAAO,YAAY,CAAC,cAAc,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACzE,KAAK,qBAAqB,CAAC,KAAK;gBAC9B,OAAO,SAAS,CAAC,cAAc,CAAC,cAAc,EAAE,MAAM,CAAC,CAAA;YACzD,KAAK,qBAAqB,CAAC,oBAAoB;gBAC7C,OAAO,sBAAsB,CAAC,cAAc,CAAC,cAAc,EAAE,MAAM,CAAC,CAAA;YACtE,KAAK,qBAAqB,CAAC,OAAO;gBAChC,OAAO,WAAW,CAAC,cAAc,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACxE;gBACE,OAAO,SAAS,CAAA;SACnB;IACH,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,YAA4B,EAC5B,MAAc;;QAEd,MAAM,cAAc,GAAG,YAAY,CAAC,EAAE,CAAA;QACtC,MAAM,UAAU,GACd,CAAA,MAAA,YAAY,CAAC,OAAO,CAAC,SAAS;aAC3B,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,KAAK,MAAM,CAAC,0CACjC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,KAAI,EAAE,CAAA;QAEhE,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CACxB;YACE,OAAO,EAAE,IAAI,CAAC,cAAc;YAC5B,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;SAChE,EACD,GAAG,UAAU,CACd,CAAA;QACD,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CACtE,IAAI,CACL,CAAA;QACD,0CAA0C;QAC1C,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CACrD,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,cAAc,CACjC,CAAA;QACD,IAAI,CAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,CAAA,EAAE;YACnB,MAAM,IAAI,KAAK,CACb,wDAAwD,cAAc,EAAE,CACzE,CAAA;SACF;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,CAAA;IACzB,CAAC;CACF;AAED,cAAc,UAAU,CAAA;AACxB,cAAc,kBAAkB,CAAA"}
@@ -1,4 +1,4 @@
1
- import { Session } from '@botonic/core';
1
+ import { PluginPreRequest, Session } from '@botonic/core';
2
2
  import { ActionRequest } from '@botonic/react';
3
3
  import { HtFlowBuilderData } from './content-fields/hubtype-fields';
4
4
  export interface BotonicPluginFlowBuilderOptions {
@@ -13,6 +13,7 @@ export interface FlowBuilderApiOptions {
13
13
  url: string;
14
14
  flow?: HtFlowBuilderData;
15
15
  accessToken: string;
16
+ request: PluginPreRequest;
16
17
  }
17
18
  export declare enum ProcessEnvNodeEnvs {
18
19
  PRODUCTION = "production",
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAwBA,MAAM,CAAN,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,+CAAyB,CAAA;IACzB,iDAA2B,CAAA;AAC7B,CAAC,EAHW,kBAAkB,KAAlB,kBAAkB,QAG7B"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAyBA,MAAM,CAAN,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,+CAAyB,CAAA;IACzB,iDAA2B,CAAA;AAC7B,CAAC,EAHW,kBAAkB,KAAlB,kBAAkB,QAG7B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@botonic/plugin-flow-builder",
3
- "version": "0.22.6-alpha.1",
3
+ "version": "0.23.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",
@@ -47,8 +47,7 @@
47
47
  },
48
48
  "dependencies": {
49
49
  "@babel/runtime": "^7.21.0",
50
- "@botonic/react": "^0.22.6",
51
- "@botonic/plugin-hubtype-analytics": "0.22.0-alpha.5",
50
+ "@botonic/react": "^0.23.0",
52
51
  "axios": "^1.3.6"
53
52
  }
54
53
  }
@@ -1,17 +1,12 @@
1
- import {
2
- EventBotFaq,
3
- EventFallback,
4
- EventName,
5
- } from '@botonic/plugin-hubtype-analytics/lib/cjs/types'
6
1
  import { ActionRequest, Multichannel, RequestContext } from '@botonic/react'
7
2
  import React from 'react'
8
3
 
9
4
  import { FlowBuilderApi } from '../api'
10
- import { SOURCE_INFO_SEPARATOR, VARIABLE_REGEX } from '../constants'
11
- import { FlowContent, FlowHandoff, FlowText } from '../content-fields'
5
+ import { SOURCE_INFO_SEPARATOR } from '../constants'
6
+ import { FlowContent, FlowHandoff } from '../content-fields'
12
7
  import { HtNodeWithContent } from '../content-fields/hubtype-fields'
13
8
  import { getFlowBuilderPlugin } from '../helpers'
14
- import { trackEvent } from './tracking'
9
+ import { EventName, trackEvent } from './tracking'
15
10
  import { getNodeByUserInput } from './user-input'
16
11
 
17
12
  type FlowBuilderActionProps = {
@@ -43,22 +38,11 @@ export class FlowBuilderAction extends React.Component<FlowBuilderActionProps> {
43
38
  ) as FlowHandoff
44
39
  if (handoffContent) await handoffContent.doHandoff(request)
45
40
 
46
- const contentsWithoutHandoff = contents.filter(content =>
41
+ const contentsToRender = contents.filter(content =>
47
42
  content instanceof FlowHandoff ? false : true
48
43
  )
49
44
 
50
- const contentsWithVariables = contentsWithoutHandoff.map(content => {
51
- if (content instanceof FlowText) {
52
- console.log(content.text)
53
- content.text = replaceVariables(
54
- content.text,
55
- request.session.user.extra_data
56
- )
57
- }
58
- return content
59
- })
60
-
61
- return { contents: contentsWithVariables }
45
+ return { contents: contentsToRender }
62
46
  }
63
47
 
64
48
  render(): JSX.Element | JSX.Element[] {
@@ -90,13 +74,10 @@ async function getTargetNode(
90
74
  : (cmsApi.getNodeById(contentId) as HtNodeWithContent)
91
75
 
92
76
  if (targetNode) {
93
- const event: EventBotFaq = {
94
- event_type: EventName.botFaq,
95
- event_data: {
96
- faq_name: targetNode.code,
97
- },
77
+ const eventArgs = {
78
+ faq_name: targetNode.code,
98
79
  }
99
- await trackEvent(request, event)
80
+ await trackEvent(request, EventName.botFaq, eventArgs)
100
81
  return targetNode
101
82
  }
102
83
  return await getFallbackNode(cmsApi, request)
@@ -107,27 +88,10 @@ async function getFallbackNode(cmsApi: FlowBuilderApi, request: ActionRequest) {
107
88
  request.session.user.extra_data = { isFirstFallbackOption: true }
108
89
  }
109
90
  const isFirstFallbackOption =
110
- request.session.user.extra_data.isFirstFallbackOption
91
+ !!request.session.user.extra_data.isFirstFallbackOption
111
92
  const fallbackNode = cmsApi.getFallbackNode(isFirstFallbackOption)
112
93
  request.session.user.extra_data.isFirstFallbackOption = !isFirstFallbackOption
113
94
 
114
- const event: EventFallback = {
115
- event_type: EventName.fallback,
116
- }
117
- await trackEvent(request, event)
95
+ await trackEvent(request, EventName.fallback)
118
96
  return fallbackNode
119
97
  }
120
-
121
- function replaceVariables(text: string, extraData?: Record<string, any>) {
122
- const matches = text.match(VARIABLE_REGEX)
123
-
124
- if (matches && extraData) {
125
- matches.forEach(match => {
126
- const variable = match.slice(1, -1)
127
- const value = extraData[variable] ? extraData[variable] : match
128
- text = text.replace(match, value)
129
- })
130
- }
131
-
132
- return text
133
- }
@@ -1,7 +1,3 @@
1
- import {
2
- EventBotAiModel,
3
- EventName,
4
- } from '@botonic/plugin-hubtype-analytics/lib/cjs/types'
5
1
  import { ActionRequest } from '@botonic/react'
6
2
 
7
3
  import { FlowBuilderApi } from '../api'
@@ -9,28 +5,25 @@ import {
9
5
  HtIntentNode,
10
6
  HtNodeWithContent,
11
7
  } from '../content-fields/hubtype-fields'
12
- import { trackEvent } from './tracking'
8
+ import { EventName, trackEvent } from './tracking'
13
9
 
14
10
  export async function getNodeByIntent(
15
11
  cmsApi: FlowBuilderApi,
16
12
  locale: string,
17
13
  request: ActionRequest
18
- ) {
14
+ ): Promise<HtNodeWithContent | undefined> {
19
15
  const intentNode = cmsApi.getIntentNode(request.input, locale)
20
- const eventBotAiModel: EventBotAiModel = {
21
- event_type: EventName.botAiModel,
22
- event_data: {
23
- intent: request.input.intent as string,
24
- confidence: request.input.confidence as number,
25
- confidence_successful: true,
26
- },
16
+ const eventArgs = {
17
+ intent: request.input.intent as string,
18
+ confidence: request.input.confidence as number,
19
+ confidence_successful: true,
27
20
  }
28
21
  if (isIntentValid(intentNode, request, cmsApi) && intentNode?.target?.id) {
29
- await trackEvent(request, eventBotAiModel)
22
+ await trackEvent(request, EventName.botAiModel, eventArgs)
30
23
  return cmsApi.getNodeById<HtNodeWithContent>(intentNode.target.id)
31
24
  } else {
32
- eventBotAiModel.event_data.confidence_successful = false
33
- await trackEvent(request, eventBotAiModel)
25
+ eventArgs.confidence_successful = false
26
+ await trackEvent(request, EventName.botAiModel, eventArgs)
34
27
  return undefined
35
28
  }
36
29
  }
@@ -1,12 +1,8 @@
1
- import {
2
- EventBotKeywordModel,
3
- EventName,
4
- } from '@botonic/plugin-hubtype-analytics/lib/cjs/types'
5
1
  import { ActionRequest } from '@botonic/react'
6
2
 
7
3
  import { FlowBuilderApi } from '../api'
8
4
  import { HtNodeWithContent } from '../content-fields/hubtype-fields'
9
- import { trackEvent } from './tracking'
5
+ import { EventName, trackEvent } from './tracking'
10
6
 
11
7
  export async function getNodeByKeyword(
12
8
  cmsApi: FlowBuilderApi,
@@ -18,12 +14,9 @@ export async function getNodeByKeyword(
18
14
  if (!keywordNode) {
19
15
  return undefined
20
16
  }
21
- const eventBotKeywordModel: EventBotKeywordModel = {
22
- event_type: EventName.botKeywordsModel,
23
- event_data: {
24
- confidence_successful: true,
25
- },
17
+ const eventArgs = {
18
+ confidence_successful: true,
26
19
  }
27
- await trackEvent(request, eventBotKeywordModel)
20
+ await trackEvent(request, EventName.botKeywordsModel, eventArgs)
28
21
  return keywordNode
29
22
  }
@@ -1,12 +1,31 @@
1
- import { HtEventProps } from '@botonic/plugin-hubtype-analytics/lib/cjs/types'
2
1
  import { ActionRequest } from '@botonic/react'
3
2
 
4
3
  import { getFlowBuilderPlugin } from '../helpers'
5
4
 
6
- export async function trackEvent(request: ActionRequest, event: HtEventProps) {
5
+ export async function trackEvent(
6
+ request: ActionRequest,
7
+ eventName: EventName,
8
+ args?: Record<string, any>
9
+ ): Promise<void> {
7
10
  const flowBuilderPlugin = getFlowBuilderPlugin(request.plugins)
8
11
  if (flowBuilderPlugin.trackEvent) {
9
- await flowBuilderPlugin.trackEvent(request, event.event_type, event)
12
+ await flowBuilderPlugin.trackEvent(request, eventName, args)
10
13
  }
11
14
  return
12
15
  }
16
+
17
+ export enum EventName {
18
+ botAgentRating = 'bot_agent_rating',
19
+ botChannelRating = 'bot_channel_rating',
20
+ botFaqUseful = 'bot_faq_useful',
21
+ botRating = 'bot_rating',
22
+ botFaq = 'bot_faq',
23
+ botStart = 'bot_start',
24
+ botOpen = 'bot_open',
25
+ botAiModel = 'bot_ai_model',
26
+ botKeywordsModel = 'bot_keywords_model',
27
+ fallback = 'fallback',
28
+ handoffOption = 'handoff_option',
29
+ handoffSuccess = 'handoff_success',
30
+ handoffFail = 'handoff_fail',
31
+ }
@@ -1,14 +1,10 @@
1
- import {
2
- EventBotStart,
3
- EventName,
4
- } from '@botonic/plugin-hubtype-analytics/lib/cjs/types'
5
1
  import { ActionRequest } from '@botonic/react'
6
2
 
7
3
  import { FlowBuilderApi } from '../api'
8
4
  import { HtNodeWithContent } from '../content-fields/hubtype-fields'
9
5
  import { getNodeByIntent } from './intent'
10
6
  import { getNodeByKeyword } from './keyword'
11
- import { trackEvent } from './tracking'
7
+ import { EventName, trackEvent } from './tracking'
12
8
 
13
9
  export async function getNodeByUserInput(
14
10
  cmsApi: FlowBuilderApi,
@@ -17,10 +13,7 @@ export async function getNodeByUserInput(
17
13
  ): Promise<HtNodeWithContent | undefined> {
18
14
  if (request.session.is_first_interaction) {
19
15
  const startNode = cmsApi.getStartNode()
20
- const event: EventBotStart = {
21
- event_type: EventName.botStart,
22
- }
23
- await trackEvent(request, event)
16
+ await trackEvent(request, EventName.botStart)
24
17
  return startNode
25
18
  }
26
19
 
package/src/api.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { Input } from '@botonic/core'
1
+ import { Input, PluginPreRequest } from '@botonic/core'
2
2
  import axios from 'axios'
3
3
 
4
4
  import {
@@ -17,6 +17,7 @@ import { FlowBuilderApiOptions } from './types'
17
17
  export class FlowBuilderApi {
18
18
  url: string
19
19
  flow: HtFlowBuilderData
20
+ request: PluginPreRequest
20
21
 
21
22
  private constructor() {}
22
23
 
@@ -25,6 +26,7 @@ export class FlowBuilderApi {
25
26
 
26
27
  newApi.url = options.url
27
28
  newApi.flow = options.flow ?? (await newApi.getFlow(options.accessToken))
29
+ newApi.request = options.request
28
30
 
29
31
  return newApi
30
32
  }
@@ -1,12 +1,8 @@
1
1
  import { HandOffBuilder } from '@botonic/core'
2
- import {
3
- EventHandoffSuccess,
4
- EventName,
5
- } from '@botonic/plugin-hubtype-analytics/lib/cjs/types'
6
2
  import { ActionRequest } from '@botonic/react'
7
3
  import React from 'react'
8
4
 
9
- import { trackEvent } from '../action/tracking'
5
+ import { EventName, trackEvent } from '../action/tracking'
10
6
  import { FlowBuilderApi } from '../api'
11
7
  import { getQueueAvailability } from '../functions/conditional-queue-status'
12
8
  import { ContentFieldsBase } from './content-fields-base'
@@ -84,16 +80,14 @@ export class FlowHandoff extends ContentFieldsBase {
84
80
  }
85
81
  if (this.queue) {
86
82
  const availabilityData = await getQueueAvailability(this.queue.id)
87
- const event: EventHandoffSuccess = {
88
- event_type: EventName.handoffSuccess,
89
- event_data: {
90
- queue_open: availabilityData.open,
91
- available_agents: availabilityData.available_agents > 0,
92
- threshold_reached:
93
- availabilityData.availability_threshold_waiting_cases > 0,
94
- },
83
+ const eventArgs = {
84
+ queue_open: availabilityData.open,
85
+ queue_id: this.queue.id,
86
+ available_agents: availabilityData.available_agents > 0,
87
+ threshold_reached:
88
+ availabilityData.availability_threshold_waiting_cases > 0,
95
89
  }
96
- await trackEvent(request, event)
90
+ await trackEvent(request, EventName.handoffSuccess, eventArgs)
97
91
 
98
92
  handOffBuilder.withQueue(this.queue.id)
99
93
  await handOffBuilder.handOff()