@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
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
## 2.23.1 (2026-03-23)
|
|
2
|
+
|
|
3
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
4
|
+
|
|
5
|
+
## 2.22.1 (2026-03-19)
|
|
6
|
+
|
|
7
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
8
|
+
|
|
9
|
+
## 2.22.0 (2026-03-16)
|
|
10
|
+
|
|
11
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
12
|
+
|
|
13
|
+
## 2.21.0 (2026-03-16)
|
|
14
|
+
|
|
15
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
16
|
+
|
|
17
|
+
## 2.20.0 (2026-03-13)
|
|
18
|
+
|
|
19
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
20
|
+
|
|
21
|
+
## 2.19.0 (2026-03-12)
|
|
22
|
+
|
|
23
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
24
|
+
|
|
25
|
+
## 2.18.0 (2026-03-04)
|
|
26
|
+
|
|
27
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
28
|
+
|
|
29
|
+
## 2.17.0 (2026-03-02)
|
|
30
|
+
|
|
31
|
+
### 🚀 Features
|
|
32
|
+
|
|
33
|
+
- botonic working with v2 input format ([#660](https://github.com/metis-ai/hubtype-product/pull/660))
|
|
34
|
+
|
|
35
|
+
### ❤️ Thank You
|
|
36
|
+
|
|
37
|
+
- Marc Rabat @vanbasten17
|
|
38
|
+
|
|
39
|
+
## 2.16.0 (2026-02-23)
|
|
40
|
+
|
|
41
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
42
|
+
|
|
43
|
+
## 2.15.0 (2026-02-13)
|
|
44
|
+
|
|
45
|
+
### 🚀 Features
|
|
46
|
+
|
|
47
|
+
- update types for whatsapp template ([#658](https://github.com/metis-ai/hubtype-product/pull/658))
|
|
48
|
+
- enable new features for BotonicV2 #BLT-2174 ([#649](https://github.com/metis-ai/hubtype-product/pull/649))
|
|
49
|
+
- plugin-flow-builder add whatsapp interactive media carousel #BLT-2173 ([#635](https://github.com/metis-ai/hubtype-product/pull/635))
|
|
50
|
+
|
|
51
|
+
### ❤️ Thank You
|
|
52
|
+
|
|
53
|
+
- Oriol Raventós @Iru89
|
|
54
|
+
|
|
55
|
+
## 2.14.0 (2026-02-05)
|
|
56
|
+
|
|
57
|
+
### 🩹 Fixes
|
|
58
|
+
|
|
59
|
+
- **botonic:** align tsconfig outDir with Nx outputPath to fix TS6305 errors ([#594](https://github.com/metis-ai/hubtype-product/pull/594))
|
|
60
|
+
|
|
61
|
+
### ❤️ Thank You
|
|
62
|
+
|
|
63
|
+
- Marc Rabat @vanbasten17
|
|
64
|
+
|
|
65
|
+
## 2.13.4 (2026-02-02)
|
|
66
|
+
|
|
67
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
68
|
+
|
|
69
|
+
## 2.13.3 (2026-01-30)
|
|
70
|
+
|
|
71
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
72
|
+
|
|
73
|
+
## 2.13.2 (2026-01-30)
|
|
74
|
+
|
|
75
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
76
|
+
|
|
77
|
+
## 2.13.1 (2026-01-30)
|
|
78
|
+
|
|
79
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
80
|
+
|
|
81
|
+
## 2.13.0 (2026-01-29)
|
|
82
|
+
|
|
83
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
84
|
+
|
|
85
|
+
## 2.12.0 (2026-01-28)
|
|
86
|
+
|
|
87
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
88
|
+
|
|
89
|
+
## 2.11.5 (2026-01-28)
|
|
90
|
+
|
|
91
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
92
|
+
|
|
93
|
+
## 2.11.4 (2026-01-28)
|
|
94
|
+
|
|
95
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
96
|
+
|
|
97
|
+
## 2.11.3 (2026-01-28)
|
|
98
|
+
|
|
99
|
+
### 🩹 Fixes
|
|
100
|
+
|
|
101
|
+
- update entrypoints to use .js and .d.ts extensions for module and types ([#552](https://github.com/metis-ai/hubtype-product/pull/552))
|
|
102
|
+
|
|
103
|
+
### ❤️ Thank You
|
|
104
|
+
|
|
105
|
+
- David Hidalgo @Davidhidalgo
|
|
106
|
+
|
|
107
|
+
## 2.11.2 (2026-01-21)
|
|
108
|
+
|
|
109
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
110
|
+
|
|
111
|
+
## 2.11.1 (2026-01-21)
|
|
112
|
+
|
|
113
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
114
|
+
|
|
115
|
+
## 2.11.0 (2026-01-21)
|
|
116
|
+
|
|
117
|
+
### 🚀 Features
|
|
118
|
+
|
|
119
|
+
- use webview contents hook in botonic webviews package #BLT-2039 ([#510](https://github.com/metis-ai/hubtype-product/pull/510))
|
|
120
|
+
|
|
121
|
+
### ❤️ Thank You
|
|
122
|
+
|
|
123
|
+
- Marc Rabat @vanbasten17
|
|
124
|
+
|
|
125
|
+
## 2.10.1 (2026-01-19)
|
|
126
|
+
|
|
127
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
128
|
+
|
|
129
|
+
## 2.10.0 (2026-01-18)
|
|
130
|
+
|
|
131
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
132
|
+
|
|
133
|
+
## 2.9.1 (2026-01-17)
|
|
134
|
+
|
|
135
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
136
|
+
|
|
137
|
+
## 2.9.0 (2026-01-17)
|
|
138
|
+
|
|
139
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
140
|
+
|
|
141
|
+
## 2.8.1 (2026-01-16)
|
|
142
|
+
|
|
143
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
144
|
+
|
|
145
|
+
## 2.8.0 (2026-01-16)
|
|
146
|
+
|
|
147
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
148
|
+
|
|
149
|
+
## 2.7.1 (2026-01-16)
|
|
150
|
+
|
|
151
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
152
|
+
|
|
153
|
+
## 2.7.0 (2026-01-15)
|
|
154
|
+
|
|
155
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
156
|
+
|
|
157
|
+
## 2.6.0 (2025-12-09)
|
|
158
|
+
|
|
159
|
+
### 🚀 Features
|
|
160
|
+
|
|
161
|
+
- plugin-flow-builder enable SmartIntents and add tests ([#469](https://github.com/metis-ai/hubtype-product/pull/469))
|
|
162
|
+
|
|
163
|
+
### ❤️ Thank You
|
|
164
|
+
|
|
165
|
+
- Oriol Raventós @Iru89
|
|
166
|
+
|
|
167
|
+
## 2.5.0 (2025-12-09)
|
|
168
|
+
|
|
169
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
170
|
+
|
|
171
|
+
## 2.4.1 (2025-12-08)
|
|
172
|
+
|
|
173
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
174
|
+
|
|
175
|
+
## 2.4.0 (2025-12-05)
|
|
176
|
+
|
|
177
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
178
|
+
|
|
179
|
+
## 2.3.3 (2025-12-04)
|
|
180
|
+
|
|
181
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
182
|
+
|
|
183
|
+
## 2.3.2 (2025-12-04)
|
|
184
|
+
|
|
185
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
186
|
+
|
|
187
|
+
## 2.3.1 (2025-12-04)
|
|
188
|
+
|
|
189
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
190
|
+
|
|
191
|
+
## 2.3.0 (2025-12-04)
|
|
192
|
+
|
|
193
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
194
|
+
|
|
195
|
+
## 2.2.1 (2025-12-04)
|
|
196
|
+
|
|
197
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
|
198
|
+
|
|
199
|
+
## 2.2.0 (2025-12-04)
|
|
200
|
+
|
|
201
|
+
### 🚀 Features
|
|
202
|
+
|
|
203
|
+
- **plugin-flow-builder:** resolve buttons created by ai-agent ([#458](https://github.com/metis-ai/hubtype-product/pull/458))
|
|
204
|
+
- add support for all whatsapp outputs in domain, factories and whatsapp flow content fields ([#434](https://github.com/metis-ai/hubtype-product/pull/434))
|
|
205
|
+
- fine tuning botonic release #BLT-2010 ([#428](https://github.com/metis-ai/hubtype-product/pull/428))
|
|
206
|
+
|
|
207
|
+
### ❤️ Thank You
|
|
208
|
+
|
|
209
|
+
- David Hidalgo @Davidhidalgo
|
|
210
|
+
- Marc Rabat @vanbasten17
|
|
211
|
+
- Oriol Raventós @Iru89
|
|
212
|
+
|
|
213
|
+
## 2.1.0 (2025-12-02)
|
|
214
|
+
|
|
215
|
+
### 🚀 Features
|
|
216
|
+
|
|
217
|
+
- add support for all whatsapp outputs in domain, factories and whatsapp flow content fields ([#434](https://github.com/metis-ai/hubtype-product/pull/434))
|
|
218
|
+
- fine tuning botonic release #BLT-2010 ([#428](https://github.com/metis-ai/hubtype-product/pull/428))
|
|
219
|
+
|
|
220
|
+
### ❤️ Thank You
|
|
221
|
+
|
|
222
|
+
- David Hidalgo @Davidhidalgo
|
|
223
|
+
- Marc Rabat @vanbasten17
|
|
224
|
+
|
|
225
|
+
## 2.0.1-alpha.0 (2025-11-27)
|
|
226
|
+
|
|
227
|
+
This was a version bump only for @botonic/plugin-flow-builder to align it with other projects, there were no code changes.
|
package/README.md
CHANGED
|
@@ -1,279 +1,20 @@
|
|
|
1
|
-
#
|
|
1
|
+
# @botonic/plugin-flow-builder
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Botonic plugin for **Hubtype Flow Builder**: run and bridge flow-driven logic from bots on the **current** line.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
## Source and versions
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
| Line | npm | Source |
|
|
8
|
+
| ----------- | ----- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
9
|
+
| **Legacy** | `0.x` | [github.com/hubtype/botonic](https://github.com/hubtype/botonic) |
|
|
10
|
+
| **Current** | `2.x` | [github.com/hubtype/hubtype-product](https://github.com/hubtype/hubtype-product) · [`libs/botonic/plugin-flow-builder`](https://github.com/hubtype/hubtype-product/tree/main/libs/botonic/plugin-flow-builder) |
|
|
9
11
|
|
|
10
|
-
|
|
11
|
-
<img alt="Flow Builder" title="flow-builder" src="https://i.ibb.co/ySRjD4M/Pasted-image-20230426161548.png" width="550"/>
|
|
12
|
-
</p>
|
|
12
|
+
Use the **same major version** as `@botonic/core`. Configuration details are covered in the Botonic documentation shipped from hubtype-product (`nx serve botonic-docs`).
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
- Support for a wide variety of content types, including buttons, text, carousels, images, videos, and more.
|
|
17
|
-
|
|
18
|
-
- Custom functions to allow dynamic bot behavior, as for example checking the queue status or determine the channel (Whatsapp, Webchat, ...) from which the user is writing.
|
|
19
|
-
|
|
20
|
-
- Seamless transfer to a human agent.
|
|
21
|
-
|
|
22
|
-
- Artificial intelligence-based detection of keywords and user intent.
|
|
23
|
-
|
|
24
|
-
### Advantages
|
|
25
|
-
|
|
26
|
-
- **Ease of use**: Flow builders are designed to be user-friendly and intuitive, allowing even non-technical users to create and edit chatbot flows with ease.
|
|
27
|
-
|
|
28
|
-
- **Time-saving**: With a flow builder, you can quickly create and edit chatbot flows using drag-and-drop functionality, saving you time and effort compared to manually coding each interaction.
|
|
29
|
-
|
|
30
|
-
- **Visual representation**: Flow builders provide a visual representation of your chatbot flow, allowing you to easily see the overall structure and make adjustments as needed.
|
|
31
|
-
|
|
32
|
-
- **Flexibility**: Flow builders offer a range of customization options, allowing you to create chatbot flows tailored to your specific needs and use cases.
|
|
33
|
-
|
|
34
|
-
## Setup
|
|
35
|
-
|
|
36
|
-
### Create an account at Hubtype
|
|
37
|
-
|
|
38
|
-
1. Create an account at https://www.hubtype.com.
|
|
39
|
-
|
|
40
|
-
2. Once you have deployed your bots, in the [Bots](https://app.hubtype.com/bots) section you can access the flow builder by clicking on any of your bots and in the button that says:
|
|
41
|
-
|
|
42
|
-
<p align="center">
|
|
43
|
-
<img alt="Flow Builder button" title="flow-builder-button" src="https://i.ibb.co/ZJ2fMQN/Pasted-image-20230427115219.png" width="250"/>
|
|
44
|
-
</p>
|
|
45
|
-
|
|
46
|
-
### Install the Plugin
|
|
47
|
-
|
|
48
|
-
1. Install the plugin in your bot's project by running:
|
|
14
|
+
## Installation
|
|
49
15
|
|
|
50
16
|
```bash
|
|
17
|
+
pnpm add @botonic/plugin-flow-builder
|
|
18
|
+
# or
|
|
51
19
|
npm install @botonic/plugin-flow-builder
|
|
52
20
|
```
|
|
53
|
-
|
|
54
|
-
## Use
|
|
55
|
-
|
|
56
|
-
### Configuring the bot
|
|
57
|
-
|
|
58
|
-
1. Add the following code to your `plugins.js` file:
|
|
59
|
-
|
|
60
|
-
```ts
|
|
61
|
-
import * as hubtypeFlowBuilder from '@botonic/plugin-flow-builder'
|
|
62
|
-
|
|
63
|
-
const flowBuilderOptions = {
|
|
64
|
-
apiUrl: 'HUBTYPE_FLOW_BUILDER_URL',
|
|
65
|
-
jsonVersion: 'latest',
|
|
66
|
-
getAccessToken: () => 'HUBTYPE_FLOW_BUILDER_ACCESS_TOKEN', // Used locally,
|
|
67
|
-
getLocale: () => 'YOUR_LOCALE',
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
export const plugins = [
|
|
71
|
-
{
|
|
72
|
-
id: 'hubtypeFlowBuilder',
|
|
73
|
-
resolve: hubtypeFlowBuilder,
|
|
74
|
-
options: flowBuilderOptions,
|
|
75
|
-
},
|
|
76
|
-
]
|
|
77
|
-
```
|
|
78
|
-
|
|
79
|
-
By doing this, we are passing configuration parameters to the bot. This way we can pass parameters to the Plugin from outside. This gives us more flexibility when configuring the plugin.
|
|
80
|
-
|
|
81
|
-
Below are the parameters that we can pass to the plugin:
|
|
82
|
-
|
|
83
|
-
- `apiUrl`: This is the URL of the flow-builder API. The bot will automatically collect this URL, so in most cases, we don't have to pass it. It is used in cases where the Flow URL is in a testing environment.
|
|
84
|
-
|
|
85
|
-
- `jsonVersion`: This indicates which version of flow you want the bot to use. By default it will use the `latest` version which is what we want in production. We can set this to `draft` if we want the bot to use this content in a test environment.
|
|
86
|
-
|
|
87
|
-
- `flow`: In some situations, we may want to test a flow locally instead of using the Flow Builder service. To do this, we can define the flow and its corresponding tree of nodes in a JSON file and pass it to our plugin through this variable. By doing so, we can run and test our flow locally without relying on the external service.
|
|
88
|
-
|
|
89
|
-
- `customFunctions`: We are able to pass custom functions to the plugin by defining them in our code and then passing them as parameters. This allows us to extend the functionality of the plugin beyond its default capabilities and execute custom logic that is tailored to our specific needs. We can add custom functions in the frontend of the Flow Builder and pass them to the plugin through this variable.
|
|
90
|
-
|
|
91
|
-
- `getLocale`: We can pass a locale value to the plugin to specify which language our bot will use.
|
|
92
|
-
|
|
93
|
-
- `getAccessToken`: When our bot is deployed in Hubtype, the plugin will automatically retrieve the access token. However, when testing our bot locally, we need to pass the access token as a variable.
|
|
94
|
-
|
|
95
|
-
- `trackEvent`: Using this option we can get the events generated in the plugin and track them in the platform we want.
|
|
96
|
-
|
|
97
|
-
e.g. using @botonic/plugin-hubtype-analytics.
|
|
98
|
-
|
|
99
|
-
```ts
|
|
100
|
-
trackEvent: async (request: BotRequest, eventName, args) => {
|
|
101
|
-
const htEventProps = {
|
|
102
|
-
action: eventName as EventAction,
|
|
103
|
-
...args,
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
try {
|
|
107
|
-
await hubtypeAnalytics.trackEvent(request, htEventProps)
|
|
108
|
-
} catch (error: any) {
|
|
109
|
-
console.error(error)
|
|
110
|
-
}
|
|
111
|
-
},
|
|
112
|
-
```
|
|
113
|
-
|
|
114
|
-
- `getKnowledgeBaseResponse`: Using this option we can inject a function so that the bot can respond to the user using a knowledge base.
|
|
115
|
-
|
|
116
|
-
e.g using @botonic/plugin-knowledge-bases
|
|
117
|
-
|
|
118
|
-
```ts
|
|
119
|
-
getKnowledgeBaseResponse: async (
|
|
120
|
-
request: BotRequest,
|
|
121
|
-
userInput: string,
|
|
122
|
-
sources: string[]
|
|
123
|
-
) => {
|
|
124
|
-
try {
|
|
125
|
-
const knowledgeBasePlugin = request.plugins.knowledgeBases
|
|
126
|
-
const response = await knowledgeBasePlugin.getInference(
|
|
127
|
-
request.session,
|
|
128
|
-
userInput,
|
|
129
|
-
sources
|
|
130
|
-
)
|
|
131
|
-
return response
|
|
132
|
-
} catch (error) {
|
|
133
|
-
console.error(error)
|
|
134
|
-
return {
|
|
135
|
-
answer: '',
|
|
136
|
-
hasKnowledge: false,
|
|
137
|
-
sources: [],
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
},
|
|
141
|
-
```
|
|
142
|
-
|
|
143
|
-
- `getAiAgentResponse`: Using this option we can inject a function so that the bot can respond to the user using an AI agent with tools.
|
|
144
|
-
|
|
145
|
-
e.g using @botonic/plugin-ai-agents
|
|
146
|
-
|
|
147
|
-
```ts
|
|
148
|
-
getAiAgentResponse: async (
|
|
149
|
-
request: BotRequest,
|
|
150
|
-
aiAgentArgs: {
|
|
151
|
-
name: string
|
|
152
|
-
instructions: string
|
|
153
|
-
}
|
|
154
|
-
) => {
|
|
155
|
-
const aiAgentPlugin = request.plugins.aiAgent
|
|
156
|
-
const response = await aiAgentPlugin.getInference(request, aiAgentArgs)
|
|
157
|
-
return response
|
|
158
|
-
},
|
|
159
|
-
```
|
|
160
|
-
|
|
161
|
-
- `customRatingMessageEnabled`: To enable custom message rating in webchat you need to configure the plugin with this option to true and import from @botonic/react the CustomRatingMessage and add it in webchat/index.ts as a message.customTypes
|
|
162
|
-
|
|
163
|
-
2. Modify the `routes.ts` file, where routes map user inputs to actions which are in fact React Components:
|
|
164
|
-
|
|
165
|
-
```ts
|
|
166
|
-
import { Input, Session } from '@botonic/core'
|
|
167
|
-
import FlowBuilderAction from '@botonic/plugin-flow-builder/lib/esm/action'
|
|
168
|
-
|
|
169
|
-
type RouteRequest = { input: Input; session: Session }
|
|
170
|
-
export function routes(request: RouteRequest) {
|
|
171
|
-
return [
|
|
172
|
-
{
|
|
173
|
-
path: 'hubtype-flow-builder',
|
|
174
|
-
type: /.*/,
|
|
175
|
-
payload: /.*/,
|
|
176
|
-
action: FlowBuilderAction,
|
|
177
|
-
},
|
|
178
|
-
]
|
|
179
|
-
}
|
|
180
|
-
```
|
|
181
|
-
|
|
182
|
-
For personalized behavior, create an action in your bot. For other cases, let the plugin handle all actions.
|
|
183
|
-
|
|
184
|
-
## Webview Contents
|
|
185
|
-
|
|
186
|
-
It is possible to define contents for a webview in flow builder.
|
|
187
|
-
|
|
188
|
-
1. create a flow with the name webiew_my_new_webiview. This will create a new flow which currently only allows you to create text and images. Once created you can change the name.
|
|
189
|
-
|
|
190
|
-
2. In the webview code you can use the hook useWebviewContents to obtain these contents.
|
|
191
|
-
|
|
192
|
-
Define a mapContents object (key: ContentID of flow builder) to pass through the hook and get the same typed contents object but with the value of the contents.
|
|
193
|
-
e.g.
|
|
194
|
-
|
|
195
|
-
`webviews/flow-builder-webview-example/index.ts`
|
|
196
|
-
|
|
197
|
-
```ts
|
|
198
|
-
import {
|
|
199
|
-
createWebviewContentsContext,
|
|
200
|
-
FlowBuilderJSONVersion,
|
|
201
|
-
useWebviewContents,
|
|
202
|
-
} from '@botonic/plugin-flow-builder'
|
|
203
|
-
import { WebviewRequestContext } from '@botonic/react'
|
|
204
|
-
import React, { useContext, useState } from 'react'
|
|
205
|
-
|
|
206
|
-
import { Step1 } from './first-step'
|
|
207
|
-
import { Step2 } from './second-step'
|
|
208
|
-
|
|
209
|
-
const mapContents = {
|
|
210
|
-
textIntro: 'TEXT_INTRO',
|
|
211
|
-
image2: 'IMAGE_2',
|
|
212
|
-
headerWebview: 'HEADER_WEBVIEW',
|
|
213
|
-
image: 'IMAGE',
|
|
214
|
-
}
|
|
215
|
-
|
|
216
|
-
export const MyWebviewContentsContext = createWebviewContentsContext<typeof mapContents>()
|
|
217
|
-
|
|
218
|
-
export const FlowBuilderWebviewExample = () => {
|
|
219
|
-
const webviewRequestContext = useContext(WebviewRequestContext)
|
|
220
|
-
|
|
221
|
-
const { isLoading, error, webviewContentsContext } = useWebviewContents({
|
|
222
|
-
apiUrl: FLOW_BUILDER_API_URL,
|
|
223
|
-
version: FlowBuilderJSONVersion.LATEST,
|
|
224
|
-
orgId: webviewRequestContext.session.organization_id,
|
|
225
|
-
botId: webviewRequestContext.session.bot.id,
|
|
226
|
-
webviewId: WEBVIEW_ID,
|
|
227
|
-
locale: 'es',
|
|
228
|
-
mapContents,
|
|
229
|
-
})
|
|
230
|
-
|
|
231
|
-
const [stepNum, setStepNum] = useState(0)
|
|
232
|
-
const steps = [<Step1 />, <Step2 />]
|
|
233
|
-
|
|
234
|
-
const handleCloseWebview = () => {
|
|
235
|
-
webviewRequestContext.closeWebview()
|
|
236
|
-
}
|
|
237
|
-
|
|
238
|
-
if (error) {
|
|
239
|
-
return <div>Error</div>
|
|
240
|
-
}
|
|
241
|
-
|
|
242
|
-
return (
|
|
243
|
-
<MyWebviewContentsContext.Provider value={webviewContentsContext}>
|
|
244
|
-
<div>
|
|
245
|
-
<div>
|
|
246
|
-
<h1>FlowBuilderWebview</h1>
|
|
247
|
-
<button onClick={handleCloseWebview}>Close</button>
|
|
248
|
-
</div>
|
|
249
|
-
{isLoading ? (
|
|
250
|
-
<div>Loading...</div>
|
|
251
|
-
) : (
|
|
252
|
-
<Step1 />
|
|
253
|
-
)}
|
|
254
|
-
</div>
|
|
255
|
-
</MyWebviewContentsContext.Provider>
|
|
256
|
-
)
|
|
257
|
-
}
|
|
258
|
-
```
|
|
259
|
-
|
|
260
|
-
In any component within the webview you can use the contents from the context
|
|
261
|
-
|
|
262
|
-
`webviews/flow-builder-webview-example/first-step.ts`
|
|
263
|
-
|
|
264
|
-
```ts
|
|
265
|
-
import React, { useContext } from 'react'
|
|
266
|
-
|
|
267
|
-
import { MyWebviewContentsContext } from './index'
|
|
268
|
-
|
|
269
|
-
export const Step1 = () => {
|
|
270
|
-
const { contents } = useContext(MyWebviewContentsContext)
|
|
271
|
-
|
|
272
|
-
return (
|
|
273
|
-
<div>
|
|
274
|
-
<p>{contents.headerWebview}</p>
|
|
275
|
-
<img src={contents.image} />
|
|
276
|
-
</div>
|
|
277
|
-
)
|
|
278
|
-
}
|
|
279
|
-
```
|
package/package.json
CHANGED
|
@@ -1,50 +1,26 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@botonic/plugin-flow-builder",
|
|
3
|
-
"version": "
|
|
4
|
-
"
|
|
5
|
-
"module": "./
|
|
6
|
-
"
|
|
7
|
-
"scripts": {
|
|
8
|
-
"build": "rm -rf lib && ../../node_modules/.bin/tsc -p tsconfig.json && ../../node_modules/.bin/tsc -p tsconfig.esm.json",
|
|
9
|
-
"build:watch": "npm run build -- --watch",
|
|
10
|
-
"test": "../../node_modules/.bin/jest --coverage",
|
|
11
|
-
"cloc": "../../scripts/qa/cloc-package.sh .",
|
|
12
|
-
"prepublishOnly": "rm -rf lib && npm i && npm run build",
|
|
13
|
-
"lint": "biome check --write src/ tests/",
|
|
14
|
-
"lint:check": "biome check src/ tests/",
|
|
15
|
-
"format": "biome format --write src/ tests/"
|
|
16
|
-
},
|
|
3
|
+
"version": "2.23.1",
|
|
4
|
+
"type": "module",
|
|
5
|
+
"module": "./src/index.js",
|
|
6
|
+
"types": "./src/index.d.ts",
|
|
17
7
|
"dependencies": {
|
|
18
|
-
"
|
|
19
|
-
"
|
|
20
|
-
"
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
"type": "git",
|
|
24
|
-
"url": "git+https://github.com/hubtype/botonic.git"
|
|
8
|
+
"tslib": "^2.3.0",
|
|
9
|
+
"uuid": "^11.1.0",
|
|
10
|
+
"vitest": "^4.0.15",
|
|
11
|
+
"@botonic/shared": "2.23.1",
|
|
12
|
+
"@botonic/core": "2.23.1"
|
|
25
13
|
},
|
|
26
|
-
"
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
"README.md"
|
|
14
|
+
"references": [
|
|
15
|
+
{
|
|
16
|
+
"path": "../core/tsconfig.lib.json"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"path": "../shared/tsconfig.lib.json"
|
|
20
|
+
}
|
|
34
21
|
],
|
|
35
|
-
"
|
|
36
|
-
"
|
|
37
|
-
"npm": ">=10.0.0"
|
|
22
|
+
"publishConfig": {
|
|
23
|
+
"access": "public"
|
|
38
24
|
},
|
|
39
|
-
"
|
|
40
|
-
|
|
41
|
-
"chatbot",
|
|
42
|
-
"flow-builder",
|
|
43
|
-
"conversational-app",
|
|
44
|
-
"conversational-ui",
|
|
45
|
-
"javascript"
|
|
46
|
-
],
|
|
47
|
-
"devDependencies": {
|
|
48
|
-
"@types/uuid": "^10.0.0"
|
|
49
|
-
}
|
|
50
|
-
}
|
|
25
|
+
"main": "./src/index.js"
|
|
26
|
+
}
|
package/src/index.d.ts
ADDED
package/src/index.js
ADDED
package/src/index.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/botonic/plugin-flow-builder/src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { __awaiter, __rest } from "tslib";
|
|
2
|
+
import { EventAction, } from '@botonic/shared';
|
|
3
|
+
import { FlowAiAgent } from '../content-fields';
|
|
4
|
+
import { getFlowBuilderPlugin } from '../helpers';
|
|
5
|
+
import { trackEvent } from '../tracking';
|
|
6
|
+
export function getContentsByAiAgent(_a) {
|
|
7
|
+
return __awaiter(this, arguments, void 0, function* ({ cmsApi, flowBuilderPlugin, botContext: context, }) {
|
|
8
|
+
var _b, _c, _d, _e;
|
|
9
|
+
const startNodeAiAgentFlow = cmsApi.getStartNodeAiAgentFlow();
|
|
10
|
+
const isAiAgentEnabled = cmsApi.isAiAgentEnabled();
|
|
11
|
+
if (!startNodeAiAgentFlow || !isAiAgentEnabled) {
|
|
12
|
+
return [];
|
|
13
|
+
}
|
|
14
|
+
const contents = yield flowBuilderPlugin.getContentsByNode(startNodeAiAgentFlow);
|
|
15
|
+
const aiAgentContent = contents.find(content => content instanceof FlowAiAgent);
|
|
16
|
+
if (!aiAgentContent) {
|
|
17
|
+
return [];
|
|
18
|
+
}
|
|
19
|
+
const activeInputGuardrailRules = ((_c = (_b = aiAgentContent.inputGuardrailRules) === null || _b === void 0 ? void 0 : _b.filter(rule => rule.is_active)) === null || _c === void 0 ? void 0 : _c.map(rule => ({
|
|
20
|
+
name: rule.name,
|
|
21
|
+
description: rule.description,
|
|
22
|
+
}))) || [];
|
|
23
|
+
const aiAgentResponse = yield ((_d = flowBuilderPlugin.getAiAgentResponse) === null || _d === void 0 ? void 0 : _d.call(flowBuilderPlugin, context, {
|
|
24
|
+
name: aiAgentContent.name,
|
|
25
|
+
instructions: aiAgentContent.instructions,
|
|
26
|
+
activeTools: aiAgentContent.activeTools,
|
|
27
|
+
inputGuardrailRules: activeInputGuardrailRules,
|
|
28
|
+
sourceIds: (_e = aiAgentContent.sources) === null || _e === void 0 ? void 0 : _e.map(source => source.id),
|
|
29
|
+
}));
|
|
30
|
+
if (!aiAgentResponse) {
|
|
31
|
+
return [];
|
|
32
|
+
}
|
|
33
|
+
yield trackAiAgentResponse(aiAgentResponse, context, aiAgentContent);
|
|
34
|
+
if (aiAgentResponse.exit) {
|
|
35
|
+
return [];
|
|
36
|
+
}
|
|
37
|
+
aiAgentContent.responses = aiAgentResponse.messages;
|
|
38
|
+
return contents;
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
function trackAiAgentResponse(aiAgentResponse, botContext, aiAgentContent) {
|
|
42
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
43
|
+
var _a, _b, _c, _d, _e;
|
|
44
|
+
const flowBuilderPlugin = getFlowBuilderPlugin(botContext.plugins);
|
|
45
|
+
const flowId = flowBuilderPlugin.cmsApi.getNodeById(aiAgentContent.id).flow_id;
|
|
46
|
+
const flowName = flowBuilderPlugin.getFlowName(flowId);
|
|
47
|
+
const event = {
|
|
48
|
+
action: EventAction.AiAgent,
|
|
49
|
+
flowThreadId: botContext.session.flowThreadId,
|
|
50
|
+
flowId: flowId,
|
|
51
|
+
flowName: flowName,
|
|
52
|
+
flowNodeId: aiAgentContent.id,
|
|
53
|
+
flowNodeContentId: aiAgentContent.name,
|
|
54
|
+
flowNodeIsMeaningful: true,
|
|
55
|
+
toolsExecuted: (_a = aiAgentResponse === null || aiAgentResponse === void 0 ? void 0 : aiAgentResponse.toolsExecuted) !== null && _a !== void 0 ? _a : [],
|
|
56
|
+
memoryLength: (_b = aiAgentResponse === null || aiAgentResponse === void 0 ? void 0 : aiAgentResponse.memoryLength) !== null && _b !== void 0 ? _b : 0,
|
|
57
|
+
inputMessageId: (_c = botContext.input.messageId) !== null && _c !== void 0 ? _c : '',
|
|
58
|
+
exit: (_d = aiAgentResponse === null || aiAgentResponse === void 0 ? void 0 : aiAgentResponse.exit) !== null && _d !== void 0 ? _d : true,
|
|
59
|
+
inputGuardrailsTriggered: (_e = aiAgentResponse === null || aiAgentResponse === void 0 ? void 0 : aiAgentResponse.inputGuardrailsTriggered) !== null && _e !== void 0 ? _e : [],
|
|
60
|
+
outputGuardrailsTriggered: [], //aiAgentResponse.outputGuardrailsTriggered,
|
|
61
|
+
error: aiAgentResponse.error,
|
|
62
|
+
};
|
|
63
|
+
const { action } = event, eventArgs = __rest(event, ["action"]);
|
|
64
|
+
yield trackEvent(botContext, EventAction.AiAgent, eventArgs);
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=ai-agent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-agent.js","sourceRoot":"","sources":["../../../../../../../libs/botonic/plugin-flow-builder/src/lib/action/ai-agent.ts"],"names":[],"mappings":";AAAA,OAAO,EAEL,WAAW,GAIZ,MAAM,iBAAiB,CAAA;AAExB,OAAO,EAAE,WAAW,EAAe,MAAM,mBAAmB,CAAA;AAE5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAGxC,MAAM,UAAgB,oBAAoB;yDAAC,EACzC,MAAM,EACN,iBAAiB,EACjB,UAAU,EAAE,OAAO,GACA;;QACnB,MAAM,oBAAoB,GAAG,MAAM,CAAC,uBAAuB,EAAE,CAAA;QAC7D,MAAM,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,EAAE,CAAA;QAClD,IAAI,CAAC,oBAAoB,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC/C,OAAO,EAAE,CAAA;QACX,CAAC;QAED,MAAM,QAAQ,GACZ,MAAM,iBAAiB,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,CAAA;QAEjE,MAAM,cAAc,GAAG,QAAQ,CAAC,IAAI,CAClC,OAAO,CAAC,EAAE,CAAC,OAAO,YAAY,WAAW,CAC3B,CAAA;QAEhB,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,OAAO,EAAE,CAAA;QACX,CAAC;QAED,MAAM,yBAAyB,GAC7B,CAAA,MAAA,MAAA,cAAc,CAAC,mBAAmB,0CAC9B,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,0CAC9B,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACb,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW,EAAE,IAAI,CAAC,WAAW;SAC9B,CAAC,CAAC,KAAI,EAAE,CAAA;QAEb,MAAM,eAAe,GAAG,MAAM,CAAA,MAAA,iBAAiB,CAAC,kBAAkB,kEAChE,OAAO,EACP;YACE,IAAI,EAAE,cAAc,CAAC,IAAI;YACzB,YAAY,EAAE,cAAc,CAAC,YAAY;YACzC,WAAW,EAAE,cAAc,CAAC,WAAW;YACvC,mBAAmB,EAAE,yBAAyB;YAC9C,SAAS,EAAE,MAAA,cAAc,CAAC,OAAO,0CAAE,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;SAC5D,CACF,CAAA,CAAA;QAED,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,OAAO,EAAE,CAAA;QACX,CAAC;QACD,MAAM,oBAAoB,CAAC,eAAe,EAAE,OAAO,EAAE,cAAc,CAAC,CAAA;QAEpE,IAAI,eAAe,CAAC,IAAI,EAAE,CAAC;YACzB,OAAO,EAAE,CAAA;QACX,CAAC;QAED,cAAc,CAAC,SAAS,GAAG,eAAe,CAAC,QAAQ,CAAA;QAEnD,OAAO,QAAQ,CAAA;IACjB,CAAC;CAAA;AAED,SAAe,oBAAoB,CACjC,eAAkC,EAClC,UAAsB,EACtB,cAA2B;;;QAE3B,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;QAClE,MAAM,MAAM,GAAG,iBAAiB,CAAC,MAAM,CAAC,WAAW,CACjD,cAAc,CAAC,EAAE,CAClB,CAAC,OAAO,CAAA;QACT,MAAM,QAAQ,GAAG,iBAAiB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;QAEtD,MAAM,KAAK,GAAiB;YAC1B,MAAM,EAAE,WAAW,CAAC,OAAO;YAC3B,YAAY,EAAE,UAAU,CAAC,OAAO,CAAC,YAAa;YAC9C,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,QAAQ;YAClB,UAAU,EAAE,cAAc,CAAC,EAAE;YAC7B,iBAAiB,EAAE,cAAc,CAAC,IAAI;YACtC,oBAAoB,EAAE,IAAI;YAC1B,aAAa,EAAE,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,aAAa,mCAAI,EAAE;YACnD,YAAY,EAAE,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,YAAY,mCAAI,CAAC;YAChD,cAAc,EAAE,MAAA,UAAU,CAAC,KAAK,CAAC,SAAS,mCAAI,EAAE;YAChD,IAAI,EAAE,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,IAAI,mCAAI,IAAI;YACnC,wBAAwB,EAAE,MAAA,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,wBAAwB,mCAAI,EAAE;YACzE,yBAAyB,EAAE,EAAE,EAAE,4CAA4C;YAC3E,KAAK,EAAE,eAAe,CAAC,KAAK;SAC7B,CAAA;QACD,MAAM,EAAE,MAAM,KAAmB,KAAK,EAAnB,SAAS,UAAK,KAAK,EAAhC,UAAwB,CAAQ,CAAA;QAEtC,MAAM,UAAU,CAAC,UAAU,EAAE,WAAW,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;IAC9D,CAAC;CAAA"}
|