@bikdotai/bik-component-library 0.0.817-beta.6 → 0.0.817-beta.7
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/dist/cjs/assets/icons/ActiveChecklistIcon.js +1 -1
- package/dist/cjs/assets/icons/ActiveChecklistIcon.js.map +1 -1
- package/dist/cjs/assets/icons/CheckIndicatorIcon.js +1 -1
- package/dist/cjs/assets/icons/CheckIndicatorIcon.js.map +1 -1
- package/dist/cjs/assets/icons/CompletedChecklistIcon.js +1 -1
- package/dist/cjs/assets/icons/CompletedChecklistIcon.js.map +1 -1
- package/dist/cjs/assets/icons/CustomiseIcon.js +1 -1
- package/dist/cjs/assets/icons/CustomiseIcon.js.map +1 -1
- package/dist/cjs/assets/icons/DocsIcon.js +1 -1
- package/dist/cjs/assets/icons/DocsIcon.js.map +1 -1
- package/dist/cjs/assets/icons/DoubtIcon.js +1 -1
- package/dist/cjs/assets/icons/DoubtIcon.js.map +1 -1
- package/dist/cjs/assets/icons/EditLabel.js +1 -1
- package/dist/cjs/assets/icons/EditLabel.js.map +1 -1
- package/dist/cjs/assets/icons/EnableIcon.js +1 -1
- package/dist/cjs/assets/icons/EnableIcon.js.map +1 -1
- package/dist/cjs/assets/icons/GoLiveIcon.js +1 -1
- package/dist/cjs/assets/icons/GoLiveIcon.js.map +1 -1
- package/dist/cjs/assets/icons/HeadsetIcon.js +1 -1
- package/dist/cjs/assets/icons/HeadsetIcon.js.map +1 -1
- package/dist/cjs/assets/icons/InactiveChecklistIcon.js +1 -1
- package/dist/cjs/assets/icons/InactiveChecklistIcon.js.map +1 -1
- package/dist/cjs/assets/icons/ListChecksIcon.js +1 -1
- package/dist/cjs/assets/icons/ListChecksIcon.js.map +1 -1
- package/dist/cjs/assets/icons/MarketingIcon.js +1 -1
- package/dist/cjs/assets/icons/MarketingIcon.js.map +1 -1
- package/dist/cjs/assets/icons/NotesIcon.js +1 -1
- package/dist/cjs/assets/icons/NotesIcon.js.map +1 -1
- package/dist/cjs/assets/icons/NudgesIcon.js +1 -1
- package/dist/cjs/assets/icons/NudgesIcon.js.map +1 -1
- package/dist/cjs/assets/icons/OnboardingLogo.js +1 -1
- package/dist/cjs/assets/icons/OnboardingLogo.js.map +1 -1
- package/dist/cjs/assets/icons/OrderTrackingIcon.js +1 -1
- package/dist/cjs/assets/icons/OrderTrackingIcon.js.map +1 -1
- package/dist/cjs/assets/icons/PlusIcon.js +1 -1
- package/dist/cjs/assets/icons/PlusIcon.js.map +1 -1
- package/dist/cjs/assets/icons/ProgressBadgeIcon.js +1 -1
- package/dist/cjs/assets/icons/ProgressBadgeIcon.js.map +1 -1
- package/dist/cjs/assets/icons/Redirect2Icon.js +1 -1
- package/dist/cjs/assets/icons/Redirect2Icon.js.map +1 -1
- package/dist/cjs/assets/icons/ShoppingIcon.js +1 -1
- package/dist/cjs/assets/icons/ShoppingIcon.js.map +1 -1
- package/dist/cjs/assets/icons/SmallCheckIcon.js +1 -1
- package/dist/cjs/assets/icons/SmallCheckIcon.js.map +1 -1
- package/dist/cjs/assets/icons/StepsIcon.js +1 -1
- package/dist/cjs/assets/icons/StepsIcon.js.map +1 -1
- package/dist/cjs/assets/icons/StoreIcon.js +1 -1
- package/dist/cjs/assets/icons/StoreIcon.js.map +1 -1
- package/dist/cjs/assets/icons/SupportIcon.js +1 -1
- package/dist/cjs/assets/icons/SupportIcon.js.map +1 -1
- package/dist/cjs/assets/icons/ThreeColumnsIcon.js +1 -1
- package/dist/cjs/assets/icons/ThreeColumnsIcon.js.map +1 -1
- package/dist/cjs/assets/icons/TrainingIcon.js +1 -1
- package/dist/cjs/assets/icons/TrainingIcon.js.map +1 -1
- package/dist/cjs/assets/icons/searchIcon.js +1 -1
- package/dist/cjs/assets/icons/searchIcon.js.map +1 -1
- package/dist/cjs/components/BikGiftedChat/Bubble/Bubble.js +1 -1
- package/dist/cjs/components/BikGiftedChat/Bubble/Bubble.js.map +1 -1
- package/dist/cjs/components/BikGiftedChat/GiftedChat/Day.js +1 -1
- package/dist/cjs/components/BikGiftedChat/GiftedChat/Day.js.map +1 -1
- package/dist/cjs/components/BikGiftedChat/GiftedChat/GiftedChat.js +1 -1
- package/dist/cjs/components/BikGiftedChat/GiftedChat/GiftedChat.js.map +1 -1
- package/dist/cjs/components/InfiniteScroll/InfiniteScroll.js +1 -1
- package/dist/cjs/components/InfiniteScroll/InfiniteScroll.js.map +1 -1
- package/dist/cjs/components/ProgressChecklist/MultiChecklistItem.js +1 -1
- package/dist/cjs/components/ProgressChecklist/MultiChecklistItem.js.map +1 -1
- package/dist/cjs/components/ProgressChecklist/ProgressChecklist.js +1 -1
- package/dist/cjs/components/ProgressChecklist/ProgressChecklist.js.map +1 -1
- package/dist/cjs/components/ProgressChecklist/ProgressStepper.js +1 -1
- package/dist/cjs/components/ProgressChecklist/ProgressStepper.js.map +1 -1
- package/dist/cjs/components/ProgressChecklist/SimpleChecklistItem.js +1 -1
- package/dist/cjs/components/ProgressChecklist/SimpleChecklistItem.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/Filters/CustomField/components/CustomField.js +1 -1
- package/dist/cjs/components/QueryBuilder/Filters/CustomField/components/CustomField.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/Filters/Event/components/EventFilter.js +1 -1
- package/dist/cjs/components/QueryBuilder/Filters/Event/components/EventFilter.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/Filters/Segment/components/SegmentFilter.js +1 -1
- package/dist/cjs/components/QueryBuilder/Filters/Segment/components/SegmentFilter.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/Filters/UserProperty/components/UserPropertyFilter.js +1 -1
- package/dist/cjs/components/QueryBuilder/Filters/UserProperty/components/UserPropertyFilter.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/QueryBuilder.js +1 -1
- package/dist/cjs/components/QueryBuilder/QueryBuilder.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/Triggers/EVENTS/components/EventsTrigger.js +1 -1
- package/dist/cjs/components/QueryBuilder/Triggers/EVENTS/components/EventsTrigger.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/Triggers/IG/components/IGTrigger.js +1 -1
- package/dist/cjs/components/QueryBuilder/Triggers/IG/components/IGTrigger.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/Triggers/components/BaseTriggerQueryBuilderNode.js +1 -1
- package/dist/cjs/components/QueryBuilder/Triggers/components/BaseTriggerQueryBuilderNode.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/AddNodeButton.js +1 -1
- package/dist/cjs/components/QueryBuilder/components/AddNodeButton.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/AllowedListDropdown.js +1 -1
- package/dist/cjs/components/QueryBuilder/components/AllowedListDropdown.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/EmojiPicker.js +3 -3
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/EmojiPicker.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/FreeText.js +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/FreeText.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/FrequencyIntegerPositiveSingle.js +2 -2
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/FrequencyIntegerPositiveSingle.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/IgPicker.js +26 -26
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/IgPicker.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/InTheLast.js +2 -2
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/InTheLast.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/InTheLastAgo.js +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/InTheLastAgo.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/InTwoLast.js +2 -2
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/InTwoLast.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/IntegerPositiveSingle.js +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/IntegerPositiveSingle.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/IntegerSingleValue.js +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/IntegerSingleValue.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/MultiselectDropdownFreeText.js +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/MultiselectDropdownFreeText.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/NoInput.js +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/NoInput.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/NumberTime.js +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/NumberTime.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/SingleDate.js +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/SingleDate.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/SingleselectDropdownFreeText.js +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/SingleselectDropdownFreeText.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/StringSingleValue.js +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/StringSingleValue.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/TwoDate.js +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/TwoDate.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/TwoNumberInputsSeperatedByAnd.js +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Components/TwoNumberInputsSeperatedByAnd.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Connector.js +1 -1
- package/dist/cjs/components/QueryBuilder/components/Connectors/Connector.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/DeleteButton.js +1 -1
- package/dist/cjs/components/QueryBuilder/components/DeleteButton.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/DropdownWrapper.js +1 -1
- package/dist/cjs/components/QueryBuilder/components/DropdownWrapper.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/InputLoader.js +2 -2
- package/dist/cjs/components/QueryBuilder/components/InputLoader.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/QueryBuilderNode/Base/BaseQueryBuilderNode.js +4 -4
- package/dist/cjs/components/QueryBuilder/components/QueryBuilderNode/Base/BaseQueryBuilderNode.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/QueryBuilderNode/Property/AddPropertyButton.js +1 -1
- package/dist/cjs/components/QueryBuilder/components/QueryBuilderNode/Property/AddPropertyButton.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/QueryBuilderNode/Property/PropertyNode.js +1 -1
- package/dist/cjs/components/QueryBuilder/components/QueryBuilderNode/Property/PropertyNode.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/QueryBuilderNode/Property/PropertyNodeUIWrapper.js +1 -1
- package/dist/cjs/components/QueryBuilder/components/QueryBuilderNode/Property/PropertyNodeUIWrapper.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/QueryBuilderNode/Property/PropertyNodes.js +1 -1
- package/dist/cjs/components/QueryBuilder/components/QueryBuilderNode/Property/PropertyNodes.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/QueryBuilderNode/QueryBuilderNode.js +1 -1
- package/dist/cjs/components/QueryBuilder/components/QueryBuilderNode/QueryBuilderNode.js.map +1 -1
- package/dist/cjs/components/QueryBuilder/components/QueryBuilderNodes.js +1 -1
- package/dist/cjs/components/QueryBuilder/components/QueryBuilderNodes.js.map +1 -1
- package/dist/cjs/components/SearchFilter/components/DatePickerButton.js +1 -1
- package/dist/cjs/components/SearchFilter/components/DatePickerButton.js.map +1 -1
- package/dist/cjs/components/SearchFilter/components/DateRangeOnlyButton.js +1 -1
- package/dist/cjs/components/SearchFilter/components/DateRangeOnlyButton.js.map +1 -1
- package/dist/cjs/components/SearchFilter/components/FilterChipListRenderer.js +1 -1
- package/dist/cjs/components/SearchFilter/components/FilterChipListRenderer.js.map +1 -1
- package/dist/cjs/components/SearchFilter/components/SearchFilterItem.js +1 -1
- package/dist/cjs/components/SearchFilter/components/SearchFilterItem.js.map +1 -1
- package/dist/cjs/components/SearchFilter/index.js +1 -1
- package/dist/cjs/components/SearchFilter/index.js.map +1 -1
- package/dist/cjs/components/TablePagination/TablePagination.js +1 -1
- package/dist/cjs/components/TablePagination/TablePagination.js.map +1 -1
- package/dist/cjs/components/TablePagination/TablePaginationCard.js +2 -2
- package/dist/cjs/components/TablePagination/TablePaginationCard.js.map +1 -1
- package/dist/cjs/components/WhatsAppTextEditor/AIRephraseButton.js +6 -6
- package/dist/cjs/components/WhatsAppTextEditor/AIRephraseButton.js.map +1 -1
- package/dist/cjs/components/WhatsAppTextEditor/BorderAnimation.js +1 -1
- package/dist/cjs/components/WhatsAppTextEditor/BorderAnimation.js.map +1 -1
- package/dist/cjs/components/WhatsAppTextEditor/WhatsAppTextEditor.js +28 -28
- package/dist/cjs/components/WhatsAppTextEditor/WhatsAppTextEditor.js.map +1 -1
- package/dist/cjs/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.js +3 -3
- package/dist/cjs/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.js.map +1 -1
- package/dist/cjs/components/access-token-troubleshoot-dialog/AccessTokenTroubleshootDialog.js +1 -1
- package/dist/cjs/components/access-token-troubleshoot-dialog/AccessTokenTroubleshootDialog.js.map +1 -1
- package/dist/cjs/components/accordion/Accordion.js +1 -1
- package/dist/cjs/components/accordion/Accordion.js.map +1 -1
- package/dist/cjs/components/accordion/AccordionArrow.js +1 -1
- package/dist/cjs/components/accordion/AccordionArrow.js.map +1 -1
- package/dist/cjs/components/action-button/ActionButtons.js +1 -1
- package/dist/cjs/components/action-button/ActionButtons.js.map +1 -1
- package/dist/cjs/components/add-variableV2/AddVariableV2.js +2 -2
- package/dist/cjs/components/add-variableV2/AddVariableV2.js.map +1 -1
- package/dist/cjs/components/add-variableV2/AddVariableV2SideModal.js +1 -1
- package/dist/cjs/components/add-variableV2/AddVariableV2SideModal.js.map +1 -1
- package/dist/cjs/components/ai-modals/ActivateBikAI.js +1 -1
- package/dist/cjs/components/ai-modals/ActivateBikAI.js.map +1 -1
- package/dist/cjs/components/ai-modals/AiCreditsExhausted.js +1 -1
- package/dist/cjs/components/ai-modals/AiCreditsExhausted.js.map +1 -1
- package/dist/cjs/components/ai-modals/AiCreditsLow.js +1 -1
- package/dist/cjs/components/ai-modals/AiCreditsLow.js.map +1 -1
- package/dist/cjs/components/ai-modals/AiSyncProgress.js +1 -1
- package/dist/cjs/components/ai-modals/AiSyncProgress.js.map +1 -1
- package/dist/cjs/components/alerts/Alert.js +1 -1
- package/dist/cjs/components/alerts/Alert.js.map +1 -1
- package/dist/cjs/components/analytics-card/AnalyticsCard.js +1 -1
- package/dist/cjs/components/analytics-card/AnalyticsCard.js.map +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/AnalyticsChip.js +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/AnalyticsChip.js.map +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/AnalyticsChipChannelFooter.js +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/AnalyticsChipChannelFooter.js.map +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/AnalyticsDropdown.js +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/AnalyticsDropdown.js.map +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/AnalyticsMetric.js +2 -2
- package/dist/cjs/components/analytics-chips-and-dropdowns/AnalyticsMetric.js.map +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/AnalyticsMultiChip.js +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/AnalyticsMultiChip.js.map +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/AnalyticsTrend.js +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/AnalyticsTrend.js.map +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/HorizontalBarGraph/HorizontalGraph.js +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/HorizontalBarGraph/HorizontalGraph.js.map +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/Legend/Legend.js +2 -2
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/Legend/Legend.js.map +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/LineChart/LineChart.js +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/LineChart/LineChart.js.map +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/Pie/PieChart.js +2 -2
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/Pie/PieChart.js.map +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/Pie/PieChartAnalytics.js +4 -4
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/Pie/PieChartAnalytics.js.map +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/StackedBarChart/StackedBarChart.js +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/StackedBarChart/StackedBarChart.js.map +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/StackedBarChart/StackedBarDistributionChart.js +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/StackedBarChart/StackedBarDistributionChart.js.map +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/VerticalBarAndLinearGraph/VerticalBarAndLinearGraph.js +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/VerticalBarAndLinearGraph/VerticalBarAndLinearGraph.js.map +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/VerticalBarGraph/FunnelVerticalBarGraph.js +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/VerticalBarGraph/FunnelVerticalBarGraph.js.map +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/VerticalBarGraph/VerticalGraph.js +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/VerticalBarGraph/VerticalGraph.js.map +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/heatmap/HeatMap.js +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/heatmap/HeatMap.js.map +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/heatmap/HeatMapVertical.js +4 -4
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/heatmap/HeatMapVertical.js.map +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/linearChipGroupedChart/LinearChipGroupedChart.js +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/linearChipGroupedChart/LinearChipGroupedChart.js.map +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/scoreBlock/Chip.js +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/scoreBlock/Chip.js.map +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/scoreBlock/HorizontalBar.js +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/scoreBlock/HorizontalBar.js.map +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/scoreBlock/ScoreBlock.js +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/chart/scoreBlock/ScoreBlock.js.map +1 -1
- package/dist/cjs/components/avatar/Avatar.js +1 -1
- package/dist/cjs/components/avatar/Avatar.js.map +1 -1
- package/dist/cjs/components/avatar/Avatar.styled.js +10 -2
- package/dist/cjs/components/avatar/Avatar.styled.js.map +1 -1
- package/dist/cjs/components/banner/AdBanner.js +1 -1
- package/dist/cjs/components/banner/AdBanner.js.map +1 -1
- package/dist/cjs/components/banner/BannerInline.js +1 -1
- package/dist/cjs/components/banner/BannerInline.js.map +1 -1
- package/dist/cjs/components/banner/BannerWithImage.js +1 -1
- package/dist/cjs/components/banner/BannerWithImage.js.map +1 -1
- package/dist/cjs/components/banner/CardBanner.js +1 -1
- package/dist/cjs/components/banner/CardBanner.js.map +1 -1
- package/dist/cjs/components/banner/CardBannerWithImage.js +1 -1
- package/dist/cjs/components/banner/CardBannerWithImage.js.map +1 -1
- package/dist/cjs/components/bik-chatbot/components/AIChat.js +1 -1
- package/dist/cjs/components/bik-chatbot/components/AIChat.js.map +1 -1
- package/dist/cjs/components/bik-chatbot/components/BIKChatbot.js +1 -1
- package/dist/cjs/components/bik-chatbot/components/BIKChatbot.js.map +1 -1
- package/dist/cjs/components/bik-chatbot/components/ChatLoadingState.js +17 -17
- package/dist/cjs/components/bik-chatbot/components/ChatLoadingState.js.map +1 -1
- package/dist/cjs/components/bik-chatbot/components/ChatWindow.js +9 -9
- package/dist/cjs/components/bik-chatbot/components/ChatWindow.js.map +1 -1
- package/dist/cjs/components/bik-chatbot/components/ThinkingIndicator.js +2 -2
- package/dist/cjs/components/bik-chatbot/components/ThinkingIndicator.js.map +1 -1
- package/dist/cjs/components/bik-chatbot/contexts/AIContext.js +1 -1
- package/dist/cjs/components/bik-chatbot/contexts/AIContext.js.map +1 -1
- package/dist/cjs/components/bik-layout/BikHeader.js +1 -1
- package/dist/cjs/components/bik-layout/BikHeader.js.map +1 -1
- package/dist/cjs/components/bik-layout/BikLayout.js +1 -1
- package/dist/cjs/components/bik-layout/BikLayout.js.map +1 -1
- package/dist/cjs/components/bik-layout/BikProfile.js +1 -1
- package/dist/cjs/components/bik-layout/BikProfile.js.map +1 -1
- package/dist/cjs/components/bik-layout/BikSidebar.js +4 -4
- package/dist/cjs/components/bik-layout/BikSidebar.js.map +1 -1
- package/dist/cjs/components/bik-layout/FeatureModal.js +1 -1
- package/dist/cjs/components/bik-layout/FeatureModal.js.map +1 -1
- package/dist/cjs/components/bik-layout/FeatureModalV2.js +1 -1
- package/dist/cjs/components/bik-layout/FeatureModalV2.js.map +1 -1
- package/dist/cjs/components/bik-layout/PageLoader.js +1 -1
- package/dist/cjs/components/bik-layout/PageLoader.js.map +1 -1
- package/dist/cjs/components/bik-layout/ShowShopifyRestrictedModal.js +1 -1
- package/dist/cjs/components/bik-layout/ShowShopifyRestrictedModal.js.map +1 -1
- package/dist/cjs/components/bik-layout/SidebarPopup.js +1 -1
- package/dist/cjs/components/bik-layout/SidebarPopup.js.map +1 -1
- package/dist/cjs/components/bik-layout/SidebarSkeleton.js +1 -1
- package/dist/cjs/components/bik-layout/SidebarSkeleton.js.map +1 -1
- package/dist/cjs/components/bik-layout/SimpleSidebar.js +1 -1
- package/dist/cjs/components/bik-layout/SimpleSidebar.js.map +1 -1
- package/dist/cjs/components/button/Button.js +1 -1
- package/dist/cjs/components/button/Button.js.map +1 -1
- package/dist/cjs/components/button/Button.styled.js +45 -45
- package/dist/cjs/components/button/Button.styled.js.map +1 -1
- package/dist/cjs/components/buttonGroup/ButtonGroup.js +1 -1
- package/dist/cjs/components/buttonGroup/ButtonGroup.js.map +1 -1
- package/dist/cjs/components/card-selection-modal/CardSelectionModal.js +1 -1
- package/dist/cjs/components/card-selection-modal/CardSelectionModal.js.map +1 -1
- package/dist/cjs/components/card-selector/CardSelector.js +1 -1
- package/dist/cjs/components/card-selector/CardSelector.js.map +1 -1
- package/dist/cjs/components/card-selector/CardSelectorGroup.js +1 -1
- package/dist/cjs/components/card-selector/CardSelectorGroup.js.map +1 -1
- package/dist/cjs/components/carousel/carousel.js +1 -1
- package/dist/cjs/components/carousel/carousel.js.map +1 -1
- package/dist/cjs/components/carousel-preview/CarouselPreview.js +1 -1
- package/dist/cjs/components/carousel-preview/CarouselPreview.js.map +1 -1
- package/dist/cjs/components/carousel-preview/CarouselPreviewCard.js +1 -1
- package/dist/cjs/components/carousel-preview/CarouselPreviewCard.js.map +1 -1
- package/dist/cjs/components/carousel-preview/CustomCarouselArrows.js +1 -1
- package/dist/cjs/components/carousel-preview/CustomCarouselArrows.js.map +1 -1
- package/dist/cjs/components/carousel-secondary/CarouselSecondary.js +1 -1
- package/dist/cjs/components/carousel-secondary/CarouselSecondary.js.map +1 -1
- package/dist/cjs/components/checkBox/CheckBox.js +1 -1
- package/dist/cjs/components/checkBox/CheckBox.js.map +1 -1
- package/dist/cjs/components/checkList/CheckList.js +1 -1
- package/dist/cjs/components/checkList/CheckList.js.map +1 -1
- package/dist/cjs/components/code-block/CodeBlock.js +2 -2
- package/dist/cjs/components/code-block/CodeBlock.js.map +1 -1
- package/dist/cjs/components/colourInput/ColourInput.js +1 -1
- package/dist/cjs/components/colourInput/ColourInput.js.map +1 -1
- package/dist/cjs/components/country-code-picker/CountryCodePicker.js +1 -1
- package/dist/cjs/components/country-code-picker/CountryCodePicker.js.map +1 -1
- package/dist/cjs/components/country-code-picker/CountryPicker.js +1 -1
- package/dist/cjs/components/country-code-picker/CountryPicker.js.map +1 -1
- package/dist/cjs/components/curtain/Curtain.js +1 -1
- package/dist/cjs/components/curtain/Curtain.js.map +1 -1
- package/dist/cjs/components/custom-date-time/CustomDateTime.js +1 -1
- package/dist/cjs/components/custom-date-time/CustomDateTime.js.map +1 -1
- package/dist/cjs/components/custom-date-time/DateSelector/DateSelector.js +1 -1
- package/dist/cjs/components/custom-date-time/DateSelector/DateSelector.js.map +1 -1
- package/dist/cjs/components/dashboard-review-popup/DashboardReviewPopUp.js +1 -1
- package/dist/cjs/components/dashboard-review-popup/DashboardReviewPopUp.js.map +1 -1
- package/dist/cjs/components/dashboard-review-popup/components/FiveStar.js +1 -1
- package/dist/cjs/components/dashboard-review-popup/components/FiveStar.js.map +1 -1
- package/dist/cjs/components/dashboard-review-popup/components/Form.js +1 -1
- package/dist/cjs/components/dashboard-review-popup/components/Form.js.map +1 -1
- package/dist/cjs/components/dashboard-review-popup/components/ZeroState.js +2 -2
- package/dist/cjs/components/dashboard-review-popup/components/ZeroState.js.map +1 -1
- package/dist/cjs/components/data-source-panel/DataSourceInfoFooter.js +1 -1
- package/dist/cjs/components/data-source-panel/DataSourceInfoFooter.js.map +1 -1
- package/dist/cjs/components/data-source-panel/DataSourcePanel.js +1 -1
- package/dist/cjs/components/data-source-panel/DataSourcePanel.js.map +1 -1
- package/dist/cjs/components/data-source-panel/Modals/DescriptionModal.js +7 -7
- package/dist/cjs/components/data-source-panel/Modals/DescriptionModal.js.map +1 -1
- package/dist/cjs/components/datePicker/DatePicker.js +1 -1
- package/dist/cjs/components/datePicker/DatePicker.js.map +1 -1
- package/dist/cjs/components/datePicker/DatePickerWrapper.js +1 -1
- package/dist/cjs/components/datePicker/DatePickerWrapper.js.map +1 -1
- package/dist/cjs/components/datePicker/TimePicker.js +1 -1
- package/dist/cjs/components/datePicker/TimePicker.js.map +1 -1
- package/dist/cjs/components/discount-modal/CouponExpiration/CouponExpiration.js +1 -1
- package/dist/cjs/components/discount-modal/CouponExpiration/CouponExpiration.js.map +1 -1
- package/dist/cjs/components/discount-modal/DiscountModal.js +1 -1
- package/dist/cjs/components/discount-modal/DiscountModal.js.map +1 -1
- package/dist/cjs/components/discount-modal/DynamicCoupon/DynamicCoupon.js +1 -1
- package/dist/cjs/components/discount-modal/DynamicCoupon/DynamicCoupon.js.map +1 -1
- package/dist/cjs/components/discount-modal/DynamicCoupon/MinimumRequirementComponent.js +1 -1
- package/dist/cjs/components/discount-modal/DynamicCoupon/MinimumRequirementComponent.js.map +1 -1
- package/dist/cjs/components/discount-modal/DynamicCoupon/ZeroState.js +3 -3
- package/dist/cjs/components/discount-modal/DynamicCoupon/ZeroState.js.map +1 -1
- package/dist/cjs/components/discount-modal/StaticCoupon/StaticCoupon.js +1 -1
- package/dist/cjs/components/discount-modal/StaticCoupon/StaticCoupon.js.map +1 -1
- package/dist/cjs/components/dot-pulse/DotPulse.js +3 -3
- package/dist/cjs/components/dot-pulse/DotPulse.js.map +1 -1
- package/dist/cjs/components/dropShadow/DropShadow.js +1 -1
- package/dist/cjs/components/dropShadow/DropShadow.js.map +1 -1
- package/dist/cjs/components/dropdown/ChipDropdown.js +3 -3
- package/dist/cjs/components/dropdown/ChipDropdown.js.map +1 -1
- package/dist/cjs/components/dropdown/ChipInput.js +1 -1
- package/dist/cjs/components/dropdown/ChipInput.js.map +1 -1
- package/dist/cjs/components/dropdown/Dropdown.js +1 -1
- package/dist/cjs/components/dropdown/Dropdown.js.map +1 -1
- package/dist/cjs/components/dropdown/DropdownPopover/index.js +1 -1
- package/dist/cjs/components/dropdown/DropdownPopover/index.js.map +1 -1
- package/dist/cjs/components/dropdown/MenuItem/MenuItem.js +2 -2
- package/dist/cjs/components/dropdown/MenuItem/MenuItem.js.map +1 -1
- package/dist/cjs/components/dropdown/MultilevelDropdownPopover/index.js +1 -1
- package/dist/cjs/components/dropdown/MultilevelDropdownPopover/index.js.map +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/OpennedDropdown.js +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/OpennedDropdown.js.map +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/description/Description.js +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/description/Description.js.map +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/FreeFormMenu.js +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/FreeFormMenu.js.map +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/MenuItem.js +7 -7
- package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/MenuItem.js.map +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/MenuList.js +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/MenuList.js.map +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/SelectAllMenu.js +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/SelectAllMenu.js.map +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/multiSelect/MultiSelectDropdownBottomBar.js +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/multiSelect/MultiSelectDropdownBottomBar.js.map +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/searchbox/SearchBox.js +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/searchbox/SearchBox.js.map +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/searchbox/SearchZeroState.js +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/searchbox/SearchZeroState.js.map +1 -1
- package/dist/cjs/components/dropdown-button/DropdownButton.js +1 -1
- package/dist/cjs/components/dropdown-button/DropdownButton.js.map +1 -1
- package/dist/cjs/components/dynamic-tabs/DynamicTabs.js +1 -1
- package/dist/cjs/components/dynamic-tabs/DynamicTabs.js.map +1 -1
- package/dist/cjs/components/fab-menu/FABMenu.js +1 -1
- package/dist/cjs/components/fab-menu/FABMenu.js.map +1 -1
- package/dist/cjs/components/feature-announcements/FeatureAnnouncementProvider.js +2 -2
- package/dist/cjs/components/feature-announcements/FeatureAnnouncementProvider.js.map +1 -1
- package/dist/cjs/components/feature-announcements/MajorUpdatePopup.js +2 -2
- package/dist/cjs/components/feature-announcements/MajorUpdatePopup.js.map +1 -1
- package/dist/cjs/components/feature-announcements/MinorUpdatePopup.js +1 -1
- package/dist/cjs/components/feature-announcements/MinorUpdatePopup.js.map +1 -1
- package/dist/cjs/components/feature-announcements/VideoModal.js +1 -1
- package/dist/cjs/components/feature-announcements/VideoModal.js.map +1 -1
- package/dist/cjs/components/file-uploader/FileUploader.js +1 -1
- package/dist/cjs/components/file-uploader/FileUploader.js.map +1 -1
- package/dist/cjs/components/floater/floater.js +1 -1
- package/dist/cjs/components/floater/floater.js.map +1 -1
- package/dist/cjs/components/floating-action-button/FloatingActionButton.js +1 -1
- package/dist/cjs/components/floating-action-button/FloatingActionButton.js.map +1 -1
- package/dist/cjs/components/floating-input-dropdown/FloatingInputDropdown.js +4 -4
- package/dist/cjs/components/floating-input-dropdown/FloatingInputDropdown.js.map +1 -1
- package/dist/cjs/components/half-doughnut-chart/HalfDoughnutChart.js +1 -1
- package/dist/cjs/components/half-doughnut-chart/HalfDoughnutChart.js.map +1 -1
- package/dist/cjs/components/icon-button/IconButton.js +1 -1
- package/dist/cjs/components/icon-button/IconButton.js.map +1 -1
- package/dist/cjs/components/image-cropper/BikImageCropper.js +1 -1
- package/dist/cjs/components/image-cropper/BikImageCropper.js.map +1 -1
- package/dist/cjs/components/image-cropper/BikImagePipeline/BikImagePipeline.js +1 -1
- package/dist/cjs/components/image-cropper/BikImagePipeline/BikImagePipeline.js.map +1 -1
- package/dist/cjs/components/input/ChipInput.js +1 -1
- package/dist/cjs/components/input/ChipInput.js.map +1 -1
- package/dist/cjs/components/input/Input.js +1 -1
- package/dist/cjs/components/input/Input.js.map +1 -1
- package/dist/cjs/components/input-with-vars/InputWithVariables.js +1 -1
- package/dist/cjs/components/input-with-vars/InputWithVariables.js.map +1 -1
- package/dist/cjs/components/input-with-vars/customPortal.js +1 -1
- package/dist/cjs/components/input-with-vars/customPortal.js.map +1 -1
- package/dist/cjs/components/keywords-input/KeywordsInput.js +1 -1
- package/dist/cjs/components/keywords-input/KeywordsInput.js.map +1 -1
- package/dist/cjs/components/list-item/ListItem.js +1 -1
- package/dist/cjs/components/list-item/ListItem.js.map +1 -1
- package/dist/cjs/components/markdown/MarkdownRender.js +2 -2
- package/dist/cjs/components/markdown/MarkdownRender.js.map +1 -1
- package/dist/cjs/components/modals/Modal.js +1 -1
- package/dist/cjs/components/modals/Modal.js.map +1 -1
- package/dist/cjs/components/modals/styledModal.js +12 -12
- package/dist/cjs/components/modals/styledModal.js.map +1 -1
- package/dist/cjs/components/multi-level-dropdown/GroupedMenuList.js +1 -1
- package/dist/cjs/components/multi-level-dropdown/GroupedMenuList.js.map +1 -1
- package/dist/cjs/components/multi-level-dropdown/MenuItem.js +1 -1
- package/dist/cjs/components/multi-level-dropdown/MenuItem.js.map +1 -1
- package/dist/cjs/components/multi-level-dropdown/MenuList.js +1 -1
- package/dist/cjs/components/multi-level-dropdown/MenuList.js.map +1 -1
- package/dist/cjs/components/multi-level-dropdown/MultiLevelDropdown.js +1 -1
- package/dist/cjs/components/multi-level-dropdown/MultiLevelDropdown.js.map +1 -1
- package/dist/cjs/components/navigation-hyperlink/NavigationHyperlink.js +1 -1
- package/dist/cjs/components/navigation-hyperlink/NavigationHyperlink.js.map +1 -1
- package/dist/cjs/components/pagination/Pagination.js +1 -1
- package/dist/cjs/components/pagination/Pagination.js.map +1 -1
- package/dist/cjs/components/plans/NewSubscriptionPlan.js +5 -5
- package/dist/cjs/components/plans/NewSubscriptionPlan.js.map +1 -1
- package/dist/cjs/components/plans/SubscriptionPlan.js +3 -3
- package/dist/cjs/components/plans/SubscriptionPlan.js.map +1 -1
- package/dist/cjs/components/plans/SubscriptionPlanSelector.js +12 -12
- package/dist/cjs/components/plans/SubscriptionPlanSelector.js.map +1 -1
- package/dist/cjs/components/plans/SubscriptionPlansCollected.js +2 -2
- package/dist/cjs/components/plans/SubscriptionPlansCollected.js.map +1 -1
- package/dist/cjs/components/post-live-checklist/PostLiveChecklist.js +1 -1
- package/dist/cjs/components/post-live-checklist/PostLiveChecklist.js.map +1 -1
- package/dist/cjs/components/post-live-checklist-item/PostLiveChecklistItem.js +1 -1
- package/dist/cjs/components/post-live-checklist-item/PostLiveChecklistItem.js.map +1 -1
- package/dist/cjs/components/postPicker/postPicker.js +1 -1
- package/dist/cjs/components/postPicker/postPicker.js.map +1 -1
- package/dist/cjs/components/product-picker/ProductPickerModal.js +1 -1
- package/dist/cjs/components/product-picker/ProductPickerModal.js.map +1 -1
- package/dist/cjs/components/product-picker-v2/ProductPickerShimmer.js +1 -1
- package/dist/cjs/components/product-picker-v2/ProductPickerShimmer.js.map +1 -1
- package/dist/cjs/components/product-picker-v2/ProductPickerTag.js +1 -1
- package/dist/cjs/components/product-picker-v2/ProductPickerTag.js.map +1 -1
- package/dist/cjs/components/product-picker-v2/collectionScreen.js +1 -1
- package/dist/cjs/components/product-picker-v2/collectionScreen.js.map +1 -1
- package/dist/cjs/components/product-picker-v2/emptyState.js +2 -2
- package/dist/cjs/components/product-picker-v2/emptyState.js.map +1 -1
- package/dist/cjs/components/product-picker-v2/modal.js +1 -1
- package/dist/cjs/components/product-picker-v2/modal.js.map +1 -1
- package/dist/cjs/components/product-picker-v2/product.js +1 -1
- package/dist/cjs/components/product-picker-v2/product.js.map +1 -1
- package/dist/cjs/components/product-picker-v2/productInfoOverlay.js +5 -5
- package/dist/cjs/components/product-picker-v2/productInfoOverlay.js.map +1 -1
- package/dist/cjs/components/product-picker-v2/productScreen.js +1 -1
- package/dist/cjs/components/product-picker-v2/productScreen.js.map +1 -1
- package/dist/cjs/components/product-picker-v2/rearrangeScreen.js +1 -1
- package/dist/cjs/components/product-picker-v2/rearrangeScreen.js.map +1 -1
- package/dist/cjs/components/product-picker-v2/searchScreen.js +1 -1
- package/dist/cjs/components/product-picker-v2/searchScreen.js.map +1 -1
- package/dist/cjs/components/product-picker-v2/selectedScreen.js +1 -1
- package/dist/cjs/components/product-picker-v2/selectedScreen.js.map +1 -1
- package/dist/cjs/components/product-picker-v2/variant.js +1 -1
- package/dist/cjs/components/product-picker-v2/variant.js.map +1 -1
- package/dist/cjs/components/product-picker-v2/variantComponents.js +1 -1
- package/dist/cjs/components/product-picker-v2/variantComponents.js.map +1 -1
- package/dist/cjs/components/progress-bar/CircularProgressBar.js +1 -1
- package/dist/cjs/components/progress-bar/CircularProgressBar.js.map +1 -1
- package/dist/cjs/components/progress-bar/ProgressBarComponent.js +2 -2
- package/dist/cjs/components/progress-bar/ProgressBarComponent.js.map +1 -1
- package/dist/cjs/components/progress-bar-v2/ProgressBarV2.js +6 -6
- package/dist/cjs/components/progress-bar-v2/ProgressBarV2.js.map +1 -1
- package/dist/cjs/components/radioButton/RadioButton.js +1 -1
- package/dist/cjs/components/radioButton/RadioButton.js.map +1 -1
- package/dist/cjs/components/radioList/RadioList.js +1 -1
- package/dist/cjs/components/radioList/RadioList.js.map +1 -1
- package/dist/cjs/components/resizeImage/index.js +1 -1
- package/dist/cjs/components/resizeImage/index.js.map +1 -1
- package/dist/cjs/components/searchBar/searchBar.js +1 -1
- package/dist/cjs/components/searchBar/searchBar.js.map +1 -1
- package/dist/cjs/components/shimmer/ShimmerComponent/BikShimmer.js +1 -1
- package/dist/cjs/components/shimmer/ShimmerComponent/BikShimmer.js.map +1 -1
- package/dist/cjs/components/shimmer-image/ShimmerImage.js +1 -1
- package/dist/cjs/components/shimmer-image/ShimmerImage.js.map +1 -1
- package/dist/cjs/components/side-modal/SideModal.js +1 -1
- package/dist/cjs/components/side-modal/SideModal.js.map +1 -1
- package/dist/cjs/components/slider/slider.js +1 -1
- package/dist/cjs/components/slider/slider.js.map +1 -1
- package/dist/cjs/components/spinner/Spinner.js +3 -3
- package/dist/cjs/components/spinner/Spinner.js.map +1 -1
- package/dist/cjs/components/star-rating/Star.js +1 -1
- package/dist/cjs/components/star-rating/Star.js.map +1 -1
- package/dist/cjs/components/star-rating/StarRating.js +2 -2
- package/dist/cjs/components/star-rating/StarRating.js.map +1 -1
- package/dist/cjs/components/states/ShopifyScopeWrapper.js +1 -1
- package/dist/cjs/components/states/ShopifyScopeWrapper.js.map +1 -1
- package/dist/cjs/components/states/StateComponent.js +1 -1
- package/dist/cjs/components/states/StateComponent.js.map +1 -1
- package/dist/cjs/components/states-modal/DeleteConfirmationModal.js +1 -1
- package/dist/cjs/components/states-modal/DeleteConfirmationModal.js.map +1 -1
- package/dist/cjs/components/states-modal/StateModalComponent.js +1 -1
- package/dist/cjs/components/states-modal/StateModalComponent.js.map +1 -1
- package/dist/cjs/components/stepper/Stepper.js +1 -1
- package/dist/cjs/components/stepper/Stepper.js.map +1 -1
- package/dist/cjs/components/switch/Switch.js +4 -4
- package/dist/cjs/components/switch/Switch.js.map +1 -1
- package/dist/cjs/components/tabs/Tabs.js +1 -1
- package/dist/cjs/components/tabs/Tabs.js.map +1 -1
- package/dist/cjs/components/tag/Tag.js +1 -1
- package/dist/cjs/components/tag/Tag.js.map +1 -1
- package/dist/cjs/components/template-context-mapper/Badge/index.js +2 -2
- package/dist/cjs/components/template-context-mapper/Badge/index.js.map +1 -1
- package/dist/cjs/components/template-context-mapper/TemplateContextMapper.js +1 -1
- package/dist/cjs/components/template-context-mapper/TemplateContextMapper.js.map +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/BackTrackComponent.js +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/BackTrackComponent.js.map +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/Body.js +6 -6
- package/dist/cjs/components/template-context-mapper/modalElements/Body.js.map +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/DesktopPreview.js +3 -3
- package/dist/cjs/components/template-context-mapper/modalElements/DesktopPreview.js.map +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/DiscountCodeComponent.js +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/DiscountCodeComponent.js.map +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/EditMediaModal.js +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/EditMediaModal.js.map +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/EditMediaV2.js +3 -3
- package/dist/cjs/components/template-context-mapper/modalElements/EditMediaV2.js.map +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/EditWebpushTemplate.js +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/EditWebpushTemplate.js.map +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/EditWhatsAppCarouselTemplateV2.js +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/EditWhatsAppCarouselTemplateV2.js.map +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/EditWhatsAppTemplateV2.js +2 -2
- package/dist/cjs/components/template-context-mapper/modalElements/EditWhatsAppTemplateV2.js.map +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/Footer.js +4 -4
- package/dist/cjs/components/template-context-mapper/modalElements/Footer.js.map +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/Header.js +4 -4
- package/dist/cjs/components/template-context-mapper/modalElements/Header.js.map +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/MobilePreview.js +5 -5
- package/dist/cjs/components/template-context-mapper/modalElements/MobilePreview.js.map +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/ProductBox.js +2 -2
- package/dist/cjs/components/template-context-mapper/modalElements/ProductBox.js.map +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/QueryParamsComponent.js +2 -2
- package/dist/cjs/components/template-context-mapper/modalElements/QueryParamsComponent.js.map +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/TemplateAnalyticsComponent.js +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/TemplateAnalyticsComponent.js.map +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/TemplateAnalyticsSkeleton.js +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/TemplateAnalyticsSkeleton.js.map +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/TemplateSelectModalContent.js +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/TemplateSelectModalContent.js.map +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/VariableConnector.js +3 -3
- package/dist/cjs/components/template-context-mapper/modalElements/VariableConnector.js.map +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/VariableConnectorWhatsApp.js +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/VariableConnectorWhatsApp.js.map +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/VariableConnectorsPanel.js +3 -3
- package/dist/cjs/components/template-context-mapper/modalElements/VariableConnectorsPanel.js.map +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/VariableEditorHeader.js +3 -3
- package/dist/cjs/components/template-context-mapper/modalElements/VariableEditorHeader.js.map +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/WhatsAppTemplateCardButtonV2.js +1 -1
- package/dist/cjs/components/template-context-mapper/modalElements/WhatsAppTemplateCardButtonV2.js.map +1 -1
- package/dist/cjs/components/template-preview/EmailTemplateThumbnailPreview.js +1 -1
- package/dist/cjs/components/template-preview/EmailTemplateThumbnailPreview.js.map +1 -1
- package/dist/cjs/components/template-preview/RCS/RCSButtons.js +1 -1
- package/dist/cjs/components/template-preview/RCS/RCSButtons.js.map +1 -1
- package/dist/cjs/components/template-preview/RCS/RCSChatHeader.js +1 -1
- package/dist/cjs/components/template-preview/RCS/RCSChatHeader.js.map +1 -1
- package/dist/cjs/components/template-preview/RCS/RCSChatPreview.js +1 -1
- package/dist/cjs/components/template-preview/RCS/RCSChatPreview.js.map +1 -1
- package/dist/cjs/components/template-preview/RCS/RCSMediaCard.js +1 -1
- package/dist/cjs/components/template-preview/RCS/RCSMediaCard.js.map +1 -1
- package/dist/cjs/components/template-preview/RCS/RCSTemplateLikePreview.js +3 -3
- package/dist/cjs/components/template-preview/RCS/RCSTemplateLikePreview.js.map +1 -1
- package/dist/cjs/components/template-preview/SMS/SMSBubble.js +3 -3
- package/dist/cjs/components/template-preview/SMS/SMSBubble.js.map +1 -1
- package/dist/cjs/components/template-preview/SmsTemplatePreview.js +1 -1
- package/dist/cjs/components/template-preview/SmsTemplatePreview.js.map +1 -1
- package/dist/cjs/components/template-preview/TemplatePreview.js +1 -1
- package/dist/cjs/components/template-preview/TemplatePreview.js.map +1 -1
- package/dist/cjs/components/template-preview/WhatsApp/ChatBtn.js +1 -1
- package/dist/cjs/components/template-preview/WhatsApp/ChatBtn.js.map +1 -1
- package/dist/cjs/components/template-preview/WhatsApp/ChatHeader.js +1 -1
- package/dist/cjs/components/template-preview/WhatsApp/ChatHeader.js.map +1 -1
- package/dist/cjs/components/template-preview/WhatsApp/ChatUI.js +2 -2
- package/dist/cjs/components/template-preview/WhatsApp/ChatUI.js.map +1 -1
- package/dist/cjs/components/template-preview/WhatsApp/ChatUiV2.js +4 -4
- package/dist/cjs/components/template-preview/WhatsApp/ChatUiV2.js.map +1 -1
- package/dist/cjs/components/template-preview/WhatsApp/LimitedTimeOffer/LimitedTimeOffer.index.js +3 -3
- package/dist/cjs/components/template-preview/WhatsApp/LimitedTimeOffer/LimitedTimeOffer.index.js.map +1 -1
- package/dist/cjs/components/template-preview/WhatsApp/MediaCard.js +1 -1
- package/dist/cjs/components/template-preview/WhatsApp/MediaCard.js.map +1 -1
- package/dist/cjs/components/template-preview/WhatsApp/RenderTemplateWithVariable.js +2 -2
- package/dist/cjs/components/template-preview/WhatsApp/RenderTemplateWithVariable.js.map +1 -1
- package/dist/cjs/components/template-preview/WhatsApp/WhatsAppLikePreview.js +5 -5
- package/dist/cjs/components/template-preview/WhatsApp/WhatsAppLikePreview.js.map +1 -1
- package/dist/cjs/components/template-preview/WhatsApp/WhatsAppLikePreviewV2.js +7 -7
- package/dist/cjs/components/template-preview/WhatsApp/WhatsAppLikePreviewV2.js.map +1 -1
- package/dist/cjs/components/template-preview/WhatsAppTemplatePreview.js +1 -1
- package/dist/cjs/components/template-preview/WhatsAppTemplatePreview.js.map +1 -1
- package/dist/cjs/components/template-preview/helpers/TemplateCreatorHelper.js +1 -1
- package/dist/cjs/components/template-preview/helpers/TemplateCreatorHelper.js.map +1 -1
- package/dist/cjs/components/template-preview/models/RCSTemplate.js.map +1 -1
- package/dist/cjs/components/template-preview/webpush/WebpushPreview.js +1 -1
- package/dist/cjs/components/template-preview/webpush/WebpushPreview.js.map +1 -1
- package/dist/cjs/components/testimonial-card/TestimonialCard.js +1 -1
- package/dist/cjs/components/testimonial-card/TestimonialCard.js.map +1 -1
- package/dist/cjs/components/text-picker/TextPickerCategoryCard.js +3 -3
- package/dist/cjs/components/text-picker/TextPickerCategoryCard.js.map +1 -1
- package/dist/cjs/components/text-picker/TextPickerFooter.js +3 -3
- package/dist/cjs/components/text-picker/TextPickerFooter.js.map +1 -1
- package/dist/cjs/components/text-picker/TextPickerItemRow.js +6 -6
- package/dist/cjs/components/text-picker/TextPickerItemRow.js.map +1 -1
- package/dist/cjs/components/text-picker/TextPickerModal.js +10 -10
- package/dist/cjs/components/text-picker/TextPickerModal.js.map +1 -1
- package/dist/cjs/components/text-picker/TextPickerSelectAllRow.js +6 -6
- package/dist/cjs/components/text-picker/TextPickerSelectAllRow.js.map +1 -1
- package/dist/cjs/components/thumbnail/Thumbnail.js +1 -1
- package/dist/cjs/components/thumbnail/Thumbnail.js.map +1 -1
- package/dist/cjs/components/toaster/Toaster.js +1 -1
- package/dist/cjs/components/toaster/Toaster.js.map +1 -1
- package/dist/cjs/components/tooltips/Tooltip.js +2 -2
- package/dist/cjs/components/tooltips/Tooltip.js.map +1 -1
- package/dist/cjs/components/tooltips/TooltipInternal.js +4 -4
- package/dist/cjs/components/tooltips/TooltipInternal.js.map +1 -1
- package/dist/cjs/components/unsatisfactory-response-list/UnsatisfactoryCountIntentWiseModal.js +1 -1
- package/dist/cjs/components/unsatisfactory-response-list/UnsatisfactoryCountIntentWiseModal.js.map +1 -1
- package/dist/cjs/components/unsatisfactory-response-list/UnsatisfactoryResponseList.js +1 -1
- package/dist/cjs/components/unsatisfactory-response-list/UnsatisfactoryResponseList.js.map +1 -1
- package/dist/cjs/components/variable-picker-v3/Content.js +1 -1
- package/dist/cjs/components/variable-picker-v3/Content.js.map +1 -1
- package/dist/cjs/components/variable-picker-v3/DefaultVariableContent.js +1 -1
- package/dist/cjs/components/variable-picker-v3/DefaultVariableContent.js.map +1 -1
- package/dist/cjs/components/variable-picker-v3/NoResult.js +2 -2
- package/dist/cjs/components/variable-picker-v3/NoResult.js.map +1 -1
- package/dist/cjs/components/variable-picker-v3/SubHeaderItems.js +1 -1
- package/dist/cjs/components/variable-picker-v3/SubHeaderItems.js.map +1 -1
- package/dist/cjs/components/variable-picker-v3/VariablePicker.js +1 -1
- package/dist/cjs/components/variable-picker-v3/VariablePicker.js.map +1 -1
- package/dist/cjs/components/variable-picker-v3/highlightSearchText.js +1 -1
- package/dist/cjs/components/variable-picker-v3/highlightSearchText.js.map +1 -1
- package/dist/cjs/components/vertical-full-screen-modal/component.js +1 -1
- package/dist/cjs/components/vertical-full-screen-modal/component.js.map +1 -1
- package/dist/cjs/components/whats-new/WhatsNew.js +1 -1
- package/dist/cjs/components/whats-new/WhatsNew.js.map +1 -1
- package/dist/cjs/components/whats-new/WhatsNewButton.js +2 -2
- package/dist/cjs/components/whats-new/WhatsNewButton.js.map +1 -1
- package/dist/cjs/components/whats-new/WhatsNewPanel.js +1 -1
- package/dist/cjs/components/whats-new/WhatsNewPanel.js.map +1 -1
- package/dist/cjs/components/whats-new/WhatsNewProvider.js +1 -1
- package/dist/cjs/components/whats-new/WhatsNewProvider.js.map +1 -1
- package/dist/cjs/components/zeroState/ZeroState.js +3 -3
- package/dist/cjs/components/zeroState/ZeroState.js.map +1 -1
- package/dist/cjs/editor/BikEditor.js +1 -1
- package/dist/cjs/editor/BikEditor.js.map +1 -1
- package/dist/cjs/editor/extensions/mention/MentionDropdown.js +1 -1
- package/dist/cjs/editor/extensions/mention/MentionDropdown.js.map +1 -1
- package/dist/cjs/editor/extensions/slashCommand/SlashCommandMenu.js +1 -1
- package/dist/cjs/editor/extensions/slashCommand/SlashCommandMenu.js.map +1 -1
- package/dist/cjs/editor/floating/LinkBubbleMenu.js +1 -1
- package/dist/cjs/editor/floating/LinkBubbleMenu.js.map +1 -1
- package/dist/cjs/editor/toolbar/BikEditorToolbar.js +1 -1
- package/dist/cjs/editor/toolbar/BikEditorToolbar.js.map +1 -1
- package/dist/cjs/icons/Actions/Common actions/Activate.js +1 -1
- package/dist/cjs/icons/Actions/Common actions/Activate.js.map +1 -1
- package/dist/cjs/icons/Actions/Common actions/Code.js +1 -1
- package/dist/cjs/icons/Actions/Common actions/Code.js.map +1 -1
- package/dist/cjs/icons/Actions/Common actions/Cross.js +1 -1
- package/dist/cjs/icons/Actions/Common actions/Cross.js.map +1 -1
- package/dist/cjs/icons/Actions/Common actions/Deactivate.js +1 -1
- package/dist/cjs/icons/Actions/Common actions/Deactivate.js.map +1 -1
- package/dist/cjs/icons/Actions/Common actions/Delete.js +1 -1
- package/dist/cjs/icons/Actions/Common actions/Delete.js.map +1 -1
- package/dist/cjs/icons/Actions/Common actions/Edit.js +1 -1
- package/dist/cjs/icons/Actions/Common actions/Edit.js.map +1 -1
- package/dist/cjs/icons/Actions/Common actions/Forward.js +1 -1
- package/dist/cjs/icons/Actions/Common actions/Forward.js.map +1 -1
- package/dist/cjs/icons/Actions/Common actions/Fullscreen.js +1 -1
- package/dist/cjs/icons/Actions/Common actions/Fullscreen.js.map +1 -1
- package/dist/cjs/icons/Actions/Common actions/LinkSimpleHorizontal.js +1 -1
- package/dist/cjs/icons/Actions/Common actions/LinkSimpleHorizontal.js.map +1 -1
- package/dist/cjs/icons/Actions/Common actions/Minus.js +1 -1
- package/dist/cjs/icons/Actions/Common actions/Minus.js.map +1 -1
- package/dist/cjs/icons/Actions/Common actions/Plus.js +1 -1
- package/dist/cjs/icons/Actions/Common actions/Plus.js.map +1 -1
- package/dist/cjs/icons/Actions/Common actions/SendAirplane.js +1 -1
- package/dist/cjs/icons/Actions/Common actions/SendAirplane.js.map +1 -1
- package/dist/cjs/icons/Actions/Common actions/ShareAndroid.js +1 -1
- package/dist/cjs/icons/Actions/Common actions/ShareAndroid.js.map +1 -1
- package/dist/cjs/icons/Actions/Formatting/CheckboxIcon.js +1 -1
- package/dist/cjs/icons/Actions/Formatting/CheckboxIcon.js.map +1 -1
- package/dist/cjs/icons/Actions/Formatting/Copy.js +1 -1
- package/dist/cjs/icons/Actions/Formatting/Copy.js.map +1 -1
- package/dist/cjs/icons/Actions/Formatting/DecreaseIndent.js +1 -1
- package/dist/cjs/icons/Actions/Formatting/DecreaseIndent.js.map +1 -1
- package/dist/cjs/icons/Actions/Formatting/Dropdown.js +1 -1
- package/dist/cjs/icons/Actions/Formatting/Dropdown.js.map +1 -1
- package/dist/cjs/icons/Actions/Formatting/IncreaseIndent.js +1 -1
- package/dist/cjs/icons/Actions/Formatting/IncreaseIndent.js.map +1 -1
- package/dist/cjs/icons/Actions/Formatting/MultiLine.js +1 -1
- package/dist/cjs/icons/Actions/Formatting/MultiLine.js.map +1 -1
- package/dist/cjs/icons/Actions/Formatting/MultiSelect.js +1 -1
- package/dist/cjs/icons/Actions/Formatting/MultiSelect.js.map +1 -1
- package/dist/cjs/icons/Actions/Formatting/Number.js +1 -1
- package/dist/cjs/icons/Actions/Formatting/Number.js.map +1 -1
- package/dist/cjs/icons/Actions/Formatting/NumberList.js +1 -1
- package/dist/cjs/icons/Actions/Formatting/NumberList.js.map +1 -1
- package/dist/cjs/icons/Actions/Formatting/Quotes.js +1 -1
- package/dist/cjs/icons/Actions/Formatting/Quotes.js.map +1 -1
- package/dist/cjs/icons/Actions/Formatting/Subscript.js +1 -1
- package/dist/cjs/icons/Actions/Formatting/Subscript.js.map +1 -1
- package/dist/cjs/icons/Actions/Formatting/Superscript.js +1 -1
- package/dist/cjs/icons/Actions/Formatting/Superscript.js.map +1 -1
- package/dist/cjs/icons/Actions/Formatting/Text.js +1 -1
- package/dist/cjs/icons/Actions/Formatting/Text.js.map +1 -1
- package/dist/cjs/icons/Actions/Formatting/TextAlignCenter.js +1 -1
- package/dist/cjs/icons/Actions/Formatting/TextAlignCenter.js.map +1 -1
- package/dist/cjs/icons/Actions/Formatting/TextAlignLeft.js +1 -1
- package/dist/cjs/icons/Actions/Formatting/TextAlignLeft.js.map +1 -1
- package/dist/cjs/icons/Actions/Formatting/TextAlignRight.js +1 -1
- package/dist/cjs/icons/Actions/Formatting/TextAlignRight.js.map +1 -1
- package/dist/cjs/icons/Actions/Formatting/TextBold.js +1 -1
- package/dist/cjs/icons/Actions/Formatting/TextBold.js.map +1 -1
- package/dist/cjs/icons/Actions/Formatting/TextItalics.js +1 -1
- package/dist/cjs/icons/Actions/Formatting/TextItalics.js.map +1 -1
- package/dist/cjs/icons/Actions/Formatting/TextJustify.js +1 -1
- package/dist/cjs/icons/Actions/Formatting/TextJustify.js.map +1 -1
- package/dist/cjs/icons/Actions/Formatting/TextStrikethrough.js +1 -1
- package/dist/cjs/icons/Actions/Formatting/TextStrikethrough.js.map +1 -1
- package/dist/cjs/icons/Actions/Formatting/TextUnderline.js +1 -1
- package/dist/cjs/icons/Actions/Formatting/TextUnderline.js.map +1 -1
- package/dist/cjs/icons/Actions/Formatting/Textbox.js +1 -1
- package/dist/cjs/icons/Actions/Formatting/Textbox.js.map +1 -1
- package/dist/cjs/icons/Actions/Navigation/ArrowRedo.js +1 -1
- package/dist/cjs/icons/Actions/Navigation/ArrowRedo.js.map +1 -1
- package/dist/cjs/icons/Actions/Navigation/ArrowUndo.js +1 -1
- package/dist/cjs/icons/Actions/Navigation/ArrowUndo.js.map +1 -1
- package/dist/cjs/icons/Actions/Navigation/LogIn.js +1 -1
- package/dist/cjs/icons/Actions/Navigation/LogIn.js.map +1 -1
- package/dist/cjs/icons/Actions/Navigation/LogOut.js +1 -1
- package/dist/cjs/icons/Actions/Navigation/LogOut.js.map +1 -1
- package/dist/cjs/icons/Actions/Navigation/OpenNewWindow.js +1 -1
- package/dist/cjs/icons/Actions/Navigation/OpenNewWindow.js.map +1 -1
- package/dist/cjs/icons/Actions/Navigation/Refresh.js +1 -1
- package/dist/cjs/icons/Actions/Navigation/Refresh.js.map +1 -1
- package/dist/cjs/icons/Actions/Navigation/Rewind.js +1 -1
- package/dist/cjs/icons/Actions/Navigation/Rewind.js.map +1 -1
- package/dist/cjs/icons/Actions/Navigation/Sync.js +1 -1
- package/dist/cjs/icons/Actions/Navigation/Sync.js.map +1 -1
- package/dist/cjs/icons/Actions/Navigation/Whatsapp.js +1 -1
- package/dist/cjs/icons/Actions/Navigation/Whatsapp.js.map +1 -1
- package/dist/cjs/icons/Actions/Selection/HandleDrag.js +1 -1
- package/dist/cjs/icons/Actions/Selection/HandleDrag.js.map +1 -1
- package/dist/cjs/icons/Actions/Selection/SingleChoice.js +1 -1
- package/dist/cjs/icons/Actions/Selection/SingleChoice.js.map +1 -1
- package/dist/cjs/icons/Arrows/Carat/CaratDown.js +1 -1
- package/dist/cjs/icons/Arrows/Carat/CaratDown.js.map +1 -1
- package/dist/cjs/icons/Arrows/Carat/CaratLeft.js +1 -1
- package/dist/cjs/icons/Arrows/Carat/CaratLeft.js.map +1 -1
- package/dist/cjs/icons/Arrows/Carat/CaratRight.js +1 -1
- package/dist/cjs/icons/Arrows/Carat/CaratRight.js.map +1 -1
- package/dist/cjs/icons/Arrows/Carat/CaratUp.js +1 -1
- package/dist/cjs/icons/Arrows/Carat/CaratUp.js.map +1 -1
- package/dist/cjs/icons/Arrows/Chevron/ChevronDown.js +1 -1
- package/dist/cjs/icons/Arrows/Chevron/ChevronDown.js.map +1 -1
- package/dist/cjs/icons/Arrows/Chevron/ChevronLeft.js +1 -1
- package/dist/cjs/icons/Arrows/Chevron/ChevronLeft.js.map +1 -1
- package/dist/cjs/icons/Arrows/Chevron/ChevronRight.js +1 -1
- package/dist/cjs/icons/Arrows/Chevron/ChevronRight.js.map +1 -1
- package/dist/cjs/icons/Arrows/Chevron/ChevronUp.js +1 -1
- package/dist/cjs/icons/Arrows/Chevron/ChevronUp.js.map +1 -1
- package/dist/cjs/icons/Arrows/Double chevron/ChevronDoubleDown.js +1 -1
- package/dist/cjs/icons/Arrows/Double chevron/ChevronDoubleDown.js.map +1 -1
- package/dist/cjs/icons/Arrows/Double chevron/ChevronDoubleLeft.js +1 -1
- package/dist/cjs/icons/Arrows/Double chevron/ChevronDoubleLeft.js.map +1 -1
- package/dist/cjs/icons/Arrows/Double chevron/ChevronDoubleRight.js +1 -1
- package/dist/cjs/icons/Arrows/Double chevron/ChevronDoubleRight.js.map +1 -1
- package/dist/cjs/icons/Arrows/Double chevron/ChevronDoubleUp.js +1 -1
- package/dist/cjs/icons/Arrows/Double chevron/ChevronDoubleUp.js.map +1 -1
- package/dist/cjs/icons/Arrows/Normal arrows/ArrowDown.js +1 -1
- package/dist/cjs/icons/Arrows/Normal arrows/ArrowDown.js.map +1 -1
- package/dist/cjs/icons/Arrows/Normal arrows/ArrowDownLeft.js +1 -1
- package/dist/cjs/icons/Arrows/Normal arrows/ArrowDownLeft.js.map +1 -1
- package/dist/cjs/icons/Arrows/Normal arrows/ArrowDownRight.js +1 -1
- package/dist/cjs/icons/Arrows/Normal arrows/ArrowDownRight.js.map +1 -1
- package/dist/cjs/icons/Arrows/Normal arrows/ArrowLeft.js +1 -1
- package/dist/cjs/icons/Arrows/Normal arrows/ArrowLeft.js.map +1 -1
- package/dist/cjs/icons/Arrows/Normal arrows/ArrowRight.js +1 -1
- package/dist/cjs/icons/Arrows/Normal arrows/ArrowRight.js.map +1 -1
- package/dist/cjs/icons/Arrows/Normal arrows/ArrowUp.js +1 -1
- package/dist/cjs/icons/Arrows/Normal arrows/ArrowUp.js.map +1 -1
- package/dist/cjs/icons/Arrows/Normal arrows/ArrowUpLeft.js +1 -1
- package/dist/cjs/icons/Arrows/Normal arrows/ArrowUpLeft.js.map +1 -1
- package/dist/cjs/icons/Arrows/Normal arrows/ArrowUpRight.js +1 -1
- package/dist/cjs/icons/Arrows/Normal arrows/ArrowUpRight.js.map +1 -1
- package/dist/cjs/icons/Arrows/Special/ArrowSwitch.js +1 -1
- package/dist/cjs/icons/Arrows/Special/ArrowSwitch.js.map +1 -1
- package/dist/cjs/icons/BIK AI specific/AiEmoji.js +1 -1
- package/dist/cjs/icons/BIK AI specific/AiEmoji.js.map +1 -1
- package/dist/cjs/icons/BIK AI specific/AiIcon.js +1 -1
- package/dist/cjs/icons/BIK AI specific/AiIcon.js.map +1 -1
- package/dist/cjs/icons/BIK AI specific/AiRobot.js +1 -1
- package/dist/cjs/icons/BIK AI specific/AiRobot.js.map +1 -1
- package/dist/cjs/icons/BIK AI specific/Expand.js +1 -1
- package/dist/cjs/icons/BIK AI specific/Expand.js.map +1 -1
- package/dist/cjs/icons/BIK AI specific/Frame27389.js +1 -1
- package/dist/cjs/icons/BIK AI specific/Frame27389.js.map +1 -1
- package/dist/cjs/icons/BIK AI specific/Frame27597.js +1 -1
- package/dist/cjs/icons/BIK AI specific/Frame27597.js.map +1 -1
- package/dist/cjs/icons/BIK AI specific/Frame27598.js +1 -1
- package/dist/cjs/icons/BIK AI specific/Frame27598.js.map +1 -1
- package/dist/cjs/icons/BIK AI specific/Frame27599.js +1 -1
- package/dist/cjs/icons/BIK AI specific/Frame27599.js.map +1 -1
- package/dist/cjs/icons/BIK AI specific/GeminiSparkle.js +1 -1
- package/dist/cjs/icons/BIK AI specific/GeminiSparkle.js.map +1 -1
- package/dist/cjs/icons/BIK AI specific/ManifestSparkle.js +1 -1
- package/dist/cjs/icons/BIK AI specific/ManifestSparkle.js.map +1 -1
- package/dist/cjs/icons/BIK AI specific/PricePlease.js +1 -1
- package/dist/cjs/icons/BIK AI specific/PricePlease.js.map +1 -1
- package/dist/cjs/icons/BIK AI specific/Shape.js +1 -1
- package/dist/cjs/icons/BIK AI specific/Shape.js.map +1 -1
- package/dist/cjs/icons/BIK AI specific/Shorter.js +1 -1
- package/dist/cjs/icons/BIK AI specific/Shorter.js.map +1 -1
- package/dist/cjs/icons/BIK AI specific/Sparkling2Line.js +1 -1
- package/dist/cjs/icons/BIK AI specific/Sparkling2Line.js.map +1 -1
- package/dist/cjs/icons/BIK AI specific/Write.js +1 -1
- package/dist/cjs/icons/BIK AI specific/Write.js.map +1 -1
- package/dist/cjs/icons/Informational/Common UI/Bell.js +1 -1
- package/dist/cjs/icons/Informational/Common UI/Bell.js.map +1 -1
- package/dist/cjs/icons/Informational/Common UI/BellSync.js +1 -1
- package/dist/cjs/icons/Informational/Common UI/BellSync.js.map +1 -1
- package/dist/cjs/icons/Informational/Common UI/Bulb.js +1 -1
- package/dist/cjs/icons/Informational/Common UI/Bulb.js.map +1 -1
- package/dist/cjs/icons/Informational/Common UI/Forms.js +1 -1
- package/dist/cjs/icons/Informational/Common UI/Forms.js.map +1 -1
- package/dist/cjs/icons/Informational/Common UI/MenuHamburger.js +1 -1
- package/dist/cjs/icons/Informational/Common UI/MenuHamburger.js.map +1 -1
- package/dist/cjs/icons/Informational/Common UI/MessageSearch.js +1 -1
- package/dist/cjs/icons/Informational/Common UI/MessageSearch.js.map +1 -1
- package/dist/cjs/icons/Informational/Common UI/MoreHorizontal.js +1 -1
- package/dist/cjs/icons/Informational/Common UI/MoreHorizontal.js.map +1 -1
- package/dist/cjs/icons/Informational/Common UI/MoreVertical.js +1 -1
- package/dist/cjs/icons/Informational/Common UI/MoreVertical.js.map +1 -1
- package/dist/cjs/icons/Informational/Common UI/Placeholder.js +1 -1
- package/dist/cjs/icons/Informational/Common UI/Placeholder.js.map +1 -1
- package/dist/cjs/icons/Informational/Common UI/Search.js +1 -1
- package/dist/cjs/icons/Informational/Common UI/Search.js.map +1 -1
- package/dist/cjs/icons/Informational/Common UI/Settings.js +1 -1
- package/dist/cjs/icons/Informational/Common UI/Settings.js.map +1 -1
- package/dist/cjs/icons/Informational/Common UI/Training.js +1 -1
- package/dist/cjs/icons/Informational/Common UI/Training.js.map +1 -1
- package/dist/cjs/icons/Informational/Communication/Chat.js +1 -1
- package/dist/cjs/icons/Informational/Communication/Chat.js.map +1 -1
- package/dist/cjs/icons/Informational/Communication/ChatCheck.js +1 -1
- package/dist/cjs/icons/Informational/Communication/ChatCheck.js.map +1 -1
- package/dist/cjs/icons/Informational/Communication/ChatQuestion.js +1 -1
- package/dist/cjs/icons/Informational/Communication/ChatQuestion.js.map +1 -1
- package/dist/cjs/icons/Informational/Communication/ChatStar.js +1 -1
- package/dist/cjs/icons/Informational/Communication/ChatStar.js.map +1 -1
- package/dist/cjs/icons/Informational/Communication/Email.js +1 -1
- package/dist/cjs/icons/Informational/Communication/Email.js.map +1 -1
- package/dist/cjs/icons/Informational/Communication/LiveChat.js +1 -1
- package/dist/cjs/icons/Informational/Communication/LiveChat.js.map +1 -1
- package/dist/cjs/icons/Informational/Communication/Phone.js +1 -1
- package/dist/cjs/icons/Informational/Communication/Phone.js.map +1 -1
- package/dist/cjs/icons/Informational/Customer intent/ClipboardCheck.js +1 -1
- package/dist/cjs/icons/Informational/Customer intent/ClipboardCheck.js.map +1 -1
- package/dist/cjs/icons/Informational/Customer intent/Experimental.js +1 -1
- package/dist/cjs/icons/Informational/Customer intent/Experimental.js.map +1 -1
- package/dist/cjs/icons/Informational/Customer intent/Help.js +1 -1
- package/dist/cjs/icons/Informational/Customer intent/Help.js.map +1 -1
- package/dist/cjs/icons/Informational/Customer intent/Percent.js +1 -1
- package/dist/cjs/icons/Informational/Customer intent/Percent.js.map +1 -1
- package/dist/cjs/icons/Informational/Customer intent/Purchase.js +1 -1
- package/dist/cjs/icons/Informational/Customer intent/Purchase.js.map +1 -1
- package/dist/cjs/icons/Informational/Customer intent/Services.js +1 -1
- package/dist/cjs/icons/Informational/Customer intent/Services.js.map +1 -1
- package/dist/cjs/icons/Informational/Customer intent/ShoppingCart.js +1 -1
- package/dist/cjs/icons/Informational/Customer intent/ShoppingCart.js.map +1 -1
- package/dist/cjs/icons/Informational/Customer intent/SingleChoice.js +1 -1
- package/dist/cjs/icons/Informational/Customer intent/SingleChoice.js.map +1 -1
- package/dist/cjs/icons/Informational/Customer intent/Unsatisfactory.js +1 -1
- package/dist/cjs/icons/Informational/Customer intent/Unsatisfactory.js.map +1 -1
- package/dist/cjs/icons/Informational/Customer intent/UserSound.js +1 -1
- package/dist/cjs/icons/Informational/Customer intent/UserSound.js.map +1 -1
- package/dist/cjs/icons/Informational/Date and time/Calendar.js +1 -1
- package/dist/cjs/icons/Informational/Date and time/Calendar.js.map +1 -1
- package/dist/cjs/icons/Informational/Date and time/CalendarAdd.js +1 -1
- package/dist/cjs/icons/Informational/Date and time/CalendarAdd.js.map +1 -1
- package/dist/cjs/icons/Informational/Date and time/Clock.js +1 -1
- package/dist/cjs/icons/Informational/Date and time/Clock.js.map +1 -1
- package/dist/cjs/icons/Informational/Date and time/HourGlass.js +1 -1
- package/dist/cjs/icons/Informational/Date and time/HourGlass.js.map +1 -1
- package/dist/cjs/icons/Informational/Date and time/WorkingHours.js +1 -1
- package/dist/cjs/icons/Informational/Date and time/WorkingHours.js.map +1 -1
- package/dist/cjs/icons/Informational/Files and folders/Archive1.js +1 -1
- package/dist/cjs/icons/Informational/Files and folders/Archive1.js.map +1 -1
- package/dist/cjs/icons/Informational/Files and folders/Excel.js +1 -1
- package/dist/cjs/icons/Informational/Files and folders/Excel.js.map +1 -1
- package/dist/cjs/icons/Informational/Files and folders/File.js +1 -1
- package/dist/cjs/icons/Informational/Files and folders/File.js.map +1 -1
- package/dist/cjs/icons/Informational/Files and folders/FileCsv.js +1 -1
- package/dist/cjs/icons/Informational/Files and folders/FileCsv.js.map +1 -1
- package/dist/cjs/icons/Informational/Files and folders/FilePage.js +1 -1
- package/dist/cjs/icons/Informational/Files and folders/FilePage.js.map +1 -1
- package/dist/cjs/icons/Informational/Files and folders/FilePdf.js +1 -1
- package/dist/cjs/icons/Informational/Files and folders/FilePdf.js.map +1 -1
- package/dist/cjs/icons/Informational/Files and folders/Folder.js +1 -1
- package/dist/cjs/icons/Informational/Files and folders/Folder.js.map +1 -1
- package/dist/cjs/icons/Informational/Files and folders/MediaMessage.js +1 -1
- package/dist/cjs/icons/Informational/Files and folders/MediaMessage.js.map +1 -1
- package/dist/cjs/icons/Informational/Files and folders/Move.js +1 -1
- package/dist/cjs/icons/Informational/Files and folders/Move.js.map +1 -1
- package/dist/cjs/icons/Informational/Files and folders/OrderHistory.js +1 -1
- package/dist/cjs/icons/Informational/Files and folders/OrderHistory.js.map +1 -1
- package/dist/cjs/icons/Informational/Files and folders/PrivateNote.js +1 -1
- package/dist/cjs/icons/Informational/Files and folders/PrivateNote.js.map +1 -1
- package/dist/cjs/icons/Informational/Files and folders/TextMessage.js +1 -1
- package/dist/cjs/icons/Informational/Files and folders/TextMessage.js.map +1 -1
- package/dist/cjs/icons/Informational/Files and folders/Unarchive.js +1 -1
- package/dist/cjs/icons/Informational/Files and folders/Unarchive.js.map +1 -1
- package/dist/cjs/icons/Informational/Finance/Bank.js +1 -1
- package/dist/cjs/icons/Informational/Finance/Bank.js.map +1 -1
- package/dist/cjs/icons/Informational/Finance/CashOnDelivery.js +1 -1
- package/dist/cjs/icons/Informational/Finance/CashOnDelivery.js.map +1 -1
- package/dist/cjs/icons/Informational/Finance/ChartLine.js +1 -1
- package/dist/cjs/icons/Informational/Finance/ChartLine.js.map +1 -1
- package/dist/cjs/icons/Informational/Finance/CreditCard.js +1 -1
- package/dist/cjs/icons/Informational/Finance/CreditCard.js.map +1 -1
- package/dist/cjs/icons/Informational/Finance/Growth.js +1 -1
- package/dist/cjs/icons/Informational/Finance/Growth.js.map +1 -1
- package/dist/cjs/icons/Informational/Finance/Money1.js +1 -1
- package/dist/cjs/icons/Informational/Finance/Money1.js.map +1 -1
- package/dist/cjs/icons/Informational/Finance/NoCredits.js +1 -1
- package/dist/cjs/icons/Informational/Finance/NoCredits.js.map +1 -1
- package/dist/cjs/icons/Informational/Finance/Percent.js +1 -1
- package/dist/cjs/icons/Informational/Finance/Percent.js.map +1 -1
- package/dist/cjs/icons/Informational/Finance/Rupee.js +1 -1
- package/dist/cjs/icons/Informational/Finance/Rupee.js.map +1 -1
- package/dist/cjs/icons/Informational/Finance/TablerTicket.js +1 -1
- package/dist/cjs/icons/Informational/Finance/TablerTicket.js.map +1 -1
- package/dist/cjs/icons/Informational/Finance/Wallet.js +1 -1
- package/dist/cjs/icons/Informational/Finance/Wallet.js.map +1 -1
- package/dist/cjs/icons/Informational/General/AlertTriangle.js +1 -1
- package/dist/cjs/icons/Informational/General/AlertTriangle.js.map +1 -1
- package/dist/cjs/icons/Informational/General/Check.js +1 -1
- package/dist/cjs/icons/Informational/General/Check.js.map +1 -1
- package/dist/cjs/icons/Informational/General/CheckDouble.js +1 -1
- package/dist/cjs/icons/Informational/General/CheckDouble.js.map +1 -1
- package/dist/cjs/icons/Informational/General/CloseTicket1.js +1 -1
- package/dist/cjs/icons/Informational/General/CloseTicket1.js.map +1 -1
- package/dist/cjs/icons/Informational/General/Error.js +1 -1
- package/dist/cjs/icons/Informational/General/Error.js.map +1 -1
- package/dist/cjs/icons/Informational/General/FailDoc.js +1 -1
- package/dist/cjs/icons/Informational/General/FailDoc.js.map +1 -1
- package/dist/cjs/icons/Informational/General/Help.js +1 -1
- package/dist/cjs/icons/Informational/General/Help.js.map +1 -1
- package/dist/cjs/icons/Informational/General/IcList.js +1 -1
- package/dist/cjs/icons/Informational/General/IcList.js.map +1 -1
- package/dist/cjs/icons/Informational/General/Info.js +1 -1
- package/dist/cjs/icons/Informational/General/Info.js.map +1 -1
- package/dist/cjs/icons/Informational/General/NewTicket.js +1 -1
- package/dist/cjs/icons/Informational/General/NewTicket.js.map +1 -1
- package/dist/cjs/icons/Informational/General/RoundCheck.js +1 -1
- package/dist/cjs/icons/Informational/General/RoundCheck.js.map +1 -1
- package/dist/cjs/icons/Informational/General/Slash.js +1 -1
- package/dist/cjs/icons/Informational/General/Slash.js.map +1 -1
- package/dist/cjs/icons/Informational/Identity/Chatbot.js +1 -1
- package/dist/cjs/icons/Informational/Identity/Chatbot.js.map +1 -1
- package/dist/cjs/icons/Informational/Identity/Contacts.js +1 -1
- package/dist/cjs/icons/Informational/Identity/Contacts.js.map +1 -1
- package/dist/cjs/icons/Informational/Identity/Group.js +1 -1
- package/dist/cjs/icons/Informational/Identity/Group.js.map +1 -1
- package/dist/cjs/icons/Informational/Identity/IdCard.js +1 -1
- package/dist/cjs/icons/Informational/Identity/IdCard.js.map +1 -1
- package/dist/cjs/icons/Informational/Identity/Person.js +1 -1
- package/dist/cjs/icons/Informational/Identity/Person.js.map +1 -1
- package/dist/cjs/icons/Informational/Identity/Robot.js +1 -1
- package/dist/cjs/icons/Informational/Identity/Robot.js.map +1 -1
- package/dist/cjs/icons/Informational/Identity/Union.js +1 -1
- package/dist/cjs/icons/Informational/Identity/Union.js.map +1 -1
- package/dist/cjs/icons/Informational/Identity/Union1.js +1 -1
- package/dist/cjs/icons/Informational/Identity/Union1.js.map +1 -1
- package/dist/cjs/icons/Informational/Identity/UserMinus1.js +1 -1
- package/dist/cjs/icons/Informational/Identity/UserMinus1.js.map +1 -1
- package/dist/cjs/icons/Informational/Identity/UserPlus.js +1 -1
- package/dist/cjs/icons/Informational/Identity/UserPlus.js.map +1 -1
- package/dist/cjs/icons/Informational/Location/Address.js +1 -1
- package/dist/cjs/icons/Informational/Location/Address.js.map +1 -1
- package/dist/cjs/icons/Informational/Location/LanguageChange.js +1 -1
- package/dist/cjs/icons/Informational/Location/LanguageChange.js.map +1 -1
- package/dist/cjs/icons/Informational/Location/MapPin.js +1 -1
- package/dist/cjs/icons/Informational/Location/MapPin.js.map +1 -1
- package/dist/cjs/icons/Informational/Location/Truck.js +1 -1
- package/dist/cjs/icons/Informational/Location/Truck.js.map +1 -1
- package/dist/cjs/icons/Informational/Store related/AllProduct.js +1 -1
- package/dist/cjs/icons/Informational/Store related/AllProduct.js.map +1 -1
- package/dist/cjs/icons/Informational/Store related/Clipboard.js +1 -1
- package/dist/cjs/icons/Informational/Store related/Clipboard.js.map +1 -1
- package/dist/cjs/icons/Informational/Store related/ClipboardCheck.js +1 -1
- package/dist/cjs/icons/Informational/Store related/ClipboardCheck.js.map +1 -1
- package/dist/cjs/icons/Informational/Store related/CustomerReport.js +1 -1
- package/dist/cjs/icons/Informational/Store related/CustomerReport.js.map +1 -1
- package/dist/cjs/icons/Informational/Store related/Head112.js +1 -1
- package/dist/cjs/icons/Informational/Store related/Head112.js.map +1 -1
- package/dist/cjs/icons/Informational/Store related/InventoryReport.js +1 -1
- package/dist/cjs/icons/Informational/Store related/InventoryReport.js.map +1 -1
- package/dist/cjs/icons/Informational/Store related/LegalBalance.js +1 -1
- package/dist/cjs/icons/Informational/Store related/LegalBalance.js.map +1 -1
- package/dist/cjs/icons/Informational/Store related/OrderReport.js +1 -1
- package/dist/cjs/icons/Informational/Store related/OrderReport.js.map +1 -1
- package/dist/cjs/icons/Informational/Store related/PaymentReport.js +1 -1
- package/dist/cjs/icons/Informational/Store related/PaymentReport.js.map +1 -1
- package/dist/cjs/icons/Informational/Store related/Store.js +1 -1
- package/dist/cjs/icons/Informational/Store related/Store.js.map +1 -1
- package/dist/cjs/icons/Informational/Store related/StoreSync.js +1 -1
- package/dist/cjs/icons/Informational/Store related/StoreSync.js.map +1 -1
- package/dist/cjs/icons/Informational/eCommerce/AddLabel.js +1 -1
- package/dist/cjs/icons/Informational/eCommerce/AddLabel.js.map +1 -1
- package/dist/cjs/icons/Informational/eCommerce/Click.js +1 -1
- package/dist/cjs/icons/Informational/eCommerce/Click.js.map +1 -1
- package/dist/cjs/icons/Informational/eCommerce/Filter.js +1 -1
- package/dist/cjs/icons/Informational/eCommerce/Filter.js.map +1 -1
- package/dist/cjs/icons/Informational/eCommerce/Gift1.js +1 -1
- package/dist/cjs/icons/Informational/eCommerce/Gift1.js.map +1 -1
- package/dist/cjs/icons/Informational/eCommerce/GiftMinus.js +1 -1
- package/dist/cjs/icons/Informational/eCommerce/GiftMinus.js.map +1 -1
- package/dist/cjs/icons/Informational/eCommerce/GiftPlus.js +1 -1
- package/dist/cjs/icons/Informational/eCommerce/GiftPlus.js.map +1 -1
- package/dist/cjs/icons/Informational/eCommerce/Promocode.js +1 -1
- package/dist/cjs/icons/Informational/eCommerce/Promocode.js.map +1 -1
- package/dist/cjs/icons/Informational/eCommerce/Receipt.js +1 -1
- package/dist/cjs/icons/Informational/eCommerce/Receipt.js.map +1 -1
- package/dist/cjs/icons/Informational/eCommerce/ShieldCheck.js +1 -1
- package/dist/cjs/icons/Informational/eCommerce/ShieldCheck.js.map +1 -1
- package/dist/cjs/icons/Informational/eCommerce/ShoppingBag.js +1 -1
- package/dist/cjs/icons/Informational/eCommerce/ShoppingBag.js.map +1 -1
- package/dist/cjs/icons/Informational/eCommerce/ShoppingBasket.js +1 -1
- package/dist/cjs/icons/Informational/eCommerce/ShoppingBasket.js.map +1 -1
- package/dist/cjs/icons/Informational/eCommerce/ShoppingCart.js +1 -1
- package/dist/cjs/icons/Informational/eCommerce/ShoppingCart.js.map +1 -1
- package/dist/cjs/icons/Legacy - Bikayi specific/Categories/Box.js +1 -1
- package/dist/cjs/icons/Legacy - Bikayi specific/Categories/Box.js.map +1 -1
- package/dist/cjs/icons/Legacy - Bikayi specific/Categories/Box2.js +1 -1
- package/dist/cjs/icons/Legacy - Bikayi specific/Categories/Box2.js.map +1 -1
- package/dist/cjs/icons/Legacy - Bikayi specific/Navigation/Journeys.js +1 -1
- package/dist/cjs/icons/Legacy - Bikayi specific/Navigation/Journeys.js.map +1 -1
- package/dist/cjs/icons/Legacy - Bikayi specific/Navigation/Services.js +1 -1
- package/dist/cjs/icons/Legacy - Bikayi specific/Navigation/Services.js.map +1 -1
- package/dist/cjs/icons/Legacy - Bikayi specific/Plans/PlanUltimate.js +1 -1
- package/dist/cjs/icons/Legacy - Bikayi specific/Plans/PlanUltimate.js.map +1 -1
- package/dist/cjs/icons/Legacy - Bikayi specific/Services/Businesscard.js +1 -1
- package/dist/cjs/icons/Legacy - Bikayi specific/Services/Businesscard.js.map +1 -1
- package/dist/cjs/icons/Legacy - Bikayi specific/Services/Customdomain.js +1 -1
- package/dist/cjs/icons/Legacy - Bikayi specific/Services/Customdomain.js.map +1 -1
- package/dist/cjs/icons/Legacy - Bikayi specific/Services/Marketing.js +1 -1
- package/dist/cjs/icons/Legacy - Bikayi specific/Services/Marketing.js.map +1 -1
- package/dist/cjs/icons/Legacy - Bikayi specific/Services/PaymentLink.js +1 -1
- package/dist/cjs/icons/Legacy - Bikayi specific/Services/PaymentLink.js.map +1 -1
- package/dist/cjs/icons/Legacy - Bikayi specific/Services/Theme.js +1 -1
- package/dist/cjs/icons/Legacy - Bikayi specific/Services/Theme.js.map +1 -1
- package/dist/cjs/icons/Media/Audio/Microphone.js +1 -1
- package/dist/cjs/icons/Media/Audio/Microphone.js.map +1 -1
- package/dist/cjs/icons/Media/Audio/Pause.js +1 -1
- package/dist/cjs/icons/Media/Audio/Pause.js.map +1 -1
- package/dist/cjs/icons/Media/Audio/Play.js +1 -1
- package/dist/cjs/icons/Media/Audio/Play.js.map +1 -1
- package/dist/cjs/icons/Media/Audio/Sleep.js +1 -1
- package/dist/cjs/icons/Media/Audio/Sleep.js.map +1 -1
- package/dist/cjs/icons/Media/Audio/VolumeMute.js +1 -1
- package/dist/cjs/icons/Media/Audio/VolumeMute.js.map +1 -1
- package/dist/cjs/icons/Media/Audio/VolumeOneline.js +1 -1
- package/dist/cjs/icons/Media/Audio/VolumeOneline.js.map +1 -1
- package/dist/cjs/icons/Media/Audio/VolumeTwoline.js +1 -1
- package/dist/cjs/icons/Media/Audio/VolumeTwoline.js.map +1 -1
- package/dist/cjs/icons/Media/Devices/Desktop.js +1 -1
- package/dist/cjs/icons/Media/Devices/Desktop.js.map +1 -1
- package/dist/cjs/icons/Media/Devices/Smartphone.js +1 -1
- package/dist/cjs/icons/Media/Devices/Smartphone.js.map +1 -1
- package/dist/cjs/icons/Media/Others/BarcodeScan.js +1 -1
- package/dist/cjs/icons/Media/Others/BarcodeScan.js.map +1 -1
- package/dist/cjs/icons/Media/Others/Download.js +1 -1
- package/dist/cjs/icons/Media/Others/Download.js.map +1 -1
- package/dist/cjs/icons/Media/Others/EmojiSmile.js +1 -1
- package/dist/cjs/icons/Media/Others/EmojiSmile.js.map +1 -1
- package/dist/cjs/icons/Media/Others/Paperclip.js +1 -1
- package/dist/cjs/icons/Media/Others/Paperclip.js.map +1 -1
- package/dist/cjs/icons/Media/Others/Upload.js +1 -1
- package/dist/cjs/icons/Media/Others/Upload.js.map +1 -1
- package/dist/cjs/icons/Media/Visual/Camera.js +1 -1
- package/dist/cjs/icons/Media/Visual/Camera.js.map +1 -1
- package/dist/cjs/icons/Media/Visual/CameraAdd.js +1 -1
- package/dist/cjs/icons/Media/Visual/CameraAdd.js.map +1 -1
- package/dist/cjs/icons/Media/Visual/Crop.js +1 -1
- package/dist/cjs/icons/Media/Visual/Crop.js.map +1 -1
- package/dist/cjs/icons/Media/Visual/FlashOff.js +1 -1
- package/dist/cjs/icons/Media/Visual/FlashOff.js.map +1 -1
- package/dist/cjs/icons/Media/Visual/FlashOn.js +1 -1
- package/dist/cjs/icons/Media/Visual/FlashOn.js.map +1 -1
- package/dist/cjs/icons/Media/Visual/Image.js +1 -1
- package/dist/cjs/icons/Media/Visual/Image.js.map +1 -1
- package/dist/cjs/icons/Media/Visual/ImageAdd.js +1 -1
- package/dist/cjs/icons/Media/Visual/ImageAdd.js.map +1 -1
- package/dist/cjs/icons/Media/Visual/Images.js +1 -1
- package/dist/cjs/icons/Media/Visual/Images.js.map +1 -1
- package/dist/cjs/icons/Media/Visual/Maximize.js +1 -1
- package/dist/cjs/icons/Media/Visual/Maximize.js.map +1 -1
- package/dist/cjs/icons/Media/Visual/RotateAnticlockwise.js +1 -1
- package/dist/cjs/icons/Media/Visual/RotateAnticlockwise.js.map +1 -1
- package/dist/cjs/icons/Media/Visual/RotateClockwise.js +1 -1
- package/dist/cjs/icons/Media/Visual/RotateClockwise.js.map +1 -1
- package/dist/cjs/icons/Media/Visual/VideoCamcorder.js +1 -1
- package/dist/cjs/icons/Media/Visual/VideoCamcorder.js.map +1 -1
- package/dist/cjs/icons/Media/Visual/VideoFilm.js +1 -1
- package/dist/cjs/icons/Media/Visual/VideoFilm.js.map +1 -1
- package/dist/cjs/icons/Social/Channels/Bigcommerce.js +1 -1
- package/dist/cjs/icons/Social/Channels/Bigcommerce.js.map +1 -1
- package/dist/cjs/icons/Social/Channels/Email.js +1 -1
- package/dist/cjs/icons/Social/Channels/Email.js.map +1 -1
- package/dist/cjs/icons/Social/Channels/EmailMarketing.js +1 -1
- package/dist/cjs/icons/Social/Channels/EmailMarketing.js.map +1 -1
- package/dist/cjs/icons/Social/Channels/Facebook.js +1 -1
- package/dist/cjs/icons/Social/Channels/Facebook.js.map +1 -1
- package/dist/cjs/icons/Social/Channels/FacebookComment.js +1 -1
- package/dist/cjs/icons/Social/Channels/FacebookComment.js.map +1 -1
- package/dist/cjs/icons/Social/Channels/Instagram.js +1 -1
- package/dist/cjs/icons/Social/Channels/Instagram.js.map +1 -1
- package/dist/cjs/icons/Social/Channels/InstagramIcon.js +1 -1
- package/dist/cjs/icons/Social/Channels/InstagramIcon.js.map +1 -1
- package/dist/cjs/icons/Social/Channels/Messenger.js +1 -1
- package/dist/cjs/icons/Social/Channels/Messenger.js.map +1 -1
- package/dist/cjs/icons/Social/Channels/Tasks.js +1 -1
- package/dist/cjs/icons/Social/Channels/Tasks.js.map +1 -1
- package/dist/cjs/icons/Social/Channels/WebPush.js +1 -1
- package/dist/cjs/icons/Social/Channels/WebPush.js.map +1 -1
- package/dist/cjs/icons/Social/Channels/WhatsApp.js +1 -1
- package/dist/cjs/icons/Social/Channels/WhatsApp.js.map +1 -1
- package/dist/cjs/icons/Social/Social/EmailMarketing.js +1 -1
- package/dist/cjs/icons/Social/Social/EmailMarketing.js.map +1 -1
- package/dist/cjs/icons/Social/Social/Facebook.js +1 -1
- package/dist/cjs/icons/Social/Social/Facebook.js.map +1 -1
- package/dist/cjs/icons/Social/Social/Google.js +1 -1
- package/dist/cjs/icons/Social/Social/Google.js.map +1 -1
- package/dist/cjs/icons/Social/Social/Instagram.js +1 -1
- package/dist/cjs/icons/Social/Social/Instagram.js.map +1 -1
- package/dist/cjs/icons/Social/Social/Messenger.js +1 -1
- package/dist/cjs/icons/Social/Social/Messenger.js.map +1 -1
- package/dist/cjs/icons/Social/Social/Rcs.js +1 -1
- package/dist/cjs/icons/Social/Social/Rcs.js.map +1 -1
- package/dist/cjs/icons/Social/Social/Twitter.js +1 -1
- package/dist/cjs/icons/Social/Social/Twitter.js.map +1 -1
- package/dist/cjs/icons/Social/Social/Website.js +1 -1
- package/dist/cjs/icons/Social/Social/Website.js.map +1 -1
- package/dist/cjs/icons/Social/Social/Whatsapp.js +1 -1
- package/dist/cjs/icons/Social/Social/Whatsapp.js.map +1 -1
- package/dist/cjs/icons/Social/Social/Youtube.js +1 -1
- package/dist/cjs/icons/Social/Social/Youtube.js.map +1 -1
- package/dist/cjs/icons/Toggles/General/Eye.js +1 -1
- package/dist/cjs/icons/Toggles/General/Eye.js.map +1 -1
- package/dist/cjs/icons/Toggles/General/EyeClosed.js +1 -1
- package/dist/cjs/icons/Toggles/General/EyeClosed.js.map +1 -1
- package/dist/cjs/icons/Toggles/General/EyeOff.js +1 -1
- package/dist/cjs/icons/Toggles/General/EyeOff.js.map +1 -1
- package/dist/cjs/icons/Toggles/General/HeartEmpty.js +1 -1
- package/dist/cjs/icons/Toggles/General/HeartEmpty.js.map +1 -1
- package/dist/cjs/icons/Toggles/General/HeartFilled.js +1 -1
- package/dist/cjs/icons/Toggles/General/HeartFilled.js.map +1 -1
- package/dist/cjs/icons/Toggles/General/Lock.js +1 -1
- package/dist/cjs/icons/Toggles/General/Lock.js.map +1 -1
- package/dist/cjs/icons/Toggles/General/StarEmpty.js +1 -1
- package/dist/cjs/icons/Toggles/General/StarEmpty.js.map +1 -1
- package/dist/cjs/icons/Toggles/General/StarFilled.js +1 -1
- package/dist/cjs/icons/Toggles/General/StarFilled.js.map +1 -1
- package/dist/cjs/icons/Toggles/General/StarHalf.js +1 -1
- package/dist/cjs/icons/Toggles/General/StarHalf.js.map +1 -1
- package/dist/cjs/icons/Toggles/General/Unlock.js +1 -1
- package/dist/cjs/icons/Toggles/General/Unlock.js.map +1 -1
- package/dist/esm/assets/icons/ActiveChecklistIcon.js +13 -13
- package/dist/esm/assets/icons/CheckIndicatorIcon.js +5 -5
- package/dist/esm/assets/icons/CompletedChecklistIcon.js +5 -5
- package/dist/esm/assets/icons/CustomiseIcon.js +8 -8
- package/dist/esm/assets/icons/DocsIcon.js +25 -25
- package/dist/esm/assets/icons/DoubtIcon.js +12 -12
- package/dist/esm/assets/icons/EditLabel.js +12 -12
- package/dist/esm/assets/icons/EnableIcon.js +8 -8
- package/dist/esm/assets/icons/GoLiveIcon.js +11 -11
- package/dist/esm/assets/icons/HeadsetIcon.js +5 -5
- package/dist/esm/assets/icons/InactiveChecklistIcon.js +10 -10
- package/dist/esm/assets/icons/ListChecksIcon.js +5 -5
- package/dist/esm/assets/icons/MarketingIcon.js +16 -16
- package/dist/esm/assets/icons/NotesIcon.js +14 -14
- package/dist/esm/assets/icons/NudgesIcon.js +9 -9
- package/dist/esm/assets/icons/OnboardingLogo.js +35 -35
- package/dist/esm/assets/icons/OrderTrackingIcon.js +9 -9
- package/dist/esm/assets/icons/PlusIcon.js +10 -10
- package/dist/esm/assets/icons/ProgressBadgeIcon.js +8 -8
- package/dist/esm/assets/icons/Redirect2Icon.js +4 -4
- package/dist/esm/assets/icons/ShoppingIcon.js +18 -18
- package/dist/esm/assets/icons/SmallCheckIcon.js +6 -6
- package/dist/esm/assets/icons/StepsIcon.js +12 -12
- package/dist/esm/assets/icons/StoreIcon.js +12 -12
- package/dist/esm/assets/icons/SupportIcon.js +5 -5
- package/dist/esm/assets/icons/ThreeColumnsIcon.js +14 -14
- package/dist/esm/assets/icons/TrainingIcon.js +15 -15
- package/dist/esm/assets/icons/searchIcon.js +8 -8
- package/dist/esm/components/BikGiftedChat/Bubble/Bubble.js +52 -52
- package/dist/esm/components/BikGiftedChat/GiftedChat/Day.js +38 -38
- package/dist/esm/components/BikGiftedChat/GiftedChat/GiftedChat.js +55 -55
- package/dist/esm/components/InfiniteScroll/InfiniteScroll.js +20 -20
- package/dist/esm/components/ProgressChecklist/MultiChecklistItem.js +12 -12
- package/dist/esm/components/ProgressChecklist/ProgressChecklist.js +103 -103
- package/dist/esm/components/ProgressChecklist/ProgressChecklist.js.map +1 -1
- package/dist/esm/components/ProgressChecklist/ProgressStepper.js +48 -48
- package/dist/esm/components/ProgressChecklist/SimpleChecklistItem.js +48 -48
- package/dist/esm/components/QueryBuilder/Filters/CustomField/components/CustomField.js +45 -45
- package/dist/esm/components/QueryBuilder/Filters/Event/components/EventFilter.js +71 -71
- package/dist/esm/components/QueryBuilder/Filters/Segment/components/SegmentFilter.js +28 -28
- package/dist/esm/components/QueryBuilder/Filters/UserProperty/components/UserPropertyFilter.js +29 -29
- package/dist/esm/components/QueryBuilder/QueryBuilder.js +31 -31
- package/dist/esm/components/QueryBuilder/Triggers/EVENTS/components/EventsTrigger.js +12 -12
- package/dist/esm/components/QueryBuilder/Triggers/IG/components/IGTrigger.js +1 -1
- package/dist/esm/components/QueryBuilder/Triggers/components/BaseTriggerQueryBuilderNode.js +48 -48
- package/dist/esm/components/QueryBuilder/components/AddNodeButton.js +11 -11
- package/dist/esm/components/QueryBuilder/components/AllowedListDropdown.js +8 -8
- package/dist/esm/components/QueryBuilder/components/Connectors/Components/EmojiPicker.js +39 -39
- package/dist/esm/components/QueryBuilder/components/Connectors/Components/FreeText.js +12 -12
- package/dist/esm/components/QueryBuilder/components/Connectors/Components/FrequencyIntegerPositiveSingle.js +14 -14
- package/dist/esm/components/QueryBuilder/components/Connectors/Components/IgPicker.js +66 -66
- package/dist/esm/components/QueryBuilder/components/Connectors/Components/InTheLast.js +37 -37
- package/dist/esm/components/QueryBuilder/components/Connectors/Components/InTheLastAgo.js +6 -6
- package/dist/esm/components/QueryBuilder/components/Connectors/Components/InTwoLast.js +38 -38
- package/dist/esm/components/QueryBuilder/components/Connectors/Components/IntegerPositiveSingle.js +15 -15
- package/dist/esm/components/QueryBuilder/components/Connectors/Components/IntegerSingleValue.js +19 -19
- package/dist/esm/components/QueryBuilder/components/Connectors/Components/MultiselectDropdownFreeText.js +38 -38
- package/dist/esm/components/QueryBuilder/components/Connectors/Components/NoInput.js +1 -1
- package/dist/esm/components/QueryBuilder/components/Connectors/Components/NumberTime.js +17 -17
- package/dist/esm/components/QueryBuilder/components/Connectors/Components/SingleDate.js +10 -10
- package/dist/esm/components/QueryBuilder/components/Connectors/Components/SingleselectDropdownFreeText.js +32 -32
- package/dist/esm/components/QueryBuilder/components/Connectors/Components/StringSingleValue.js +17 -17
- package/dist/esm/components/QueryBuilder/components/Connectors/Components/TwoDate.js +13 -13
- package/dist/esm/components/QueryBuilder/components/Connectors/Components/TwoNumberInputsSeperatedByAnd.js +28 -28
- package/dist/esm/components/QueryBuilder/components/Connectors/Connector.js +45 -45
- package/dist/esm/components/QueryBuilder/components/DeleteButton.js +4 -4
- package/dist/esm/components/QueryBuilder/components/DropdownWrapper.js +33 -33
- package/dist/esm/components/QueryBuilder/components/InputLoader.js +10 -10
- package/dist/esm/components/QueryBuilder/components/QueryBuilderNode/Base/BaseQueryBuilderNode.js +16 -16
- package/dist/esm/components/QueryBuilder/components/QueryBuilderNode/Property/AddPropertyButton.js +3 -3
- package/dist/esm/components/QueryBuilder/components/QueryBuilderNode/Property/PropertyNode.js +94 -94
- package/dist/esm/components/QueryBuilder/components/QueryBuilderNode/Property/PropertyNodeUIWrapper.js +12 -12
- package/dist/esm/components/QueryBuilder/components/QueryBuilderNode/Property/PropertyNodes.js +41 -41
- package/dist/esm/components/QueryBuilder/components/QueryBuilderNode/Property/PropertyNodes.js.map +1 -1
- package/dist/esm/components/QueryBuilder/components/QueryBuilderNode/QueryBuilderNode.js +16 -16
- package/dist/esm/components/QueryBuilder/components/QueryBuilderNodes.js +55 -55
- package/dist/esm/components/SearchFilter/components/DatePickerButton.js +27 -27
- package/dist/esm/components/SearchFilter/components/DateRangeOnlyButton.js +37 -37
- package/dist/esm/components/SearchFilter/components/FilterChipListRenderer.js +22 -22
- package/dist/esm/components/SearchFilter/components/SearchFilterItem.js +15 -15
- package/dist/esm/components/SearchFilter/index.js +63 -63
- package/dist/esm/components/TablePagination/TablePagination.js +83 -83
- package/dist/esm/components/TablePagination/TablePaginationCard.js +12 -12
- package/dist/esm/components/WhatsAppTextEditor/AIRephraseButton.js +90 -90
- package/dist/esm/components/WhatsAppTextEditor/BorderAnimation.js +22 -22
- package/dist/esm/components/WhatsAppTextEditor/WhatsAppTextEditor.js +449 -449
- package/dist/esm/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.js +124 -124
- package/dist/esm/components/access-token-troubleshoot-dialog/AccessTokenTroubleshootDialog.js +59 -59
- package/dist/esm/components/accordion/Accordion.js +57 -57
- package/dist/esm/components/accordion/AccordionArrow.js +16 -16
- package/dist/esm/components/action-button/ActionButtons.js +29 -29
- package/dist/esm/components/add-variableV2/AddVariableV2.js +210 -210
- package/dist/esm/components/add-variableV2/AddVariableV2SideModal.js +9 -9
- package/dist/esm/components/ai-modals/ActivateBikAI.js +30 -30
- package/dist/esm/components/ai-modals/AiCreditsExhausted.js +34 -34
- package/dist/esm/components/ai-modals/AiCreditsLow.js +34 -34
- package/dist/esm/components/ai-modals/AiSyncProgress.js +42 -42
- package/dist/esm/components/alerts/Alert.js +22 -22
- package/dist/esm/components/analytics-card/AnalyticsCard.js +33 -33
- package/dist/esm/components/analytics-chips-and-dropdowns/AnalyticsChip.js +32 -32
- package/dist/esm/components/analytics-chips-and-dropdowns/AnalyticsChipChannelFooter.js +19 -19
- package/dist/esm/components/analytics-chips-and-dropdowns/AnalyticsDropdown.js +130 -130
- package/dist/esm/components/analytics-chips-and-dropdowns/AnalyticsMetric.js +51 -51
- package/dist/esm/components/analytics-chips-and-dropdowns/AnalyticsMultiChip.js +4 -4
- package/dist/esm/components/analytics-chips-and-dropdowns/AnalyticsTrend.js +177 -177
- package/dist/esm/components/analytics-chips-and-dropdowns/chart/HorizontalBarGraph/HorizontalGraph.js +72 -72
- package/dist/esm/components/analytics-chips-and-dropdowns/chart/Legend/Legend.js +9 -9
- package/dist/esm/components/analytics-chips-and-dropdowns/chart/LineChart/LineChart.js +115 -115
- package/dist/esm/components/analytics-chips-and-dropdowns/chart/LineChart/LineChart.js.map +1 -1
- package/dist/esm/components/analytics-chips-and-dropdowns/chart/Pie/PieChart.js +29 -29
- package/dist/esm/components/analytics-chips-and-dropdowns/chart/Pie/PieChartAnalytics.js +121 -121
- package/dist/esm/components/analytics-chips-and-dropdowns/chart/StackedBarChart/StackedBarChart.js +128 -128
- package/dist/esm/components/analytics-chips-and-dropdowns/chart/StackedBarChart/StackedBarChart.js.map +1 -1
- package/dist/esm/components/analytics-chips-and-dropdowns/chart/StackedBarChart/StackedBarDistributionChart.js +87 -87
- package/dist/esm/components/analytics-chips-and-dropdowns/chart/VerticalBarAndLinearGraph/VerticalBarAndLinearGraph.js +59 -59
- package/dist/esm/components/analytics-chips-and-dropdowns/chart/VerticalBarGraph/FunnelVerticalBarGraph.js +56 -56
- package/dist/esm/components/analytics-chips-and-dropdowns/chart/VerticalBarGraph/FunnelVerticalBarGraph.js.map +1 -1
- package/dist/esm/components/analytics-chips-and-dropdowns/chart/VerticalBarGraph/VerticalGraph.js +133 -133
- package/dist/esm/components/analytics-chips-and-dropdowns/chart/heatmap/HeatMap.js +113 -113
- package/dist/esm/components/analytics-chips-and-dropdowns/chart/heatmap/HeatMapVertical.js +79 -79
- package/dist/esm/components/analytics-chips-and-dropdowns/chart/linearChipGroupedChart/LinearChipGroupedChart.js +47 -47
- package/dist/esm/components/analytics-chips-and-dropdowns/chart/scoreBlock/Chip.js +41 -41
- package/dist/esm/components/analytics-chips-and-dropdowns/chart/scoreBlock/HorizontalBar.js +51 -51
- package/dist/esm/components/analytics-chips-and-dropdowns/chart/scoreBlock/ScoreBlock.js +70 -70
- package/dist/esm/components/avatar/Avatar.d.ts +2 -1
- package/dist/esm/components/avatar/Avatar.js +134 -112
- package/dist/esm/components/avatar/Avatar.js.map +1 -1
- package/dist/esm/components/avatar/Avatar.styled.d.ts +1 -0
- package/dist/esm/components/avatar/Avatar.styled.js +18 -9
- package/dist/esm/components/avatar/Avatar.styled.js.map +1 -1
- package/dist/esm/components/banner/AdBanner.js +10 -10
- package/dist/esm/components/banner/BannerInline.js +38 -38
- package/dist/esm/components/banner/BannerWithImage.js +17 -17
- package/dist/esm/components/banner/CardBanner.js +35 -35
- package/dist/esm/components/banner/CardBannerWithImage.js +18 -18
- package/dist/esm/components/bik-chatbot/components/AIChat.js +44 -44
- package/dist/esm/components/bik-chatbot/components/BIKChatbot.js +52 -52
- package/dist/esm/components/bik-chatbot/components/ChatLoadingState.js +46 -46
- package/dist/esm/components/bik-chatbot/components/ChatWindow.js +113 -113
- package/dist/esm/components/bik-chatbot/components/ThinkingIndicator.js +36 -36
- package/dist/esm/components/bik-chatbot/contexts/AIContext.js +36 -36
- package/dist/esm/components/bik-layout/BikHeader.js +49 -49
- package/dist/esm/components/bik-layout/BikLayout.js +43 -43
- package/dist/esm/components/bik-layout/BikProfile.js +88 -88
- package/dist/esm/components/bik-layout/BikSidebar.js +175 -175
- package/dist/esm/components/bik-layout/FeatureModal.js +36 -36
- package/dist/esm/components/bik-layout/FeatureModalV2.js +41 -41
- package/dist/esm/components/bik-layout/PageLoader.js +11 -11
- package/dist/esm/components/bik-layout/ShowShopifyRestrictedModal.js +37 -37
- package/dist/esm/components/bik-layout/SidebarPopup.js +24 -24
- package/dist/esm/components/bik-layout/SidebarSkeleton.js +17 -17
- package/dist/esm/components/bik-layout/SimpleSidebar.js +57 -57
- package/dist/esm/components/button/Button.js +66 -66
- package/dist/esm/components/button/Button.styled.js +16 -16
- package/dist/esm/components/buttonGroup/ButtonGroup.js +40 -40
- package/dist/esm/components/card-selection-modal/CardSelectionModal.js +26 -26
- package/dist/esm/components/card-selector/CardSelector.js +39 -39
- package/dist/esm/components/card-selector/CardSelectorGroup.js +6 -6
- package/dist/esm/components/carousel/carousel.js +20 -20
- package/dist/esm/components/carousel-preview/CarouselPreview.js +73 -73
- package/dist/esm/components/carousel-preview/CarouselPreviewCard.js +10 -10
- package/dist/esm/components/carousel-preview/CustomCarouselArrows.js +25 -25
- package/dist/esm/components/carousel-secondary/CarouselSecondary.js +48 -48
- package/dist/esm/components/checkBox/CheckBox.js +46 -46
- package/dist/esm/components/checkList/CheckList.js +28 -28
- package/dist/esm/components/code-block/CodeBlock.js +58 -58
- package/dist/esm/components/colourInput/ColourInput.js +17 -17
- package/dist/esm/components/country-code-picker/CountryCodePicker.js +37 -37
- package/dist/esm/components/country-code-picker/CountryPicker.js +61 -61
- package/dist/esm/components/curtain/Curtain.js +51 -51
- package/dist/esm/components/custom-date-time/CustomDateTime.js +45 -45
- package/dist/esm/components/custom-date-time/DateSelector/DateSelector.js +29 -29
- package/dist/esm/components/dashboard-review-popup/DashboardReviewPopUp.js +30 -30
- package/dist/esm/components/dashboard-review-popup/components/FiveStar.js +13 -13
- package/dist/esm/components/dashboard-review-popup/components/Form.js +46 -46
- package/dist/esm/components/dashboard-review-popup/components/ZeroState.js +7 -7
- package/dist/esm/components/data-source-panel/DataSourceInfoFooter.js +121 -121
- package/dist/esm/components/data-source-panel/DataSourcePanel.js +268 -268
- package/dist/esm/components/data-source-panel/Modals/DescriptionModal.js +39 -39
- package/dist/esm/components/datePicker/DatePicker.js +54 -54
- package/dist/esm/components/datePicker/DatePickerWrapper.js +47 -47
- package/dist/esm/components/datePicker/TimePicker.js +48 -48
- package/dist/esm/components/discount-modal/CouponExpiration/CouponExpiration.js +43 -43
- package/dist/esm/components/discount-modal/DiscountModal.js +441 -441
- package/dist/esm/components/discount-modal/DynamicCoupon/DynamicCoupon.js +302 -302
- package/dist/esm/components/discount-modal/DynamicCoupon/MinimumRequirementComponent.js +19 -19
- package/dist/esm/components/discount-modal/DynamicCoupon/ZeroState.js +13 -13
- package/dist/esm/components/discount-modal/StaticCoupon/StaticCoupon.js +21 -21
- package/dist/esm/components/dot-pulse/DotPulse.js +12 -12
- package/dist/esm/components/dropShadow/DropShadow.js +7 -7
- package/dist/esm/components/dropdown/ChipDropdown.js +38 -38
- package/dist/esm/components/dropdown/ChipInput.js +50 -50
- package/dist/esm/components/dropdown/Dropdown.js +73 -73
- package/dist/esm/components/dropdown/DropdownPopover/index.js +51 -51
- package/dist/esm/components/dropdown/MenuItem/MenuItem.js +15 -15
- package/dist/esm/components/dropdown/MultilevelDropdownPopover/index.js +54 -54
- package/dist/esm/components/dropdown/OpenedDropdown/components/OpennedDropdown.js +177 -177
- package/dist/esm/components/dropdown/OpenedDropdown/components/description/Description.js +12 -12
- package/dist/esm/components/dropdown/OpenedDropdown/components/menu/FreeFormMenu.js +22 -22
- package/dist/esm/components/dropdown/OpenedDropdown/components/menu/MenuItem.js +126 -126
- package/dist/esm/components/dropdown/OpenedDropdown/components/menu/MenuList.js +73 -73
- package/dist/esm/components/dropdown/OpenedDropdown/components/menu/SelectAllMenu.js +20 -20
- package/dist/esm/components/dropdown/OpenedDropdown/components/multiSelect/MultiSelectDropdownBottomBar.js +26 -26
- package/dist/esm/components/dropdown/OpenedDropdown/components/searchbox/SearchBox.js +34 -34
- package/dist/esm/components/dropdown/OpenedDropdown/components/searchbox/SearchZeroState.js +12 -12
- package/dist/esm/components/dropdown-button/DropdownButton.js +25 -25
- package/dist/esm/components/dynamic-tabs/DynamicTabs.js +16 -16
- package/dist/esm/components/fab-menu/FABMenu.js +33 -33
- package/dist/esm/components/feature-announcements/FeatureAnnouncementProvider.js +126 -126
- package/dist/esm/components/feature-announcements/MajorUpdatePopup.js +101 -101
- package/dist/esm/components/feature-announcements/MinorUpdatePopup.js +46 -46
- package/dist/esm/components/feature-announcements/VideoModal.js +21 -21
- package/dist/esm/components/file-uploader/FileUploader.js +165 -165
- package/dist/esm/components/floater/floater.js +17 -17
- package/dist/esm/components/floating-action-button/FloatingActionButton.js +92 -92
- package/dist/esm/components/floating-input-dropdown/FloatingInputDropdown.js +41 -41
- package/dist/esm/components/half-doughnut-chart/HalfDoughnutChart.js +64 -64
- package/dist/esm/components/icon-button/IconButton.js +40 -40
- package/dist/esm/components/image-cropper/BikImageCropper.js +40 -40
- package/dist/esm/components/image-cropper/BikImagePipeline/BikImagePipeline.js +59 -59
- package/dist/esm/components/input/ChipInput.js +61 -61
- package/dist/esm/components/input/Input.js +135 -135
- package/dist/esm/components/input-with-vars/InputWithVariables.js +114 -114
- package/dist/esm/components/input-with-vars/customPortal.js +4 -4
- package/dist/esm/components/keywords-input/KeywordsInput.js +21 -21
- package/dist/esm/components/list-item/ListItem.js +45 -45
- package/dist/esm/components/markdown/MarkdownRender.js +71 -71
- package/dist/esm/components/modals/Modal.js +48 -48
- package/dist/esm/components/modals/styledModal.js +61 -61
- package/dist/esm/components/multi-level-dropdown/GroupedMenuList.js +22 -22
- package/dist/esm/components/multi-level-dropdown/MenuItem.js +58 -58
- package/dist/esm/components/multi-level-dropdown/MenuList.js +36 -36
- package/dist/esm/components/multi-level-dropdown/MultiLevelDropdown.js +62 -62
- package/dist/esm/components/navigation-hyperlink/NavigationHyperlink.js +7 -7
- package/dist/esm/components/pagination/Pagination.js +26 -26
- package/dist/esm/components/plans/NewSubscriptionPlan.js +120 -120
- package/dist/esm/components/plans/SubscriptionPlan.js +62 -62
- package/dist/esm/components/plans/SubscriptionPlanSelector.js +74 -74
- package/dist/esm/components/plans/SubscriptionPlansCollected.js +15 -15
- package/dist/esm/components/post-live-checklist/PostLiveChecklist.js +65 -65
- package/dist/esm/components/post-live-checklist-item/PostLiveChecklistItem.js +39 -39
- package/dist/esm/components/postPicker/postPicker.js +110 -110
- package/dist/esm/components/product-picker/ProductPickerModal.js +81 -81
- package/dist/esm/components/product-picker-v2/ProductPickerShimmer.js +12 -12
- package/dist/esm/components/product-picker-v2/ProductPickerTag.js +15 -15
- package/dist/esm/components/product-picker-v2/collectionScreen.js +120 -120
- package/dist/esm/components/product-picker-v2/emptyState.js +10 -10
- package/dist/esm/components/product-picker-v2/modal.js +251 -251
- package/dist/esm/components/product-picker-v2/product.js +120 -120
- package/dist/esm/components/product-picker-v2/productInfoOverlay.js +58 -58
- package/dist/esm/components/product-picker-v2/productScreen.js +180 -180
- package/dist/esm/components/product-picker-v2/rearrangeScreen.js +48 -48
- package/dist/esm/components/product-picker-v2/searchScreen.js +95 -95
- package/dist/esm/components/product-picker-v2/selectedScreen.js +78 -78
- package/dist/esm/components/product-picker-v2/variant.js +52 -52
- package/dist/esm/components/product-picker-v2/variantComponents.js +64 -64
- package/dist/esm/components/progress-bar/CircularProgressBar.js +18 -18
- package/dist/esm/components/progress-bar/ProgressBarComponent.js +15 -15
- package/dist/esm/components/progress-bar-v2/ProgressBarV2.js +54 -54
- package/dist/esm/components/radioButton/RadioButton.js +55 -55
- package/dist/esm/components/radioList/RadioList.js +22 -22
- package/dist/esm/components/resizeImage/index.js +16 -16
- package/dist/esm/components/searchBar/searchBar.js +24 -24
- package/dist/esm/components/shimmer/ShimmerComponent/BikShimmer.js +5 -5
- package/dist/esm/components/shimmer-image/ShimmerImage.js +32 -32
- package/dist/esm/components/side-modal/SideModal.js +34 -34
- package/dist/esm/components/slider/slider.js +63 -63
- package/dist/esm/components/spinner/Spinner.js +5 -5
- package/dist/esm/components/star-rating/Star.js +47 -47
- package/dist/esm/components/star-rating/StarRating.js +23 -23
- package/dist/esm/components/states/ShopifyScopeWrapper.js +20 -20
- package/dist/esm/components/states/StateComponent.js +63 -63
- package/dist/esm/components/states-modal/DeleteConfirmationModal.js +1 -1
- package/dist/esm/components/states-modal/StateModalComponent.js +58 -58
- package/dist/esm/components/stepper/Stepper.js +38 -38
- package/dist/esm/components/switch/Switch.js +35 -35
- package/dist/esm/components/tabs/Tabs.js +69 -69
- package/dist/esm/components/tag/Tag.js +79 -79
- package/dist/esm/components/template-context-mapper/Badge/index.js +8 -8
- package/dist/esm/components/template-context-mapper/TemplateContextMapper.js +94 -94
- package/dist/esm/components/template-context-mapper/modalElements/BackTrackComponent.js +17 -17
- package/dist/esm/components/template-context-mapper/modalElements/Body.js +119 -119
- package/dist/esm/components/template-context-mapper/modalElements/DesktopPreview.js +27 -27
- package/dist/esm/components/template-context-mapper/modalElements/DiscountCodeComponent.js +33 -33
- package/dist/esm/components/template-context-mapper/modalElements/EditMediaModal.js +105 -105
- package/dist/esm/components/template-context-mapper/modalElements/EditMediaV2.js +66 -66
- package/dist/esm/components/template-context-mapper/modalElements/EditWebpushTemplate.js +105 -105
- package/dist/esm/components/template-context-mapper/modalElements/EditWhatsAppCarouselTemplateV2.js +136 -136
- package/dist/esm/components/template-context-mapper/modalElements/EditWhatsAppTemplateV2.js +213 -213
- package/dist/esm/components/template-context-mapper/modalElements/Footer.js +46 -46
- package/dist/esm/components/template-context-mapper/modalElements/Header.js +30 -30
- package/dist/esm/components/template-context-mapper/modalElements/MobilePreview.js +29 -29
- package/dist/esm/components/template-context-mapper/modalElements/ProductBox.js +25 -25
- package/dist/esm/components/template-context-mapper/modalElements/QueryParamsComponent.js +55 -55
- package/dist/esm/components/template-context-mapper/modalElements/TemplateAnalyticsComponent.js +150 -150
- package/dist/esm/components/template-context-mapper/modalElements/TemplateAnalyticsSkeleton.js +35 -35
- package/dist/esm/components/template-context-mapper/modalElements/TemplateSelectModalContent.js +25 -25
- package/dist/esm/components/template-context-mapper/modalElements/VariableConnector.js +273 -273
- package/dist/esm/components/template-context-mapper/modalElements/VariableConnector.js.map +1 -1
- package/dist/esm/components/template-context-mapper/modalElements/VariableConnectorWhatsApp.js +42 -42
- package/dist/esm/components/template-context-mapper/modalElements/VariableConnectorsPanel.js +77 -77
- package/dist/esm/components/template-context-mapper/modalElements/VariableEditorHeader.js +26 -26
- package/dist/esm/components/template-context-mapper/modalElements/WhatsAppTemplateCardButtonV2.js +118 -118
- package/dist/esm/components/template-preview/EmailTemplateThumbnailPreview.js +32 -32
- package/dist/esm/components/template-preview/RCS/RCSButtons.js +19 -19
- package/dist/esm/components/template-preview/RCS/RCSChatHeader.js +22 -22
- package/dist/esm/components/template-preview/RCS/RCSChatPreview.js +120 -121
- package/dist/esm/components/template-preview/RCS/RCSChatPreview.js.map +1 -1
- package/dist/esm/components/template-preview/RCS/RCSMediaCard.js +40 -40
- package/dist/esm/components/template-preview/RCS/RCSTemplateLikePreview.js +27 -27
- package/dist/esm/components/template-preview/SMS/SMSBubble.js +11 -11
- package/dist/esm/components/template-preview/SmsTemplatePreview.js +54 -54
- package/dist/esm/components/template-preview/TemplatePreview.js +91 -91
- package/dist/esm/components/template-preview/WhatsApp/ChatBtn.js +23 -23
- package/dist/esm/components/template-preview/WhatsApp/ChatHeader.js +23 -23
- package/dist/esm/components/template-preview/WhatsApp/ChatUI.js +72 -72
- package/dist/esm/components/template-preview/WhatsApp/ChatUiV2.js +114 -114
- package/dist/esm/components/template-preview/WhatsApp/LimitedTimeOffer/LimitedTimeOffer.index.js +24 -24
- package/dist/esm/components/template-preview/WhatsApp/MediaCard.js +31 -31
- package/dist/esm/components/template-preview/WhatsApp/RenderTemplateWithVariable.js +19 -19
- package/dist/esm/components/template-preview/WhatsApp/WhatsAppLikePreview.js +21 -21
- package/dist/esm/components/template-preview/WhatsApp/WhatsAppLikePreviewV2.js +48 -48
- package/dist/esm/components/template-preview/WhatsAppTemplatePreview.js +49 -49
- package/dist/esm/components/template-preview/helpers/TemplateCreatorHelper.d.ts +0 -7
- package/dist/esm/components/template-preview/helpers/TemplateCreatorHelper.js +28 -45
- package/dist/esm/components/template-preview/helpers/TemplateCreatorHelper.js.map +1 -1
- package/dist/esm/components/template-preview/models/RCSTemplate.d.ts +0 -7
- package/dist/esm/components/template-preview/models/RCSTemplate.js.map +1 -1
- package/dist/esm/components/template-preview/webpush/WebpushPreview.js +42 -42
- package/dist/esm/components/testimonial-card/TestimonialCard.js +54 -54
- package/dist/esm/components/text-picker/TextPickerCategoryCard.js +36 -36
- package/dist/esm/components/text-picker/TextPickerFooter.js +18 -18
- package/dist/esm/components/text-picker/TextPickerItemRow.js +19 -19
- package/dist/esm/components/text-picker/TextPickerModal.js +118 -118
- package/dist/esm/components/text-picker/TextPickerSelectAllRow.js +21 -21
- package/dist/esm/components/thumbnail/Thumbnail.js +16 -16
- package/dist/esm/components/toaster/Toaster.js +84 -84
- package/dist/esm/components/tooltips/Tooltip.js +24 -24
- package/dist/esm/components/tooltips/TooltipInternal.js +20 -20
- package/dist/esm/components/unsatisfactory-response-list/UnsatisfactoryCountIntentWiseModal.js +57 -57
- package/dist/esm/components/unsatisfactory-response-list/UnsatisfactoryResponseList.js +84 -84
- package/dist/esm/components/variable-picker-v3/Content.js +148 -148
- package/dist/esm/components/variable-picker-v3/DefaultVariableContent.js +33 -33
- package/dist/esm/components/variable-picker-v3/NoResult.js +21 -21
- package/dist/esm/components/variable-picker-v3/SubHeaderItems.js +66 -66
- package/dist/esm/components/variable-picker-v3/VariablePicker.js +17 -17
- package/dist/esm/components/variable-picker-v3/highlightSearchText.js +13 -13
- package/dist/esm/components/vertical-full-screen-modal/component.js +37 -37
- package/dist/esm/components/whats-new/WhatsNew.js +34 -34
- package/dist/esm/components/whats-new/WhatsNewButton.js +28 -28
- package/dist/esm/components/whats-new/WhatsNewPanel.js +77 -77
- package/dist/esm/components/whats-new/WhatsNewPanel.js.map +1 -1
- package/dist/esm/components/whats-new/WhatsNewProvider.js +7 -7
- package/dist/esm/components/zeroState/ZeroState.js +29 -29
- package/dist/esm/editor/BikEditor.js +48 -48
- package/dist/esm/editor/extensions/mention/MentionDropdown.js +36 -36
- package/dist/esm/editor/extensions/slashCommand/SlashCommandMenu.js +32 -32
- package/dist/esm/editor/floating/LinkBubbleMenu.js +34 -34
- package/dist/esm/editor/toolbar/BikEditorToolbar.js +46 -46
- package/dist/esm/icons/Actions/Common actions/Activate.js +11 -11
- package/dist/esm/icons/Actions/Common actions/Code.js +19 -19
- package/dist/esm/icons/Actions/Common actions/Cross.js +10 -10
- package/dist/esm/icons/Actions/Common actions/Deactivate.js +13 -13
- package/dist/esm/icons/Actions/Common actions/Delete.js +9 -9
- package/dist/esm/icons/Actions/Common actions/Edit.js +13 -13
- package/dist/esm/icons/Actions/Common actions/Forward.js +9 -9
- package/dist/esm/icons/Actions/Common actions/Fullscreen.js +12 -12
- package/dist/esm/icons/Actions/Common actions/LinkSimpleHorizontal.js +14 -14
- package/dist/esm/icons/Actions/Common actions/Minus.js +12 -12
- package/dist/esm/icons/Actions/Common actions/Plus.js +11 -11
- package/dist/esm/icons/Actions/Common actions/SendAirplane.js +8 -8
- package/dist/esm/icons/Actions/Common actions/ShareAndroid.js +10 -10
- package/dist/esm/icons/Actions/Formatting/CheckboxIcon.js +12 -12
- package/dist/esm/icons/Actions/Formatting/Copy.js +14 -14
- package/dist/esm/icons/Actions/Formatting/DecreaseIndent.js +11 -11
- package/dist/esm/icons/Actions/Formatting/Dropdown.js +9 -9
- package/dist/esm/icons/Actions/Formatting/IncreaseIndent.js +20 -20
- package/dist/esm/icons/Actions/Formatting/MultiLine.js +12 -12
- package/dist/esm/icons/Actions/Formatting/MultiSelect.js +11 -11
- package/dist/esm/icons/Actions/Formatting/Number.js +11 -11
- package/dist/esm/icons/Actions/Formatting/NumberList.js +24 -24
- package/dist/esm/icons/Actions/Formatting/Quotes.js +8 -8
- package/dist/esm/icons/Actions/Formatting/Subscript.js +10 -10
- package/dist/esm/icons/Actions/Formatting/Superscript.js +10 -10
- package/dist/esm/icons/Actions/Formatting/Text.js +8 -8
- package/dist/esm/icons/Actions/Formatting/TextAlignCenter.js +9 -9
- package/dist/esm/icons/Actions/Formatting/TextAlignLeft.js +14 -14
- package/dist/esm/icons/Actions/Formatting/TextAlignRight.js +17 -17
- package/dist/esm/icons/Actions/Formatting/TextBold.js +12 -12
- package/dist/esm/icons/Actions/Formatting/TextItalics.js +12 -12
- package/dist/esm/icons/Actions/Formatting/TextJustify.js +13 -13
- package/dist/esm/icons/Actions/Formatting/TextStrikethrough.js +16 -16
- package/dist/esm/icons/Actions/Formatting/TextUnderline.js +9 -9
- package/dist/esm/icons/Actions/Formatting/Textbox.js +16 -16
- package/dist/esm/icons/Actions/Navigation/ArrowRedo.js +14 -14
- package/dist/esm/icons/Actions/Navigation/ArrowUndo.js +12 -12
- package/dist/esm/icons/Actions/Navigation/LogIn.js +13 -13
- package/dist/esm/icons/Actions/Navigation/LogOut.js +12 -12
- package/dist/esm/icons/Actions/Navigation/OpenNewWindow.js +18 -18
- package/dist/esm/icons/Actions/Navigation/Refresh.js +6 -6
- package/dist/esm/icons/Actions/Navigation/Rewind.js +10 -10
- package/dist/esm/icons/Actions/Navigation/Sync.js +16 -16
- package/dist/esm/icons/Actions/Navigation/Whatsapp.js +7 -7
- package/dist/esm/icons/Actions/Selection/HandleDrag.js +5 -5
- package/dist/esm/icons/Actions/Selection/SingleChoice.js +16 -16
- package/dist/esm/icons/Arrows/Carat/CaratDown.js +11 -11
- package/dist/esm/icons/Arrows/Carat/CaratLeft.js +4 -4
- package/dist/esm/icons/Arrows/Carat/CaratRight.js +13 -13
- package/dist/esm/icons/Arrows/Carat/CaratUp.js +9 -9
- package/dist/esm/icons/Arrows/Chevron/ChevronDown.js +6 -6
- package/dist/esm/icons/Arrows/Chevron/ChevronLeft.js +6 -6
- package/dist/esm/icons/Arrows/Chevron/ChevronRight.js +4 -4
- package/dist/esm/icons/Arrows/Chevron/ChevronUp.js +6 -6
- package/dist/esm/icons/Arrows/Double chevron/ChevronDoubleDown.js +16 -16
- package/dist/esm/icons/Arrows/Double chevron/ChevronDoubleLeft.js +7 -7
- package/dist/esm/icons/Arrows/Double chevron/ChevronDoubleRight.js +14 -14
- package/dist/esm/icons/Arrows/Double chevron/ChevronDoubleUp.js +14 -14
- package/dist/esm/icons/Arrows/Normal arrows/ArrowDown.js +6 -6
- package/dist/esm/icons/Arrows/Normal arrows/ArrowDownLeft.js +11 -11
- package/dist/esm/icons/Arrows/Normal arrows/ArrowDownRight.js +6 -6
- package/dist/esm/icons/Arrows/Normal arrows/ArrowLeft.js +11 -11
- package/dist/esm/icons/Arrows/Normal arrows/ArrowRight.js +13 -13
- package/dist/esm/icons/Arrows/Normal arrows/ArrowUp.js +10 -10
- package/dist/esm/icons/Arrows/Normal arrows/ArrowUpLeft.js +11 -11
- package/dist/esm/icons/Arrows/Normal arrows/ArrowUpRight.js +13 -13
- package/dist/esm/icons/Arrows/Special/ArrowSwitch.js +10 -10
- package/dist/esm/icons/BIK AI specific/AiEmoji.js +25 -25
- package/dist/esm/icons/BIK AI specific/AiIcon.js +18 -18
- package/dist/esm/icons/BIK AI specific/AiRobot.js +21 -21
- package/dist/esm/icons/BIK AI specific/Expand.js +26 -26
- package/dist/esm/icons/BIK AI specific/Frame27389.js +9 -9
- package/dist/esm/icons/BIK AI specific/Frame27597.js +7 -7
- package/dist/esm/icons/BIK AI specific/Frame27598.js +8 -8
- package/dist/esm/icons/BIK AI specific/Frame27599.js +10 -10
- package/dist/esm/icons/BIK AI specific/GeminiSparkle.js +7 -7
- package/dist/esm/icons/BIK AI specific/ManifestSparkle.js +26 -26
- package/dist/esm/icons/BIK AI specific/PricePlease.js +16 -16
- package/dist/esm/icons/BIK AI specific/Shape.js +12 -12
- package/dist/esm/icons/BIK AI specific/Shorter.js +14 -14
- package/dist/esm/icons/BIK AI specific/Sparkling2Line.js +14 -14
- package/dist/esm/icons/BIK AI specific/Write.js +9 -9
- package/dist/esm/icons/Informational/Common UI/Bell.js +12 -12
- package/dist/esm/icons/Informational/Common UI/BellSync.js +24 -24
- package/dist/esm/icons/Informational/Common UI/Bulb.js +25 -25
- package/dist/esm/icons/Informational/Common UI/Forms.js +18 -18
- package/dist/esm/icons/Informational/Common UI/MenuHamburger.js +16 -16
- package/dist/esm/icons/Informational/Common UI/MessageSearch.js +10 -10
- package/dist/esm/icons/Informational/Common UI/MoreHorizontal.js +13 -13
- package/dist/esm/icons/Informational/Common UI/MoreVertical.js +16 -16
- package/dist/esm/icons/Informational/Common UI/Placeholder.js +9 -9
- package/dist/esm/icons/Informational/Common UI/Search.js +6 -6
- package/dist/esm/icons/Informational/Common UI/Settings.js +5 -5
- package/dist/esm/icons/Informational/Common UI/Training.js +13 -13
- package/dist/esm/icons/Informational/Communication/Chat.js +13 -13
- package/dist/esm/icons/Informational/Communication/ChatCheck.js +7 -7
- package/dist/esm/icons/Informational/Communication/ChatQuestion.js +20 -20
- package/dist/esm/icons/Informational/Communication/ChatStar.js +14 -14
- package/dist/esm/icons/Informational/Communication/Email.js +12 -12
- package/dist/esm/icons/Informational/Communication/LiveChat.js +14 -14
- package/dist/esm/icons/Informational/Communication/Phone.js +10 -10
- package/dist/esm/icons/Informational/Customer intent/ClipboardCheck.js +5 -5
- package/dist/esm/icons/Informational/Customer intent/Experimental.js +15 -15
- package/dist/esm/icons/Informational/Customer intent/Help.js +8 -8
- package/dist/esm/icons/Informational/Customer intent/Percent.js +6 -6
- package/dist/esm/icons/Informational/Customer intent/Purchase.js +12 -12
- package/dist/esm/icons/Informational/Customer intent/Services.js +10 -10
- package/dist/esm/icons/Informational/Customer intent/ShoppingCart.js +26 -26
- package/dist/esm/icons/Informational/Customer intent/SingleChoice.js +9 -9
- package/dist/esm/icons/Informational/Customer intent/Unsatisfactory.js +16 -16
- package/dist/esm/icons/Informational/Customer intent/UserSound.js +11 -11
- package/dist/esm/icons/Informational/Date and time/Calendar.js +6 -6
- package/dist/esm/icons/Informational/Date and time/CalendarAdd.js +11 -11
- package/dist/esm/icons/Informational/Date and time/Clock.js +6 -6
- package/dist/esm/icons/Informational/Date and time/HourGlass.js +10 -10
- package/dist/esm/icons/Informational/Date and time/WorkingHours.js +22 -22
- package/dist/esm/icons/Informational/Files and folders/Archive1.js +7 -7
- package/dist/esm/icons/Informational/Files and folders/Excel.js +7 -7
- package/dist/esm/icons/Informational/Files and folders/File.js +4 -4
- package/dist/esm/icons/Informational/Files and folders/FileCsv.js +10 -10
- package/dist/esm/icons/Informational/Files and folders/FilePage.js +9 -9
- package/dist/esm/icons/Informational/Files and folders/FilePdf.js +10 -10
- package/dist/esm/icons/Informational/Files and folders/Folder.js +6 -6
- package/dist/esm/icons/Informational/Files and folders/MediaMessage.js +19 -19
- package/dist/esm/icons/Informational/Files and folders/Move.js +5 -5
- package/dist/esm/icons/Informational/Files and folders/OrderHistory.js +15 -15
- package/dist/esm/icons/Informational/Files and folders/PrivateNote.js +10 -10
- package/dist/esm/icons/Informational/Files and folders/TextMessage.js +17 -17
- package/dist/esm/icons/Informational/Files and folders/Unarchive.js +3 -3
- package/dist/esm/icons/Informational/Finance/Bank.js +9 -9
- package/dist/esm/icons/Informational/Finance/CashOnDelivery.js +4 -4
- package/dist/esm/icons/Informational/Finance/ChartLine.js +13 -13
- package/dist/esm/icons/Informational/Finance/CreditCard.js +8 -8
- package/dist/esm/icons/Informational/Finance/Growth.js +16 -16
- package/dist/esm/icons/Informational/Finance/Money1.js +17 -17
- package/dist/esm/icons/Informational/Finance/NoCredits.js +14 -14
- package/dist/esm/icons/Informational/Finance/Percent.js +2 -2
- package/dist/esm/icons/Informational/Finance/Rupee.js +6 -6
- package/dist/esm/icons/Informational/Finance/TablerTicket.js +2 -2
- package/dist/esm/icons/Informational/Finance/Wallet.js +7 -7
- package/dist/esm/icons/Informational/General/AlertTriangle.js +8 -8
- package/dist/esm/icons/Informational/General/Check.js +6 -6
- package/dist/esm/icons/Informational/General/CheckDouble.js +7 -7
- package/dist/esm/icons/Informational/General/CloseTicket1.js +8 -8
- package/dist/esm/icons/Informational/General/Error.js +15 -15
- package/dist/esm/icons/Informational/General/FailDoc.js +6 -6
- package/dist/esm/icons/Informational/General/Help.js +8 -8
- package/dist/esm/icons/Informational/General/IcList.js +22 -22
- package/dist/esm/icons/Informational/General/Info.js +8 -8
- package/dist/esm/icons/Informational/General/NewTicket.js +10 -10
- package/dist/esm/icons/Informational/General/RoundCheck.js +6 -6
- package/dist/esm/icons/Informational/General/Slash.js +2 -2
- package/dist/esm/icons/Informational/Identity/Chatbot.js +13 -13
- package/dist/esm/icons/Informational/Identity/Contacts.js +19 -19
- package/dist/esm/icons/Informational/Identity/Group.js +14 -14
- package/dist/esm/icons/Informational/Identity/IdCard.js +10 -10
- package/dist/esm/icons/Informational/Identity/Person.js +7 -7
- package/dist/esm/icons/Informational/Identity/Robot.js +16 -16
- package/dist/esm/icons/Informational/Identity/Union.js +15 -15
- package/dist/esm/icons/Informational/Identity/Union1.js +25 -25
- package/dist/esm/icons/Informational/Identity/UserMinus1.js +10 -10
- package/dist/esm/icons/Informational/Identity/UserPlus.js +8 -8
- package/dist/esm/icons/Informational/Location/Address.js +4 -4
- package/dist/esm/icons/Informational/Location/LanguageChange.js +18 -18
- package/dist/esm/icons/Informational/Location/MapPin.js +13 -13
- package/dist/esm/icons/Informational/Location/Truck.js +12 -12
- package/dist/esm/icons/Informational/Store related/AllProduct.js +4 -4
- package/dist/esm/icons/Informational/Store related/Clipboard.js +4 -4
- package/dist/esm/icons/Informational/Store related/ClipboardCheck.js +9 -9
- package/dist/esm/icons/Informational/Store related/CustomerReport.js +16 -16
- package/dist/esm/icons/Informational/Store related/Head112.js +8 -8
- package/dist/esm/icons/Informational/Store related/InventoryReport.js +10 -10
- package/dist/esm/icons/Informational/Store related/LegalBalance.js +6 -6
- package/dist/esm/icons/Informational/Store related/OrderReport.js +10 -10
- package/dist/esm/icons/Informational/Store related/PaymentReport.js +8 -8
- package/dist/esm/icons/Informational/Store related/Store.js +7 -7
- package/dist/esm/icons/Informational/Store related/StoreSync.js +12 -12
- package/dist/esm/icons/Informational/eCommerce/AddLabel.js +14 -14
- package/dist/esm/icons/Informational/eCommerce/Click.js +10 -10
- package/dist/esm/icons/Informational/eCommerce/Filter.js +6 -6
- package/dist/esm/icons/Informational/eCommerce/Gift1.js +4 -4
- package/dist/esm/icons/Informational/eCommerce/GiftMinus.js +14 -14
- package/dist/esm/icons/Informational/eCommerce/GiftPlus.js +13 -13
- package/dist/esm/icons/Informational/eCommerce/Promocode.js +14 -14
- package/dist/esm/icons/Informational/eCommerce/Receipt.js +17 -17
- package/dist/esm/icons/Informational/eCommerce/ShieldCheck.js +7 -7
- package/dist/esm/icons/Informational/eCommerce/ShoppingBag.js +5 -5
- package/dist/esm/icons/Informational/eCommerce/ShoppingBasket.js +7 -7
- package/dist/esm/icons/Informational/eCommerce/ShoppingCart.js +16 -16
- package/dist/esm/icons/Legacy - Bikayi specific/Categories/Box.js +10 -10
- package/dist/esm/icons/Legacy - Bikayi specific/Categories/Box2.js +8 -8
- package/dist/esm/icons/Legacy - Bikayi specific/Navigation/Journeys.js +14 -14
- package/dist/esm/icons/Legacy - Bikayi specific/Navigation/Services.js +7 -7
- package/dist/esm/icons/Legacy - Bikayi specific/Plans/PlanUltimate.js +8 -8
- package/dist/esm/icons/Legacy - Bikayi specific/Services/Businesscard.js +9 -9
- package/dist/esm/icons/Legacy - Bikayi specific/Services/Customdomain.js +2 -2
- package/dist/esm/icons/Legacy - Bikayi specific/Services/Marketing.js +9 -9
- package/dist/esm/icons/Legacy - Bikayi specific/Services/PaymentLink.js +9 -9
- package/dist/esm/icons/Legacy - Bikayi specific/Services/Theme.js +9 -9
- package/dist/esm/icons/Media/Audio/Microphone.js +14 -14
- package/dist/esm/icons/Media/Audio/Pause.js +9 -9
- package/dist/esm/icons/Media/Audio/Play.js +7 -7
- package/dist/esm/icons/Media/Audio/Sleep.js +7 -7
- package/dist/esm/icons/Media/Audio/VolumeMute.js +9 -9
- package/dist/esm/icons/Media/Audio/VolumeOneline.js +14 -14
- package/dist/esm/icons/Media/Audio/VolumeTwoline.js +10 -10
- package/dist/esm/icons/Media/Devices/Desktop.js +7 -7
- package/dist/esm/icons/Media/Devices/Smartphone.js +11 -11
- package/dist/esm/icons/Media/Others/BarcodeScan.js +16 -16
- package/dist/esm/icons/Media/Others/Download.js +5 -5
- package/dist/esm/icons/Media/Others/EmojiSmile.js +12 -12
- package/dist/esm/icons/Media/Others/Paperclip.js +8 -8
- package/dist/esm/icons/Media/Others/Upload.js +8 -8
- package/dist/esm/icons/Media/Visual/Camera.js +9 -9
- package/dist/esm/icons/Media/Visual/CameraAdd.js +12 -12
- package/dist/esm/icons/Media/Visual/Crop.js +11 -11
- package/dist/esm/icons/Media/Visual/FlashOff.js +11 -11
- package/dist/esm/icons/Media/Visual/FlashOn.js +9 -9
- package/dist/esm/icons/Media/Visual/Image.js +10 -10
- package/dist/esm/icons/Media/Visual/ImageAdd.js +10 -10
- package/dist/esm/icons/Media/Visual/Images.js +12 -12
- package/dist/esm/icons/Media/Visual/Maximize.js +4 -4
- package/dist/esm/icons/Media/Visual/RotateAnticlockwise.js +10 -10
- package/dist/esm/icons/Media/Visual/RotateClockwise.js +19 -19
- package/dist/esm/icons/Media/Visual/VideoCamcorder.js +4 -4
- package/dist/esm/icons/Media/Visual/VideoFilm.js +4 -4
- package/dist/esm/icons/Social/Channels/Bigcommerce.js +8 -8
- package/dist/esm/icons/Social/Channels/Email.js +3 -3
- package/dist/esm/icons/Social/Channels/EmailMarketing.js +12 -12
- package/dist/esm/icons/Social/Channels/Facebook.js +7 -7
- package/dist/esm/icons/Social/Channels/FacebookComment.js +20 -20
- package/dist/esm/icons/Social/Channels/Instagram.js +6 -6
- package/dist/esm/icons/Social/Channels/InstagramIcon.js +18 -18
- package/dist/esm/icons/Social/Channels/Messenger.js +8 -8
- package/dist/esm/icons/Social/Channels/Tasks.js +14 -14
- package/dist/esm/icons/Social/Channels/WebPush.js +8 -8
- package/dist/esm/icons/Social/Channels/WhatsApp.js +9 -9
- package/dist/esm/icons/Social/Social/EmailMarketing.js +22 -22
- package/dist/esm/icons/Social/Social/Facebook.js +11 -11
- package/dist/esm/icons/Social/Social/Google.js +13 -13
- package/dist/esm/icons/Social/Social/Instagram.js +6 -6
- package/dist/esm/icons/Social/Social/Messenger.js +13 -13
- package/dist/esm/icons/Social/Social/Rcs.js +18 -18
- package/dist/esm/icons/Social/Social/Twitter.js +16 -16
- package/dist/esm/icons/Social/Social/Website.js +8 -8
- package/dist/esm/icons/Social/Social/Whatsapp.js +11 -11
- package/dist/esm/icons/Social/Social/Youtube.js +14 -14
- package/dist/esm/icons/Toggles/General/Eye.js +10 -10
- package/dist/esm/icons/Toggles/General/EyeClosed.js +4 -4
- package/dist/esm/icons/Toggles/General/EyeOff.js +10 -10
- package/dist/esm/icons/Toggles/General/HeartEmpty.js +4 -4
- package/dist/esm/icons/Toggles/General/HeartFilled.js +6 -6
- package/dist/esm/icons/Toggles/General/Lock.js +6 -6
- package/dist/esm/icons/Toggles/General/StarEmpty.js +4 -4
- package/dist/esm/icons/Toggles/General/StarFilled.js +6 -6
- package/dist/esm/icons/Toggles/General/StarHalf.js +5 -5
- package/dist/esm/icons/Toggles/General/Unlock.js +4 -4
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WhatsAppTextEditor.js","sources":["../../../../src/components/WhatsAppTextEditor/WhatsAppTextEditor.tsx"],"sourcesContent":["import CheckIcon from '@src/assets/icons/check.svg';\nimport ChevronLeftIcon from '@src/assets/icons/chevronLeft.svg';\nimport ChevronRightIcon from '@src/assets/icons/chevronRight.svg';\nimport CrossIcon from '@src/assets/icons/cross.svg';\nimport EditIcon from '@src/assets/icons/edit.svg';\nimport InfoIcon from '@src/assets/icons/info.svg';\nimport RewindIcon from '@src/assets/icons/rewind.svg';\nimport ThumbsDownIcon from '@src/assets/icons/thumb-down-line.svg';\nimport ThumbsUpIcon from '@src/assets/icons/thumb-up-line.svg';\nimport { BaseWhatsappContentLangHelper } from '@src/helpers/BaseWhatsappContentLang.helper';\nimport React, {\n\tuseCallback,\n\tuseEffect,\n\tuseImperativeHandle,\n\tuseMemo,\n\tuseRef,\n\tuseState,\n} from 'react';\nimport styled, { keyframes } from 'styled-components';\nimport { COLORS } from '@src/constants/Theme';\nimport type { ApiRequestExecutor } from '../bik-chatbot/types';\nimport type { APIAdapter } from '../bik-chatbot/types/ai';\nimport { Tooltip } from '../tooltips/Tooltip';\nimport { BodyCaption, TitleSmall } from '../TypographyStyle';\nimport {\n\tAIActionPromptConfig,\n\tAIActionPromptRegistry,\n\tDEFAULT_AI_ACTION_MIN_CHARS,\n\tDEFAULT_INSTRUCTION_SUGGESTIONS,\n\tresolveActionPrompts,\n\tTemplateType,\n} from './ai/actionRegistry';\nimport {\n\tAITagPayload,\n\tcomputeAiTagOnAccept,\n\tcomputeAiTagOnPostEdit,\n} from './ai/aiTag';\nimport { buildActionPrompt, requestAISuggestion } from './ai/api';\nimport { AIActionToneOption } from './AIRephraseButton';\nimport {\n\tContainer,\n\tEditorFooterRight,\n\tEditorFooterRow,\n\tEditorFooterTitle,\n\tOuterContainer,\n\tTextSpace,\n} from './CustomEditor.styled';\nimport {\n\tAIActionVariant,\n\tAIEditorActionType,\n\tAIEditorActionTypes,\n\tAIHeaderAction,\n\tEditorActionTypes,\n\tWhatsAppEditorRightSlotProps,\n\tWhatsAppTextEditorHeader,\n} from './WhatsAppTextEditorHeader';\n\nconst LIMIT_REACHED = 'Character limit reached';\nconst REPHRASE_IDLE_MS = 3000;\nconst MAX_REPHRASE_HIGHLIGHTS = 5;\nconst MAX_SUGGESTIONS = 3;\nconst LARGE_INPUT_THRESHOLD = 1200;\nconst AI_TAG_RECOMPUTE_IDLE_MS = 1000;\nconst UTILITY_REPHRASE_PROMPT =\n\t'Rephrase this WhatsApp utility template to improve clarity and readability while preserving variables, intent, and compliance.';\n\nconst skeletonPulse = keyframes`\n\t0% { opacity: 0.55; }\n\t50% { opacity: 1; }\n\t100% { opacity: 0.55; }\n`;\n\nconst EditorSkeletonContainer = styled.div`\n\tpadding: 14px 12px;\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 10px;\n\tmin-height: 150px;\n`;\n\nconst EditorSkeletonLine = styled.div<{ width: string }>`\n\theight: 16px;\n\tborder-radius: 6px;\n\twidth: ${(props) => props.width};\n\tbackground: #ececef;\n\tanimation: ${skeletonPulse} 1.1s ease-in-out infinite;\n`;\n\nconst SuggestionSessionContainer = styled.div`\n\tpadding: 12px;\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 8px;\n\tmax-height: 260px;\n\toverflow-y: scroll;\n\tscrollbar-width: thin;\n\tscrollbar-color: #c8c8cf transparent;\n\t::-webkit-scrollbar {\n\t\twidth: 8px;\n\t}\n\t::-webkit-scrollbar-thumb {\n\t\tbackground: #c8c8cf;\n\t\tborder-radius: 8px;\n\t}\n\t::-webkit-scrollbar-track {\n\t\tbackground: transparent;\n\t}\n`;\n\nconst SuggestionBaselineText = styled.div`\n\ttext-decoration: line-through;\n\tcolor: ${COLORS.content.secondary};\n`;\n\nconst SuggestionCandidateText = styled.div`\n\tcolor: ${COLORS.content.primary};\n`;\n\nconst SuggestionCandidateSkeleton = styled.div`\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 8px;\n\twidth: 100%;\n\tmin-height: 40px;\n`;\n\nconst SuggestionControlsRow = styled.div`\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 6px;\n`;\n\nconst SuggestionCounter = styled.span`\n\tcolor: ${COLORS.content.primary};\n\tfont-size: 14px;\n`;\n\nconst SuggestionIconButton = styled.button`\n\tborder: 0;\n\tbackground: transparent;\n\tpadding: 6px;\n\tborder-radius: 6px;\n\tdisplay: inline-flex;\n\talign-items: center;\n\tjustify-content: center;\n\tcursor: pointer;\n\tcolor: ${COLORS.content.primary};\n\ttransition: background-color 0.12s ease;\n\t:not(:disabled):hover {\n\t\tbackground-color: ${COLORS.surface.hovered};\n\t}\n\t:disabled {\n\t\topacity: 0.35;\n\t\tcursor: not-allowed;\n\t}\n`;\n\n/** Regenerate stays full opacity while disabled so the loading shimmer stays visible (same pulse as editor skeleton). */\nconst SuggestionRegenerateButton = styled(SuggestionIconButton)`\n\t:disabled {\n\t\topacity: 1;\n\t\tcursor: wait;\n\t}\n`;\n\nconst RegenerateIconShimmer = styled.div`\n\twidth: 14px;\n\theight: 14px;\n\tborder-radius: 4px;\n\tbackground: #ececef;\n\tflex-shrink: 0;\n\tanimation: ${skeletonPulse} 1.1s ease-in-out infinite;\n`;\n\n/** Same bottom toolbar slot as `WhatsAppTextEditorHeader` — replaces the full icon/AI panel while open. */\nconst InstructionContainer = styled.div`\n\tbackground: ${COLORS.surface.standard};\n\tdisplay: flex;\n\tflex-direction: column;\n\tpadding: 8px 12px;\n\tgap: 10px;\n\tborder-radius: 0 0 4px 4px;\n\tposition: relative;\n`;\n\nconst InstructionInputRow = styled.div`\n\tborder: 1px solid #f5a4c0;\n\tborder-radius: 10px;\n\tpadding: 8px 10px;\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 10px;\n\tbackground: ${COLORS.surface.standard};\n`;\n\nconst InstructionInput = styled.input`\n\tflex: 1;\n\tmin-width: 0;\n\tborder: 0;\n\toutline: none;\n\tfont-size: 14px;\n\tbackground: transparent;\n\tcolor: ${COLORS.content.primary};\n`;\n\nconst InstructionActions = styled.div`\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 10px;\n`;\n\nconst InstructionCancel = styled.button`\n\tborder: 0;\n\tbackground: transparent;\n\tcolor: ${COLORS.content.secondary};\n\tfont-size: 14px;\n\tfont-weight: 500;\n\tpadding: 0;\n\tcursor: pointer;\n`;\n\nconst InstructionImprove = styled.button`\n\tborder: 1px solid #5d3a72;\n\tcolor: #5d3a72;\n\tbackground: ${COLORS.surface.standard};\n\tborder-radius: 8px;\n\tpadding: 8px 14px;\n\tfont-size: 14px;\n\tline-height: 1.1;\n\tfont-weight: 600;\n\tcursor: pointer;\n`;\n\nconst InstructionSuggestionList = styled.div`\n\tmargin-top: 4px;\n\tborder-radius: 12px;\n\twidth: 331px;\n\tbackground: ${COLORS.surface.standard};\n\tbox-shadow: 0 6px 18px rgba(0, 0, 0, 0.1);\n\toverflow: hidden;\n\tpadding: 4px;\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 2px;\n`;\n\nconst InstructionSuggestionButton = styled.button<{ selected?: boolean }>`\n\twidth: 100%;\n\tborder: 0;\n\tborder-radius: 8px;\n\tbackground: ${(props) => (props.selected ? '#e5f3e8' : 'transparent')};\n\tcolor: ${(props) => (props.selected ? '#1e6b34' : COLORS.content.primary)};\n\ttext-align: left;\n\tpadding: 10px 12px;\n\tfont-size: 14px;\n\tline-height: 1.2;\n\tcursor: pointer;\n\t:hover {\n\t\tbackground: ${(props) =>\n\t\t\tprops.selected ? '#d9e8db' : COLORS.surface.subdued};\n\t}\n`;\n\ntype AIEventName =\n\t| 'ai_action_triggered'\n\t| 'ai_feedback_submitted'\n\t| 'ai_suggestion_accepted'\n\t| 'ai_suggestion_discarded'\n\t| 'ai_suggestion_edited'\n\t| 'ai_instruction_used';\n\nenum AIFeedbackRating {\n\tLIKE = 'like',\n\tDISLIKE = 'dislike',\n}\n\ntype AIEventPayload = {\n\taction_type: AIEditorActionType;\n\ttemplate_id?: string | number;\n\ttemplate_category?: TemplateType;\n\trating?: AIFeedbackRating;\n\tcandidate_index?: number;\n\tinstruction_text?: string;\n};\n\ntype AIActionRequestPayload = {\n\tactionType: AIEditorActionType;\n\tactionVariant?: AIActionVariant;\n\tcurrentText: string;\n\ttemplateType: TemplateType;\n\ttoneId?: string;\n\ttoneLabel?: string;\n\tinstructionText?: string;\n\tprompt: string;\n};\n\ntype AIActionPromptBuildPayload = {\n\tactionType: AIEditorActionType;\n\tactionVariant?: AIActionVariant;\n\tcurrentText: string;\n\ttemplateType: TemplateType;\n\tconfig: AIActionPromptConfig;\n\ttoneId?: string;\n\ttoneLabel?: string;\n\tinstructionText?: string;\n};\n\nexport type CustomEditorProps =\n\tReact.TextareaHTMLAttributes<HTMLTextAreaElement> & {\n\t\tonChange?: (text: string, html: string) => void;\n\t\ttext?: string;\n\t\tRightComponent?: React.ComponentType<WhatsAppEditorRightSlotProps>;\n\t\terror?: string;\n\t\tlimit?: number;\n\t\trows?: number;\n\t\tactions?: EditorActionTypes[];\n\n\t\t/**\n\t\t * Calls only for editor only error, not for errors coming from outside\n\t\t */\n\t\tonError?: (err: string) => void;\n\n\t\tonClickVariable?: (variable: string) => void;\n\t\teditorInstanceKey?: string;\n\t\teditorSessionId?: string;\n\t\ttemplateType?: TemplateType;\n\t\ttemplateId?: string | number;\n\t\trequestExecutor?: ApiRequestExecutor;\n\t\tbaseUrl?: string;\n\t\tendpointPath?: string;\n\t\tuseCase?: string;\n\t\tstoreId?: string;\n\t\tapiAdapter?: APIAdapter;\n\t\tconversationId?: string;\n\t\tsystemId?: string;\n\t\tintent?: string;\n\t\tenabledAIActions?: AIEditorActionType[];\n\t\tdisableBuiltInAIActions?: boolean;\n\t\tpromptOverrides?: AIActionPromptRegistry;\n\t\trephraseTones?: AIActionToneOption[];\n\t\taiActionMinChars?: Partial<Record<AIEditorActionType, number>>;\n\t\tinstructionSuggestions?: string[];\n\t\tonAnalyticsEvent?: (name: AIEventName, payload: AIEventPayload) => void;\n\t\t/**\n\t\t * Fires on AI-tag computations:\n\t\t * - `source: \"accept\"` after accepting a suggestion (addition check: >=50% => true)\n\t\t * - `source: \"post_edit_debounce\"` after edit idle/blur (retention check: <50% => true)\n\t\t * Persist `payload.isAiTagged` (or full payload) in host state and send on save.\n\t\t */\n\t\tonAITagComputed?: (payload: AITagPayload) => void;\n\t\t/**\n\t\t * When true, the editor body was loaded as fully AI-generated (prefill).\n\t\t * The first accepted suggestion will set `initialAiPrefillPhase` on the tag payload;\n\t\t * after that, only baseline vs accepted comparison applies.\n\t\t */\n\t\tprefillWasAiGenerated?: boolean;\n\t\t/**\n\t\t * Optional label above the editor (e.g. section title from the host).\n\t\t * When omitted, the left side of that top row is empty; limit/error stay on the right.\n\t\t */\n\t\teditorHeader?: React.ReactNode;\n\t\tonAIToneSelect?: (actionType: AIEditorActionType, toneId: string) => void;\n\t\tonAIActionRequest?: (\n\t\t\tpayload: AIActionRequestPayload,\n\t\t) => Promise<string | { body?: string }>;\n\t\tonBuildAIPrompt?: (payload: AIActionPromptBuildPayload) => string;\n\t\tonBlur?: React.FocusEventHandler<HTMLTextAreaElement>;\n\t};\nexport type CustomEditorRef = {\n\taddTextOrWrap: (textToAdd: string) => {\n\t\ttext: string;\n\t\thtml: string;\n\t};\n\taddText: (textToAdd: string) => {\n\t\ttext: string;\n\t\thtml: string;\n\t};\n\tget: () => string;\n\tsetCaretPosition(caretPos: number): void;\n};\n\nconst baseWhatsappContentLang = new BaseWhatsappContentLangHelper();\n\nconst WildCardMap: { [key in EditorActionTypes]?: string } = {\n\t[EditorActionTypes.BOLD]: '*',\n\t[EditorActionTypes.ITALIC]: '_',\n\t[EditorActionTypes.STRIKETHROUGH]: '~',\n};\n\nfunction getHighlightStorageKey(editorInstanceKey?: string) {\n\treturn `whatsapp-editor-rephrase-highlight-${editorInstanceKey || 'default'}`;\n}\n\nexport const WhatsAppTextEditor = React.forwardRef<\n\tCustomEditorRef,\n\tCustomEditorProps\n>(\n\t(\n\t\t{\n\t\t\tonChange,\n\t\t\tonClickVariable,\n\t\t\ttext: inputValue,\n\t\t\tRightComponent,\n\t\t\terror,\n\t\t\tlimit,\n\t\t\tonError,\n\t\t\trows,\n\t\t\tactions,\n\t\t\teditorInstanceKey,\n\t\t\teditorSessionId,\n\t\t\ttemplateType = 'marketing',\n\t\t\ttemplateId,\n\t\t\trequestExecutor,\n\t\t\tbaseUrl,\n\t\t\tendpointPath,\n\t\t\tuseCase,\n\t\t\tstoreId,\n\t\t\tapiAdapter,\n\t\t\tconversationId = 'whatsapp-template-editor',\n\t\t\tsystemId = 'whatsapp-writer',\n\t\t\tintent = 'default',\n\t\t\tenabledAIActions = [\n\t\t\t\tAIEditorActionTypes.REPHRASE,\n\t\t\t\tAIEditorActionTypes.SHORTEN,\n\t\t\t\tAIEditorActionTypes.EXPAND,\n\t\t\t\tAIEditorActionTypes.EMOJIFY,\n\t\t\t],\n\t\t\tdisableBuiltInAIActions = false,\n\t\t\tpromptOverrides,\n\t\t\trephraseTones,\n\t\t\taiActionMinChars,\n\t\t\tinstructionSuggestions = DEFAULT_INSTRUCTION_SUGGESTIONS,\n\t\t\tonAnalyticsEvent,\n\t\t\tonAITagComputed,\n\t\t\tprefillWasAiGenerated = false,\n\t\t\teditorHeader,\n\t\t\tonAIToneSelect,\n\t\t\tonAIActionRequest,\n\t\t\tonBuildAIPrompt,\n\t\t\tonBlur: textAreaOnBlur,\n\t\t\t...textAreaProps\n\t\t},\n\t\tref,\n\t) => {\n\t\tconst textSpaceRef = useRef<HTMLTextAreaElement>(null);\n\t\tconst [currentText, setCurrentText] = useState(inputValue || '');\n\t\tconst [isRephraseHighlighted, setIsRephraseHighlighted] = useState(false);\n\t\tconst [rephraseHighlightCount, setRephraseHighlightCount] = useState(0);\n\t\tconst [isGenerating, setIsGenerating] = useState(false);\n\t\tconst [isInstructionInputVisible, setIsInstructionInputVisible] =\n\t\t\tuseState(false);\n\t\tconst [instructionText, setInstructionText] = useState('');\n\t\tconst [toneByAction, setToneByAction] = useState<\n\t\t\tPartial<Record<AIEditorActionType, string>>\n\t\t>({});\n\t\tconst [suggestionBaseText, setSuggestionBaseText] = useState<string | null>(\n\t\t\tnull,\n\t\t);\n\t\tconst [suggestionCandidates, setSuggestionCandidates] = useState<string[]>(\n\t\t\t[],\n\t\t);\n\t\tconst [suggestionIndex, setSuggestionIndex] = useState(0);\n\t\tconst [suggestionActionType, setSuggestionActionType] =\n\t\t\tuseState<AIEditorActionType | null>(null);\n\t\tconst suggestionScrollRef = useRef<HTMLDivElement | null>(null);\n\t\tconst rephraseIdleRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n\t\tconst highlightResetRef = useRef<ReturnType<typeof setTimeout> | null>(\n\t\t\tnull,\n\t\t);\n\t\tconst aiTagRecomputeRef = useRef<ReturnType<typeof setTimeout> | null>(\n\t\t\tnull,\n\t\t);\n\t\t/**\n\t\t * Prior eligibility for rephrase nudge (null = not initialized).\n\t\t * Matches the chip: non-empty trim and length ≥ min — same as `aiHeaderActions` disabled rules.\n\t\t */\n\t\tconst prevRephraseEligibleRef = useRef<boolean | null>(null);\n\t\tconst deferredHtmlRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n\t\tconst lastEmittedEditorErrorRef = useRef<string | null>(null);\n\t\t/** First accept after full-AI prefill (`prefillWasAiGenerated`); cleared after one accept. */\n\t\tconst initialAiPrefillPhaseRef = useRef(!!prefillWasAiGenerated);\n\t\tconst acceptedSuggestionStateRef = useRef<{\n\t\t\tacceptedText: string;\n\t\t\tbaselineText: string;\n\t\t\tactionType: AIEditorActionType;\n\t\t\teditedEventEmitted: boolean;\n\t\t} | null>(null);\n\t\t/** Original prefill body for AI tag recompute; seeded once, never the live `currentText` fallback. */\n\t\tconst prefillBaselineTextRef = useRef('');\n\t\tconst prefillBaselineCapturedRef = useRef(false);\n\t\tconst [feedbackVotesByCandidate, setFeedbackVotesByCandidate] = useState<\n\t\t\tPartial<Record<string, AIFeedbackRating>>\n\t\t>({});\n\t\tconst mountSessionIdRef = useRef(\n\t\t\t`mount-${Date.now().toString(36)}-${Math.random()\n\t\t\t\t.toString(36)\n\t\t\t\t.slice(2, 8)}`,\n\t\t);\n\t\tconst highlightStorageKey = useMemo(() => {\n\t\t\treturn getHighlightStorageKey(\n\t\t\t\t`${editorInstanceKey || 'default'}-${\n\t\t\t\t\teditorSessionId || mountSessionIdRef.current\n\t\t\t\t}`,\n\t\t\t);\n\t\t}, [editorInstanceKey, editorSessionId]);\n\n\t\tuseEffect(() => {\n\t\t\tinitialAiPrefillPhaseRef.current = !!prefillWasAiGenerated;\n\t\t}, [prefillWasAiGenerated, editorInstanceKey]);\n\n\t\tuseEffect(() => {\n\t\t\tprefillBaselineCapturedRef.current = false;\n\t\t\tprefillBaselineTextRef.current = '';\n\t\t}, [editorInstanceKey, editorSessionId]);\n\n\t\tuseEffect(() => {\n\t\t\tif (!prefillWasAiGenerated) {\n\t\t\t\tprefillBaselineCapturedRef.current = false;\n\t\t\t\tprefillBaselineTextRef.current = '';\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (prefillBaselineCapturedRef.current) return;\n\t\t\tconst seed = inputValue ?? '';\n\t\t\tif (seed.length > 0) {\n\t\t\t\tprefillBaselineTextRef.current = seed;\n\t\t\t\tprefillBaselineCapturedRef.current = true;\n\t\t\t}\n\t\t}, [prefillWasAiGenerated, inputValue, editorInstanceKey, editorSessionId]);\n\n\t\tconst activeActionPrompts = useMemo(() => {\n\t\t\treturn resolveActionPrompts(templateType, promptOverrides, rephraseTones);\n\t\t}, [promptOverrides, rephraseTones, templateType]);\n\n\t\tconst filteredInstructionSuggestions = useMemo(() => {\n\t\t\tconst query = instructionText.trim().toLowerCase();\n\t\t\tif (!query) return [];\n\t\t\treturn instructionSuggestions.filter((suggestion) =>\n\t\t\t\tsuggestion.toLowerCase().includes(query),\n\t\t\t);\n\t\t}, [instructionSuggestions, instructionText]);\n\n\t\tconst minCharsByAction = useMemo(() => {\n\t\t\treturn {\n\t\t\t\t...DEFAULT_AI_ACTION_MIN_CHARS,\n\t\t\t\t...(aiActionMinChars || {}),\n\t\t\t};\n\t\t}, [aiActionMinChars]);\n\n\t\tconst rephraseMinChars =\n\t\t\tminCharsByAction[AIEditorActionTypes.REPHRASE] ||\n\t\t\tDEFAULT_AI_ACTION_MIN_CHARS[AIEditorActionTypes.REPHRASE];\n\n\t\tconst anonymizeInstructionText = useCallback((value: string) => {\n\t\t\tconst normalized = value.trim().replace(/\\s+/g, ' ');\n\t\t\tif (!normalized) return '';\n\t\t\tconst words = normalized.split(' ').length;\n\t\t\treturn `[anonymized:length_${normalized.length}:words_${words}]`;\n\t\t}, []);\n\n\t\tconst emitAIEvent = useCallback(\n\t\t\t(name: AIEventName, payload: AIEventPayload) => {\n\t\t\t\tonAnalyticsEvent?.(name, payload);\n\t\t\t},\n\t\t\t[onAnalyticsEvent],\n\t\t);\n\n\t\tconst setEditorText = useCallback((nextText: string) => {\n\t\t\tsetCurrentText((prev) => (prev === nextText ? prev : nextText));\n\t\t}, []);\n\n\t\tconst emitChangeWithGuard = useCallback(\n\t\t\t(nextText: string) => {\n\t\t\t\tif (deferredHtmlRef.current) {\n\t\t\t\t\tclearTimeout(deferredHtmlRef.current);\n\t\t\t\t}\n\t\t\t\tif (nextText.length > LARGE_INPUT_THRESHOLD) {\n\t\t\t\t\tonChange?.(nextText, nextText);\n\t\t\t\t\tdeferredHtmlRef.current = setTimeout(() => {\n\t\t\t\t\t\tonChange?.(nextText, baseWhatsappContentLang.getHTML(nextText));\n\t\t\t\t\t}, 16);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tonChange?.(nextText, baseWhatsappContentLang.getHTML(nextText));\n\t\t\t},\n\t\t\t[onChange],\n\t\t);\n\n\t\tconst emitPostEditAiTagRecompute = useCallback(\n\t\t\t(nextText: string) => {\n\t\t\t\tconst latest = acceptedSuggestionStateRef.current;\n\t\t\t\tconst latestBaseline =\n\t\t\t\t\tlatest?.acceptedText ||\n\t\t\t\t\t(prefillWasAiGenerated ? prefillBaselineTextRef.current : '');\n\t\t\t\tif (!latestBaseline) return;\n\t\t\t\tif (nextText === latestBaseline) return;\n\t\t\t\tconst recomputePayload = computeAiTagOnPostEdit({\n\t\t\t\t\tacceptedAiText: latestBaseline,\n\t\t\t\t\tcurrentEditedText: nextText,\n\t\t\t\t});\n\t\t\t\tonAITagComputed?.({\n\t\t\t\t\t...recomputePayload,\n\t\t\t\t\tsource: 'post_edit_debounce',\n\t\t\t\t});\n\t\t\t},\n\t\t\t[onAITagComputed, prefillWasAiGenerated],\n\t\t);\n\n\t\tconst clearSuggestionSession = useCallback(() => {\n\t\t\tsetSuggestionBaseText(null);\n\t\t\tsetSuggestionCandidates([]);\n\t\t\tsetSuggestionIndex(0);\n\t\t\tsetSuggestionActionType(null);\n\t\t\tsetFeedbackVotesByCandidate({});\n\t\t}, []);\n\n\t\tconst triggerRephraseHighlight = useCallback(() => {\n\t\t\tif (isGenerating) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (!!suggestionBaseText && suggestionCandidates.length > 0) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (rephraseHighlightCount >= MAX_REPHRASE_HIGHLIGHTS) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst nextCount = rephraseHighlightCount + 1;\n\t\t\tsetRephraseHighlightCount(nextCount);\n\t\t\tif (typeof window !== 'undefined' && editorInstanceKey) {\n\t\t\t\tsessionStorage.setItem(highlightStorageKey, String(nextCount));\n\t\t\t}\n\t\t\tsetIsRephraseHighlighted(true);\n\t\t\tif (highlightResetRef.current) {\n\t\t\t\tclearTimeout(highlightResetRef.current);\n\t\t\t}\n\t\t\thighlightResetRef.current = setTimeout(() => {\n\t\t\t\tsetIsRephraseHighlighted(false);\n\t\t\t}, 1200);\n\t\t}, [\n\t\t\teditorInstanceKey,\n\t\t\thighlightStorageKey,\n\t\t\tisGenerating,\n\t\t\tsuggestionBaseText,\n\t\t\tsuggestionCandidates,\n\t\t\trephraseHighlightCount,\n\t\t]);\n\n\t\tconst triggerRephraseHighlightRef = useRef(triggerRephraseHighlight);\n\t\ttriggerRephraseHighlightRef.current = triggerRephraseHighlight;\n\n\t\tfunction handleOnChange(e: React.ChangeEvent<HTMLTextAreaElement>) {\n\t\t\tconst text = e.target.value;\n\t\t\tconst acceptedSuggestion = acceptedSuggestionStateRef.current;\n\t\t\tif (\n\t\t\t\tacceptedSuggestion &&\n\t\t\t\t!acceptedSuggestion.editedEventEmitted &&\n\t\t\t\ttext !== acceptedSuggestion.acceptedText\n\t\t\t) {\n\t\t\t\tacceptedSuggestionStateRef.current = {\n\t\t\t\t\t...acceptedSuggestion,\n\t\t\t\t\teditedEventEmitted: true,\n\t\t\t\t};\n\t\t\t\temitAIEvent('ai_suggestion_edited', {\n\t\t\t\t\taction_type: acceptedSuggestion.actionType,\n\t\t\t\t\ttemplate_id: templateId,\n\t\t\t\t});\n\t\t\t}\n\t\t\tif (aiTagRecomputeRef.current) {\n\t\t\t\tclearTimeout(aiTagRecomputeRef.current);\n\t\t\t\taiTagRecomputeRef.current = null;\n\t\t\t}\n\t\t\tconst baselineAiTextForRecompute =\n\t\t\t\tacceptedSuggestion?.acceptedText ||\n\t\t\t\t(prefillWasAiGenerated ? prefillBaselineTextRef.current : '');\n\t\t\tif (baselineAiTextForRecompute && text !== baselineAiTextForRecompute) {\n\t\t\t\taiTagRecomputeRef.current = setTimeout(() => {\n\t\t\t\t\temitPostEditAiTagRecompute(text);\n\t\t\t\t}, AI_TAG_RECOMPUTE_IDLE_MS);\n\t\t\t}\n\t\t\tsetEditorText(text);\n\t\t\temitChangeWithGuard(text);\n\t\t}\n\n\t\tfunction setCaretPosition(caretPos: number) {\n\t\t\tconst elem = textSpaceRef?.current;\n\n\t\t\tif (elem != null) {\n\t\t\t\tif (elem.selectionStart) {\n\t\t\t\t\telem.focus();\n\t\t\t\t\telem.selectionEnd = caretPos;\n\t\t\t\t} else elem.focus();\n\t\t\t}\n\t\t}\n\n\t\tfunction onActionSelect(actionType: EditorActionTypes) {\n\t\t\tconst wildCard = WildCardMap[actionType];\n\t\t\tif (wildCard && textSpaceRef.current) {\n\t\t\t\tconst start = textSpaceRef.current.selectionStart;\n\t\t\t\tconst end = textSpaceRef.current.selectionEnd;\n\n\t\t\t\tif (start === end) {\n\t\t\t\t\tconst { text } = insertTextAtIndex(wildCard, start);\n\t\t\t\t\tsetCaretPosition(start + 1);\n\t\t\t\t\temitChangeWithGuard(text);\n\t\t\t\t} else {\n\t\t\t\t\tconst { text } = addTextOrWrap(wildCard);\n\t\t\t\t\temitChangeWithGuard(text);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tfunction onEmojiAddition(emoji: string) {\n\t\t\tconst { text } = addText(emoji);\n\t\t\temitChangeWithGuard(text);\n\t\t}\n\n\t\tfunction addTextOrWrap(textToAdd?: string) {\n\t\t\tlet text = textSpaceRef.current?.value ?? '';\n\n\t\t\tif (textSpaceRef.current && textToAdd) {\n\t\t\t\tconst start = textSpaceRef.current.selectionStart;\n\t\t\t\tconst end = textSpaceRef.current.selectionEnd;\n\n\t\t\t\tconst wildCard = textToAdd;\n\t\t\t\tif (start === end) {\n\t\t\t\t\t/** nothing is selected */\n\t\t\t\t\t/** so append the wildcard at the end */\n\n\t\t\t\t\treturn addText(wildCard);\n\t\t\t\t} else {\n\t\t\t\t\ttext = baseWhatsappContentLang.wrappWildcard(\n\t\t\t\t\t\tstart,\n\t\t\t\t\t\tend,\n\t\t\t\t\t\twildCard,\n\t\t\t\t\t\ttext!,\n\t\t\t\t\t);\n\t\t\t\t\tconst html = baseWhatsappContentLang.getHTML(text);\n\t\t\t\t\tsetEditorText(text);\n\t\t\t\t\treturn { text, html };\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn { text: text!, html: text! };\n\t\t}\n\n\t\tfunction addText(textToAdd: string) {\n\t\t\tconst text = textSpaceRef.current?.value ?? '';\n\n\t\t\tif (textSpaceRef.current && textToAdd) {\n\t\t\t\tconst start = textSpaceRef.current.selectionStart;\n\t\t\t\tconst end = textSpaceRef.current.selectionEnd;\n\t\t\t\tif (start === end) {\n\t\t\t\t\treturn insertTextAtIndex(textToAdd, start);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn { text: text!, html: text! };\n\t\t}\n\n\t\tfunction insertTextAtIndex(textToAdd: string, index: number) {\n\t\t\tlet text = textSpaceRef.current?.value ?? '';\n\n\t\t\ttext = text.slice(0, index) + textToAdd + text.slice(index);\n\t\t\tconst html = baseWhatsappContentLang.getHTML(text);\n\t\t\tsetEditorText(text);\n\t\t\treturn { text, html };\n\t\t}\n\n\t\tuseEffect(() => {\n\t\t\tif (typeof window === 'undefined' || !editorInstanceKey) return;\n\t\t\tconst cached = Number(sessionStorage.getItem(highlightStorageKey) || '0');\n\t\t\tif (!Number.isNaN(cached)) {\n\t\t\t\tsetRephraseHighlightCount(cached);\n\t\t\t}\n\t\t\treturn () => {\n\t\t\t\tsessionStorage.removeItem(highlightStorageKey);\n\t\t\t};\n\t\t}, [editorInstanceKey, highlightStorageKey]);\n\n\t\tuseEffect(() => {\n\t\t\tif (isGenerating) {\n\t\t\t\tsetIsRephraseHighlighted(false);\n\t\t\t\tif (rephraseIdleRef.current) {\n\t\t\t\t\tclearTimeout(rephraseIdleRef.current);\n\t\t\t\t\trephraseIdleRef.current = null;\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (!!suggestionBaseText && suggestionCandidates.length > 0) {\n\t\t\t\tsetIsRephraseHighlighted(false);\n\t\t\t\tif (rephraseIdleRef.current) {\n\t\t\t\t\tclearTimeout(rephraseIdleRef.current);\n\t\t\t\t\trephraseIdleRef.current = null;\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst eligible =\n\t\t\t\t!!currentText.trim() && currentText.length >= rephraseMinChars;\n\n\t\t\tif (prevRephraseEligibleRef.current === null) {\n\t\t\t\tprevRephraseEligibleRef.current = eligible;\n\t\t\t\tif (eligible) {\n\t\t\t\t\trephraseIdleRef.current = setTimeout(() => {\n\t\t\t\t\t\ttriggerRephraseHighlightRef.current();\n\t\t\t\t\t}, REPHRASE_IDLE_MS);\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (!eligible) {\n\t\t\t\tprevRephraseEligibleRef.current = false;\n\t\t\t\tsetIsRephraseHighlighted(false);\n\t\t\t\tif (rephraseIdleRef.current) {\n\t\t\t\t\tclearTimeout(rephraseIdleRef.current);\n\t\t\t\t\trephraseIdleRef.current = null;\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst crossedThreshold = !prevRephraseEligibleRef.current && eligible;\n\t\t\tprevRephraseEligibleRef.current = true;\n\n\t\t\tif (crossedThreshold) {\n\t\t\t\ttriggerRephraseHighlightRef.current();\n\t\t\t}\n\n\t\t\tif (rephraseIdleRef.current) {\n\t\t\t\tclearTimeout(rephraseIdleRef.current);\n\t\t\t}\n\t\t\trephraseIdleRef.current = setTimeout(() => {\n\t\t\t\ttriggerRephraseHighlightRef.current();\n\t\t\t}, REPHRASE_IDLE_MS);\n\t\t}, [\n\t\t\tcurrentText,\n\t\t\tisGenerating,\n\t\t\trephraseMinChars,\n\t\t\tsuggestionBaseText,\n\t\t\tsuggestionCandidates,\n\t\t]);\n\n\t\tuseEffect(() => {\n\t\t\treturn () => {\n\t\t\t\tif (rephraseIdleRef.current) clearTimeout(rephraseIdleRef.current);\n\t\t\t\tif (highlightResetRef.current) clearTimeout(highlightResetRef.current);\n\t\t\t\tif (deferredHtmlRef.current) clearTimeout(deferredHtmlRef.current);\n\t\t\t\tif (aiTagRecomputeRef.current) clearTimeout(aiTagRecomputeRef.current);\n\t\t\t};\n\t\t}, []);\n\n\t\tconst activeCandidate = suggestionCandidates[suggestionIndex] || '';\n\t\tconst activeFeedbackCandidateKey = useMemo(() => {\n\t\t\tif (!suggestionActionType || !activeCandidate) return null;\n\t\t\treturn `${suggestionActionType}-${suggestionIndex}-${activeCandidate}`;\n\t\t}, [activeCandidate, suggestionActionType, suggestionIndex]);\n\t\tconst hasFeedbackForActiveCandidate = !!(\n\t\t\tactiveFeedbackCandidateKey &&\n\t\t\tfeedbackVotesByCandidate[activeFeedbackCandidateKey]\n\t\t);\n\t\tconst suggestionBaseHtml = useMemo(\n\t\t\t() => baseWhatsappContentLang.getHTML(suggestionBaseText || ''),\n\t\t\t[suggestionBaseText],\n\t\t);\n\t\tconst activeCandidateHtml = useMemo(\n\t\t\t() => baseWhatsappContentLang.getHTML(activeCandidate),\n\t\t\t[activeCandidate],\n\t\t);\n\t\tconst canRegenerate = suggestionCandidates.length < MAX_SUGGESTIONS;\n\t\tconst shouldShowSuggestionSession =\n\t\t\t!!suggestionBaseText && suggestionCandidates.length > 0;\n\t\tconst isPrevSuggestionDisabled =\n\t\t\tsuggestionCandidates.length <= 1 || suggestionIndex <= 0;\n\t\tconst isNextSuggestionDisabled =\n\t\t\tsuggestionCandidates.length <= 1 ||\n\t\t\tsuggestionIndex >= suggestionCandidates.length - 1;\n\n\t\tuseEffect(() => {\n\t\t\tif (!shouldShowSuggestionSession) return;\n\t\t\tconst node = suggestionScrollRef.current;\n\t\t\tif (!node) return;\n\t\t\tnode.scrollTop = node.scrollHeight;\n\t\t}, [activeCandidate, shouldShowSuggestionSession, isGenerating]);\n\n\t\tconst executeAIAction = useCallback(\n\t\t\tasync (\n\t\t\t\tactionType: AIEditorActionType,\n\t\t\t\tregenerateExisting = false,\n\t\t\t\tinstructionOverride?: string,\n\t\t\t\ttoneOverrideId?: string,\n\t\t\t\tactionVariant: AIActionVariant = AIActionVariant.DEFAULT,\n\t\t\t) => {\n\t\t\t\tif (\n\t\t\t\t\t!onAIActionRequest &&\n\t\t\t\t\t!apiAdapter &&\n\t\t\t\t\t(!requestExecutor || !baseUrl)\n\t\t\t\t) {\n\t\t\t\t\tonError?.('AI configuration missing');\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif (!currentText.trim()) return;\n\t\t\t\tconst minCharsForAction =\n\t\t\t\t\tminCharsByAction[actionType] ||\n\t\t\t\t\tDEFAULT_AI_ACTION_MIN_CHARS[actionType] ||\n\t\t\t\t\t50;\n\t\t\t\tif (currentText.length < minCharsForAction) return;\n\t\t\t\tif (isGenerating) return;\n\t\t\t\tif (regenerateExisting && !canRegenerate) return;\n\n\t\t\t\tconst baseConfig = activeActionPrompts[actionType];\n\t\t\t\tconst config =\n\t\t\t\t\tactionType === AIEditorActionTypes.REPHRASE &&\n\t\t\t\t\ttemplateType === 'utility' &&\n\t\t\t\t\tactionVariant === AIActionVariant.REPHRASE\n\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t...baseConfig,\n\t\t\t\t\t\t\t\tlabel: 'Rephrase',\n\t\t\t\t\t\t\t\tbasePrompt: UTILITY_REPHRASE_PROMPT,\n\t\t\t\t\t\t }\n\t\t\t\t\t\t: baseConfig;\n\t\t\t\t// Tone is sent only after explicit user selection (or explicit override),\n\t\t\t\t// not from default tone metadata.\n\t\t\t\tconst selectedToneId = toneOverrideId || toneByAction[actionType];\n\t\t\t\tconst selectedTone = config.tones?.find(\n\t\t\t\t\t(tone) => tone.id === selectedToneId,\n\t\t\t\t);\n\t\t\t\tconst instructionForPrompt =\n\t\t\t\t\tinstructionOverride !== undefined\n\t\t\t\t\t\t? instructionOverride\n\t\t\t\t\t\t: instructionText;\n\t\t\t\tconst prompt =\n\t\t\t\t\tonBuildAIPrompt?.({\n\t\t\t\t\t\tactionType,\n\t\t\t\t\t\tactionVariant,\n\t\t\t\t\t\tcurrentText,\n\t\t\t\t\t\ttemplateType,\n\t\t\t\t\t\tconfig,\n\t\t\t\t\t\ttoneId: selectedToneId,\n\t\t\t\t\t\ttoneLabel: selectedTone?.label,\n\t\t\t\t\t\tinstructionText: instructionForPrompt || undefined,\n\t\t\t\t\t}) ||\n\t\t\t\t\tbuildActionPrompt({\n\t\t\t\t\t\tconfig,\n\t\t\t\t\t\tcurrentText,\n\t\t\t\t\t\tselectedToneId,\n\t\t\t\t\t\tinstructionText: instructionForPrompt,\n\t\t\t\t\t});\n\n\t\t\t\tsetIsGenerating(true);\n\t\t\t\temitAIEvent('ai_action_triggered', {\n\t\t\t\t\taction_type: actionType,\n\t\t\t\t\ttemplate_id: templateId,\n\t\t\t\t\ttemplate_category: templateType,\n\t\t\t\t});\n\t\t\t\ttry {\n\t\t\t\t\tconst result = onAIActionRequest\n\t\t\t\t\t\t? await onAIActionRequest({\n\t\t\t\t\t\t\t\tactionType,\n\t\t\t\t\t\t\t\tactionVariant,\n\t\t\t\t\t\t\t\tcurrentText,\n\t\t\t\t\t\t\t\ttemplateType,\n\t\t\t\t\t\t\t\ttoneId: selectedToneId,\n\t\t\t\t\t\t\t\ttoneLabel: selectedTone?.label,\n\t\t\t\t\t\t\t\tinstructionText: instructionForPrompt || undefined,\n\t\t\t\t\t\t\t\tprompt,\n\t\t\t\t\t\t })\n\t\t\t\t\t\t: await requestAISuggestion({\n\t\t\t\t\t\t\t\tapiAdapter,\n\t\t\t\t\t\t\t\trequestExecutor,\n\t\t\t\t\t\t\t\tbaseUrl,\n\t\t\t\t\t\t\t\tendpointPath,\n\t\t\t\t\t\t\t\tprompt,\n\t\t\t\t\t\t\t\tintent,\n\t\t\t\t\t\t\t\tconversationId,\n\t\t\t\t\t\t\t\tsystemId,\n\t\t\t\t\t\t\t\tuseCase,\n\t\t\t\t\t\t\t\tstoreId,\n\t\t\t\t\t\t });\n\t\t\t\t\tconst candidate =\n\t\t\t\t\t\ttypeof result === 'string'\n\t\t\t\t\t\t\t? result.trim()\n\t\t\t\t\t\t\t: (result?.body || '').trim();\n\t\t\t\t\tif (!candidate) return;\n\t\t\t\t\tif (!regenerateExisting) {\n\t\t\t\t\t\tsetSuggestionBaseText(currentText);\n\t\t\t\t\t\tsetSuggestionActionType(actionType);\n\t\t\t\t\t\tsetSuggestionCandidates([candidate]);\n\t\t\t\t\t\tsetSuggestionIndex(0);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tsetSuggestionCandidates((prev) => {\n\t\t\t\t\t\tconst next = [...prev, candidate].slice(0, MAX_SUGGESTIONS);\n\t\t\t\t\t\tsetSuggestionIndex(next.length - 1);\n\t\t\t\t\t\treturn next;\n\t\t\t\t\t});\n\t\t\t\t} catch (e) {\n\t\t\t\t\tonError?.('Failed to generate AI suggestion');\n\t\t\t\t} finally {\n\t\t\t\t\tsetIsGenerating(false);\n\t\t\t\t}\n\t\t\t},\n\t\t\t[\n\t\t\t\trequestExecutor,\n\t\t\t\tbaseUrl,\n\t\t\t\tcurrentText,\n\t\t\t\tisGenerating,\n\t\t\t\tcanRegenerate,\n\t\t\t\tactiveActionPrompts,\n\t\t\t\ttoneByAction,\n\t\t\t\tinstructionText,\n\t\t\t\temitAIEvent,\n\t\t\t\ttemplateId,\n\t\t\t\tendpointPath,\n\t\t\t\tapiAdapter,\n\t\t\t\tintent,\n\t\t\t\tconversationId,\n\t\t\t\tsystemId,\n\t\t\t\tuseCase,\n\t\t\t\tstoreId,\n\t\t\t\ttemplateType,\n\t\t\t\tonError,\n\t\t\t\tminCharsByAction,\n\t\t\t\tonAIActionRequest,\n\t\t\t\tonBuildAIPrompt,\n\t\t\t],\n\t\t);\n\n\t\tconst handleAcceptSuggestion = useCallback(() => {\n\t\t\tif (!activeCandidate || !suggestionBaseText || !suggestionActionType)\n\t\t\t\treturn;\n\t\t\tsetEditorText(activeCandidate);\n\t\t\temitChangeWithGuard(activeCandidate);\n\t\t\temitAIEvent('ai_suggestion_accepted', {\n\t\t\t\taction_type: suggestionActionType,\n\t\t\t\ttemplate_id: templateId,\n\t\t\t});\n\t\t\tacceptedSuggestionStateRef.current = {\n\t\t\t\tacceptedText: activeCandidate,\n\t\t\t\tbaselineText: suggestionBaseText,\n\t\t\t\tactionType: suggestionActionType,\n\t\t\t\teditedEventEmitted: false,\n\t\t\t};\n\n\t\t\tconst inInitialAiPhase = initialAiPrefillPhaseRef.current;\n\t\t\tconst tagPayload = computeAiTagOnAccept({\n\t\t\t\tbaselineText: suggestionBaseText,\n\t\t\t\tacceptedText: activeCandidate,\n\t\t\t\tinitialAiPrefillPhase: inInitialAiPhase,\n\t\t\t});\n\t\t\tif (inInitialAiPhase) {\n\t\t\t\tinitialAiPrefillPhaseRef.current = false;\n\t\t\t}\n\t\t\tonAITagComputed?.({\n\t\t\t\t...tagPayload,\n\t\t\t\tsource: 'accept',\n\t\t\t});\n\t\t\tclearSuggestionSession();\n\t\t}, [\n\t\t\tactiveCandidate,\n\t\t\tsuggestionBaseText,\n\t\t\tsuggestionActionType,\n\t\t\tsetEditorText,\n\t\t\temitChangeWithGuard,\n\t\t\temitAIEvent,\n\t\t\ttemplateId,\n\t\t\tonAITagComputed,\n\t\t\tclearSuggestionSession,\n\t\t]);\n\n\t\tconst handleRejectSuggestion = useCallback(() => {\n\t\t\tif (!suggestionActionType) return;\n\t\t\temitAIEvent('ai_suggestion_discarded', {\n\t\t\t\taction_type: suggestionActionType,\n\t\t\t\ttemplate_id: templateId,\n\t\t\t});\n\t\t\tclearSuggestionSession();\n\t\t}, [clearSuggestionSession, emitAIEvent, suggestionActionType, templateId]);\n\n\t\tconst handleFeedback = useCallback(\n\t\t\t(rating: AIFeedbackRating) => {\n\t\t\t\tif (!suggestionActionType || !activeFeedbackCandidateKey) return;\n\t\t\t\tif (feedbackVotesByCandidate[activeFeedbackCandidateKey]) return;\n\t\t\t\tsetFeedbackVotesByCandidate((prev) => ({\n\t\t\t\t\t...prev,\n\t\t\t\t\t[activeFeedbackCandidateKey]: rating,\n\t\t\t\t}));\n\t\t\t\temitAIEvent('ai_feedback_submitted', {\n\t\t\t\t\taction_type: suggestionActionType,\n\t\t\t\t\ttemplate_id: templateId,\n\t\t\t\t\trating,\n\t\t\t\t\tcandidate_index: suggestionIndex + 1,\n\t\t\t\t});\n\t\t\t},\n\t\t\t[\n\t\t\t\tactiveFeedbackCandidateKey,\n\t\t\t\temitAIEvent,\n\t\t\t\tfeedbackVotesByCandidate,\n\t\t\t\tsuggestionActionType,\n\t\t\t\tsuggestionIndex,\n\t\t\t\ttemplateId,\n\t\t\t],\n\t\t);\n\n\t\tconst aiHeaderActions: AIHeaderAction[] = useMemo(() => {\n\t\t\tif (disableBuiltInAIActions) return [];\n\t\t\treturn enabledAIActions.map((actionType) => {\n\t\t\t\tconst actionConfig = activeActionPrompts[actionType];\n\t\t\t\tconst toneId = toneByAction[actionType];\n\t\t\t\treturn {\n\t\t\t\t\ttype: actionType,\n\t\t\t\t\tlabel: actionConfig.label,\n\t\t\t\t\tisPrimary: actionType === AIEditorActionTypes.REPHRASE,\n\t\t\t\t\tloading: isGenerating && suggestionActionType === actionType,\n\t\t\t\t\thighlighted:\n\t\t\t\t\t\tactionType === AIEditorActionTypes.REPHRASE &&\n\t\t\t\t\t\tisRephraseHighlighted,\n\t\t\t\t\tdisabled:\n\t\t\t\t\t\t!currentText.trim() ||\n\t\t\t\t\t\tcurrentText.length <\n\t\t\t\t\t\t\t(minCharsByAction[actionType] ||\n\t\t\t\t\t\t\t\tDEFAULT_AI_ACTION_MIN_CHARS[actionType] ||\n\t\t\t\t\t\t\t\t50) ||\n\t\t\t\t\t\tisGenerating ||\n\t\t\t\t\t\t(shouldShowSuggestionSession &&\n\t\t\t\t\t\t\tsuggestionActionType === actionType),\n\t\t\t\t\tshowToneDropdown:\n\t\t\t\t\t\tactionType === AIEditorActionTypes.REPHRASE &&\n\t\t\t\t\t\t!!actionConfig.tones?.length,\n\t\t\t\t\ttones: actionConfig.tones,\n\t\t\t\t\tselectedToneId: toneId,\n\t\t\t\t};\n\t\t\t});\n\t\t}, [\n\t\t\tenabledAIActions,\n\t\t\tdisableBuiltInAIActions,\n\t\t\tactiveActionPrompts,\n\t\t\ttoneByAction,\n\t\t\tisGenerating,\n\t\t\tsuggestionActionType,\n\t\t\tshouldShowSuggestionSession,\n\t\t\tisRephraseHighlighted,\n\t\t\tcurrentText,\n\t\t\tminCharsByAction,\n\t\t]);\n\n\t\tuseImperativeHandle(\n\t\t\tref,\n\t\t\t() => {\n\t\t\t\treturn {\n\t\t\t\t\taddTextOrWrap,\n\t\t\t\t\taddText,\n\t\t\t\t\tget() {\n\t\t\t\t\t\treturn currentText;\n\t\t\t\t\t},\n\t\t\t\t\tsetCaretPosition,\n\t\t\t\t};\n\t\t\t},\n\t\t\t[addTextOrWrap, addText, currentText],\n\t\t);\n\n\t\tuseEffect(() => {\n\t\t\tif (inputValue === undefined) return;\n\t\t\tsetEditorText(inputValue || '');\n\t\t}, [inputValue, setEditorText]);\n\n\t\tuseEffect(() => {\n\t\t\tif (!limit || !onError) return;\n\t\t\tconst nextError =\n\t\t\t\tcurrentText.length > limit ? LIMIT_REACHED : error ?? '';\n\t\t\tif (lastEmittedEditorErrorRef.current === nextError) return;\n\t\t\tlastEmittedEditorErrorRef.current = nextError;\n\t\t\tonError(nextError);\n\t\t}, [currentText, error, limit, onError]);\n\n\t\treturn (\n\t\t\t<OuterContainer>\n\t\t\t\t<EditorFooterRow>\n\t\t\t\t\t<EditorFooterTitle>\n\t\t\t\t\t\t{editorHeader ? (\n\t\t\t\t\t\t\t<TitleSmall data-test=\"body-text-for-edit-template\">\n\t\t\t\t\t\t\t\t{editorHeader}\n\t\t\t\t\t\t\t</TitleSmall>\n\t\t\t\t\t\t) : null}\n\t\t\t\t\t</EditorFooterTitle>\n\t\t\t\t\t<EditorFooterRight>\n\t\t\t\t\t\t{error && error !== LIMIT_REACHED ? (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<InfoIcon\n\t\t\t\t\t\t\t\t\twidth={16}\n\t\t\t\t\t\t\t\t\theight={16}\n\t\t\t\t\t\t\t\t\tcolor={COLORS.content.negative}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<BodyCaption color={COLORS.content.negative}>\n\t\t\t\t\t\t\t\t\t{error}\n\t\t\t\t\t\t\t\t</BodyCaption>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t{limit ? (\n\t\t\t\t\t\t\t<BodyCaption\n\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\tcolor:\n\t\t\t\t\t\t\t\t\t\terror === LIMIT_REACHED || currentText.length > limit\n\t\t\t\t\t\t\t\t\t\t\t? COLORS.content.negative\n\t\t\t\t\t\t\t\t\t\t\t: COLORS.content.secondary,\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{currentText.length}/{limit}\n\t\t\t\t\t\t\t</BodyCaption>\n\t\t\t\t\t\t) : null}\n\t\t\t\t\t</EditorFooterRight>\n\t\t\t\t</EditorFooterRow>\n\t\t\t\t<Container isError={!!error}>\n\t\t\t\t\t{shouldShowSuggestionSession ? (\n\t\t\t\t\t\t<SuggestionSessionContainer ref={suggestionScrollRef}>\n\t\t\t\t\t\t\t<SuggestionBaselineText\n\t\t\t\t\t\t\t\tdangerouslySetInnerHTML={{ __html: suggestionBaseHtml }}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{isGenerating ? (\n\t\t\t\t\t\t\t\t<SuggestionCandidateText aria-busy=\"true\">\n\t\t\t\t\t\t\t\t\t<SuggestionCandidateSkeleton>\n\t\t\t\t\t\t\t\t\t\t<EditorSkeletonLine width=\"96%\" />\n\t\t\t\t\t\t\t\t\t\t<EditorSkeletonLine width=\"84%\" />\n\t\t\t\t\t\t\t\t\t\t<EditorSkeletonLine width=\"68%\" />\n\t\t\t\t\t\t\t\t\t</SuggestionCandidateSkeleton>\n\t\t\t\t\t\t\t\t</SuggestionCandidateText>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<SuggestionCandidateText\n\t\t\t\t\t\t\t\t\tdangerouslySetInnerHTML={{\n\t\t\t\t\t\t\t\t\t\t__html: activeCandidateHtml,\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t<SuggestionControlsRow>\n\t\t\t\t\t\t\t\t<SuggestionIconButton\n\t\t\t\t\t\t\t\t\taria-label=\"Previous suggestion\"\n\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\tdisabled={isPrevSuggestionDisabled}\n\t\t\t\t\t\t\t\t\tonClick={() =>\n\t\t\t\t\t\t\t\t\t\tsetSuggestionIndex((idx) => Math.max(0, idx - 1))\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<ChevronLeftIcon\n\t\t\t\t\t\t\t\t\t\twidth={14}\n\t\t\t\t\t\t\t\t\t\theight={14}\n\t\t\t\t\t\t\t\t\t\tcolor={COLORS.content.secondary}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</SuggestionIconButton>\n\t\t\t\t\t\t\t\t<SuggestionCounter>\n\t\t\t\t\t\t\t\t\t{suggestionIndex + 1}/{suggestionCandidates.length}\n\t\t\t\t\t\t\t\t</SuggestionCounter>\n\t\t\t\t\t\t\t\t<SuggestionIconButton\n\t\t\t\t\t\t\t\t\taria-label=\"Next suggestion\"\n\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\tdisabled={isNextSuggestionDisabled}\n\t\t\t\t\t\t\t\t\tonClick={() =>\n\t\t\t\t\t\t\t\t\t\tsetSuggestionIndex((idx) =>\n\t\t\t\t\t\t\t\t\t\t\tMath.min(suggestionCandidates.length - 1, idx + 1),\n\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<ChevronRightIcon\n\t\t\t\t\t\t\t\t\t\twidth={14}\n\t\t\t\t\t\t\t\t\t\theight={14}\n\t\t\t\t\t\t\t\t\t\tcolor={COLORS.content.secondary}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</SuggestionIconButton>\n\t\t\t\t\t\t\t\t<Tooltip body=\"Like\" placement=\"top\">\n\t\t\t\t\t\t\t\t\t<SuggestionIconButton\n\t\t\t\t\t\t\t\t\t\taria-label=\"Like suggestion\"\n\t\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\t\tdisabled={hasFeedbackForActiveCandidate}\n\t\t\t\t\t\t\t\t\t\tonClick={() => handleFeedback(AIFeedbackRating.LIKE)}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<ThumbsUpIcon\n\t\t\t\t\t\t\t\t\t\t\twidth={14}\n\t\t\t\t\t\t\t\t\t\t\theight={14}\n\t\t\t\t\t\t\t\t\t\t\tcolor={COLORS.content.secondary}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</SuggestionIconButton>\n\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t\t<Tooltip body=\"Dislike\" placement=\"top\">\n\t\t\t\t\t\t\t\t\t<SuggestionIconButton\n\t\t\t\t\t\t\t\t\t\taria-label=\"Dislike suggestion\"\n\t\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\t\tdisabled={hasFeedbackForActiveCandidate}\n\t\t\t\t\t\t\t\t\t\tonClick={() => handleFeedback(AIFeedbackRating.DISLIKE)}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<ThumbsDownIcon\n\t\t\t\t\t\t\t\t\t\t\twidth={14}\n\t\t\t\t\t\t\t\t\t\t\theight={14}\n\t\t\t\t\t\t\t\t\t\t\tcolor={COLORS.content.secondary}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</SuggestionIconButton>\n\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t\t{canRegenerate ? (\n\t\t\t\t\t\t\t\t\t<Tooltip\n\t\t\t\t\t\t\t\t\t\tbody={isGenerating ? 'Regenerating…' : 'Regenerate'}\n\t\t\t\t\t\t\t\t\t\tplacement=\"top\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<SuggestionRegenerateButton\n\t\t\t\t\t\t\t\t\t\t\taria-label=\"Regenerate suggestion\"\n\t\t\t\t\t\t\t\t\t\t\taria-busy={isGenerating}\n\t\t\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\t\t\tdisabled={isGenerating}\n\t\t\t\t\t\t\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\t\t\t\t\t\t\tif (suggestionActionType) {\n\t\t\t\t\t\t\t\t\t\t\t\t\texecuteAIAction(suggestionActionType, true);\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{isGenerating ? (\n\t\t\t\t\t\t\t\t\t\t\t\t<RegenerateIconShimmer aria-hidden />\n\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t<RewindIcon width={14} height={14} />\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t</SuggestionRegenerateButton>\n\t\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t\t\t<Tooltip body=\"Discard\" placement=\"top\">\n\t\t\t\t\t\t\t\t\t<SuggestionIconButton\n\t\t\t\t\t\t\t\t\t\taria-label=\"Discard suggestion\"\n\t\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\t\tonClick={handleRejectSuggestion}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<CrossIcon\n\t\t\t\t\t\t\t\t\t\t\twidth={14}\n\t\t\t\t\t\t\t\t\t\t\theight={14}\n\t\t\t\t\t\t\t\t\t\t\tcolor={COLORS.content.secondary}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</SuggestionIconButton>\n\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t\t<Tooltip body=\"Accept\" placement=\"top\">\n\t\t\t\t\t\t\t\t\t<SuggestionIconButton\n\t\t\t\t\t\t\t\t\t\taria-label=\"Accept suggestion\"\n\t\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\t\tonClick={handleAcceptSuggestion}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<CheckIcon\n\t\t\t\t\t\t\t\t\t\t\twidth={14}\n\t\t\t\t\t\t\t\t\t\t\theight={14}\n\t\t\t\t\t\t\t\t\t\t\tcolor={COLORS.content.secondary}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</SuggestionIconButton>\n\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t</SuggestionControlsRow>\n\t\t\t\t\t\t</SuggestionSessionContainer>\n\t\t\t\t\t) : isGenerating ? (\n\t\t\t\t\t\t<EditorSkeletonContainer>\n\t\t\t\t\t\t\t<EditorSkeletonLine width=\"96%\" />\n\t\t\t\t\t\t\t<EditorSkeletonLine width=\"92%\" />\n\t\t\t\t\t\t\t<EditorSkeletonLine width=\"88%\" />\n\t\t\t\t\t\t\t<EditorSkeletonLine width=\"54%\" />\n\t\t\t\t\t\t</EditorSkeletonContainer>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<TextSpace\n\t\t\t\t\t\t\tref={textSpaceRef}\n\t\t\t\t\t\t\t{...textAreaProps}\n\t\t\t\t\t\t\tvalue={currentText}\n\t\t\t\t\t\t\tonChange={handleOnChange}\n\t\t\t\t\t\t\tonBlur={(e) => {\n\t\t\t\t\t\t\t\tif (aiTagRecomputeRef.current) {\n\t\t\t\t\t\t\t\t\tclearTimeout(aiTagRecomputeRef.current);\n\t\t\t\t\t\t\t\t\taiTagRecomputeRef.current = null;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\temitPostEditAiTagRecompute(e.target.value);\n\t\t\t\t\t\t\t\ttextAreaOnBlur?.(e);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tonPaste={(e) => {\n\t\t\t\t\t\t\t\tconst pastedText = e.clipboardData.getData('text');\n\t\t\t\t\t\t\t\tif (pastedText.length > LARGE_INPUT_THRESHOLD) {\n\t\t\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\t\t\tconst el = textSpaceRef.current;\n\t\t\t\t\t\t\t\t\tconst start = el?.selectionStart ?? 0;\n\t\t\t\t\t\t\t\t\tconst end = el?.selectionEnd ?? start;\n\t\t\t\t\t\t\t\t\t// Prefer live DOM value — `currentText` can lag the textarea for big pastes.\n\t\t\t\t\t\t\t\t\tconst base = el?.value ?? currentText;\n\t\t\t\t\t\t\t\t\tconst nextText =\n\t\t\t\t\t\t\t\t\t\tbase.slice(0, start) + pastedText + base.slice(end);\n\t\t\t\t\t\t\t\t\tsetEditorText(nextText);\n\t\t\t\t\t\t\t\t\temitChangeWithGuard(nextText);\n\t\t\t\t\t\t\t\t\tconst caret = start + pastedText.length;\n\t\t\t\t\t\t\t\t\trequestAnimationFrame(() => {\n\t\t\t\t\t\t\t\t\t\tconst ta = textSpaceRef.current;\n\t\t\t\t\t\t\t\t\t\tif (!ta) return;\n\t\t\t\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\t\t\t\tta.setSelectionRange(caret, caret);\n\t\t\t\t\t\t\t\t\t\t} catch {\n\t\t\t\t\t\t\t\t\t\t\t// ignore invalid range in edge browsers\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\trows={rows}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t\t{isInstructionInputVisible ? (\n\t\t\t\t\t\t<InstructionContainer>\n\t\t\t\t\t\t\t<InstructionInputRow>\n\t\t\t\t\t\t\t\t<EditIcon\n\t\t\t\t\t\t\t\t\twidth={18}\n\t\t\t\t\t\t\t\t\theight={18}\n\t\t\t\t\t\t\t\t\tcolor={COLORS.content.secondary}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<InstructionInput\n\t\t\t\t\t\t\t\t\tvalue={instructionText}\n\t\t\t\t\t\t\t\t\tplaceholder=\"Add specific instructions to refine your message\"\n\t\t\t\t\t\t\t\t\tonChange={(e) => setInstructionText(e.target.value)}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<InstructionActions>\n\t\t\t\t\t\t\t\t\t<InstructionCancel\n\t\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\t\t\t\t\t\tsetInstructionText('');\n\t\t\t\t\t\t\t\t\t\t\tsetIsInstructionInputVisible(false);\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\tCancel\n\t\t\t\t\t\t\t\t\t</InstructionCancel>\n\t\t\t\t\t\t\t\t\t<InstructionImprove\n\t\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\t\t\t\t\t\tconst instructionToApply = instructionText.trim();\n\t\t\t\t\t\t\t\t\t\t\tif (instructionToApply) {\n\t\t\t\t\t\t\t\t\t\t\t\temitAIEvent('ai_instruction_used', {\n\t\t\t\t\t\t\t\t\t\t\t\t\taction_type: AIEditorActionTypes.REPHRASE,\n\t\t\t\t\t\t\t\t\t\t\t\t\ttemplate_id: templateId,\n\t\t\t\t\t\t\t\t\t\t\t\t\tinstruction_text:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tanonymizeInstructionText(instructionToApply),\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tsetIsInstructionInputVisible(false);\n\t\t\t\t\t\t\t\t\t\t\tsetInstructionText('');\n\t\t\t\t\t\t\t\t\t\t\texecuteAIAction(\n\t\t\t\t\t\t\t\t\t\t\t\tAIEditorActionTypes.REPHRASE,\n\t\t\t\t\t\t\t\t\t\t\t\tfalse,\n\t\t\t\t\t\t\t\t\t\t\t\tinstructionToApply,\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\tImprove\n\t\t\t\t\t\t\t\t\t</InstructionImprove>\n\t\t\t\t\t\t\t\t</InstructionActions>\n\t\t\t\t\t\t\t</InstructionInputRow>\n\t\t\t\t\t\t\t{instructionText.trim().length > 0 &&\n\t\t\t\t\t\t\tfilteredInstructionSuggestions.length > 0 ? (\n\t\t\t\t\t\t\t\t<InstructionSuggestionList>\n\t\t\t\t\t\t\t\t\t{filteredInstructionSuggestions.map((suggestion) => (\n\t\t\t\t\t\t\t\t\t\t<InstructionSuggestionButton\n\t\t\t\t\t\t\t\t\t\t\tkey={suggestion}\n\t\t\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\t\t\tselected={instructionText === suggestion}\n\t\t\t\t\t\t\t\t\t\t\tonClick={() => setInstructionText(suggestion)}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{suggestion}\n\t\t\t\t\t\t\t\t\t\t</InstructionSuggestionButton>\n\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t</InstructionSuggestionList>\n\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t</InstructionContainer>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<WhatsAppTextEditorHeader\n\t\t\t\t\t\t\tactions={actions}\n\t\t\t\t\t\t\tref={textSpaceRef}\n\t\t\t\t\t\t\tonActionSelect={onActionSelect}\n\t\t\t\t\t\t\tRightComponent={RightComponent}\n\t\t\t\t\t\t\trightActionsDisabled={shouldShowSuggestionSession || isGenerating}\n\t\t\t\t\t\t\tonEmojiClick={onEmojiAddition}\n\t\t\t\t\t\t\taiActions={aiHeaderActions}\n\t\t\t\t\t\t\tdisableAllActions={shouldShowSuggestionSession || isGenerating}\n\t\t\t\t\t\t\tinstructionActive={isInstructionInputVisible}\n\t\t\t\t\t\t\tonAIInstructionsClick={() => setIsInstructionInputVisible(true)}\n\t\t\t\t\t\t\tonAIToneChange={(actionType, toneId) => {\n\t\t\t\t\t\t\t\tsetToneByAction((prev) => ({ ...prev, [actionType]: toneId }));\n\t\t\t\t\t\t\t\tonAIToneSelect?.(actionType, toneId);\n\t\t\t\t\t\t\t\tif (actionType === AIEditorActionTypes.REPHRASE) {\n\t\t\t\t\t\t\t\t\texecuteAIAction(\n\t\t\t\t\t\t\t\t\t\tactionType,\n\t\t\t\t\t\t\t\t\t\tfalse,\n\t\t\t\t\t\t\t\t\t\tundefined,\n\t\t\t\t\t\t\t\t\t\ttoneId,\n\t\t\t\t\t\t\t\t\t\tAIActionVariant.DEFAULT,\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tonAIActionClick={(\n\t\t\t\t\t\t\t\tactionType,\n\t\t\t\t\t\t\t\tactionVariant = AIActionVariant.DEFAULT,\n\t\t\t\t\t\t\t) => {\n\t\t\t\t\t\t\t\tif (isGenerating) return;\n\n\t\t\t\t\t\t\t\tif (shouldShowSuggestionSession) {\n\t\t\t\t\t\t\t\t\tif (suggestionActionType === actionType) {\n\t\t\t\t\t\t\t\t\t\t// Same action should not retrigger from chip;\n\t\t\t\t\t\t\t\t\t\t// regenerate is only via explicit regenerate control.\n\t\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t// New action starts a fresh suggestion session.\n\t\t\t\t\t\t\t\t\tclearSuggestionSession();\n\t\t\t\t\t\t\t\t\texecuteAIAction(\n\t\t\t\t\t\t\t\t\t\tactionType,\n\t\t\t\t\t\t\t\t\t\tfalse,\n\t\t\t\t\t\t\t\t\t\tundefined,\n\t\t\t\t\t\t\t\t\t\tundefined,\n\t\t\t\t\t\t\t\t\t\tactionVariant,\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\texecuteAIAction(\n\t\t\t\t\t\t\t\t\tactionType,\n\t\t\t\t\t\t\t\t\tfalse,\n\t\t\t\t\t\t\t\t\tundefined,\n\t\t\t\t\t\t\t\t\tundefined,\n\t\t\t\t\t\t\t\t\tactionVariant,\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t</Container>\n\t\t\t</OuterContainer>\n\t\t);\n\t},\n);\n\nWhatsAppTextEditor.displayName = 'WhatsAppTextEditor';\n\nexport type { AITagPayload } from './ai/aiTag';\nexport {\n\tAI_TAG_CHANGE_RATIO_THRESHOLD,\n\tcomputeAiTagOnAccept,\n\tlevenshteinDistance,\n} from './ai/aiTag';\n"],"names":["LIMIT_REACHED","REPHRASE_IDLE_MS","MAX_REPHRASE_HIGHLIGHTS","MAX_SUGGESTIONS","LARGE_INPUT_THRESHOLD","AI_TAG_RECOMPUTE_IDLE_MS","UTILITY_REPHRASE_PROMPT","skeletonPulse","keyframes","EditorSkeletonContainer","styled","EditorSkeletonLine","props","SuggestionSessionContainer","SuggestionBaselineText","COLORS","SuggestionCandidateText","SuggestionCandidateSkeleton","SuggestionControlsRow","SuggestionCounter","SuggestionIconButton","SuggestionRegenerateButton","RegenerateIconShimmer","InstructionContainer","InstructionInputRow","InstructionInput","InstructionActions","InstructionCancel","InstructionImprove","InstructionSuggestionList","InstructionSuggestionButton","baseWhatsappContentLang","BaseWhatsappContentLangHelper","WildCardMap","EditorActionTypes","getHighlightStorageKey","editorInstanceKey","WhatsAppTextEditor","React","onChange","onClickVariable","inputValue","RightComponent","error","limit","onError","rows","actions","editorSessionId","templateType","templateId","requestExecutor","baseUrl","endpointPath","useCase","storeId","apiAdapter","conversationId","systemId","intent","enabledAIActions","AIEditorActionTypes","disableBuiltInAIActions","promptOverrides","rephraseTones","aiActionMinChars","instructionSuggestions","DEFAULT_INSTRUCTION_SUGGESTIONS","onAnalyticsEvent","onAITagComputed","prefillWasAiGenerated","editorHeader","onAIToneSelect","onAIActionRequest","onBuildAIPrompt","textAreaOnBlur","textAreaProps","ref","textSpaceRef","useRef","currentText","setCurrentText","useState","isRephraseHighlighted","setIsRephraseHighlighted","rephraseHighlightCount","setRephraseHighlightCount","isGenerating","setIsGenerating","isInstructionInputVisible","setIsInstructionInputVisible","instructionText","setInstructionText","toneByAction","setToneByAction","suggestionBaseText","setSuggestionBaseText","suggestionCandidates","setSuggestionCandidates","suggestionIndex","setSuggestionIndex","suggestionActionType","setSuggestionActionType","suggestionScrollRef","rephraseIdleRef","highlightResetRef","aiTagRecomputeRef","prevRephraseEligibleRef","deferredHtmlRef","lastEmittedEditorErrorRef","initialAiPrefillPhaseRef","acceptedSuggestionStateRef","prefillBaselineTextRef","prefillBaselineCapturedRef","feedbackVotesByCandidate","setFeedbackVotesByCandidate","mountSessionIdRef","highlightStorageKey","useMemo","useEffect","seed","activeActionPrompts","resolveActionPrompts","filteredInstructionSuggestions","query","suggestion","minCharsByAction","DEFAULT_AI_ACTION_MIN_CHARS","rephraseMinChars","anonymizeInstructionText","useCallback","value","normalized","words","emitAIEvent","name","payload","setEditorText","nextText","prev","emitChangeWithGuard","emitPostEditAiTagRecompute","latestBaseline","recomputePayload","computeAiTagOnPostEdit","clearSuggestionSession","triggerRephraseHighlight","nextCount","triggerRephraseHighlightRef","handleOnChange","text","acceptedSuggestion","baselineAiTextForRecompute","setCaretPosition","caretPos","elem","onActionSelect","actionType","wildCard","start","end","insertTextAtIndex","addTextOrWrap","onEmojiAddition","emoji","addText","textToAdd","html","index","cached","eligible","crossedThreshold","activeCandidate","activeFeedbackCandidateKey","hasFeedbackForActiveCandidate","suggestionBaseHtml","activeCandidateHtml","canRegenerate","shouldShowSuggestionSession","isPrevSuggestionDisabled","isNextSuggestionDisabled","node","executeAIAction","regenerateExisting","instructionOverride","toneOverrideId","actionVariant","AIActionVariant","minCharsForAction","baseConfig","config","selectedToneId","selectedTone","tone","instructionForPrompt","prompt","buildActionPrompt","result","requestAISuggestion","candidate","next","handleAcceptSuggestion","inInitialAiPhase","tagPayload","computeAiTagOnAccept","handleRejectSuggestion","handleFeedback","rating","aiHeaderActions","actionConfig","toneId","useImperativeHandle","nextError","OuterContainer","jsxDEV","EditorFooterRow","EditorFooterTitle","TitleSmall","this","EditorFooterRight","Fragment","InfoIcon","BodyCaption","Container","idx","ChevronLeftIcon","ChevronRightIcon","Tooltip","ThumbsUpIcon","ThumbsDownIcon","RewindIcon","CrossIcon","CheckIcon","TextSpace","pastedText","el","base","caret","ta","EditIcon","instructionToApply","WhatsAppTextEditorHeader"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"WhatsAppTextEditor.js","sources":["../../../../src/components/WhatsAppTextEditor/WhatsAppTextEditor.tsx"],"sourcesContent":["import CheckIcon from '@src/assets/icons/check.svg';\nimport ChevronLeftIcon from '@src/assets/icons/chevronLeft.svg';\nimport ChevronRightIcon from '@src/assets/icons/chevronRight.svg';\nimport CrossIcon from '@src/assets/icons/cross.svg';\nimport EditIcon from '@src/assets/icons/edit.svg';\nimport InfoIcon from '@src/assets/icons/info.svg';\nimport RewindIcon from '@src/assets/icons/rewind.svg';\nimport ThumbsDownIcon from '@src/assets/icons/thumb-down-line.svg';\nimport ThumbsUpIcon from '@src/assets/icons/thumb-up-line.svg';\nimport { BaseWhatsappContentLangHelper } from '@src/helpers/BaseWhatsappContentLang.helper';\nimport React, {\n\tuseCallback,\n\tuseEffect,\n\tuseImperativeHandle,\n\tuseMemo,\n\tuseRef,\n\tuseState,\n} from 'react';\nimport styled, { keyframes } from 'styled-components';\nimport { COLORS } from '@src/constants/Theme';\nimport type { ApiRequestExecutor } from '../bik-chatbot/types';\nimport type { APIAdapter } from '../bik-chatbot/types/ai';\nimport { Tooltip } from '../tooltips/Tooltip';\nimport { BodyCaption, TitleSmall } from '../TypographyStyle';\nimport {\n\tAIActionPromptConfig,\n\tAIActionPromptRegistry,\n\tDEFAULT_AI_ACTION_MIN_CHARS,\n\tDEFAULT_INSTRUCTION_SUGGESTIONS,\n\tresolveActionPrompts,\n\tTemplateType,\n} from './ai/actionRegistry';\nimport {\n\tAITagPayload,\n\tcomputeAiTagOnAccept,\n\tcomputeAiTagOnPostEdit,\n} from './ai/aiTag';\nimport { buildActionPrompt, requestAISuggestion } from './ai/api';\nimport { AIActionToneOption } from './AIRephraseButton';\nimport {\n\tContainer,\n\tEditorFooterRight,\n\tEditorFooterRow,\n\tEditorFooterTitle,\n\tOuterContainer,\n\tTextSpace,\n} from './CustomEditor.styled';\nimport {\n\tAIActionVariant,\n\tAIEditorActionType,\n\tAIEditorActionTypes,\n\tAIHeaderAction,\n\tEditorActionTypes,\n\tWhatsAppEditorRightSlotProps,\n\tWhatsAppTextEditorHeader,\n} from './WhatsAppTextEditorHeader';\n\nconst LIMIT_REACHED = 'Character limit reached';\nconst REPHRASE_IDLE_MS = 3000;\nconst MAX_REPHRASE_HIGHLIGHTS = 5;\nconst MAX_SUGGESTIONS = 3;\nconst LARGE_INPUT_THRESHOLD = 1200;\nconst AI_TAG_RECOMPUTE_IDLE_MS = 1000;\nconst UTILITY_REPHRASE_PROMPT =\n\t'Rephrase this WhatsApp utility template to improve clarity and readability while preserving variables, intent, and compliance.';\n\nconst skeletonPulse = keyframes`\n\t0% { opacity: 0.55; }\n\t50% { opacity: 1; }\n\t100% { opacity: 0.55; }\n`;\n\nconst EditorSkeletonContainer = styled.div`\n\tpadding: 14px 12px;\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 10px;\n\tmin-height: 150px;\n`;\n\nconst EditorSkeletonLine = styled.div<{ width: string }>`\n\theight: 16px;\n\tborder-radius: 6px;\n\twidth: ${(props) => props.width};\n\tbackground: #ececef;\n\tanimation: ${skeletonPulse} 1.1s ease-in-out infinite;\n`;\n\nconst SuggestionSessionContainer = styled.div`\n\tpadding: 12px;\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 8px;\n\tmax-height: 260px;\n\toverflow-y: scroll;\n\tscrollbar-width: thin;\n\tscrollbar-color: #c8c8cf transparent;\n\t::-webkit-scrollbar {\n\t\twidth: 8px;\n\t}\n\t::-webkit-scrollbar-thumb {\n\t\tbackground: #c8c8cf;\n\t\tborder-radius: 8px;\n\t}\n\t::-webkit-scrollbar-track {\n\t\tbackground: transparent;\n\t}\n`;\n\nconst SuggestionBaselineText = styled.div`\n\ttext-decoration: line-through;\n\tcolor: ${COLORS.content.secondary};\n`;\n\nconst SuggestionCandidateText = styled.div`\n\tcolor: ${COLORS.content.primary};\n`;\n\nconst SuggestionCandidateSkeleton = styled.div`\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 8px;\n\twidth: 100%;\n\tmin-height: 40px;\n`;\n\nconst SuggestionControlsRow = styled.div`\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 6px;\n`;\n\nconst SuggestionCounter = styled.span`\n\tcolor: ${COLORS.content.primary};\n\tfont-size: 14px;\n`;\n\nconst SuggestionIconButton = styled.button`\n\tborder: 0;\n\tbackground: transparent;\n\tpadding: 6px;\n\tborder-radius: 6px;\n\tdisplay: inline-flex;\n\talign-items: center;\n\tjustify-content: center;\n\tcursor: pointer;\n\tcolor: ${COLORS.content.primary};\n\ttransition: background-color 0.12s ease;\n\t:not(:disabled):hover {\n\t\tbackground-color: ${COLORS.surface.hovered};\n\t}\n\t:disabled {\n\t\topacity: 0.35;\n\t\tcursor: not-allowed;\n\t}\n`;\n\n/** Regenerate stays full opacity while disabled so the loading shimmer stays visible (same pulse as editor skeleton). */\nconst SuggestionRegenerateButton = styled(SuggestionIconButton)`\n\t:disabled {\n\t\topacity: 1;\n\t\tcursor: wait;\n\t}\n`;\n\nconst RegenerateIconShimmer = styled.div`\n\twidth: 14px;\n\theight: 14px;\n\tborder-radius: 4px;\n\tbackground: #ececef;\n\tflex-shrink: 0;\n\tanimation: ${skeletonPulse} 1.1s ease-in-out infinite;\n`;\n\n/** Same bottom toolbar slot as `WhatsAppTextEditorHeader` — replaces the full icon/AI panel while open. */\nconst InstructionContainer = styled.div`\n\tbackground: ${COLORS.surface.standard};\n\tdisplay: flex;\n\tflex-direction: column;\n\tpadding: 8px 12px;\n\tgap: 10px;\n\tborder-radius: 0 0 4px 4px;\n\tposition: relative;\n`;\n\nconst InstructionInputRow = styled.div`\n\tborder: 1px solid #f5a4c0;\n\tborder-radius: 10px;\n\tpadding: 8px 10px;\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 10px;\n\tbackground: ${COLORS.surface.standard};\n`;\n\nconst InstructionInput = styled.input`\n\tflex: 1;\n\tmin-width: 0;\n\tborder: 0;\n\toutline: none;\n\tfont-size: 14px;\n\tbackground: transparent;\n\tcolor: ${COLORS.content.primary};\n`;\n\nconst InstructionActions = styled.div`\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 10px;\n`;\n\nconst InstructionCancel = styled.button`\n\tborder: 0;\n\tbackground: transparent;\n\tcolor: ${COLORS.content.secondary};\n\tfont-size: 14px;\n\tfont-weight: 500;\n\tpadding: 0;\n\tcursor: pointer;\n`;\n\nconst InstructionImprove = styled.button`\n\tborder: 1px solid #5d3a72;\n\tcolor: #5d3a72;\n\tbackground: ${COLORS.surface.standard};\n\tborder-radius: 8px;\n\tpadding: 8px 14px;\n\tfont-size: 14px;\n\tline-height: 1.1;\n\tfont-weight: 600;\n\tcursor: pointer;\n`;\n\nconst InstructionSuggestionList = styled.div`\n\tmargin-top: 4px;\n\tborder-radius: 12px;\n\twidth: 331px;\n\tbackground: ${COLORS.surface.standard};\n\tbox-shadow: 0 6px 18px rgba(0, 0, 0, 0.1);\n\toverflow: hidden;\n\tpadding: 4px;\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 2px;\n`;\n\nconst InstructionSuggestionButton = styled.button<{ selected?: boolean }>`\n\twidth: 100%;\n\tborder: 0;\n\tborder-radius: 8px;\n\tbackground: ${(props) => (props.selected ? '#e5f3e8' : 'transparent')};\n\tcolor: ${(props) => (props.selected ? '#1e6b34' : COLORS.content.primary)};\n\ttext-align: left;\n\tpadding: 10px 12px;\n\tfont-size: 14px;\n\tline-height: 1.2;\n\tcursor: pointer;\n\t:hover {\n\t\tbackground: ${(props) =>\n\t\t\tprops.selected ? '#d9e8db' : COLORS.surface.subdued};\n\t}\n`;\n\ntype AIEventName =\n\t| 'ai_action_triggered'\n\t| 'ai_feedback_submitted'\n\t| 'ai_suggestion_accepted'\n\t| 'ai_suggestion_discarded'\n\t| 'ai_suggestion_edited'\n\t| 'ai_instruction_used';\n\nenum AIFeedbackRating {\n\tLIKE = 'like',\n\tDISLIKE = 'dislike',\n}\n\ntype AIEventPayload = {\n\taction_type: AIEditorActionType;\n\ttemplate_id?: string | number;\n\ttemplate_category?: TemplateType;\n\trating?: AIFeedbackRating;\n\tcandidate_index?: number;\n\tinstruction_text?: string;\n};\n\ntype AIActionRequestPayload = {\n\tactionType: AIEditorActionType;\n\tactionVariant?: AIActionVariant;\n\tcurrentText: string;\n\ttemplateType: TemplateType;\n\ttoneId?: string;\n\ttoneLabel?: string;\n\tinstructionText?: string;\n\tprompt: string;\n};\n\ntype AIActionPromptBuildPayload = {\n\tactionType: AIEditorActionType;\n\tactionVariant?: AIActionVariant;\n\tcurrentText: string;\n\ttemplateType: TemplateType;\n\tconfig: AIActionPromptConfig;\n\ttoneId?: string;\n\ttoneLabel?: string;\n\tinstructionText?: string;\n};\n\nexport type CustomEditorProps =\n\tReact.TextareaHTMLAttributes<HTMLTextAreaElement> & {\n\t\tonChange?: (text: string, html: string) => void;\n\t\ttext?: string;\n\t\tRightComponent?: React.ComponentType<WhatsAppEditorRightSlotProps>;\n\t\terror?: string;\n\t\tlimit?: number;\n\t\trows?: number;\n\t\tactions?: EditorActionTypes[];\n\n\t\t/**\n\t\t * Calls only for editor only error, not for errors coming from outside\n\t\t */\n\t\tonError?: (err: string) => void;\n\n\t\tonClickVariable?: (variable: string) => void;\n\t\teditorInstanceKey?: string;\n\t\teditorSessionId?: string;\n\t\ttemplateType?: TemplateType;\n\t\ttemplateId?: string | number;\n\t\trequestExecutor?: ApiRequestExecutor;\n\t\tbaseUrl?: string;\n\t\tendpointPath?: string;\n\t\tuseCase?: string;\n\t\tstoreId?: string;\n\t\tapiAdapter?: APIAdapter;\n\t\tconversationId?: string;\n\t\tsystemId?: string;\n\t\tintent?: string;\n\t\tenabledAIActions?: AIEditorActionType[];\n\t\tdisableBuiltInAIActions?: boolean;\n\t\tpromptOverrides?: AIActionPromptRegistry;\n\t\trephraseTones?: AIActionToneOption[];\n\t\taiActionMinChars?: Partial<Record<AIEditorActionType, number>>;\n\t\tinstructionSuggestions?: string[];\n\t\tonAnalyticsEvent?: (name: AIEventName, payload: AIEventPayload) => void;\n\t\t/**\n\t\t * Fires on AI-tag computations:\n\t\t * - `source: \"accept\"` after accepting a suggestion (addition check: >=50% => true)\n\t\t * - `source: \"post_edit_debounce\"` after edit idle/blur (retention check: <50% => true)\n\t\t * Persist `payload.isAiTagged` (or full payload) in host state and send on save.\n\t\t */\n\t\tonAITagComputed?: (payload: AITagPayload) => void;\n\t\t/**\n\t\t * When true, the editor body was loaded as fully AI-generated (prefill).\n\t\t * The first accepted suggestion will set `initialAiPrefillPhase` on the tag payload;\n\t\t * after that, only baseline vs accepted comparison applies.\n\t\t */\n\t\tprefillWasAiGenerated?: boolean;\n\t\t/**\n\t\t * Optional label above the editor (e.g. section title from the host).\n\t\t * When omitted, the left side of that top row is empty; limit/error stay on the right.\n\t\t */\n\t\teditorHeader?: React.ReactNode;\n\t\tonAIToneSelect?: (actionType: AIEditorActionType, toneId: string) => void;\n\t\tonAIActionRequest?: (\n\t\t\tpayload: AIActionRequestPayload,\n\t\t) => Promise<string | { body?: string }>;\n\t\tonBuildAIPrompt?: (payload: AIActionPromptBuildPayload) => string;\n\t\tonBlur?: React.FocusEventHandler<HTMLTextAreaElement>;\n\t};\nexport type CustomEditorRef = {\n\taddTextOrWrap: (textToAdd: string) => {\n\t\ttext: string;\n\t\thtml: string;\n\t};\n\taddText: (textToAdd: string) => {\n\t\ttext: string;\n\t\thtml: string;\n\t};\n\tget: () => string;\n\tsetCaretPosition(caretPos: number): void;\n};\n\nconst baseWhatsappContentLang = new BaseWhatsappContentLangHelper();\n\nconst WildCardMap: { [key in EditorActionTypes]?: string } = {\n\t[EditorActionTypes.BOLD]: '*',\n\t[EditorActionTypes.ITALIC]: '_',\n\t[EditorActionTypes.STRIKETHROUGH]: '~',\n};\n\nfunction getHighlightStorageKey(editorInstanceKey?: string) {\n\treturn `whatsapp-editor-rephrase-highlight-${editorInstanceKey || 'default'}`;\n}\n\nexport const WhatsAppTextEditor = React.forwardRef<\n\tCustomEditorRef,\n\tCustomEditorProps\n>(\n\t(\n\t\t{\n\t\t\tonChange,\n\t\t\tonClickVariable,\n\t\t\ttext: inputValue,\n\t\t\tRightComponent,\n\t\t\terror,\n\t\t\tlimit,\n\t\t\tonError,\n\t\t\trows,\n\t\t\tactions,\n\t\t\teditorInstanceKey,\n\t\t\teditorSessionId,\n\t\t\ttemplateType = 'marketing',\n\t\t\ttemplateId,\n\t\t\trequestExecutor,\n\t\t\tbaseUrl,\n\t\t\tendpointPath,\n\t\t\tuseCase,\n\t\t\tstoreId,\n\t\t\tapiAdapter,\n\t\t\tconversationId = 'whatsapp-template-editor',\n\t\t\tsystemId = 'whatsapp-writer',\n\t\t\tintent = 'default',\n\t\t\tenabledAIActions = [\n\t\t\t\tAIEditorActionTypes.REPHRASE,\n\t\t\t\tAIEditorActionTypes.SHORTEN,\n\t\t\t\tAIEditorActionTypes.EXPAND,\n\t\t\t\tAIEditorActionTypes.EMOJIFY,\n\t\t\t],\n\t\t\tdisableBuiltInAIActions = false,\n\t\t\tpromptOverrides,\n\t\t\trephraseTones,\n\t\t\taiActionMinChars,\n\t\t\tinstructionSuggestions = DEFAULT_INSTRUCTION_SUGGESTIONS,\n\t\t\tonAnalyticsEvent,\n\t\t\tonAITagComputed,\n\t\t\tprefillWasAiGenerated = false,\n\t\t\teditorHeader,\n\t\t\tonAIToneSelect,\n\t\t\tonAIActionRequest,\n\t\t\tonBuildAIPrompt,\n\t\t\tonBlur: textAreaOnBlur,\n\t\t\t...textAreaProps\n\t\t},\n\t\tref,\n\t) => {\n\t\tconst textSpaceRef = useRef<HTMLTextAreaElement>(null);\n\t\tconst [currentText, setCurrentText] = useState(inputValue || '');\n\t\tconst [isRephraseHighlighted, setIsRephraseHighlighted] = useState(false);\n\t\tconst [rephraseHighlightCount, setRephraseHighlightCount] = useState(0);\n\t\tconst [isGenerating, setIsGenerating] = useState(false);\n\t\tconst [isInstructionInputVisible, setIsInstructionInputVisible] =\n\t\t\tuseState(false);\n\t\tconst [instructionText, setInstructionText] = useState('');\n\t\tconst [toneByAction, setToneByAction] = useState<\n\t\t\tPartial<Record<AIEditorActionType, string>>\n\t\t>({});\n\t\tconst [suggestionBaseText, setSuggestionBaseText] = useState<string | null>(\n\t\t\tnull,\n\t\t);\n\t\tconst [suggestionCandidates, setSuggestionCandidates] = useState<string[]>(\n\t\t\t[],\n\t\t);\n\t\tconst [suggestionIndex, setSuggestionIndex] = useState(0);\n\t\tconst [suggestionActionType, setSuggestionActionType] =\n\t\t\tuseState<AIEditorActionType | null>(null);\n\t\tconst suggestionScrollRef = useRef<HTMLDivElement | null>(null);\n\t\tconst rephraseIdleRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n\t\tconst highlightResetRef = useRef<ReturnType<typeof setTimeout> | null>(\n\t\t\tnull,\n\t\t);\n\t\tconst aiTagRecomputeRef = useRef<ReturnType<typeof setTimeout> | null>(\n\t\t\tnull,\n\t\t);\n\t\t/**\n\t\t * Prior eligibility for rephrase nudge (null = not initialized).\n\t\t * Matches the chip: non-empty trim and length ≥ min — same as `aiHeaderActions` disabled rules.\n\t\t */\n\t\tconst prevRephraseEligibleRef = useRef<boolean | null>(null);\n\t\tconst deferredHtmlRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n\t\tconst lastEmittedEditorErrorRef = useRef<string | null>(null);\n\t\t/** First accept after full-AI prefill (`prefillWasAiGenerated`); cleared after one accept. */\n\t\tconst initialAiPrefillPhaseRef = useRef(!!prefillWasAiGenerated);\n\t\tconst acceptedSuggestionStateRef = useRef<{\n\t\t\tacceptedText: string;\n\t\t\tbaselineText: string;\n\t\t\tactionType: AIEditorActionType;\n\t\t\teditedEventEmitted: boolean;\n\t\t} | null>(null);\n\t\t/** Original prefill body for AI tag recompute; seeded once, never the live `currentText` fallback. */\n\t\tconst prefillBaselineTextRef = useRef('');\n\t\tconst prefillBaselineCapturedRef = useRef(false);\n\t\tconst [feedbackVotesByCandidate, setFeedbackVotesByCandidate] = useState<\n\t\t\tPartial<Record<string, AIFeedbackRating>>\n\t\t>({});\n\t\tconst mountSessionIdRef = useRef(\n\t\t\t`mount-${Date.now().toString(36)}-${Math.random()\n\t\t\t\t.toString(36)\n\t\t\t\t.slice(2, 8)}`,\n\t\t);\n\t\tconst highlightStorageKey = useMemo(() => {\n\t\t\treturn getHighlightStorageKey(\n\t\t\t\t`${editorInstanceKey || 'default'}-${\n\t\t\t\t\teditorSessionId || mountSessionIdRef.current\n\t\t\t\t}`,\n\t\t\t);\n\t\t}, [editorInstanceKey, editorSessionId]);\n\n\t\tuseEffect(() => {\n\t\t\tinitialAiPrefillPhaseRef.current = !!prefillWasAiGenerated;\n\t\t}, [prefillWasAiGenerated, editorInstanceKey]);\n\n\t\tuseEffect(() => {\n\t\t\tprefillBaselineCapturedRef.current = false;\n\t\t\tprefillBaselineTextRef.current = '';\n\t\t}, [editorInstanceKey, editorSessionId]);\n\n\t\tuseEffect(() => {\n\t\t\tif (!prefillWasAiGenerated) {\n\t\t\t\tprefillBaselineCapturedRef.current = false;\n\t\t\t\tprefillBaselineTextRef.current = '';\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (prefillBaselineCapturedRef.current) return;\n\t\t\tconst seed = inputValue ?? '';\n\t\t\tif (seed.length > 0) {\n\t\t\t\tprefillBaselineTextRef.current = seed;\n\t\t\t\tprefillBaselineCapturedRef.current = true;\n\t\t\t}\n\t\t}, [prefillWasAiGenerated, inputValue, editorInstanceKey, editorSessionId]);\n\n\t\tconst activeActionPrompts = useMemo(() => {\n\t\t\treturn resolveActionPrompts(templateType, promptOverrides, rephraseTones);\n\t\t}, [promptOverrides, rephraseTones, templateType]);\n\n\t\tconst filteredInstructionSuggestions = useMemo(() => {\n\t\t\tconst query = instructionText.trim().toLowerCase();\n\t\t\tif (!query) return [];\n\t\t\treturn instructionSuggestions.filter((suggestion) =>\n\t\t\t\tsuggestion.toLowerCase().includes(query),\n\t\t\t);\n\t\t}, [instructionSuggestions, instructionText]);\n\n\t\tconst minCharsByAction = useMemo(() => {\n\t\t\treturn {\n\t\t\t\t...DEFAULT_AI_ACTION_MIN_CHARS,\n\t\t\t\t...(aiActionMinChars || {}),\n\t\t\t};\n\t\t}, [aiActionMinChars]);\n\n\t\tconst rephraseMinChars =\n\t\t\tminCharsByAction[AIEditorActionTypes.REPHRASE] ||\n\t\t\tDEFAULT_AI_ACTION_MIN_CHARS[AIEditorActionTypes.REPHRASE];\n\n\t\tconst anonymizeInstructionText = useCallback((value: string) => {\n\t\t\tconst normalized = value.trim().replace(/\\s+/g, ' ');\n\t\t\tif (!normalized) return '';\n\t\t\tconst words = normalized.split(' ').length;\n\t\t\treturn `[anonymized:length_${normalized.length}:words_${words}]`;\n\t\t}, []);\n\n\t\tconst emitAIEvent = useCallback(\n\t\t\t(name: AIEventName, payload: AIEventPayload) => {\n\t\t\t\tonAnalyticsEvent?.(name, payload);\n\t\t\t},\n\t\t\t[onAnalyticsEvent],\n\t\t);\n\n\t\tconst setEditorText = useCallback((nextText: string) => {\n\t\t\tsetCurrentText((prev) => (prev === nextText ? prev : nextText));\n\t\t}, []);\n\n\t\tconst emitChangeWithGuard = useCallback(\n\t\t\t(nextText: string) => {\n\t\t\t\tif (deferredHtmlRef.current) {\n\t\t\t\t\tclearTimeout(deferredHtmlRef.current);\n\t\t\t\t}\n\t\t\t\tif (nextText.length > LARGE_INPUT_THRESHOLD) {\n\t\t\t\t\tonChange?.(nextText, nextText);\n\t\t\t\t\tdeferredHtmlRef.current = setTimeout(() => {\n\t\t\t\t\t\tonChange?.(nextText, baseWhatsappContentLang.getHTML(nextText));\n\t\t\t\t\t}, 16);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tonChange?.(nextText, baseWhatsappContentLang.getHTML(nextText));\n\t\t\t},\n\t\t\t[onChange],\n\t\t);\n\n\t\tconst emitPostEditAiTagRecompute = useCallback(\n\t\t\t(nextText: string) => {\n\t\t\t\tconst latest = acceptedSuggestionStateRef.current;\n\t\t\t\tconst latestBaseline =\n\t\t\t\t\tlatest?.acceptedText ||\n\t\t\t\t\t(prefillWasAiGenerated ? prefillBaselineTextRef.current : '');\n\t\t\t\tif (!latestBaseline) return;\n\t\t\t\tif (nextText === latestBaseline) return;\n\t\t\t\tconst recomputePayload = computeAiTagOnPostEdit({\n\t\t\t\t\tacceptedAiText: latestBaseline,\n\t\t\t\t\tcurrentEditedText: nextText,\n\t\t\t\t});\n\t\t\t\tonAITagComputed?.({\n\t\t\t\t\t...recomputePayload,\n\t\t\t\t\tsource: 'post_edit_debounce',\n\t\t\t\t});\n\t\t\t},\n\t\t\t[onAITagComputed, prefillWasAiGenerated],\n\t\t);\n\n\t\tconst clearSuggestionSession = useCallback(() => {\n\t\t\tsetSuggestionBaseText(null);\n\t\t\tsetSuggestionCandidates([]);\n\t\t\tsetSuggestionIndex(0);\n\t\t\tsetSuggestionActionType(null);\n\t\t\tsetFeedbackVotesByCandidate({});\n\t\t}, []);\n\n\t\tconst triggerRephraseHighlight = useCallback(() => {\n\t\t\tif (isGenerating) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (!!suggestionBaseText && suggestionCandidates.length > 0) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (rephraseHighlightCount >= MAX_REPHRASE_HIGHLIGHTS) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst nextCount = rephraseHighlightCount + 1;\n\t\t\tsetRephraseHighlightCount(nextCount);\n\t\t\tif (typeof window !== 'undefined' && editorInstanceKey) {\n\t\t\t\tsessionStorage.setItem(highlightStorageKey, String(nextCount));\n\t\t\t}\n\t\t\tsetIsRephraseHighlighted(true);\n\t\t\tif (highlightResetRef.current) {\n\t\t\t\tclearTimeout(highlightResetRef.current);\n\t\t\t}\n\t\t\thighlightResetRef.current = setTimeout(() => {\n\t\t\t\tsetIsRephraseHighlighted(false);\n\t\t\t}, 1200);\n\t\t}, [\n\t\t\teditorInstanceKey,\n\t\t\thighlightStorageKey,\n\t\t\tisGenerating,\n\t\t\tsuggestionBaseText,\n\t\t\tsuggestionCandidates,\n\t\t\trephraseHighlightCount,\n\t\t]);\n\n\t\tconst triggerRephraseHighlightRef = useRef(triggerRephraseHighlight);\n\t\ttriggerRephraseHighlightRef.current = triggerRephraseHighlight;\n\n\t\tfunction handleOnChange(e: React.ChangeEvent<HTMLTextAreaElement>) {\n\t\t\tconst text = e.target.value;\n\t\t\tconst acceptedSuggestion = acceptedSuggestionStateRef.current;\n\t\t\tif (\n\t\t\t\tacceptedSuggestion &&\n\t\t\t\t!acceptedSuggestion.editedEventEmitted &&\n\t\t\t\ttext !== acceptedSuggestion.acceptedText\n\t\t\t) {\n\t\t\t\tacceptedSuggestionStateRef.current = {\n\t\t\t\t\t...acceptedSuggestion,\n\t\t\t\t\teditedEventEmitted: true,\n\t\t\t\t};\n\t\t\t\temitAIEvent('ai_suggestion_edited', {\n\t\t\t\t\taction_type: acceptedSuggestion.actionType,\n\t\t\t\t\ttemplate_id: templateId,\n\t\t\t\t});\n\t\t\t}\n\t\t\tif (aiTagRecomputeRef.current) {\n\t\t\t\tclearTimeout(aiTagRecomputeRef.current);\n\t\t\t\taiTagRecomputeRef.current = null;\n\t\t\t}\n\t\t\tconst baselineAiTextForRecompute =\n\t\t\t\tacceptedSuggestion?.acceptedText ||\n\t\t\t\t(prefillWasAiGenerated ? prefillBaselineTextRef.current : '');\n\t\t\tif (baselineAiTextForRecompute && text !== baselineAiTextForRecompute) {\n\t\t\t\taiTagRecomputeRef.current = setTimeout(() => {\n\t\t\t\t\temitPostEditAiTagRecompute(text);\n\t\t\t\t}, AI_TAG_RECOMPUTE_IDLE_MS);\n\t\t\t}\n\t\t\tsetEditorText(text);\n\t\t\temitChangeWithGuard(text);\n\t\t}\n\n\t\tfunction setCaretPosition(caretPos: number) {\n\t\t\tconst elem = textSpaceRef?.current;\n\n\t\t\tif (elem != null) {\n\t\t\t\tif (elem.selectionStart) {\n\t\t\t\t\telem.focus();\n\t\t\t\t\telem.selectionEnd = caretPos;\n\t\t\t\t} else elem.focus();\n\t\t\t}\n\t\t}\n\n\t\tfunction onActionSelect(actionType: EditorActionTypes) {\n\t\t\tconst wildCard = WildCardMap[actionType];\n\t\t\tif (wildCard && textSpaceRef.current) {\n\t\t\t\tconst start = textSpaceRef.current.selectionStart;\n\t\t\t\tconst end = textSpaceRef.current.selectionEnd;\n\n\t\t\t\tif (start === end) {\n\t\t\t\t\tconst { text } = insertTextAtIndex(wildCard, start);\n\t\t\t\t\tsetCaretPosition(start + 1);\n\t\t\t\t\temitChangeWithGuard(text);\n\t\t\t\t} else {\n\t\t\t\t\tconst { text } = addTextOrWrap(wildCard);\n\t\t\t\t\temitChangeWithGuard(text);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tfunction onEmojiAddition(emoji: string) {\n\t\t\tconst { text } = addText(emoji);\n\t\t\temitChangeWithGuard(text);\n\t\t}\n\n\t\tfunction addTextOrWrap(textToAdd?: string) {\n\t\t\tlet text = textSpaceRef.current?.value ?? '';\n\n\t\t\tif (textSpaceRef.current && textToAdd) {\n\t\t\t\tconst start = textSpaceRef.current.selectionStart;\n\t\t\t\tconst end = textSpaceRef.current.selectionEnd;\n\n\t\t\t\tconst wildCard = textToAdd;\n\t\t\t\tif (start === end) {\n\t\t\t\t\t/** nothing is selected */\n\t\t\t\t\t/** so append the wildcard at the end */\n\n\t\t\t\t\treturn addText(wildCard);\n\t\t\t\t} else {\n\t\t\t\t\ttext = baseWhatsappContentLang.wrappWildcard(\n\t\t\t\t\t\tstart,\n\t\t\t\t\t\tend,\n\t\t\t\t\t\twildCard,\n\t\t\t\t\t\ttext!,\n\t\t\t\t\t);\n\t\t\t\t\tconst html = baseWhatsappContentLang.getHTML(text);\n\t\t\t\t\tsetEditorText(text);\n\t\t\t\t\treturn { text, html };\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn { text: text!, html: text! };\n\t\t}\n\n\t\tfunction addText(textToAdd: string) {\n\t\t\tconst text = textSpaceRef.current?.value ?? '';\n\n\t\t\tif (textSpaceRef.current && textToAdd) {\n\t\t\t\tconst start = textSpaceRef.current.selectionStart;\n\t\t\t\tconst end = textSpaceRef.current.selectionEnd;\n\t\t\t\tif (start === end) {\n\t\t\t\t\treturn insertTextAtIndex(textToAdd, start);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn { text: text!, html: text! };\n\t\t}\n\n\t\tfunction insertTextAtIndex(textToAdd: string, index: number) {\n\t\t\tlet text = textSpaceRef.current?.value ?? '';\n\n\t\t\ttext = text.slice(0, index) + textToAdd + text.slice(index);\n\t\t\tconst html = baseWhatsappContentLang.getHTML(text);\n\t\t\tsetEditorText(text);\n\t\t\treturn { text, html };\n\t\t}\n\n\t\tuseEffect(() => {\n\t\t\tif (typeof window === 'undefined' || !editorInstanceKey) return;\n\t\t\tconst cached = Number(sessionStorage.getItem(highlightStorageKey) || '0');\n\t\t\tif (!Number.isNaN(cached)) {\n\t\t\t\tsetRephraseHighlightCount(cached);\n\t\t\t}\n\t\t\treturn () => {\n\t\t\t\tsessionStorage.removeItem(highlightStorageKey);\n\t\t\t};\n\t\t}, [editorInstanceKey, highlightStorageKey]);\n\n\t\tuseEffect(() => {\n\t\t\tif (isGenerating) {\n\t\t\t\tsetIsRephraseHighlighted(false);\n\t\t\t\tif (rephraseIdleRef.current) {\n\t\t\t\t\tclearTimeout(rephraseIdleRef.current);\n\t\t\t\t\trephraseIdleRef.current = null;\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (!!suggestionBaseText && suggestionCandidates.length > 0) {\n\t\t\t\tsetIsRephraseHighlighted(false);\n\t\t\t\tif (rephraseIdleRef.current) {\n\t\t\t\t\tclearTimeout(rephraseIdleRef.current);\n\t\t\t\t\trephraseIdleRef.current = null;\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst eligible =\n\t\t\t\t!!currentText.trim() && currentText.length >= rephraseMinChars;\n\n\t\t\tif (prevRephraseEligibleRef.current === null) {\n\t\t\t\tprevRephraseEligibleRef.current = eligible;\n\t\t\t\tif (eligible) {\n\t\t\t\t\trephraseIdleRef.current = setTimeout(() => {\n\t\t\t\t\t\ttriggerRephraseHighlightRef.current();\n\t\t\t\t\t}, REPHRASE_IDLE_MS);\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (!eligible) {\n\t\t\t\tprevRephraseEligibleRef.current = false;\n\t\t\t\tsetIsRephraseHighlighted(false);\n\t\t\t\tif (rephraseIdleRef.current) {\n\t\t\t\t\tclearTimeout(rephraseIdleRef.current);\n\t\t\t\t\trephraseIdleRef.current = null;\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst crossedThreshold = !prevRephraseEligibleRef.current && eligible;\n\t\t\tprevRephraseEligibleRef.current = true;\n\n\t\t\tif (crossedThreshold) {\n\t\t\t\ttriggerRephraseHighlightRef.current();\n\t\t\t}\n\n\t\t\tif (rephraseIdleRef.current) {\n\t\t\t\tclearTimeout(rephraseIdleRef.current);\n\t\t\t}\n\t\t\trephraseIdleRef.current = setTimeout(() => {\n\t\t\t\ttriggerRephraseHighlightRef.current();\n\t\t\t}, REPHRASE_IDLE_MS);\n\t\t}, [\n\t\t\tcurrentText,\n\t\t\tisGenerating,\n\t\t\trephraseMinChars,\n\t\t\tsuggestionBaseText,\n\t\t\tsuggestionCandidates,\n\t\t]);\n\n\t\tuseEffect(() => {\n\t\t\treturn () => {\n\t\t\t\tif (rephraseIdleRef.current) clearTimeout(rephraseIdleRef.current);\n\t\t\t\tif (highlightResetRef.current) clearTimeout(highlightResetRef.current);\n\t\t\t\tif (deferredHtmlRef.current) clearTimeout(deferredHtmlRef.current);\n\t\t\t\tif (aiTagRecomputeRef.current) clearTimeout(aiTagRecomputeRef.current);\n\t\t\t};\n\t\t}, []);\n\n\t\tconst activeCandidate = suggestionCandidates[suggestionIndex] || '';\n\t\tconst activeFeedbackCandidateKey = useMemo(() => {\n\t\t\tif (!suggestionActionType || !activeCandidate) return null;\n\t\t\treturn `${suggestionActionType}-${suggestionIndex}-${activeCandidate}`;\n\t\t}, [activeCandidate, suggestionActionType, suggestionIndex]);\n\t\tconst hasFeedbackForActiveCandidate = !!(\n\t\t\tactiveFeedbackCandidateKey &&\n\t\t\tfeedbackVotesByCandidate[activeFeedbackCandidateKey]\n\t\t);\n\t\tconst suggestionBaseHtml = useMemo(\n\t\t\t() => baseWhatsappContentLang.getHTML(suggestionBaseText || ''),\n\t\t\t[suggestionBaseText],\n\t\t);\n\t\tconst activeCandidateHtml = useMemo(\n\t\t\t() => baseWhatsappContentLang.getHTML(activeCandidate),\n\t\t\t[activeCandidate],\n\t\t);\n\t\tconst canRegenerate = suggestionCandidates.length < MAX_SUGGESTIONS;\n\t\tconst shouldShowSuggestionSession =\n\t\t\t!!suggestionBaseText && suggestionCandidates.length > 0;\n\t\tconst isPrevSuggestionDisabled =\n\t\t\tsuggestionCandidates.length <= 1 || suggestionIndex <= 0;\n\t\tconst isNextSuggestionDisabled =\n\t\t\tsuggestionCandidates.length <= 1 ||\n\t\t\tsuggestionIndex >= suggestionCandidates.length - 1;\n\n\t\tuseEffect(() => {\n\t\t\tif (!shouldShowSuggestionSession) return;\n\t\t\tconst node = suggestionScrollRef.current;\n\t\t\tif (!node) return;\n\t\t\tnode.scrollTop = node.scrollHeight;\n\t\t}, [activeCandidate, shouldShowSuggestionSession, isGenerating]);\n\n\t\tconst executeAIAction = useCallback(\n\t\t\tasync (\n\t\t\t\tactionType: AIEditorActionType,\n\t\t\t\tregenerateExisting = false,\n\t\t\t\tinstructionOverride?: string,\n\t\t\t\ttoneOverrideId?: string,\n\t\t\t\tactionVariant: AIActionVariant = AIActionVariant.DEFAULT,\n\t\t\t) => {\n\t\t\t\tif (\n\t\t\t\t\t!onAIActionRequest &&\n\t\t\t\t\t!apiAdapter &&\n\t\t\t\t\t(!requestExecutor || !baseUrl)\n\t\t\t\t) {\n\t\t\t\t\tonError?.('AI configuration missing');\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif (!currentText.trim()) return;\n\t\t\t\tconst minCharsForAction =\n\t\t\t\t\tminCharsByAction[actionType] ||\n\t\t\t\t\tDEFAULT_AI_ACTION_MIN_CHARS[actionType] ||\n\t\t\t\t\t50;\n\t\t\t\tif (currentText.length < minCharsForAction) return;\n\t\t\t\tif (isGenerating) return;\n\t\t\t\tif (regenerateExisting && !canRegenerate) return;\n\n\t\t\t\tconst baseConfig = activeActionPrompts[actionType];\n\t\t\t\tconst config =\n\t\t\t\t\tactionType === AIEditorActionTypes.REPHRASE &&\n\t\t\t\t\ttemplateType === 'utility' &&\n\t\t\t\t\tactionVariant === AIActionVariant.REPHRASE\n\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t...baseConfig,\n\t\t\t\t\t\t\t\tlabel: 'Rephrase',\n\t\t\t\t\t\t\t\tbasePrompt: UTILITY_REPHRASE_PROMPT,\n\t\t\t\t\t\t }\n\t\t\t\t\t\t: baseConfig;\n\t\t\t\t// Tone is sent only after explicit user selection (or explicit override),\n\t\t\t\t// not from default tone metadata.\n\t\t\t\tconst selectedToneId = toneOverrideId || toneByAction[actionType];\n\t\t\t\tconst selectedTone = config.tones?.find(\n\t\t\t\t\t(tone) => tone.id === selectedToneId,\n\t\t\t\t);\n\t\t\t\tconst instructionForPrompt =\n\t\t\t\t\tinstructionOverride !== undefined\n\t\t\t\t\t\t? instructionOverride\n\t\t\t\t\t\t: instructionText;\n\t\t\t\tconst prompt =\n\t\t\t\t\tonBuildAIPrompt?.({\n\t\t\t\t\t\tactionType,\n\t\t\t\t\t\tactionVariant,\n\t\t\t\t\t\tcurrentText,\n\t\t\t\t\t\ttemplateType,\n\t\t\t\t\t\tconfig,\n\t\t\t\t\t\ttoneId: selectedToneId,\n\t\t\t\t\t\ttoneLabel: selectedTone?.label,\n\t\t\t\t\t\tinstructionText: instructionForPrompt || undefined,\n\t\t\t\t\t}) ||\n\t\t\t\t\tbuildActionPrompt({\n\t\t\t\t\t\tconfig,\n\t\t\t\t\t\tcurrentText,\n\t\t\t\t\t\tselectedToneId,\n\t\t\t\t\t\tinstructionText: instructionForPrompt,\n\t\t\t\t\t});\n\n\t\t\t\tsetIsGenerating(true);\n\t\t\t\temitAIEvent('ai_action_triggered', {\n\t\t\t\t\taction_type: actionType,\n\t\t\t\t\ttemplate_id: templateId,\n\t\t\t\t\ttemplate_category: templateType,\n\t\t\t\t});\n\t\t\t\ttry {\n\t\t\t\t\tconst result = onAIActionRequest\n\t\t\t\t\t\t? await onAIActionRequest({\n\t\t\t\t\t\t\t\tactionType,\n\t\t\t\t\t\t\t\tactionVariant,\n\t\t\t\t\t\t\t\tcurrentText,\n\t\t\t\t\t\t\t\ttemplateType,\n\t\t\t\t\t\t\t\ttoneId: selectedToneId,\n\t\t\t\t\t\t\t\ttoneLabel: selectedTone?.label,\n\t\t\t\t\t\t\t\tinstructionText: instructionForPrompt || undefined,\n\t\t\t\t\t\t\t\tprompt,\n\t\t\t\t\t\t })\n\t\t\t\t\t\t: await requestAISuggestion({\n\t\t\t\t\t\t\t\tapiAdapter,\n\t\t\t\t\t\t\t\trequestExecutor,\n\t\t\t\t\t\t\t\tbaseUrl,\n\t\t\t\t\t\t\t\tendpointPath,\n\t\t\t\t\t\t\t\tprompt,\n\t\t\t\t\t\t\t\tintent,\n\t\t\t\t\t\t\t\tconversationId,\n\t\t\t\t\t\t\t\tsystemId,\n\t\t\t\t\t\t\t\tuseCase,\n\t\t\t\t\t\t\t\tstoreId,\n\t\t\t\t\t\t });\n\t\t\t\t\tconst candidate =\n\t\t\t\t\t\ttypeof result === 'string'\n\t\t\t\t\t\t\t? result.trim()\n\t\t\t\t\t\t\t: (result?.body || '').trim();\n\t\t\t\t\tif (!candidate) return;\n\t\t\t\t\tif (!regenerateExisting) {\n\t\t\t\t\t\tsetSuggestionBaseText(currentText);\n\t\t\t\t\t\tsetSuggestionActionType(actionType);\n\t\t\t\t\t\tsetSuggestionCandidates([candidate]);\n\t\t\t\t\t\tsetSuggestionIndex(0);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tsetSuggestionCandidates((prev) => {\n\t\t\t\t\t\tconst next = [...prev, candidate].slice(0, MAX_SUGGESTIONS);\n\t\t\t\t\t\tsetSuggestionIndex(next.length - 1);\n\t\t\t\t\t\treturn next;\n\t\t\t\t\t});\n\t\t\t\t} catch (e) {\n\t\t\t\t\tonError?.('Failed to generate AI suggestion');\n\t\t\t\t} finally {\n\t\t\t\t\tsetIsGenerating(false);\n\t\t\t\t}\n\t\t\t},\n\t\t\t[\n\t\t\t\trequestExecutor,\n\t\t\t\tbaseUrl,\n\t\t\t\tcurrentText,\n\t\t\t\tisGenerating,\n\t\t\t\tcanRegenerate,\n\t\t\t\tactiveActionPrompts,\n\t\t\t\ttoneByAction,\n\t\t\t\tinstructionText,\n\t\t\t\temitAIEvent,\n\t\t\t\ttemplateId,\n\t\t\t\tendpointPath,\n\t\t\t\tapiAdapter,\n\t\t\t\tintent,\n\t\t\t\tconversationId,\n\t\t\t\tsystemId,\n\t\t\t\tuseCase,\n\t\t\t\tstoreId,\n\t\t\t\ttemplateType,\n\t\t\t\tonError,\n\t\t\t\tminCharsByAction,\n\t\t\t\tonAIActionRequest,\n\t\t\t\tonBuildAIPrompt,\n\t\t\t],\n\t\t);\n\n\t\tconst handleAcceptSuggestion = useCallback(() => {\n\t\t\tif (!activeCandidate || !suggestionBaseText || !suggestionActionType)\n\t\t\t\treturn;\n\t\t\tsetEditorText(activeCandidate);\n\t\t\temitChangeWithGuard(activeCandidate);\n\t\t\temitAIEvent('ai_suggestion_accepted', {\n\t\t\t\taction_type: suggestionActionType,\n\t\t\t\ttemplate_id: templateId,\n\t\t\t});\n\t\t\tacceptedSuggestionStateRef.current = {\n\t\t\t\tacceptedText: activeCandidate,\n\t\t\t\tbaselineText: suggestionBaseText,\n\t\t\t\tactionType: suggestionActionType,\n\t\t\t\teditedEventEmitted: false,\n\t\t\t};\n\n\t\t\tconst inInitialAiPhase = initialAiPrefillPhaseRef.current;\n\t\t\tconst tagPayload = computeAiTagOnAccept({\n\t\t\t\tbaselineText: suggestionBaseText,\n\t\t\t\tacceptedText: activeCandidate,\n\t\t\t\tinitialAiPrefillPhase: inInitialAiPhase,\n\t\t\t});\n\t\t\tif (inInitialAiPhase) {\n\t\t\t\tinitialAiPrefillPhaseRef.current = false;\n\t\t\t}\n\t\t\tonAITagComputed?.({\n\t\t\t\t...tagPayload,\n\t\t\t\tsource: 'accept',\n\t\t\t});\n\t\t\tclearSuggestionSession();\n\t\t}, [\n\t\t\tactiveCandidate,\n\t\t\tsuggestionBaseText,\n\t\t\tsuggestionActionType,\n\t\t\tsetEditorText,\n\t\t\temitChangeWithGuard,\n\t\t\temitAIEvent,\n\t\t\ttemplateId,\n\t\t\tonAITagComputed,\n\t\t\tclearSuggestionSession,\n\t\t]);\n\n\t\tconst handleRejectSuggestion = useCallback(() => {\n\t\t\tif (!suggestionActionType) return;\n\t\t\temitAIEvent('ai_suggestion_discarded', {\n\t\t\t\taction_type: suggestionActionType,\n\t\t\t\ttemplate_id: templateId,\n\t\t\t});\n\t\t\tclearSuggestionSession();\n\t\t}, [clearSuggestionSession, emitAIEvent, suggestionActionType, templateId]);\n\n\t\tconst handleFeedback = useCallback(\n\t\t\t(rating: AIFeedbackRating) => {\n\t\t\t\tif (!suggestionActionType || !activeFeedbackCandidateKey) return;\n\t\t\t\tif (feedbackVotesByCandidate[activeFeedbackCandidateKey]) return;\n\t\t\t\tsetFeedbackVotesByCandidate((prev) => ({\n\t\t\t\t\t...prev,\n\t\t\t\t\t[activeFeedbackCandidateKey]: rating,\n\t\t\t\t}));\n\t\t\t\temitAIEvent('ai_feedback_submitted', {\n\t\t\t\t\taction_type: suggestionActionType,\n\t\t\t\t\ttemplate_id: templateId,\n\t\t\t\t\trating,\n\t\t\t\t\tcandidate_index: suggestionIndex + 1,\n\t\t\t\t});\n\t\t\t},\n\t\t\t[\n\t\t\t\tactiveFeedbackCandidateKey,\n\t\t\t\temitAIEvent,\n\t\t\t\tfeedbackVotesByCandidate,\n\t\t\t\tsuggestionActionType,\n\t\t\t\tsuggestionIndex,\n\t\t\t\ttemplateId,\n\t\t\t],\n\t\t);\n\n\t\tconst aiHeaderActions: AIHeaderAction[] = useMemo(() => {\n\t\t\tif (disableBuiltInAIActions) return [];\n\t\t\treturn enabledAIActions.map((actionType) => {\n\t\t\t\tconst actionConfig = activeActionPrompts[actionType];\n\t\t\t\tconst toneId = toneByAction[actionType];\n\t\t\t\treturn {\n\t\t\t\t\ttype: actionType,\n\t\t\t\t\tlabel: actionConfig.label,\n\t\t\t\t\tisPrimary: actionType === AIEditorActionTypes.REPHRASE,\n\t\t\t\t\tloading: isGenerating && suggestionActionType === actionType,\n\t\t\t\t\thighlighted:\n\t\t\t\t\t\tactionType === AIEditorActionTypes.REPHRASE &&\n\t\t\t\t\t\tisRephraseHighlighted,\n\t\t\t\t\tdisabled:\n\t\t\t\t\t\t!currentText.trim() ||\n\t\t\t\t\t\tcurrentText.length <\n\t\t\t\t\t\t\t(minCharsByAction[actionType] ||\n\t\t\t\t\t\t\t\tDEFAULT_AI_ACTION_MIN_CHARS[actionType] ||\n\t\t\t\t\t\t\t\t50) ||\n\t\t\t\t\t\tisGenerating ||\n\t\t\t\t\t\t(shouldShowSuggestionSession &&\n\t\t\t\t\t\t\tsuggestionActionType === actionType),\n\t\t\t\t\tshowToneDropdown:\n\t\t\t\t\t\tactionType === AIEditorActionTypes.REPHRASE &&\n\t\t\t\t\t\t!!actionConfig.tones?.length,\n\t\t\t\t\ttones: actionConfig.tones,\n\t\t\t\t\tselectedToneId: toneId,\n\t\t\t\t};\n\t\t\t});\n\t\t}, [\n\t\t\tenabledAIActions,\n\t\t\tdisableBuiltInAIActions,\n\t\t\tactiveActionPrompts,\n\t\t\ttoneByAction,\n\t\t\tisGenerating,\n\t\t\tsuggestionActionType,\n\t\t\tshouldShowSuggestionSession,\n\t\t\tisRephraseHighlighted,\n\t\t\tcurrentText,\n\t\t\tminCharsByAction,\n\t\t]);\n\n\t\tuseImperativeHandle(\n\t\t\tref,\n\t\t\t() => {\n\t\t\t\treturn {\n\t\t\t\t\taddTextOrWrap,\n\t\t\t\t\taddText,\n\t\t\t\t\tget() {\n\t\t\t\t\t\treturn currentText;\n\t\t\t\t\t},\n\t\t\t\t\tsetCaretPosition,\n\t\t\t\t};\n\t\t\t},\n\t\t\t[addTextOrWrap, addText, currentText],\n\t\t);\n\n\t\tuseEffect(() => {\n\t\t\tif (inputValue === undefined) return;\n\t\t\tsetEditorText(inputValue || '');\n\t\t}, [inputValue, setEditorText]);\n\n\t\tuseEffect(() => {\n\t\t\tif (!limit || !onError) return;\n\t\t\tconst nextError =\n\t\t\t\tcurrentText.length > limit ? LIMIT_REACHED : error ?? '';\n\t\t\tif (lastEmittedEditorErrorRef.current === nextError) return;\n\t\t\tlastEmittedEditorErrorRef.current = nextError;\n\t\t\tonError(nextError);\n\t\t}, [currentText, error, limit, onError]);\n\n\t\treturn (\n\t\t\t<OuterContainer>\n\t\t\t\t<EditorFooterRow>\n\t\t\t\t\t<EditorFooterTitle>\n\t\t\t\t\t\t{editorHeader ? (\n\t\t\t\t\t\t\t<TitleSmall data-test=\"body-text-for-edit-template\">\n\t\t\t\t\t\t\t\t{editorHeader}\n\t\t\t\t\t\t\t</TitleSmall>\n\t\t\t\t\t\t) : null}\n\t\t\t\t\t</EditorFooterTitle>\n\t\t\t\t\t<EditorFooterRight>\n\t\t\t\t\t\t{error && error !== LIMIT_REACHED ? (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<InfoIcon\n\t\t\t\t\t\t\t\t\twidth={16}\n\t\t\t\t\t\t\t\t\theight={16}\n\t\t\t\t\t\t\t\t\tcolor={COLORS.content.negative}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<BodyCaption color={COLORS.content.negative}>\n\t\t\t\t\t\t\t\t\t{error}\n\t\t\t\t\t\t\t\t</BodyCaption>\n\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t{limit ? (\n\t\t\t\t\t\t\t<BodyCaption\n\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\tcolor:\n\t\t\t\t\t\t\t\t\t\terror === LIMIT_REACHED || currentText.length > limit\n\t\t\t\t\t\t\t\t\t\t\t? COLORS.content.negative\n\t\t\t\t\t\t\t\t\t\t\t: COLORS.content.secondary,\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{currentText.length}/{limit}\n\t\t\t\t\t\t\t</BodyCaption>\n\t\t\t\t\t\t) : null}\n\t\t\t\t\t</EditorFooterRight>\n\t\t\t\t</EditorFooterRow>\n\t\t\t\t<Container isError={!!error}>\n\t\t\t\t\t{shouldShowSuggestionSession ? (\n\t\t\t\t\t\t<SuggestionSessionContainer ref={suggestionScrollRef}>\n\t\t\t\t\t\t\t<SuggestionBaselineText\n\t\t\t\t\t\t\t\tdangerouslySetInnerHTML={{ __html: suggestionBaseHtml }}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{isGenerating ? (\n\t\t\t\t\t\t\t\t<SuggestionCandidateText aria-busy=\"true\">\n\t\t\t\t\t\t\t\t\t<SuggestionCandidateSkeleton>\n\t\t\t\t\t\t\t\t\t\t<EditorSkeletonLine width=\"96%\" />\n\t\t\t\t\t\t\t\t\t\t<EditorSkeletonLine width=\"84%\" />\n\t\t\t\t\t\t\t\t\t\t<EditorSkeletonLine width=\"68%\" />\n\t\t\t\t\t\t\t\t\t</SuggestionCandidateSkeleton>\n\t\t\t\t\t\t\t\t</SuggestionCandidateText>\n\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t<SuggestionCandidateText\n\t\t\t\t\t\t\t\t\tdangerouslySetInnerHTML={{\n\t\t\t\t\t\t\t\t\t\t__html: activeCandidateHtml,\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t<SuggestionControlsRow>\n\t\t\t\t\t\t\t\t<SuggestionIconButton\n\t\t\t\t\t\t\t\t\taria-label=\"Previous suggestion\"\n\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\tdisabled={isPrevSuggestionDisabled}\n\t\t\t\t\t\t\t\t\tonClick={() =>\n\t\t\t\t\t\t\t\t\t\tsetSuggestionIndex((idx) => Math.max(0, idx - 1))\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<ChevronLeftIcon\n\t\t\t\t\t\t\t\t\t\twidth={14}\n\t\t\t\t\t\t\t\t\t\theight={14}\n\t\t\t\t\t\t\t\t\t\tcolor={COLORS.content.secondary}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</SuggestionIconButton>\n\t\t\t\t\t\t\t\t<SuggestionCounter>\n\t\t\t\t\t\t\t\t\t{suggestionIndex + 1}/{suggestionCandidates.length}\n\t\t\t\t\t\t\t\t</SuggestionCounter>\n\t\t\t\t\t\t\t\t<SuggestionIconButton\n\t\t\t\t\t\t\t\t\taria-label=\"Next suggestion\"\n\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\tdisabled={isNextSuggestionDisabled}\n\t\t\t\t\t\t\t\t\tonClick={() =>\n\t\t\t\t\t\t\t\t\t\tsetSuggestionIndex((idx) =>\n\t\t\t\t\t\t\t\t\t\t\tMath.min(suggestionCandidates.length - 1, idx + 1),\n\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<ChevronRightIcon\n\t\t\t\t\t\t\t\t\t\twidth={14}\n\t\t\t\t\t\t\t\t\t\theight={14}\n\t\t\t\t\t\t\t\t\t\tcolor={COLORS.content.secondary}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</SuggestionIconButton>\n\t\t\t\t\t\t\t\t<Tooltip body=\"Like\" placement=\"top\">\n\t\t\t\t\t\t\t\t\t<SuggestionIconButton\n\t\t\t\t\t\t\t\t\t\taria-label=\"Like suggestion\"\n\t\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\t\tdisabled={hasFeedbackForActiveCandidate}\n\t\t\t\t\t\t\t\t\t\tonClick={() => handleFeedback(AIFeedbackRating.LIKE)}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<ThumbsUpIcon\n\t\t\t\t\t\t\t\t\t\t\twidth={14}\n\t\t\t\t\t\t\t\t\t\t\theight={14}\n\t\t\t\t\t\t\t\t\t\t\tcolor={COLORS.content.secondary}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</SuggestionIconButton>\n\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t\t<Tooltip body=\"Dislike\" placement=\"top\">\n\t\t\t\t\t\t\t\t\t<SuggestionIconButton\n\t\t\t\t\t\t\t\t\t\taria-label=\"Dislike suggestion\"\n\t\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\t\tdisabled={hasFeedbackForActiveCandidate}\n\t\t\t\t\t\t\t\t\t\tonClick={() => handleFeedback(AIFeedbackRating.DISLIKE)}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<ThumbsDownIcon\n\t\t\t\t\t\t\t\t\t\t\twidth={14}\n\t\t\t\t\t\t\t\t\t\t\theight={14}\n\t\t\t\t\t\t\t\t\t\t\tcolor={COLORS.content.secondary}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</SuggestionIconButton>\n\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t\t{canRegenerate ? (\n\t\t\t\t\t\t\t\t\t<Tooltip\n\t\t\t\t\t\t\t\t\t\tbody={isGenerating ? 'Regenerating…' : 'Regenerate'}\n\t\t\t\t\t\t\t\t\t\tplacement=\"top\"\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<SuggestionRegenerateButton\n\t\t\t\t\t\t\t\t\t\t\taria-label=\"Regenerate suggestion\"\n\t\t\t\t\t\t\t\t\t\t\taria-busy={isGenerating}\n\t\t\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\t\t\tdisabled={isGenerating}\n\t\t\t\t\t\t\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\t\t\t\t\t\t\tif (suggestionActionType) {\n\t\t\t\t\t\t\t\t\t\t\t\t\texecuteAIAction(suggestionActionType, true);\n\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{isGenerating ? (\n\t\t\t\t\t\t\t\t\t\t\t\t<RegenerateIconShimmer aria-hidden />\n\t\t\t\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t\t\t\t<RewindIcon width={14} height={14} />\n\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t</SuggestionRegenerateButton>\n\t\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t\t\t<Tooltip body=\"Discard\" placement=\"top\">\n\t\t\t\t\t\t\t\t\t<SuggestionIconButton\n\t\t\t\t\t\t\t\t\t\taria-label=\"Discard suggestion\"\n\t\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\t\tonClick={handleRejectSuggestion}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<CrossIcon\n\t\t\t\t\t\t\t\t\t\t\twidth={14}\n\t\t\t\t\t\t\t\t\t\t\theight={14}\n\t\t\t\t\t\t\t\t\t\t\tcolor={COLORS.content.secondary}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</SuggestionIconButton>\n\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t\t<Tooltip body=\"Accept\" placement=\"top\">\n\t\t\t\t\t\t\t\t\t<SuggestionIconButton\n\t\t\t\t\t\t\t\t\t\taria-label=\"Accept suggestion\"\n\t\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\t\tonClick={handleAcceptSuggestion}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<CheckIcon\n\t\t\t\t\t\t\t\t\t\t\twidth={14}\n\t\t\t\t\t\t\t\t\t\t\theight={14}\n\t\t\t\t\t\t\t\t\t\t\tcolor={COLORS.content.secondary}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</SuggestionIconButton>\n\t\t\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t\t</SuggestionControlsRow>\n\t\t\t\t\t\t</SuggestionSessionContainer>\n\t\t\t\t\t) : isGenerating ? (\n\t\t\t\t\t\t<EditorSkeletonContainer>\n\t\t\t\t\t\t\t<EditorSkeletonLine width=\"96%\" />\n\t\t\t\t\t\t\t<EditorSkeletonLine width=\"92%\" />\n\t\t\t\t\t\t\t<EditorSkeletonLine width=\"88%\" />\n\t\t\t\t\t\t\t<EditorSkeletonLine width=\"54%\" />\n\t\t\t\t\t\t</EditorSkeletonContainer>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<TextSpace\n\t\t\t\t\t\t\tref={textSpaceRef}\n\t\t\t\t\t\t\t{...textAreaProps}\n\t\t\t\t\t\t\tvalue={currentText}\n\t\t\t\t\t\t\tonChange={handleOnChange}\n\t\t\t\t\t\t\tonBlur={(e) => {\n\t\t\t\t\t\t\t\tif (aiTagRecomputeRef.current) {\n\t\t\t\t\t\t\t\t\tclearTimeout(aiTagRecomputeRef.current);\n\t\t\t\t\t\t\t\t\taiTagRecomputeRef.current = null;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\temitPostEditAiTagRecompute(e.target.value);\n\t\t\t\t\t\t\t\ttextAreaOnBlur?.(e);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tonPaste={(e) => {\n\t\t\t\t\t\t\t\tconst pastedText = e.clipboardData.getData('text');\n\t\t\t\t\t\t\t\tif (pastedText.length > LARGE_INPUT_THRESHOLD) {\n\t\t\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\t\t\tconst el = textSpaceRef.current;\n\t\t\t\t\t\t\t\t\tconst start = el?.selectionStart ?? 0;\n\t\t\t\t\t\t\t\t\tconst end = el?.selectionEnd ?? start;\n\t\t\t\t\t\t\t\t\t// Prefer live DOM value — `currentText` can lag the textarea for big pastes.\n\t\t\t\t\t\t\t\t\tconst base = el?.value ?? currentText;\n\t\t\t\t\t\t\t\t\tconst nextText =\n\t\t\t\t\t\t\t\t\t\tbase.slice(0, start) + pastedText + base.slice(end);\n\t\t\t\t\t\t\t\t\tsetEditorText(nextText);\n\t\t\t\t\t\t\t\t\temitChangeWithGuard(nextText);\n\t\t\t\t\t\t\t\t\tconst caret = start + pastedText.length;\n\t\t\t\t\t\t\t\t\trequestAnimationFrame(() => {\n\t\t\t\t\t\t\t\t\t\tconst ta = textSpaceRef.current;\n\t\t\t\t\t\t\t\t\t\tif (!ta) return;\n\t\t\t\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\t\t\t\tta.setSelectionRange(caret, caret);\n\t\t\t\t\t\t\t\t\t\t} catch {\n\t\t\t\t\t\t\t\t\t\t\t// ignore invalid range in edge browsers\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\trows={rows}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t\t{isInstructionInputVisible ? (\n\t\t\t\t\t\t<InstructionContainer>\n\t\t\t\t\t\t\t<InstructionInputRow>\n\t\t\t\t\t\t\t\t<EditIcon\n\t\t\t\t\t\t\t\t\twidth={18}\n\t\t\t\t\t\t\t\t\theight={18}\n\t\t\t\t\t\t\t\t\tcolor={COLORS.content.secondary}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<InstructionInput\n\t\t\t\t\t\t\t\t\tvalue={instructionText}\n\t\t\t\t\t\t\t\t\tplaceholder=\"Add specific instructions to refine your message\"\n\t\t\t\t\t\t\t\t\tonChange={(e) => setInstructionText(e.target.value)}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<InstructionActions>\n\t\t\t\t\t\t\t\t\t<InstructionCancel\n\t\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\t\t\t\t\t\tsetInstructionText('');\n\t\t\t\t\t\t\t\t\t\t\tsetIsInstructionInputVisible(false);\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\tCancel\n\t\t\t\t\t\t\t\t\t</InstructionCancel>\n\t\t\t\t\t\t\t\t\t<InstructionImprove\n\t\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\t\t\t\t\t\tconst instructionToApply = instructionText.trim();\n\t\t\t\t\t\t\t\t\t\t\tif (instructionToApply) {\n\t\t\t\t\t\t\t\t\t\t\t\temitAIEvent('ai_instruction_used', {\n\t\t\t\t\t\t\t\t\t\t\t\t\taction_type: AIEditorActionTypes.REPHRASE,\n\t\t\t\t\t\t\t\t\t\t\t\t\ttemplate_id: templateId,\n\t\t\t\t\t\t\t\t\t\t\t\t\tinstruction_text:\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tanonymizeInstructionText(instructionToApply),\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tsetIsInstructionInputVisible(false);\n\t\t\t\t\t\t\t\t\t\t\tsetInstructionText('');\n\t\t\t\t\t\t\t\t\t\t\texecuteAIAction(\n\t\t\t\t\t\t\t\t\t\t\t\tAIEditorActionTypes.REPHRASE,\n\t\t\t\t\t\t\t\t\t\t\t\tfalse,\n\t\t\t\t\t\t\t\t\t\t\t\tinstructionToApply,\n\t\t\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\tImprove\n\t\t\t\t\t\t\t\t\t</InstructionImprove>\n\t\t\t\t\t\t\t\t</InstructionActions>\n\t\t\t\t\t\t\t</InstructionInputRow>\n\t\t\t\t\t\t\t{instructionText.trim().length > 0 &&\n\t\t\t\t\t\t\tfilteredInstructionSuggestions.length > 0 ? (\n\t\t\t\t\t\t\t\t<InstructionSuggestionList>\n\t\t\t\t\t\t\t\t\t{filteredInstructionSuggestions.map((suggestion) => (\n\t\t\t\t\t\t\t\t\t\t<InstructionSuggestionButton\n\t\t\t\t\t\t\t\t\t\t\tkey={suggestion}\n\t\t\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\t\t\tselected={instructionText === suggestion}\n\t\t\t\t\t\t\t\t\t\t\tonClick={() => setInstructionText(suggestion)}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{suggestion}\n\t\t\t\t\t\t\t\t\t\t</InstructionSuggestionButton>\n\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t</InstructionSuggestionList>\n\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t</InstructionContainer>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<WhatsAppTextEditorHeader\n\t\t\t\t\t\t\tactions={actions}\n\t\t\t\t\t\t\tref={textSpaceRef}\n\t\t\t\t\t\t\tonActionSelect={onActionSelect}\n\t\t\t\t\t\t\tRightComponent={RightComponent}\n\t\t\t\t\t\t\trightActionsDisabled={shouldShowSuggestionSession || isGenerating}\n\t\t\t\t\t\t\tonEmojiClick={onEmojiAddition}\n\t\t\t\t\t\t\taiActions={aiHeaderActions}\n\t\t\t\t\t\t\tdisableAllActions={shouldShowSuggestionSession || isGenerating}\n\t\t\t\t\t\t\tinstructionActive={isInstructionInputVisible}\n\t\t\t\t\t\t\tonAIInstructionsClick={() => setIsInstructionInputVisible(true)}\n\t\t\t\t\t\t\tonAIToneChange={(actionType, toneId) => {\n\t\t\t\t\t\t\t\tsetToneByAction((prev) => ({ ...prev, [actionType]: toneId }));\n\t\t\t\t\t\t\t\tonAIToneSelect?.(actionType, toneId);\n\t\t\t\t\t\t\t\tif (actionType === AIEditorActionTypes.REPHRASE) {\n\t\t\t\t\t\t\t\t\texecuteAIAction(\n\t\t\t\t\t\t\t\t\t\tactionType,\n\t\t\t\t\t\t\t\t\t\tfalse,\n\t\t\t\t\t\t\t\t\t\tundefined,\n\t\t\t\t\t\t\t\t\t\ttoneId,\n\t\t\t\t\t\t\t\t\t\tAIActionVariant.DEFAULT,\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\tonAIActionClick={(\n\t\t\t\t\t\t\t\tactionType,\n\t\t\t\t\t\t\t\tactionVariant = AIActionVariant.DEFAULT,\n\t\t\t\t\t\t\t) => {\n\t\t\t\t\t\t\t\tif (isGenerating) return;\n\n\t\t\t\t\t\t\t\tif (shouldShowSuggestionSession) {\n\t\t\t\t\t\t\t\t\tif (suggestionActionType === actionType) {\n\t\t\t\t\t\t\t\t\t\t// Same action should not retrigger from chip;\n\t\t\t\t\t\t\t\t\t\t// regenerate is only via explicit regenerate control.\n\t\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t// New action starts a fresh suggestion session.\n\t\t\t\t\t\t\t\t\tclearSuggestionSession();\n\t\t\t\t\t\t\t\t\texecuteAIAction(\n\t\t\t\t\t\t\t\t\t\tactionType,\n\t\t\t\t\t\t\t\t\t\tfalse,\n\t\t\t\t\t\t\t\t\t\tundefined,\n\t\t\t\t\t\t\t\t\t\tundefined,\n\t\t\t\t\t\t\t\t\t\tactionVariant,\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\texecuteAIAction(\n\t\t\t\t\t\t\t\t\tactionType,\n\t\t\t\t\t\t\t\t\tfalse,\n\t\t\t\t\t\t\t\t\tundefined,\n\t\t\t\t\t\t\t\t\tundefined,\n\t\t\t\t\t\t\t\t\tactionVariant,\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\t\t\t\t</Container>\n\t\t\t</OuterContainer>\n\t\t);\n\t},\n);\n\nWhatsAppTextEditor.displayName = 'WhatsAppTextEditor';\n\nexport type { AITagPayload } from './ai/aiTag';\nexport {\n\tAI_TAG_CHANGE_RATIO_THRESHOLD,\n\tcomputeAiTagOnAccept,\n\tlevenshteinDistance,\n} from './ai/aiTag';\n"],"names":["LIMIT_REACHED","REPHRASE_IDLE_MS","MAX_REPHRASE_HIGHLIGHTS","MAX_SUGGESTIONS","LARGE_INPUT_THRESHOLD","AI_TAG_RECOMPUTE_IDLE_MS","UTILITY_REPHRASE_PROMPT","skeletonPulse","keyframes","EditorSkeletonContainer","styled","EditorSkeletonLine","props","SuggestionSessionContainer","SuggestionBaselineText","COLORS","SuggestionCandidateText","SuggestionCandidateSkeleton","SuggestionControlsRow","SuggestionCounter","SuggestionIconButton","SuggestionRegenerateButton","RegenerateIconShimmer","InstructionContainer","InstructionInputRow","InstructionInput","InstructionActions","InstructionCancel","InstructionImprove","InstructionSuggestionList","InstructionSuggestionButton","baseWhatsappContentLang","BaseWhatsappContentLangHelper","WildCardMap","EditorActionTypes","getHighlightStorageKey","editorInstanceKey","WhatsAppTextEditor","React","onChange","onClickVariable","inputValue","RightComponent","error","limit","onError","rows","actions","editorSessionId","templateType","templateId","requestExecutor","baseUrl","endpointPath","useCase","storeId","apiAdapter","conversationId","systemId","intent","enabledAIActions","AIEditorActionTypes","disableBuiltInAIActions","promptOverrides","rephraseTones","aiActionMinChars","instructionSuggestions","DEFAULT_INSTRUCTION_SUGGESTIONS","onAnalyticsEvent","onAITagComputed","prefillWasAiGenerated","editorHeader","onAIToneSelect","onAIActionRequest","onBuildAIPrompt","textAreaOnBlur","textAreaProps","ref","textSpaceRef","useRef","currentText","setCurrentText","useState","isRephraseHighlighted","setIsRephraseHighlighted","rephraseHighlightCount","setRephraseHighlightCount","isGenerating","setIsGenerating","isInstructionInputVisible","setIsInstructionInputVisible","instructionText","setInstructionText","toneByAction","setToneByAction","suggestionBaseText","setSuggestionBaseText","suggestionCandidates","setSuggestionCandidates","suggestionIndex","setSuggestionIndex","suggestionActionType","setSuggestionActionType","suggestionScrollRef","rephraseIdleRef","highlightResetRef","aiTagRecomputeRef","prevRephraseEligibleRef","deferredHtmlRef","lastEmittedEditorErrorRef","initialAiPrefillPhaseRef","acceptedSuggestionStateRef","prefillBaselineTextRef","prefillBaselineCapturedRef","feedbackVotesByCandidate","setFeedbackVotesByCandidate","mountSessionIdRef","highlightStorageKey","useMemo","useEffect","seed","activeActionPrompts","resolveActionPrompts","filteredInstructionSuggestions","query","suggestion","minCharsByAction","DEFAULT_AI_ACTION_MIN_CHARS","rephraseMinChars","anonymizeInstructionText","useCallback","value","normalized","words","emitAIEvent","name","payload","setEditorText","nextText","prev","emitChangeWithGuard","emitPostEditAiTagRecompute","latestBaseline","recomputePayload","computeAiTagOnPostEdit","clearSuggestionSession","triggerRephraseHighlight","nextCount","triggerRephraseHighlightRef","handleOnChange","text","acceptedSuggestion","baselineAiTextForRecompute","setCaretPosition","caretPos","elem","onActionSelect","actionType","wildCard","start","end","insertTextAtIndex","addTextOrWrap","onEmojiAddition","emoji","addText","textToAdd","html","index","cached","eligible","crossedThreshold","activeCandidate","activeFeedbackCandidateKey","hasFeedbackForActiveCandidate","suggestionBaseHtml","activeCandidateHtml","canRegenerate","shouldShowSuggestionSession","isPrevSuggestionDisabled","isNextSuggestionDisabled","node","executeAIAction","regenerateExisting","instructionOverride","toneOverrideId","actionVariant","AIActionVariant","minCharsForAction","baseConfig","config","selectedToneId","selectedTone","tone","instructionForPrompt","prompt","buildActionPrompt","result","requestAISuggestion","candidate","next","handleAcceptSuggestion","inInitialAiPhase","tagPayload","computeAiTagOnAccept","handleRejectSuggestion","handleFeedback","rating","aiHeaderActions","actionConfig","toneId","useImperativeHandle","nextError","OuterContainer","jsxDEV","EditorFooterRow","EditorFooterTitle","TitleSmall","this","EditorFooterRight","Fragment","InfoIcon","BodyCaption","Container","idx","ChevronLeftIcon","ChevronRightIcon","Tooltip","ThumbsUpIcon","ThumbsDownIcon","RewindIcon","CrossIcon","CheckIcon","TextSpace","pastedText","el","base","caret","ta","EditIcon","instructionToApply","WhatsAppTextEditorHeader"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var
|
|
1
|
+
"use strict";var C=Object.create;var T=Object.defineProperty;var A=Object.getOwnPropertyDescriptor;var V=Object.getOwnPropertyNames;var L=Object.getPrototypeOf,S=Object.prototype.hasOwnProperty;var M=(e,o,l,a)=>{if(o&&typeof o=="object"||typeof o=="function")for(let n of V(o))!S.call(e,n)&&n!==l&&T(e,n,{get:()=>o[n],enumerable:!(a=A(o,n))||a.enumerable});return e};var w=(e,o,l)=>(l=e!=null?C(L(e)):{},M(o||!e||!e.__esModule?T(l,"default",{value:e,enumerable:!0}):l,e));Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("react/jsx-dev-runtime"),m=require("react"),J=require("styled-components"),B=require("../../hooks/useOutside.js"),d=require("../../constants/Theme.js"),q=require("../../assets/icons/bold.svg.js"),$=require("../../assets/icons/emoji.svg.js"),F=require("../../assets/icons/italic.svg.js"),G=require("../../assets/icons/strikeThrough.svg.js"),b=require("../tooltips/Tooltip.js"),P=require("./AIRephraseButton.js"),y=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},K=y(m),p=y(J);let N=()=>t.jsxDEV(t.Fragment,{},void 0,!1,{fileName:"/Users/himanshusrivastava/Desktop/Work/bik-component-library/bik-component-library/src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx",lineNumber:13,columnNumber:30},void 0);typeof window<"u"&&import("emoji-picker-react").then(e=>{N=e.default});const h=e=>e?d.COLORS.background.inverseLight:d.COLORS.content.placeholder,_=p.default.div`
|
|
2
2
|
background: ${d.COLORS.surface.standard};
|
|
3
3
|
display: flex;
|
|
4
4
|
flex-direction: row;
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
width: 2px;
|
|
12
12
|
height: 12px;
|
|
13
13
|
background: #e0e0e0;
|
|
14
|
-
`,
|
|
14
|
+
`,f=p.default.div`
|
|
15
15
|
padding: 2px 6px;
|
|
16
16
|
background: ${e=>e.active?d.COLORS.background.inactive:"transparent"};
|
|
17
17
|
border-radius: 4px;
|
|
@@ -60,5 +60,5 @@
|
|
|
60
60
|
:hover {
|
|
61
61
|
background: ${e=>e.disabled?void 0:d.COLORS.surface.subdued};
|
|
62
62
|
}
|
|
63
|
-
`;var
|
|
63
|
+
`;var W=(e=>(e.BOLD="BOLD",e.ITALIC="ITALIC",e.STRIKETHROUGH="STRIKETHROUGH",e.EMOJI="EMOJI",e))(W||{}),D=(e=>(e.REPHRASE="rephrase",e.SHORTEN="shorten",e.EXPAND="expand",e.EMOJIFY="emojify",e))(D||{}),g=(e=>(e.DEFAULT="default",e.REPHRASE="rephrase",e))(g||{});const O=K.default.forwardRef(({onActionSelect:e,RightComponent:o,onEmojiClick:l,actions:a,aiActions:n,onAIActionClick:x,onAIToneChange:H,onAIInstructionsClick:I,instructionActive:j,disableAllActions:i,rightActionsDisabled:R},re)=>{const E=m.useRef(null),[s,k]=m.useState({BOLD:!1,ITALIC:!1,STRIKETHROUGH:!1,EMOJI:!1}),v=m.useCallback(()=>{k(r=>r.EMOJI?{...r,EMOJI:!1}:r)},[]);B.useOutside(E,()=>{v()}),m.useEffect(()=>{i&&k(r=>r.EMOJI?{...r,EMOJI:!1}:r)},[i]);function u(r,c){if(r.preventDefault?.(),c==="EMOJI"){if(i)return;k(U=>({...U,EMOJI:!s.EMOJI}))}e(c)}return!a?.length&&!o&&!n?.length?t.jsxDEV(t.Fragment,{},void 0,!1,{fileName:"/Users/himanshusrivastava/Desktop/Work/bik-component-library/bik-component-library/src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx",lineNumber:244,columnNumber:73},void 0):t.jsxDEV(_,{children:[a?.includes("EMOJI")&&t.jsxDEV(t.Fragment,{children:[t.jsxDEV(b.Tooltip,{body:"Emoji",placement:"bottom",children:t.jsxDEV(f,{style:{marginLeft:0},disabled:i,active:!!s.EMOJI,onClick:r=>{i||u(r,"EMOJI")},children:t.jsxDEV($.default,{width:16,height:16,color:h(s.EMOJI)},void 0,!1,{fileName:"/Users/himanshusrivastava/Desktop/Work/bik-component-library/bik-component-library/src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx",lineNumber:262,columnNumber:9},void 0)},void 0,!1,{fileName:"/Users/himanshusrivastava/Desktop/Work/bik-component-library/bik-component-library/src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx",lineNumber:251,columnNumber:8},void 0)},void 0,!1,{fileName:"/Users/himanshusrivastava/Desktop/Work/bik-component-library/bik-component-library/src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx",lineNumber:250,columnNumber:7},void 0),s.EMOJI&&t.jsxDEV(Y,{ref:E,children:t.jsxDEV(N,{onEmojiClick:r=>{v(),l?.(r.emoji)}},void 0,!1,{fileName:"/Users/himanshusrivastava/Desktop/Work/bik-component-library/bik-component-library/src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx",lineNumber:271,columnNumber:9},void 0)},void 0,!1,{fileName:"/Users/himanshusrivastava/Desktop/Work/bik-component-library/bik-component-library/src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx",lineNumber:270,columnNumber:8},void 0)]},void 0,!0,{fileName:"/Users/himanshusrivastava/Desktop/Work/bik-component-library/bik-component-library/src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx",lineNumber:249,columnNumber:6},void 0),a?.includes("BOLD")&&t.jsxDEV(t.Fragment,{children:t.jsxDEV(b.Tooltip,{body:"Bold",placement:"bottom",children:t.jsxDEV(f,{disabled:i,active:!!s.BOLD,onClick:r=>{i||u(r,"BOLD")},children:t.jsxDEV(q.default,{width:10,height:17,color:h(s.BOLD)},void 0,!1,{fileName:"/Users/himanshusrivastava/Desktop/Work/bik-component-library/bik-component-library/src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx",lineNumber:293,columnNumber:9},void 0)},void 0,!1,{fileName:"/Users/himanshusrivastava/Desktop/Work/bik-component-library/bik-component-library/src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx",lineNumber:285,columnNumber:8},void 0)},void 0,!1,{fileName:"/Users/himanshusrivastava/Desktop/Work/bik-component-library/bik-component-library/src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx",lineNumber:284,columnNumber:7},void 0)},void 0,!1,{fileName:"/Users/himanshusrivastava/Desktop/Work/bik-component-library/bik-component-library/src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx",lineNumber:283,columnNumber:6},void 0),a?.includes("ITALIC")&&t.jsxDEV(t.Fragment,{children:t.jsxDEV(b.Tooltip,{body:"Italics",placement:"bottom",children:t.jsxDEV(f,{disabled:i,onClick:r=>{i||u(r,"ITALIC")},active:!!s.ITALIC,children:t.jsxDEV(F.default,{width:9,height:16,color:h(s.ITALIC)},void 0,!1,{fileName:"/Users/himanshusrivastava/Desktop/Work/bik-component-library/bik-component-library/src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx",lineNumber:313,columnNumber:9},void 0)},void 0,!1,{fileName:"/Users/himanshusrivastava/Desktop/Work/bik-component-library/bik-component-library/src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx",lineNumber:305,columnNumber:8},void 0)},void 0,!1,{fileName:"/Users/himanshusrivastava/Desktop/Work/bik-component-library/bik-component-library/src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx",lineNumber:304,columnNumber:7},void 0)},void 0,!1,{fileName:"/Users/himanshusrivastava/Desktop/Work/bik-component-library/bik-component-library/src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx",lineNumber:303,columnNumber:6},void 0),a?.includes("STRIKETHROUGH")&&t.jsxDEV(t.Fragment,{children:t.jsxDEV(b.Tooltip,{body:"Strikethrough",placement:"bottom",children:t.jsxDEV(f,{disabled:i,active:!!s.STRIKETHROUGH,style:{borderRight:0},onClick:r=>{i||u(r,"STRIKETHROUGH")},children:t.jsxDEV(G.default,{width:12,height:18,color:h(s.STRIKETHROUGH)},void 0,!1,{fileName:"/Users/himanshusrivastava/Desktop/Work/bik-component-library/bik-component-library/src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx",lineNumber:334,columnNumber:9},void 0)},void 0,!1,{fileName:"/Users/himanshusrivastava/Desktop/Work/bik-component-library/bik-component-library/src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx",lineNumber:325,columnNumber:8},void 0)},void 0,!1,{fileName:"/Users/himanshusrivastava/Desktop/Work/bik-component-library/bik-component-library/src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx",lineNumber:324,columnNumber:7},void 0)},void 0,!1,{fileName:"/Users/himanshusrivastava/Desktop/Work/bik-component-library/bik-component-library/src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx",lineNumber:323,columnNumber:6},void 0),n?.length?t.jsxDEV(Q,{children:n.map(r=>r.type==="rephrase"?t.jsxDEV(P.AIRephraseButton,{label:r.label,disabled:i||r.disabled,loading:r.loading,highlighted:r.highlighted,tones:r.tones,selectedToneId:r.selectedToneId,instructionActive:j,onClick:()=>{i||x?.(r.type,"default")},onToneChange:c=>{i||H?.(r.type,c)},onInstructionsClick:()=>{i||I?.()},showSecondaryRephraseOption:r.label.toLowerCase()==="meta safe rewrite",onSecondaryRephraseClick:()=>{i||x?.(r.type,"rephrase")}},r.type,!1,{fileName:"/Users/himanshusrivastava/Desktop/Work/bik-component-library/bik-component-library/src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx",lineNumber:348,columnNumber:10},void 0):t.jsxDEV("div",{children:t.jsxDEV(Z,{disabled:i||r.disabled||r.loading,children:t.jsxDEV(ee,{type:"button",highlighted:!!r.highlighted||!!r.isPrimary,disabled:r.disabled||r.loading,onClick:()=>{i||x?.(r.type,"default")},children:r.loading?"...":r.label},void 0,!1,{fileName:"/Users/himanshusrivastava/Desktop/Work/bik-component-library/bik-component-library/src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx",lineNumber:387,columnNumber:11},void 0)},void 0,!1,{fileName:"/Users/himanshusrivastava/Desktop/Work/bik-component-library/bik-component-library/src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx",lineNumber:382,columnNumber:10},void 0)},r.type,!1,{fileName:"/Users/himanshusrivastava/Desktop/Work/bik-component-library/bik-component-library/src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx",lineNumber:381,columnNumber:9},void 0))},void 0,!1,{fileName:"/Users/himanshusrivastava/Desktop/Work/bik-component-library/bik-component-library/src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx",lineNumber:344,columnNumber:6},void 0):null,t.jsxDEV(X,{children:o&&t.jsxDEV(o,{rightActionsDisabled:!!R},void 0,!1,{fileName:"/Users/himanshusrivastava/Desktop/Work/bik-component-library/bik-component-library/src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx",lineNumber:406,columnNumber:7},void 0)},void 0,!1,{fileName:"/Users/himanshusrivastava/Desktop/Work/bik-component-library/bik-component-library/src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx",lineNumber:404,columnNumber:5},void 0)]},void 0,!0,{fileName:"/Users/himanshusrivastava/Desktop/Work/bik-component-library/bik-component-library/src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx",lineNumber:247,columnNumber:4},void 0)});O.displayName="WhatsAppTextEditorHeader";exports.AIActionVariant=g;exports.AIEditorActionTypes=D;exports.CustomRightBorder=z;exports.EditorActionTypes=W;exports.WhatsAppTextEditorHeader=O;
|
|
64
64
|
//# sourceMappingURL=WhatsAppTextEditorHeader.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WhatsAppTextEditorHeader.js","sources":["../../../../src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx"],"sourcesContent":["// import EmojiPicker from 'emoji-picker-react';\nimport React, { useCallback, useEffect, useRef, useState } from 'react';\nimport styled from 'styled-components';\nimport { useOutside } from '@src/hooks/useOutside';\nimport { COLORS } from '@src/constants/Theme';\nimport BoldIcon from '../../assets/icons/bold.svg';\nimport EmojiIcon from '../../assets/icons/emoji.svg';\nimport ItalicIcon from '../../assets/icons/italic.svg';\nimport StrikeThroughIcon from '../../assets/icons/strikeThrough.svg';\nimport { Tooltip } from '../tooltips/Tooltip';\nimport { AIActionToneOption, AIRephraseButton } from './AIRephraseButton';\n\nlet EmojiPicker: any = () => <></>;\nif (typeof window !== 'undefined') {\n\timport('emoji-picker-react').then((_module) => {\n\t\tEmojiPicker = _module.default;\n\t});\n}\n\nconst getIconColor = (isActive: boolean) => {\n\tif (isActive) return COLORS.background.inverseLight;\n\treturn COLORS.content.placeholder;\n};\n\nconst Container = styled.div`\n\tbackground: ${COLORS.surface.standard};\n\tdisplay: flex;\n\tflex-direction: row;\n\tpadding: 8px 12px;\n\talign-items: center;\n\tborder-radius: 0 0 4px 4px;\n\tgap: 6px;\n\tposition: relative;\n`;\nexport const CustomRightBorder = styled.div`\n\twidth: 2px;\n\theight: 12px;\n\tbackground: #e0e0e0;\n`;\n\nconst ButtonHolder = styled.div<{ active: boolean; disabled?: boolean }>`\n\tpadding: 2px 6px;\n\tbackground: ${(props) =>\n\t\tprops.active ? COLORS.background.inactive : 'transparent'};\n\tborder-radius: 4px;\n\tcursor: ${(props) => (props.disabled ? 'not-allowed' : 'pointer')};\n\topacity: ${(props) => (props.disabled ? 0.45 : 1)};\n\tdisplay: flex;\n\t:hover {\n\t\tbackground-color: rgba(0, 0, 0, 0.03);\n\t\tpadding: 3px 6px;\n\t}\n`;\n\nconst CustomRightSideContainer = styled.div`\n\tdisplay: flex;\n\tflex-direction: row;\n\talign-items: center;\n\tgap: 6px;\n\tmargin-left: auto;\n`;\n\nconst EmojiContainer = styled.div`\n\tposition: absolute;\n\ttop: calc(100% + 8px);\n\tz-index: 1;\n`;\n\nconst AIActionsContainer = styled.div`\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 6px;\n\tmargin-left: 8px;\n`;\n\nconst AIButtonGroup = styled.div<{ disabled?: boolean }>`\n\tdisplay: flex;\n\talign-items: center;\n\tborder: 1px solid ${COLORS.stroke.primary};\n\tborder-radius: 14px;\n\topacity: ${(props) => (props.disabled ? 0.5 : 1)};\n`;\n\nconst AIButton = styled.button<{ highlighted: boolean; disabled?: boolean }>`\n\tborder: 0;\n\tbackground: ${(props) =>\n\t\tprops.highlighted ? '#ffe8ef' : COLORS.surface.standard};\n\tcolor: ${(props) =>\n\t\tprops.highlighted ? '#f53f77' : COLORS.content.secondary};\n\tborder-radius: 14px;\n\tpadding: 4px 6px;\n\tfont-size: 12px;\n\tfont-weight: 400;\n\tline-height: 16px;\n\tcursor: ${(props) => (props.disabled ? 'not-allowed' : 'pointer')};\n\topacity: ${(props) => (props.disabled ? 0.5 : 1)};\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 4px;\n\t:hover {\n\t\tbackground: ${(props) =>\n\t\t\tprops.disabled ? undefined : COLORS.surface.subdued};\n\t}\n`;\n\nexport enum EditorActionTypes {\n\t'BOLD' = 'BOLD',\n\t'ITALIC' = 'ITALIC',\n\t'STRIKETHROUGH' = 'STRIKETHROUGH',\n\t'EMOJI' = 'EMOJI',\n}\n\nexport enum AIEditorActionTypes {\n\tREPHRASE = 'rephrase',\n\tSHORTEN = 'shorten',\n\tEXPAND = 'expand',\n\tEMOJIFY = 'emojify',\n}\n\nexport type AIEditorActionType = AIEditorActionTypes;\nexport enum AIActionVariant {\n\tDEFAULT = 'default',\n\tREPHRASE = 'rephrase',\n}\n\nexport type AIHeaderAction = {\n\ttype: AIEditorActionType;\n\tlabel: string;\n\tdisabled?: boolean;\n\tloading?: boolean;\n\thighlighted?: boolean;\n\tshowToneDropdown?: boolean;\n\ttones?: AIActionToneOption[];\n\tselectedToneId?: string;\n\tisPrimary?: boolean;\n};\n\n/** Props passed to optional `RightComponent` (e.g. Add variable). */\nexport type WhatsAppEditorRightSlotProps = {\n\t/**\n\t * True while an AI suggestion session is open (accept/reject) or while the model is generating.\n\t * Host should disable extra actions like “Add variable”.\n\t */\n\trightActionsDisabled?: boolean;\n};\n\nexport type WhatsAppTextEditorHeaderProps = {\n\tonActionSelect: (actionType: EditorActionTypes) => void;\n\tRightComponent?: React.ComponentType<WhatsAppEditorRightSlotProps>;\n\tonEmojiClick?: (emoji: string) => void;\n\tactions?: EditorActionTypes[];\n\taiActions?: AIHeaderAction[];\n\tonAIActionClick?: (\n\t\tactionType: AIEditorActionType,\n\t\tactionVariant?: AIActionVariant,\n\t) => void;\n\tonAIToneChange?: (actionType: AIEditorActionType, toneId: string) => void;\n\tonAIInstructionsClick?: () => void;\n\tinstructionActive?: boolean;\n\tdisableAllActions?: boolean;\n\trightActionsDisabled?: boolean;\n};\n\nexport const WhatsAppTextEditorHeader = React.forwardRef<\n\tHTMLTextAreaElement,\n\tWhatsAppTextEditorHeaderProps\n>(\n\t(\n\t\t{\n\t\t\tonActionSelect,\n\t\t\tRightComponent,\n\t\t\tonEmojiClick,\n\t\t\tactions,\n\t\t\taiActions,\n\t\t\tonAIActionClick,\n\t\t\tonAIToneChange,\n\t\t\tonAIInstructionsClick,\n\t\t\tinstructionActive,\n\t\t\tdisableAllActions,\n\t\t\trightActionsDisabled,\n\t\t},\n\t\t_ref,\n\t) => {\n\t\tvoid _ref;\n\t\tconst emojiPickerRef = useRef(null);\n\t\tconst [active, setActive] = useState({\n\t\t\t[EditorActionTypes.BOLD]: false,\n\t\t\t[EditorActionTypes.ITALIC]: false,\n\t\t\t[EditorActionTypes.STRIKETHROUGH]: false,\n\t\t\t[EditorActionTypes.EMOJI]: false,\n\t\t});\n\n\t\tconst closeEmojiPicker = useCallback(() => {\n\t\t\tsetActive((prev) => {\n\t\t\t\tif (!prev[EditorActionTypes.EMOJI]) {\n\t\t\t\t\treturn prev;\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\t...prev,\n\t\t\t\t\t[EditorActionTypes.EMOJI]: false,\n\t\t\t\t};\n\t\t\t});\n\t\t}, []);\n\n\t\tuseOutside(emojiPickerRef, () => {\n\t\t\tcloseEmojiPicker();\n\t\t});\n\n\t\tuseEffect(() => {\n\t\t\tif (disableAllActions) {\n\t\t\t\tsetActive((prev) => {\n\t\t\t\t\tif (!prev[EditorActionTypes.EMOJI]) {\n\t\t\t\t\t\treturn prev;\n\t\t\t\t\t}\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...prev,\n\t\t\t\t\t\t[EditorActionTypes.EMOJI]: false,\n\t\t\t\t\t};\n\t\t\t\t});\n\t\t\t}\n\t\t}, [disableAllActions]);\n\n\t\tfunction handleClick(\n\t\t\te:\n\t\t\t\t| React.MouseEvent<HTMLDivElement, MouseEvent>\n\t\t\t\t| React.MouseEvent<SVGElement, MouseEvent>,\n\t\t\ttype: EditorActionTypes,\n\t\t) {\n\t\t\te.preventDefault?.();\n\n\t\t\tif (type === EditorActionTypes.EMOJI) {\n\t\t\t\tif (disableAllActions) return;\n\t\t\t\tsetActive((prev) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...prev,\n\t\t\t\t\t\t[EditorActionTypes.EMOJI]: !active.EMOJI,\n\t\t\t\t\t};\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tonActionSelect(type);\n\t\t}\n\n\t\tif (!actions?.length && !RightComponent && !aiActions?.length) return <></>;\n\n\t\treturn (\n\t\t\t<Container>\n\t\t\t\t{actions?.includes(EditorActionTypes.EMOJI) && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Tooltip body={'Emoji'} placement=\"bottom\">\n\t\t\t\t\t\t\t<ButtonHolder\n\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\tmarginLeft: 0,\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\tdisabled={disableAllActions}\n\t\t\t\t\t\t\t\tactive={!!active.EMOJI}\n\t\t\t\t\t\t\t\tonClick={(e) => {\n\t\t\t\t\t\t\t\t\tif (disableAllActions) return;\n\t\t\t\t\t\t\t\t\thandleClick(e, EditorActionTypes.EMOJI);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<EmojiIcon\n\t\t\t\t\t\t\t\t\twidth={16}\n\t\t\t\t\t\t\t\t\theight={16}\n\t\t\t\t\t\t\t\t\tcolor={getIconColor(active.EMOJI)}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ButtonHolder>\n\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t{active.EMOJI && (\n\t\t\t\t\t\t\t<EmojiContainer ref={emojiPickerRef}>\n\t\t\t\t\t\t\t\t<EmojiPicker\n\t\t\t\t\t\t\t\t\tonEmojiClick={(data) => {\n\t\t\t\t\t\t\t\t\t\tcloseEmojiPicker();\n\t\t\t\t\t\t\t\t\t\tonEmojiClick?.(data.emoji);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</EmojiContainer>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</>\n\t\t\t\t)}\n\n\t\t\t\t{actions?.includes(EditorActionTypes.BOLD) && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Tooltip body={'Bold'} placement=\"bottom\">\n\t\t\t\t\t\t\t<ButtonHolder\n\t\t\t\t\t\t\t\tdisabled={disableAllActions}\n\t\t\t\t\t\t\t\tactive={!!active.BOLD}\n\t\t\t\t\t\t\t\tonClick={(e) => {\n\t\t\t\t\t\t\t\t\tif (disableAllActions) return;\n\t\t\t\t\t\t\t\t\thandleClick(e, EditorActionTypes.BOLD);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<BoldIcon\n\t\t\t\t\t\t\t\t\twidth={10}\n\t\t\t\t\t\t\t\t\theight={17}\n\t\t\t\t\t\t\t\t\tcolor={getIconColor(active.BOLD)}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ButtonHolder>\n\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t</>\n\t\t\t\t)}\n\t\t\t\t{actions?.includes(EditorActionTypes.ITALIC) && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Tooltip body={'Italics'} placement=\"bottom\">\n\t\t\t\t\t\t\t<ButtonHolder\n\t\t\t\t\t\t\t\tdisabled={disableAllActions}\n\t\t\t\t\t\t\t\tonClick={(e) => {\n\t\t\t\t\t\t\t\t\tif (disableAllActions) return;\n\t\t\t\t\t\t\t\t\thandleClick(e, EditorActionTypes.ITALIC);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\tactive={!!active.ITALIC}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<ItalicIcon\n\t\t\t\t\t\t\t\t\twidth={9}\n\t\t\t\t\t\t\t\t\theight={16}\n\t\t\t\t\t\t\t\t\tcolor={getIconColor(active.ITALIC)}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ButtonHolder>\n\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t</>\n\t\t\t\t)}\n\t\t\t\t{actions?.includes(EditorActionTypes.STRIKETHROUGH) && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Tooltip body={'Strikethrough'} placement=\"bottom\">\n\t\t\t\t\t\t\t<ButtonHolder\n\t\t\t\t\t\t\t\tdisabled={disableAllActions}\n\t\t\t\t\t\t\t\tactive={!!active.STRIKETHROUGH}\n\t\t\t\t\t\t\t\tstyle={{ borderRight: 0 }}\n\t\t\t\t\t\t\t\tonClick={(e) => {\n\t\t\t\t\t\t\t\t\tif (disableAllActions) return;\n\t\t\t\t\t\t\t\t\thandleClick(e, EditorActionTypes.STRIKETHROUGH);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<StrikeThroughIcon\n\t\t\t\t\t\t\t\t\twidth={12}\n\t\t\t\t\t\t\t\t\theight={18}\n\t\t\t\t\t\t\t\t\tcolor={getIconColor(active.STRIKETHROUGH)}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ButtonHolder>\n\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t</>\n\t\t\t\t)}\n\t\t\t\t{aiActions?.length ? (\n\t\t\t\t\t<AIActionsContainer>\n\t\t\t\t\t\t{aiActions.map((action) => {\n\t\t\t\t\t\t\tif (action.type === AIEditorActionTypes.REPHRASE) {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<AIRephraseButton\n\t\t\t\t\t\t\t\t\t\tkey={action.type}\n\t\t\t\t\t\t\t\t\t\tlabel={action.label}\n\t\t\t\t\t\t\t\t\t\tdisabled={disableAllActions || action.disabled}\n\t\t\t\t\t\t\t\t\t\tloading={action.loading}\n\t\t\t\t\t\t\t\t\t\thighlighted={action.highlighted}\n\t\t\t\t\t\t\t\t\t\ttones={action.tones}\n\t\t\t\t\t\t\t\t\t\tselectedToneId={action.selectedToneId}\n\t\t\t\t\t\t\t\t\t\tinstructionActive={instructionActive}\n\t\t\t\t\t\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\t\t\t\t\t\tif (disableAllActions) return;\n\t\t\t\t\t\t\t\t\t\t\tonAIActionClick?.(action.type, AIActionVariant.DEFAULT);\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tonToneChange={(toneId) => {\n\t\t\t\t\t\t\t\t\t\t\tif (disableAllActions) return;\n\t\t\t\t\t\t\t\t\t\t\tonAIToneChange?.(action.type, toneId);\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tonInstructionsClick={() => {\n\t\t\t\t\t\t\t\t\t\t\tif (disableAllActions) return;\n\t\t\t\t\t\t\t\t\t\t\tonAIInstructionsClick?.();\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tshowSecondaryRephraseOption={\n\t\t\t\t\t\t\t\t\t\t\taction.label.toLowerCase() === 'meta safe rewrite'\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tonSecondaryRephraseClick={() => {\n\t\t\t\t\t\t\t\t\t\t\tif (disableAllActions) return;\n\t\t\t\t\t\t\t\t\t\t\tonAIActionClick?.(action.type, AIActionVariant.REPHRASE);\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<div key={action.type}>\n\t\t\t\t\t\t\t\t\t<AIButtonGroup\n\t\t\t\t\t\t\t\t\t\tdisabled={\n\t\t\t\t\t\t\t\t\t\t\tdisableAllActions || action.disabled || action.loading\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<AIButton\n\t\t\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\t\t\thighlighted={!!action.highlighted || !!action.isPrimary}\n\t\t\t\t\t\t\t\t\t\t\tdisabled={action.disabled || action.loading}\n\t\t\t\t\t\t\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\t\t\t\t\t\t\tif (disableAllActions) return;\n\t\t\t\t\t\t\t\t\t\t\t\tonAIActionClick?.(action.type, AIActionVariant.DEFAULT);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{action.loading ? '...' : action.label}\n\t\t\t\t\t\t\t\t\t\t</AIButton>\n\t\t\t\t\t\t\t\t\t</AIButtonGroup>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t</AIActionsContainer>\n\t\t\t\t) : null}\n\t\t\t\t<CustomRightSideContainer>\n\t\t\t\t\t{RightComponent && (\n\t\t\t\t\t\t<RightComponent rightActionsDisabled={!!rightActionsDisabled} />\n\t\t\t\t\t)}\n\t\t\t\t</CustomRightSideContainer>\n\t\t\t</Container>\n\t\t);\n\t},\n);\n\nWhatsAppTextEditorHeader.displayName = 'WhatsAppTextEditorHeader';\n"],"names":["EmojiPicker","jsxDEV","Fragment","this","_module","getIconColor","isActive","COLORS","Container","styled","CustomRightBorder","ButtonHolder","props","CustomRightSideContainer","EmojiContainer","AIActionsContainer","AIButtonGroup","AIButton","EditorActionTypes","AIEditorActionTypes","AIActionVariant","WhatsAppTextEditorHeader","React","onActionSelect","RightComponent","onEmojiClick","actions","aiActions","onAIActionClick","onAIToneChange","onAIInstructionsClick","instructionActive","disableAllActions","rightActionsDisabled","_ref","emojiPickerRef","useRef","active","setActive","useState","closeEmojiPicker","useCallback","prev","useOutside","useEffect","handleClick","e","type","Tooltip","EmojiIcon","data","BoldIcon","ItalicIcon","StrikeThroughIcon","action","AIRephraseButton","toneId"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"WhatsAppTextEditorHeader.js","sources":["../../../../src/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.tsx"],"sourcesContent":["// import EmojiPicker from 'emoji-picker-react';\nimport React, { useCallback, useEffect, useRef, useState } from 'react';\nimport styled from 'styled-components';\nimport { useOutside } from '@src/hooks/useOutside';\nimport { COLORS } from '@src/constants/Theme';\nimport BoldIcon from '../../assets/icons/bold.svg';\nimport EmojiIcon from '../../assets/icons/emoji.svg';\nimport ItalicIcon from '../../assets/icons/italic.svg';\nimport StrikeThroughIcon from '../../assets/icons/strikeThrough.svg';\nimport { Tooltip } from '../tooltips/Tooltip';\nimport { AIActionToneOption, AIRephraseButton } from './AIRephraseButton';\n\nlet EmojiPicker: any = () => <></>;\nif (typeof window !== 'undefined') {\n\timport('emoji-picker-react').then((_module) => {\n\t\tEmojiPicker = _module.default;\n\t});\n}\n\nconst getIconColor = (isActive: boolean) => {\n\tif (isActive) return COLORS.background.inverseLight;\n\treturn COLORS.content.placeholder;\n};\n\nconst Container = styled.div`\n\tbackground: ${COLORS.surface.standard};\n\tdisplay: flex;\n\tflex-direction: row;\n\tpadding: 8px 12px;\n\talign-items: center;\n\tborder-radius: 0 0 4px 4px;\n\tgap: 6px;\n\tposition: relative;\n`;\nexport const CustomRightBorder = styled.div`\n\twidth: 2px;\n\theight: 12px;\n\tbackground: #e0e0e0;\n`;\n\nconst ButtonHolder = styled.div<{ active: boolean; disabled?: boolean }>`\n\tpadding: 2px 6px;\n\tbackground: ${(props) =>\n\t\tprops.active ? COLORS.background.inactive : 'transparent'};\n\tborder-radius: 4px;\n\tcursor: ${(props) => (props.disabled ? 'not-allowed' : 'pointer')};\n\topacity: ${(props) => (props.disabled ? 0.45 : 1)};\n\tdisplay: flex;\n\t:hover {\n\t\tbackground-color: rgba(0, 0, 0, 0.03);\n\t\tpadding: 3px 6px;\n\t}\n`;\n\nconst CustomRightSideContainer = styled.div`\n\tdisplay: flex;\n\tflex-direction: row;\n\talign-items: center;\n\tgap: 6px;\n\tmargin-left: auto;\n`;\n\nconst EmojiContainer = styled.div`\n\tposition: absolute;\n\ttop: calc(100% + 8px);\n\tz-index: 1;\n`;\n\nconst AIActionsContainer = styled.div`\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 6px;\n\tmargin-left: 8px;\n`;\n\nconst AIButtonGroup = styled.div<{ disabled?: boolean }>`\n\tdisplay: flex;\n\talign-items: center;\n\tborder: 1px solid ${COLORS.stroke.primary};\n\tborder-radius: 14px;\n\topacity: ${(props) => (props.disabled ? 0.5 : 1)};\n`;\n\nconst AIButton = styled.button<{ highlighted: boolean; disabled?: boolean }>`\n\tborder: 0;\n\tbackground: ${(props) =>\n\t\tprops.highlighted ? '#ffe8ef' : COLORS.surface.standard};\n\tcolor: ${(props) =>\n\t\tprops.highlighted ? '#f53f77' : COLORS.content.secondary};\n\tborder-radius: 14px;\n\tpadding: 4px 6px;\n\tfont-size: 12px;\n\tfont-weight: 400;\n\tline-height: 16px;\n\tcursor: ${(props) => (props.disabled ? 'not-allowed' : 'pointer')};\n\topacity: ${(props) => (props.disabled ? 0.5 : 1)};\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 4px;\n\t:hover {\n\t\tbackground: ${(props) =>\n\t\t\tprops.disabled ? undefined : COLORS.surface.subdued};\n\t}\n`;\n\nexport enum EditorActionTypes {\n\t'BOLD' = 'BOLD',\n\t'ITALIC' = 'ITALIC',\n\t'STRIKETHROUGH' = 'STRIKETHROUGH',\n\t'EMOJI' = 'EMOJI',\n}\n\nexport enum AIEditorActionTypes {\n\tREPHRASE = 'rephrase',\n\tSHORTEN = 'shorten',\n\tEXPAND = 'expand',\n\tEMOJIFY = 'emojify',\n}\n\nexport type AIEditorActionType = AIEditorActionTypes;\nexport enum AIActionVariant {\n\tDEFAULT = 'default',\n\tREPHRASE = 'rephrase',\n}\n\nexport type AIHeaderAction = {\n\ttype: AIEditorActionType;\n\tlabel: string;\n\tdisabled?: boolean;\n\tloading?: boolean;\n\thighlighted?: boolean;\n\tshowToneDropdown?: boolean;\n\ttones?: AIActionToneOption[];\n\tselectedToneId?: string;\n\tisPrimary?: boolean;\n};\n\n/** Props passed to optional `RightComponent` (e.g. Add variable). */\nexport type WhatsAppEditorRightSlotProps = {\n\t/**\n\t * True while an AI suggestion session is open (accept/reject) or while the model is generating.\n\t * Host should disable extra actions like “Add variable”.\n\t */\n\trightActionsDisabled?: boolean;\n};\n\nexport type WhatsAppTextEditorHeaderProps = {\n\tonActionSelect: (actionType: EditorActionTypes) => void;\n\tRightComponent?: React.ComponentType<WhatsAppEditorRightSlotProps>;\n\tonEmojiClick?: (emoji: string) => void;\n\tactions?: EditorActionTypes[];\n\taiActions?: AIHeaderAction[];\n\tonAIActionClick?: (\n\t\tactionType: AIEditorActionType,\n\t\tactionVariant?: AIActionVariant,\n\t) => void;\n\tonAIToneChange?: (actionType: AIEditorActionType, toneId: string) => void;\n\tonAIInstructionsClick?: () => void;\n\tinstructionActive?: boolean;\n\tdisableAllActions?: boolean;\n\trightActionsDisabled?: boolean;\n};\n\nexport const WhatsAppTextEditorHeader = React.forwardRef<\n\tHTMLTextAreaElement,\n\tWhatsAppTextEditorHeaderProps\n>(\n\t(\n\t\t{\n\t\t\tonActionSelect,\n\t\t\tRightComponent,\n\t\t\tonEmojiClick,\n\t\t\tactions,\n\t\t\taiActions,\n\t\t\tonAIActionClick,\n\t\t\tonAIToneChange,\n\t\t\tonAIInstructionsClick,\n\t\t\tinstructionActive,\n\t\t\tdisableAllActions,\n\t\t\trightActionsDisabled,\n\t\t},\n\t\t_ref,\n\t) => {\n\t\tvoid _ref;\n\t\tconst emojiPickerRef = useRef(null);\n\t\tconst [active, setActive] = useState({\n\t\t\t[EditorActionTypes.BOLD]: false,\n\t\t\t[EditorActionTypes.ITALIC]: false,\n\t\t\t[EditorActionTypes.STRIKETHROUGH]: false,\n\t\t\t[EditorActionTypes.EMOJI]: false,\n\t\t});\n\n\t\tconst closeEmojiPicker = useCallback(() => {\n\t\t\tsetActive((prev) => {\n\t\t\t\tif (!prev[EditorActionTypes.EMOJI]) {\n\t\t\t\t\treturn prev;\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\t...prev,\n\t\t\t\t\t[EditorActionTypes.EMOJI]: false,\n\t\t\t\t};\n\t\t\t});\n\t\t}, []);\n\n\t\tuseOutside(emojiPickerRef, () => {\n\t\t\tcloseEmojiPicker();\n\t\t});\n\n\t\tuseEffect(() => {\n\t\t\tif (disableAllActions) {\n\t\t\t\tsetActive((prev) => {\n\t\t\t\t\tif (!prev[EditorActionTypes.EMOJI]) {\n\t\t\t\t\t\treturn prev;\n\t\t\t\t\t}\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...prev,\n\t\t\t\t\t\t[EditorActionTypes.EMOJI]: false,\n\t\t\t\t\t};\n\t\t\t\t});\n\t\t\t}\n\t\t}, [disableAllActions]);\n\n\t\tfunction handleClick(\n\t\t\te:\n\t\t\t\t| React.MouseEvent<HTMLDivElement, MouseEvent>\n\t\t\t\t| React.MouseEvent<SVGElement, MouseEvent>,\n\t\t\ttype: EditorActionTypes,\n\t\t) {\n\t\t\te.preventDefault?.();\n\n\t\t\tif (type === EditorActionTypes.EMOJI) {\n\t\t\t\tif (disableAllActions) return;\n\t\t\t\tsetActive((prev) => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...prev,\n\t\t\t\t\t\t[EditorActionTypes.EMOJI]: !active.EMOJI,\n\t\t\t\t\t};\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tonActionSelect(type);\n\t\t}\n\n\t\tif (!actions?.length && !RightComponent && !aiActions?.length) return <></>;\n\n\t\treturn (\n\t\t\t<Container>\n\t\t\t\t{actions?.includes(EditorActionTypes.EMOJI) && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Tooltip body={'Emoji'} placement=\"bottom\">\n\t\t\t\t\t\t\t<ButtonHolder\n\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\tmarginLeft: 0,\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\tdisabled={disableAllActions}\n\t\t\t\t\t\t\t\tactive={!!active.EMOJI}\n\t\t\t\t\t\t\t\tonClick={(e) => {\n\t\t\t\t\t\t\t\t\tif (disableAllActions) return;\n\t\t\t\t\t\t\t\t\thandleClick(e, EditorActionTypes.EMOJI);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<EmojiIcon\n\t\t\t\t\t\t\t\t\twidth={16}\n\t\t\t\t\t\t\t\t\theight={16}\n\t\t\t\t\t\t\t\t\tcolor={getIconColor(active.EMOJI)}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ButtonHolder>\n\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t\t{active.EMOJI && (\n\t\t\t\t\t\t\t<EmojiContainer ref={emojiPickerRef}>\n\t\t\t\t\t\t\t\t<EmojiPicker\n\t\t\t\t\t\t\t\t\tonEmojiClick={(data) => {\n\t\t\t\t\t\t\t\t\t\tcloseEmojiPicker();\n\t\t\t\t\t\t\t\t\t\tonEmojiClick?.(data.emoji);\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</EmojiContainer>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</>\n\t\t\t\t)}\n\n\t\t\t\t{actions?.includes(EditorActionTypes.BOLD) && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Tooltip body={'Bold'} placement=\"bottom\">\n\t\t\t\t\t\t\t<ButtonHolder\n\t\t\t\t\t\t\t\tdisabled={disableAllActions}\n\t\t\t\t\t\t\t\tactive={!!active.BOLD}\n\t\t\t\t\t\t\t\tonClick={(e) => {\n\t\t\t\t\t\t\t\t\tif (disableAllActions) return;\n\t\t\t\t\t\t\t\t\thandleClick(e, EditorActionTypes.BOLD);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<BoldIcon\n\t\t\t\t\t\t\t\t\twidth={10}\n\t\t\t\t\t\t\t\t\theight={17}\n\t\t\t\t\t\t\t\t\tcolor={getIconColor(active.BOLD)}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ButtonHolder>\n\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t</>\n\t\t\t\t)}\n\t\t\t\t{actions?.includes(EditorActionTypes.ITALIC) && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Tooltip body={'Italics'} placement=\"bottom\">\n\t\t\t\t\t\t\t<ButtonHolder\n\t\t\t\t\t\t\t\tdisabled={disableAllActions}\n\t\t\t\t\t\t\t\tonClick={(e) => {\n\t\t\t\t\t\t\t\t\tif (disableAllActions) return;\n\t\t\t\t\t\t\t\t\thandleClick(e, EditorActionTypes.ITALIC);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\tactive={!!active.ITALIC}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<ItalicIcon\n\t\t\t\t\t\t\t\t\twidth={9}\n\t\t\t\t\t\t\t\t\theight={16}\n\t\t\t\t\t\t\t\t\tcolor={getIconColor(active.ITALIC)}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ButtonHolder>\n\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t</>\n\t\t\t\t)}\n\t\t\t\t{actions?.includes(EditorActionTypes.STRIKETHROUGH) && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Tooltip body={'Strikethrough'} placement=\"bottom\">\n\t\t\t\t\t\t\t<ButtonHolder\n\t\t\t\t\t\t\t\tdisabled={disableAllActions}\n\t\t\t\t\t\t\t\tactive={!!active.STRIKETHROUGH}\n\t\t\t\t\t\t\t\tstyle={{ borderRight: 0 }}\n\t\t\t\t\t\t\t\tonClick={(e) => {\n\t\t\t\t\t\t\t\t\tif (disableAllActions) return;\n\t\t\t\t\t\t\t\t\thandleClick(e, EditorActionTypes.STRIKETHROUGH);\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<StrikeThroughIcon\n\t\t\t\t\t\t\t\t\twidth={12}\n\t\t\t\t\t\t\t\t\theight={18}\n\t\t\t\t\t\t\t\t\tcolor={getIconColor(active.STRIKETHROUGH)}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</ButtonHolder>\n\t\t\t\t\t\t</Tooltip>\n\t\t\t\t\t</>\n\t\t\t\t)}\n\t\t\t\t{aiActions?.length ? (\n\t\t\t\t\t<AIActionsContainer>\n\t\t\t\t\t\t{aiActions.map((action) => {\n\t\t\t\t\t\t\tif (action.type === AIEditorActionTypes.REPHRASE) {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<AIRephraseButton\n\t\t\t\t\t\t\t\t\t\tkey={action.type}\n\t\t\t\t\t\t\t\t\t\tlabel={action.label}\n\t\t\t\t\t\t\t\t\t\tdisabled={disableAllActions || action.disabled}\n\t\t\t\t\t\t\t\t\t\tloading={action.loading}\n\t\t\t\t\t\t\t\t\t\thighlighted={action.highlighted}\n\t\t\t\t\t\t\t\t\t\ttones={action.tones}\n\t\t\t\t\t\t\t\t\t\tselectedToneId={action.selectedToneId}\n\t\t\t\t\t\t\t\t\t\tinstructionActive={instructionActive}\n\t\t\t\t\t\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\t\t\t\t\t\tif (disableAllActions) return;\n\t\t\t\t\t\t\t\t\t\t\tonAIActionClick?.(action.type, AIActionVariant.DEFAULT);\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tonToneChange={(toneId) => {\n\t\t\t\t\t\t\t\t\t\t\tif (disableAllActions) return;\n\t\t\t\t\t\t\t\t\t\t\tonAIToneChange?.(action.type, toneId);\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tonInstructionsClick={() => {\n\t\t\t\t\t\t\t\t\t\t\tif (disableAllActions) return;\n\t\t\t\t\t\t\t\t\t\t\tonAIInstructionsClick?.();\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tshowSecondaryRephraseOption={\n\t\t\t\t\t\t\t\t\t\t\taction.label.toLowerCase() === 'meta safe rewrite'\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tonSecondaryRephraseClick={() => {\n\t\t\t\t\t\t\t\t\t\t\tif (disableAllActions) return;\n\t\t\t\t\t\t\t\t\t\t\tonAIActionClick?.(action.type, AIActionVariant.REPHRASE);\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<div key={action.type}>\n\t\t\t\t\t\t\t\t\t<AIButtonGroup\n\t\t\t\t\t\t\t\t\t\tdisabled={\n\t\t\t\t\t\t\t\t\t\t\tdisableAllActions || action.disabled || action.loading\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<AIButton\n\t\t\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\t\t\thighlighted={!!action.highlighted || !!action.isPrimary}\n\t\t\t\t\t\t\t\t\t\t\tdisabled={action.disabled || action.loading}\n\t\t\t\t\t\t\t\t\t\t\tonClick={() => {\n\t\t\t\t\t\t\t\t\t\t\t\tif (disableAllActions) return;\n\t\t\t\t\t\t\t\t\t\t\t\tonAIActionClick?.(action.type, AIActionVariant.DEFAULT);\n\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{action.loading ? '...' : action.label}\n\t\t\t\t\t\t\t\t\t\t</AIButton>\n\t\t\t\t\t\t\t\t\t</AIButtonGroup>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t})}\n\t\t\t\t\t</AIActionsContainer>\n\t\t\t\t) : null}\n\t\t\t\t<CustomRightSideContainer>\n\t\t\t\t\t{RightComponent && (\n\t\t\t\t\t\t<RightComponent rightActionsDisabled={!!rightActionsDisabled} />\n\t\t\t\t\t)}\n\t\t\t\t</CustomRightSideContainer>\n\t\t\t</Container>\n\t\t);\n\t},\n);\n\nWhatsAppTextEditorHeader.displayName = 'WhatsAppTextEditorHeader';\n"],"names":["EmojiPicker","jsxDEV","Fragment","this","_module","getIconColor","isActive","COLORS","Container","styled","CustomRightBorder","ButtonHolder","props","CustomRightSideContainer","EmojiContainer","AIActionsContainer","AIButtonGroup","AIButton","EditorActionTypes","AIEditorActionTypes","AIActionVariant","WhatsAppTextEditorHeader","React","onActionSelect","RightComponent","onEmojiClick","actions","aiActions","onAIActionClick","onAIToneChange","onAIInstructionsClick","instructionActive","disableAllActions","rightActionsDisabled","_ref","emojiPickerRef","useRef","active","setActive","useState","closeEmojiPicker","useCallback","prev","useOutside","useEffect","handleClick","e","type","Tooltip","EmojiIcon","data","BoldIcon","ItalicIcon","StrikeThroughIcon","action","AIRephraseButton","toneId"],"mappings":"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"}
|