@botonic/plugin-flow-builder 0.58.0-alpha-new-stack.0 → 0.58.0-alpha.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/ai-agent-from-user-input.d.ts +3 -0
- package/lib/cjs/action/ai-agent-from-user-input.js +38 -0
- package/lib/cjs/action/ai-agent-from-user-input.js.map +1 -0
- package/lib/cjs/action/context.d.ts +11 -0
- package/lib/cjs/action/context.js +17 -0
- package/lib/cjs/action/context.js.map +1 -0
- package/lib/cjs/action/fallback.d.ts +3 -0
- package/lib/cjs/action/fallback.js +36 -0
- package/lib/cjs/action/fallback.js.map +1 -0
- package/lib/cjs/action/first-interaction.d.ts +3 -0
- package/lib/cjs/action/first-interaction.js +93 -0
- package/lib/cjs/action/first-interaction.js.map +1 -0
- package/lib/cjs/action/get-contents.d.ts +3 -0
- package/lib/cjs/action/get-contents.js +44 -0
- package/lib/cjs/action/get-contents.js.map +1 -0
- package/lib/cjs/action/index.d.ts +25 -0
- package/lib/cjs/action/index.js +95 -0
- package/lib/cjs/action/index.js.map +1 -0
- package/lib/cjs/action/payload.d.ts +3 -0
- package/lib/cjs/action/payload.js +74 -0
- package/lib/cjs/action/payload.js.map +1 -0
- package/lib/cjs/api.d.ts +45 -0
- package/lib/cjs/api.js +227 -0
- package/lib/cjs/api.js.map +1 -0
- package/lib/cjs/bot-context-manager.d.ts +17 -0
- package/lib/cjs/bot-context-manager.js +93 -0
- package/lib/cjs/bot-context-manager.js.map +1 -0
- package/lib/cjs/constants.js +20 -0
- package/lib/cjs/constants.js.map +1 -0
- package/lib/cjs/content-fields/contact-reasons-conditional-matcher.d.ts +4 -0
- package/lib/cjs/content-fields/contact-reasons-conditional-matcher.js +12 -0
- package/lib/cjs/content-fields/contact-reasons-conditional-matcher.js.map +1 -0
- package/lib/cjs/content-fields/content-fields-base.d.ts +20 -0
- package/lib/cjs/content-fields/content-fields-base.js +74 -0
- package/lib/cjs/content-fields/content-fields-base.js.map +1 -0
- package/lib/cjs/content-fields/custom-conditional/custom-conditional-v2-evaluators.d.ts +15 -0
- package/lib/cjs/content-fields/custom-conditional/custom-conditional-v2-evaluators.js +71 -0
- package/lib/cjs/content-fields/custom-conditional/custom-conditional-v2-evaluators.js.map +1 -0
- package/lib/cjs/content-fields/custom-conditional/custom-conditional-v2-resolver.d.ts +9 -0
- package/lib/cjs/content-fields/custom-conditional/custom-conditional-v2-resolver.js +58 -0
- package/lib/cjs/content-fields/custom-conditional/custom-conditional-v2-resolver.js.map +1 -0
- package/lib/cjs/content-fields/custom-conditional/flow-custom-condition-v2.d.ts +17 -0
- package/lib/cjs/content-fields/custom-conditional/flow-custom-condition-v2.js +79 -0
- package/lib/cjs/content-fields/custom-conditional/flow-custom-condition-v2.js.map +1 -0
- package/lib/cjs/content-fields/flow-ai-agent-base.d.ts +25 -0
- package/lib/cjs/content-fields/flow-ai-agent-base.js +97 -0
- package/lib/cjs/content-fields/flow-ai-agent-base.js.map +1 -0
- package/lib/cjs/content-fields/flow-ai-agent-router.d.ts +21 -0
- package/lib/cjs/content-fields/flow-ai-agent-router.js +126 -0
- package/lib/cjs/content-fields/flow-ai-agent-router.js.map +1 -0
- package/lib/cjs/content-fields/flow-ai-agent.d.ts +17 -0
- package/lib/cjs/content-fields/flow-ai-agent.js +65 -0
- package/lib/cjs/content-fields/flow-ai-agent.js.map +1 -0
- package/lib/cjs/content-fields/flow-bot-action.d.ts +14 -0
- package/lib/cjs/content-fields/flow-bot-action.js +45 -0
- package/lib/cjs/content-fields/flow-bot-action.js.map +1 -0
- package/lib/cjs/content-fields/flow-button.d.ts +31 -0
- package/lib/cjs/content-fields/flow-button.js +86 -0
- package/lib/cjs/content-fields/flow-button.js.map +1 -0
- package/lib/cjs/content-fields/flow-capture-user-input.d.ts +14 -0
- package/lib/cjs/content-fields/flow-capture-user-input.js +45 -0
- package/lib/cjs/content-fields/flow-capture-user-input.js.map +1 -0
- package/lib/cjs/content-fields/flow-carousel.d.ts +22 -0
- package/lib/cjs/content-fields/flow-carousel.js +152 -0
- package/lib/cjs/content-fields/flow-carousel.js.map +1 -0
- package/lib/cjs/content-fields/flow-channel-conditional.d.ts +14 -0
- package/lib/cjs/content-fields/flow-channel-conditional.js +57 -0
- package/lib/cjs/content-fields/flow-channel-conditional.js.map +1 -0
- package/lib/cjs/content-fields/flow-contact-reasons-conditional.d.ts +17 -0
- package/lib/cjs/content-fields/flow-contact-reasons-conditional.js +88 -0
- package/lib/cjs/content-fields/flow-contact-reasons-conditional.js.map +1 -0
- package/lib/cjs/content-fields/flow-country-conditional.d.ts +13 -0
- package/lib/cjs/content-fields/flow-country-conditional.js +59 -0
- package/lib/cjs/content-fields/flow-country-conditional.js.map +1 -0
- package/lib/cjs/content-fields/flow-custom-conditional.d.ts +17 -0
- package/lib/cjs/content-fields/flow-custom-conditional.js +89 -0
- package/lib/cjs/content-fields/flow-custom-conditional.js.map +1 -0
- package/lib/cjs/content-fields/flow-do-nothing.d.ts +9 -0
- package/lib/cjs/content-fields/flow-do-nothing.js +27 -0
- package/lib/cjs/content-fields/flow-do-nothing.js.map +1 -0
- package/lib/cjs/content-fields/flow-element.d.ts +22 -0
- package/lib/cjs/content-fields/flow-element.js +50 -0
- package/lib/cjs/content-fields/flow-element.js.map +1 -0
- package/lib/cjs/content-fields/flow-go-to-flow.d.ts +13 -0
- package/lib/cjs/content-fields/flow-go-to-flow.js +51 -0
- package/lib/cjs/content-fields/flow-go-to-flow.js.map +1 -0
- package/lib/cjs/content-fields/flow-handoff.d.ts +23 -0
- package/lib/cjs/content-fields/flow-handoff.js +104 -0
- package/lib/cjs/content-fields/flow-handoff.js.map +1 -0
- package/lib/cjs/content-fields/flow-image.d.ts +10 -0
- package/lib/cjs/content-fields/flow-image.js +33 -0
- package/lib/cjs/content-fields/flow-image.js.map +1 -0
- package/lib/cjs/content-fields/flow-queue-status-conditional.d.ts +30 -0
- package/lib/cjs/content-fields/flow-queue-status-conditional.js +95 -0
- package/lib/cjs/content-fields/flow-queue-status-conditional.js.map +1 -0
- package/lib/cjs/content-fields/flow-rating.d.ts +15 -0
- package/lib/cjs/content-fields/flow-rating.js +66 -0
- package/lib/cjs/content-fields/flow-rating.js.map +1 -0
- package/lib/cjs/content-fields/flow-text.d.ts +15 -0
- package/lib/cjs/content-fields/flow-text.js +60 -0
- package/lib/cjs/content-fields/flow-text.js.map +1 -0
- package/lib/cjs/content-fields/flow-update-variables.d.ts +15 -0
- package/lib/cjs/content-fields/flow-update-variables.js +137 -0
- package/lib/cjs/content-fields/flow-update-variables.js.map +1 -0
- package/lib/cjs/content-fields/flow-video.d.ts +10 -0
- package/lib/cjs/content-fields/flow-video.js +33 -0
- package/lib/cjs/content-fields/flow-video.js.map +1 -0
- package/lib/cjs/content-fields/flow-webview.d.ts +16 -0
- package/lib/cjs/content-fields/flow-webview.js +78 -0
- package/lib/cjs/content-fields/flow-webview.js.map +1 -0
- package/lib/cjs/content-fields/flow-whatsapp-cta-url-button.d.ts +21 -0
- package/lib/cjs/content-fields/flow-whatsapp-cta-url-button.js +92 -0
- package/lib/cjs/content-fields/flow-whatsapp-cta-url-button.js.map +1 -0
- package/lib/cjs/content-fields/flow-whatsapp-request-contact-info.d.ts +11 -0
- package/lib/cjs/content-fields/flow-whatsapp-request-contact-info.js +46 -0
- package/lib/cjs/content-fields/flow-whatsapp-request-contact-info.js.map +1 -0
- package/lib/cjs/content-fields/flow-whatsapp-template.d.ts +37 -0
- package/lib/cjs/content-fields/flow-whatsapp-template.js +264 -0
- package/lib/cjs/content-fields/flow-whatsapp-template.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/ai-agent-router.d.ts +21 -0
- package/lib/cjs/content-fields/hubtype-fields/ai-agent-router.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/ai-agent-router.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/ai-agent.d.ts +25 -0
- package/lib/cjs/content-fields/hubtype-fields/ai-agent.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/ai-agent.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/bot-action.d.ts +10 -0
- package/lib/cjs/content-fields/hubtype-fields/bot-action.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/bot-action.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/button.d.ts +8 -0
- package/lib/cjs/content-fields/hubtype-fields/button.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/button.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/capture-user-input.d.ts +19 -0
- package/lib/cjs/content-fields/hubtype-fields/capture-user-input.js +12 -0
- package/lib/cjs/content-fields/hubtype-fields/capture-user-input.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/carousel.d.ts +17 -0
- package/lib/cjs/content-fields/hubtype-fields/carousel.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/carousel.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/channel-conditional.d.ts +10 -0
- package/lib/cjs/content-fields/hubtype-fields/channel-conditional.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/channel-conditional.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/common.d.ts +83 -0
- package/lib/cjs/content-fields/hubtype-fields/common.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/common.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/contact-reasons-conditional.d.ts +19 -0
- package/lib/cjs/content-fields/hubtype-fields/contact-reasons-conditional.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/contact-reasons-conditional.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/country-conditional.d.ts +10 -0
- package/lib/cjs/content-fields/hubtype-fields/country-conditional.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/country-conditional.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/custom-conditional-v2.d.ts +56 -0
- package/lib/cjs/content-fields/hubtype-fields/custom-conditional-v2.js +36 -0
- package/lib/cjs/content-fields/hubtype-fields/custom-conditional-v2.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/custom-conditional.d.ts +11 -0
- package/lib/cjs/content-fields/hubtype-fields/custom-conditional.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/custom-conditional.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/do-nothing.d.ts +6 -0
- package/lib/cjs/content-fields/hubtype-fields/do-nothing.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/do-nothing.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/fallback.d.ts +9 -0
- package/lib/cjs/content-fields/hubtype-fields/fallback.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/fallback.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/function.d.ts +30 -0
- package/lib/cjs/content-fields/hubtype-fields/function.js +11 -0
- package/lib/cjs/content-fields/hubtype-fields/function.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/go-to-flow.d.ts +9 -0
- package/lib/cjs/content-fields/hubtype-fields/go-to-flow.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/go-to-flow.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/handoff.d.ts +21 -0
- package/lib/cjs/content-fields/hubtype-fields/handoff.js +10 -0
- package/lib/cjs/content-fields/hubtype-fields/handoff.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/image.d.ts +8 -0
- package/lib/cjs/content-fields/hubtype-fields/image.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/image.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/index.d.ts +28 -0
- package/lib/cjs/content-fields/hubtype-fields/index.js +32 -0
- package/lib/cjs/content-fields/hubtype-fields/index.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/keyword.d.ts +9 -0
- package/lib/cjs/content-fields/hubtype-fields/keyword.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/keyword.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/node-types.d.ts +34 -0
- package/lib/cjs/content-fields/hubtype-fields/node-types.js +41 -0
- package/lib/cjs/content-fields/hubtype-fields/node-types.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/nodes.d.ts +29 -0
- package/lib/cjs/content-fields/hubtype-fields/nodes.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/nodes.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/payload.d.ts +8 -0
- package/lib/cjs/content-fields/hubtype-fields/payload.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/payload.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/queue-status-conditional.d.ts +25 -0
- package/lib/cjs/content-fields/hubtype-fields/queue-status-conditional.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/queue-status-conditional.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/rating.d.ts +23 -0
- package/lib/cjs/content-fields/hubtype-fields/rating.js +9 -0
- package/lib/cjs/content-fields/hubtype-fields/rating.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/smart-intent.d.ts +12 -0
- package/lib/cjs/content-fields/hubtype-fields/smart-intent.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/smart-intent.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/text.d.ts +11 -0
- package/lib/cjs/content-fields/hubtype-fields/text.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/text.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/update-variables.d.ts +9 -0
- package/lib/cjs/content-fields/hubtype-fields/update-variables.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/update-variables.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/url.d.ts +8 -0
- package/lib/cjs/content-fields/hubtype-fields/url.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/url.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/video.d.ts +8 -0
- package/lib/cjs/content-fields/hubtype-fields/video.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/video.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/webview.d.ts +17 -0
- package/lib/cjs/content-fields/hubtype-fields/webview.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/webview.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/whatsapp-button-list.d.ts +21 -0
- package/lib/cjs/content-fields/hubtype-fields/whatsapp-button-list.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/whatsapp-button-list.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/whatsapp-cta-url-button.d.ts +17 -0
- package/lib/cjs/content-fields/hubtype-fields/whatsapp-cta-url-button.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/whatsapp-cta-url-button.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/whatsapp-request-contact-info.d.ts +10 -0
- package/lib/cjs/content-fields/hubtype-fields/whatsapp-request-contact-info.js +3 -0
- package/lib/cjs/content-fields/hubtype-fields/whatsapp-request-contact-info.js.map +1 -0
- package/lib/cjs/content-fields/hubtype-fields/whatsapp-template.d.ts +96 -0
- package/lib/cjs/content-fields/hubtype-fields/whatsapp-template.js +9 -0
- package/lib/cjs/content-fields/hubtype-fields/whatsapp-template.js.map +1 -0
- package/lib/cjs/content-fields/index.d.ts +28 -0
- package/lib/cjs/content-fields/index.js +58 -0
- package/lib/cjs/content-fields/index.js.map +1 -0
- package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.d.ts +14 -0
- package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.js +41 -0
- package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.js.map +1 -0
- package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.d.ts +13 -0
- package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.js +36 -0
- package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.js.map +1 -0
- package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list.d.ts +14 -0
- package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js +46 -0
- package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js.map +1 -0
- package/lib/cjs/content-fields/whatsapp-button-list/index.d.ts +3 -0
- package/lib/cjs/content-fields/whatsapp-button-list/index.js +10 -0
- package/lib/cjs/content-fields/whatsapp-button-list/index.js.map +1 -0
- package/lib/cjs/filters/index.d.ts +12 -0
- package/lib/cjs/filters/index.js +17 -0
- package/lib/cjs/filters/index.js.map +1 -0
- package/lib/cjs/flow-factory.d.ts +12 -0
- package/lib/cjs/flow-factory.js +75 -0
- package/lib/cjs/flow-factory.js.map +1 -0
- package/lib/cjs/functions/index.d.ts +11 -0
- package/lib/cjs/functions/index.js +49 -0
- package/lib/cjs/functions/index.js.map +1 -0
- package/lib/cjs/index.d.ts +42 -0
- package/lib/cjs/index.js +142 -0
- package/lib/cjs/index.js.map +1 -0
- package/lib/cjs/services/contact-info-fields-api.d.ts +7 -0
- package/lib/cjs/services/contact-info-fields-api.js +28 -0
- package/lib/cjs/services/contact-info-fields-api.js.map +1 -0
- package/lib/cjs/services/hubtype-queues-api.js +26 -0
- package/lib/cjs/services/hubtype-queues-api.js.map +1 -0
- package/lib/cjs/structured-output/flow-builder-content.js +15 -0
- package/lib/cjs/structured-output/flow-builder-content.js.map +1 -0
- package/lib/cjs/tracking.d.ts +16 -0
- package/lib/cjs/tracking.js +71 -0
- package/lib/cjs/tracking.js.map +1 -0
- package/lib/cjs/types.d.ts +62 -0
- package/lib/cjs/types.js +14 -0
- package/lib/cjs/types.js.map +1 -0
- package/lib/cjs/user-input/capture-user-input-api.d.ts +21 -0
- package/lib/cjs/user-input/capture-user-input-api.js +88 -0
- package/lib/cjs/user-input/capture-user-input-api.js.map +1 -0
- package/lib/cjs/user-input/index.d.ts +4 -0
- package/lib/cjs/user-input/index.js +37 -0
- package/lib/cjs/user-input/index.js.map +1 -0
- package/lib/cjs/user-input/keyword.d.ts +27 -0
- package/lib/cjs/user-input/keyword.js +84 -0
- package/lib/cjs/user-input/keyword.js.map +1 -0
- package/lib/cjs/user-input/smart-intent.d.ts +24 -0
- package/lib/cjs/user-input/smart-intent.js +89 -0
- package/lib/cjs/user-input/smart-intent.js.map +1 -0
- package/lib/cjs/utils/ai-agent.d.ts +11 -0
- package/lib/cjs/utils/ai-agent.js +28 -0
- package/lib/cjs/utils/ai-agent.js.map +1 -0
- package/lib/cjs/utils/authentication.js +21 -0
- package/lib/cjs/utils/authentication.js.map +1 -0
- package/lib/cjs/utils/flow-locale.js +79 -0
- package/lib/cjs/utils/flow-locale.js.map +1 -0
- package/lib/cjs/utils/get-flow-builder-plugin.d.ts +3 -0
- package/lib/cjs/utils/get-flow-builder-plugin.js +16 -0
- package/lib/cjs/utils/get-flow-builder-plugin.js.map +1 -0
- package/lib/cjs/utils/hubtype-assistant-content.d.ts +13 -0
- package/lib/cjs/utils/hubtype-assistant-content.js +184 -0
- package/lib/cjs/utils/hubtype-assistant-content.js.map +1 -0
- package/lib/cjs/utils/input.js +35 -0
- package/lib/cjs/utils/input.js.map +1 -0
- package/lib/cjs/webview/contents-context.d.ts +2 -0
- package/lib/cjs/webview/contents-context.js +12 -0
- package/lib/cjs/webview/contents-context.js.map +1 -0
- package/lib/cjs/webview/index.d.ts +3 -0
- package/lib/cjs/webview/index.js +10 -0
- package/lib/cjs/webview/index.js.map +1 -0
- package/lib/cjs/webview/types.d.ts +47 -0
- package/lib/cjs/webview/types.js +9 -0
- package/lib/cjs/webview/types.js.map +1 -0
- package/lib/cjs/webview/use-webview-contents.d.ts +2 -0
- package/lib/cjs/webview/use-webview-contents.js +83 -0
- package/lib/cjs/webview/use-webview-contents.js.map +1 -0
- package/lib/esm/action/ai-agent-from-user-input.d.ts +3 -0
- package/lib/esm/action/ai-agent-from-user-input.js +38 -0
- package/lib/esm/action/ai-agent-from-user-input.js.map +1 -0
- package/lib/esm/action/context.d.ts +11 -0
- package/lib/esm/action/context.js +17 -0
- package/lib/esm/action/context.js.map +1 -0
- package/lib/esm/action/fallback.d.ts +3 -0
- package/lib/esm/action/fallback.js +36 -0
- package/lib/esm/action/fallback.js.map +1 -0
- package/lib/esm/action/first-interaction.d.ts +3 -0
- package/lib/esm/action/first-interaction.js +93 -0
- package/lib/esm/action/first-interaction.js.map +1 -0
- package/lib/esm/action/get-contents.d.ts +3 -0
- package/lib/esm/action/get-contents.js +44 -0
- package/lib/esm/action/get-contents.js.map +1 -0
- package/lib/esm/action/index.d.ts +25 -0
- package/lib/esm/action/index.js +95 -0
- package/lib/esm/action/index.js.map +1 -0
- package/lib/esm/action/payload.d.ts +3 -0
- package/lib/esm/action/payload.js +74 -0
- package/lib/esm/action/payload.js.map +1 -0
- package/lib/esm/api.d.ts +45 -0
- package/lib/esm/api.js +227 -0
- package/lib/esm/api.js.map +1 -0
- package/lib/esm/bot-context-manager.d.ts +17 -0
- package/lib/esm/bot-context-manager.js +93 -0
- package/lib/esm/bot-context-manager.js.map +1 -0
- package/lib/esm/constants.d.ts +14 -0
- package/lib/esm/constants.js +20 -0
- package/lib/esm/constants.js.map +1 -0
- package/lib/esm/content-fields/contact-reasons-conditional-matcher.d.ts +4 -0
- package/lib/esm/content-fields/contact-reasons-conditional-matcher.js +12 -0
- package/lib/esm/content-fields/contact-reasons-conditional-matcher.js.map +1 -0
- package/lib/esm/content-fields/content-fields-base.d.ts +20 -0
- package/lib/esm/content-fields/content-fields-base.js +74 -0
- package/lib/esm/content-fields/content-fields-base.js.map +1 -0
- package/lib/esm/content-fields/custom-conditional/custom-conditional-v2-evaluators.d.ts +15 -0
- package/lib/esm/content-fields/custom-conditional/custom-conditional-v2-evaluators.js +71 -0
- package/lib/esm/content-fields/custom-conditional/custom-conditional-v2-evaluators.js.map +1 -0
- package/lib/esm/content-fields/custom-conditional/custom-conditional-v2-resolver.d.ts +9 -0
- package/lib/esm/content-fields/custom-conditional/custom-conditional-v2-resolver.js +58 -0
- package/lib/esm/content-fields/custom-conditional/custom-conditional-v2-resolver.js.map +1 -0
- package/lib/esm/content-fields/custom-conditional/flow-custom-condition-v2.d.ts +17 -0
- package/lib/esm/content-fields/custom-conditional/flow-custom-condition-v2.js +79 -0
- package/lib/esm/content-fields/custom-conditional/flow-custom-condition-v2.js.map +1 -0
- package/lib/esm/content-fields/flow-ai-agent-base.d.ts +25 -0
- package/lib/esm/content-fields/flow-ai-agent-base.js +97 -0
- package/lib/esm/content-fields/flow-ai-agent-base.js.map +1 -0
- package/lib/esm/content-fields/flow-ai-agent-router.d.ts +21 -0
- package/lib/esm/content-fields/flow-ai-agent-router.js +126 -0
- package/lib/esm/content-fields/flow-ai-agent-router.js.map +1 -0
- package/lib/esm/content-fields/flow-ai-agent.d.ts +17 -0
- package/lib/esm/content-fields/flow-ai-agent.js +65 -0
- package/lib/esm/content-fields/flow-ai-agent.js.map +1 -0
- package/lib/esm/content-fields/flow-bot-action.d.ts +14 -0
- package/lib/esm/content-fields/flow-bot-action.js +45 -0
- package/lib/esm/content-fields/flow-bot-action.js.map +1 -0
- package/lib/esm/content-fields/flow-button.d.ts +31 -0
- package/lib/esm/content-fields/flow-button.js +86 -0
- package/lib/esm/content-fields/flow-button.js.map +1 -0
- package/lib/esm/content-fields/flow-capture-user-input.d.ts +14 -0
- package/lib/esm/content-fields/flow-capture-user-input.js +45 -0
- package/lib/esm/content-fields/flow-capture-user-input.js.map +1 -0
- package/lib/esm/content-fields/flow-carousel.d.ts +22 -0
- package/lib/esm/content-fields/flow-carousel.js +152 -0
- package/lib/esm/content-fields/flow-carousel.js.map +1 -0
- package/lib/esm/content-fields/flow-channel-conditional.d.ts +14 -0
- package/lib/esm/content-fields/flow-channel-conditional.js +57 -0
- package/lib/esm/content-fields/flow-channel-conditional.js.map +1 -0
- package/lib/esm/content-fields/flow-contact-reasons-conditional.d.ts +17 -0
- package/lib/esm/content-fields/flow-contact-reasons-conditional.js +88 -0
- package/lib/esm/content-fields/flow-contact-reasons-conditional.js.map +1 -0
- package/lib/esm/content-fields/flow-country-conditional.d.ts +13 -0
- package/lib/esm/content-fields/flow-country-conditional.js +59 -0
- package/lib/esm/content-fields/flow-country-conditional.js.map +1 -0
- package/lib/esm/content-fields/flow-custom-conditional.d.ts +17 -0
- package/lib/esm/content-fields/flow-custom-conditional.js +89 -0
- package/lib/esm/content-fields/flow-custom-conditional.js.map +1 -0
- package/lib/esm/content-fields/flow-do-nothing.d.ts +9 -0
- package/lib/esm/content-fields/flow-do-nothing.js +27 -0
- package/lib/esm/content-fields/flow-do-nothing.js.map +1 -0
- package/lib/esm/content-fields/flow-element.d.ts +22 -0
- package/lib/esm/content-fields/flow-element.js +50 -0
- package/lib/esm/content-fields/flow-element.js.map +1 -0
- package/lib/esm/content-fields/flow-go-to-flow.d.ts +13 -0
- package/lib/esm/content-fields/flow-go-to-flow.js +51 -0
- package/lib/esm/content-fields/flow-go-to-flow.js.map +1 -0
- package/lib/esm/content-fields/flow-handoff.d.ts +23 -0
- package/lib/esm/content-fields/flow-handoff.js +104 -0
- package/lib/esm/content-fields/flow-handoff.js.map +1 -0
- package/lib/esm/content-fields/flow-image.d.ts +10 -0
- package/lib/esm/content-fields/flow-image.js +33 -0
- package/lib/esm/content-fields/flow-image.js.map +1 -0
- package/lib/esm/content-fields/flow-queue-status-conditional.d.ts +30 -0
- package/lib/esm/content-fields/flow-queue-status-conditional.js +95 -0
- package/lib/esm/content-fields/flow-queue-status-conditional.js.map +1 -0
- package/lib/esm/content-fields/flow-rating.d.ts +15 -0
- package/lib/esm/content-fields/flow-rating.js +66 -0
- package/lib/esm/content-fields/flow-rating.js.map +1 -0
- package/lib/esm/content-fields/flow-text.d.ts +15 -0
- package/lib/esm/content-fields/flow-text.js +60 -0
- package/lib/esm/content-fields/flow-text.js.map +1 -0
- package/lib/esm/content-fields/flow-update-variables.d.ts +15 -0
- package/lib/esm/content-fields/flow-update-variables.js +137 -0
- package/lib/esm/content-fields/flow-update-variables.js.map +1 -0
- package/lib/esm/content-fields/flow-video.d.ts +10 -0
- package/lib/esm/content-fields/flow-video.js +33 -0
- package/lib/esm/content-fields/flow-video.js.map +1 -0
- package/lib/esm/content-fields/flow-webview.d.ts +16 -0
- package/lib/esm/content-fields/flow-webview.js +78 -0
- package/lib/esm/content-fields/flow-webview.js.map +1 -0
- package/lib/esm/content-fields/flow-whatsapp-cta-url-button.d.ts +21 -0
- package/lib/esm/content-fields/flow-whatsapp-cta-url-button.js +92 -0
- package/lib/esm/content-fields/flow-whatsapp-cta-url-button.js.map +1 -0
- package/lib/esm/content-fields/flow-whatsapp-request-contact-info.d.ts +11 -0
- package/lib/esm/content-fields/flow-whatsapp-request-contact-info.js +46 -0
- package/lib/esm/content-fields/flow-whatsapp-request-contact-info.js.map +1 -0
- package/lib/esm/content-fields/flow-whatsapp-template.d.ts +37 -0
- package/lib/esm/content-fields/flow-whatsapp-template.js +264 -0
- package/lib/esm/content-fields/flow-whatsapp-template.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/ai-agent-router.d.ts +21 -0
- package/lib/esm/content-fields/hubtype-fields/ai-agent-router.js +3 -0
- package/lib/esm/content-fields/hubtype-fields/ai-agent-router.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/ai-agent.d.ts +25 -0
- package/lib/esm/content-fields/hubtype-fields/ai-agent.js +3 -0
- package/lib/esm/content-fields/hubtype-fields/ai-agent.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/bot-action.d.ts +10 -0
- package/lib/esm/content-fields/hubtype-fields/bot-action.js +3 -0
- package/lib/esm/content-fields/hubtype-fields/bot-action.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/button.d.ts +8 -0
- package/lib/esm/content-fields/hubtype-fields/button.js +3 -0
- package/lib/esm/content-fields/hubtype-fields/button.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/capture-user-input.d.ts +19 -0
- package/lib/esm/content-fields/hubtype-fields/capture-user-input.js +12 -0
- package/lib/esm/content-fields/hubtype-fields/capture-user-input.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/carousel.d.ts +17 -0
- package/lib/esm/content-fields/hubtype-fields/carousel.js +3 -0
- package/lib/esm/content-fields/hubtype-fields/carousel.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/channel-conditional.d.ts +10 -0
- package/lib/esm/content-fields/hubtype-fields/channel-conditional.js +3 -0
- package/lib/esm/content-fields/hubtype-fields/channel-conditional.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/common.d.ts +83 -0
- package/lib/esm/content-fields/hubtype-fields/common.js +3 -0
- package/lib/esm/content-fields/hubtype-fields/common.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/contact-reasons-conditional.d.ts +19 -0
- package/lib/esm/content-fields/hubtype-fields/contact-reasons-conditional.js +3 -0
- package/lib/esm/content-fields/hubtype-fields/contact-reasons-conditional.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/country-conditional.d.ts +10 -0
- package/lib/esm/content-fields/hubtype-fields/country-conditional.js +3 -0
- package/lib/esm/content-fields/hubtype-fields/country-conditional.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/custom-conditional-v2.d.ts +56 -0
- package/lib/esm/content-fields/hubtype-fields/custom-conditional-v2.js +36 -0
- package/lib/esm/content-fields/hubtype-fields/custom-conditional-v2.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/custom-conditional.d.ts +11 -0
- package/lib/esm/content-fields/hubtype-fields/custom-conditional.js +3 -0
- package/lib/esm/content-fields/hubtype-fields/custom-conditional.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/do-nothing.d.ts +6 -0
- package/lib/esm/content-fields/hubtype-fields/do-nothing.js +3 -0
- package/lib/esm/content-fields/hubtype-fields/do-nothing.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/fallback.d.ts +9 -0
- package/lib/esm/content-fields/hubtype-fields/fallback.js +3 -0
- package/lib/esm/content-fields/hubtype-fields/fallback.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/function.d.ts +30 -0
- package/lib/esm/content-fields/hubtype-fields/function.js +11 -0
- package/lib/esm/content-fields/hubtype-fields/function.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/go-to-flow.d.ts +9 -0
- package/lib/esm/content-fields/hubtype-fields/go-to-flow.js +3 -0
- package/lib/esm/content-fields/hubtype-fields/go-to-flow.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/handoff.d.ts +21 -0
- package/lib/esm/content-fields/hubtype-fields/handoff.js +10 -0
- package/lib/esm/content-fields/hubtype-fields/handoff.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/image.d.ts +8 -0
- package/lib/esm/content-fields/hubtype-fields/image.js +3 -0
- package/lib/esm/content-fields/hubtype-fields/image.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/index.d.ts +28 -0
- package/lib/esm/content-fields/hubtype-fields/index.js +32 -0
- package/lib/esm/content-fields/hubtype-fields/index.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/keyword.d.ts +9 -0
- package/lib/esm/content-fields/hubtype-fields/keyword.js +3 -0
- package/lib/esm/content-fields/hubtype-fields/keyword.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/node-types.d.ts +34 -0
- package/lib/esm/content-fields/hubtype-fields/node-types.js +41 -0
- package/lib/esm/content-fields/hubtype-fields/node-types.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/nodes.d.ts +29 -0
- package/lib/esm/content-fields/hubtype-fields/nodes.js +3 -0
- package/lib/esm/content-fields/hubtype-fields/nodes.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/payload.d.ts +8 -0
- package/lib/esm/content-fields/hubtype-fields/payload.js +3 -0
- package/lib/esm/content-fields/hubtype-fields/payload.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/queue-status-conditional.d.ts +25 -0
- package/lib/esm/content-fields/hubtype-fields/queue-status-conditional.js +3 -0
- package/lib/esm/content-fields/hubtype-fields/queue-status-conditional.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/rating.d.ts +23 -0
- package/lib/esm/content-fields/hubtype-fields/rating.js +9 -0
- package/lib/esm/content-fields/hubtype-fields/rating.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/smart-intent.d.ts +12 -0
- package/lib/esm/content-fields/hubtype-fields/smart-intent.js +3 -0
- package/lib/esm/content-fields/hubtype-fields/smart-intent.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/text.d.ts +11 -0
- package/lib/esm/content-fields/hubtype-fields/text.js +3 -0
- package/lib/esm/content-fields/hubtype-fields/text.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/update-variables.d.ts +9 -0
- package/lib/esm/content-fields/hubtype-fields/update-variables.js +3 -0
- package/lib/esm/content-fields/hubtype-fields/update-variables.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/url.d.ts +8 -0
- package/lib/esm/content-fields/hubtype-fields/url.js +3 -0
- package/lib/esm/content-fields/hubtype-fields/url.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/video.d.ts +8 -0
- package/lib/esm/content-fields/hubtype-fields/video.js +3 -0
- package/lib/esm/content-fields/hubtype-fields/video.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/webview.d.ts +17 -0
- package/lib/esm/content-fields/hubtype-fields/webview.js +3 -0
- package/lib/esm/content-fields/hubtype-fields/webview.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/whatsapp-button-list.d.ts +21 -0
- package/lib/esm/content-fields/hubtype-fields/whatsapp-button-list.js +3 -0
- package/lib/esm/content-fields/hubtype-fields/whatsapp-button-list.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/whatsapp-cta-url-button.d.ts +17 -0
- package/lib/esm/content-fields/hubtype-fields/whatsapp-cta-url-button.js +3 -0
- package/lib/esm/content-fields/hubtype-fields/whatsapp-cta-url-button.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/whatsapp-request-contact-info.d.ts +10 -0
- package/lib/esm/content-fields/hubtype-fields/whatsapp-request-contact-info.js +3 -0
- package/lib/esm/content-fields/hubtype-fields/whatsapp-request-contact-info.js.map +1 -0
- package/lib/esm/content-fields/hubtype-fields/whatsapp-template.d.ts +96 -0
- package/lib/esm/content-fields/hubtype-fields/whatsapp-template.js +9 -0
- package/lib/esm/content-fields/hubtype-fields/whatsapp-template.js.map +1 -0
- package/lib/esm/content-fields/index.d.ts +28 -0
- package/lib/esm/content-fields/index.js +58 -0
- package/lib/esm/content-fields/index.js.map +1 -0
- package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.d.ts +14 -0
- package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.js +41 -0
- package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.js.map +1 -0
- package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.d.ts +13 -0
- package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.js +36 -0
- package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.js.map +1 -0
- package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list.d.ts +14 -0
- package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js +46 -0
- package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js.map +1 -0
- package/lib/esm/content-fields/whatsapp-button-list/index.d.ts +3 -0
- package/lib/esm/content-fields/whatsapp-button-list/index.js +10 -0
- package/lib/esm/content-fields/whatsapp-button-list/index.js.map +1 -0
- package/lib/esm/filters/index.d.ts +12 -0
- package/lib/esm/filters/index.js +17 -0
- package/lib/esm/filters/index.js.map +1 -0
- package/lib/esm/flow-factory.d.ts +12 -0
- package/lib/esm/flow-factory.js +75 -0
- package/lib/esm/flow-factory.js.map +1 -0
- package/lib/esm/functions/index.d.ts +11 -0
- package/lib/esm/functions/index.js +49 -0
- package/lib/esm/functions/index.js.map +1 -0
- package/lib/esm/index.d.ts +42 -0
- package/lib/esm/index.js +142 -0
- package/lib/esm/index.js.map +1 -0
- package/lib/esm/services/contact-info-fields-api.d.ts +7 -0
- package/lib/esm/services/contact-info-fields-api.js +28 -0
- package/lib/esm/services/contact-info-fields-api.js.map +1 -0
- package/lib/esm/services/hubtype-queues-api.d.ts +14 -0
- package/lib/esm/services/hubtype-queues-api.js +26 -0
- package/lib/esm/services/hubtype-queues-api.js.map +1 -0
- package/lib/esm/structured-output/flow-builder-content.d.ts +13 -0
- package/lib/esm/structured-output/flow-builder-content.js +15 -0
- package/lib/esm/structured-output/flow-builder-content.js.map +1 -0
- package/lib/esm/tracking.d.ts +16 -0
- package/lib/esm/tracking.js +71 -0
- package/lib/esm/tracking.js.map +1 -0
- package/lib/esm/types.d.ts +62 -0
- package/lib/esm/types.js +14 -0
- package/lib/esm/types.js.map +1 -0
- package/lib/esm/user-input/capture-user-input-api.d.ts +21 -0
- package/lib/esm/user-input/capture-user-input-api.js +88 -0
- package/lib/esm/user-input/capture-user-input-api.js.map +1 -0
- package/lib/esm/user-input/index.d.ts +4 -0
- package/lib/esm/user-input/index.js +37 -0
- package/lib/esm/user-input/index.js.map +1 -0
- package/lib/esm/user-input/keyword.d.ts +27 -0
- package/lib/esm/user-input/keyword.js +84 -0
- package/lib/esm/user-input/keyword.js.map +1 -0
- package/lib/esm/user-input/smart-intent.d.ts +24 -0
- package/lib/esm/user-input/smart-intent.js +89 -0
- package/lib/esm/user-input/smart-intent.js.map +1 -0
- package/lib/esm/utils/ai-agent.d.ts +11 -0
- package/lib/esm/utils/ai-agent.js +28 -0
- package/lib/esm/utils/ai-agent.js.map +1 -0
- package/lib/esm/utils/authentication.d.ts +2 -0
- package/lib/esm/utils/authentication.js +21 -0
- package/lib/esm/utils/authentication.js.map +1 -0
- package/lib/esm/utils/flow-locale.d.ts +22 -0
- package/lib/esm/utils/flow-locale.js +79 -0
- package/lib/esm/utils/flow-locale.js.map +1 -0
- package/lib/esm/utils/get-flow-builder-plugin.d.ts +3 -0
- package/lib/esm/utils/get-flow-builder-plugin.js +16 -0
- package/lib/esm/utils/get-flow-builder-plugin.js.map +1 -0
- package/lib/esm/utils/hubtype-assistant-content.d.ts +13 -0
- package/lib/esm/utils/hubtype-assistant-content.js +184 -0
- package/lib/esm/utils/hubtype-assistant-content.js.map +1 -0
- package/lib/esm/utils/input.d.ts +6 -0
- package/lib/esm/utils/input.js +35 -0
- package/lib/esm/utils/input.js.map +1 -0
- package/lib/esm/webview/contents-context.d.ts +2 -0
- package/lib/esm/webview/contents-context.js +12 -0
- package/lib/esm/webview/contents-context.js.map +1 -0
- package/lib/esm/webview/index.d.ts +3 -0
- package/lib/esm/webview/index.js +10 -0
- package/lib/esm/webview/index.js.map +1 -0
- package/lib/esm/webview/types.d.ts +47 -0
- package/lib/esm/webview/types.js +9 -0
- package/lib/esm/webview/types.js.map +1 -0
- package/lib/esm/webview/use-webview-contents.d.ts +2 -0
- package/lib/esm/webview/use-webview-contents.js +83 -0
- package/lib/esm/webview/use-webview-contents.js.map +1 -0
- package/package.json +9 -11
- package/src/content-fields/flow-contact-reasons-conditional.tsx +34 -5
- package/src/content-fields/flow-update-variables.tsx +182 -0
- package/src/content-fields/hubtype-fields/contact-reasons-conditional.ts +4 -1
- package/src/content-fields/hubtype-fields/node-types.ts +1 -0
- package/src/content-fields/hubtype-fields/nodes.ts +2 -0
- package/src/content-fields/hubtype-fields/update-variables.ts +10 -0
- package/src/content-fields/index.ts +3 -0
- package/src/flow-factory.ts +7 -0
- package/src/services/contact-info-fields-api.ts +36 -0
- package/lib/action/ai-agent-from-user-input.d.ts +0 -3
- package/lib/action/ai-agent-from-user-input.js +0 -43
- package/lib/action/ai-agent-from-user-input.js.map +0 -1
- package/lib/action/context.d.ts +0 -11
- package/lib/action/context.js +0 -20
- package/lib/action/context.js.map +0 -1
- package/lib/action/fallback.d.ts +0 -3
- package/lib/action/fallback.js +0 -41
- package/lib/action/fallback.js.map +0 -1
- package/lib/action/first-interaction.d.ts +0 -3
- package/lib/action/first-interaction.js +0 -110
- package/lib/action/first-interaction.js.map +0 -1
- package/lib/action/get-contents.d.ts +0 -3
- package/lib/action/get-contents.js +0 -59
- package/lib/action/get-contents.js.map +0 -1
- package/lib/action/index.d.ts +0 -25
- package/lib/action/index.js +0 -133
- package/lib/action/index.js.map +0 -1
- package/lib/action/payload.d.ts +0 -3
- package/lib/action/payload.js +0 -78
- package/lib/action/payload.js.map +0 -1
- package/lib/api.d.ts +0 -45
- package/lib/api.js +0 -240
- package/lib/api.js.map +0 -1
- package/lib/bot-context-manager.d.ts +0 -17
- package/lib/bot-context-manager.js +0 -101
- package/lib/bot-context-manager.js.map +0 -1
- package/lib/constants.js +0 -18
- package/lib/constants.js.map +0 -1
- package/lib/content-fields/contact-reasons-conditional-matcher.d.ts +0 -4
- package/lib/content-fields/contact-reasons-conditional-matcher.js +0 -10
- package/lib/content-fields/contact-reasons-conditional-matcher.js.map +0 -1
- package/lib/content-fields/content-fields-base.d.ts +0 -20
- package/lib/content-fields/content-fields-base.js +0 -78
- package/lib/content-fields/content-fields-base.js.map +0 -1
- package/lib/content-fields/custom-conditional/custom-conditional-v2-evaluators.d.ts +0 -15
- package/lib/content-fields/custom-conditional/custom-conditional-v2-evaluators.js +0 -73
- package/lib/content-fields/custom-conditional/custom-conditional-v2-evaluators.js.map +0 -1
- package/lib/content-fields/custom-conditional/custom-conditional-v2-resolver.d.ts +0 -9
- package/lib/content-fields/custom-conditional/custom-conditional-v2-resolver.js +0 -58
- package/lib/content-fields/custom-conditional/custom-conditional-v2-resolver.js.map +0 -1
- package/lib/content-fields/custom-conditional/flow-custom-condition-v2.d.ts +0 -17
- package/lib/content-fields/custom-conditional/flow-custom-condition-v2.js +0 -94
- package/lib/content-fields/custom-conditional/flow-custom-condition-v2.js.map +0 -1
- package/lib/content-fields/flow-ai-agent-base.d.ts +0 -25
- package/lib/content-fields/flow-ai-agent-base.js +0 -106
- package/lib/content-fields/flow-ai-agent-base.js.map +0 -1
- package/lib/content-fields/flow-ai-agent-router.d.ts +0 -21
- package/lib/content-fields/flow-ai-agent-router.js +0 -137
- package/lib/content-fields/flow-ai-agent-router.js.map +0 -1
- package/lib/content-fields/flow-ai-agent.d.ts +0 -17
- package/lib/content-fields/flow-ai-agent.js +0 -76
- package/lib/content-fields/flow-ai-agent.js.map +0 -1
- package/lib/content-fields/flow-bot-action.d.ts +0 -14
- package/lib/content-fields/flow-bot-action.js +0 -53
- package/lib/content-fields/flow-bot-action.js.map +0 -1
- package/lib/content-fields/flow-button.d.ts +0 -31
- package/lib/content-fields/flow-button.js +0 -105
- package/lib/content-fields/flow-button.js.map +0 -1
- package/lib/content-fields/flow-capture-user-input.d.ts +0 -14
- package/lib/content-fields/flow-capture-user-input.js +0 -46
- package/lib/content-fields/flow-capture-user-input.js.map +0 -1
- package/lib/content-fields/flow-carousel.d.ts +0 -22
- package/lib/content-fields/flow-carousel.js +0 -193
- package/lib/content-fields/flow-carousel.js.map +0 -1
- package/lib/content-fields/flow-channel-conditional.d.ts +0 -14
- package/lib/content-fields/flow-channel-conditional.js +0 -61
- package/lib/content-fields/flow-channel-conditional.js.map +0 -1
- package/lib/content-fields/flow-contact-reasons-conditional.d.ts +0 -14
- package/lib/content-fields/flow-contact-reasons-conditional.js +0 -68
- package/lib/content-fields/flow-contact-reasons-conditional.js.map +0 -1
- package/lib/content-fields/flow-country-conditional.d.ts +0 -13
- package/lib/content-fields/flow-country-conditional.js +0 -64
- package/lib/content-fields/flow-country-conditional.js.map +0 -1
- package/lib/content-fields/flow-custom-conditional.d.ts +0 -17
- package/lib/content-fields/flow-custom-conditional.js +0 -87
- package/lib/content-fields/flow-custom-conditional.js.map +0 -1
- package/lib/content-fields/flow-do-nothing.d.ts +0 -9
- package/lib/content-fields/flow-do-nothing.js +0 -33
- package/lib/content-fields/flow-do-nothing.js.map +0 -1
- package/lib/content-fields/flow-element.d.ts +0 -22
- package/lib/content-fields/flow-element.js +0 -67
- package/lib/content-fields/flow-element.js.map +0 -1
- package/lib/content-fields/flow-go-to-flow.d.ts +0 -13
- package/lib/content-fields/flow-go-to-flow.js +0 -56
- package/lib/content-fields/flow-go-to-flow.js.map +0 -1
- package/lib/content-fields/flow-handoff.d.ts +0 -23
- package/lib/content-fields/flow-handoff.js +0 -117
- package/lib/content-fields/flow-handoff.js.map +0 -1
- package/lib/content-fields/flow-image.d.ts +0 -10
- package/lib/content-fields/flow-image.js +0 -42
- package/lib/content-fields/flow-image.js.map +0 -1
- package/lib/content-fields/flow-queue-status-conditional.d.ts +0 -30
- package/lib/content-fields/flow-queue-status-conditional.js +0 -100
- package/lib/content-fields/flow-queue-status-conditional.js.map +0 -1
- package/lib/content-fields/flow-rating.d.ts +0 -15
- package/lib/content-fields/flow-rating.js +0 -88
- package/lib/content-fields/flow-rating.js.map +0 -1
- package/lib/content-fields/flow-text.d.ts +0 -15
- package/lib/content-fields/flow-text.js +0 -82
- package/lib/content-fields/flow-text.js.map +0 -1
- package/lib/content-fields/flow-video.d.ts +0 -10
- package/lib/content-fields/flow-video.js +0 -42
- package/lib/content-fields/flow-video.js.map +0 -1
- package/lib/content-fields/flow-webview.d.ts +0 -16
- package/lib/content-fields/flow-webview.js +0 -81
- package/lib/content-fields/flow-webview.js.map +0 -1
- package/lib/content-fields/flow-whatsapp-cta-url-button.d.ts +0 -21
- package/lib/content-fields/flow-whatsapp-cta-url-button.js +0 -131
- package/lib/content-fields/flow-whatsapp-cta-url-button.js.map +0 -1
- package/lib/content-fields/flow-whatsapp-request-contact-info.d.ts +0 -11
- package/lib/content-fields/flow-whatsapp-request-contact-info.js +0 -62
- package/lib/content-fields/flow-whatsapp-request-contact-info.js.map +0 -1
- package/lib/content-fields/flow-whatsapp-template.d.ts +0 -37
- package/lib/content-fields/flow-whatsapp-template.js +0 -281
- package/lib/content-fields/flow-whatsapp-template.js.map +0 -1
- package/lib/content-fields/hubtype-fields/ai-agent-router.d.ts +0 -21
- package/lib/content-fields/hubtype-fields/ai-agent-router.js +0 -4
- package/lib/content-fields/hubtype-fields/ai-agent-router.js.map +0 -1
- package/lib/content-fields/hubtype-fields/ai-agent.d.ts +0 -25
- package/lib/content-fields/hubtype-fields/ai-agent.js +0 -4
- package/lib/content-fields/hubtype-fields/ai-agent.js.map +0 -1
- package/lib/content-fields/hubtype-fields/bot-action.d.ts +0 -10
- package/lib/content-fields/hubtype-fields/bot-action.js +0 -4
- package/lib/content-fields/hubtype-fields/bot-action.js.map +0 -1
- package/lib/content-fields/hubtype-fields/button.d.ts +0 -8
- package/lib/content-fields/hubtype-fields/button.js +0 -4
- package/lib/content-fields/hubtype-fields/button.js.map +0 -1
- package/lib/content-fields/hubtype-fields/capture-user-input.d.ts +0 -19
- package/lib/content-fields/hubtype-fields/capture-user-input.js +0 -12
- package/lib/content-fields/hubtype-fields/capture-user-input.js.map +0 -1
- package/lib/content-fields/hubtype-fields/carousel.d.ts +0 -17
- package/lib/content-fields/hubtype-fields/carousel.js +0 -4
- package/lib/content-fields/hubtype-fields/carousel.js.map +0 -1
- package/lib/content-fields/hubtype-fields/channel-conditional.d.ts +0 -10
- package/lib/content-fields/hubtype-fields/channel-conditional.js +0 -4
- package/lib/content-fields/hubtype-fields/channel-conditional.js.map +0 -1
- package/lib/content-fields/hubtype-fields/common.d.ts +0 -83
- package/lib/content-fields/hubtype-fields/common.js +0 -4
- package/lib/content-fields/hubtype-fields/common.js.map +0 -1
- package/lib/content-fields/hubtype-fields/contact-reasons-conditional.d.ts +0 -16
- package/lib/content-fields/hubtype-fields/contact-reasons-conditional.js +0 -4
- package/lib/content-fields/hubtype-fields/contact-reasons-conditional.js.map +0 -1
- package/lib/content-fields/hubtype-fields/country-conditional.d.ts +0 -10
- package/lib/content-fields/hubtype-fields/country-conditional.js +0 -4
- package/lib/content-fields/hubtype-fields/country-conditional.js.map +0 -1
- package/lib/content-fields/hubtype-fields/custom-conditional-v2.d.ts +0 -56
- package/lib/content-fields/hubtype-fields/custom-conditional-v2.js +0 -36
- package/lib/content-fields/hubtype-fields/custom-conditional-v2.js.map +0 -1
- package/lib/content-fields/hubtype-fields/custom-conditional.d.ts +0 -11
- package/lib/content-fields/hubtype-fields/custom-conditional.js +0 -4
- package/lib/content-fields/hubtype-fields/custom-conditional.js.map +0 -1
- package/lib/content-fields/hubtype-fields/do-nothing.d.ts +0 -6
- package/lib/content-fields/hubtype-fields/do-nothing.js +0 -4
- package/lib/content-fields/hubtype-fields/do-nothing.js.map +0 -1
- package/lib/content-fields/hubtype-fields/fallback.d.ts +0 -9
- package/lib/content-fields/hubtype-fields/fallback.js +0 -4
- package/lib/content-fields/hubtype-fields/fallback.js.map +0 -1
- package/lib/content-fields/hubtype-fields/function.d.ts +0 -30
- package/lib/content-fields/hubtype-fields/function.js +0 -11
- package/lib/content-fields/hubtype-fields/function.js.map +0 -1
- package/lib/content-fields/hubtype-fields/go-to-flow.d.ts +0 -9
- package/lib/content-fields/hubtype-fields/go-to-flow.js +0 -4
- package/lib/content-fields/hubtype-fields/go-to-flow.js.map +0 -1
- package/lib/content-fields/hubtype-fields/handoff.d.ts +0 -21
- package/lib/content-fields/hubtype-fields/handoff.js +0 -10
- package/lib/content-fields/hubtype-fields/handoff.js.map +0 -1
- package/lib/content-fields/hubtype-fields/image.d.ts +0 -8
- package/lib/content-fields/hubtype-fields/image.js +0 -4
- package/lib/content-fields/hubtype-fields/image.js.map +0 -1
- package/lib/content-fields/hubtype-fields/index.d.ts +0 -28
- package/lib/content-fields/hubtype-fields/index.js +0 -59
- package/lib/content-fields/hubtype-fields/index.js.map +0 -1
- package/lib/content-fields/hubtype-fields/keyword.d.ts +0 -9
- package/lib/content-fields/hubtype-fields/keyword.js +0 -4
- package/lib/content-fields/hubtype-fields/keyword.js.map +0 -1
- package/lib/content-fields/hubtype-fields/node-types.d.ts +0 -33
- package/lib/content-fields/hubtype-fields/node-types.js +0 -40
- package/lib/content-fields/hubtype-fields/node-types.js.map +0 -1
- package/lib/content-fields/hubtype-fields/nodes.d.ts +0 -28
- package/lib/content-fields/hubtype-fields/nodes.js +0 -4
- package/lib/content-fields/hubtype-fields/nodes.js.map +0 -1
- package/lib/content-fields/hubtype-fields/payload.d.ts +0 -8
- package/lib/content-fields/hubtype-fields/payload.js +0 -4
- package/lib/content-fields/hubtype-fields/payload.js.map +0 -1
- package/lib/content-fields/hubtype-fields/queue-status-conditional.d.ts +0 -25
- package/lib/content-fields/hubtype-fields/queue-status-conditional.js +0 -4
- package/lib/content-fields/hubtype-fields/queue-status-conditional.js.map +0 -1
- package/lib/content-fields/hubtype-fields/rating.d.ts +0 -23
- package/lib/content-fields/hubtype-fields/rating.js +0 -9
- package/lib/content-fields/hubtype-fields/rating.js.map +0 -1
- package/lib/content-fields/hubtype-fields/smart-intent.d.ts +0 -12
- package/lib/content-fields/hubtype-fields/smart-intent.js +0 -4
- package/lib/content-fields/hubtype-fields/smart-intent.js.map +0 -1
- package/lib/content-fields/hubtype-fields/text.d.ts +0 -11
- package/lib/content-fields/hubtype-fields/text.js +0 -4
- package/lib/content-fields/hubtype-fields/text.js.map +0 -1
- package/lib/content-fields/hubtype-fields/url.d.ts +0 -8
- package/lib/content-fields/hubtype-fields/url.js +0 -4
- package/lib/content-fields/hubtype-fields/url.js.map +0 -1
- package/lib/content-fields/hubtype-fields/video.d.ts +0 -8
- package/lib/content-fields/hubtype-fields/video.js +0 -4
- package/lib/content-fields/hubtype-fields/video.js.map +0 -1
- package/lib/content-fields/hubtype-fields/webview.d.ts +0 -17
- package/lib/content-fields/hubtype-fields/webview.js +0 -4
- package/lib/content-fields/hubtype-fields/webview.js.map +0 -1
- package/lib/content-fields/hubtype-fields/whatsapp-button-list.d.ts +0 -21
- package/lib/content-fields/hubtype-fields/whatsapp-button-list.js +0 -4
- package/lib/content-fields/hubtype-fields/whatsapp-button-list.js.map +0 -1
- package/lib/content-fields/hubtype-fields/whatsapp-cta-url-button.d.ts +0 -17
- package/lib/content-fields/hubtype-fields/whatsapp-cta-url-button.js +0 -4
- package/lib/content-fields/hubtype-fields/whatsapp-cta-url-button.js.map +0 -1
- package/lib/content-fields/hubtype-fields/whatsapp-request-contact-info.d.ts +0 -10
- package/lib/content-fields/hubtype-fields/whatsapp-request-contact-info.js +0 -4
- package/lib/content-fields/hubtype-fields/whatsapp-request-contact-info.js.map +0 -1
- package/lib/content-fields/hubtype-fields/whatsapp-template.d.ts +0 -96
- package/lib/content-fields/hubtype-fields/whatsapp-template.js +0 -9
- package/lib/content-fields/hubtype-fields/whatsapp-template.js.map +0 -1
- package/lib/content-fields/index.d.ts +0 -27
- package/lib/content-fields/index.js +0 -79
- package/lib/content-fields/index.js.map +0 -1
- package/lib/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.d.ts +0 -14
- package/lib/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.js +0 -43
- package/lib/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.js.map +0 -1
- package/lib/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.d.ts +0 -13
- package/lib/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.js +0 -41
- package/lib/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.js.map +0 -1
- package/lib/content-fields/whatsapp-button-list/flow-whatsapp-button-list.d.ts +0 -14
- package/lib/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js +0 -66
- package/lib/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js.map +0 -1
- package/lib/content-fields/whatsapp-button-list/index.d.ts +0 -3
- package/lib/content-fields/whatsapp-button-list/index.js +0 -12
- package/lib/content-fields/whatsapp-button-list/index.js.map +0 -1
- package/lib/filters/index.d.ts +0 -12
- package/lib/filters/index.js +0 -16
- package/lib/filters/index.js.map +0 -1
- package/lib/flow-factory.d.ts +0 -12
- package/lib/flow-factory.js +0 -79
- package/lib/flow-factory.js.map +0 -1
- package/lib/functions/index.d.ts +0 -11
- package/lib/functions/index.js +0 -55
- package/lib/functions/index.js.map +0 -1
- package/lib/index.d.ts +0 -42
- package/lib/index.js +0 -157
- package/lib/index.js.map +0 -1
- package/lib/services/hubtype-queues-api.js +0 -26
- package/lib/services/hubtype-queues-api.js.map +0 -1
- package/lib/structured-output/flow-builder-content.js +0 -16
- package/lib/structured-output/flow-builder-content.js.map +0 -1
- package/lib/tracking.d.ts +0 -16
- package/lib/tracking.js +0 -77
- package/lib/tracking.js.map +0 -1
- package/lib/types.d.ts +0 -62
- package/lib/types.js +0 -14
- package/lib/types.js.map +0 -1
- package/lib/user-input/capture-user-input-api.d.ts +0 -21
- package/lib/user-input/capture-user-input-api.js +0 -99
- package/lib/user-input/capture-user-input-api.js.map +0 -1
- package/lib/user-input/index.d.ts +0 -4
- package/lib/user-input/index.js +0 -46
- package/lib/user-input/index.js.map +0 -1
- package/lib/user-input/keyword.d.ts +0 -27
- package/lib/user-input/keyword.js +0 -89
- package/lib/user-input/keyword.js.map +0 -1
- package/lib/user-input/smart-intent.d.ts +0 -24
- package/lib/user-input/smart-intent.js +0 -93
- package/lib/user-input/smart-intent.js.map +0 -1
- package/lib/utils/ai-agent.d.ts +0 -11
- package/lib/utils/ai-agent.js +0 -33
- package/lib/utils/ai-agent.js.map +0 -1
- package/lib/utils/authentication.js +0 -24
- package/lib/utils/authentication.js.map +0 -1
- package/lib/utils/flow-locale.js +0 -75
- package/lib/utils/flow-locale.js.map +0 -1
- package/lib/utils/get-flow-builder-plugin.d.ts +0 -3
- package/lib/utils/get-flow-builder-plugin.js +0 -16
- package/lib/utils/get-flow-builder-plugin.js.map +0 -1
- package/lib/utils/hubtype-assistant-content.d.ts +0 -13
- package/lib/utils/hubtype-assistant-content.js +0 -200
- package/lib/utils/hubtype-assistant-content.js.map +0 -1
- package/lib/utils/input.js +0 -37
- package/lib/utils/input.js.map +0 -1
- package/lib/webview/contents-context.d.ts +0 -2
- package/lib/webview/contents-context.js +0 -14
- package/lib/webview/contents-context.js.map +0 -1
- package/lib/webview/index.d.ts +0 -3
- package/lib/webview/index.js +0 -11
- package/lib/webview/index.js.map +0 -1
- package/lib/webview/types.d.ts +0 -47
- package/lib/webview/types.js +0 -9
- package/lib/webview/types.js.map +0 -1
- package/lib/webview/use-webview-contents.d.ts +0 -2
- package/lib/webview/use-webview-contents.js +0 -90
- package/lib/webview/use-webview-contents.js.map +0 -1
- /package/lib/{constants.d.ts → cjs/constants.d.ts} +0 -0
- /package/lib/{services → cjs/services}/hubtype-queues-api.d.ts +0 -0
- /package/lib/{structured-output → cjs/structured-output}/flow-builder-content.d.ts +0 -0
- /package/lib/{utils → cjs/utils}/authentication.d.ts +0 -0
- /package/lib/{utils → cjs/utils}/flow-locale.d.ts +0 -0
- /package/lib/{utils → cjs/utils}/input.d.ts +0 -0
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FlowQueueStatusConditional = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const core_1 = require("@botonic/core");
|
|
6
|
+
const functions_1 = require("../functions");
|
|
7
|
+
const hubtype_queues_api_1 = require("../services/hubtype-queues-api");
|
|
8
|
+
const tracking_1 = require("../tracking");
|
|
9
|
+
const content_fields_base_1 = require("./content-fields-base");
|
|
10
|
+
var QueueStatusResult;
|
|
11
|
+
(function (QueueStatusResult) {
|
|
12
|
+
QueueStatusResult["OPEN"] = "open";
|
|
13
|
+
QueueStatusResult["CLOSED"] = "closed";
|
|
14
|
+
QueueStatusResult["OPEN_WITHOUT_AGENTS"] = "open-without-agents";
|
|
15
|
+
})(QueueStatusResult || (QueueStatusResult = {}));
|
|
16
|
+
class FlowQueueStatusConditional extends content_fields_base_1.ContentFieldsBase {
|
|
17
|
+
constructor() {
|
|
18
|
+
super(...arguments);
|
|
19
|
+
this.arguments = [];
|
|
20
|
+
this.queueId = '';
|
|
21
|
+
this.queueName = '';
|
|
22
|
+
this.isQueueOpen = false;
|
|
23
|
+
this.isAvailableAgent = false;
|
|
24
|
+
}
|
|
25
|
+
static async fromHubtypeCMS(component, locale) {
|
|
26
|
+
const newChannelConditional = new FlowQueueStatusConditional(component.id);
|
|
27
|
+
newChannelConditional.code = component.code;
|
|
28
|
+
newChannelConditional.arguments = component.content.arguments;
|
|
29
|
+
newChannelConditional.resultMapping = component.content
|
|
30
|
+
.result_mapping;
|
|
31
|
+
await newChannelConditional.setConditionalResult(locale);
|
|
32
|
+
return newChannelConditional;
|
|
33
|
+
}
|
|
34
|
+
async setConditionalResult(locale) {
|
|
35
|
+
const args = (0, functions_1.getArgumentsByLocale)(this.arguments, locale);
|
|
36
|
+
const queueId = args.find(arg => arg.name === 'queue_id')?.value || '';
|
|
37
|
+
const queueName = args.find(arg => arg.name === 'queue_name')?.value || '';
|
|
38
|
+
const checkAvailableAgents = args.find(arg => arg.name === 'check_available_agents')
|
|
39
|
+
?.value || false;
|
|
40
|
+
const queueStatus = await this.conditionalQueueStatus({
|
|
41
|
+
queueId,
|
|
42
|
+
queueName,
|
|
43
|
+
checkAvailableAgents,
|
|
44
|
+
});
|
|
45
|
+
const conditionalResult = this.resultMapping.find(rMap => rMap.result === queueStatus);
|
|
46
|
+
if (!conditionalResult) {
|
|
47
|
+
throw new Error(`No conditional result found for node ${this.code} with queue: ${queueName}`);
|
|
48
|
+
}
|
|
49
|
+
this.conditionalResult = conditionalResult;
|
|
50
|
+
this.followUp = conditionalResult.target;
|
|
51
|
+
}
|
|
52
|
+
async conditionalQueueStatus({ queueId, checkAvailableAgents, queueName, }) {
|
|
53
|
+
const queuesApi = new hubtype_queues_api_1.HubtypeQueuesApi(queueId, checkAvailableAgents);
|
|
54
|
+
const data = await queuesApi.getAvailability();
|
|
55
|
+
this.queueId = queueId;
|
|
56
|
+
this.queueName = queueName;
|
|
57
|
+
this.isQueueOpen = data.open;
|
|
58
|
+
this.isAvailableAgent = data.available_agents > 0;
|
|
59
|
+
if (checkAvailableAgents && data.open && data.available_agents === 0) {
|
|
60
|
+
return QueueStatusResult.OPEN_WITHOUT_AGENTS;
|
|
61
|
+
}
|
|
62
|
+
return data.open ? QueueStatusResult.OPEN : QueueStatusResult.CLOSED;
|
|
63
|
+
}
|
|
64
|
+
async trackFlow(botContext) {
|
|
65
|
+
const { flowThreadId, flowId, flowName, flowNodeId, flowNodeContentId } = (0, tracking_1.getCommonFlowContentEventArgsForContentId)(botContext, this.id);
|
|
66
|
+
if (!this.conditionalResult?.result) {
|
|
67
|
+
console.warn(`Tracking event for node ${this.code} but no conditional result found`);
|
|
68
|
+
}
|
|
69
|
+
const eventQueueStatusConditional = {
|
|
70
|
+
action: core_1.EventAction.ConditionalQueueStatus,
|
|
71
|
+
flowThreadId,
|
|
72
|
+
flowId,
|
|
73
|
+
flowName,
|
|
74
|
+
flowNodeId,
|
|
75
|
+
flowNodeContentId,
|
|
76
|
+
flowNodeIsMeaningful: false,
|
|
77
|
+
queueId: this.queueId,
|
|
78
|
+
queueName: this.queueName,
|
|
79
|
+
isQueueOpen: this.isQueueOpen,
|
|
80
|
+
isAvailableAgent: this.isAvailableAgent,
|
|
81
|
+
};
|
|
82
|
+
const { action, ...eventArgs } = eventQueueStatusConditional;
|
|
83
|
+
await (0, tracking_1.trackEvent)(botContext, action, eventArgs);
|
|
84
|
+
}
|
|
85
|
+
async processContent(botContext) {
|
|
86
|
+
await this.filterContent(botContext, this);
|
|
87
|
+
await this.trackFlow(botContext);
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
toBotonic() {
|
|
91
|
+
return (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, {});
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
exports.FlowQueueStatusConditional = FlowQueueStatusConditional;
|
|
95
|
+
//# sourceMappingURL=flow-queue-status-conditional.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flow-queue-status-conditional.js","sourceRoot":"","sources":["../../../src/content-fields/flow-queue-status-conditional.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { type BotContext } from '@botonic/core';
|
|
2
|
+
import { ContentFieldsBase } from './content-fields-base';
|
|
3
|
+
import { FlowButton } from './flow-button';
|
|
4
|
+
import { type HtRatingNode, RatingType } from './hubtype-fields';
|
|
5
|
+
export declare class FlowRating extends ContentFieldsBase {
|
|
6
|
+
text: string;
|
|
7
|
+
sendButtonText: string;
|
|
8
|
+
ratingType: RatingType;
|
|
9
|
+
buttons: FlowButton[];
|
|
10
|
+
openListButtonText: string;
|
|
11
|
+
static fromHubtypeCMS(cmsText: HtRatingNode, locale: string): FlowRating;
|
|
12
|
+
trackFlow(botContext: BotContext): Promise<void>;
|
|
13
|
+
processContent(botContext: BotContext): Promise<void>;
|
|
14
|
+
toBotonic(botContext: BotContext): JSX.Element;
|
|
15
|
+
}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FlowRating = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const core_1 = require("@botonic/core");
|
|
6
|
+
const react_1 = require("@botonic/react");
|
|
7
|
+
const tracking_1 = require("../tracking");
|
|
8
|
+
const get_flow_builder_plugin_1 = require("../utils/get-flow-builder-plugin");
|
|
9
|
+
const content_fields_base_1 = require("./content-fields-base");
|
|
10
|
+
const flow_button_1 = require("./flow-button");
|
|
11
|
+
const hubtype_fields_1 = require("./hubtype-fields");
|
|
12
|
+
class FlowRating extends content_fields_base_1.ContentFieldsBase {
|
|
13
|
+
constructor() {
|
|
14
|
+
super(...arguments);
|
|
15
|
+
this.text = '';
|
|
16
|
+
this.sendButtonText = '';
|
|
17
|
+
this.ratingType = hubtype_fields_1.RatingType.Stars;
|
|
18
|
+
this.buttons = [];
|
|
19
|
+
this.openListButtonText = '';
|
|
20
|
+
}
|
|
21
|
+
static fromHubtypeCMS(cmsText, locale) {
|
|
22
|
+
const newRating = new FlowRating(cmsText.id);
|
|
23
|
+
newRating.code = cmsText.code;
|
|
24
|
+
newRating.text = FlowRating.getTextByLocale(locale, cmsText.content.text);
|
|
25
|
+
newRating.sendButtonText = FlowRating.getTextByLocale(locale, cmsText.content.send_button_text);
|
|
26
|
+
newRating.ratingType = cmsText.content.rating_type;
|
|
27
|
+
newRating.buttons = cmsText.content.buttons.map(button => flow_button_1.FlowButton.fromRating(button));
|
|
28
|
+
newRating.openListButtonText = FlowRating.getTextByLocale(locale, cmsText.content.open_list_button_text);
|
|
29
|
+
newRating.followUp = cmsText.follow_up;
|
|
30
|
+
return newRating;
|
|
31
|
+
}
|
|
32
|
+
async trackFlow(botContext) {
|
|
33
|
+
await (0, tracking_1.trackOneContent)(botContext, this);
|
|
34
|
+
}
|
|
35
|
+
async processContent(botContext) {
|
|
36
|
+
await this.filterContent(botContext, this);
|
|
37
|
+
await this.trackFlow(botContext);
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
toBotonic(botContext) {
|
|
41
|
+
const flowBuilderPlugin = (0, get_flow_builder_plugin_1.getFlowBuilderPlugin)(botContext.plugins);
|
|
42
|
+
const customRatingMessageEnabled = flowBuilderPlugin.customRatingMessageEnabled;
|
|
43
|
+
const replacedText = this.replaceVariables(this.text, botContext);
|
|
44
|
+
if ((0, core_1.isWhatsapp)(botContext.session)) {
|
|
45
|
+
return ((0, jsx_runtime_1.jsx)(react_1.WhatsappButtonList, { body: replacedText, button: this.openListButtonText, sections: [
|
|
46
|
+
{
|
|
47
|
+
rows: this.buttons.map(button => ({
|
|
48
|
+
id: button.payload,
|
|
49
|
+
title: button.text,
|
|
50
|
+
})),
|
|
51
|
+
},
|
|
52
|
+
] }));
|
|
53
|
+
}
|
|
54
|
+
if (((0, core_1.isWebchat)(botContext.session) || (0, core_1.isDev)(botContext.session)) &&
|
|
55
|
+
customRatingMessageEnabled) {
|
|
56
|
+
const payloads = this.buttons
|
|
57
|
+
.map(button => button.payload)
|
|
58
|
+
.slice()
|
|
59
|
+
.reverse();
|
|
60
|
+
return ((0, jsx_runtime_1.jsx)(react_1.CustomRatingMessage, { alt: replacedText, payloads: payloads, messageText: replacedText, buttonText: this.sendButtonText, ratingType: this.ratingType }));
|
|
61
|
+
}
|
|
62
|
+
return ((0, jsx_runtime_1.jsxs)(react_1.Text, { children: [replacedText, this.buttons.map((button, buttonIndex) => button.renderButton(buttonIndex))] }, this.id));
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
exports.FlowRating = FlowRating;
|
|
66
|
+
//# sourceMappingURL=flow-rating.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flow-rating.js","sourceRoot":"","sources":["../../../src/content-fields/flow-rating.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { BotContext, BotExecutorMessage, TextMessage, TextWithButtonsMessage } from '@botonic/core';
|
|
2
|
+
import type { FlowBuilderApi } from '../api';
|
|
3
|
+
import { ContentFieldsBase } from './content-fields-base';
|
|
4
|
+
import { FlowButton } from './flow-button';
|
|
5
|
+
import { HtButtonStyle, type HtTextNode } from './hubtype-fields';
|
|
6
|
+
export declare class FlowText extends ContentFieldsBase {
|
|
7
|
+
text: string;
|
|
8
|
+
buttons: FlowButton[];
|
|
9
|
+
buttonStyle: HtButtonStyle;
|
|
10
|
+
static fromHubtypeCMS(cmsText: HtTextNode, locale: string, cmsApi: FlowBuilderApi, botContext: BotContext): FlowText;
|
|
11
|
+
trackFlow(botContext: BotContext): Promise<void>;
|
|
12
|
+
static fromAIAgent(id: string, textMessage: TextMessage | TextWithButtonsMessage | BotExecutorMessage): JSX.Element;
|
|
13
|
+
processContent(botContext: BotContext): Promise<void>;
|
|
14
|
+
toBotonic(botContext: BotContext): JSX.Element;
|
|
15
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FlowText = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const react_1 = require("@botonic/react");
|
|
6
|
+
const constants_1 = require("../constants");
|
|
7
|
+
const tracking_1 = require("../tracking");
|
|
8
|
+
const content_fields_base_1 = require("./content-fields-base");
|
|
9
|
+
const flow_button_1 = require("./flow-button");
|
|
10
|
+
const hubtype_fields_1 = require("./hubtype-fields");
|
|
11
|
+
class FlowText extends content_fields_base_1.ContentFieldsBase {
|
|
12
|
+
constructor() {
|
|
13
|
+
super(...arguments);
|
|
14
|
+
this.text = '';
|
|
15
|
+
this.buttons = [];
|
|
16
|
+
this.buttonStyle = hubtype_fields_1.HtButtonStyle.BUTTON;
|
|
17
|
+
}
|
|
18
|
+
static fromHubtypeCMS(cmsText, locale, cmsApi, botContext) {
|
|
19
|
+
const newText = new FlowText(cmsText.id);
|
|
20
|
+
newText.code = cmsText.code;
|
|
21
|
+
newText.buttonStyle = cmsText.content.buttons_style || hubtype_fields_1.HtButtonStyle.BUTTON;
|
|
22
|
+
newText.text = FlowText.getTextByLocale(locale, cmsText.content.text);
|
|
23
|
+
newText.buttons = cmsText.content.buttons.map(button => flow_button_1.FlowButton.fromHubtypeCMS(button, locale, cmsApi, botContext));
|
|
24
|
+
newText.followUp = cmsText.follow_up;
|
|
25
|
+
return newText;
|
|
26
|
+
}
|
|
27
|
+
async trackFlow(botContext) {
|
|
28
|
+
await (0, tracking_1.trackOneContent)(botContext, this);
|
|
29
|
+
for (const button of this.buttons) {
|
|
30
|
+
await button.trackFlow(botContext);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
static fromAIAgent(id, textMessage) {
|
|
34
|
+
if (textMessage.type === 'text') {
|
|
35
|
+
return (0, jsx_runtime_1.jsx)(react_1.Text, { children: textMessage.content.text }, id);
|
|
36
|
+
}
|
|
37
|
+
return ((0, jsx_runtime_1.jsxs)(react_1.Text, { children: [textMessage.content.text, textMessage.content.buttons.map((button, buttonIndex) => {
|
|
38
|
+
const buttonData = {
|
|
39
|
+
id: `${id}-button-${buttonIndex}`,
|
|
40
|
+
text: button.text,
|
|
41
|
+
url: button.url,
|
|
42
|
+
target: button.target,
|
|
43
|
+
payload: button.payload ||
|
|
44
|
+
`${constants_1.EMPTY_PAYLOAD}${constants_1.SOURCE_INFO_SEPARATOR}${buttonIndex}`,
|
|
45
|
+
};
|
|
46
|
+
return flow_button_1.FlowButton.fromAIAgent(buttonData).renderButton(buttonIndex);
|
|
47
|
+
})] }, id));
|
|
48
|
+
}
|
|
49
|
+
async processContent(botContext) {
|
|
50
|
+
await this.filterContent(botContext, this);
|
|
51
|
+
await this.trackFlow(botContext);
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
toBotonic(botContext) {
|
|
55
|
+
const replacedText = this.replaceVariables(this.text, botContext);
|
|
56
|
+
return ((0, jsx_runtime_1.jsxs)(react_1.Text, { children: [replacedText, this.buttons.map((button, buttonIndex) => button.renderButton(buttonIndex, this.buttonStyle))] }, this.id));
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
exports.FlowText = FlowText;
|
|
60
|
+
//# sourceMappingURL=flow-text.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flow-text.js","sourceRoot":"","sources":["../../../src/content-fields/flow-text.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { type BotContext } from '@botonic/core';
|
|
2
|
+
import { ContentFieldsBase } from './content-fields-base';
|
|
3
|
+
import type { HtUpdateVariablesNode } from './hubtype-fields/update-variables';
|
|
4
|
+
export declare class FlowUpdateVariables extends ContentFieldsBase {
|
|
5
|
+
setVariables: Record<string, string | number | boolean>;
|
|
6
|
+
unsetVariables: string[];
|
|
7
|
+
static fromHubtypeCMS(cmsUpdateVariables: HtUpdateVariablesNode, botContext: BotContext): Promise<FlowUpdateVariables>;
|
|
8
|
+
private applyVariablesAndSyncContactInfo;
|
|
9
|
+
private setSessionValueFromKeyPath;
|
|
10
|
+
private getContactInfoFieldName;
|
|
11
|
+
private updateSessionContactInfoField;
|
|
12
|
+
trackFlow(botContext: BotContext): Promise<void>;
|
|
13
|
+
processContent(botContext: BotContext): Promise<void>;
|
|
14
|
+
toBotonic(): import("react/jsx-runtime").JSX.Element;
|
|
15
|
+
}
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FlowUpdateVariables = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const core_1 = require("@botonic/core");
|
|
6
|
+
const constants_1 = require("../constants");
|
|
7
|
+
const contact_info_fields_api_1 = require("../services/contact-info-fields-api");
|
|
8
|
+
const tracking_1 = require("../tracking");
|
|
9
|
+
const get_flow_builder_plugin_1 = require("../utils/get-flow-builder-plugin");
|
|
10
|
+
const content_fields_base_1 = require("./content-fields-base");
|
|
11
|
+
const SESSION_CONTACT_INFO_PREFIX = 'session.user.contact_info.';
|
|
12
|
+
class FlowUpdateVariables extends content_fields_base_1.ContentFieldsBase {
|
|
13
|
+
constructor() {
|
|
14
|
+
super(...arguments);
|
|
15
|
+
this.setVariables = {};
|
|
16
|
+
this.unsetVariables = [];
|
|
17
|
+
}
|
|
18
|
+
static async fromHubtypeCMS(cmsUpdateVariables, botContext) {
|
|
19
|
+
const newUpdateVariables = new FlowUpdateVariables(cmsUpdateVariables.id);
|
|
20
|
+
newUpdateVariables.setVariables = cmsUpdateVariables.content.set_variables;
|
|
21
|
+
newUpdateVariables.unsetVariables =
|
|
22
|
+
cmsUpdateVariables.content.unset_variables;
|
|
23
|
+
await newUpdateVariables.applyVariablesAndSyncContactInfo(botContext);
|
|
24
|
+
return newUpdateVariables;
|
|
25
|
+
}
|
|
26
|
+
async applyVariablesAndSyncContactInfo(botContext) {
|
|
27
|
+
const contactInfoUpdates = [];
|
|
28
|
+
for (const [keyPath, value] of Object.entries(this.setVariables)) {
|
|
29
|
+
const fieldName = this.getContactInfoFieldName(keyPath);
|
|
30
|
+
if (fieldName) {
|
|
31
|
+
this.updateSessionContactInfoField(botContext, fieldName, value);
|
|
32
|
+
contactInfoUpdates.push({ fieldName, value });
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
this.setSessionValueFromKeyPath(botContext, keyPath, value);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
for (const keyPath of this.unsetVariables) {
|
|
39
|
+
const fieldName = this.getContactInfoFieldName(keyPath);
|
|
40
|
+
if (fieldName) {
|
|
41
|
+
this.updateSessionContactInfoField(botContext, fieldName, undefined);
|
|
42
|
+
contactInfoUpdates.push({ fieldName, value: undefined });
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
this.setSessionValueFromKeyPath(botContext, keyPath, undefined);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
if (contactInfoUpdates.length === 0) {
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
const hubtypeApiUrl = botContext.session._hubtype_api || constants_1.FLOW_BUILDER_API_URL_PROD;
|
|
52
|
+
const flowBuilderPlugin = (0, get_flow_builder_plugin_1.getFlowBuilderPlugin)(botContext.plugins);
|
|
53
|
+
const accessToken = flowBuilderPlugin.getAccessToken(botContext.session);
|
|
54
|
+
const chatId = botContext.session.user.id;
|
|
55
|
+
const contactInfoFieldsClient = new contact_info_fields_api_1.ContactInfoFieldsClient(hubtypeApiUrl, accessToken);
|
|
56
|
+
await Promise.all(contactInfoUpdates.map(({ fieldName, value }) => {
|
|
57
|
+
if (value === undefined) {
|
|
58
|
+
return contactInfoFieldsClient.delete(chatId, fieldName);
|
|
59
|
+
}
|
|
60
|
+
return contactInfoFieldsClient.update(chatId, fieldName, value);
|
|
61
|
+
}));
|
|
62
|
+
}
|
|
63
|
+
setSessionValueFromKeyPath(botContext, keyPath, value) {
|
|
64
|
+
const keys = keyPath.split('.');
|
|
65
|
+
if (keys.shift() !== 'session') {
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
const lastKey = keys.pop();
|
|
69
|
+
if (!lastKey) {
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
let current = botContext.session;
|
|
73
|
+
for (const key of keys) {
|
|
74
|
+
if (current[key] === undefined || current[key] === null) {
|
|
75
|
+
current[key] = {};
|
|
76
|
+
}
|
|
77
|
+
current = current[key];
|
|
78
|
+
}
|
|
79
|
+
current[lastKey] = value;
|
|
80
|
+
}
|
|
81
|
+
getContactInfoFieldName(keyPath) {
|
|
82
|
+
if (!keyPath.startsWith(SESSION_CONTACT_INFO_PREFIX)) {
|
|
83
|
+
return undefined;
|
|
84
|
+
}
|
|
85
|
+
const fieldName = keyPath.slice(SESSION_CONTACT_INFO_PREFIX.length);
|
|
86
|
+
return fieldName || undefined;
|
|
87
|
+
}
|
|
88
|
+
updateSessionContactInfoField(botContext, fieldName, value) {
|
|
89
|
+
if (!botContext.session.user.contact_info) {
|
|
90
|
+
botContext.session.user.contact_info = [];
|
|
91
|
+
}
|
|
92
|
+
const contactInfo = botContext.session.user.contact_info;
|
|
93
|
+
const index = contactInfo.findIndex(field => field.name === fieldName);
|
|
94
|
+
if (value === undefined) {
|
|
95
|
+
if (index >= 0) {
|
|
96
|
+
contactInfo.splice(index, 1);
|
|
97
|
+
}
|
|
98
|
+
return;
|
|
99
|
+
}
|
|
100
|
+
const stringValue = String(value);
|
|
101
|
+
const valueType = typeof value;
|
|
102
|
+
if (index >= 0) {
|
|
103
|
+
contactInfo[index].value = stringValue;
|
|
104
|
+
contactInfo[index].type = valueType;
|
|
105
|
+
return;
|
|
106
|
+
}
|
|
107
|
+
contactInfo.push({
|
|
108
|
+
name: fieldName,
|
|
109
|
+
type: valueType,
|
|
110
|
+
value: stringValue,
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
async trackFlow(botContext) {
|
|
114
|
+
const { flowThreadId, flowId, flowName, flowNodeId, flowNodeContentId } = (0, tracking_1.getCommonFlowContentEventArgsForContentId)(botContext, this.id);
|
|
115
|
+
const eventUpdateVariables = {
|
|
116
|
+
action: core_1.EventAction.UpdateVariables,
|
|
117
|
+
flowThreadId,
|
|
118
|
+
flowId,
|
|
119
|
+
flowName,
|
|
120
|
+
flowNodeId,
|
|
121
|
+
flowNodeContentId,
|
|
122
|
+
flowNodeIsMeaningful: false,
|
|
123
|
+
setVariables: this.setVariables,
|
|
124
|
+
unsetVariables: this.unsetVariables,
|
|
125
|
+
};
|
|
126
|
+
const { action, ...eventArgs } = eventUpdateVariables;
|
|
127
|
+
await (0, tracking_1.trackEvent)(botContext, action, eventArgs);
|
|
128
|
+
}
|
|
129
|
+
async processContent(botContext) {
|
|
130
|
+
await this.trackFlow(botContext);
|
|
131
|
+
}
|
|
132
|
+
toBotonic() {
|
|
133
|
+
return (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, {});
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
exports.FlowUpdateVariables = FlowUpdateVariables;
|
|
137
|
+
//# sourceMappingURL=flow-update-variables.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flow-update-variables.js","sourceRoot":"","sources":["../../../src/content-fields/flow-update-variables.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { BotContext } from '@botonic/core';
|
|
2
|
+
import { ContentFieldsBase } from './content-fields-base';
|
|
3
|
+
import type { HtVideoNode } from './hubtype-fields';
|
|
4
|
+
export declare class FlowVideo extends ContentFieldsBase {
|
|
5
|
+
src: string;
|
|
6
|
+
static fromHubtypeCMS(component: HtVideoNode, locale: string): FlowVideo;
|
|
7
|
+
trackFlow(botContext: BotContext): Promise<void>;
|
|
8
|
+
processContent(botContext: BotContext): Promise<void>;
|
|
9
|
+
toBotonic(): JSX.Element;
|
|
10
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FlowVideo = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const react_1 = require("@botonic/react");
|
|
6
|
+
const tracking_1 = require("../tracking");
|
|
7
|
+
const content_fields_base_1 = require("./content-fields-base");
|
|
8
|
+
class FlowVideo extends content_fields_base_1.ContentFieldsBase {
|
|
9
|
+
constructor() {
|
|
10
|
+
super(...arguments);
|
|
11
|
+
this.src = '';
|
|
12
|
+
}
|
|
13
|
+
static fromHubtypeCMS(component, locale) {
|
|
14
|
+
const newVideo = new FlowVideo(component.id);
|
|
15
|
+
newVideo.code = component.code;
|
|
16
|
+
newVideo.src = FlowVideo.getVideoByLocale(locale, component.content.video);
|
|
17
|
+
newVideo.followUp = component.follow_up;
|
|
18
|
+
return newVideo;
|
|
19
|
+
}
|
|
20
|
+
async trackFlow(botContext) {
|
|
21
|
+
await (0, tracking_1.trackOneContent)(botContext, this);
|
|
22
|
+
}
|
|
23
|
+
async processContent(botContext) {
|
|
24
|
+
await this.filterContent(botContext, this);
|
|
25
|
+
await this.trackFlow(botContext);
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
toBotonic() {
|
|
29
|
+
return (0, jsx_runtime_1.jsx)(react_1.Video, { src: this.src }, this.id);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
exports.FlowVideo = FlowVideo;
|
|
33
|
+
//# sourceMappingURL=flow-video.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flow-video.js","sourceRoot":"","sources":["../../../src/content-fields/flow-video.tsx"],"names":[],"mappings":";;;;AACA,0CAAsC;AAEtC,0CAA6C;AAC7C,+DAAyD;AAGzD,MAAa,SAAU,SAAQ,uCAAiB;IAAhD;;QACS,QAAG,GAAG,EAAE,CAAA;IAwBjB,CAAC;IAtBC,MAAM,CAAC,cAAc,CAAC,SAAsB,EAAE,MAAc;QAC1D,MAAM,QAAQ,GAAG,IAAI,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QAC5C,QAAQ,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAA;QAC9B,QAAQ,CAAC,GAAG,GAAG,SAAS,CAAC,gBAAgB,CAAC,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QAC1E,QAAQ,CAAC,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAA;QAEvC,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,UAAsB;QACpC,MAAM,IAAA,0BAAe,EAAC,UAAU,EAAE,IAAI,CAAC,CAAA;IACzC,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,UAAsB;QACzC,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;QAC1C,MAAM,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA;QAChC,OAAM;IACR,CAAC;IAED,SAAS;QACP,OAAO,uBAAC,aAAK,IAAe,GAAG,EAAE,IAAI,CAAC,GAAG,IAAtB,IAAI,CAAC,EAAE,CAAmB,CAAA;IAC/C,CAAC;CACF;AAzBD,8BAyBC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { type BotContext } from '@botonic/core';
|
|
2
|
+
import { ContentFieldsBase } from './content-fields-base';
|
|
3
|
+
import type { HtWebviewExits, HtWebviewNode } from './hubtype-fields';
|
|
4
|
+
export declare class FlowWebview extends ContentFieldsBase {
|
|
5
|
+
webviewTargetId: string;
|
|
6
|
+
webviewName: string;
|
|
7
|
+
webviewComponentName: string;
|
|
8
|
+
webviewParams: Record<string, string>;
|
|
9
|
+
exits: HtWebviewExits[];
|
|
10
|
+
static fromHubtypeCMS(component: HtWebviewNode): FlowWebview;
|
|
11
|
+
getParams(botContext: BotContext): Record<string, string>;
|
|
12
|
+
private getResolvedWebviewParams;
|
|
13
|
+
private getExitSuccessContentID;
|
|
14
|
+
trackFlow(botContext: BotContext): Promise<void>;
|
|
15
|
+
processContent(): Promise<void>;
|
|
16
|
+
}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FlowWebview = void 0;
|
|
4
|
+
const core_1 = require("@botonic/core");
|
|
5
|
+
const tracking_1 = require("../tracking");
|
|
6
|
+
const get_flow_builder_plugin_1 = require("../utils/get-flow-builder-plugin");
|
|
7
|
+
const content_fields_base_1 = require("./content-fields-base");
|
|
8
|
+
class FlowWebview extends content_fields_base_1.ContentFieldsBase {
|
|
9
|
+
constructor() {
|
|
10
|
+
super(...arguments);
|
|
11
|
+
this.webviewTargetId = '';
|
|
12
|
+
this.webviewName = '';
|
|
13
|
+
this.webviewComponentName = '';
|
|
14
|
+
this.webviewParams = {};
|
|
15
|
+
this.exits = [];
|
|
16
|
+
}
|
|
17
|
+
static fromHubtypeCMS(component) {
|
|
18
|
+
const newWebview = new FlowWebview(component.id);
|
|
19
|
+
newWebview.webviewTargetId = component.content.webview_target_id;
|
|
20
|
+
newWebview.webviewName = component.content.webview_name;
|
|
21
|
+
newWebview.webviewComponentName = component.content.webview_component_name;
|
|
22
|
+
newWebview.webviewParams = component.content.webview_params ?? {};
|
|
23
|
+
newWebview.exits = component.content.exits;
|
|
24
|
+
newWebview.followUp = component.follow_up;
|
|
25
|
+
return newWebview;
|
|
26
|
+
}
|
|
27
|
+
getParams(botContext) {
|
|
28
|
+
const flowBuilderPlugin = (0, get_flow_builder_plugin_1.getFlowBuilderPlugin)(botContext.plugins);
|
|
29
|
+
const cmsApi = flowBuilderPlugin.cmsApi;
|
|
30
|
+
const params = {
|
|
31
|
+
webviewId: this.webviewTargetId,
|
|
32
|
+
t: Date.now().toString(),
|
|
33
|
+
...this.getResolvedWebviewParams(botContext),
|
|
34
|
+
};
|
|
35
|
+
const exitSuccessContentID = this.getExitSuccessContentID(cmsApi);
|
|
36
|
+
if (exitSuccessContentID) {
|
|
37
|
+
params.exitSuccessContentID = exitSuccessContentID;
|
|
38
|
+
}
|
|
39
|
+
return params;
|
|
40
|
+
}
|
|
41
|
+
getResolvedWebviewParams(botContext) {
|
|
42
|
+
return Object.fromEntries(Object.entries(this.webviewParams).map(([key, value]) => [
|
|
43
|
+
key,
|
|
44
|
+
this.replaceVariables(value, botContext),
|
|
45
|
+
]));
|
|
46
|
+
}
|
|
47
|
+
getExitSuccessContentID(cmsApi) {
|
|
48
|
+
const webviewSuccessExit = this.exits?.find(exit => exit.name === 'Success');
|
|
49
|
+
const exitSuccessId = webviewSuccessExit?.target?.id;
|
|
50
|
+
if (!exitSuccessId) {
|
|
51
|
+
return undefined;
|
|
52
|
+
}
|
|
53
|
+
const exitNode = cmsApi.getNodeById(exitSuccessId);
|
|
54
|
+
return exitNode.code;
|
|
55
|
+
}
|
|
56
|
+
async trackFlow(botContext) {
|
|
57
|
+
const { flowThreadId, flowId, flowName, flowNodeId, flowNodeContentId } = (0, tracking_1.getCommonFlowContentEventArgsForContentId)(botContext, this.id);
|
|
58
|
+
const eventWebviewActionTriggered = {
|
|
59
|
+
action: core_1.EventAction.WebviewActionTriggered,
|
|
60
|
+
flowThreadId,
|
|
61
|
+
flowId,
|
|
62
|
+
flowName,
|
|
63
|
+
flowNodeId,
|
|
64
|
+
flowNodeContentId,
|
|
65
|
+
flowNodeIsMeaningful: false,
|
|
66
|
+
webviewTargetId: this.webviewTargetId,
|
|
67
|
+
webviewName: this.webviewName,
|
|
68
|
+
webviewParams: this.getParams(botContext),
|
|
69
|
+
};
|
|
70
|
+
const { action, ...eventArgs } = eventWebviewActionTriggered;
|
|
71
|
+
await (0, tracking_1.trackEvent)(botContext, action, eventArgs);
|
|
72
|
+
}
|
|
73
|
+
async processContent() {
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
exports.FlowWebview = FlowWebview;
|
|
78
|
+
//# sourceMappingURL=flow-webview.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flow-webview.js","sourceRoot":"","sources":["../../../src/content-fields/flow-webview.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { type BotContext } from '@botonic/core';
|
|
2
|
+
import { WhatsappCTAUrlHeaderType } from '@botonic/react';
|
|
3
|
+
import type { FlowBuilderApi } from '../api';
|
|
4
|
+
import { ContentFieldsBase } from './content-fields-base';
|
|
5
|
+
import type { HtWhatsappCTAUrlButtonNode } from './hubtype-fields';
|
|
6
|
+
export declare class FlowWhatsappCtaUrlButtonNode extends ContentFieldsBase {
|
|
7
|
+
text: string;
|
|
8
|
+
header?: string;
|
|
9
|
+
headerType?: WhatsappCTAUrlHeaderType;
|
|
10
|
+
headerImage?: string;
|
|
11
|
+
headerVideo?: string;
|
|
12
|
+
headerDocument?: string;
|
|
13
|
+
footer?: string;
|
|
14
|
+
displayText: string;
|
|
15
|
+
url: string;
|
|
16
|
+
static fromHubtypeCMS(component: HtWhatsappCTAUrlButtonNode, locale: string, cmsApi: FlowBuilderApi, botContext: BotContext): FlowWhatsappCtaUrlButtonNode;
|
|
17
|
+
private static setHeader;
|
|
18
|
+
trackFlow(botContext: BotContext): Promise<void>;
|
|
19
|
+
processContent(botContext: BotContext): Promise<void>;
|
|
20
|
+
toBotonic(botContext: BotContext): JSX.Element;
|
|
21
|
+
}
|