@botonic/plugin-flow-builder 0.41.1-alpha.4 → 0.42.0-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.
- package/lib/cjs/action/index.d.ts +1 -0
- package/lib/cjs/action/index.js +9 -3
- package/lib/cjs/action/index.js.map +1 -1
- package/lib/cjs/api.js +1 -10
- package/lib/cjs/api.js.map +1 -1
- package/lib/cjs/content-fields/content-fields-base.d.ts +5 -1
- package/lib/cjs/content-fields/content-fields-base.js.map +1 -1
- package/lib/cjs/content-fields/flow-ai-agent.d.ts +2 -2
- package/lib/cjs/content-fields/flow-ai-agent.js +23 -7
- package/lib/cjs/content-fields/flow-ai-agent.js.map +1 -1
- package/lib/cjs/content-fields/flow-bot-action.d.ts +2 -1
- package/lib/cjs/content-fields/flow-bot-action.js +20 -1
- package/lib/cjs/content-fields/flow-bot-action.js.map +1 -1
- package/lib/cjs/content-fields/flow-button.d.ts +2 -1
- package/lib/cjs/content-fields/flow-button.js +7 -0
- package/lib/cjs/content-fields/flow-button.js.map +1 -1
- package/lib/cjs/content-fields/flow-carousel.d.ts +2 -4
- package/lib/cjs/content-fields/flow-carousel.js +8 -50
- package/lib/cjs/content-fields/flow-carousel.js.map +1 -1
- package/lib/cjs/content-fields/flow-channel-conditional.d.ts +14 -0
- package/lib/cjs/content-fields/flow-channel-conditional.js +55 -0
- package/lib/cjs/content-fields/flow-channel-conditional.js.map +1 -0
- package/lib/cjs/content-fields/flow-country-conditional.d.ts +13 -0
- package/lib/cjs/content-fields/flow-country-conditional.js +57 -0
- package/lib/cjs/content-fields/flow-country-conditional.js.map +1 -0
- package/lib/cjs/content-fields/flow-custom-conditional.d.ts +15 -0
- package/lib/cjs/content-fields/flow-custom-conditional.js +77 -0
- package/lib/cjs/content-fields/flow-custom-conditional.js.map +1 -0
- package/lib/cjs/content-fields/flow-element.d.ts +2 -0
- package/lib/cjs/content-fields/flow-element.js +8 -1
- package/lib/cjs/content-fields/flow-element.js.map +1 -1
- package/lib/cjs/content-fields/flow-go-to-flow.d.ts +13 -0
- package/lib/cjs/content-fields/flow-go-to-flow.js +47 -0
- package/lib/cjs/content-fields/flow-go-to-flow.js.map +1 -0
- package/lib/cjs/content-fields/flow-handoff.d.ts +1 -1
- package/lib/cjs/content-fields/flow-handoff.js +7 -0
- package/lib/cjs/content-fields/flow-handoff.js.map +1 -1
- package/lib/cjs/content-fields/flow-image.d.ts +2 -1
- package/lib/cjs/content-fields/flow-image.js +8 -1
- package/lib/cjs/content-fields/flow-image.js.map +1 -1
- package/lib/cjs/content-fields/flow-knowledge-base.d.ts +1 -1
- package/lib/cjs/content-fields/flow-knowledge-base.js +10 -1
- package/lib/cjs/content-fields/flow-knowledge-base.js.map +1 -1
- package/lib/cjs/content-fields/flow-queue-status-conditional.d.ts +30 -0
- package/lib/cjs/content-fields/flow-queue-status-conditional.js +99 -0
- package/lib/cjs/content-fields/flow-queue-status-conditional.js.map +1 -0
- package/lib/cjs/content-fields/flow-rating.d.ts +1 -1
- package/lib/cjs/content-fields/flow-rating.js +8 -1
- package/lib/cjs/content-fields/flow-rating.js.map +1 -1
- package/lib/cjs/content-fields/flow-text.d.ts +1 -3
- package/lib/cjs/content-fields/flow-text.js +7 -16
- package/lib/cjs/content-fields/flow-text.js.map +1 -1
- package/lib/cjs/content-fields/flow-video.d.ts +2 -1
- package/lib/cjs/content-fields/flow-video.js +8 -1
- package/lib/cjs/content-fields/flow-video.js.map +1 -1
- package/lib/cjs/content-fields/flow-webview.d.ts +2 -1
- package/lib/cjs/content-fields/flow-webview.js +8 -1
- package/lib/cjs/content-fields/flow-webview.js.map +1 -1
- package/lib/cjs/content-fields/flow-whatsapp-cta-url-button.d.ts +1 -1
- package/lib/cjs/content-fields/flow-whatsapp-cta-url-button.js +8 -1
- package/lib/cjs/content-fields/flow-whatsapp-cta-url-button.js.map +1 -1
- package/lib/cjs/content-fields/hubtype-fields/channel-conditional.d.ts +10 -0
- package/lib/cjs/content-fields/hubtype-fields/channel-conditional.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/channel-conditional.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/country-conditional.d.ts +10 -0
- package/lib/cjs/content-fields/hubtype-fields/country-conditional.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/country-conditional.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/custom-conditional.d.ts +11 -0
- package/lib/cjs/content-fields/hubtype-fields/custom-conditional.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/custom-conditional.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/go-to-flow.d.ts +4 -3
- package/lib/cjs/content-fields/hubtype-fields/node-types.d.ts +3 -3
- package/lib/cjs/content-fields/hubtype-fields/node-types.js +1 -1
- package/lib/cjs/content-fields/hubtype-fields/node-types.js.map +1 -1
- package/lib/cjs/content-fields/hubtype-fields/nodes.d.ts +2 -2
- package/lib/cjs/content-fields/hubtype-fields/queue-status-conditional.d.ts +25 -0
- package/lib/cjs/content-fields/hubtype-fields/queue-status-conditional.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/queue-status-conditional.js.map +1 -0
- package/lib/cjs/content-fields/index.d.ts +7 -2
- package/lib/cjs/content-fields/index.js +11 -1
- package/lib/cjs/content-fields/index.js.map +1 -1
- package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.d.ts +2 -1
- package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.js +7 -0
- package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.js.map +1 -1
- package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.d.ts +2 -1
- package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.js +7 -0
- package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.js.map +1 -1
- package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list.d.ts +1 -1
- package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js +8 -1
- package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js.map +1 -1
- package/lib/cjs/flow-factory.d.ts +12 -0
- package/lib/cjs/flow-factory.js +65 -0
- package/lib/cjs/flow-factory.js.map +1 -0
- package/lib/cjs/functions/index.d.ts +11 -10
- package/lib/cjs/functions/index.js +49 -12
- package/lib/cjs/functions/index.js.map +1 -1
- package/lib/cjs/index.d.ts +0 -3
- package/lib/cjs/index.js +13 -66
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/services/hubtype-queues-api.d.ts +14 -0
- package/lib/cjs/services/hubtype-queues-api.js +28 -0
- package/lib/cjs/services/hubtype-queues-api.js.map +1 -0
- package/lib/cjs/tracking.d.ts +3 -0
- package/lib/cjs/tracking.js +29 -15
- package/lib/cjs/tracking.js.map +1 -1
- package/lib/esm/action/index.d.ts +1 -0
- package/lib/esm/action/index.js +9 -3
- package/lib/esm/action/index.js.map +1 -1
- package/lib/esm/api.js +2 -11
- package/lib/esm/api.js.map +1 -1
- package/lib/esm/content-fields/content-fields-base.d.ts +5 -1
- package/lib/esm/content-fields/content-fields-base.js.map +1 -1
- package/lib/esm/content-fields/flow-ai-agent.d.ts +2 -2
- package/lib/esm/content-fields/flow-ai-agent.js +24 -8
- package/lib/esm/content-fields/flow-ai-agent.js.map +1 -1
- package/lib/esm/content-fields/flow-bot-action.d.ts +2 -1
- package/lib/esm/content-fields/flow-bot-action.js +21 -2
- package/lib/esm/content-fields/flow-bot-action.js.map +1 -1
- package/lib/esm/content-fields/flow-button.d.ts +2 -1
- package/lib/esm/content-fields/flow-button.js +7 -0
- package/lib/esm/content-fields/flow-button.js.map +1 -1
- package/lib/esm/content-fields/flow-carousel.d.ts +2 -4
- package/lib/esm/content-fields/flow-carousel.js +9 -51
- package/lib/esm/content-fields/flow-carousel.js.map +1 -1
- package/lib/esm/content-fields/flow-channel-conditional.d.ts +14 -0
- package/lib/esm/content-fields/flow-channel-conditional.js +51 -0
- package/lib/esm/content-fields/flow-channel-conditional.js.map +1 -0
- package/lib/esm/content-fields/flow-country-conditional.d.ts +13 -0
- package/lib/esm/content-fields/flow-country-conditional.js +53 -0
- package/lib/esm/content-fields/flow-country-conditional.js.map +1 -0
- package/lib/esm/content-fields/flow-custom-conditional.d.ts +15 -0
- package/lib/esm/content-fields/flow-custom-conditional.js +73 -0
- package/lib/esm/content-fields/flow-custom-conditional.js.map +1 -0
- package/lib/esm/content-fields/flow-element.d.ts +2 -0
- package/lib/esm/content-fields/flow-element.js +8 -1
- package/lib/esm/content-fields/flow-element.js.map +1 -1
- package/lib/esm/content-fields/flow-go-to-flow.d.ts +13 -0
- package/lib/esm/content-fields/flow-go-to-flow.js +43 -0
- package/lib/esm/content-fields/flow-go-to-flow.js.map +1 -0
- package/lib/esm/content-fields/flow-handoff.d.ts +1 -1
- package/lib/esm/content-fields/flow-handoff.js +7 -0
- package/lib/esm/content-fields/flow-handoff.js.map +1 -1
- package/lib/esm/content-fields/flow-image.d.ts +2 -1
- package/lib/esm/content-fields/flow-image.js +8 -1
- package/lib/esm/content-fields/flow-image.js.map +1 -1
- package/lib/esm/content-fields/flow-knowledge-base.d.ts +1 -1
- package/lib/esm/content-fields/flow-knowledge-base.js +10 -1
- package/lib/esm/content-fields/flow-knowledge-base.js.map +1 -1
- package/lib/esm/content-fields/flow-queue-status-conditional.d.ts +30 -0
- package/lib/esm/content-fields/flow-queue-status-conditional.js +95 -0
- package/lib/esm/content-fields/flow-queue-status-conditional.js.map +1 -0
- package/lib/esm/content-fields/flow-rating.d.ts +1 -1
- package/lib/esm/content-fields/flow-rating.js +8 -1
- package/lib/esm/content-fields/flow-rating.js.map +1 -1
- package/lib/esm/content-fields/flow-text.d.ts +1 -3
- package/lib/esm/content-fields/flow-text.js +9 -18
- package/lib/esm/content-fields/flow-text.js.map +1 -1
- package/lib/esm/content-fields/flow-video.d.ts +2 -1
- package/lib/esm/content-fields/flow-video.js +8 -1
- package/lib/esm/content-fields/flow-video.js.map +1 -1
- package/lib/esm/content-fields/flow-webview.d.ts +2 -1
- package/lib/esm/content-fields/flow-webview.js +8 -1
- package/lib/esm/content-fields/flow-webview.js.map +1 -1
- package/lib/esm/content-fields/flow-whatsapp-cta-url-button.d.ts +1 -1
- package/lib/esm/content-fields/flow-whatsapp-cta-url-button.js +8 -1
- package/lib/esm/content-fields/flow-whatsapp-cta-url-button.js.map +1 -1
- package/lib/esm/content-fields/hubtype-fields/channel-conditional.d.ts +10 -0
- package/lib/esm/content-fields/hubtype-fields/channel-conditional.js +2 -0
- package/lib/esm/content-fields/hubtype-fields/channel-conditional.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/country-conditional.d.ts +10 -0
- package/lib/esm/content-fields/hubtype-fields/country-conditional.js +2 -0
- package/lib/esm/content-fields/hubtype-fields/country-conditional.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/custom-conditional.d.ts +11 -0
- package/lib/esm/content-fields/hubtype-fields/custom-conditional.js +2 -0
- package/lib/esm/content-fields/hubtype-fields/custom-conditional.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/go-to-flow.d.ts +4 -3
- package/lib/esm/content-fields/hubtype-fields/node-types.d.ts +3 -3
- package/lib/esm/content-fields/hubtype-fields/node-types.js +1 -1
- package/lib/esm/content-fields/hubtype-fields/node-types.js.map +1 -1
- package/lib/esm/content-fields/hubtype-fields/nodes.d.ts +2 -2
- package/lib/esm/content-fields/hubtype-fields/queue-status-conditional.d.ts +25 -0
- package/lib/esm/content-fields/hubtype-fields/queue-status-conditional.js +2 -0
- package/lib/esm/content-fields/hubtype-fields/queue-status-conditional.js.map +1 -0
- package/lib/esm/content-fields/index.d.ts +7 -2
- package/lib/esm/content-fields/index.js +6 -1
- package/lib/esm/content-fields/index.js.map +1 -1
- package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.d.ts +2 -1
- package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.js +7 -0
- package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.js.map +1 -1
- package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.d.ts +2 -1
- package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.js +7 -0
- package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.js.map +1 -1
- package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list.d.ts +1 -1
- package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js +8 -1
- package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js.map +1 -1
- package/lib/esm/flow-factory.d.ts +12 -0
- package/lib/esm/flow-factory.js +61 -0
- package/lib/esm/flow-factory.js.map +1 -0
- package/lib/esm/functions/index.d.ts +11 -10
- package/lib/esm/functions/index.js +46 -11
- package/lib/esm/functions/index.js.map +1 -1
- package/lib/esm/index.d.ts +0 -3
- package/lib/esm/index.js +14 -67
- package/lib/esm/index.js.map +1 -1
- package/lib/esm/services/hubtype-queues-api.d.ts +14 -0
- package/lib/esm/services/hubtype-queues-api.js +24 -0
- package/lib/esm/services/hubtype-queues-api.js.map +1 -0
- package/lib/esm/tracking.d.ts +3 -0
- package/lib/esm/tracking.js +27 -14
- package/lib/esm/tracking.js.map +1 -1
- package/package.json +2 -2
- package/src/action/index.tsx +11 -3
- package/src/api.ts +3 -11
- package/src/content-fields/content-fields-base.ts +8 -0
- package/src/content-fields/flow-ai-agent.tsx +41 -8
- package/src/content-fields/flow-bot-action.tsx +22 -2
- package/src/content-fields/flow-button.tsx +6 -1
- package/src/content-fields/flow-carousel.tsx +7 -109
- package/src/content-fields/flow-channel-conditional.tsx +65 -0
- package/src/content-fields/flow-country-conditional.tsx +67 -0
- package/src/content-fields/flow-custom-conditional.tsx +98 -0
- package/src/content-fields/flow-element.tsx +7 -2
- package/src/content-fields/flow-go-to-flow.tsx +51 -0
- package/src/content-fields/flow-handoff.tsx +7 -1
- package/src/content-fields/flow-image.tsx +8 -2
- package/src/content-fields/flow-knowledge-base.tsx +9 -1
- package/src/content-fields/flow-queue-status-conditional.tsx +130 -0
- package/src/content-fields/flow-rating.tsx +6 -1
- package/src/content-fields/flow-text.tsx +6 -32
- package/src/content-fields/flow-video.tsx +8 -2
- package/src/content-fields/flow-webview.tsx +9 -1
- package/src/content-fields/flow-whatsapp-cta-url-button.tsx +7 -1
- package/src/content-fields/hubtype-fields/channel-conditional.ts +11 -0
- package/src/content-fields/hubtype-fields/country-conditional.ts +11 -0
- package/src/content-fields/hubtype-fields/custom-conditional.ts +12 -0
- package/src/content-fields/hubtype-fields/go-to-flow.ts +4 -3
- package/src/content-fields/hubtype-fields/node-types.ts +1 -1
- package/src/content-fields/hubtype-fields/nodes.ts +10 -1
- package/src/content-fields/hubtype-fields/queue-status-conditional.ts +53 -0
- package/src/content-fields/index.ts +15 -0
- package/src/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.tsx +7 -1
- package/src/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.tsx +6 -0
- package/src/content-fields/whatsapp-button-list/flow-whatsapp-button-list.tsx +7 -1
- package/src/flow-factory.ts +126 -0
- package/src/functions/index.ts +77 -11
- package/src/index.ts +24 -120
- package/src/{functions/conditional-queue-status.ts → services/hubtype-queues-api.ts} +7 -41
- package/src/tracking.ts +35 -12
- package/lib/cjs/functions/conditional-bot-variable.d.ts +0 -8
- package/lib/cjs/functions/conditional-bot-variable.js +0 -11
- package/lib/cjs/functions/conditional-bot-variable.js.map +0 -1
- package/lib/cjs/functions/conditional-country.d.ts +0 -7
- package/lib/cjs/functions/conditional-country.js +0 -9
- package/lib/cjs/functions/conditional-country.js.map +0 -1
- package/lib/cjs/functions/conditional-provider.d.ts +0 -7
- package/lib/cjs/functions/conditional-provider.js +0 -9
- package/lib/cjs/functions/conditional-provider.js.map +0 -1
- package/lib/cjs/functions/conditional-queue-status.d.ts +0 -29
- package/lib/cjs/functions/conditional-queue-status.js +0 -51
- package/lib/cjs/functions/conditional-queue-status.js.map +0 -1
- package/lib/esm/functions/conditional-bot-variable.d.ts +0 -8
- package/lib/esm/functions/conditional-bot-variable.js +0 -7
- package/lib/esm/functions/conditional-bot-variable.js.map +0 -1
- package/lib/esm/functions/conditional-country.d.ts +0 -7
- package/lib/esm/functions/conditional-country.js +0 -5
- package/lib/esm/functions/conditional-country.js.map +0 -1
- package/lib/esm/functions/conditional-provider.d.ts +0 -7
- package/lib/esm/functions/conditional-provider.js +0 -5
- package/lib/esm/functions/conditional-provider.js.map +0 -1
- package/lib/esm/functions/conditional-queue-status.d.ts +0 -29
- package/lib/esm/functions/conditional-queue-status.js +0 -45
- package/lib/esm/functions/conditional-queue-status.js.map +0 -1
- package/src/functions/conditional-bot-variable.ts +0 -18
- package/src/functions/conditional-country.ts +0 -14
- package/src/functions/conditional-provider.ts +0 -14
package/lib/esm/api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":";AACA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACxB,SAAS,EACT,WAAW,GACZ,MAAM,aAAa,CAAA;AACpB,OAAO,EAUL,qBAAqB,
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ActionRequest } from '@botonic/react';
|
|
2
|
+
import { HtMediaFileLocale, HtNodeLink, HtQueueLocale, HtTextLocale, HtVideoLocale } from './hubtype-fields';
|
|
2
3
|
export declare abstract class ContentFieldsBase {
|
|
3
4
|
readonly id: string;
|
|
5
|
+
code: string;
|
|
6
|
+
followUp?: HtNodeLink;
|
|
4
7
|
constructor(id: string);
|
|
8
|
+
abstract trackFlow(request: ActionRequest): Promise<void>;
|
|
5
9
|
static getTextByLocale(locale: string, text: HtTextLocale[]): string;
|
|
6
10
|
static getAssetByLocale(locale: string, asset: HtMediaFileLocale[]): string;
|
|
7
11
|
static getVideoByLocale(locale: string, video: HtVideoLocale[]): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"content-fields-base.js","sourceRoot":"","sources":["../../../src/content-fields/content-fields-base.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"content-fields-base.js","sourceRoot":"","sources":["../../../src/content-fields/content-fields-base.ts"],"names":[],"mappings":"AAUA,MAAM,OAAgB,iBAAiB;IAIrC,YAA4B,EAAU;QAAV,OAAE,GAAF,EAAE,CAAQ;IAAG,CAAC;IAI1C,MAAM,CAAC,eAAe,CAAC,MAAc,EAAE,IAAoB;;QACzD,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAA;QAClD,OAAO,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,mCAAI,EAAE,CAAA;IAC9B,CAAC;IAED,MAAM,CAAC,gBAAgB,CAAC,MAAc,EAAE,KAA0B;;QAChE,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAA;QACnD,OAAO,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,mCAAI,EAAE,CAAA;IAC3B,CAAC;IAED,MAAM,CAAC,gBAAgB,CAAC,MAAc,EAAE,KAAsB;;QAC5D,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAA;QACnD,OAAO,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,GAAG,mCAAI,EAAE,CAAA;IAC1B,CAAC;IAED,MAAM,CAAC,gBAAgB,CACrB,MAAc,EACd,MAAuB;QAEvB,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,CAAA;IACtD,CAAC;CACF"}
|
|
@@ -4,7 +4,6 @@ import { ActionRequest } from '@botonic/react';
|
|
|
4
4
|
import { ContentFieldsBase } from './content-fields-base';
|
|
5
5
|
import { HtAiAgentNode, HtInputGuardrailRule } from './hubtype-fields/ai-agent';
|
|
6
6
|
export declare class FlowAiAgent extends ContentFieldsBase {
|
|
7
|
-
code: string;
|
|
8
7
|
name: string;
|
|
9
8
|
instructions: string;
|
|
10
9
|
activeTools?: {
|
|
@@ -17,5 +16,6 @@ export declare class FlowAiAgent extends ContentFieldsBase {
|
|
|
17
16
|
}[];
|
|
18
17
|
responses: AgenticOutputMessage[];
|
|
19
18
|
static fromHubtypeCMS(component: HtAiAgentNode): FlowAiAgent;
|
|
20
|
-
|
|
19
|
+
trackFlow(request: ActionRequest): Promise<void>;
|
|
20
|
+
toBotonic(id: string): JSX.Element;
|
|
21
21
|
}
|
|
@@ -1,32 +1,48 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { __awaiter } from "tslib";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
|
+
import { Button, Carousel, Text } from '@botonic/react';
|
|
4
|
+
import { EMPTY_PAYLOAD, SOURCE_INFO_SEPARATOR } from '../constants';
|
|
5
|
+
import { trackOneContent } from '../tracking';
|
|
2
6
|
import { ContentFieldsBase } from './content-fields-base';
|
|
3
|
-
import {
|
|
4
|
-
import { FlowText } from './flow-text';
|
|
7
|
+
import { FlowElement } from './flow-element';
|
|
5
8
|
export class FlowAiAgent extends ContentFieldsBase {
|
|
6
9
|
constructor() {
|
|
7
10
|
super(...arguments);
|
|
8
|
-
this.code = '';
|
|
9
11
|
this.name = '';
|
|
10
12
|
this.instructions = '';
|
|
11
13
|
this.responses = [];
|
|
12
14
|
}
|
|
13
15
|
static fromHubtypeCMS(component) {
|
|
14
16
|
const newAiAgent = new FlowAiAgent(component.id);
|
|
17
|
+
newAiAgent.code = component.code;
|
|
15
18
|
newAiAgent.name = component.content.name;
|
|
16
19
|
newAiAgent.instructions = component.content.instructions;
|
|
17
20
|
newAiAgent.activeTools = component.content.active_tools;
|
|
18
21
|
newAiAgent.inputGuardrailRules =
|
|
19
22
|
component.content.input_guardrail_rules || [];
|
|
20
23
|
newAiAgent.sources = component.content.sources;
|
|
24
|
+
newAiAgent.followUp = component.follow_up;
|
|
21
25
|
return newAiAgent;
|
|
22
26
|
}
|
|
23
|
-
|
|
27
|
+
trackFlow(request) {
|
|
28
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
29
|
+
// We can call trackFlowContent here but the function no track events for AiAgent contents
|
|
30
|
+
// Review how we can track here the knowledge base event
|
|
31
|
+
yield trackOneContent(request, this);
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
toBotonic(id) {
|
|
24
35
|
return (_jsx(_Fragment, { children: this.responses.map((response) => {
|
|
25
|
-
if (response.type === 'text'
|
|
26
|
-
return
|
|
36
|
+
if (response.type === 'text') {
|
|
37
|
+
return _jsx(Text, { children: response.content.text }, id);
|
|
38
|
+
}
|
|
39
|
+
if (response.type === 'textWithButtons') {
|
|
40
|
+
return (_jsxs(Text, { children: [response.content.text, response.content.buttons.map((button, buttonIndex) => {
|
|
41
|
+
return (_jsx(Button, Object.assign({ payload: `${EMPTY_PAYLOAD}${SOURCE_INFO_SEPARATOR}${buttonIndex}` }, { children: button.text }), buttonIndex));
|
|
42
|
+
})] }, id));
|
|
27
43
|
}
|
|
28
44
|
if (response.type === 'carousel') {
|
|
29
|
-
return
|
|
45
|
+
return (_jsx(Carousel, { children: response.content.elements.map(element => FlowElement.fromAIAgent(id, element).toBotonic(id)) }, id));
|
|
30
46
|
}
|
|
31
47
|
return _jsx(_Fragment, {});
|
|
32
48
|
}) }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flow-ai-agent.js","sourceRoot":"","sources":["../../../src/content-fields/flow-ai-agent.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"flow-ai-agent.js","sourceRoot":"","sources":["../../../src/content-fields/flow-ai-agent.tsx"],"names":[],"mappings":";;AACA,OAAO,EAAiB,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAA;AAEtE,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAA;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAC7C,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,iBAAY,GAAW,EAAE,CAAA;QAKzB,cAAS,GAA2B,EAAE,CAAA;IA+D/C,CAAC;IA7DC,MAAM,CAAC,cAAc,CAAC,SAAwB;QAC5C,MAAM,UAAU,GAAG,IAAI,WAAW,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QAChD,UAAU,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAA;QAChC,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,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,OAAO,CAAA;QAC9C,UAAU,CAAC,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAA;QAEzC,OAAO,UAAU,CAAA;IACnB,CAAC;IAEK,SAAS,CAAC,OAAsB;;YACpC,0FAA0F;YAC1F,wDAAwD;YACxD,MAAM,eAAe,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;QACtC,CAAC;KAAA;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;gCACpD,OAAO,CACL,KAAC,MAAM,kBAEL,OAAO,EAAE,GAAG,aAAa,GAAG,qBAAqB,GAAG,WAAW,EAAE,gBAEhE,MAAM,CAAC,IAAI,KAHP,WAAW,CAIT,CACV,CAAA;4BACH,CAAC,CAAC,KAXO,EAAE,CAYN,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"}
|
|
@@ -6,7 +6,8 @@ import { HtBotActionNode } from './hubtype-fields';
|
|
|
6
6
|
export declare class FlowBotAction extends ContentFieldsBase {
|
|
7
7
|
code: string;
|
|
8
8
|
payload: string;
|
|
9
|
-
static fromHubtypeCMS(cmsBotAction: HtBotActionNode,
|
|
9
|
+
static fromHubtypeCMS(cmsBotAction: HtBotActionNode, cmsApi: FlowBuilderApi): FlowBotAction;
|
|
10
|
+
trackFlow(request: ActionRequest): Promise<void>;
|
|
10
11
|
doBotAction(request: ActionRequest): void;
|
|
11
12
|
toBotonic(): JSX.Element;
|
|
12
13
|
}
|
|
@@ -1,13 +1,32 @@
|
|
|
1
|
+
import { __awaiter, __rest } from "tslib";
|
|
1
2
|
import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { BotonicAction } from '@botonic/core';
|
|
3
|
+
import { BotonicAction, EventAction } from '@botonic/core';
|
|
4
|
+
import { getCommonFlowContentEventArgsForContentId, trackEvent, } from '../tracking';
|
|
3
5
|
import { ContentFieldsBase } from './content-fields-base';
|
|
4
6
|
export class FlowBotAction extends ContentFieldsBase {
|
|
5
|
-
static fromHubtypeCMS(cmsBotAction,
|
|
7
|
+
static fromHubtypeCMS(cmsBotAction, cmsApi) {
|
|
6
8
|
const newBotAction = new FlowBotAction(cmsBotAction.id);
|
|
7
9
|
newBotAction.code = cmsBotAction.code;
|
|
8
10
|
newBotAction.payload = cmsApi.createPayloadWithParams(cmsBotAction);
|
|
11
|
+
newBotAction.followUp = cmsBotAction.follow_up;
|
|
9
12
|
return newBotAction;
|
|
10
13
|
}
|
|
14
|
+
trackFlow(request) {
|
|
15
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
16
|
+
const { flowThreadId, flowId, flowName, flowNodeId, flowNodeContentId } = getCommonFlowContentEventArgsForContentId(request, this.id);
|
|
17
|
+
const eventBotAction = {
|
|
18
|
+
action: EventAction.BotAction,
|
|
19
|
+
flowThreadId,
|
|
20
|
+
flowId,
|
|
21
|
+
flowName,
|
|
22
|
+
flowNodeId,
|
|
23
|
+
flowNodeContentId,
|
|
24
|
+
payload: this.payload,
|
|
25
|
+
};
|
|
26
|
+
const { action } = eventBotAction, eventArgs = __rest(eventBotAction, ["action"]);
|
|
27
|
+
yield trackEvent(request, action, eventArgs);
|
|
28
|
+
});
|
|
29
|
+
}
|
|
11
30
|
doBotAction(request) {
|
|
12
31
|
request.session._botonic_action = `${BotonicAction.Redirect}:${this.payload}`;
|
|
13
32
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flow-bot-action.js","sourceRoot":"","sources":["../../../src/content-fields/flow-bot-action.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"flow-bot-action.js","sourceRoot":"","sources":["../../../src/content-fields/flow-bot-action.tsx"],"names":[],"mappings":";;AAAA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAkB,MAAM,eAAe,CAAA;AAI1E,OAAO,EACL,yCAAyC,EACzC,UAAU,GACX,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAGzD,MAAM,OAAO,aAAc,SAAQ,iBAAiB;IAIlD,MAAM,CAAC,cAAc,CACnB,YAA6B,EAC7B,MAAsB;QAEtB,MAAM,YAAY,GAAG,IAAI,aAAa,CAAC,YAAY,CAAC,EAAE,CAAC,CAAA;QACvD,YAAY,CAAC,IAAI,GAAG,YAAY,CAAC,IAAI,CAAA;QACrC,YAAY,CAAC,OAAO,GAAG,MAAM,CAAC,uBAAuB,CAAC,YAAY,CAAC,CAAA;QACnE,YAAY,CAAC,QAAQ,GAAG,YAAY,CAAC,SAAS,CAAA;QAE9C,OAAO,YAAY,CAAA;IACrB,CAAC;IAEK,SAAS,CAAC,OAAsB;;YACpC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,iBAAiB,EAAE,GACrE,yCAAyC,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,CAAA;YAC7D,MAAM,cAAc,GAAmB;gBACrC,MAAM,EAAE,WAAW,CAAC,SAAS;gBAC7B,YAAY;gBACZ,MAAM;gBACN,QAAQ;gBACR,UAAU;gBACV,iBAAiB;gBACjB,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAA;YACD,MAAM,EAAE,MAAM,KAAmB,cAAc,EAA5B,SAAS,UAAK,cAAc,EAAzC,UAAwB,CAAiB,CAAA;YAC/C,MAAM,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,CAAA;QAC9C,CAAC;KAAA;IAED,WAAW,CAAC,OAAsB;QAChC,OAAO,CAAC,OAAO,CAAC,eAAe,GAAG,GAAG,aAAa,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,EAAE,CAAA;IAC/E,CAAC;IAED,SAAS;QACP,OAAO,mBAAK,CAAA;IACd,CAAC;CACF"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
import { Webview } from '@botonic/react';
|
|
2
|
+
import { ActionRequest, Webview } from '@botonic/react';
|
|
3
3
|
import { FlowBuilderApi } from '../api';
|
|
4
4
|
import { ContentFieldsBase } from './content-fields-base';
|
|
5
5
|
import { FlowWebview } from './flow-webview';
|
|
@@ -24,6 +24,7 @@ export declare class FlowButton extends ContentFieldsBase {
|
|
|
24
24
|
static fromRating(button: HtRatingButton): FlowButton;
|
|
25
25
|
static getUrlId(cmsButton: HtButton, locale: string): string | undefined;
|
|
26
26
|
static getTargetWebview(cmsApi: FlowBuilderApi, targetId: string): FlowWebview | undefined;
|
|
27
|
+
trackFlow(_request: ActionRequest): Promise<void>;
|
|
27
28
|
renderButton(buttonIndex: number, buttonStyle?: HtButtonStyle): JSX.Element;
|
|
28
29
|
private getButtonPayload;
|
|
29
30
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { __awaiter } from "tslib";
|
|
1
2
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
3
|
import { Button, Reply } from '@botonic/react';
|
|
3
4
|
import { SOURCE_INFO_SEPARATOR } from '../constants';
|
|
@@ -76,6 +77,12 @@ export class FlowButton extends ContentFieldsBase {
|
|
|
76
77
|
}
|
|
77
78
|
return FlowWebview.fromHubtypeCMS(targetNode);
|
|
78
79
|
}
|
|
80
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
81
|
+
trackFlow(_request) {
|
|
82
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
83
|
+
// Not apply for these content because it is a child of another Message
|
|
84
|
+
});
|
|
85
|
+
}
|
|
79
86
|
renderButton(buttonIndex, buttonStyle) {
|
|
80
87
|
if (buttonStyle === HtButtonStyle.QUICK_REPLY) {
|
|
81
88
|
return (_jsx(Reply, Object.assign({ payload: this.getButtonPayload(buttonIndex) }, { children: this.text }), this.id));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flow-button.js","sourceRoot":"","sources":["../../../src/content-fields/flow-button.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"flow-button.js","sourceRoot":"","sources":["../../../src/content-fields/flow-button.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
import { CarouselMessage } from '@botonic/core';
|
|
3
2
|
import { ActionRequest } from '@botonic/react';
|
|
4
3
|
import { FlowBuilderApi } from '../api';
|
|
5
4
|
import { ContentFieldsBase } from './content-fields-base';
|
|
6
5
|
import { FlowElement } from './flow-element';
|
|
7
6
|
import { HtCarouselNode } from './hubtype-fields';
|
|
8
7
|
export declare class FlowCarousel extends ContentFieldsBase {
|
|
9
|
-
code: string;
|
|
10
8
|
elements: FlowElement[];
|
|
11
9
|
static fromHubtypeCMS(component: HtCarouselNode, locale: string, cmsApi: FlowBuilderApi): FlowCarousel;
|
|
12
|
-
|
|
13
|
-
toBotonic(id: string
|
|
10
|
+
trackFlow(request: ActionRequest): Promise<void>;
|
|
11
|
+
toBotonic(id: string): JSX.Element;
|
|
14
12
|
}
|
|
@@ -1,69 +1,27 @@
|
|
|
1
|
+
import { __awaiter } from "tslib";
|
|
1
2
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
3
|
+
import { Carousel } from '@botonic/react';
|
|
4
|
+
import { trackOneContent } from '../tracking';
|
|
4
5
|
import { ContentFieldsBase } from './content-fields-base';
|
|
5
6
|
import { FlowElement } from './flow-element';
|
|
6
|
-
const DEFAULT_TEXT_MESSAGE = 'These are the options';
|
|
7
7
|
export class FlowCarousel extends ContentFieldsBase {
|
|
8
8
|
constructor() {
|
|
9
9
|
super(...arguments);
|
|
10
|
-
this.code = '';
|
|
11
10
|
this.elements = [];
|
|
12
11
|
}
|
|
13
12
|
static fromHubtypeCMS(component, locale, cmsApi) {
|
|
14
13
|
const newCarousel = new FlowCarousel(component.id);
|
|
15
14
|
newCarousel.code = component.code;
|
|
16
15
|
newCarousel.elements = component.content.elements.map(element => FlowElement.fromHubtypeCMS(element, locale, cmsApi));
|
|
16
|
+
newCarousel.followUp = component.follow_up;
|
|
17
17
|
return newCarousel;
|
|
18
18
|
}
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
if (!isValid) {
|
|
24
|
-
console.warn('Cannot use WhatsappInteractiveMediaCarousel for Whatsapp created by AIAgent', carouselMessage.content);
|
|
25
|
-
}
|
|
26
|
-
return isValid;
|
|
27
|
-
};
|
|
28
|
-
if (isWhatsapp(request.session) && areAllButtonsValid()) {
|
|
29
|
-
if (carouselMessage.content.elements.length === 1) {
|
|
30
|
-
const element = carouselMessage.content.elements[0];
|
|
31
|
-
console.log('displaying whatsapp cta url button with element', element);
|
|
32
|
-
// TODO: Add a new fromAIAgent method in FlowWhatsappCtaUrlButtonNode to create a WhatsappCTAUrlButton from an AIAgent message
|
|
33
|
-
return (_jsx(WhatsappCTAUrlButton, { body: element.title, headerType: WhatsappCTAUrlHeaderType.Image, headerImage: element.image, footer: element.subtitle, displayText: element.button.text, url: element.button.url }, id));
|
|
34
|
-
}
|
|
35
|
-
return (_jsx(WhatsappInteractiveMediaCarousel, { cards: carouselMessage.content.elements.map(element => {
|
|
36
|
-
const buttonText = element.button.text;
|
|
37
|
-
const buttonUrl = element.button.url;
|
|
38
|
-
const imageLink = element.image;
|
|
39
|
-
return {
|
|
40
|
-
text: `*${element.title}*\n${element.subtitle}`,
|
|
41
|
-
action: { buttonText, buttonUrl, imageLink },
|
|
42
|
-
};
|
|
43
|
-
}), textMessage: carouselMessage.content.text || DEFAULT_TEXT_MESSAGE }));
|
|
44
|
-
}
|
|
45
|
-
return (_jsx(Carousel, { children: carouselMessage.content.elements.map((element, index) => FlowElement.fromAIAgent(`${id}-element-${index}`, element).toBotonic(id)) }, id));
|
|
19
|
+
trackFlow(request) {
|
|
20
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
21
|
+
yield trackOneContent(request, this);
|
|
22
|
+
});
|
|
46
23
|
}
|
|
47
|
-
toBotonic(id
|
|
48
|
-
if (isWhatsapp(request.session)) {
|
|
49
|
-
// TODO: Improve this logic to ensure what to do if the buttons are not CTA URL buttons
|
|
50
|
-
if (this.elements.length === 1) {
|
|
51
|
-
const element = this.elements[0];
|
|
52
|
-
return (_jsx(WhatsappCTAUrlButton, { body: element.title, headerType: WhatsappCTAUrlHeaderType.Image, headerImage: element.image, displayText: element.button.text, url: element.button.url }, id));
|
|
53
|
-
}
|
|
54
|
-
return (_jsx(WhatsappInteractiveMediaCarousel, { cards: this.elements.map(element => {
|
|
55
|
-
var _a, _b;
|
|
56
|
-
const buttonText = ((_a = element.button) === null || _a === void 0 ? void 0 : _a.text) || '';
|
|
57
|
-
const buttonUrl = ((_b = element.button) === null || _b === void 0 ? void 0 : _b.url) || '';
|
|
58
|
-
const imageLink = element.image || '';
|
|
59
|
-
return {
|
|
60
|
-
text: element.title,
|
|
61
|
-
action: { buttonText, buttonUrl, imageLink },
|
|
62
|
-
};
|
|
63
|
-
}),
|
|
64
|
-
// TODO: Add the text message in flow builder frontend and take it from the carousel node with different languages
|
|
65
|
-
textMessage: DEFAULT_TEXT_MESSAGE }));
|
|
66
|
-
}
|
|
24
|
+
toBotonic(id) {
|
|
67
25
|
return (_jsx(Carousel, { children: this.elements.map(element => element.toBotonic(id)) }, id));
|
|
68
26
|
}
|
|
69
27
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flow-carousel.js","sourceRoot":"","sources":["../../../src/content-fields/flow-carousel.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"flow-carousel.js","sourceRoot":"","sources":["../../../src/content-fields/flow-carousel.tsx"],"names":[],"mappings":";;AAAA,OAAO,EAAiB,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAIxD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAG5C,MAAM,OAAO,YAAa,SAAQ,iBAAiB;IAAnD;;QACS,aAAQ,GAAkB,EAAE,CAAA;IA4BrC,CAAC;IA1BC,MAAM,CAAC,cAAc,CACnB,SAAyB,EACzB,MAAc,EACd,MAAsB;QAEtB,MAAM,WAAW,GAAG,IAAI,YAAY,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QAClD,WAAW,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAA;QACjC,WAAW,CAAC,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAC9D,WAAW,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,CACpD,CAAA;QACD,WAAW,CAAC,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAA;QAE1C,OAAO,WAAW,CAAA;IACpB,CAAC;IAEK,SAAS,CAAC,OAAsB;;YACpC,MAAM,eAAe,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;QACtC,CAAC;KAAA;IAED,SAAS,CAAC,EAAU;QAClB,OAAO,CACL,KAAC,QAAQ,cACN,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,IADvC,EAAE,CAEN,CACZ,CAAA;IACH,CAAC;CACF"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { ActionRequest } from '@botonic/react';
|
|
3
|
+
import { ContentFieldsBase } from './content-fields-base';
|
|
4
|
+
import { HtChannelConditionalNode } from './hubtype-fields/channel-conditional';
|
|
5
|
+
import { HtFunctionResult } from './hubtype-fields/function';
|
|
6
|
+
export declare class FlowChannelConditional extends ContentFieldsBase {
|
|
7
|
+
resultMapping: HtFunctionResult[];
|
|
8
|
+
conditionalResult?: HtFunctionResult;
|
|
9
|
+
channelResult: string;
|
|
10
|
+
static fromHubtypeCMS(component: HtChannelConditionalNode, request: ActionRequest): FlowChannelConditional;
|
|
11
|
+
setConditionalResult(request: ActionRequest): void;
|
|
12
|
+
trackFlow(request: ActionRequest): Promise<void>;
|
|
13
|
+
toBotonic(): JSX.Element;
|
|
14
|
+
}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { __awaiter, __rest } from "tslib";
|
|
2
|
+
import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import { EventAction } from '@botonic/core';
|
|
4
|
+
import { getCommonFlowContentEventArgsForContentId, trackEvent, } from '../tracking';
|
|
5
|
+
import { ContentFieldsBase } from './content-fields-base';
|
|
6
|
+
export class FlowChannelConditional extends ContentFieldsBase {
|
|
7
|
+
constructor() {
|
|
8
|
+
super(...arguments);
|
|
9
|
+
this.resultMapping = [];
|
|
10
|
+
this.conditionalResult = undefined;
|
|
11
|
+
this.channelResult = '';
|
|
12
|
+
}
|
|
13
|
+
static fromHubtypeCMS(component, request) {
|
|
14
|
+
const newChannelConditional = new FlowChannelConditional(component.id);
|
|
15
|
+
newChannelConditional.code = component.code;
|
|
16
|
+
newChannelConditional.resultMapping = component.content.result_mapping;
|
|
17
|
+
newChannelConditional.setConditionalResult(request);
|
|
18
|
+
return newChannelConditional;
|
|
19
|
+
}
|
|
20
|
+
setConditionalResult(request) {
|
|
21
|
+
const provider = request.session.user.provider;
|
|
22
|
+
const conditionalResult = this.resultMapping.find(rMap => rMap.result === provider) ||
|
|
23
|
+
this.resultMapping.find(rMap => rMap.result === 'default');
|
|
24
|
+
if (!conditionalResult) {
|
|
25
|
+
throw new Error(`No conditional result found for node ${this.code} with channel: ${provider}`);
|
|
26
|
+
}
|
|
27
|
+
this.conditionalResult = conditionalResult;
|
|
28
|
+
this.channelResult = conditionalResult.result;
|
|
29
|
+
this.followUp = conditionalResult.target;
|
|
30
|
+
}
|
|
31
|
+
trackFlow(request) {
|
|
32
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
33
|
+
const { flowThreadId, flowId, flowName, flowNodeId, flowNodeContentId } = getCommonFlowContentEventArgsForContentId(request, this.id);
|
|
34
|
+
const eventChannelConditional = {
|
|
35
|
+
action: EventAction.ConditionalChannel,
|
|
36
|
+
flowThreadId,
|
|
37
|
+
flowId,
|
|
38
|
+
flowName,
|
|
39
|
+
flowNodeId,
|
|
40
|
+
flowNodeContentId,
|
|
41
|
+
channel: this.channelResult,
|
|
42
|
+
};
|
|
43
|
+
const { action } = eventChannelConditional, eventArgs = __rest(eventChannelConditional, ["action"]);
|
|
44
|
+
yield trackEvent(request, action, eventArgs);
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
toBotonic() {
|
|
48
|
+
return _jsx(_Fragment, {});
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=flow-channel-conditional.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flow-channel-conditional.js","sourceRoot":"","sources":["../../../src/content-fields/flow-channel-conditional.tsx"],"names":[],"mappings":";;AAAA,OAAO,EAAE,WAAW,EAA2B,MAAM,eAAe,CAAA;AAIpE,OAAO,EACL,yCAAyC,EACzC,UAAU,GACX,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAIzD,MAAM,OAAO,sBAAuB,SAAQ,iBAAiB;IAA7D;;QACS,kBAAa,GAAuB,EAAE,CAAA;QACtC,sBAAiB,GAAsB,SAAS,CAAA;QAChD,kBAAa,GAAW,EAAE,CAAA;IAiDnC,CAAC;IA/CC,MAAM,CAAC,cAAc,CACnB,SAAmC,EACnC,OAAsB;QAEtB,MAAM,qBAAqB,GAAG,IAAI,sBAAsB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QACtE,qBAAqB,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAA;QAC3C,qBAAqB,CAAC,aAAa,GAAG,SAAS,CAAC,OAAO,CAAC,cAAc,CAAA;QACtE,qBAAqB,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAA;QAEnD,OAAO,qBAAqB,CAAA;IAC9B,CAAC;IAED,oBAAoB,CAAC,OAAsB;QACzC,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAA;QAC9C,MAAM,iBAAiB,GACrB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC;YACzD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAA;QAC5D,IAAI,CAAC,iBAAiB,EAAE;YACtB,MAAM,IAAI,KAAK,CACb,wCAAwC,IAAI,CAAC,IAAI,kBAAkB,QAAQ,EAAE,CAC9E,CAAA;SACF;QACD,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAA;QAC1C,IAAI,CAAC,aAAa,GAAG,iBAAiB,CAAC,MAAM,CAAA;QAC7C,IAAI,CAAC,QAAQ,GAAG,iBAAiB,CAAC,MAAM,CAAA;IAC1C,CAAC;IAEK,SAAS,CAAC,OAAsB;;YACpC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,iBAAiB,EAAE,GACrE,yCAAyC,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,CAAA;YAE7D,MAAM,uBAAuB,GAA4B;gBACvD,MAAM,EAAE,WAAW,CAAC,kBAAkB;gBACtC,YAAY;gBACZ,MAAM;gBACN,QAAQ;gBACR,UAAU;gBACV,iBAAiB;gBACjB,OAAO,EAAE,IAAI,CAAC,aAAa;aAC5B,CAAA;YACD,MAAM,EAAE,MAAM,KAAmB,uBAAuB,EAArC,SAAS,UAAK,uBAAuB,EAAlD,UAAwB,CAA0B,CAAA;YACxD,MAAM,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,CAAA;QAC9C,CAAC;KAAA;IAED,SAAS;QACP,OAAO,mBAAK,CAAA;IACd,CAAC;CACF"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { ActionRequest } from '@botonic/react';
|
|
3
|
+
import { ContentFieldsBase } from './content-fields-base';
|
|
4
|
+
import { HtFunctionResult } from './hubtype-fields';
|
|
5
|
+
import { HtCountryConditionalNode } from './hubtype-fields/country-conditional';
|
|
6
|
+
export declare class FlowCountryConditional extends ContentFieldsBase {
|
|
7
|
+
resultMapping: HtFunctionResult[];
|
|
8
|
+
conditionalResult?: HtFunctionResult;
|
|
9
|
+
static fromHubtypeCMS(component: HtCountryConditionalNode, request: ActionRequest): FlowCountryConditional;
|
|
10
|
+
setConditionalResult(request: ActionRequest): void;
|
|
11
|
+
trackFlow(request: ActionRequest): Promise<void>;
|
|
12
|
+
toBotonic(): JSX.Element;
|
|
13
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { __awaiter, __rest } from "tslib";
|
|
2
|
+
import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import { EventAction } from '@botonic/core';
|
|
4
|
+
import { getCommonFlowContentEventArgsForContentId, trackEvent, } from '../tracking';
|
|
5
|
+
import { ContentFieldsBase } from './content-fields-base';
|
|
6
|
+
export class FlowCountryConditional extends ContentFieldsBase {
|
|
7
|
+
constructor() {
|
|
8
|
+
super(...arguments);
|
|
9
|
+
this.resultMapping = [];
|
|
10
|
+
this.conditionalResult = undefined;
|
|
11
|
+
}
|
|
12
|
+
static fromHubtypeCMS(component, request) {
|
|
13
|
+
const newCountryConditional = new FlowCountryConditional(component.id);
|
|
14
|
+
newCountryConditional.code = component.code;
|
|
15
|
+
newCountryConditional.resultMapping = component.content.result_mapping;
|
|
16
|
+
newCountryConditional.setConditionalResult(request);
|
|
17
|
+
return newCountryConditional;
|
|
18
|
+
}
|
|
19
|
+
setConditionalResult(request) {
|
|
20
|
+
const country = request.getUserCountry();
|
|
21
|
+
const conditionalResult = this.resultMapping.find(rMap => rMap.result === country) ||
|
|
22
|
+
this.resultMapping.find(rMap => rMap.result === 'default');
|
|
23
|
+
if (!conditionalResult) {
|
|
24
|
+
throw new Error(`No conditional result found for node ${this.code} with country: ${country}`);
|
|
25
|
+
}
|
|
26
|
+
this.conditionalResult = conditionalResult;
|
|
27
|
+
this.followUp = conditionalResult.target;
|
|
28
|
+
}
|
|
29
|
+
trackFlow(request) {
|
|
30
|
+
var _a, _b, _c;
|
|
31
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
32
|
+
const { flowThreadId, flowId, flowName, flowNodeId, flowNodeContentId } = getCommonFlowContentEventArgsForContentId(request, this.id);
|
|
33
|
+
if (!((_a = this.conditionalResult) === null || _a === void 0 ? void 0 : _a.result)) {
|
|
34
|
+
console.warn(`Tracking event for node ${this.code} but no conditional result found`);
|
|
35
|
+
}
|
|
36
|
+
const eventCountryConditional = {
|
|
37
|
+
action: EventAction.ConditionalCountry,
|
|
38
|
+
flowThreadId,
|
|
39
|
+
flowId,
|
|
40
|
+
flowName,
|
|
41
|
+
flowNodeId,
|
|
42
|
+
flowNodeContentId,
|
|
43
|
+
country: (_c = (_b = this.conditionalResult) === null || _b === void 0 ? void 0 : _b.result) !== null && _c !== void 0 ? _c : '',
|
|
44
|
+
};
|
|
45
|
+
const { action } = eventCountryConditional, eventArgs = __rest(eventCountryConditional, ["action"]);
|
|
46
|
+
yield trackEvent(request, action, eventArgs);
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
toBotonic() {
|
|
50
|
+
return _jsx(_Fragment, {});
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=flow-country-conditional.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flow-country-conditional.js","sourceRoot":"","sources":["../../../src/content-fields/flow-country-conditional.tsx"],"names":[],"mappings":";;AAAA,OAAO,EAAE,WAAW,EAA2B,MAAM,eAAe,CAAA;AAIpE,OAAO,EACL,yCAAyC,EACzC,UAAU,GACX,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAIzD,MAAM,OAAO,sBAAuB,SAAQ,iBAAiB;IAA7D;;QACS,kBAAa,GAAuB,EAAE,CAAA;QACtC,sBAAiB,GAAsB,SAAS,CAAA;IAoDzD,CAAC;IAlDC,MAAM,CAAC,cAAc,CACnB,SAAmC,EACnC,OAAsB;QAEtB,MAAM,qBAAqB,GAAG,IAAI,sBAAsB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QACtE,qBAAqB,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAA;QAC3C,qBAAqB,CAAC,aAAa,GAAG,SAAS,CAAC,OAAO,CAAC,cAAc,CAAA;QACtE,qBAAqB,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAA;QAEnD,OAAO,qBAAqB,CAAA;IAC9B,CAAC;IAED,oBAAoB,CAAC,OAAsB;QACzC,MAAM,OAAO,GAAG,OAAO,CAAC,cAAc,EAAE,CAAA;QACxC,MAAM,iBAAiB,GACrB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC;YACxD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAA;QAC5D,IAAI,CAAC,iBAAiB,EAAE;YACtB,MAAM,IAAI,KAAK,CACb,wCAAwC,IAAI,CAAC,IAAI,kBAAkB,OAAO,EAAE,CAC7E,CAAA;SACF;QACD,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAA;QAC1C,IAAI,CAAC,QAAQ,GAAG,iBAAiB,CAAC,MAAM,CAAA;IAC1C,CAAC;IAEK,SAAS,CAAC,OAAsB;;;YACpC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,iBAAiB,EAAE,GACrE,yCAAyC,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,CAAA;YAC7D,IAAI,CAAC,CAAA,MAAA,IAAI,CAAC,iBAAiB,0CAAE,MAAM,CAAA,EAAE;gBACnC,OAAO,CAAC,IAAI,CACV,2BAA2B,IAAI,CAAC,IAAI,kCAAkC,CACvE,CAAA;aACF;YACD,MAAM,uBAAuB,GAA4B;gBACvD,MAAM,EAAE,WAAW,CAAC,kBAAkB;gBACtC,YAAY;gBACZ,MAAM;gBACN,QAAQ;gBACR,UAAU;gBACV,iBAAiB;gBACjB,OAAO,EAAE,MAAA,MAAA,IAAI,CAAC,iBAAiB,0CAAE,MAAM,mCAAI,EAAE;aAC9C,CAAA;YACD,MAAM,EAAE,MAAM,KAAmB,uBAAuB,EAArC,SAAS,UAAK,uBAAuB,EAAlD,UAAwB,CAA0B,CAAA;YACxD,MAAM,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,CAAA;;KAC7C;IAED,SAAS;QACP,OAAO,mBAAK,CAAA;IACd,CAAC;CACF"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { ActionRequest } from '@botonic/react';
|
|
2
|
+
import { ContentFieldsBase } from './content-fields-base';
|
|
3
|
+
import { HtCustomConditionalNode } from './hubtype-fields/custom-conditional';
|
|
4
|
+
import { HtFunctionArguments, HtFunctionResult } from './hubtype-fields/function';
|
|
5
|
+
export declare class FlowCustomConditional extends ContentFieldsBase {
|
|
6
|
+
arguments: HtFunctionArguments[];
|
|
7
|
+
resultMapping: HtFunctionResult[];
|
|
8
|
+
conditionalResult?: HtFunctionResult;
|
|
9
|
+
customResult: string;
|
|
10
|
+
variableFormat: string;
|
|
11
|
+
static fromHubtypeCMS(component: HtCustomConditionalNode, request: ActionRequest): FlowCustomConditional;
|
|
12
|
+
setConditionalResult(request: ActionRequest): void;
|
|
13
|
+
trackFlow(request: ActionRequest): Promise<void>;
|
|
14
|
+
toBotonic(): import("react/jsx-runtime").JSX.Element;
|
|
15
|
+
}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { __awaiter, __rest } from "tslib";
|
|
2
|
+
import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import { EventAction } from '@botonic/core';
|
|
4
|
+
import { getCommonFlowContentEventArgsForContentId, trackEvent, } from '../tracking';
|
|
5
|
+
import { getValueFromKeyPath } from '../utils';
|
|
6
|
+
import { ContentFieldsBase } from './content-fields-base';
|
|
7
|
+
export class FlowCustomConditional extends ContentFieldsBase {
|
|
8
|
+
constructor() {
|
|
9
|
+
super(...arguments);
|
|
10
|
+
this.arguments = [];
|
|
11
|
+
this.conditionalResult = undefined;
|
|
12
|
+
this.customResult = '';
|
|
13
|
+
this.variableFormat = '';
|
|
14
|
+
}
|
|
15
|
+
static fromHubtypeCMS(component, request) {
|
|
16
|
+
const newCustomConditional = new FlowCustomConditional(component.id);
|
|
17
|
+
newCustomConditional.code = component.code;
|
|
18
|
+
newCustomConditional.arguments = component.content.arguments;
|
|
19
|
+
newCustomConditional.resultMapping = component.content.result_mapping;
|
|
20
|
+
newCustomConditional.setConditionalResult(request);
|
|
21
|
+
newCustomConditional.variableFormat = component.content.arguments[0].type;
|
|
22
|
+
return newCustomConditional;
|
|
23
|
+
}
|
|
24
|
+
setConditionalResult(request) {
|
|
25
|
+
const functionArgument = this.arguments.find(arg => {
|
|
26
|
+
if ('name' in arg) {
|
|
27
|
+
return arg.name === 'keyPath';
|
|
28
|
+
}
|
|
29
|
+
return false;
|
|
30
|
+
});
|
|
31
|
+
let keyPath = '';
|
|
32
|
+
if (functionArgument && 'value' in functionArgument) {
|
|
33
|
+
keyPath = functionArgument.value;
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
throw new Error(`Key path not found for node ${this.code}`);
|
|
37
|
+
}
|
|
38
|
+
const botVariable = getValueFromKeyPath(request, keyPath);
|
|
39
|
+
const conditionalResult = this.resultMapping.find(rMap => rMap.result === botVariable) ||
|
|
40
|
+
this.resultMapping.find(rMap => rMap.result === 'default');
|
|
41
|
+
if (!conditionalResult) {
|
|
42
|
+
throw new Error(`No conditional result found for node ${this.code} with key path: ${keyPath}`);
|
|
43
|
+
}
|
|
44
|
+
this.conditionalResult = conditionalResult;
|
|
45
|
+
this.customResult = conditionalResult.result;
|
|
46
|
+
this.followUp = conditionalResult.target;
|
|
47
|
+
}
|
|
48
|
+
trackFlow(request) {
|
|
49
|
+
var _a;
|
|
50
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
51
|
+
const { flowThreadId, flowId, flowName, flowNodeId, flowNodeContentId } = getCommonFlowContentEventArgsForContentId(request, this.id);
|
|
52
|
+
if (!((_a = this.conditionalResult) === null || _a === void 0 ? void 0 : _a.result)) {
|
|
53
|
+
console.warn(`Tracking event for node ${this.code} but no conditional result found`);
|
|
54
|
+
}
|
|
55
|
+
const eventCustomConditional = {
|
|
56
|
+
action: EventAction.ConditionalCustom,
|
|
57
|
+
flowThreadId,
|
|
58
|
+
flowId,
|
|
59
|
+
flowName,
|
|
60
|
+
flowNodeId,
|
|
61
|
+
flowNodeContentId,
|
|
62
|
+
conditionalVariable: this.customResult,
|
|
63
|
+
variableFormat: this.variableFormat,
|
|
64
|
+
};
|
|
65
|
+
const { action } = eventCustomConditional, eventArgs = __rest(eventCustomConditional, ["action"]);
|
|
66
|
+
yield trackEvent(request, action, eventArgs);
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
toBotonic() {
|
|
70
|
+
return _jsx(_Fragment, {});
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=flow-custom-conditional.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flow-custom-conditional.js","sourceRoot":"","sources":["../../../src/content-fields/flow-custom-conditional.tsx"],"names":[],"mappings":";;AAAA,OAAO,EAAE,WAAW,EAA0B,MAAM,eAAe,CAAA;AAInE,OAAO,EACL,yCAAyC,EACzC,UAAU,GACX,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAA;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAQzD,MAAM,OAAO,qBAAsB,SAAQ,iBAAiB;IAA5D;;QACS,cAAS,GAA0B,EAAE,CAAA;QAErC,sBAAiB,GAAsB,SAAS,CAAA;QAChD,iBAAY,GAAW,EAAE,CAAA;QACzB,mBAAc,GAAW,EAAE,CAAA;IA2EpC,CAAC;IAzEC,MAAM,CAAC,cAAc,CACnB,SAAkC,EAClC,OAAsB;QAEtB,MAAM,oBAAoB,GAAG,IAAI,qBAAqB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QACpE,oBAAoB,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAA;QAC1C,oBAAoB,CAAC,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,SAAS,CAAA;QAC5D,oBAAoB,CAAC,aAAa,GAAG,SAAS,CAAC,OAAO,CAAC,cAAc,CAAA;QACrE,oBAAoB,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAA;QAClD,oBAAoB,CAAC,cAAc,GACjC,SAAS,CAAC,OAAO,CAAC,SACnB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QAET,OAAO,oBAAoB,CAAA;IAC7B,CAAC;IAED,oBAAoB,CAAC,OAAsB;QACzC,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YACjD,IAAI,MAAM,IAAI,GAAG,EAAE;gBACjB,OAAO,GAAG,CAAC,IAAI,KAAK,SAAS,CAAA;aAC9B;YACD,OAAO,KAAK,CAAA;QACd,CAAC,CAAC,CAAA;QAEF,IAAI,OAAO,GAAG,EAAE,CAAA;QAEhB,IAAI,gBAAgB,IAAI,OAAO,IAAI,gBAAgB,EAAE;YACnD,OAAO,GAAG,gBAAgB,CAAC,KAAK,CAAA;SACjC;aAAM;YACL,MAAM,IAAI,KAAK,CAAC,+BAA+B,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;SAC5D;QAED,MAAM,WAAW,GAAG,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QACzD,MAAM,iBAAiB,GACrB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,WAAW,CAAC;YAC5D,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAA;QAE5D,IAAI,CAAC,iBAAiB,EAAE;YACtB,MAAM,IAAI,KAAK,CACb,wCAAwC,IAAI,CAAC,IAAI,mBAAmB,OAAO,EAAE,CAC9E,CAAA;SACF;QAED,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAA;QAC1C,IAAI,CAAC,YAAY,GAAG,iBAAiB,CAAC,MAAM,CAAA;QAC5C,IAAI,CAAC,QAAQ,GAAG,iBAAiB,CAAC,MAAM,CAAA;IAC1C,CAAC;IAEK,SAAS,CAAC,OAAsB;;;YACpC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,iBAAiB,EAAE,GACrE,yCAAyC,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,CAAA;YAC7D,IAAI,CAAC,CAAA,MAAA,IAAI,CAAC,iBAAiB,0CAAE,MAAM,CAAA,EAAE;gBACnC,OAAO,CAAC,IAAI,CACV,2BAA2B,IAAI,CAAC,IAAI,kCAAkC,CACvE,CAAA;aACF;YACD,MAAM,sBAAsB,GAA2B;gBACrD,MAAM,EAAE,WAAW,CAAC,iBAAiB;gBACrC,YAAY;gBACZ,MAAM;gBACN,QAAQ;gBACR,UAAU;gBACV,iBAAiB;gBACjB,mBAAmB,EAAE,IAAI,CAAC,YAAY;gBACtC,cAAc,EAAE,IAAI,CAAC,cAAc;aACpC,CAAA;YACD,MAAM,EAAE,MAAM,KAAmB,sBAAsB,EAApC,SAAS,UAAK,sBAAsB,EAAjD,UAAwB,CAAyB,CAAA;YACvD,MAAM,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,CAAA;;KAC7C;IAED,SAAS;QACP,OAAO,mBAAK,CAAA;IACd,CAAC;CACF"}
|