@botonic/plugin-flow-builder 0.56.0-alpha.0 → 0.57.0-rslib-esm.1
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/README.md +1 -1
- package/lib/{cjs/action → action}/ai-agent-from-user-input.d.ts +2 -2
- package/lib/{cjs/action → action}/ai-agent-from-user-input.js +9 -6
- package/lib/action/ai-agent-from-user-input.js.map +1 -0
- package/lib/{esm/action → action}/context.d.ts +2 -2
- package/lib/action/context.js +20 -0
- package/lib/action/context.js.map +1 -0
- package/lib/{cjs/action → action}/fallback.d.ts +2 -2
- package/lib/{cjs/action → action}/fallback.js +16 -11
- package/lib/action/fallback.js.map +1 -0
- package/lib/action/first-interaction.d.ts +3 -0
- package/lib/{cjs/action → action}/first-interaction.js +39 -27
- package/lib/action/first-interaction.js.map +1 -0
- package/lib/{cjs/action → action}/get-contents.d.ts +1 -1
- package/lib/action/get-contents.js +56 -0
- package/lib/action/get-contents.js.map +1 -0
- package/lib/{esm/action → action}/index.d.ts +1 -1
- package/lib/{esm/action → action}/index.js +68 -32
- package/lib/action/index.js.map +1 -0
- package/lib/action/payload.d.ts +3 -0
- package/lib/{cjs/action → action}/payload.js +27 -23
- package/lib/action/payload.js.map +1 -0
- package/lib/{cjs/api.d.ts → api.d.ts} +2 -2
- package/lib/{esm/api.js → api.js} +55 -44
- package/lib/api.js.map +1 -0
- package/lib/constants.js +17 -0
- package/lib/constants.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/content-fields-base.d.ts +2 -2
- package/lib/content-fields/content-fields-base.js +78 -0
- package/lib/content-fields/content-fields-base.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/custom-conditional/custom-conditional-v2-evaluators.d.ts +1 -1
- package/lib/content-fields/custom-conditional/custom-conditional-v2-evaluators.js +73 -0
- package/lib/content-fields/custom-conditional/custom-conditional-v2-evaluators.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/custom-conditional/custom-conditional-v2-resolver.d.ts +1 -1
- package/lib/{cjs/content-fields → content-fields}/custom-conditional/custom-conditional-v2-resolver.js +15 -15
- package/lib/content-fields/custom-conditional/custom-conditional-v2-resolver.js.map +1 -0
- package/lib/{cjs/content-fields → content-fields}/custom-conditional/flow-custom-condition-v2.d.ts +3 -3
- package/lib/content-fields/custom-conditional/flow-custom-condition-v2.js +94 -0
- package/lib/content-fields/custom-conditional/flow-custom-condition-v2.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/flow-ai-agent-base.d.ts +4 -4
- package/lib/content-fields/flow-ai-agent-base.js +100 -0
- package/lib/content-fields/flow-ai-agent-base.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/flow-ai-agent-router.d.ts +5 -5
- package/lib/{esm/content-fields → content-fields}/flow-ai-agent-router.js +57 -46
- package/lib/content-fields/flow-ai-agent-router.js.map +1 -0
- package/lib/{cjs/content-fields → content-fields}/flow-ai-agent.d.ts +4 -4
- package/lib/{cjs/content-fields → content-fields}/flow-ai-agent.js +33 -22
- package/lib/content-fields/flow-ai-agent.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/flow-bot-action.d.ts +3 -3
- package/lib/{esm/content-fields → content-fields}/flow-bot-action.js +23 -15
- package/lib/content-fields/flow-bot-action.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/flow-button.d.ts +5 -5
- package/lib/{esm/content-fields → content-fields}/flow-button.js +48 -29
- package/lib/content-fields/flow-button.js.map +1 -0
- package/lib/{cjs/content-fields → content-fields}/flow-capture-user-input.d.ts +2 -2
- package/lib/content-fields/flow-capture-user-input.js +46 -0
- package/lib/content-fields/flow-capture-user-input.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/flow-carousel.d.ts +4 -4
- package/lib/content-fields/flow-carousel.js +193 -0
- package/lib/content-fields/flow-carousel.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/flow-channel-conditional.d.ts +3 -3
- package/lib/{esm/content-fields → content-fields}/flow-channel-conditional.js +26 -22
- package/lib/content-fields/flow-channel-conditional.js.map +1 -0
- package/lib/{cjs/content-fields → content-fields}/flow-country-conditional.d.ts +3 -3
- package/lib/{esm/content-fields → content-fields}/flow-country-conditional.js +26 -21
- package/lib/content-fields/flow-country-conditional.js.map +1 -0
- package/lib/{cjs/content-fields → content-fields}/flow-custom-conditional.d.ts +4 -4
- package/lib/{esm/content-fields → content-fields}/flow-custom-conditional.js +31 -33
- package/lib/content-fields/flow-custom-conditional.js.map +1 -0
- package/lib/{cjs/content-fields → content-fields}/flow-element.d.ts +4 -4
- package/lib/content-fields/flow-element.js +67 -0
- package/lib/content-fields/flow-element.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/flow-go-to-flow.d.ts +3 -3
- package/lib/{esm/content-fields → content-fields}/flow-go-to-flow.js +25 -20
- package/lib/content-fields/flow-go-to-flow.js.map +1 -0
- package/lib/{cjs/content-fields → content-fields}/flow-handoff.d.ts +3 -3
- package/lib/{cjs/content-fields → content-fields}/flow-handoff.js +30 -19
- package/lib/content-fields/flow-handoff.js.map +1 -0
- package/lib/{cjs/content-fields → content-fields}/flow-image.d.ts +2 -2
- package/lib/content-fields/flow-image.js +42 -0
- package/lib/content-fields/flow-image.js.map +1 -0
- package/lib/{cjs/content-fields → content-fields}/flow-queue-status-conditional.d.ts +3 -3
- package/lib/{cjs/content-fields → content-fields}/flow-queue-status-conditional.js +45 -40
- package/lib/content-fields/flow-queue-status-conditional.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/flow-rating.d.ts +3 -3
- package/lib/content-fields/flow-rating.js +88 -0
- package/lib/content-fields/flow-rating.js.map +1 -0
- package/lib/{cjs/content-fields → content-fields}/flow-text.d.ts +4 -4
- package/lib/content-fields/flow-text.js +82 -0
- package/lib/content-fields/flow-text.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/flow-video.d.ts +2 -2
- package/lib/content-fields/flow-video.js +42 -0
- package/lib/content-fields/flow-video.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/flow-webview.d.ts +2 -2
- package/lib/{cjs/content-fields → content-fields}/flow-webview.js +31 -28
- package/lib/content-fields/flow-webview.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/flow-whatsapp-cta-url-button.d.ts +3 -3
- package/lib/content-fields/flow-whatsapp-cta-url-button.js +131 -0
- package/lib/content-fields/flow-whatsapp-cta-url-button.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/flow-whatsapp-request-contact-info.d.ts +3 -4
- package/lib/content-fields/flow-whatsapp-request-contact-info.js +51 -0
- package/lib/content-fields/flow-whatsapp-request-contact-info.js.map +1 -0
- package/lib/{cjs/content-fields → content-fields}/flow-whatsapp-template.d.ts +2 -2
- package/lib/{esm/content-fields → content-fields}/flow-whatsapp-template.js +119 -102
- package/lib/content-fields/flow-whatsapp-template.js.map +1 -0
- package/lib/{cjs/content-fields → content-fields}/hubtype-fields/ai-agent-router.d.ts +3 -3
- package/lib/content-fields/hubtype-fields/ai-agent-router.js +4 -0
- package/lib/content-fields/hubtype-fields/ai-agent-router.js.map +1 -0
- package/lib/{cjs/content-fields → content-fields}/hubtype-fields/ai-agent.d.ts +2 -2
- package/lib/content-fields/hubtype-fields/ai-agent.js +4 -0
- package/lib/content-fields/hubtype-fields/ai-agent.js.map +1 -0
- package/lib/{cjs/content-fields → content-fields}/hubtype-fields/bot-action.d.ts +2 -2
- package/lib/content-fields/hubtype-fields/bot-action.js +4 -0
- package/lib/content-fields/hubtype-fields/bot-action.js.map +1 -0
- package/lib/{cjs/content-fields → content-fields}/hubtype-fields/button.d.ts +1 -1
- package/lib/content-fields/hubtype-fields/button.js +4 -0
- package/lib/content-fields/hubtype-fields/button.js.map +1 -0
- package/lib/{cjs/content-fields → content-fields}/hubtype-fields/capture-user-input.d.ts +2 -2
- package/lib/content-fields/hubtype-fields/capture-user-input.js +12 -0
- package/lib/content-fields/hubtype-fields/capture-user-input.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/hubtype-fields/carousel.d.ts +3 -3
- package/lib/content-fields/hubtype-fields/carousel.js +4 -0
- package/lib/content-fields/hubtype-fields/carousel.js.map +1 -0
- package/lib/{cjs/content-fields → content-fields}/hubtype-fields/channel-conditional.d.ts +3 -3
- package/lib/content-fields/hubtype-fields/channel-conditional.js +4 -0
- package/lib/content-fields/hubtype-fields/channel-conditional.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/hubtype-fields/common.d.ts +2 -2
- package/lib/content-fields/hubtype-fields/common.js +4 -0
- package/lib/content-fields/hubtype-fields/common.js.map +1 -0
- package/lib/{cjs/content-fields → content-fields}/hubtype-fields/country-conditional.d.ts +3 -3
- package/lib/content-fields/hubtype-fields/country-conditional.js +4 -0
- package/lib/content-fields/hubtype-fields/country-conditional.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/hubtype-fields/custom-conditional-v2.d.ts +2 -2
- package/lib/{esm/content-fields → content-fields}/hubtype-fields/custom-conditional-v2.js +15 -15
- package/lib/content-fields/hubtype-fields/custom-conditional-v2.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/hubtype-fields/custom-conditional.d.ts +3 -3
- package/lib/content-fields/hubtype-fields/custom-conditional.js +4 -0
- package/lib/content-fields/hubtype-fields/custom-conditional.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/hubtype-fields/fallback.d.ts +2 -2
- package/lib/content-fields/hubtype-fields/fallback.js +4 -0
- package/lib/content-fields/hubtype-fields/fallback.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/hubtype-fields/function.d.ts +2 -2
- package/lib/content-fields/hubtype-fields/function.js +11 -0
- package/lib/content-fields/hubtype-fields/function.js.map +1 -0
- package/lib/{cjs/content-fields → content-fields}/hubtype-fields/go-to-flow.d.ts +2 -2
- package/lib/content-fields/hubtype-fields/go-to-flow.js +4 -0
- package/lib/content-fields/hubtype-fields/go-to-flow.js.map +1 -0
- package/lib/{cjs/content-fields → content-fields}/hubtype-fields/handoff.d.ts +2 -2
- package/lib/content-fields/hubtype-fields/handoff.js +4 -0
- package/lib/content-fields/hubtype-fields/handoff.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/hubtype-fields/image.d.ts +2 -2
- package/lib/content-fields/hubtype-fields/image.js +4 -0
- package/lib/content-fields/hubtype-fields/image.js.map +1 -0
- package/lib/content-fields/hubtype-fields/index.d.ts +27 -0
- package/lib/content-fields/hubtype-fields/index.js +57 -0
- package/lib/content-fields/hubtype-fields/index.js.map +1 -0
- package/lib/{cjs/content-fields → content-fields}/hubtype-fields/keyword.d.ts +2 -2
- package/lib/content-fields/hubtype-fields/keyword.js +4 -0
- package/lib/content-fields/hubtype-fields/keyword.js.map +1 -0
- package/lib/{cjs/content-fields → content-fields}/hubtype-fields/node-types.js +12 -12
- package/lib/content-fields/hubtype-fields/node-types.js.map +1 -0
- package/lib/{cjs/content-fields → content-fields}/hubtype-fields/nodes.d.ts +23 -23
- package/lib/content-fields/hubtype-fields/nodes.js +4 -0
- package/lib/content-fields/hubtype-fields/nodes.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/hubtype-fields/payload.d.ts +1 -1
- package/lib/content-fields/hubtype-fields/payload.js +4 -0
- package/lib/content-fields/hubtype-fields/payload.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/hubtype-fields/queue-status-conditional.d.ts +3 -3
- package/lib/content-fields/hubtype-fields/queue-status-conditional.js +4 -0
- package/lib/content-fields/hubtype-fields/queue-status-conditional.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/hubtype-fields/rating.d.ts +2 -2
- package/lib/content-fields/hubtype-fields/rating.js +9 -0
- package/lib/content-fields/hubtype-fields/rating.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/hubtype-fields/smart-intent.d.ts +2 -2
- package/lib/content-fields/hubtype-fields/smart-intent.js +4 -0
- package/lib/content-fields/hubtype-fields/smart-intent.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/hubtype-fields/text.d.ts +3 -3
- package/lib/content-fields/hubtype-fields/text.js +4 -0
- package/lib/content-fields/hubtype-fields/text.js.map +1 -0
- package/lib/{cjs/content-fields → content-fields}/hubtype-fields/url.d.ts +1 -1
- package/lib/content-fields/hubtype-fields/url.js +4 -0
- package/lib/content-fields/hubtype-fields/url.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/hubtype-fields/video.d.ts +2 -2
- package/lib/content-fields/hubtype-fields/video.js +4 -0
- package/lib/content-fields/hubtype-fields/video.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/hubtype-fields/webview.d.ts +2 -2
- package/lib/content-fields/hubtype-fields/webview.js +4 -0
- package/lib/content-fields/hubtype-fields/webview.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/hubtype-fields/whatsapp-button-list.d.ts +2 -2
- package/lib/content-fields/hubtype-fields/whatsapp-button-list.js +4 -0
- package/lib/content-fields/hubtype-fields/whatsapp-button-list.js.map +1 -0
- package/lib/{cjs/content-fields → content-fields}/hubtype-fields/whatsapp-cta-url-button.d.ts +3 -3
- package/lib/content-fields/hubtype-fields/whatsapp-cta-url-button.js +4 -0
- package/lib/content-fields/hubtype-fields/whatsapp-cta-url-button.js.map +1 -0
- package/lib/{cjs/content-fields → content-fields}/hubtype-fields/whatsapp-request-contact-info.d.ts +2 -2
- package/lib/content-fields/hubtype-fields/whatsapp-request-contact-info.js +4 -0
- package/lib/content-fields/hubtype-fields/whatsapp-request-contact-info.js.map +1 -0
- package/lib/{cjs/content-fields → content-fields}/hubtype-fields/whatsapp-template.d.ts +3 -3
- package/lib/content-fields/hubtype-fields/whatsapp-template.js +9 -0
- package/lib/content-fields/hubtype-fields/whatsapp-template.js.map +1 -0
- package/lib/content-fields/index.d.ts +25 -0
- package/lib/content-fields/index.js +73 -0
- package/lib/content-fields/index.js.map +1 -0
- package/lib/{cjs/content-fields → content-fields}/whatsapp-button-list/flow-whatsapp-button-list-row.d.ts +3 -3
- package/lib/{esm/content-fields → content-fields}/whatsapp-button-list/flow-whatsapp-button-list-row.js +16 -14
- package/lib/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.js.map +1 -0
- package/lib/{cjs/content-fields → content-fields}/whatsapp-button-list/flow-whatsapp-button-list-section.d.ts +4 -4
- package/lib/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.js +41 -0
- package/lib/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/whatsapp-button-list/flow-whatsapp-button-list.d.ts +4 -4
- package/lib/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js +66 -0
- package/lib/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js.map +1 -0
- package/lib/{esm/content-fields → content-fields}/whatsapp-button-list/index.d.ts +3 -3
- package/lib/content-fields/whatsapp-button-list/index.js +12 -0
- package/lib/content-fields/whatsapp-button-list/index.js.map +1 -0
- package/lib/{cjs/filters → filters}/index.d.ts +2 -2
- package/lib/filters/index.js +16 -0
- package/lib/filters/index.js.map +1 -0
- package/lib/{cjs/flow-factory.d.ts → flow-factory.d.ts} +3 -3
- package/lib/flow-factory.js +75 -0
- package/lib/flow-factory.js.map +1 -0
- package/lib/{esm/functions → functions}/index.d.ts +1 -1
- package/lib/{cjs/functions → functions}/index.js +25 -19
- package/lib/functions/index.js.map +1 -0
- package/lib/{cjs/index.d.ts → index.d.ts} +12 -12
- package/lib/{esm/index.js → index.js} +94 -77
- package/lib/index.js.map +1 -0
- package/lib/services/hubtype-queues-api.js +26 -0
- package/lib/services/hubtype-queues-api.js.map +1 -0
- package/lib/structured-output/flow-builder-content.js +16 -0
- package/lib/structured-output/flow-builder-content.js.map +1 -0
- package/lib/{cjs/tracking.d.ts → tracking.d.ts} +2 -2
- package/lib/{cjs/tracking.js → tracking.js} +27 -21
- package/lib/tracking.js.map +1 -0
- package/lib/{esm/types.d.ts → types.d.ts} +5 -5
- package/lib/types.js +14 -0
- package/lib/types.js.map +1 -0
- package/lib/{esm/user-input → user-input}/capture-user-input-api.d.ts +2 -2
- package/lib/{cjs/user-input → user-input}/capture-user-input-api.js +44 -33
- package/lib/user-input/capture-user-input-api.js.map +1 -0
- package/lib/{esm/user-input → user-input}/index.d.ts +2 -2
- package/lib/user-input/index.js +46 -0
- package/lib/user-input/index.js.map +1 -0
- package/lib/{esm/user-input → user-input}/keyword.d.ts +2 -2
- package/lib/{esm/user-input → user-input}/keyword.js +31 -26
- package/lib/user-input/keyword.js.map +1 -0
- package/lib/{cjs/user-input → user-input}/smart-intent.d.ts +2 -2
- package/lib/{cjs/user-input → user-input}/smart-intent.js +36 -32
- package/lib/user-input/smart-intent.js.map +1 -0
- package/lib/{cjs/utils → utils}/ai-agent.d.ts +3 -3
- package/lib/utils/ai-agent.js +33 -0
- package/lib/utils/ai-agent.js.map +1 -0
- package/lib/{cjs/utils → utils}/authentication.js +10 -7
- package/lib/utils/authentication.js.map +1 -0
- package/lib/{cjs/utils → utils}/flow-locale.js +14 -18
- package/lib/utils/flow-locale.js.map +1 -0
- package/lib/{cjs/utils → utils}/get-flow-builder-plugin.d.ts +1 -1
- package/lib/{cjs/utils → utils}/get-flow-builder-plugin.js +4 -4
- package/lib/utils/get-flow-builder-plugin.js.map +1 -0
- package/lib/{cjs/utils → utils}/hubtype-assistant-content.d.ts +1 -2
- package/lib/{cjs/utils → utils}/hubtype-assistant-content.js +57 -54
- package/lib/utils/hubtype-assistant-content.js.map +1 -0
- package/lib/utils/input.js +37 -0
- package/lib/utils/input.js.map +1 -0
- package/lib/{cjs/webview → webview}/contents-context.d.ts +1 -1
- package/lib/webview/contents-context.js +14 -0
- package/lib/webview/contents-context.js.map +1 -0
- package/lib/webview/index.d.ts +3 -0
- package/lib/webview/index.js +11 -0
- package/lib/webview/index.js.map +1 -0
- package/lib/{esm/webview → webview}/types.d.ts +1 -1
- package/lib/webview/types.js +9 -0
- package/lib/webview/types.js.map +1 -0
- package/lib/{cjs/webview → webview}/use-webview-contents.d.ts +1 -1
- package/lib/webview/use-webview-contents.js +90 -0
- package/lib/webview/use-webview-contents.js.map +1 -0
- package/package.json +10 -8
- package/src/content-fields/flow-ai-agent-base.tsx +0 -11
- package/src/content-fields/flow-whatsapp-request-contact-info.tsx +1 -17
- package/src/content-fields/index.ts +2 -2
- package/src/index.ts +5 -5
- package/src/types.ts +6 -6
- package/src/utils/hubtype-assistant-content.ts +0 -14
- package/lib/cjs/action/ai-agent-from-user-input.js.map +0 -1
- package/lib/cjs/action/context.d.ts +0 -11
- package/lib/cjs/action/context.js +0 -17
- package/lib/cjs/action/context.js.map +0 -1
- package/lib/cjs/action/fallback.js.map +0 -1
- package/lib/cjs/action/first-interaction.d.ts +0 -3
- package/lib/cjs/action/first-interaction.js.map +0 -1
- package/lib/cjs/action/get-contents.js +0 -39
- package/lib/cjs/action/get-contents.js.map +0 -1
- package/lib/cjs/action/index.d.ts +0 -25
- package/lib/cjs/action/index.js +0 -90
- package/lib/cjs/action/index.js.map +0 -1
- package/lib/cjs/action/payload.d.ts +0 -3
- package/lib/cjs/action/payload.js.map +0 -1
- package/lib/cjs/api.js +0 -205
- package/lib/cjs/api.js.map +0 -1
- package/lib/cjs/constants.js +0 -19
- package/lib/cjs/constants.js.map +0 -1
- package/lib/cjs/content-fields/content-fields-base.d.ts +0 -20
- package/lib/cjs/content-fields/content-fields-base.js +0 -74
- package/lib/cjs/content-fields/content-fields-base.js.map +0 -1
- package/lib/cjs/content-fields/custom-conditional/custom-conditional-v2-evaluators.d.ts +0 -15
- package/lib/cjs/content-fields/custom-conditional/custom-conditional-v2-evaluators.js +0 -71
- package/lib/cjs/content-fields/custom-conditional/custom-conditional-v2-evaluators.js.map +0 -1
- package/lib/cjs/content-fields/custom-conditional/custom-conditional-v2-resolver.d.ts +0 -9
- package/lib/cjs/content-fields/custom-conditional/custom-conditional-v2-resolver.js.map +0 -1
- package/lib/cjs/content-fields/custom-conditional/flow-custom-condition-v2.js +0 -79
- package/lib/cjs/content-fields/custom-conditional/flow-custom-condition-v2.js.map +0 -1
- package/lib/cjs/content-fields/flow-ai-agent-base.d.ts +0 -25
- package/lib/cjs/content-fields/flow-ai-agent-base.js +0 -97
- package/lib/cjs/content-fields/flow-ai-agent-base.js.map +0 -1
- package/lib/cjs/content-fields/flow-ai-agent-router.d.ts +0 -21
- package/lib/cjs/content-fields/flow-ai-agent-router.js +0 -125
- package/lib/cjs/content-fields/flow-ai-agent-router.js.map +0 -1
- package/lib/cjs/content-fields/flow-ai-agent.js.map +0 -1
- package/lib/cjs/content-fields/flow-bot-action.d.ts +0 -14
- package/lib/cjs/content-fields/flow-bot-action.js +0 -45
- package/lib/cjs/content-fields/flow-bot-action.js.map +0 -1
- package/lib/cjs/content-fields/flow-button.d.ts +0 -31
- package/lib/cjs/content-fields/flow-button.js +0 -86
- package/lib/cjs/content-fields/flow-button.js.map +0 -1
- package/lib/cjs/content-fields/flow-capture-user-input.js +0 -45
- package/lib/cjs/content-fields/flow-capture-user-input.js.map +0 -1
- package/lib/cjs/content-fields/flow-carousel.d.ts +0 -22
- package/lib/cjs/content-fields/flow-carousel.js +0 -152
- package/lib/cjs/content-fields/flow-carousel.js.map +0 -1
- package/lib/cjs/content-fields/flow-channel-conditional.d.ts +0 -14
- package/lib/cjs/content-fields/flow-channel-conditional.js +0 -57
- package/lib/cjs/content-fields/flow-channel-conditional.js.map +0 -1
- package/lib/cjs/content-fields/flow-country-conditional.js +0 -59
- package/lib/cjs/content-fields/flow-country-conditional.js.map +0 -1
- package/lib/cjs/content-fields/flow-custom-conditional.js +0 -89
- package/lib/cjs/content-fields/flow-custom-conditional.js.map +0 -1
- package/lib/cjs/content-fields/flow-element.js +0 -50
- package/lib/cjs/content-fields/flow-element.js.map +0 -1
- package/lib/cjs/content-fields/flow-go-to-flow.d.ts +0 -13
- package/lib/cjs/content-fields/flow-go-to-flow.js +0 -51
- package/lib/cjs/content-fields/flow-go-to-flow.js.map +0 -1
- package/lib/cjs/content-fields/flow-handoff.js.map +0 -1
- package/lib/cjs/content-fields/flow-image.js +0 -33
- package/lib/cjs/content-fields/flow-image.js.map +0 -1
- package/lib/cjs/content-fields/flow-queue-status-conditional.js.map +0 -1
- package/lib/cjs/content-fields/flow-rating.d.ts +0 -15
- package/lib/cjs/content-fields/flow-rating.js +0 -66
- package/lib/cjs/content-fields/flow-rating.js.map +0 -1
- package/lib/cjs/content-fields/flow-text.js +0 -60
- package/lib/cjs/content-fields/flow-text.js.map +0 -1
- package/lib/cjs/content-fields/flow-video.d.ts +0 -10
- package/lib/cjs/content-fields/flow-video.js +0 -33
- package/lib/cjs/content-fields/flow-video.js.map +0 -1
- package/lib/cjs/content-fields/flow-webview.d.ts +0 -16
- package/lib/cjs/content-fields/flow-webview.js.map +0 -1
- package/lib/cjs/content-fields/flow-whatsapp-cta-url-button.d.ts +0 -21
- package/lib/cjs/content-fields/flow-whatsapp-cta-url-button.js +0 -92
- package/lib/cjs/content-fields/flow-whatsapp-cta-url-button.js.map +0 -1
- package/lib/cjs/content-fields/flow-whatsapp-request-contact-info.d.ts +0 -11
- package/lib/cjs/content-fields/flow-whatsapp-request-contact-info.js +0 -45
- package/lib/cjs/content-fields/flow-whatsapp-request-contact-info.js.map +0 -1
- package/lib/cjs/content-fields/flow-whatsapp-template.js +0 -264
- package/lib/cjs/content-fields/flow-whatsapp-template.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/ai-agent-router.js +0 -3
- package/lib/cjs/content-fields/hubtype-fields/ai-agent-router.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/ai-agent.js +0 -3
- package/lib/cjs/content-fields/hubtype-fields/ai-agent.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/bot-action.js +0 -3
- package/lib/cjs/content-fields/hubtype-fields/bot-action.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/button.js +0 -3
- package/lib/cjs/content-fields/hubtype-fields/button.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/capture-user-input.js +0 -12
- package/lib/cjs/content-fields/hubtype-fields/capture-user-input.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/carousel.d.ts +0 -17
- package/lib/cjs/content-fields/hubtype-fields/carousel.js +0 -3
- package/lib/cjs/content-fields/hubtype-fields/carousel.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/channel-conditional.js +0 -3
- package/lib/cjs/content-fields/hubtype-fields/channel-conditional.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/common.d.ts +0 -83
- package/lib/cjs/content-fields/hubtype-fields/common.js +0 -3
- package/lib/cjs/content-fields/hubtype-fields/common.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/country-conditional.js +0 -3
- package/lib/cjs/content-fields/hubtype-fields/country-conditional.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/custom-conditional-v2.d.ts +0 -56
- package/lib/cjs/content-fields/hubtype-fields/custom-conditional-v2.js +0 -36
- package/lib/cjs/content-fields/hubtype-fields/custom-conditional-v2.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/custom-conditional.d.ts +0 -11
- package/lib/cjs/content-fields/hubtype-fields/custom-conditional.js +0 -3
- package/lib/cjs/content-fields/hubtype-fields/custom-conditional.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/fallback.d.ts +0 -9
- package/lib/cjs/content-fields/hubtype-fields/fallback.js +0 -3
- package/lib/cjs/content-fields/hubtype-fields/fallback.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/function.d.ts +0 -30
- package/lib/cjs/content-fields/hubtype-fields/function.js +0 -11
- package/lib/cjs/content-fields/hubtype-fields/function.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/go-to-flow.js +0 -3
- package/lib/cjs/content-fields/hubtype-fields/go-to-flow.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/handoff.js +0 -3
- package/lib/cjs/content-fields/hubtype-fields/handoff.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/image.d.ts +0 -8
- package/lib/cjs/content-fields/hubtype-fields/image.js +0 -3
- package/lib/cjs/content-fields/hubtype-fields/image.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/index.d.ts +0 -27
- package/lib/cjs/content-fields/hubtype-fields/index.js +0 -31
- package/lib/cjs/content-fields/hubtype-fields/index.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/keyword.js +0 -3
- package/lib/cjs/content-fields/hubtype-fields/keyword.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/node-types.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/nodes.js +0 -3
- package/lib/cjs/content-fields/hubtype-fields/nodes.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/payload.d.ts +0 -8
- package/lib/cjs/content-fields/hubtype-fields/payload.js +0 -3
- package/lib/cjs/content-fields/hubtype-fields/payload.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/queue-status-conditional.d.ts +0 -25
- package/lib/cjs/content-fields/hubtype-fields/queue-status-conditional.js +0 -3
- package/lib/cjs/content-fields/hubtype-fields/queue-status-conditional.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/rating.d.ts +0 -23
- package/lib/cjs/content-fields/hubtype-fields/rating.js +0 -9
- package/lib/cjs/content-fields/hubtype-fields/rating.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/smart-intent.d.ts +0 -12
- package/lib/cjs/content-fields/hubtype-fields/smart-intent.js +0 -3
- package/lib/cjs/content-fields/hubtype-fields/smart-intent.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/text.d.ts +0 -11
- package/lib/cjs/content-fields/hubtype-fields/text.js +0 -3
- package/lib/cjs/content-fields/hubtype-fields/text.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/url.js +0 -3
- package/lib/cjs/content-fields/hubtype-fields/url.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/video.d.ts +0 -8
- package/lib/cjs/content-fields/hubtype-fields/video.js +0 -3
- package/lib/cjs/content-fields/hubtype-fields/video.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/webview.d.ts +0 -17
- package/lib/cjs/content-fields/hubtype-fields/webview.js +0 -3
- package/lib/cjs/content-fields/hubtype-fields/webview.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/whatsapp-button-list.d.ts +0 -21
- package/lib/cjs/content-fields/hubtype-fields/whatsapp-button-list.js +0 -3
- package/lib/cjs/content-fields/hubtype-fields/whatsapp-button-list.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/whatsapp-cta-url-button.js +0 -3
- package/lib/cjs/content-fields/hubtype-fields/whatsapp-cta-url-button.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/whatsapp-request-contact-info.js +0 -3
- package/lib/cjs/content-fields/hubtype-fields/whatsapp-request-contact-info.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/whatsapp-template.js +0 -9
- package/lib/cjs/content-fields/hubtype-fields/whatsapp-template.js.map +0 -1
- package/lib/cjs/content-fields/index.d.ts +0 -25
- package/lib/cjs/content-fields/index.js +0 -52
- package/lib/cjs/content-fields/index.js.map +0 -1
- package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.js +0 -41
- package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.js.map +0 -1
- package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.js +0 -36
- package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.js.map +0 -1
- package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list.d.ts +0 -14
- package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js +0 -46
- package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js.map +0 -1
- package/lib/cjs/content-fields/whatsapp-button-list/index.d.ts +0 -3
- package/lib/cjs/content-fields/whatsapp-button-list/index.js +0 -10
- package/lib/cjs/content-fields/whatsapp-button-list/index.js.map +0 -1
- package/lib/cjs/filters/index.js +0 -17
- package/lib/cjs/filters/index.js.map +0 -1
- package/lib/cjs/flow-factory.js +0 -69
- package/lib/cjs/flow-factory.js.map +0 -1
- package/lib/cjs/functions/index.d.ts +0 -11
- package/lib/cjs/functions/index.js.map +0 -1
- package/lib/cjs/index.js +0 -178
- package/lib/cjs/index.js.map +0 -1
- package/lib/cjs/services/hubtype-queues-api.js +0 -26
- package/lib/cjs/services/hubtype-queues-api.js.map +0 -1
- package/lib/cjs/structured-output/flow-builder-content.js +0 -15
- package/lib/cjs/structured-output/flow-builder-content.js.map +0 -1
- package/lib/cjs/tracking.js.map +0 -1
- package/lib/cjs/types.d.ts +0 -62
- package/lib/cjs/types.js +0 -14
- package/lib/cjs/types.js.map +0 -1
- package/lib/cjs/user-input/capture-user-input-api.d.ts +0 -21
- package/lib/cjs/user-input/capture-user-input-api.js.map +0 -1
- package/lib/cjs/user-input/index.d.ts +0 -4
- package/lib/cjs/user-input/index.js +0 -37
- package/lib/cjs/user-input/index.js.map +0 -1
- package/lib/cjs/user-input/keyword.d.ts +0 -27
- package/lib/cjs/user-input/keyword.js +0 -84
- package/lib/cjs/user-input/keyword.js.map +0 -1
- package/lib/cjs/user-input/smart-intent.js.map +0 -1
- package/lib/cjs/utils/ai-agent.js +0 -28
- package/lib/cjs/utils/ai-agent.js.map +0 -1
- package/lib/cjs/utils/authentication.js.map +0 -1
- package/lib/cjs/utils/flow-locale.js.map +0 -1
- package/lib/cjs/utils/get-flow-builder-plugin.js.map +0 -1
- package/lib/cjs/utils/hubtype-assistant-content.js.map +0 -1
- package/lib/cjs/utils/input.js +0 -35
- package/lib/cjs/utils/input.js.map +0 -1
- package/lib/cjs/webview/contents-context.js +0 -12
- package/lib/cjs/webview/contents-context.js.map +0 -1
- package/lib/cjs/webview/index.d.ts +0 -3
- package/lib/cjs/webview/index.js +0 -10
- package/lib/cjs/webview/index.js.map +0 -1
- package/lib/cjs/webview/types.d.ts +0 -47
- package/lib/cjs/webview/types.js +0 -9
- package/lib/cjs/webview/types.js.map +0 -1
- package/lib/cjs/webview/use-webview-contents.js +0 -83
- package/lib/cjs/webview/use-webview-contents.js.map +0 -1
- package/lib/esm/action/ai-agent-from-user-input.d.ts +0 -3
- package/lib/esm/action/ai-agent-from-user-input.js +0 -32
- package/lib/esm/action/ai-agent-from-user-input.js.map +0 -1
- package/lib/esm/action/context.js +0 -17
- package/lib/esm/action/context.js.map +0 -1
- package/lib/esm/action/fallback.d.ts +0 -3
- package/lib/esm/action/fallback.js +0 -36
- package/lib/esm/action/fallback.js.map +0 -1
- package/lib/esm/action/first-interaction.d.ts +0 -3
- package/lib/esm/action/first-interaction.js +0 -88
- package/lib/esm/action/first-interaction.js.map +0 -1
- package/lib/esm/action/get-contents.d.ts +0 -3
- package/lib/esm/action/get-contents.js +0 -39
- package/lib/esm/action/get-contents.js.map +0 -1
- package/lib/esm/action/index.js.map +0 -1
- package/lib/esm/action/payload.d.ts +0 -3
- package/lib/esm/action/payload.js +0 -74
- package/lib/esm/action/payload.js.map +0 -1
- package/lib/esm/api.d.ts +0 -40
- package/lib/esm/api.js.map +0 -1
- package/lib/esm/constants.d.ts +0 -13
- package/lib/esm/constants.js +0 -19
- package/lib/esm/constants.js.map +0 -1
- package/lib/esm/content-fields/content-fields-base.js +0 -74
- package/lib/esm/content-fields/content-fields-base.js.map +0 -1
- package/lib/esm/content-fields/custom-conditional/custom-conditional-v2-evaluators.js +0 -71
- package/lib/esm/content-fields/custom-conditional/custom-conditional-v2-evaluators.js.map +0 -1
- package/lib/esm/content-fields/custom-conditional/custom-conditional-v2-resolver.js +0 -58
- package/lib/esm/content-fields/custom-conditional/custom-conditional-v2-resolver.js.map +0 -1
- package/lib/esm/content-fields/custom-conditional/flow-custom-condition-v2.d.ts +0 -17
- package/lib/esm/content-fields/custom-conditional/flow-custom-condition-v2.js +0 -79
- package/lib/esm/content-fields/custom-conditional/flow-custom-condition-v2.js.map +0 -1
- package/lib/esm/content-fields/flow-ai-agent-base.js +0 -97
- package/lib/esm/content-fields/flow-ai-agent-base.js.map +0 -1
- package/lib/esm/content-fields/flow-ai-agent-router.js.map +0 -1
- package/lib/esm/content-fields/flow-ai-agent.d.ts +0 -17
- package/lib/esm/content-fields/flow-ai-agent.js +0 -64
- package/lib/esm/content-fields/flow-ai-agent.js.map +0 -1
- package/lib/esm/content-fields/flow-bot-action.js.map +0 -1
- package/lib/esm/content-fields/flow-button.js.map +0 -1
- package/lib/esm/content-fields/flow-capture-user-input.d.ts +0 -14
- package/lib/esm/content-fields/flow-capture-user-input.js +0 -45
- package/lib/esm/content-fields/flow-capture-user-input.js.map +0 -1
- package/lib/esm/content-fields/flow-carousel.js +0 -152
- package/lib/esm/content-fields/flow-carousel.js.map +0 -1
- package/lib/esm/content-fields/flow-channel-conditional.js.map +0 -1
- package/lib/esm/content-fields/flow-country-conditional.d.ts +0 -13
- package/lib/esm/content-fields/flow-country-conditional.js.map +0 -1
- package/lib/esm/content-fields/flow-custom-conditional.d.ts +0 -17
- package/lib/esm/content-fields/flow-custom-conditional.js.map +0 -1
- package/lib/esm/content-fields/flow-element.d.ts +0 -22
- package/lib/esm/content-fields/flow-element.js +0 -50
- package/lib/esm/content-fields/flow-element.js.map +0 -1
- package/lib/esm/content-fields/flow-go-to-flow.js.map +0 -1
- package/lib/esm/content-fields/flow-handoff.d.ts +0 -17
- package/lib/esm/content-fields/flow-handoff.js +0 -68
- package/lib/esm/content-fields/flow-handoff.js.map +0 -1
- package/lib/esm/content-fields/flow-image.d.ts +0 -10
- package/lib/esm/content-fields/flow-image.js +0 -33
- package/lib/esm/content-fields/flow-image.js.map +0 -1
- package/lib/esm/content-fields/flow-queue-status-conditional.d.ts +0 -30
- package/lib/esm/content-fields/flow-queue-status-conditional.js +0 -95
- package/lib/esm/content-fields/flow-queue-status-conditional.js.map +0 -1
- package/lib/esm/content-fields/flow-rating.js +0 -66
- package/lib/esm/content-fields/flow-rating.js.map +0 -1
- package/lib/esm/content-fields/flow-text.d.ts +0 -15
- package/lib/esm/content-fields/flow-text.js +0 -60
- package/lib/esm/content-fields/flow-text.js.map +0 -1
- package/lib/esm/content-fields/flow-video.js +0 -33
- package/lib/esm/content-fields/flow-video.js.map +0 -1
- package/lib/esm/content-fields/flow-webview.js +0 -78
- package/lib/esm/content-fields/flow-webview.js.map +0 -1
- package/lib/esm/content-fields/flow-whatsapp-cta-url-button.js +0 -92
- package/lib/esm/content-fields/flow-whatsapp-cta-url-button.js.map +0 -1
- package/lib/esm/content-fields/flow-whatsapp-request-contact-info.js +0 -45
- package/lib/esm/content-fields/flow-whatsapp-request-contact-info.js.map +0 -1
- package/lib/esm/content-fields/flow-whatsapp-template.d.ts +0 -37
- package/lib/esm/content-fields/flow-whatsapp-template.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/ai-agent-router.d.ts +0 -21
- package/lib/esm/content-fields/hubtype-fields/ai-agent-router.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/ai-agent-router.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/ai-agent.d.ts +0 -25
- package/lib/esm/content-fields/hubtype-fields/ai-agent.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/ai-agent.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/bot-action.d.ts +0 -10
- package/lib/esm/content-fields/hubtype-fields/bot-action.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/bot-action.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/button.d.ts +0 -8
- package/lib/esm/content-fields/hubtype-fields/button.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/button.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/capture-user-input.d.ts +0 -19
- package/lib/esm/content-fields/hubtype-fields/capture-user-input.js +0 -12
- package/lib/esm/content-fields/hubtype-fields/capture-user-input.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/carousel.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/carousel.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/channel-conditional.d.ts +0 -10
- package/lib/esm/content-fields/hubtype-fields/channel-conditional.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/channel-conditional.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/common.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/common.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/country-conditional.d.ts +0 -10
- package/lib/esm/content-fields/hubtype-fields/country-conditional.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/country-conditional.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/custom-conditional-v2.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/custom-conditional.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/custom-conditional.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/fallback.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/fallback.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/function.js +0 -11
- package/lib/esm/content-fields/hubtype-fields/function.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/go-to-flow.d.ts +0 -9
- package/lib/esm/content-fields/hubtype-fields/go-to-flow.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/go-to-flow.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/handoff.d.ts +0 -11
- package/lib/esm/content-fields/hubtype-fields/handoff.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/handoff.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/image.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/image.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/index.d.ts +0 -27
- package/lib/esm/content-fields/hubtype-fields/index.js +0 -31
- package/lib/esm/content-fields/hubtype-fields/index.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/keyword.d.ts +0 -9
- package/lib/esm/content-fields/hubtype-fields/keyword.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/keyword.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/node-types.d.ts +0 -31
- package/lib/esm/content-fields/hubtype-fields/node-types.js +0 -38
- package/lib/esm/content-fields/hubtype-fields/node-types.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/nodes.d.ts +0 -26
- package/lib/esm/content-fields/hubtype-fields/nodes.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/nodes.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/payload.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/payload.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/queue-status-conditional.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/queue-status-conditional.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/rating.js +0 -9
- package/lib/esm/content-fields/hubtype-fields/rating.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/smart-intent.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/smart-intent.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/text.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/text.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/url.d.ts +0 -8
- package/lib/esm/content-fields/hubtype-fields/url.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/url.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/video.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/video.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/webview.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/webview.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/whatsapp-button-list.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/whatsapp-button-list.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/whatsapp-cta-url-button.d.ts +0 -17
- package/lib/esm/content-fields/hubtype-fields/whatsapp-cta-url-button.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/whatsapp-cta-url-button.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/whatsapp-request-contact-info.d.ts +0 -8
- package/lib/esm/content-fields/hubtype-fields/whatsapp-request-contact-info.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/whatsapp-request-contact-info.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/whatsapp-template.d.ts +0 -96
- package/lib/esm/content-fields/hubtype-fields/whatsapp-template.js +0 -9
- package/lib/esm/content-fields/hubtype-fields/whatsapp-template.js.map +0 -1
- package/lib/esm/content-fields/index.d.ts +0 -25
- package/lib/esm/content-fields/index.js +0 -52
- package/lib/esm/content-fields/index.js.map +0 -1
- package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.d.ts +0 -14
- package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.js.map +0 -1
- package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.d.ts +0 -13
- package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.js +0 -36
- package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.js.map +0 -1
- package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js +0 -46
- package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js.map +0 -1
- package/lib/esm/content-fields/whatsapp-button-list/index.js +0 -10
- package/lib/esm/content-fields/whatsapp-button-list/index.js.map +0 -1
- package/lib/esm/filters/index.d.ts +0 -12
- package/lib/esm/filters/index.js +0 -17
- package/lib/esm/filters/index.js.map +0 -1
- package/lib/esm/flow-factory.d.ts +0 -12
- package/lib/esm/flow-factory.js +0 -69
- package/lib/esm/flow-factory.js.map +0 -1
- package/lib/esm/functions/index.js +0 -49
- package/lib/esm/functions/index.js.map +0 -1
- package/lib/esm/index.d.ts +0 -45
- package/lib/esm/index.js.map +0 -1
- package/lib/esm/services/hubtype-queues-api.d.ts +0 -14
- package/lib/esm/services/hubtype-queues-api.js +0 -26
- package/lib/esm/services/hubtype-queues-api.js.map +0 -1
- package/lib/esm/structured-output/flow-builder-content.d.ts +0 -13
- package/lib/esm/structured-output/flow-builder-content.js +0 -15
- package/lib/esm/structured-output/flow-builder-content.js.map +0 -1
- package/lib/esm/tracking.d.ts +0 -16
- package/lib/esm/tracking.js +0 -71
- package/lib/esm/tracking.js.map +0 -1
- package/lib/esm/types.js +0 -14
- package/lib/esm/types.js.map +0 -1
- package/lib/esm/user-input/capture-user-input-api.js +0 -88
- package/lib/esm/user-input/capture-user-input-api.js.map +0 -1
- package/lib/esm/user-input/index.js +0 -37
- package/lib/esm/user-input/index.js.map +0 -1
- package/lib/esm/user-input/keyword.js.map +0 -1
- package/lib/esm/user-input/smart-intent.d.ts +0 -24
- package/lib/esm/user-input/smart-intent.js +0 -89
- package/lib/esm/user-input/smart-intent.js.map +0 -1
- package/lib/esm/utils/ai-agent.d.ts +0 -11
- package/lib/esm/utils/ai-agent.js +0 -28
- package/lib/esm/utils/ai-agent.js.map +0 -1
- package/lib/esm/utils/authentication.d.ts +0 -2
- package/lib/esm/utils/authentication.js +0 -21
- package/lib/esm/utils/authentication.js.map +0 -1
- package/lib/esm/utils/flow-locale.d.ts +0 -22
- package/lib/esm/utils/flow-locale.js +0 -79
- package/lib/esm/utils/flow-locale.js.map +0 -1
- package/lib/esm/utils/get-flow-builder-plugin.d.ts +0 -3
- package/lib/esm/utils/get-flow-builder-plugin.js +0 -16
- package/lib/esm/utils/get-flow-builder-plugin.js.map +0 -1
- package/lib/esm/utils/hubtype-assistant-content.d.ts +0 -13
- package/lib/esm/utils/hubtype-assistant-content.js +0 -184
- package/lib/esm/utils/hubtype-assistant-content.js.map +0 -1
- package/lib/esm/utils/input.d.ts +0 -6
- package/lib/esm/utils/input.js +0 -35
- package/lib/esm/utils/input.js.map +0 -1
- package/lib/esm/webview/contents-context.d.ts +0 -2
- package/lib/esm/webview/contents-context.js +0 -12
- package/lib/esm/webview/contents-context.js.map +0 -1
- package/lib/esm/webview/index.d.ts +0 -3
- package/lib/esm/webview/index.js +0 -10
- package/lib/esm/webview/index.js.map +0 -1
- package/lib/esm/webview/types.js +0 -9
- package/lib/esm/webview/types.js.map +0 -1
- package/lib/esm/webview/use-webview-contents.d.ts +0 -2
- package/lib/esm/webview/use-webview-contents.js +0 -83
- package/lib/esm/webview/use-webview-contents.js.map +0 -1
- /package/lib/{cjs/constants.d.ts → constants.d.ts} +0 -0
- /package/lib/{cjs/content-fields → content-fields}/hubtype-fields/node-types.d.ts +0 -0
- /package/lib/{cjs/services → services}/hubtype-queues-api.d.ts +0 -0
- /package/lib/{cjs/structured-output → structured-output}/flow-builder-content.d.ts +0 -0
- /package/lib/{cjs/utils → utils}/authentication.d.ts +0 -0
- /package/lib/{cjs/utils → utils}/flow-locale.d.ts +0 -0
- /package/lib/{cjs/utils → utils}/input.d.ts +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content-fields/flow-carousel.js","sources":["../../src/content-fields/flow-carousel.tsx"],"sourcesContent":["import {\n type BotContext,\n type CarouselMessage,\n isWhatsapp,\n OutputMessageType,\n} from '@botonic/core'\nimport {\n type ActionRequest,\n Button,\n CardType,\n Carousel,\n Text,\n WhatsappCTAUrlButton,\n WhatsappCTAUrlHeaderType,\n type WhatsappInteractiveMediaCard,\n WhatsappInteractiveMediaCarousel,\n} from '@botonic/react'\n\nimport type { FlowBuilderApi } from '../api'\nimport { trackOneContent } from '../tracking'\nimport { ContentFieldsBase } from './content-fields-base'\nimport { FlowElement } from './flow-element'\nimport type { HtCarouselNode } from './hubtype-fields'\n\nconst DEFAULT_TEXT_MESSAGE = 'These are the options'\nexport class FlowCarousel extends ContentFieldsBase {\n public whatsappText: string = ''\n public elements: FlowElement[] = []\n\n static fromHubtypeCMS(\n component: HtCarouselNode,\n locale: string,\n cmsApi: FlowBuilderApi,\n botContext: BotContext\n ): FlowCarousel {\n const newCarousel = new FlowCarousel(component.id)\n newCarousel.code = component.code\n newCarousel.elements = component.content.elements.map(element =>\n FlowElement.fromHubtypeCMS(element, locale, cmsApi, botContext)\n )\n newCarousel.whatsappText = FlowCarousel.getTextByLocale(\n locale,\n component.content.whatsapp_text\n )\n newCarousel.followUp = component.follow_up\n\n return newCarousel\n }\n\n async trackFlow(request: ActionRequest): Promise<void> {\n await trackOneContent(request, this)\n for (const element of this.elements) {\n await element.trackFlow(request)\n }\n }\n\n static areElementsValidForWhatsapp = (carouselMessage: CarouselMessage) => {\n const isValid =\n carouselMessage.content.elements.every(element => element.button.url) ||\n carouselMessage.content.elements.every(element => element.button.payload)\n\n if (!isValid) {\n console.warn(\n 'Cannot use WhatsappInteractiveMediaCarousel for Whatsapp created by AIAgent, all elements must have either url or payload.',\n carouselMessage.content\n )\n }\n return isValid\n }\n\n static generateWhatsappElementText(element: {\n title: string\n subtitle?: string\n }): string {\n if (element.subtitle) {\n return `*${element.title}*\\n${element.subtitle}`\n }\n return element.title\n }\n\n private static createCardsFromElements(\n elements: FlowElement[]\n ): WhatsappInteractiveMediaCard[] {\n return elements.map(element => {\n const text = FlowCarousel.generateWhatsappElementText(element)\n\n if (element.button?.url) {\n return {\n imageLink: element.image,\n text,\n type: CardType.CTA_URL as const,\n action: {\n buttonText: element.button.text,\n buttonUrl: element.button.url,\n },\n }\n }\n if (element.button?.payload) {\n return {\n imageLink: element.image,\n text,\n type: CardType.QUICK_REPLY as const,\n action: {\n buttons: [\n {\n text: element.button.text,\n payload: element.button.payload,\n },\n ],\n },\n }\n }\n throw new Error('Element must have a url or a payload')\n })\n }\n\n static fromAIAgent(\n id: string,\n carouselMessage: CarouselMessage,\n botContext: ActionRequest\n ): JSX.Element {\n if (\n isWhatsapp(botContext.session) &&\n FlowCarousel.areElementsValidForWhatsapp(carouselMessage)\n ) {\n if (\n carouselMessage.content.elements.length === 1 &&\n carouselMessage.content.elements[0].button?.url\n ) {\n const element = carouselMessage.content.elements[0]\n const buttonText = element.button.text\n const url = carouselMessage.content.elements[0].button.url\n // TODO: Add a new fromAIAgent method in FlowWhatsappCtaUrlButtonNode to create a WhatsappCTAUrlButton from an AIAgent message\n return (\n <WhatsappCTAUrlButton\n key={id}\n body={element.title}\n headerType={WhatsappCTAUrlHeaderType.Image}\n headerImage={element.image}\n footer={element.subtitle}\n displayText={buttonText}\n url={url}\n />\n )\n }\n\n if (\n carouselMessage.content.elements.length === 1 &&\n carouselMessage.content.elements[0].button?.payload\n ) {\n const element = carouselMessage.content.elements[0]\n const text = FlowCarousel.generateWhatsappElementText(element)\n const buttonPayload = carouselMessage.content.elements[0].button.payload\n const buttonText = carouselMessage.content.elements[0].button.text\n\n return (\n <Text>\n {text}\n <Button payload={buttonPayload}>{buttonText}</Button>\n </Text>\n )\n }\n\n const elements = carouselMessage.content.elements.map((element, index) =>\n FlowElement.fromAIAgent(`${id}-element-${index}`, element)\n )\n return (\n <WhatsappInteractiveMediaCarousel\n cards={FlowCarousel.createCardsFromElements(elements)}\n textMessage={carouselMessage.content.text || DEFAULT_TEXT_MESSAGE}\n />\n )\n }\n return (\n <Carousel key={id}>\n {carouselMessage.content.elements.map((element, index) =>\n FlowElement.fromAIAgent(\n `${id}-element-${index}`,\n element\n ).renderElement(id)\n )}\n </Carousel>\n )\n }\n\n private toCarouselMessage(elements: FlowElement[]): CarouselMessage {\n return {\n type: OutputMessageType.Carousel,\n content: {\n elements: elements.map(element => {\n return {\n button: {\n text: element.button?.text || '',\n payload: element.button?.payload,\n url: element.button?.url,\n },\n title: element.title,\n subtitle: element.subtitle,\n image: element.image,\n }\n }),\n },\n }\n }\n\n async processContent(botContext: BotContext): Promise<void> {\n await this.filterContent(botContext, this)\n await this.trackFlow(botContext)\n return\n }\n\n toBotonic(botContext: BotContext): JSX.Element {\n const carouselMessage = this.toCarouselMessage(this.elements)\n if (\n isWhatsapp(botContext.session) &&\n FlowCarousel.areElementsValidForWhatsapp(carouselMessage)\n ) {\n if (this.elements.length === 1 && this.elements[0].button?.url) {\n const element = this.elements[0]\n const buttonText = this.elements[0].button.text\n const url = this.elements[0].button.url\n\n return (\n <WhatsappCTAUrlButton\n key={this.id}\n body={element.title}\n headerType={WhatsappCTAUrlHeaderType.Image}\n headerImage={element.image}\n displayText={buttonText}\n url={url}\n />\n )\n }\n\n if (\n this.elements.length === 1 &&\n this.elements[0].button &&\n this.elements[0].button?.payload\n ) {\n const element = this.elements[0]\n const text = FlowCarousel.generateWhatsappElementText(element)\n const buttonPayload = this.elements[0].button.payload\n const buttonText = this.elements[0].button.text\n\n return (\n <Text>\n {text}\n <Button payload={buttonPayload}>{buttonText}</Button>\n </Text>\n )\n }\n\n return (\n <WhatsappInteractiveMediaCarousel\n cards={FlowCarousel.createCardsFromElements(this.elements)}\n // TODO: Add the text message in flow builder frontend and take it from the carousel node with different languages\n textMessage={this.whatsappText || DEFAULT_TEXT_MESSAGE}\n />\n )\n }\n return (\n <Carousel key={this.id}>\n {this.elements.map(element => element.renderElement(this.id))}\n </Carousel>\n )\n }\n}\n"],"names":["isWhatsapp","OutputMessageType","Button","CardType","Carousel","Text","WhatsappCTAUrlButton","WhatsappCTAUrlHeaderType","WhatsappInteractiveMediaCarousel","trackOneContent","ContentFieldsBase","FlowElement","DEFAULT_TEXT_MESSAGE","FlowCarousel","component","locale","cmsApi","botContext","newCarousel","element","request","elements","text","Error","id","carouselMessage","buttonText","url","buttonPayload","index","isValid","console"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type BotContext } from '@botonic/core';
|
|
2
|
-
import { ContentFieldsBase } from './content-fields-base';
|
|
3
|
-
import type { HtChannelConditionalNode } from './hubtype-fields/channel-conditional';
|
|
4
|
-
import type { HtFunctionResult } from './hubtype-fields/function';
|
|
2
|
+
import { ContentFieldsBase } from './content-fields-base.js';
|
|
3
|
+
import type { HtChannelConditionalNode } from './hubtype-fields/channel-conditional.js';
|
|
4
|
+
import type { HtFunctionResult } from './hubtype-fields/function.js';
|
|
5
5
|
export declare class FlowChannelConditional extends ContentFieldsBase {
|
|
6
6
|
resultMapping: HtFunctionResult[];
|
|
7
7
|
conditionalResult?: HtFunctionResult;
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
1
|
+
import { Fragment, jsx } from "react/jsx-runtime";
|
|
2
|
+
import { EventAction } from "@botonic/core";
|
|
3
|
+
import { getCommonFlowContentEventArgsForContentId, trackEvent } from "../tracking.js";
|
|
4
|
+
import { ContentFieldsBase } from "./content-fields-base.js";
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class FlowChannelConditional extends ContentFieldsBase {
|
|
15
15
|
static fromHubtypeCMS(component, botContext) {
|
|
16
16
|
const newChannelConditional = new FlowChannelConditional(component.id);
|
|
17
17
|
newChannelConditional.code = component.code;
|
|
@@ -21,8 +21,7 @@ class FlowChannelConditional extends content_fields_base_1.ContentFieldsBase {
|
|
|
21
21
|
}
|
|
22
22
|
setConditionalResult(botContext) {
|
|
23
23
|
const provider = botContext.session.user.provider;
|
|
24
|
-
const conditionalResult = this.resultMapping.find(rMap
|
|
25
|
-
this.resultMapping.find(rMap => rMap.result === 'default');
|
|
24
|
+
const conditionalResult = this.resultMapping.find((rMap)=>rMap.result === provider) || this.resultMapping.find((rMap)=>rMap.result === 'default');
|
|
26
25
|
if (!conditionalResult) {
|
|
27
26
|
throw new Error(`No conditional result found for node ${this.code} with channel: ${provider}`);
|
|
28
27
|
}
|
|
@@ -31,27 +30,32 @@ class FlowChannelConditional extends content_fields_base_1.ContentFieldsBase {
|
|
|
31
30
|
this.followUp = conditionalResult.target;
|
|
32
31
|
}
|
|
33
32
|
async trackFlow(botContext) {
|
|
34
|
-
const { flowThreadId, flowId, flowName, flowNodeId, flowNodeContentId } =
|
|
33
|
+
const { flowThreadId, flowId, flowName, flowNodeId, flowNodeContentId } = getCommonFlowContentEventArgsForContentId(botContext, this.id);
|
|
35
34
|
const eventChannelConditional = {
|
|
36
|
-
action:
|
|
35
|
+
action: EventAction.ConditionalChannel,
|
|
37
36
|
flowThreadId,
|
|
38
37
|
flowId,
|
|
39
38
|
flowName,
|
|
40
39
|
flowNodeId,
|
|
41
40
|
flowNodeContentId,
|
|
42
41
|
flowNodeIsMeaningful: false,
|
|
43
|
-
channel: this.channelResult
|
|
42
|
+
channel: this.channelResult
|
|
44
43
|
};
|
|
45
44
|
const { action, ...eventArgs } = eventChannelConditional;
|
|
46
|
-
await
|
|
45
|
+
await trackEvent(botContext, action, eventArgs);
|
|
47
46
|
}
|
|
48
47
|
async processContent(botContext) {
|
|
49
48
|
await this.filterContent(botContext, this);
|
|
50
49
|
await this.trackFlow(botContext);
|
|
51
50
|
}
|
|
52
51
|
toBotonic() {
|
|
53
|
-
return
|
|
52
|
+
return /*#__PURE__*/ jsx(Fragment, {});
|
|
53
|
+
}
|
|
54
|
+
constructor(...args){
|
|
55
|
+
super(...args), this.resultMapping = [], this.conditionalResult = undefined, this.channelResult = '';
|
|
54
56
|
}
|
|
55
57
|
}
|
|
56
|
-
|
|
58
|
+
|
|
59
|
+
export { FlowChannelConditional };
|
|
60
|
+
|
|
57
61
|
//# sourceMappingURL=flow-channel-conditional.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content-fields/flow-channel-conditional.js","sources":["../../src/content-fields/flow-channel-conditional.tsx"],"sourcesContent":["import {\n type BotContext,\n EventAction,\n type EventConditionalChannel,\n} from '@botonic/core'\n\nimport {\n getCommonFlowContentEventArgsForContentId,\n trackEvent,\n} from '../tracking'\nimport { ContentFieldsBase } from './content-fields-base'\nimport type { HtChannelConditionalNode } from './hubtype-fields/channel-conditional'\nimport type { HtFunctionResult } from './hubtype-fields/function'\n\nexport class FlowChannelConditional extends ContentFieldsBase {\n public resultMapping: HtFunctionResult[] = []\n public conditionalResult?: HtFunctionResult = undefined\n public channelResult: string = ''\n\n static fromHubtypeCMS(\n component: HtChannelConditionalNode,\n botContext: BotContext\n ): FlowChannelConditional {\n const newChannelConditional = new FlowChannelConditional(component.id)\n newChannelConditional.code = component.code\n newChannelConditional.resultMapping = component.content.result_mapping\n newChannelConditional.setConditionalResult(botContext)\n\n return newChannelConditional\n }\n\n setConditionalResult(botContext: BotContext): void {\n const provider = botContext.session.user.provider\n const conditionalResult =\n this.resultMapping.find(rMap => rMap.result === provider) ||\n this.resultMapping.find(rMap => rMap.result === 'default')\n if (!conditionalResult) {\n throw new Error(\n `No conditional result found for node ${this.code} with channel: ${provider}`\n )\n }\n this.conditionalResult = conditionalResult\n this.channelResult = conditionalResult.result as string\n this.followUp = conditionalResult.target\n }\n\n async trackFlow(botContext: BotContext): Promise<void> {\n const { flowThreadId, flowId, flowName, flowNodeId, flowNodeContentId } =\n getCommonFlowContentEventArgsForContentId(botContext, this.id)\n\n const eventChannelConditional: EventConditionalChannel = {\n action: EventAction.ConditionalChannel,\n flowThreadId,\n flowId,\n flowName,\n flowNodeId,\n flowNodeContentId,\n flowNodeIsMeaningful: false,\n channel: this.channelResult,\n }\n const { action, ...eventArgs } = eventChannelConditional\n await trackEvent(botContext, action, eventArgs)\n }\n\n async processContent(botContext: BotContext): Promise<void> {\n await this.filterContent(botContext, this)\n await this.trackFlow(botContext)\n }\n\n toBotonic(): JSX.Element {\n return <></>\n }\n}\n"],"names":["EventAction","getCommonFlowContentEventArgsForContentId","trackEvent","ContentFieldsBase","FlowChannelConditional","component","botContext","newChannelConditional","provider","conditionalResult","rMap","Error","flowThreadId","flowId","flowName","flowNodeId","flowNodeContentId","eventChannelConditional","action","eventArgs","undefined"],"mappings":";;;;;;;;;;AAIsB;AAKF;AACqC;AAIlD,MAAMI,sBAAsBA,SAASD,iBAAiBA;IAK3D,OAAO,eACLE,SAAmC,EACnCC,UAAsB,EACE;QACxB,MAAMC,wBAAwB,IAAIH,sBAAsBA,CAACC,UAAU,EAAE;QACrEE,sBAAsB,IAAI,GAAGF,UAAU,IAAI;QAC3CE,sBAAsB,aAAa,GAAGF,UAAU,OAAO,CAAC,cAAc;QACtEE,sBAAsB,oBAAoB,CAACD;QAE3C,OAAOC;IACT;IAEA,qBAAqBD,UAAsB,EAAQ;QACjD,MAAME,WAAWF,WAAW,OAAO,CAAC,IAAI,CAAC,QAAQ;QACjD,MAAMG,oBACJ,IAAI,CAAC,aAAa,CAAC,IAAI,CAACC,CAAAA,OAAQA,KAAK,MAAM,KAAKF,aAChD,IAAI,CAAC,aAAa,CAAC,IAAI,CAACE,CAAAA,OAAQA,KAAK,MAAM,KAAK;QAClD,IAAI,CAACD,mBAAmB;YACtB,MAAM,IAAIE,MACR,CAAC,qCAAqC,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe,EAAEH,UAAU;QAEjF;QACA,IAAI,CAAC,iBAAiB,GAAGC;QACzB,IAAI,CAAC,aAAa,GAAGA,kBAAkB,MAAM;QAC7C,IAAI,CAAC,QAAQ,GAAGA,kBAAkB,MAAM;IAC1C;IAEA,MAAM,UAAUH,UAAsB,EAAiB;QACrD,MAAM,EAAEM,YAAY,EAAEC,MAAM,EAAEC,QAAQ,EAAEC,UAAU,EAAEC,iBAAiB,EAAE,GACrEf,yCAAyCA,CAACK,YAAY,IAAI,CAAC,EAAE;QAE/D,MAAMW,0BAAmD;YACvD,QAAQjB,8BAA8B;YACtCY;YACAC;YACAC;YACAC;YACAC;YACA,sBAAsB;YACtB,SAAS,IAAI,CAAC,aAAa;QAC7B;QACA,MAAM,EAAEE,MAAM,EAAE,GAAGC,WAAW,GAAGF;QACjC,MAAMf,UAAUA,CAACI,YAAYY,QAAQC;IACvC;IAEA,MAAM,eAAeb,UAAsB,EAAiB;QAC1D,MAAM,IAAI,CAAC,aAAa,CAACA,YAAY,IAAI;QACzC,MAAM,IAAI,CAAC,SAAS,CAACA;IACvB;IAEA,YAAyB;QACvB,qBAAO;IACT;;QAzDK,qBACE,gBAAoC,EAAE,OACtC,oBAAuCc,gBACvC,gBAAwB;;AAuDjC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type BotContext } from '@botonic/core';
|
|
2
|
-
import { ContentFieldsBase } from './content-fields-base';
|
|
3
|
-
import type { HtFunctionResult } from './hubtype-fields';
|
|
4
|
-
import type { HtCountryConditionalNode } from './hubtype-fields/country-conditional';
|
|
2
|
+
import { ContentFieldsBase } from './content-fields-base.js';
|
|
3
|
+
import type { HtFunctionResult } from './hubtype-fields/index.js';
|
|
4
|
+
import type { HtCountryConditionalNode } from './hubtype-fields/country-conditional.js';
|
|
5
5
|
export declare class FlowCountryConditional extends ContentFieldsBase {
|
|
6
6
|
resultMapping: HtFunctionResult[];
|
|
7
7
|
conditionalResult?: HtFunctionResult;
|
|
@@ -1,16 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
1
|
+
import { Fragment, jsx } from "react/jsx-runtime";
|
|
2
|
+
import { EventAction } from "@botonic/core";
|
|
3
|
+
import { getCommonFlowContentEventArgsForContentId, trackEvent } from "../tracking.js";
|
|
4
|
+
import { ContentFieldsBase } from "./content-fields-base.js";
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class FlowCountryConditional extends ContentFieldsBase {
|
|
14
15
|
static fromHubtypeCMS(component, botContext) {
|
|
15
16
|
const newCountryConditional = new FlowCountryConditional(component.id);
|
|
16
17
|
newCountryConditional.code = component.code;
|
|
@@ -20,8 +21,7 @@ class FlowCountryConditional extends content_fields_base_1.ContentFieldsBase {
|
|
|
20
21
|
}
|
|
21
22
|
setConditionalResult(botContext) {
|
|
22
23
|
const country = botContext.getUserCountry();
|
|
23
|
-
const conditionalResult = this.resultMapping.find(rMap
|
|
24
|
-
this.resultMapping.find(rMap => rMap.result === 'default');
|
|
24
|
+
const conditionalResult = this.resultMapping.find((rMap)=>rMap.result === country) || this.resultMapping.find((rMap)=>rMap.result === 'default');
|
|
25
25
|
if (!conditionalResult) {
|
|
26
26
|
throw new Error(`No conditional result found for node ${this.code} with country: ${country}`);
|
|
27
27
|
}
|
|
@@ -29,22 +29,22 @@ class FlowCountryConditional extends content_fields_base_1.ContentFieldsBase {
|
|
|
29
29
|
this.followUp = conditionalResult.target;
|
|
30
30
|
}
|
|
31
31
|
async trackFlow(botContext) {
|
|
32
|
-
const { flowThreadId, flowId, flowName, flowNodeId, flowNodeContentId } =
|
|
32
|
+
const { flowThreadId, flowId, flowName, flowNodeId, flowNodeContentId } = getCommonFlowContentEventArgsForContentId(botContext, this.id);
|
|
33
33
|
if (!this.conditionalResult?.result) {
|
|
34
34
|
console.warn(`Tracking event for node ${this.code} but no conditional result found`);
|
|
35
35
|
}
|
|
36
36
|
const eventCountryConditional = {
|
|
37
|
-
action:
|
|
37
|
+
action: EventAction.ConditionalCountry,
|
|
38
38
|
flowThreadId,
|
|
39
39
|
flowId,
|
|
40
40
|
flowName,
|
|
41
41
|
flowNodeId,
|
|
42
42
|
flowNodeContentId,
|
|
43
43
|
flowNodeIsMeaningful: false,
|
|
44
|
-
country: this.conditionalResult?.result ?? ''
|
|
44
|
+
country: this.conditionalResult?.result ?? ''
|
|
45
45
|
};
|
|
46
46
|
const { action, ...eventArgs } = eventCountryConditional;
|
|
47
|
-
await
|
|
47
|
+
await trackEvent(botContext, action, eventArgs);
|
|
48
48
|
}
|
|
49
49
|
async processContent(botContext) {
|
|
50
50
|
await this.filterContent(botContext, this);
|
|
@@ -52,8 +52,13 @@ class FlowCountryConditional extends content_fields_base_1.ContentFieldsBase {
|
|
|
52
52
|
return;
|
|
53
53
|
}
|
|
54
54
|
toBotonic() {
|
|
55
|
-
return
|
|
55
|
+
return /*#__PURE__*/ jsx(Fragment, {});
|
|
56
|
+
}
|
|
57
|
+
constructor(...args){
|
|
58
|
+
super(...args), this.resultMapping = [], this.conditionalResult = undefined;
|
|
56
59
|
}
|
|
57
60
|
}
|
|
58
|
-
|
|
61
|
+
|
|
62
|
+
export { FlowCountryConditional };
|
|
63
|
+
|
|
59
64
|
//# sourceMappingURL=flow-country-conditional.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content-fields/flow-country-conditional.js","sources":["../../src/content-fields/flow-country-conditional.tsx"],"sourcesContent":["import {\n type BotContext,\n EventAction,\n type EventConditionalCountry,\n} from '@botonic/core'\n\nimport {\n getCommonFlowContentEventArgsForContentId,\n trackEvent,\n} from '../tracking'\nimport { ContentFieldsBase } from './content-fields-base'\nimport type { HtFunctionResult } from './hubtype-fields'\nimport type { HtCountryConditionalNode } from './hubtype-fields/country-conditional'\n\nexport class FlowCountryConditional extends ContentFieldsBase {\n public resultMapping: HtFunctionResult[] = []\n public conditionalResult?: HtFunctionResult = undefined\n\n static fromHubtypeCMS(\n component: HtCountryConditionalNode,\n botContext: BotContext\n ): FlowCountryConditional {\n const newCountryConditional = new FlowCountryConditional(component.id)\n newCountryConditional.code = component.code\n newCountryConditional.resultMapping = component.content.result_mapping\n newCountryConditional.setConditionalResult(botContext)\n\n return newCountryConditional\n }\n\n setConditionalResult(botContext: BotContext): void {\n const country = botContext.getUserCountry()\n const conditionalResult =\n this.resultMapping.find(rMap => rMap.result === country) ||\n this.resultMapping.find(rMap => rMap.result === 'default')\n if (!conditionalResult) {\n throw new Error(\n `No conditional result found for node ${this.code} with country: ${country}`\n )\n }\n this.conditionalResult = conditionalResult\n this.followUp = conditionalResult.target\n }\n\n async trackFlow(botContext: BotContext): Promise<void> {\n const { flowThreadId, flowId, flowName, flowNodeId, flowNodeContentId } =\n getCommonFlowContentEventArgsForContentId(botContext, this.id)\n if (!this.conditionalResult?.result) {\n console.warn(\n `Tracking event for node ${this.code} but no conditional result found`\n )\n }\n const eventCountryConditional: EventConditionalCountry = {\n action: EventAction.ConditionalCountry,\n flowThreadId,\n flowId,\n flowName,\n flowNodeId,\n flowNodeContentId,\n flowNodeIsMeaningful: false,\n country: (this.conditionalResult?.result as string) ?? '',\n }\n const { action, ...eventArgs } = eventCountryConditional\n await trackEvent(botContext, action, eventArgs)\n }\n\n async processContent(botContext: BotContext): Promise<void> {\n await this.filterContent(botContext, this)\n await this.trackFlow(botContext)\n return\n }\n\n toBotonic(): JSX.Element {\n return <></>\n }\n}\n"],"names":["EventAction","getCommonFlowContentEventArgsForContentId","trackEvent","ContentFieldsBase","FlowCountryConditional","component","botContext","newCountryConditional","country","conditionalResult","rMap","Error","flowThreadId","flowId","flowName","flowNodeId","flowNodeContentId","console","eventCountryConditional","action","eventArgs","undefined"],"mappings":";;;;;;;;;;AAIsB;AAKF;AACqC;AAIlD,MAAMI,sBAAsBA,SAASD,iBAAiBA;IAI3D,OAAO,eACLE,SAAmC,EACnCC,UAAsB,EACE;QACxB,MAAMC,wBAAwB,IAAIH,sBAAsBA,CAACC,UAAU,EAAE;QACrEE,sBAAsB,IAAI,GAAGF,UAAU,IAAI;QAC3CE,sBAAsB,aAAa,GAAGF,UAAU,OAAO,CAAC,cAAc;QACtEE,sBAAsB,oBAAoB,CAACD;QAE3C,OAAOC;IACT;IAEA,qBAAqBD,UAAsB,EAAQ;QACjD,MAAME,UAAUF,WAAW,cAAc;QACzC,MAAMG,oBACJ,IAAI,CAAC,aAAa,CAAC,IAAI,CAACC,CAAAA,OAAQA,KAAK,MAAM,KAAKF,YAChD,IAAI,CAAC,aAAa,CAAC,IAAI,CAACE,CAAAA,OAAQA,KAAK,MAAM,KAAK;QAClD,IAAI,CAACD,mBAAmB;YACtB,MAAM,IAAIE,MACR,CAAC,qCAAqC,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe,EAAEH,SAAS;QAEhF;QACA,IAAI,CAAC,iBAAiB,GAAGC;QACzB,IAAI,CAAC,QAAQ,GAAGA,kBAAkB,MAAM;IAC1C;IAEA,MAAM,UAAUH,UAAsB,EAAiB;QACrD,MAAM,EAAEM,YAAY,EAAEC,MAAM,EAAEC,QAAQ,EAAEC,UAAU,EAAEC,iBAAiB,EAAE,GACrEf,yCAAyCA,CAACK,YAAY,IAAI,CAAC,EAAE;QAC/D,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,QAAQ;YACnCW,QAAQ,IAAI,CACV,CAAC,wBAAwB,EAAE,IAAI,CAAC,IAAI,CAAC,gCAAgC,CAAC;QAE1E;QACA,MAAMC,0BAAmD;YACvD,QAAQlB,8BAA8B;YACtCY;YACAC;YACAC;YACAC;YACAC;YACA,sBAAsB;YACtB,SAAU,IAAI,CAAC,iBAAiB,EAAE,UAAqB;QACzD;QACA,MAAM,EAAEG,MAAM,EAAE,GAAGC,WAAW,GAAGF;QACjC,MAAMhB,UAAUA,CAACI,YAAYa,QAAQC;IACvC;IAEA,MAAM,eAAed,UAAsB,EAAiB;QAC1D,MAAM,IAAI,CAAC,aAAa,CAACA,YAAY,IAAI;QACzC,MAAM,IAAI,CAAC,SAAS,CAACA;QACrB;IACF;IAEA,YAAyB;QACvB,qBAAO;IACT;;QA5DK,qBACE,gBAAoC,EAAE,OACtC,oBAAuCe;;AA2DhD"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type BotContext } from '@botonic/core';
|
|
2
|
-
import { ContentFieldsBase } from './content-fields-base';
|
|
3
|
-
import type { HtCustomConditionalNode } from './hubtype-fields/custom-conditional';
|
|
4
|
-
import type { HtFunctionArguments, HtFunctionResult } from './hubtype-fields/function';
|
|
2
|
+
import { ContentFieldsBase } from './content-fields-base.js';
|
|
3
|
+
import type { HtCustomConditionalNode } from './hubtype-fields/custom-conditional.js';
|
|
4
|
+
import type { HtFunctionArguments, HtFunctionResult } from './hubtype-fields/function.js';
|
|
5
5
|
export declare class FlowCustomConditional extends ContentFieldsBase {
|
|
6
6
|
arguments: HtFunctionArguments[];
|
|
7
7
|
resultMapping: HtFunctionResult[];
|
|
@@ -13,5 +13,5 @@ export declare class FlowCustomConditional extends ContentFieldsBase {
|
|
|
13
13
|
trackFlow(botContext: BotContext): Promise<void>;
|
|
14
14
|
private isBooleanConditional;
|
|
15
15
|
processContent(botContext: BotContext): Promise<void>;
|
|
16
|
-
toBotonic(): import("react
|
|
16
|
+
toBotonic(): import("react").JSX.Element;
|
|
17
17
|
}
|
|
@@ -1,18 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
}
|
|
1
|
+
import { Fragment, jsx } from "react/jsx-runtime";
|
|
2
|
+
import { EventAction } from "@botonic/core";
|
|
3
|
+
import { getCommonFlowContentEventArgsForContentId, trackEvent } from "../tracking.js";
|
|
4
|
+
import { ContentFieldsBase } from "./content-fields-base.js";
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class FlowCustomConditional extends ContentFieldsBase {
|
|
16
15
|
static fromHubtypeCMS(component, botContext) {
|
|
17
16
|
const newCustomConditional = new FlowCustomConditional(component.id);
|
|
18
17
|
newCustomConditional.code = component.code;
|
|
@@ -23,7 +22,7 @@ class FlowCustomConditional extends content_fields_base_1.ContentFieldsBase {
|
|
|
23
22
|
return newCustomConditional;
|
|
24
23
|
}
|
|
25
24
|
setConditionalResult(botContext) {
|
|
26
|
-
const functionArgument = this.arguments.find(arg
|
|
25
|
+
const functionArgument = this.arguments.find((arg)=>{
|
|
27
26
|
if ('name' in arg) {
|
|
28
27
|
return arg.name === 'keyPath';
|
|
29
28
|
}
|
|
@@ -32,17 +31,13 @@ class FlowCustomConditional extends content_fields_base_1.ContentFieldsBase {
|
|
|
32
31
|
let keyPath = '';
|
|
33
32
|
if (functionArgument && 'value' in functionArgument) {
|
|
34
33
|
keyPath = functionArgument.value;
|
|
35
|
-
}
|
|
36
|
-
else {
|
|
34
|
+
} else {
|
|
37
35
|
throw new Error(`Key path not found for node ${this.code}`);
|
|
38
36
|
}
|
|
39
37
|
const botVariable = this.getValueFromKeyPath(botContext, keyPath);
|
|
40
|
-
let conditionalResult = this.resultMapping.find(rMap
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
typeof botVariable !== 'boolean') {
|
|
44
|
-
conditionalResult =
|
|
45
|
-
this.resultMapping.find(rMap => rMap.result === (botVariable !== undefined && botVariable !== null)) || this.resultMapping.find(rMap => rMap.result === 'default');
|
|
38
|
+
let conditionalResult = this.resultMapping.find((rMap)=>rMap.result === botVariable) || this.resultMapping.find((rMap)=>rMap.result === 'default');
|
|
39
|
+
if (this.isBooleanConditional(this.resultMapping) && typeof botVariable !== 'boolean') {
|
|
40
|
+
conditionalResult = this.resultMapping.find((rMap)=>rMap.result === (botVariable !== undefined && botVariable !== null)) || this.resultMapping.find((rMap)=>rMap.result === 'default');
|
|
46
41
|
}
|
|
47
42
|
if (!conditionalResult) {
|
|
48
43
|
throw new Error(`No conditional result found for node ${this.code} with key path: ${keyPath}`);
|
|
@@ -52,12 +47,12 @@ class FlowCustomConditional extends content_fields_base_1.ContentFieldsBase {
|
|
|
52
47
|
this.followUp = conditionalResult.target;
|
|
53
48
|
}
|
|
54
49
|
async trackFlow(botContext) {
|
|
55
|
-
const { flowThreadId, flowId, flowName, flowNodeId, flowNodeContentId } =
|
|
50
|
+
const { flowThreadId, flowId, flowName, flowNodeId, flowNodeContentId } = getCommonFlowContentEventArgsForContentId(botContext, this.id);
|
|
56
51
|
if (!this.conditionalResult?.result) {
|
|
57
52
|
console.warn(`Tracking event for node ${this.code} but no conditional result found`);
|
|
58
53
|
}
|
|
59
54
|
const eventCustomConditional = {
|
|
60
|
-
action:
|
|
55
|
+
action: EventAction.ConditionalCustom,
|
|
61
56
|
flowThreadId,
|
|
62
57
|
flowId,
|
|
63
58
|
flowName,
|
|
@@ -66,15 +61,13 @@ class FlowCustomConditional extends content_fields_base_1.ContentFieldsBase {
|
|
|
66
61
|
flowNodeIsMeaningful: false,
|
|
67
62
|
conditionalVariable: this.customResult.toString(),
|
|
68
63
|
variableFormat: this.variableFormat,
|
|
69
|
-
operator: ''
|
|
64
|
+
operator: ''
|
|
70
65
|
};
|
|
71
66
|
const { action, ...eventArgs } = eventCustomConditional;
|
|
72
|
-
await
|
|
67
|
+
await trackEvent(botContext, action, eventArgs);
|
|
73
68
|
}
|
|
74
69
|
isBooleanConditional(resultMapping) {
|
|
75
|
-
return
|
|
76
|
-
resultMapping.some(rMap => rMap.result === false) &&
|
|
77
|
-
resultMapping.some(rMap => rMap.result === 'default'));
|
|
70
|
+
return resultMapping.some((rMap)=>rMap.result === true) && resultMapping.some((rMap)=>rMap.result === false) && resultMapping.some((rMap)=>rMap.result === 'default');
|
|
78
71
|
}
|
|
79
72
|
async processContent(botContext) {
|
|
80
73
|
await this.filterContent(botContext, this);
|
|
@@ -82,8 +75,13 @@ class FlowCustomConditional extends content_fields_base_1.ContentFieldsBase {
|
|
|
82
75
|
return;
|
|
83
76
|
}
|
|
84
77
|
toBotonic() {
|
|
85
|
-
return
|
|
78
|
+
return /*#__PURE__*/ jsx(Fragment, {});
|
|
79
|
+
}
|
|
80
|
+
constructor(...args){
|
|
81
|
+
super(...args), this.arguments = [], this.conditionalResult = undefined, this.customResult = false, this.variableFormat = '';
|
|
86
82
|
}
|
|
87
83
|
}
|
|
88
|
-
|
|
84
|
+
|
|
85
|
+
export { FlowCustomConditional };
|
|
86
|
+
|
|
89
87
|
//# sourceMappingURL=flow-custom-conditional.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content-fields/flow-custom-conditional.js","sources":["../../src/content-fields/flow-custom-conditional.tsx"],"sourcesContent":["import {\n type BotContext,\n EventAction,\n type EventConditionalCustom,\n} from '@botonic/core'\n\nimport {\n getCommonFlowContentEventArgsForContentId,\n trackEvent,\n} from '../tracking'\nimport { ContentFieldsBase } from './content-fields-base'\nimport type { HtCustomConditionalNode } from './hubtype-fields/custom-conditional'\nimport type {\n HtFunctionArgument,\n HtFunctionArguments,\n HtFunctionResult,\n} from './hubtype-fields/function'\n\nexport class FlowCustomConditional extends ContentFieldsBase {\n public arguments: HtFunctionArguments[] = []\n public resultMapping: HtFunctionResult[]\n public conditionalResult?: HtFunctionResult = undefined\n public customResult: boolean = false\n public variableFormat: string = ''\n\n static fromHubtypeCMS(\n component: HtCustomConditionalNode,\n botContext: BotContext\n ): FlowCustomConditional {\n const newCustomConditional = new FlowCustomConditional(component.id)\n newCustomConditional.code = component.code\n newCustomConditional.arguments = component.content.arguments\n newCustomConditional.resultMapping = component.content.result_mapping\n newCustomConditional.setConditionalResult(botContext)\n newCustomConditional.variableFormat = (\n component.content.arguments as HtFunctionArgument[]\n )[0].type\n\n return newCustomConditional\n }\n\n setConditionalResult(botContext: BotContext): void {\n const functionArgument = this.arguments.find(arg => {\n if ('name' in arg) {\n return arg.name === 'keyPath'\n }\n return false\n })\n\n let keyPath = ''\n\n if (functionArgument && 'value' in functionArgument) {\n keyPath = functionArgument.value\n } else {\n throw new Error(`Key path not found for node ${this.code}`)\n }\n\n const botVariable = this.getValueFromKeyPath(botContext, keyPath)\n\n let conditionalResult =\n this.resultMapping.find(rMap => rMap.result === botVariable) ||\n this.resultMapping.find(rMap => rMap.result === 'default')\n\n if (\n this.isBooleanConditional(this.resultMapping) &&\n typeof botVariable !== 'boolean'\n ) {\n conditionalResult =\n this.resultMapping.find(\n rMap =>\n rMap.result === (botVariable !== undefined && botVariable !== null)\n ) || this.resultMapping.find(rMap => rMap.result === 'default')\n }\n\n if (!conditionalResult) {\n throw new Error(\n `No conditional result found for node ${this.code} with key path: ${keyPath}`\n )\n }\n\n this.conditionalResult = conditionalResult\n this.customResult = conditionalResult.result as unknown as boolean\n this.followUp = conditionalResult.target\n }\n\n async trackFlow(botContext: BotContext): Promise<void> {\n const { flowThreadId, flowId, flowName, flowNodeId, flowNodeContentId } =\n getCommonFlowContentEventArgsForContentId(botContext, this.id)\n if (!this.conditionalResult?.result) {\n console.warn(\n `Tracking event for node ${this.code} but no conditional result found`\n )\n }\n const eventCustomConditional: EventConditionalCustom = {\n action: EventAction.ConditionalCustom,\n flowThreadId,\n flowId,\n flowName,\n flowNodeId,\n flowNodeContentId,\n flowNodeIsMeaningful: false,\n conditionalVariable: this.customResult.toString(),\n variableFormat: this.variableFormat,\n operator: '',\n }\n const { action, ...eventArgs } = eventCustomConditional\n await trackEvent(botContext, action, eventArgs)\n }\n\n private isBooleanConditional(resultMapping: HtFunctionResult[]): boolean {\n return (\n resultMapping.some(rMap => rMap.result === true) &&\n resultMapping.some(rMap => rMap.result === false) &&\n resultMapping.some(rMap => rMap.result === 'default')\n )\n }\n\n async processContent(botContext: BotContext): Promise<void> {\n await this.filterContent(botContext, this)\n await this.trackFlow(botContext)\n return\n }\n\n toBotonic() {\n return <></>\n }\n}\n"],"names":["EventAction","getCommonFlowContentEventArgsForContentId","trackEvent","ContentFieldsBase","FlowCustomConditional","component","botContext","newCustomConditional","functionArgument","arg","keyPath","Error","botVariable","conditionalResult","rMap","undefined","flowThreadId","flowId","flowName","flowNodeId","flowNodeContentId","console","eventCustomConditional","action","eventArgs","resultMapping"],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { BotContext, Button } from '@botonic/core';
|
|
2
|
-
import type { FlowBuilderApi } from '../api';
|
|
3
|
-
import { ContentFieldsBase } from './content-fields-base';
|
|
4
|
-
import { FlowButton } from './flow-button';
|
|
5
|
-
import type { HtCarouselElement } from './hubtype-fields';
|
|
2
|
+
import type { FlowBuilderApi } from '../api.js';
|
|
3
|
+
import { ContentFieldsBase } from './content-fields-base.js';
|
|
4
|
+
import { FlowButton } from './flow-button.js';
|
|
5
|
+
import type { HtCarouselElement } from './hubtype-fields/index.js';
|
|
6
6
|
export declare class FlowElement extends ContentFieldsBase {
|
|
7
7
|
title: string;
|
|
8
8
|
subtitle: string;
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Element, Pic, Subtitle, Title } from "@botonic/react";
|
|
3
|
+
import { ContentFieldsBase } from "./content-fields-base.js";
|
|
4
|
+
import { FlowButton } from "./flow-button.js";
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class FlowElement extends ContentFieldsBase {
|
|
15
|
+
static fromHubtypeCMS(component, locale, cmsApi, botContext) {
|
|
16
|
+
const newElement = new FlowElement(component.id);
|
|
17
|
+
newElement.title = FlowElement.getTextByLocale(locale, component.title);
|
|
18
|
+
newElement.subtitle = FlowElement.getTextByLocale(locale, component.subtitle);
|
|
19
|
+
newElement.image = FlowElement.getAssetByLocale(locale, component.image);
|
|
20
|
+
newElement.button = FlowButton.fromHubtypeCMS(component.button, locale, cmsApi, botContext);
|
|
21
|
+
return newElement;
|
|
22
|
+
}
|
|
23
|
+
static fromAIAgent(id, element) {
|
|
24
|
+
const newElement = new FlowElement(id);
|
|
25
|
+
newElement.title = element.title;
|
|
26
|
+
newElement.subtitle = element.subtitle;
|
|
27
|
+
newElement.image = element.image;
|
|
28
|
+
newElement.button = FlowButton.fromAIAgent({
|
|
29
|
+
id: `${id}-button`,
|
|
30
|
+
text: element.button.text,
|
|
31
|
+
url: element.button.url
|
|
32
|
+
});
|
|
33
|
+
return newElement;
|
|
34
|
+
}
|
|
35
|
+
async trackFlow(botContext) {
|
|
36
|
+
if (this.button) {
|
|
37
|
+
await this.button.trackFlow(botContext);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
async processContent(botContext) {
|
|
41
|
+
await this.trackFlow(botContext);
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
renderElement(parentId) {
|
|
45
|
+
return /*#__PURE__*/ jsxs(Element, {
|
|
46
|
+
children: [
|
|
47
|
+
/*#__PURE__*/ jsx(Pic, {
|
|
48
|
+
src: this.image
|
|
49
|
+
}),
|
|
50
|
+
/*#__PURE__*/ jsx(Title, {
|
|
51
|
+
children: this.title
|
|
52
|
+
}),
|
|
53
|
+
/*#__PURE__*/ jsx(Subtitle, {
|
|
54
|
+
children: this.subtitle
|
|
55
|
+
}),
|
|
56
|
+
this.button?.renderButton(0)
|
|
57
|
+
]
|
|
58
|
+
}, `${parentId}-${this.id}`);
|
|
59
|
+
}
|
|
60
|
+
constructor(...args){
|
|
61
|
+
super(...args), this.title = '', this.subtitle = '', this.image = '', this.hidden = false;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
export { FlowElement };
|
|
66
|
+
|
|
67
|
+
//# sourceMappingURL=flow-element.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content-fields/flow-element.js","sources":["../../src/content-fields/flow-element.tsx"],"sourcesContent":["import type { BotContext, Button } from '@botonic/core'\nimport { Element, Pic, Subtitle, Title } from '@botonic/react'\n\nimport type { FlowBuilderApi } from '../api'\nimport { ContentFieldsBase } from './content-fields-base'\nimport { FlowButton } from './flow-button'\nimport type { HtCarouselElement } from './hubtype-fields'\n\nexport class FlowElement extends ContentFieldsBase {\n public title = ''\n public subtitle = ''\n public button: FlowButton | undefined\n public image = ''\n public hidden = false\n\n static fromHubtypeCMS(\n component: HtCarouselElement,\n locale: string,\n cmsApi: FlowBuilderApi,\n botContext: BotContext\n ): FlowElement {\n const newElement = new FlowElement(component.id)\n newElement.title = FlowElement.getTextByLocale(locale, component.title)\n newElement.subtitle = FlowElement.getTextByLocale(\n locale,\n component.subtitle\n )\n newElement.image = FlowElement.getAssetByLocale(locale, component.image)\n newElement.button = FlowButton.fromHubtypeCMS(\n component.button,\n locale,\n cmsApi,\n botContext\n )\n return newElement\n }\n\n static fromAIAgent(\n id: string,\n element: {\n title: string\n subtitle: string\n image: string\n button: Button\n }\n ) {\n const newElement = new FlowElement(id)\n newElement.title = element.title\n newElement.subtitle = element.subtitle\n newElement.image = element.image\n newElement.button = FlowButton.fromAIAgent({\n id: `${id}-button`,\n text: element.button.text,\n url: element.button.url,\n })\n return newElement\n }\n\n async trackFlow(botContext: BotContext): Promise<void> {\n if (this.button) {\n await this.button.trackFlow(botContext)\n }\n }\n\n async processContent(botContext: BotContext): Promise<void> {\n await this.trackFlow(botContext)\n return\n }\n\n renderElement(parentId: string): JSX.Element {\n return (\n <Element key={`${parentId}-${this.id}`}>\n <Pic src={this.image} />\n <Title>{this.title}</Title>\n <Subtitle>{this.subtitle}</Subtitle>\n {this.button?.renderButton(0)}\n </Element>\n )\n }\n}\n"],"names":["Element","Pic","Subtitle","Title","ContentFieldsBase","FlowButton","FlowElement","component","locale","cmsApi","botContext","newElement","id","element","parentId"],"mappings":";;;;;;;;;;AAC8D;AAGL;AACf;AAGnC,MAAMM,WAAWA,SAASF,iBAAiBA;IAOhD,OAAO,eACLG,SAA4B,EAC5BC,MAAc,EACdC,MAAsB,EACtBC,UAAsB,EACT;QACb,MAAMC,aAAa,IAAIL,WAAWA,CAACC,UAAU,EAAE;QAC/CI,WAAW,KAAK,GAAGL,WAAWA,CAAC,eAAe,CAACE,QAAQD,UAAU,KAAK;QACtEI,WAAW,QAAQ,GAAGL,WAAWA,CAAC,eAAe,CAC/CE,QACAD,UAAU,QAAQ;QAEpBI,WAAW,KAAK,GAAGL,WAAWA,CAAC,gBAAgB,CAACE,QAAQD,UAAU,KAAK;QACvEI,WAAW,MAAM,GAAGN,yBAAyB,CAC3CE,UAAU,MAAM,EAChBC,QACAC,QACAC;QAEF,OAAOC;IACT;IAEA,OAAO,YACLC,EAAU,EACVC,OAKC,EACD;QACA,MAAMF,aAAa,IAAIL,WAAWA,CAACM;QACnCD,WAAW,KAAK,GAAGE,QAAQ,KAAK;QAChCF,WAAW,QAAQ,GAAGE,QAAQ,QAAQ;QACtCF,WAAW,KAAK,GAAGE,QAAQ,KAAK;QAChCF,WAAW,MAAM,GAAGN,sBAAsB,CAAC;YACzC,IAAI,GAAGO,GAAG,OAAO,CAAC;YAClB,MAAMC,QAAQ,MAAM,CAAC,IAAI;YACzB,KAAKA,QAAQ,MAAM,CAAC,GAAG;QACzB;QACA,OAAOF;IACT;IAEA,MAAM,UAAUD,UAAsB,EAAiB;QACrD,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CAACA;QAC9B;IACF;IAEA,MAAM,eAAeA,UAAsB,EAAiB;QAC1D,MAAM,IAAI,CAAC,SAAS,CAACA;QACrB;IACF;IAEA,cAAcI,QAAgB,EAAe;QAC3C,qBACE,KAACd,OAAOA;;8BACN,IAACC,GAAGA;oBAAC,KAAK,IAAI,CAAC,KAAK;;8BACpB,IAACE,KAAKA;8BAAE,IAAI,CAAC,KAAK;;8BAClB,IAACD,QAAQA;8BAAE,IAAI,CAAC,QAAQ;;gBACvB,IAAI,CAAC,MAAM,EAAE,aAAa;;WAJf,GAAGY,SAAS,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE;IAO1C;;QAtEK,qBACE,QAAQ,SACR,WAAW,SAEX,QAAQ,SACR,SAAS;;AAkElB"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type BotContext } from '@botonic/core';
|
|
2
|
-
import type { FlowBuilderApi } from '../api';
|
|
3
|
-
import { ContentFieldsBase } from './content-fields-base';
|
|
4
|
-
import type { HtGoToFlow } from './hubtype-fields';
|
|
2
|
+
import type { FlowBuilderApi } from '../api.js';
|
|
3
|
+
import { ContentFieldsBase } from './content-fields-base.js';
|
|
4
|
+
import type { HtGoToFlow } from './hubtype-fields/index.js';
|
|
5
5
|
export declare class FlowGoToFlow extends ContentFieldsBase {
|
|
6
6
|
flowTargetId: string;
|
|
7
7
|
flowTargetName: string;
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
1
|
+
import { Fragment, jsx } from "react/jsx-runtime";
|
|
2
|
+
import { EventAction } from "@botonic/core";
|
|
3
|
+
import { getCommonFlowContentEventArgsForContentId, trackEvent } from "../tracking.js";
|
|
4
|
+
import { ContentFieldsBase } from "./content-fields-base.js";
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class FlowGoToFlow extends ContentFieldsBase {
|
|
15
15
|
static fromHubtypeCMS(component, cmsApi) {
|
|
16
16
|
const newGoToFlow = new FlowGoToFlow(component.id);
|
|
17
17
|
newGoToFlow.code = component.code;
|
|
@@ -23,9 +23,9 @@ class FlowGoToFlow extends content_fields_base_1.ContentFieldsBase {
|
|
|
23
23
|
return newGoToFlow;
|
|
24
24
|
}
|
|
25
25
|
async trackFlow(botContext) {
|
|
26
|
-
const { flowThreadId, flowId, flowName, flowNodeId, flowNodeContentId } =
|
|
26
|
+
const { flowThreadId, flowId, flowName, flowNodeId, flowNodeContentId } = getCommonFlowContentEventArgsForContentId(botContext, this.id);
|
|
27
27
|
const eventGoToFlow = {
|
|
28
|
-
action:
|
|
28
|
+
action: EventAction.RedirectFlow,
|
|
29
29
|
flowThreadId,
|
|
30
30
|
flowId,
|
|
31
31
|
flowName,
|
|
@@ -33,10 +33,10 @@ class FlowGoToFlow extends content_fields_base_1.ContentFieldsBase {
|
|
|
33
33
|
flowNodeContentId: flowNodeContentId || 'Go to flow',
|
|
34
34
|
flowTargetId: this.flowTargetId,
|
|
35
35
|
flowTargetName: this.flowTargetName,
|
|
36
|
-
flowNodeIsMeaningful: false
|
|
36
|
+
flowNodeIsMeaningful: false
|
|
37
37
|
};
|
|
38
38
|
const { action, ...eventArgs } = eventGoToFlow;
|
|
39
|
-
await
|
|
39
|
+
await trackEvent(botContext, action, eventArgs);
|
|
40
40
|
}
|
|
41
41
|
async processContent(botContext) {
|
|
42
42
|
await this.filterContent(botContext, this);
|
|
@@ -44,8 +44,13 @@ class FlowGoToFlow extends content_fields_base_1.ContentFieldsBase {
|
|
|
44
44
|
return;
|
|
45
45
|
}
|
|
46
46
|
toBotonic() {
|
|
47
|
-
return
|
|
47
|
+
return /*#__PURE__*/ jsx(Fragment, {});
|
|
48
|
+
}
|
|
49
|
+
constructor(...args){
|
|
50
|
+
super(...args), this.flowTargetId = '', this.flowTargetName = '', this.targetId = '';
|
|
48
51
|
}
|
|
49
52
|
}
|
|
50
|
-
|
|
53
|
+
|
|
54
|
+
export { FlowGoToFlow };
|
|
55
|
+
|
|
51
56
|
//# sourceMappingURL=flow-go-to-flow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"content-fields/flow-go-to-flow.js","sources":["../../src/content-fields/flow-go-to-flow.tsx"],"sourcesContent":["import {\n type BotContext,\n EventAction,\n type EventRedirectFlow,\n} from '@botonic/core'\n\nimport type { FlowBuilderApi } from '../api'\nimport {\n getCommonFlowContentEventArgsForContentId,\n trackEvent,\n} from '../tracking'\nimport { ContentFieldsBase } from './content-fields-base'\nimport type { HtGoToFlow, HtNodeWithContent } from './hubtype-fields'\n\nexport class FlowGoToFlow extends ContentFieldsBase {\n public flowTargetId: string = ''\n public flowTargetName: string = ''\n public targetId: string = ''\n\n static fromHubtypeCMS(\n component: HtGoToFlow,\n cmsApi: FlowBuilderApi\n ): FlowGoToFlow {\n const newGoToFlow = new FlowGoToFlow(component.id)\n newGoToFlow.code = component.code\n newGoToFlow.flowTargetId = component.content.flow_id\n const targetId = cmsApi.getNodeByFlowId(component.content.flow_id).id\n newGoToFlow.targetId = targetId\n newGoToFlow.flowTargetName = cmsApi.getFlowName(component.content.flow_id)\n newGoToFlow.followUp = cmsApi.getNodeById<HtNodeWithContent>(targetId)\n\n return newGoToFlow\n }\n\n async trackFlow(botContext: BotContext): Promise<void> {\n const { flowThreadId, flowId, flowName, flowNodeId, flowNodeContentId } =\n getCommonFlowContentEventArgsForContentId(botContext, this.id)\n const eventGoToFlow: EventRedirectFlow = {\n action: EventAction.RedirectFlow,\n flowThreadId,\n flowId,\n flowName,\n flowNodeId,\n flowNodeContentId: flowNodeContentId || 'Go to flow',\n flowTargetId: this.flowTargetId,\n flowTargetName: this.flowTargetName,\n flowNodeIsMeaningful: false,\n }\n const { action, ...eventArgs } = eventGoToFlow\n await trackEvent(botContext, action, eventArgs)\n }\n\n async processContent(botContext: BotContext): Promise<void> {\n await this.filterContent(botContext, this)\n await this.trackFlow(botContext)\n return\n }\n\n toBotonic(): JSX.Element {\n return <></>\n }\n}\n"],"names":["EventAction","getCommonFlowContentEventArgsForContentId","trackEvent","ContentFieldsBase","FlowGoToFlow","component","cmsApi","newGoToFlow","targetId","botContext","flowThreadId","flowId","flowName","flowNodeId","flowNodeContentId","eventGoToFlow","action","eventArgs"],"mappings":";;;;;;;;;;AAIsB;AAMF;AACqC;AAGlD,MAAMI,YAAYA,SAASD,iBAAiBA;IAKjD,OAAO,eACLE,SAAqB,EACrBC,MAAsB,EACR;QACd,MAAMC,cAAc,IAAIH,YAAYA,CAACC,UAAU,EAAE;QACjDE,YAAY,IAAI,GAAGF,UAAU,IAAI;QACjCE,YAAY,YAAY,GAAGF,UAAU,OAAO,CAAC,OAAO;QACpD,MAAMG,WAAWF,OAAO,eAAe,CAACD,UAAU,OAAO,CAAC,OAAO,EAAE,EAAE;QACrEE,YAAY,QAAQ,GAAGC;QACvBD,YAAY,cAAc,GAAGD,OAAO,WAAW,CAACD,UAAU,OAAO,CAAC,OAAO;QACzEE,YAAY,QAAQ,GAAGD,OAAO,WAAW,CAAoBE;QAE7D,OAAOD;IACT;IAEA,MAAM,UAAUE,UAAsB,EAAiB;QACrD,MAAM,EAAEC,YAAY,EAAEC,MAAM,EAAEC,QAAQ,EAAEC,UAAU,EAAEC,iBAAiB,EAAE,GACrEb,yCAAyCA,CAACQ,YAAY,IAAI,CAAC,EAAE;QAC/D,MAAMM,gBAAmC;YACvC,QAAQf,wBAAwB;YAChCU;YACAC;YACAC;YACAC;YACA,mBAAmBC,qBAAqB;YACxC,cAAc,IAAI,CAAC,YAAY;YAC/B,gBAAgB,IAAI,CAAC,cAAc;YACnC,sBAAsB;QACxB;QACA,MAAM,EAAEE,MAAM,EAAE,GAAGC,WAAW,GAAGF;QACjC,MAAMb,UAAUA,CAACO,YAAYO,QAAQC;IACvC;IAEA,MAAM,eAAeR,UAAsB,EAAiB;QAC1D,MAAM,IAAI,CAAC,aAAa,CAACA,YAAY,IAAI;QACzC,MAAM,IAAI,CAAC,SAAS,CAACA;QACrB;IACF;IAEA,YAAyB;QACvB,qBAAO;IACT;;QA9CK,qBACE,eAAuB,SACvB,iBAAyB,SACzB,WAAmB;;AA4C5B"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type BotContext } from '@botonic/core';
|
|
2
|
-
import type { FlowBuilderApi } from '../api';
|
|
3
|
-
import { ContentFieldsBase } from './content-fields-base';
|
|
4
|
-
import type { HtHandoffNode, HtQueueLocale } from './hubtype-fields';
|
|
2
|
+
import type { FlowBuilderApi } from '../api.js';
|
|
3
|
+
import { ContentFieldsBase } from './content-fields-base.js';
|
|
4
|
+
import type { HtHandoffNode, HtQueueLocale } from './hubtype-fields/index.js';
|
|
5
5
|
export declare class FlowHandoff extends ContentFieldsBase {
|
|
6
6
|
queue?: HtQueueLocale;
|
|
7
7
|
onFinishPayload?: string;
|