@botonic/plugin-flow-builder 0.46.2 → 2.23.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/CHANGELOG.md +227 -0
- package/README.md +11 -270
- package/package.json +20 -44
- package/src/index.d.ts +2 -0
- package/src/index.js +3 -0
- package/src/index.js.map +1 -0
- package/src/lib/action/ai-agent.d.ts +3 -0
- package/src/lib/action/ai-agent.js +67 -0
- package/src/lib/action/ai-agent.js.map +1 -0
- package/src/lib/action/fallback.d.ts +3 -0
- package/src/lib/action/fallback.js +40 -0
- package/src/lib/action/fallback.js.map +1 -0
- package/src/lib/action/first-interaction.d.ts +3 -0
- package/src/lib/action/first-interaction.js +83 -0
- package/src/lib/action/first-interaction.js.map +1 -0
- package/src/lib/action/index.d.ts +20 -0
- package/src/lib/action/index.js +148 -0
- package/src/lib/action/index.js.map +1 -0
- package/src/lib/action/knowledge-bases.d.ts +3 -0
- package/src/lib/action/knowledge-bases.js +90 -0
- package/src/lib/action/knowledge-bases.js.map +1 -0
- package/src/lib/action/payload.d.ts +3 -0
- package/src/lib/action/payload.js +80 -0
- package/src/lib/action/payload.js.map +1 -0
- package/{lib/esm → src/lib}/api.d.ts +8 -19
- package/{lib/cjs → src/lib}/api.js +60 -101
- package/src/lib/api.js.map +1 -0
- package/{lib/cjs → src/lib}/constants.d.ts +3 -2
- package/src/lib/constants.js +19 -0
- package/src/lib/constants.js.map +1 -0
- package/{lib/esm → src/lib}/content-fields/content-fields-base.d.ts +9 -5
- package/src/lib/content-fields/content-fields-base.js +94 -0
- package/src/lib/content-fields/content-fields-base.js.map +1 -0
- package/src/lib/content-fields/flow-ai-agent.d.ts +20 -0
- package/src/lib/content-fields/flow-ai-agent.js +50 -0
- package/src/lib/content-fields/flow-ai-agent.js.map +1 -0
- package/src/lib/content-fields/flow-bot-action.d.ts +11 -0
- package/src/lib/content-fields/flow-bot-action.js +43 -0
- package/src/lib/content-fields/flow-bot-action.js.map +1 -0
- package/{lib/cjs → src/lib}/content-fields/flow-button.d.ts +13 -7
- package/src/lib/content-fields/flow-button.js +123 -0
- package/src/lib/content-fields/flow-button.js.map +1 -0
- package/{lib/cjs → src/lib}/content-fields/flow-capture-user-input.d.ts +4 -4
- package/src/lib/content-fields/flow-capture-user-input.js +42 -0
- package/src/lib/content-fields/flow-capture-user-input.js.map +1 -0
- package/src/lib/content-fields/flow-carousel.d.ts +49 -0
- package/src/lib/content-fields/flow-carousel.js +181 -0
- package/src/lib/content-fields/flow-carousel.js.map +1 -0
- package/src/lib/content-fields/flow-channel-conditional.d.ts +13 -0
- package/src/lib/content-fields/flow-channel-conditional.js +53 -0
- package/src/lib/content-fields/flow-channel-conditional.js.map +1 -0
- package/src/lib/content-fields/flow-country-conditional.d.ts +12 -0
- package/src/lib/content-fields/flow-country-conditional.js +55 -0
- package/src/lib/content-fields/flow-country-conditional.js.map +1 -0
- package/src/lib/content-fields/flow-custom-conditional.d.ts +16 -0
- package/{lib/cjs → src/lib}/content-fields/flow-custom-conditional.js +36 -34
- package/src/lib/content-fields/flow-custom-conditional.js.map +1 -0
- package/{lib/cjs → src/lib}/content-fields/flow-element.d.ts +3 -10
- package/src/lib/content-fields/flow-element.js +38 -0
- package/src/lib/content-fields/flow-element.js.map +1 -0
- package/src/lib/content-fields/flow-go-to-flow.d.ts +12 -0
- package/src/lib/content-fields/flow-go-to-flow.js +46 -0
- package/src/lib/content-fields/flow-go-to-flow.js.map +1 -0
- package/{lib/cjs → src/lib}/content-fields/flow-handoff.d.ts +6 -6
- package/src/lib/content-fields/flow-handoff.js +77 -0
- package/src/lib/content-fields/flow-handoff.js.map +1 -0
- package/src/lib/content-fields/flow-image.d.ts +10 -0
- package/src/lib/content-fields/flow-image.js +28 -0
- package/src/lib/content-fields/flow-image.js.map +1 -0
- package/{lib/cjs → src/lib}/content-fields/flow-knowledge-base.d.ts +5 -4
- package/src/lib/content-fields/flow-knowledge-base.js +52 -0
- package/src/lib/content-fields/flow-knowledge-base.js.map +1 -0
- package/{lib/esm → src/lib}/content-fields/flow-queue-status-conditional.d.ts +6 -6
- package/src/lib/content-fields/flow-queue-status-conditional.js +97 -0
- package/src/lib/content-fields/flow-queue-status-conditional.js.map +1 -0
- package/{lib/esm → src/lib}/content-fields/flow-rating.d.ts +5 -4
- package/src/lib/content-fields/flow-rating.js +80 -0
- package/src/lib/content-fields/flow-rating.js.map +1 -0
- package/src/lib/content-fields/flow-text.d.ts +15 -0
- package/src/lib/content-fields/flow-text.js +76 -0
- package/src/lib/content-fields/flow-text.js.map +1 -0
- package/src/lib/content-fields/flow-video.d.ts +10 -0
- package/src/lib/content-fields/flow-video.js +28 -0
- package/src/lib/content-fields/flow-video.js.map +1 -0
- package/{lib/esm → src/lib}/content-fields/flow-webview.d.ts +3 -3
- package/src/lib/content-fields/flow-webview.js +41 -0
- package/src/lib/content-fields/flow-webview.js.map +1 -0
- package/{lib/esm → src/lib}/content-fields/flow-whatsapp-cta-url-button.d.ts +8 -7
- package/src/lib/content-fields/flow-whatsapp-cta-url-button.js +76 -0
- package/src/lib/content-fields/flow-whatsapp-cta-url-button.js.map +1 -0
- package/{lib/esm → src/lib}/content-fields/flow-whatsapp-template.d.ts +7 -7
- package/src/lib/content-fields/flow-whatsapp-template.js +159 -0
- package/src/lib/content-fields/flow-whatsapp-template.js.map +1 -0
- package/{lib/esm → src/lib}/content-fields/hubtype-fields/ai-agent.d.ts +2 -5
- package/src/lib/content-fields/hubtype-fields/ai-agent.js +2 -0
- package/src/lib/content-fields/hubtype-fields/ai-agent.js.map +1 -0
- package/{lib/esm → src/lib}/content-fields/hubtype-fields/bot-action.d.ts +2 -2
- package/src/lib/content-fields/hubtype-fields/bot-action.js +2 -0
- package/src/lib/content-fields/hubtype-fields/bot-action.js.map +1 -0
- package/{lib/esm → src/lib}/content-fields/hubtype-fields/button.d.ts +1 -1
- package/src/lib/content-fields/hubtype-fields/button.js +2 -0
- package/src/lib/content-fields/hubtype-fields/button.js.map +1 -0
- package/{lib/esm → src/lib}/content-fields/hubtype-fields/capture-user-input.d.ts +2 -2
- package/src/lib/content-fields/hubtype-fields/capture-user-input.js +9 -0
- package/src/lib/content-fields/hubtype-fields/capture-user-input.js.map +1 -0
- package/{lib/esm → src/lib}/content-fields/hubtype-fields/carousel.d.ts +3 -3
- package/src/lib/content-fields/hubtype-fields/carousel.js +2 -0
- package/src/lib/content-fields/hubtype-fields/carousel.js.map +1 -0
- package/{lib/cjs → src/lib}/content-fields/hubtype-fields/channel-conditional.d.ts +3 -3
- package/src/lib/content-fields/hubtype-fields/channel-conditional.js +2 -0
- package/src/lib/content-fields/hubtype-fields/channel-conditional.js.map +1 -0
- package/{lib/cjs → src/lib}/content-fields/hubtype-fields/common.d.ts +2 -2
- package/src/lib/content-fields/hubtype-fields/common.js +2 -0
- package/src/lib/content-fields/hubtype-fields/common.js.map +1 -0
- package/{lib/cjs → src/lib}/content-fields/hubtype-fields/country-conditional.d.ts +3 -3
- package/src/lib/content-fields/hubtype-fields/country-conditional.js +2 -0
- package/src/lib/content-fields/hubtype-fields/country-conditional.js.map +1 -0
- package/{lib/esm → src/lib}/content-fields/hubtype-fields/custom-conditional.d.ts +3 -3
- package/src/lib/content-fields/hubtype-fields/custom-conditional.js +2 -0
- package/src/lib/content-fields/hubtype-fields/custom-conditional.js.map +1 -0
- package/{lib/cjs → src/lib}/content-fields/hubtype-fields/fallback.d.ts +2 -2
- package/src/lib/content-fields/hubtype-fields/fallback.js +2 -0
- package/src/lib/content-fields/hubtype-fields/fallback.js.map +1 -0
- package/{lib/cjs → src/lib}/content-fields/hubtype-fields/function.d.ts +3 -3
- package/src/lib/content-fields/hubtype-fields/function.js +8 -0
- package/src/lib/content-fields/hubtype-fields/function.js.map +1 -0
- package/{lib/cjs → src/lib}/content-fields/hubtype-fields/go-to-flow.d.ts +2 -2
- package/src/lib/content-fields/hubtype-fields/go-to-flow.js +2 -0
- package/src/lib/content-fields/hubtype-fields/go-to-flow.js.map +1 -0
- package/{lib/cjs → src/lib}/content-fields/hubtype-fields/handoff.d.ts +2 -2
- package/src/lib/content-fields/hubtype-fields/handoff.js +2 -0
- package/src/lib/content-fields/hubtype-fields/handoff.js.map +1 -0
- package/{lib/cjs → src/lib}/content-fields/hubtype-fields/image.d.ts +2 -2
- package/src/lib/content-fields/hubtype-fields/image.js +2 -0
- package/src/lib/content-fields/hubtype-fields/image.js.map +1 -0
- package/{lib/esm → src/lib}/content-fields/hubtype-fields/index.d.ts +1 -0
- package/{lib/cjs/content-fields/hubtype-fields/index.d.ts → src/lib/content-fields/hubtype-fields/index.js} +2 -0
- package/src/lib/content-fields/hubtype-fields/index.js.map +1 -0
- package/{lib/esm → src/lib}/content-fields/hubtype-fields/keyword.d.ts +2 -2
- package/src/lib/content-fields/hubtype-fields/keyword.js +2 -0
- package/src/lib/content-fields/hubtype-fields/keyword.js.map +1 -0
- package/{lib/esm → src/lib}/content-fields/hubtype-fields/knowledge-base.d.ts +2 -2
- package/src/lib/content-fields/hubtype-fields/knowledge-base.js +2 -0
- package/src/lib/content-fields/hubtype-fields/knowledge-base.js.map +1 -0
- package/{lib/cjs → src/lib}/content-fields/hubtype-fields/node-types.d.ts +4 -4
- package/{lib/esm → src/lib}/content-fields/hubtype-fields/node-types.js +10 -13
- package/src/lib/content-fields/hubtype-fields/node-types.js.map +1 -0
- package/src/lib/content-fields/hubtype-fields/nodes.d.ts +24 -0
- package/src/lib/content-fields/hubtype-fields/nodes.js +2 -0
- package/src/lib/content-fields/hubtype-fields/nodes.js.map +1 -0
- package/{lib/esm → src/lib}/content-fields/hubtype-fields/payload.d.ts +1 -1
- package/src/lib/content-fields/hubtype-fields/payload.js +2 -0
- package/src/lib/content-fields/hubtype-fields/payload.js.map +1 -0
- package/{lib/esm → src/lib}/content-fields/hubtype-fields/queue-status-conditional.d.ts +3 -3
- package/src/lib/content-fields/hubtype-fields/queue-status-conditional.js +2 -0
- package/src/lib/content-fields/hubtype-fields/queue-status-conditional.js.map +1 -0
- package/{lib/cjs → src/lib}/content-fields/hubtype-fields/rating.d.ts +2 -2
- package/src/lib/content-fields/hubtype-fields/rating.js +6 -0
- package/src/lib/content-fields/hubtype-fields/rating.js.map +1 -0
- package/{lib/esm → src/lib}/content-fields/hubtype-fields/smart-intent.d.ts +2 -2
- package/src/lib/content-fields/hubtype-fields/smart-intent.js +2 -0
- package/src/lib/content-fields/hubtype-fields/smart-intent.js.map +1 -0
- package/{lib/esm → src/lib}/content-fields/hubtype-fields/text.d.ts +3 -3
- package/src/lib/content-fields/hubtype-fields/text.js +2 -0
- package/src/lib/content-fields/hubtype-fields/text.js.map +1 -0
- package/{lib/esm → src/lib}/content-fields/hubtype-fields/url.d.ts +1 -1
- package/src/lib/content-fields/hubtype-fields/url.js +2 -0
- package/src/lib/content-fields/hubtype-fields/url.js.map +1 -0
- package/{lib/cjs → src/lib}/content-fields/hubtype-fields/video.d.ts +2 -2
- package/src/lib/content-fields/hubtype-fields/video.js +2 -0
- package/src/lib/content-fields/hubtype-fields/video.js.map +1 -0
- package/{lib/esm → src/lib}/content-fields/hubtype-fields/webview.d.ts +2 -2
- package/src/lib/content-fields/hubtype-fields/webview.js +2 -0
- package/src/lib/content-fields/hubtype-fields/webview.js.map +1 -0
- package/{lib/cjs → src/lib}/content-fields/hubtype-fields/whatsapp-button-list.d.ts +2 -2
- package/src/lib/content-fields/hubtype-fields/whatsapp-button-list.js +2 -0
- package/src/lib/content-fields/hubtype-fields/whatsapp-button-list.js.map +1 -0
- package/{lib/esm → src/lib}/content-fields/hubtype-fields/whatsapp-cta-url-button.d.ts +5 -5
- package/src/lib/content-fields/hubtype-fields/whatsapp-cta-url-button.js +2 -0
- package/src/lib/content-fields/hubtype-fields/whatsapp-cta-url-button.js.map +1 -0
- package/src/lib/content-fields/hubtype-fields/whatsapp-template.d.ts +72 -0
- package/src/lib/content-fields/hubtype-fields/whatsapp-template.js +2 -0
- package/src/lib/content-fields/hubtype-fields/whatsapp-template.js.map +1 -0
- package/{lib/cjs → src/lib}/content-fields/index.d.ts +1 -5
- package/{lib/esm/content-fields/index.d.ts → src/lib/content-fields/index.js} +3 -7
- package/src/lib/content-fields/index.js.map +1 -0
- package/src/lib/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.d.ts +14 -0
- package/src/lib/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.js +38 -0
- package/src/lib/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.js.map +1 -0
- package/{lib/cjs → src/lib}/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.d.ts +6 -5
- package/src/lib/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.js +33 -0
- package/src/lib/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.js.map +1 -0
- package/{lib/cjs → src/lib}/content-fields/whatsapp-button-list/flow-whatsapp-button-list.d.ts +5 -5
- package/src/lib/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js +48 -0
- package/src/lib/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js.map +1 -0
- package/src/lib/filters/index.d.ts +12 -0
- package/src/lib/filters/index.js +16 -0
- package/src/lib/filters/index.js.map +1 -0
- package/{lib/cjs → src/lib}/flow-factory.d.ts +3 -3
- package/src/lib/flow-factory.js +65 -0
- package/src/lib/flow-factory.js.map +1 -0
- package/{lib/esm → src/lib}/functions/index.d.ts +4 -4
- package/src/lib/functions/index.js +47 -0
- package/src/lib/functions/index.js.map +1 -0
- package/src/lib/helpers.d.ts +3 -0
- package/{lib/esm → src/lib}/helpers.js +1 -4
- package/src/lib/helpers.js.map +1 -0
- package/src/lib/index.d.ts +39 -0
- package/src/lib/index.js +158 -0
- package/src/lib/index.js.map +1 -0
- package/src/lib/services/capture-user-input-client.d.ts +16 -0
- package/src/lib/services/capture-user-input-client.js +38 -0
- package/src/lib/services/capture-user-input-client.js.map +1 -0
- package/src/lib/services/flow-client.d.ts +9 -0
- package/src/lib/services/flow-client.js +33 -0
- package/src/lib/services/flow-client.js.map +1 -0
- package/{lib/cjs/services/hubtype-queues-api.d.ts → src/lib/services/hubtype-queues-client.d.ts} +1 -1
- package/src/lib/services/hubtype-queues-client.js +28 -0
- package/src/lib/services/hubtype-queues-client.js.map +1 -0
- package/src/lib/services/smart-intent-client.d.ts +7 -0
- package/src/lib/services/smart-intent-client.js +22 -0
- package/src/lib/services/smart-intent-client.js.map +1 -0
- package/src/lib/tests/helpers/flows/basic.d.ts +2 -0
- package/src/lib/tests/helpers/flows/basic.js +2437 -0
- package/src/lib/tests/helpers/flows/basic.js.map +1 -0
- package/src/lib/tests/helpers/flows/capture-user-input.d.ts +2 -0
- package/src/lib/tests/helpers/flows/capture-user-input.js +354 -0
- package/src/lib/tests/helpers/flows/capture-user-input.js.map +1 -0
- package/src/lib/tests/helpers/flows/whatsapp-template.d.ts +2 -0
- package/src/lib/tests/helpers/flows/whatsapp-template.js +513 -0
- package/src/lib/tests/helpers/flows/whatsapp-template.js.map +1 -0
- package/src/lib/tests/helpers/utils.d.ts +32 -0
- package/src/lib/tests/helpers/utils.js +71 -0
- package/src/lib/tests/helpers/utils.js.map +1 -0
- package/src/lib/tests/mocks/ai-agent-response.d.ts +3 -0
- package/src/lib/tests/mocks/ai-agent-response.js +18 -0
- package/src/lib/tests/mocks/ai-agent-response.js.map +1 -0
- package/src/lib/tests/mocks/capture-user-input-client.d.ts +1 -0
- package/src/lib/tests/mocks/capture-user-input-client.js +12 -0
- package/src/lib/tests/mocks/capture-user-input-client.js.map +1 -0
- package/src/lib/tests/mocks/hubtype-queue-client.d.ts +3 -0
- package/src/lib/tests/mocks/hubtype-queue-client.js +22 -0
- package/src/lib/tests/mocks/hubtype-queue-client.js.map +1 -0
- package/src/lib/tests/mocks/index.d.ts +1 -0
- package/src/lib/tests/mocks/index.js +2 -0
- package/src/lib/tests/mocks/index.js.map +1 -0
- package/src/lib/tests/mocks/smart-intent-client.d.ts +3 -0
- package/src/lib/tests/mocks/smart-intent-client.js +31 -0
- package/src/lib/tests/mocks/smart-intent-client.js.map +1 -0
- package/src/lib/tracking.d.ts +15 -0
- package/src/lib/tracking.js +85 -0
- package/src/lib/tracking.js.map +1 -0
- package/src/lib/types.d.ts +69 -0
- package/src/lib/types.js +11 -0
- package/src/lib/types.js.map +1 -0
- package/src/lib/user-input/capture-user-input.d.ts +10 -0
- package/src/lib/user-input/capture-user-input.js +62 -0
- package/src/lib/user-input/capture-user-input.js.map +1 -0
- package/src/lib/user-input/index.d.ts +4 -0
- package/src/lib/user-input/index.js +38 -0
- package/src/lib/user-input/index.js.map +1 -0
- package/{lib/cjs → src/lib}/user-input/keyword.d.ts +7 -9
- package/src/lib/user-input/keyword.js +86 -0
- package/src/lib/user-input/keyword.js.map +1 -0
- package/{lib/cjs → src/lib}/user-input/smart-intent.d.ts +6 -7
- package/src/lib/user-input/smart-intent.js +69 -0
- package/src/lib/user-input/smart-intent.js.map +1 -0
- package/src/lib/utils.d.ts +4 -0
- package/src/lib/utils.js +16 -0
- package/src/lib/utils.js.map +1 -0
- package/lib/cjs/action/ai-agent/index.d.ts +0 -3
- package/lib/cjs/action/ai-agent/index.js +0 -94
- package/lib/cjs/action/ai-agent/index.js.map +0 -1
- package/lib/cjs/action/ai-agent/structured-output/flow-builder-content.d.ts +0 -16
- package/lib/cjs/action/ai-agent/structured-output/flow-builder-content.js +0 -12
- package/lib/cjs/action/ai-agent/structured-output/flow-builder-content.js.map +0 -1
- package/lib/cjs/action/fallback.d.ts +0 -3
- package/lib/cjs/action/fallback.js +0 -36
- 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 +0 -91
- package/lib/cjs/action/first-interaction.js.map +0 -1
- package/lib/cjs/action/index.d.ts +0 -28
- package/lib/cjs/action/index.js +0 -127
- package/lib/cjs/action/index.js.map +0 -1
- package/lib/cjs/action/knowledge-bases.d.ts +0 -3
- package/lib/cjs/action/knowledge-bases.js +0 -85
- package/lib/cjs/action/knowledge-bases.js.map +0 -1
- package/lib/cjs/action/payload.d.ts +0 -3
- package/lib/cjs/action/payload.js +0 -74
- package/lib/cjs/action/payload.js.map +0 -1
- package/lib/cjs/api.d.ts +0 -50
- package/lib/cjs/api.js.map +0 -1
- package/lib/cjs/constants.js +0 -20
- package/lib/cjs/constants.js.map +0 -1
- package/lib/cjs/content-fields/content-fields-base.d.ts +0 -17
- package/lib/cjs/content-fields/content-fields-base.js +0 -66
- package/lib/cjs/content-fields/content-fields-base.js.map +0 -1
- package/lib/cjs/content-fields/flow-ai-agent.d.ts +0 -23
- package/lib/cjs/content-fields/flow-ai-agent.js +0 -53
- package/lib/cjs/content-fields/flow-ai-agent.js.map +0 -1
- package/lib/cjs/content-fields/flow-bot-action.d.ts +0 -12
- package/lib/cjs/content-fields/flow-bot-action.js +0 -39
- package/lib/cjs/content-fields/flow-bot-action.js.map +0 -1
- package/lib/cjs/content-fields/flow-button.js +0 -104
- package/lib/cjs/content-fields/flow-button.js.map +0 -1
- package/lib/cjs/content-fields/flow-capture-user-input.js +0 -43
- package/lib/cjs/content-fields/flow-capture-user-input.js.map +0 -1
- package/lib/cjs/content-fields/flow-carousel.d.ts +0 -21
- package/lib/cjs/content-fields/flow-carousel.js +0 -147
- package/lib/cjs/content-fields/flow-carousel.js.map +0 -1
- package/lib/cjs/content-fields/flow-channel-conditional.d.ts +0 -13
- package/lib/cjs/content-fields/flow-channel-conditional.js +0 -53
- package/lib/cjs/content-fields/flow-channel-conditional.js.map +0 -1
- package/lib/cjs/content-fields/flow-country-conditional.d.ts +0 -12
- package/lib/cjs/content-fields/flow-country-conditional.js +0 -54
- package/lib/cjs/content-fields/flow-country-conditional.js.map +0 -1
- package/lib/cjs/content-fields/flow-custom-conditional.d.ts +0 -16
- package/lib/cjs/content-fields/flow-custom-conditional.js.map +0 -1
- package/lib/cjs/content-fields/flow-element.js +0 -46
- 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 -58
- package/lib/cjs/content-fields/flow-go-to-flow.js.map +0 -1
- package/lib/cjs/content-fields/flow-handoff.js +0 -63
- package/lib/cjs/content-fields/flow-handoff.js.map +0 -1
- package/lib/cjs/content-fields/flow-image.d.ts +0 -9
- package/lib/cjs/content-fields/flow-image.js +0 -28
- package/lib/cjs/content-fields/flow-image.js.map +0 -1
- package/lib/cjs/content-fields/flow-knowledge-base.js +0 -39
- package/lib/cjs/content-fields/flow-knowledge-base.js.map +0 -1
- package/lib/cjs/content-fields/flow-queue-status-conditional.d.ts +0 -29
- package/lib/cjs/content-fields/flow-queue-status-conditional.js +0 -90
- package/lib/cjs/content-fields/flow-queue-status-conditional.js.map +0 -1
- package/lib/cjs/content-fields/flow-rating.d.ts +0 -14
- package/lib/cjs/content-fields/flow-rating.js +0 -61
- package/lib/cjs/content-fields/flow-rating.js.map +0 -1
- package/lib/cjs/content-fields/flow-text.d.ts +0 -15
- package/lib/cjs/content-fields/flow-text.js +0 -55
- package/lib/cjs/content-fields/flow-text.js.map +0 -1
- package/lib/cjs/content-fields/flow-video.d.ts +0 -9
- package/lib/cjs/content-fields/flow-video.js +0 -28
- package/lib/cjs/content-fields/flow-video.js.map +0 -1
- package/lib/cjs/content-fields/flow-webview.d.ts +0 -11
- package/lib/cjs/content-fields/flow-webview.js +0 -42
- package/lib/cjs/content-fields/flow-webview.js.map +0 -1
- package/lib/cjs/content-fields/flow-whatsapp-cta-url-button.d.ts +0 -19
- package/lib/cjs/content-fields/flow-whatsapp-cta-url-button.js +0 -87
- package/lib/cjs/content-fields/flow-whatsapp-cta-url-button.js.map +0 -1
- package/lib/cjs/content-fields/flow-whatsapp-template.d.ts +0 -29
- package/lib/cjs/content-fields/flow-whatsapp-template.js +0 -183
- package/lib/cjs/content-fields/flow-whatsapp-template.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/ai-agent.d.ts +0 -25
- 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.d.ts +0 -10
- 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.d.ts +0 -8
- 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.d.ts +0 -19
- 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.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.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.js +0 -3
- package/lib/cjs/content-fields/hubtype-fields/fallback.js.map +0 -1
- 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.js +0 -3
- package/lib/cjs/content-fields/hubtype-fields/image.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/index.js +0 -28
- package/lib/cjs/content-fields/hubtype-fields/index.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/keyword.d.ts +0 -9
- 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/knowledge-base.d.ts +0 -17
- package/lib/cjs/content-fields/hubtype-fields/knowledge-base.js +0 -3
- package/lib/cjs/content-fields/hubtype-fields/knowledge-base.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/node-types.js +0 -36
- package/lib/cjs/content-fields/hubtype-fields/node-types.js.map +0 -1
- package/lib/cjs/content-fields/hubtype-fields/nodes.d.ts +0 -24
- 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.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 -11
- 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.d.ts +0 -8
- 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.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 -16
- 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.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.d.ts +0 -17
- 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-template.d.ts +0 -72
- package/lib/cjs/content-fields/hubtype-fields/whatsapp-template.js +0 -3
- package/lib/cjs/content-fields/hubtype-fields/whatsapp-template.js.map +0 -1
- package/lib/cjs/content-fields/index.js +0 -47
- package/lib/cjs/content-fields/index.js.map +0 -1
- package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.d.ts +0 -13
- package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.js +0 -39
- 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 -34
- 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.js +0 -41
- package/lib/cjs/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js.map +0 -1
- package/lib/cjs/filters/index.d.ts +0 -12
- package/lib/cjs/filters/index.js +0 -17
- package/lib/cjs/filters/index.js.map +0 -1
- package/lib/cjs/flow-factory.js +0 -65
- package/lib/cjs/flow-factory.js.map +0 -1
- package/lib/cjs/functions/index.d.ts +0 -11
- package/lib/cjs/functions/index.js +0 -49
- package/lib/cjs/functions/index.js.map +0 -1
- package/lib/cjs/helpers.d.ts +0 -3
- package/lib/cjs/helpers.js +0 -16
- package/lib/cjs/helpers.js.map +0 -1
- package/lib/cjs/index.d.ts +0 -46
- package/lib/cjs/index.js +0 -182
- 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/tracking.d.ts +0 -16
- package/lib/cjs/tracking.js +0 -72
- package/lib/cjs/tracking.js.map +0 -1
- package/lib/cjs/types.d.ts +0 -64
- 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 +0 -88
- 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.js +0 -84
- package/lib/cjs/user-input/keyword.js.map +0 -1
- package/lib/cjs/user-input/smart-intent.js +0 -85
- package/lib/cjs/user-input/smart-intent.js.map +0 -1
- package/lib/cjs/utils.d.ts +0 -8
- package/lib/cjs/utils.js +0 -57
- package/lib/cjs/utils.js.map +0 -1
- package/lib/cjs/webview/contents-context.d.ts +0 -2
- 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.d.ts +0 -2
- 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/index.d.ts +0 -3
- package/lib/esm/action/ai-agent/index.js +0 -94
- package/lib/esm/action/ai-agent/index.js.map +0 -1
- package/lib/esm/action/ai-agent/structured-output/flow-builder-content.d.ts +0 -16
- package/lib/esm/action/ai-agent/structured-output/flow-builder-content.js +0 -12
- package/lib/esm/action/ai-agent/structured-output/flow-builder-content.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 -91
- package/lib/esm/action/first-interaction.js.map +0 -1
- package/lib/esm/action/index.d.ts +0 -28
- package/lib/esm/action/index.js +0 -127
- package/lib/esm/action/index.js.map +0 -1
- package/lib/esm/action/knowledge-bases.d.ts +0 -3
- package/lib/esm/action/knowledge-bases.js +0 -85
- package/lib/esm/action/knowledge-bases.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.js +0 -254
- package/lib/esm/api.js.map +0 -1
- package/lib/esm/constants.d.ts +0 -14
- package/lib/esm/constants.js +0 -20
- package/lib/esm/constants.js.map +0 -1
- package/lib/esm/content-fields/content-fields-base.js +0 -66
- package/lib/esm/content-fields/content-fields-base.js.map +0 -1
- package/lib/esm/content-fields/flow-ai-agent.d.ts +0 -23
- package/lib/esm/content-fields/flow-ai-agent.js +0 -53
- package/lib/esm/content-fields/flow-ai-agent.js.map +0 -1
- package/lib/esm/content-fields/flow-bot-action.d.ts +0 -12
- package/lib/esm/content-fields/flow-bot-action.js +0 -39
- package/lib/esm/content-fields/flow-bot-action.js.map +0 -1
- package/lib/esm/content-fields/flow-button.d.ts +0 -31
- package/lib/esm/content-fields/flow-button.js +0 -104
- package/lib/esm/content-fields/flow-button.js.map +0 -1
- package/lib/esm/content-fields/flow-capture-user-input.d.ts +0 -13
- package/lib/esm/content-fields/flow-capture-user-input.js +0 -43
- package/lib/esm/content-fields/flow-capture-user-input.js.map +0 -1
- package/lib/esm/content-fields/flow-carousel.d.ts +0 -21
- package/lib/esm/content-fields/flow-carousel.js +0 -147
- package/lib/esm/content-fields/flow-carousel.js.map +0 -1
- package/lib/esm/content-fields/flow-channel-conditional.d.ts +0 -13
- package/lib/esm/content-fields/flow-channel-conditional.js +0 -53
- package/lib/esm/content-fields/flow-channel-conditional.js.map +0 -1
- package/lib/esm/content-fields/flow-country-conditional.d.ts +0 -12
- package/lib/esm/content-fields/flow-country-conditional.js +0 -54
- package/lib/esm/content-fields/flow-country-conditional.js.map +0 -1
- package/lib/esm/content-fields/flow-custom-conditional.d.ts +0 -16
- package/lib/esm/content-fields/flow-custom-conditional.js +0 -83
- 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 -46
- package/lib/esm/content-fields/flow-element.js.map +0 -1
- package/lib/esm/content-fields/flow-go-to-flow.d.ts +0 -13
- package/lib/esm/content-fields/flow-go-to-flow.js +0 -58
- package/lib/esm/content-fields/flow-go-to-flow.js.map +0 -1
- package/lib/esm/content-fields/flow-handoff.d.ts +0 -16
- package/lib/esm/content-fields/flow-handoff.js +0 -63
- package/lib/esm/content-fields/flow-handoff.js.map +0 -1
- package/lib/esm/content-fields/flow-image.d.ts +0 -9
- package/lib/esm/content-fields/flow-image.js +0 -28
- package/lib/esm/content-fields/flow-image.js.map +0 -1
- package/lib/esm/content-fields/flow-knowledge-base.d.ts +0 -20
- package/lib/esm/content-fields/flow-knowledge-base.js +0 -39
- package/lib/esm/content-fields/flow-knowledge-base.js.map +0 -1
- package/lib/esm/content-fields/flow-queue-status-conditional.js +0 -90
- package/lib/esm/content-fields/flow-queue-status-conditional.js.map +0 -1
- package/lib/esm/content-fields/flow-rating.js +0 -61
- 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 -55
- package/lib/esm/content-fields/flow-text.js.map +0 -1
- package/lib/esm/content-fields/flow-video.d.ts +0 -9
- package/lib/esm/content-fields/flow-video.js +0 -28
- package/lib/esm/content-fields/flow-video.js.map +0 -1
- package/lib/esm/content-fields/flow-webview.js +0 -42
- package/lib/esm/content-fields/flow-webview.js.map +0 -1
- package/lib/esm/content-fields/flow-whatsapp-cta-url-button.js +0 -87
- package/lib/esm/content-fields/flow-whatsapp-cta-url-button.js.map +0 -1
- package/lib/esm/content-fields/flow-whatsapp-template.js +0 -183
- package/lib/esm/content-fields/flow-whatsapp-template.js.map +0 -1
- 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.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/bot-action.js.map +0 -1
- 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.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.d.ts +0 -78
- 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.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/custom-conditional.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/fallback.d.ts +0 -11
- 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.d.ts +0 -30
- 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.d.ts +0 -8
- 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.js +0 -28
- package/lib/esm/content-fields/hubtype-fields/index.js.map +0 -1
- 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/knowledge-base.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/knowledge-base.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/node-types.d.ts +0 -29
- package/lib/esm/content-fields/hubtype-fields/node-types.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/nodes.d.ts +0 -24
- 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.d.ts +0 -23
- 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.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/url.js.map +0 -1
- package/lib/esm/content-fields/hubtype-fields/video.d.ts +0 -8
- 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.d.ts +0 -21
- 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.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-template.d.ts +0 -72
- package/lib/esm/content-fields/hubtype-fields/whatsapp-template.js +0 -3
- package/lib/esm/content-fields/hubtype-fields/whatsapp-template.js.map +0 -1
- package/lib/esm/content-fields/index.js +0 -47
- 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 -13
- package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.js +0 -39
- 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 -12
- package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.js +0 -34
- 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.d.ts +0 -13
- package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list.js +0 -41
- package/lib/esm/content-fields/whatsapp-button-list/flow-whatsapp-button-list.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 -65
- 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/helpers.d.ts +0 -3
- package/lib/esm/helpers.js.map +0 -1
- package/lib/esm/index.d.ts +0 -46
- package/lib/esm/index.js +0 -182
- 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/tracking.d.ts +0 -16
- package/lib/esm/tracking.js +0 -72
- package/lib/esm/tracking.js.map +0 -1
- package/lib/esm/types.d.ts +0 -64
- package/lib/esm/types.js +0 -14
- package/lib/esm/types.js.map +0 -1
- package/lib/esm/user-input/capture-user-input-api.d.ts +0 -21
- 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.d.ts +0 -4
- 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.d.ts +0 -27
- package/lib/esm/user-input/keyword.js +0 -84
- package/lib/esm/user-input/keyword.js.map +0 -1
- package/lib/esm/user-input/smart-intent.d.ts +0 -23
- package/lib/esm/user-input/smart-intent.js +0 -85
- package/lib/esm/user-input/smart-intent.js.map +0 -1
- package/lib/esm/utils.d.ts +0 -8
- package/lib/esm/utils.js +0 -57
- package/lib/esm/utils.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.d.ts +0 -47
- 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/src/action/ai-agent/index.ts +0 -138
- package/src/action/ai-agent/structured-output/flow-builder-content.ts +0 -17
- package/src/action/fallback.ts +0 -55
- package/src/action/first-interaction.ts +0 -131
- package/src/action/index.tsx +0 -205
- package/src/action/knowledge-bases.ts +0 -161
- package/src/action/payload.ts +0 -104
- package/src/api.ts +0 -364
- package/src/constants.ts +0 -20
- package/src/content-fields/content-fields-base.ts +0 -100
- package/src/content-fields/flow-ai-agent.tsx +0 -70
- package/src/content-fields/flow-bot-action.tsx +0 -52
- package/src/content-fields/flow-button.tsx +0 -165
- package/src/content-fields/flow-capture-user-input.tsx +0 -45
- package/src/content-fields/flow-carousel.tsx +0 -254
- package/src/content-fields/flow-channel-conditional.tsx +0 -65
- package/src/content-fields/flow-country-conditional.tsx +0 -67
- package/src/content-fields/flow-custom-conditional.tsx +0 -117
- package/src/content-fields/flow-element.tsx +0 -79
- package/src/content-fields/flow-go-to-flow.tsx +0 -75
- package/src/content-fields/flow-handoff.tsx +0 -99
- package/src/content-fields/flow-image.tsx +0 -26
- package/src/content-fields/flow-knowledge-base.tsx +0 -51
- package/src/content-fields/flow-queue-status-conditional.tsx +0 -130
- package/src/content-fields/flow-rating.tsx +0 -99
- package/src/content-fields/flow-text.tsx +0 -82
- package/src/content-fields/flow-video.tsx +0 -26
- package/src/content-fields/flow-webview.tsx +0 -46
- package/src/content-fields/flow-whatsapp-cta-url-button.tsx +0 -209
- package/src/content-fields/flow-whatsapp-template.tsx +0 -319
- package/src/content-fields/hubtype-fields/ai-agent.ts +0 -22
- package/src/content-fields/hubtype-fields/bot-action.ts +0 -11
- package/src/content-fields/hubtype-fields/button.ts +0 -9
- package/src/content-fields/hubtype-fields/capture-user-input.ts +0 -21
- package/src/content-fields/hubtype-fields/carousel.ts +0 -19
- package/src/content-fields/hubtype-fields/channel-conditional.ts +0 -11
- package/src/content-fields/hubtype-fields/common.ts +0 -94
- package/src/content-fields/hubtype-fields/country-conditional.ts +0 -11
- package/src/content-fields/hubtype-fields/custom-conditional.ts +0 -12
- package/src/content-fields/hubtype-fields/fallback.ts +0 -12
- package/src/content-fields/hubtype-fields/function.ts +0 -36
- package/src/content-fields/hubtype-fields/go-to-flow.ts +0 -10
- package/src/content-fields/hubtype-fields/handoff.ts +0 -12
- package/src/content-fields/hubtype-fields/image.ts +0 -9
- package/src/content-fields/hubtype-fields/index.ts +0 -24
- package/src/content-fields/hubtype-fields/keyword.ts +0 -10
- package/src/content-fields/hubtype-fields/knowledge-base.ts +0 -18
- package/src/content-fields/hubtype-fields/node-types.ts +0 -31
- package/src/content-fields/hubtype-fields/nodes.ts +0 -54
- package/src/content-fields/hubtype-fields/payload.ts +0 -9
- package/src/content-fields/hubtype-fields/queue-status-conditional.ts +0 -55
- package/src/content-fields/hubtype-fields/rating.ts +0 -26
- package/src/content-fields/hubtype-fields/smart-intent.ts +0 -12
- package/src/content-fields/hubtype-fields/text.ts +0 -12
- package/src/content-fields/hubtype-fields/url.ts +0 -9
- package/src/content-fields/hubtype-fields/video.ts +0 -9
- package/src/content-fields/hubtype-fields/webview.ts +0 -18
- package/src/content-fields/hubtype-fields/whatsapp-button-list.ts +0 -25
- package/src/content-fields/hubtype-fields/whatsapp-cta-url-button.ts +0 -19
- package/src/content-fields/hubtype-fields/whatsapp-template.ts +0 -90
- package/src/content-fields/index.ts +0 -67
- package/src/content-fields/whatsapp-button-list/flow-whatsapp-button-list-row.tsx +0 -55
- package/src/content-fields/whatsapp-button-list/flow-whatsapp-button-list-section.tsx +0 -51
- package/src/content-fields/whatsapp-button-list/flow-whatsapp-button-list.tsx +0 -78
- package/src/filters/index.ts +0 -27
- package/src/flow-factory.ts +0 -134
- package/src/functions/index.ts +0 -78
- package/src/helpers.ts +0 -25
- package/src/index.ts +0 -301
- package/src/services/hubtype-queues-api.ts +0 -36
- package/src/tracking.ts +0 -118
- package/src/types.ts +0 -117
- package/src/user-input/capture-user-input-api.ts +0 -144
- package/src/user-input/index.ts +0 -61
- package/src/user-input/keyword.ts +0 -134
- package/src/user-input/smart-intent.ts +0 -119
- package/src/utils.ts +0 -66
- package/src/webview/contents-context.ts +0 -11
- package/src/webview/index.ts +0 -3
- package/src/webview/types.ts +0 -52
- package/src/webview/use-webview-contents.ts +0 -120
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { __awaiter, __rest } from "tslib";
|
|
2
|
+
import { EventAction, } from '@botonic/shared';
|
|
3
|
+
import { getCommonFlowContentEventArgsForContentId, trackEvent, } from '../tracking';
|
|
4
|
+
export function getContentsByFallback(_a) {
|
|
5
|
+
return __awaiter(this, arguments, void 0, function* ({ cmsApi, flowBuilderPlugin, botContext: context, }) {
|
|
6
|
+
const fallbackNode = yield getFallbackNode(cmsApi, context);
|
|
7
|
+
const fallbackContents = yield flowBuilderPlugin.getContentsByNode(fallbackNode);
|
|
8
|
+
return fallbackContents;
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
function getFallbackNode(cmsApi, botContext) {
|
|
12
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
13
|
+
var _a, _b, _c;
|
|
14
|
+
let extraData = (_a = botContext.session.user.extraData) !== null && _a !== void 0 ? _a : {};
|
|
15
|
+
if (extraData.isFirstFallbackOption === undefined) {
|
|
16
|
+
extraData = Object.assign(Object.assign({}, extraData), { isFirstFallbackOption: true });
|
|
17
|
+
}
|
|
18
|
+
const isFirstFallbackOption = !!extraData.isFirstFallbackOption;
|
|
19
|
+
const fallbackNode = cmsApi.getFallbackNode(isFirstFallbackOption);
|
|
20
|
+
extraData = Object.assign(Object.assign({}, extraData), { isFirstFallbackOption: !isFirstFallbackOption });
|
|
21
|
+
yield botContext.updateBotSession({
|
|
22
|
+
user: { extraData },
|
|
23
|
+
});
|
|
24
|
+
const { flowId, flowName, flowNodeId, flowNodeContentId } = yield getCommonFlowContentEventArgsForContentId(botContext, fallbackNode.id);
|
|
25
|
+
const event = {
|
|
26
|
+
action: EventAction.Fallback,
|
|
27
|
+
flowId,
|
|
28
|
+
flowName,
|
|
29
|
+
flowNodeId,
|
|
30
|
+
flowNodeContentId,
|
|
31
|
+
userInput: (_b = botContext.input.text) !== null && _b !== void 0 ? _b : '',
|
|
32
|
+
fallbackOut: isFirstFallbackOption ? 1 : 2,
|
|
33
|
+
fallbackMessageId: (_c = botContext.input.messageId) !== null && _c !== void 0 ? _c : '',
|
|
34
|
+
};
|
|
35
|
+
const { action } = event, eventArgs = __rest(event, ["action"]);
|
|
36
|
+
yield trackEvent(botContext, action, eventArgs);
|
|
37
|
+
return fallbackNode;
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=fallback.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fallback.js","sourceRoot":"","sources":["../../../../../../../libs/botonic/plugin-flow-builder/src/lib/action/fallback.ts"],"names":[],"mappings":";AAAA,OAAO,EAEL,WAAW,GAIZ,MAAM,iBAAiB,CAAA;AAIxB,OAAO,EACL,yCAAyC,EACzC,UAAU,GACX,MAAM,aAAa,CAAA;AAGpB,MAAM,UAAgB,qBAAqB;yDAAC,EAC1C,MAAM,EACN,iBAAiB,EACjB,UAAU,EAAE,OAAO,GACA;QACnB,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAC3D,MAAM,gBAAgB,GACpB,MAAM,iBAAiB,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAA;QAEzD,OAAO,gBAAgB,CAAA;IACzB,CAAC;CAAA;AAED,SAAe,eAAe,CAC5B,MAAsB,EACtB,UAAsD;;;QAEtD,IAAI,SAAS,GAAG,MAAA,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,mCAAI,EAAE,CAAA;QACvD,IAAI,SAAS,CAAC,qBAAqB,KAAK,SAAS,EAAE,CAAC;YAClD,SAAS,mCAAQ,SAAS,KAAE,qBAAqB,EAAE,IAAI,GAAE,CAAA;QAC3D,CAAC;QACD,MAAM,qBAAqB,GAAG,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAA;QAC/D,MAAM,YAAY,GAAG,MAAM,CAAC,eAAe,CAAC,qBAAqB,CAAC,CAAA;QAClE,SAAS,mCAAQ,SAAS,KAAE,qBAAqB,EAAE,CAAC,qBAAqB,GAAE,CAAA;QAC3E,MAAM,UAAU,CAAC,gBAAgB,CAAC;YAChC,IAAI,EAAE,EAAE,SAAS,EAAE;SACpB,CAAC,CAAA;QAEF,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,iBAAiB,EAAE,GACvD,MAAM,yCAAyC,CAAC,UAAU,EAAE,YAAY,CAAC,EAAE,CAAC,CAAA;QAE9E,MAAM,KAAK,GAAkB;YAC3B,MAAM,EAAE,WAAW,CAAC,QAAQ;YAC5B,MAAM;YACN,QAAQ;YACR,UAAU;YACV,iBAAiB;YACjB,SAAS,EAAE,MAAA,UAAU,CAAC,KAAK,CAAC,IAAI,mCAAI,EAAE;YACtC,WAAW,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1C,iBAAiB,EAAE,MAAA,UAAU,CAAC,KAAK,CAAC,SAAS,mCAAI,EAAE;SACpD,CAAA;QACD,MAAM,EAAE,MAAM,KAAmB,KAAK,EAAnB,SAAS,UAAK,KAAK,EAAhC,UAAwB,CAAQ,CAAA;QAEtC,MAAM,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,CAAC,CAAA;QAE/C,OAAO,YAAY,CAAA;IACrB,CAAC;CAAA"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { __awaiter } from "tslib";
|
|
2
|
+
import { MAIN_FLOW_NAME } from '../constants';
|
|
3
|
+
import { FlowBotAction } from '../content-fields';
|
|
4
|
+
import { getContentsByAiAgent } from './ai-agent';
|
|
5
|
+
import { getContentsByKnowledgeBase } from './knowledge-bases';
|
|
6
|
+
import { getContentsByPayload } from './payload';
|
|
7
|
+
export function getContentsByFirstInteraction(fbContext) {
|
|
8
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
9
|
+
const { flowBuilderPlugin, botContext } = fbContext;
|
|
10
|
+
const firstInteractionContents = yield flowBuilderPlugin.getStartContents();
|
|
11
|
+
// If the first interaction has a FlowBotAction, it should be the last content
|
|
12
|
+
// and avoid to render the match with keywords,intents or knowledge base
|
|
13
|
+
if (firstInteractionContents.at(-1) instanceof FlowBotAction) {
|
|
14
|
+
return firstInteractionContents;
|
|
15
|
+
}
|
|
16
|
+
if (botContext.input.nluResolution || botContext.input.hasInputText()) {
|
|
17
|
+
const contentsByUserInput = yield getContentsByUserInput(fbContext);
|
|
18
|
+
return [...firstInteractionContents, ...contentsByUserInput];
|
|
19
|
+
}
|
|
20
|
+
return firstInteractionContents;
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
function getContentsByUserInput(_a) {
|
|
24
|
+
return __awaiter(this, arguments, void 0, function* ({ cmsApi, flowBuilderPlugin, botContext, resolvedLocale, }) {
|
|
25
|
+
var _b;
|
|
26
|
+
const payloadByNlu = (_b = botContext.input.nluResolution) === null || _b === void 0 ? void 0 : _b.payload;
|
|
27
|
+
if (payloadByNlu) {
|
|
28
|
+
botContext.input.payload = payloadByNlu;
|
|
29
|
+
const conversationStartId = getConversationStartId(cmsApi);
|
|
30
|
+
if (botContext.input.payload === conversationStartId) {
|
|
31
|
+
return [];
|
|
32
|
+
}
|
|
33
|
+
const contentsByKeywordsOrIntents = yield getContentsByPayload({
|
|
34
|
+
cmsApi,
|
|
35
|
+
flowBuilderPlugin,
|
|
36
|
+
botContext,
|
|
37
|
+
resolvedLocale,
|
|
38
|
+
});
|
|
39
|
+
const hasRepeatedContent = yield checkRepeatedContents(flowBuilderPlugin, contentsByKeywordsOrIntents);
|
|
40
|
+
if (hasRepeatedContent) {
|
|
41
|
+
return [];
|
|
42
|
+
}
|
|
43
|
+
if (contentsByKeywordsOrIntents.length > 0) {
|
|
44
|
+
return contentsByKeywordsOrIntents;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
const knowledgeBaseContents = yield getContentsByKnowledgeBase({
|
|
48
|
+
cmsApi,
|
|
49
|
+
flowBuilderPlugin,
|
|
50
|
+
botContext,
|
|
51
|
+
resolvedLocale,
|
|
52
|
+
});
|
|
53
|
+
if (knowledgeBaseContents.length > 0) {
|
|
54
|
+
return knowledgeBaseContents;
|
|
55
|
+
}
|
|
56
|
+
if (!flowBuilderPlugin.disableAIAgentInFirstInteraction) {
|
|
57
|
+
const aiAgentContents = yield getContentsByAiAgent({
|
|
58
|
+
cmsApi,
|
|
59
|
+
flowBuilderPlugin,
|
|
60
|
+
botContext,
|
|
61
|
+
resolvedLocale,
|
|
62
|
+
});
|
|
63
|
+
if (aiAgentContents.length > 0) {
|
|
64
|
+
return aiAgentContents;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
return [];
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
function getConversationStartId(cmsApi) {
|
|
71
|
+
var _a;
|
|
72
|
+
const conversationStartId = (_a = cmsApi.flow.flows.find(flow => flow.name === MAIN_FLOW_NAME)) === null || _a === void 0 ? void 0 : _a.start_node_id;
|
|
73
|
+
return conversationStartId;
|
|
74
|
+
}
|
|
75
|
+
function checkRepeatedContents(flowBuilderPlugin, contentsByKeywordsOrIntents) {
|
|
76
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
77
|
+
const startContents = yield flowBuilderPlugin.getStartContents();
|
|
78
|
+
const contentIds = new Set(contentsByKeywordsOrIntents.map(content => content.id));
|
|
79
|
+
const hasRepeatedContent = startContents.some(content => contentIds.has(content.id));
|
|
80
|
+
return hasRepeatedContent;
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=first-interaction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"first-interaction.js","sourceRoot":"","sources":["../../../../../../../libs/botonic/plugin-flow-builder/src/lib/action/first-interaction.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { BotContext } from '@botonic/shared';
|
|
2
|
+
import { FlowBuilderApi } from '../api';
|
|
3
|
+
import { FlowContent } from '../content-fields';
|
|
4
|
+
import { BotonicPluginFlowBuilder } from '../index';
|
|
5
|
+
export type FlowBuilderActionProps = {
|
|
6
|
+
contents: FlowContent[];
|
|
7
|
+
};
|
|
8
|
+
export declare class FlowBuilderAction {
|
|
9
|
+
static executeConversationStart(botContext: BotContext): Promise<FlowContent[]>;
|
|
10
|
+
static botonicInit(botContext: BotContext, contentID?: string): Promise<FlowContent[]>;
|
|
11
|
+
static trackAllContents(botContext: BotContext, contents: FlowContent[]): Promise<void>;
|
|
12
|
+
static doHandoffAndBotActions(botContext: BotContext, contents: FlowContent[]): Promise<void>;
|
|
13
|
+
}
|
|
14
|
+
export interface FlowBuilderContext {
|
|
15
|
+
cmsApi: FlowBuilderApi;
|
|
16
|
+
flowBuilderPlugin: BotonicPluginFlowBuilder;
|
|
17
|
+
botContext: BotContext;
|
|
18
|
+
resolvedLocale: string;
|
|
19
|
+
contentID?: string;
|
|
20
|
+
}
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
import { __awaiter } from "tslib";
|
|
2
|
+
import { InputType } from '@botonic/shared';
|
|
3
|
+
import { EMPTY_PAYLOAD } from '../constants';
|
|
4
|
+
import { FlowHandoff } from '../content-fields';
|
|
5
|
+
import { FlowBotAction } from '../content-fields/flow-bot-action';
|
|
6
|
+
import { ContentFilterExecutor } from '../filters';
|
|
7
|
+
import { getFlowBuilderPlugin } from '../helpers';
|
|
8
|
+
import { getContentsByAiAgent } from './ai-agent';
|
|
9
|
+
import { getContentsByFallback } from './fallback';
|
|
10
|
+
import { getContentsByFirstInteraction } from './first-interaction';
|
|
11
|
+
import { getContentsByKnowledgeBase } from './knowledge-bases';
|
|
12
|
+
import { getContentsByPayload } from './payload';
|
|
13
|
+
export class FlowBuilderAction {
|
|
14
|
+
static executeConversationStart(botContext) {
|
|
15
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
16
|
+
const fbContext = getContext(botContext);
|
|
17
|
+
const contents = yield getContentsByFirstInteraction(fbContext);
|
|
18
|
+
const filteredContents = yield filterContents(botContext, contents);
|
|
19
|
+
yield FlowBuilderAction.trackAllContents(botContext, filteredContents);
|
|
20
|
+
yield FlowBuilderAction.doHandoffAndBotActions(botContext, filteredContents);
|
|
21
|
+
for (const content of filteredContents) {
|
|
22
|
+
// TODO: now toBotonic function is async and receives botContext as parameter,
|
|
23
|
+
// in a future PR refactor to resolve inside tracking, bot actions handoff and send messages
|
|
24
|
+
const message = yield content.toBotonic(botContext);
|
|
25
|
+
if (Array.isArray(message)) {
|
|
26
|
+
for (const msg of message) {
|
|
27
|
+
yield botContext.sendMessage(msg);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
else if (message) {
|
|
31
|
+
yield botContext.sendMessage(message);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
// TODO:Add for testing purposes, we can create a mock for botContext.sendMessage function
|
|
35
|
+
// and check messages sent by plugin-flow-builder instead of contents returned by this function
|
|
36
|
+
return filteredContents;
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
static botonicInit(botContext, contentID) {
|
|
40
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
41
|
+
const contents = yield getContents(botContext, contentID);
|
|
42
|
+
const filteredContents = yield filterContents(botContext, contents);
|
|
43
|
+
yield FlowBuilderAction.trackAllContents(botContext, filteredContents);
|
|
44
|
+
yield FlowBuilderAction.doHandoffAndBotActions(botContext, filteredContents);
|
|
45
|
+
for (const content of filteredContents) {
|
|
46
|
+
// TODO: now toBotonic function is async and receives botContext as parameter,
|
|
47
|
+
// in a future PR refactor to resolve inside tracking, bot actions handoff and send messages
|
|
48
|
+
const message = yield content.toBotonic(botContext);
|
|
49
|
+
// when is a content from an ai agent, toBotonic function can return an array of messages
|
|
50
|
+
// TODO: Rethink if we can send the messages from the action or we can send each message inside the toBotonic function
|
|
51
|
+
if (Array.isArray(message)) {
|
|
52
|
+
for (const msg of message) {
|
|
53
|
+
yield botContext.sendMessage(msg);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
else if (message) {
|
|
57
|
+
yield botContext.sendMessage(message);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
// TODO:Add for testing purposes, we can create a mock for botContext.sendMessage function
|
|
61
|
+
// and check messages sent by plugin-flow-builder instead of contents returned by this function
|
|
62
|
+
return filteredContents;
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
static trackAllContents(botContext, contents) {
|
|
66
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
67
|
+
for (const content of contents) {
|
|
68
|
+
yield content.trackFlow(botContext);
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
static doHandoffAndBotActions(botContext, contents) {
|
|
73
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
74
|
+
const handoffContent = contents.find(content => content instanceof FlowHandoff);
|
|
75
|
+
if (handoffContent) {
|
|
76
|
+
yield handoffContent.doHandoff(botContext);
|
|
77
|
+
}
|
|
78
|
+
const botActionContent = contents.find(content => content instanceof FlowBotAction);
|
|
79
|
+
if (botActionContent) {
|
|
80
|
+
botActionContent.doBotAction(botContext);
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
function getContents(botContext, contentID) {
|
|
86
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
87
|
+
const fbContext = getContext(botContext, contentID);
|
|
88
|
+
if (botContext.session.isFirstInteraction) {
|
|
89
|
+
return yield getContentsByFirstInteraction(fbContext);
|
|
90
|
+
}
|
|
91
|
+
// @ts-expect-error TODO: Add needed logic when we can define contents for multi locale queue position message
|
|
92
|
+
if (botContext.input.type === InputType.CaseEventQueuePosition) {
|
|
93
|
+
return [];
|
|
94
|
+
}
|
|
95
|
+
// When user clicks on a button generated by ai agent, the payload is the empty payload
|
|
96
|
+
// and we can resolve as if the user send a text with the button text
|
|
97
|
+
const payload = botContext.input.payload;
|
|
98
|
+
if (payload === null || payload === void 0 ? void 0 : payload.startsWith(EMPTY_PAYLOAD)) {
|
|
99
|
+
botContext.input.payload = undefined;
|
|
100
|
+
}
|
|
101
|
+
if (botContext.input.payload || contentID) {
|
|
102
|
+
const contentsByPayload = yield getContentsByPayload(fbContext);
|
|
103
|
+
if (contentsByPayload.length > 0) {
|
|
104
|
+
return contentsByPayload;
|
|
105
|
+
}
|
|
106
|
+
return yield getContentsByFallback(fbContext);
|
|
107
|
+
}
|
|
108
|
+
if (botContext.input.hasInputText()) {
|
|
109
|
+
const aiAgentContents = yield getContentsByAiAgent(fbContext);
|
|
110
|
+
if (aiAgentContents.length > 0) {
|
|
111
|
+
return aiAgentContents;
|
|
112
|
+
}
|
|
113
|
+
const knowledgeBaseContents = yield getContentsByKnowledgeBase(fbContext);
|
|
114
|
+
if (knowledgeBaseContents.length > 0) {
|
|
115
|
+
return knowledgeBaseContents;
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
return yield getContentsByFallback(fbContext);
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
function filterContents(botContext, contents) {
|
|
122
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
123
|
+
const flowBuilderPlugin = getFlowBuilderPlugin(botContext.plugins);
|
|
124
|
+
const contentFilters = flowBuilderPlugin.contentFilters;
|
|
125
|
+
const contentFilterExecutor = new ContentFilterExecutor({
|
|
126
|
+
filters: contentFilters,
|
|
127
|
+
});
|
|
128
|
+
const filteredContents = [];
|
|
129
|
+
for (const content of contents) {
|
|
130
|
+
const filteredContent = yield contentFilterExecutor.filter(botContext, content);
|
|
131
|
+
filteredContents.push(filteredContent);
|
|
132
|
+
}
|
|
133
|
+
return filteredContents;
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
function getContext(botContext, contentID) {
|
|
137
|
+
const flowBuilderPlugin = getFlowBuilderPlugin(botContext.plugins);
|
|
138
|
+
const cmsApi = flowBuilderPlugin.cmsApi;
|
|
139
|
+
const resolvedLocale = flowBuilderPlugin.cmsApi.getResolvedLocale();
|
|
140
|
+
return {
|
|
141
|
+
cmsApi,
|
|
142
|
+
flowBuilderPlugin,
|
|
143
|
+
botContext,
|
|
144
|
+
resolvedLocale,
|
|
145
|
+
contentID,
|
|
146
|
+
};
|
|
147
|
+
}
|
|
148
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../libs/botonic/plugin-flow-builder/src/lib/action/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import { __awaiter, __rest } from "tslib";
|
|
2
|
+
import { EventAction, KnowledgebaseFailReason, } from '@botonic/shared';
|
|
3
|
+
import { DISABLED_MEMORY_LENGTH, FlowKnowledgeBase, } from '../content-fields';
|
|
4
|
+
import { getCommonFlowContentEventArgsForContentId, trackEvent, } from '../tracking';
|
|
5
|
+
import { isKnowledgeBasesAllowed } from '../utils';
|
|
6
|
+
export function getContentsByKnowledgeBase(_a) {
|
|
7
|
+
return __awaiter(this, arguments, void 0, function* ({ cmsApi, flowBuilderPlugin, botContext, }) {
|
|
8
|
+
if (isKnowledgeBasesAllowed(botContext)) {
|
|
9
|
+
const startNodeKnowledgeBaseFlow = cmsApi.getStartNodeKnowledgeBaseFlow();
|
|
10
|
+
if (!startNodeKnowledgeBaseFlow) {
|
|
11
|
+
return [];
|
|
12
|
+
}
|
|
13
|
+
const contents = yield flowBuilderPlugin.getContentsByNode(startNodeKnowledgeBaseFlow);
|
|
14
|
+
const knowledgeBaseContent = contents.find(content => content instanceof FlowKnowledgeBase);
|
|
15
|
+
if (!knowledgeBaseContent) {
|
|
16
|
+
return contents;
|
|
17
|
+
}
|
|
18
|
+
const sourceIds = knowledgeBaseContent.sourcesData.map(source => source.id);
|
|
19
|
+
if (flowBuilderPlugin.getKnowledgeBaseResponse &&
|
|
20
|
+
botContext.input.hasInputText() &&
|
|
21
|
+
sourceIds.length > 0) {
|
|
22
|
+
const contentsWithKnowledgeResponse = yield getContentsWithKnowledgeResponse(flowBuilderPlugin.getKnowledgeBaseResponse, botContext, contents, knowledgeBaseContent);
|
|
23
|
+
if (contentsWithKnowledgeResponse) {
|
|
24
|
+
return contentsWithKnowledgeResponse;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
return [];
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
function getContentsWithKnowledgeResponse(getKnowledgeBaseResponse, botContext, contents, knowledgeBaseContent) {
|
|
32
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
33
|
+
var _a;
|
|
34
|
+
const sourceIds = knowledgeBaseContent.sourcesData.map(source => source.id);
|
|
35
|
+
const instructions = knowledgeBaseContent.instructions;
|
|
36
|
+
const messageId = (_a = botContext.input.messageId) !== null && _a !== void 0 ? _a : '';
|
|
37
|
+
const memoryLength = knowledgeBaseContent.hasMemory
|
|
38
|
+
? knowledgeBaseContent.memoryLength
|
|
39
|
+
: DISABLED_MEMORY_LENGTH;
|
|
40
|
+
const knowledgeBaseResponse = yield getKnowledgeBaseResponse(botContext, sourceIds, instructions, messageId, memoryLength);
|
|
41
|
+
yield trackKnowledgeBase(knowledgeBaseResponse, botContext, knowledgeBaseContent);
|
|
42
|
+
if (!knowledgeBaseResponse.hasKnowledge ||
|
|
43
|
+
!knowledgeBaseResponse.isFaithful) {
|
|
44
|
+
return undefined;
|
|
45
|
+
}
|
|
46
|
+
return updateContentsWithResponse(contents, knowledgeBaseResponse);
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
function updateContentsWithResponse(contents, response) {
|
|
50
|
+
return contents.map(content => {
|
|
51
|
+
if (content instanceof FlowKnowledgeBase) {
|
|
52
|
+
content.text = response.answer;
|
|
53
|
+
content.inferenceId = response.inferenceId;
|
|
54
|
+
}
|
|
55
|
+
return content;
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
function trackKnowledgeBase(response, botContext, knowledgeBaseContent) {
|
|
59
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
60
|
+
var _a, _b;
|
|
61
|
+
const getKnowledgeFailReason = () => {
|
|
62
|
+
let knowledgebaseFailReason;
|
|
63
|
+
if (!response.isFaithful) {
|
|
64
|
+
knowledgebaseFailReason = KnowledgebaseFailReason.Hallucination;
|
|
65
|
+
}
|
|
66
|
+
if (!response.hasKnowledge) {
|
|
67
|
+
knowledgebaseFailReason = KnowledgebaseFailReason.NoKnowledge;
|
|
68
|
+
}
|
|
69
|
+
return knowledgebaseFailReason;
|
|
70
|
+
};
|
|
71
|
+
const { flowId, flowName, flowNodeId, flowNodeContentId } = yield getCommonFlowContentEventArgsForContentId(botContext, knowledgeBaseContent.id);
|
|
72
|
+
const event = {
|
|
73
|
+
action: EventAction.Knowledgebase,
|
|
74
|
+
knowledgebaseInferenceId: response.inferenceId,
|
|
75
|
+
knowledgebaseFailReason: getKnowledgeFailReason(),
|
|
76
|
+
knowledgebaseSourcesIds: knowledgeBaseContent.sourcesData.map(source => source.id),
|
|
77
|
+
knowledgebaseChunksIds: response.chunkIds,
|
|
78
|
+
knowledgebaseMessageId: (_a = botContext.input.messageId) !== null && _a !== void 0 ? _a : '',
|
|
79
|
+
userInput: (_b = botContext.input.text) !== null && _b !== void 0 ? _b : '',
|
|
80
|
+
flowThreadId: botContext.session.flowThreadId,
|
|
81
|
+
flowId,
|
|
82
|
+
flowName,
|
|
83
|
+
flowNodeId,
|
|
84
|
+
flowNodeContentId,
|
|
85
|
+
};
|
|
86
|
+
const { action } = event, eventArgs = __rest(event, ["action"]);
|
|
87
|
+
yield trackEvent(botContext, action, eventArgs);
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
//# sourceMappingURL=knowledge-bases.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"knowledge-bases.js","sourceRoot":"","sources":["../../../../../../../libs/botonic/plugin-flow-builder/src/lib/action/knowledge-bases.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { __awaiter } from "tslib";
|
|
2
|
+
import { storeCaseRating } from '@botonic/core';
|
|
3
|
+
import { EventAction } from '@botonic/shared';
|
|
4
|
+
import { v7 as uuidv7 } from 'uuid';
|
|
5
|
+
import { AGENT_RATING_PAYLOAD, PUSH_FLOW_PAYLOAD, SEPARATOR, } from '../constants';
|
|
6
|
+
import { trackEvent } from '../tracking';
|
|
7
|
+
export function getContentsByPayload(fbContext) {
|
|
8
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
9
|
+
var _a;
|
|
10
|
+
const { cmsApi, flowBuilderPlugin, botContext, contentID } = fbContext;
|
|
11
|
+
const payload = botContext.input.payload;
|
|
12
|
+
if (payload === null || payload === void 0 ? void 0 : payload.startsWith(AGENT_RATING_PAYLOAD)) {
|
|
13
|
+
return yield resolveRatingPayload(fbContext);
|
|
14
|
+
}
|
|
15
|
+
if (payload === null || payload === void 0 ? void 0 : payload.startsWith(PUSH_FLOW_PAYLOAD)) {
|
|
16
|
+
return yield resolvePushFlowPayload(fbContext);
|
|
17
|
+
}
|
|
18
|
+
const id = contentID ? (_a = cmsApi.getNodeByContentID(contentID)) === null || _a === void 0 ? void 0 : _a.id : payload;
|
|
19
|
+
const targetNode = id ? cmsApi.getNodeById(id) : undefined;
|
|
20
|
+
if (targetNode) {
|
|
21
|
+
return yield flowBuilderPlugin.getContentsByNode(targetNode);
|
|
22
|
+
}
|
|
23
|
+
return [];
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
function resolveRatingPayload(fbContext) {
|
|
27
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
28
|
+
const { cmsApi, flowBuilderPlugin, botContext } = fbContext;
|
|
29
|
+
const payload = botContext.input.payload;
|
|
30
|
+
if (!payload) {
|
|
31
|
+
return [];
|
|
32
|
+
}
|
|
33
|
+
const { target, text, value, possibleOptions, possibleValues } = flowBuilderPlugin.getRatingSubmittedInfo(payload);
|
|
34
|
+
if (botContext.session.hubtypeCaseId) {
|
|
35
|
+
const event = {
|
|
36
|
+
action: EventAction.FeedbackCase,
|
|
37
|
+
feedbackTargetId: botContext.session.hubtypeCaseId,
|
|
38
|
+
feedbackGroupId: uuidv7().toString(),
|
|
39
|
+
possibleOptions,
|
|
40
|
+
possibleValues,
|
|
41
|
+
option: text,
|
|
42
|
+
value,
|
|
43
|
+
};
|
|
44
|
+
yield storeCaseRating(botContext.session, value);
|
|
45
|
+
yield trackEvent(botContext, EventAction.FeedbackCase, event);
|
|
46
|
+
}
|
|
47
|
+
const targetNode = target
|
|
48
|
+
? cmsApi.getNodeById(target.id)
|
|
49
|
+
: undefined;
|
|
50
|
+
if (targetNode) {
|
|
51
|
+
return yield flowBuilderPlugin.getContentsByNode(targetNode);
|
|
52
|
+
}
|
|
53
|
+
return [];
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
function resolvePushFlowPayload(fbContext) {
|
|
57
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
58
|
+
const { cmsApi, flowBuilderPlugin, botContext } = fbContext;
|
|
59
|
+
if (!botContext.input.payload) {
|
|
60
|
+
return [];
|
|
61
|
+
}
|
|
62
|
+
const parts = botContext.input.payload.split(SEPARATOR);
|
|
63
|
+
const pushFlowId = parts.length > 1 ? parts[1] : '';
|
|
64
|
+
if (!pushFlowId) {
|
|
65
|
+
return [];
|
|
66
|
+
}
|
|
67
|
+
try {
|
|
68
|
+
const pushFlowNode = cmsApi.getNodeByCampaignId(pushFlowId);
|
|
69
|
+
if (!pushFlowNode) {
|
|
70
|
+
return [];
|
|
71
|
+
}
|
|
72
|
+
return yield flowBuilderPlugin.getContentsByNode(pushFlowNode);
|
|
73
|
+
}
|
|
74
|
+
catch (_a) {
|
|
75
|
+
// Campaign not found - return empty to trigger fallback
|
|
76
|
+
return [];
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=payload.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"payload.js","sourceRoot":"","sources":["../../../../../../../libs/botonic/plugin-flow-builder/src/lib/action/payload.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,10 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
3
|
-
import { type FlowBuilderApiOptions } from './types';
|
|
1
|
+
import { BotContext } from '@botonic/shared';
|
|
2
|
+
import { HtBotActionNode, HtCaptureUserInputNode, HtFlowBuilderData, HtKeywordNode, HtNodeComponent, HtNodeLink, HtNodeWithContent, HtRatingButton, HtRatingNode, HtSmartIntentNode } from './content-fields/hubtype-fields/index';
|
|
4
3
|
export declare class FlowBuilderApi {
|
|
5
|
-
|
|
6
|
-
flowUrl: string;
|
|
4
|
+
botContext: BotContext;
|
|
7
5
|
flow: HtFlowBuilderData;
|
|
8
|
-
request: PluginPreRequest;
|
|
9
6
|
private constructor();
|
|
10
|
-
static create(
|
|
11
|
-
private getFlow;
|
|
12
|
-
private updateSessionWithUserInfo;
|
|
7
|
+
static create(botContext: BotContext, localFlow?: HtFlowBuilderData): Promise<FlowBuilderApi>;
|
|
13
8
|
getNodeByFlowId(id: string): HtNodeWithContent;
|
|
14
9
|
getNodeByCampaignId<T extends HtNodeComponent>(id: string): T;
|
|
15
10
|
getNodeById<T extends HtNodeComponent>(id: string): T;
|
|
@@ -17,31 +12,25 @@ export declare class FlowBuilderApi {
|
|
|
17
12
|
getRatingButtonById(ratingNode: HtRatingNode, id: string): HtRatingButton;
|
|
18
13
|
getNodeByContentID(contentID: string): HtNodeComponent;
|
|
19
14
|
getStartNode(): HtNodeWithContent;
|
|
15
|
+
getStartNodeAiAgentFlow(): HtNodeWithContent | undefined;
|
|
20
16
|
getFallbackNode(alternate: boolean): HtNodeWithContent;
|
|
21
|
-
getKnowledgeBaseConfig(): {
|
|
22
|
-
followup?: HtNodeLink;
|
|
23
|
-
isActive: boolean;
|
|
24
|
-
} | undefined;
|
|
25
17
|
getSmartIntentNodes(): HtSmartIntentNode[];
|
|
26
18
|
getKeywordNodes(): HtKeywordNode[];
|
|
27
19
|
getPayload(target?: HtNodeLink): string | undefined;
|
|
28
20
|
isBotAction(id: string): boolean;
|
|
29
21
|
private isUUID;
|
|
30
|
-
isGoToFlow(id: string): boolean;
|
|
31
22
|
createPayloadWithParams(botActionNode: HtBotActionNode): string;
|
|
32
23
|
private getFollowUpContentID;
|
|
33
24
|
getFlowName(flowId: string): string;
|
|
34
25
|
getCampaignFlowName(campaignId: string): string;
|
|
35
26
|
getStartNodeKnowledgeBaseFlow(): HtNodeWithContent | undefined;
|
|
36
|
-
getStartNodeAiAgentFlow(): HtNodeWithContent | undefined;
|
|
37
27
|
isKnowledgeBaseEnabled(): boolean;
|
|
38
28
|
isAiAgentEnabled(): boolean;
|
|
39
|
-
getWebviewById(id: string): HtFlowWebview | undefined;
|
|
40
29
|
shouldCaptureUserInput(): boolean;
|
|
41
30
|
getCaptureUserInputId(): string | undefined;
|
|
42
|
-
setCaptureUserInputId(id: string): void
|
|
43
|
-
removeCaptureUserInputId(): void
|
|
44
|
-
setUserExtraDataVariable(key: string, value: string): void
|
|
31
|
+
setCaptureUserInputId(id: string): Promise<void>;
|
|
32
|
+
removeCaptureUserInputId(): Promise<void>;
|
|
33
|
+
setUserExtraDataVariable(key: string, value: string): Promise<void>;
|
|
45
34
|
getCaptureUserInputNode(): HtCaptureUserInputNode | undefined;
|
|
46
35
|
getResolvedLocale(): string;
|
|
47
36
|
private resolveAsLocale;
|