botframework-webchat-api 4.17.0 → 4.17.1-main.20240508.bf8dbd9

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.
@@ -136,6 +136,6 @@ Shift + Tab \u9375`,KEYBOARD_HELP_CHAT_HISTORY_MOVE_BETWEEN_ITEMS_HEADER:"\u5728
136
136
  Shift + Tab \u9375`,KEYBOARD_HELP_CHAT_WINDOW_BODY_MOVE_BETWEEN_ITEMS_HEADER:"\u5728\u804A\u5929\u8996\u7A97\u4E2D\u7684\u9805\u76EE\u4E4B\u9593\u79FB\u52D5",KEYBOARD_HELP_CHAT_WINDOW_HEADER:"\u804A\u5929\u8996\u7A97",KEYBOARD_HELP_CLOSE_BUTTON_ALT:"\u95DC\u9589",KEYBOARD_HELP_HEADER:"\u9375\u76E4\u63A7\u5236\u9805",MARKDOWN_EXTERNAL_LINK_ALT:"\u5728\u65B0\u8996\u7A97\u4E2D\u958B\u555F; \u5916\u90E8\u3002",RECEIPT_CARD_TAX:"\u7A05\u91D1",RECEIPT_CARD_TOTAL:"\u7E3D\u8A08",RECEIPT_CARD_VAT:"\u52A0\u503C\u7A05",REFERENCE_LIST_HEADER_ONE:"$1 \u500B\u53C3\u8003",REFERENCE_LIST_HEADER_FEW:"$1 \u500B\u53C3\u8003",REFERENCE_LIST_HEADER_MANY:"$1 \u500B\u53C3\u8003",REFERENCE_LIST_HEADER_OTHER:"$1 \u500B\u53C3\u8003",REFERENCE_LIST_HEADER_TWO:"$1 \u500B\u53C3\u8003",SEND_BOX_IS_EMPTY_TOOLTIP_ALT:"\u7121\u6CD5\u50B3\u9001\u7A7A\u767D\u8A0A\u606F\u3002",SPEECH_INPUT_LISTENING:"\u6B63\u5728\u8046\u807D\u2026",SPEECH_INPUT_MICROPHONE_BUTTON_CLOSE_ALT:"\u95DC\u9589\u9EA5\u514B\u98A8",SPEECH_INPUT_MICROPHONE_BUTTON_OPEN_ALT:"\u958B\u555F\u9EA5\u514B\u98A8",SPEECH_INPUT_STARTING:"\u6B63\u5728\u555F\u52D5\u2026",SUGGESTED_ACTIONS_FLIPPER_NEXT_ALT:"\u4E0B\u4E00\u500B",SUGGESTED_ACTIONS_FLIPPER_PREVIOUS_ALT:"\u4E0A\u4E00\u500B",SUGGESTED_ACTIONS_LABEL_ALT:"\u5EFA\u8B70\u7684\u52D5\u4F5C",TEXT_INPUT_ALT:"\u8A0A\u606F\u8F38\u5165\u65B9\u584A",TEXT_INPUT_PLACEHOLDER:"\u8F38\u5165\u60A8\u7684\u8A0A\u606F",TEXT_INPUT_SEND_BUTTON_ALT:"\u50B3\u9001",TEXT_INPUT_SPEAK_BUTTON_ALT:"\u8AAA\u8A71",TEXT_INPUT_UPLOAD_BUTTON_ALT:"\u4E0A\u50B3\u6A94\u6848",TOAST_ACCORDION_FEW:"$1 \u5247\u901A\u77E5: \u6309\u4E00\u4E0B\u9019\u88E1\u4F86\u67E5\u770B\u8A73\u7D30\u8CC7\u6599",TOAST_ACCORDION_MANY:"$1 \u5247\u901A\u77E5: \u6309\u4E00\u4E0B\u9019\u88E1\u4F86\u67E5\u770B\u8A73\u7D30\u8CC7\u6599",TOAST_ACCORDION_OTHER:"$1 \u5247\u901A\u77E5: \u6309\u4E00\u4E0B\u9019\u88E1\u4F86\u67E5\u770B\u8A73\u7D30\u8CC7\u6599",TOAST_ACCORDION_TWO:"$1 \u5247\u901A\u77E5: \u6309\u4E00\u4E0B\u9019\u88E1\u4F86\u67E5\u770B\u8A73\u7D30\u8CC7\u6599",TOAST_ALT_ERROR:"\u932F\u8AA4",TOAST_ALT_INFO:"\u8CC7\u8A0A",TOAST_ALT_SUCCESS:"\u6210\u529F",TOAST_ALT_WARN:"\u8B66\u544A",TOAST_DISMISS_BUTTON:"\u95DC\u9589",TOAST_TITLE_ALT:"\u901A\u77E5",TRANSCRIPT_ARIA_LABEL_ALT:"\u804A\u5929\u8A18\u9304\uFF0C\u6309\u65B9\u5411\u9375\u9032\u884C\u700F\u89BD\u3002",TRANSCRIPT_ARIA_ROLE_ALT:"\u804A\u5929\u8A18\u9304",TRANSCRIPT_LIVE_REGION_INTERACTIVE_LABEL_ALT:"\u8A0A\u606F\u70BA\u4E92\u52D5\u5F0F\u3002\u8ACB\u6309 Shift Tab \u9375 2 \u5230 3 \u6B21\u5207\u63DB\u81F3\u804A\u5929\u8A18\u9304\uFF0C\u7136\u5F8C\u6309\u4E00\u4E0B\u8A0A\u606F\u9032\u884C\u4E92\u52D5\u3002",TRANSCRIPT_LIVE_REGION_INTERACTIVE_WITH_LINKS_LABEL_ALT:"\u8A0A\u606F\u4E2D\u7684\u4E00\u6216\u591A\u500B\u9023\u7D50\u3002\u8ACB\u6309 Shift Tab \u9375 2 \u5230 3 \u6B21\u5207\u63DB\u81F3\u804A\u5929\u8A18\u9304\uFF0C\u7136\u5F8C\u6309\u4E00\u4E0B\u8A0A\u606F\u9032\u884C\u4E92\u52D5\u3002",TRANSCRIPT_LIVE_REGION_SUGGESTED_ACTIONS_LABEL_ALT:"\u8A0A\u606F\u6709\u5EFA\u8B70\u7684\u52D5\u4F5C\u3002\u8ACB\u6309\u4E0B Shift Tab 2 \u81F3 3 \u6B21\u9078\u53D6\u5B83\u5011\u3002",TRANSCRIPT_LIVE_REGION_SUGGESTED_ACTIONS_WITH_ACCESS_KEY_LABEL_ALT:"\u8A0A\u606F\u6709\u5EFA\u8B70\u7684\u52D5\u4F5C\u3002\u8ACB\u6309\u4E0B $1 \u9078\u53D6\u5B83\u5011\u3002",TRANSCRIPT_LIVE_REGION_SEND_FAILED_ALT:"\u7121\u6CD5\u50B3\u9001\u8A0A\u606F\u3002",TRANSCRIPT_MORE_MESSAGES:"\u66F4\u591A\u8A0A\u606F",TRANSCRIPT_NEW_MESSAGES:"\u65B0\u8A0A\u606F",TRANSCRIPT_TERMINATOR_TEXT:"\u804A\u5929\u8A18\u9304\u7D50\u5C3E",TYPING_INDICATOR_ALT:"\u986F\u793A\u8F38\u5165\u6307\u793A\u5668",TYPING_INDICATOR_SINGLE_TEXT:"$1 \u6B63\u5728\u9375\u5165\u3002",TYPING_INDICATOR_MULTIPLE_TEXT:"$1 \u548C\u5176\u4ED6\u4EBA\u6B63\u5728\u9375\u5165\u3002",VOTE_DISLIKE_ALT:"\u4E0D\u559C\u6B61",VOTE_LIKE_ALT:"\u559C\u6B61"};var vT={_comment:"[CI-LOCKED] \u6B64\u6A94\u6848\u7684\u5167\u5BB9\u5DF2\u9396\u5B9A\u3002\u6B61\u8FCE\u63D0\u4F9B\u610F\u898B\uFF0C\u4F46\u8B8A\u66F4\u9A57\u8B49\u53EF\u80FD\u6703\u6709\u6240\u5EF6\u9072\u3002",ACCESS_KEY_ALT:"Alt Shift $1",ACCESS_KEY_FOR_MAC_ALT:"Control Option $1",ACTIVITY_BOT_SAID_ALT:"\u6A5F\u5668\u4EBA $1 \u8AAA:",ACTIVITY_YOU_SAID_ALT:"\u60A8\u8AAA:",ACTIVITY_BOT_ATTACHED_ALT:"\u6A5F\u5668\u4EBA\u9644\u52A0\u4E86:",ACTIVITY_ERROR_BOX_TITLE:"\u932F\u8AA4\u8A0A\u606F",ACTIVITY_INTERACTIVE_FOOTNOTE_ALT:"\u6309\u4E00\u4E0B\u4EE5\u9032\u884C\u4E92\u52D5\u3002",ACTIVITY_INTERACTIVE_REASON_INTERACTIVE_CONTENT_ALT:"\u8A0A\u606F\u70BA\u4E92\u52D5\u5F0F\u8A0A\u606F\u3002",ACTIVITY_INTERACTIVE_REASON_LINK_ALT:"\u8A0A\u606F\u4E2D\u6709\u4E00\u6216\u591A\u500B\u9023\u7D50\u3002",ACTIVITY_INTERACTIVE_REASON_SEND_FAILED_ALT:"\u50B3\u9001\u5931\u6557\u3002",ACTIVITY_YOU_ATTACHED_ALT:"\u60A8\u9644\u52A0\u4E86:",ACTIVITY_NUM_ATTACHMENTS_ONE_ALT:"1 \u500B\u9644\u4EF6\u3002",ACTIVITY_NUM_ATTACHMENTS_FEW_ALT:"$1 \u500B\u9644\u4EF6\u3002",ACTIVITY_NUM_ATTACHMENTS_MANY_ALT:"$1 \u500B\u9644\u4EF6\u3002",ACTIVITY_NUM_ATTACHMENTS_OTHER_ALT:"$1 \u500B\u9644\u4EF6\u3002",ACTIVITY_NUM_ATTACHMENTS_TWO_ALT:"$1 \u500B\u9644\u4EF6\u3002",ACTIVITY_STATUS_SEND_FAILED_RETRY:"\u50B3\u9001\u5931\u6557\u3002[\u91CD\u8A66][RETRY]\u3002",ACTIVITY_STATUS_SEND_STATUS_ALT_SENDING:"\u6B63\u5728\u50B3\u9001",ACTIVITY_STATUS_SEND_STATUS_ALT_SENT_AT:"\u65BC $1 \u50B3\u9001",ACTIVITY_STATUS_TIMESTAMP_JUST_NOW:"\u525B\u525B",ACTIVITY_STATUS_TIMESTAMP_ONE_HOUR_AGO:"1 \u5C0F\u6642\u524D",ACTIVITY_STATUS_TIMESTAMP_ONE_MINUTE_AGO:"1 \u5206\u9418\u524D",ACTIVITY_STATUS_TIMESTAMP_TODAY:"\u4ECA\u5929",ACTIVITY_STATUS_TIMESTAMP_YESTERDAY:"\u6628\u5929",ADAPTIVE_CARD_ERROR_BOX_TITLE_PARSE:"\u8ABF\u9069\u578B\u5361\u7247\u5256\u6790\u932F\u8AA4",ADAPTIVE_CARD_ERROR_BOX_TITLE_RENDER:"\u8ABF\u9069\u578B\u5361\u7247\u8F49\u8B6F\u932F\u8AA4",ATTACHMENT_AUDIO:"\u97F3\u8A0A\u526A\u8F2F\u3002",ATTACHMENT_CARD:"\u5361\u7247: $1 $2 $3",ATTACHMENT_FILE:"\u6A94\u6848: $1",ATTACHMENT_IMAGE:"\u5F71\u50CF",ATTACHMENT_TEXT:"\u6587\u5B57: $1",ATTACHMENT_VIDEO:"\u8996\u8A0A\u526A\u8F2F",CAROUSEL_FLIPPER_NEXT_ALT:"\u4E0B\u4E00\u500B",CAROUSEL_FLIPPER_PREVIOUS_ALT:"\u4E0A\u4E00\u500B",CITATION_MODEL_DIALOG_ALT:"\u5F15\u7528",CONNECTIVITY_STATUS_ALT_CONNECTED:"\u5DF2\u9023\u7DDA",CONNECTIVITY_STATUS_ALT_CONNECTING:"\u6B63\u5728\u9023\u7DDA\u2026",CONNECTIVITY_STATUS_ALT_FATAL:"\u7121\u6CD5\u9023\u7DDA\u3002",CONNECTIVITY_STATUS_ALT_RECONNECTING:"\u767C\u751F\u7DB2\u8DEF\u4E2D\u65B7\u3002\u6B63\u5728\u91CD\u65B0\u9023\u7DDA\u2026",CONNECTIVITY_STATUS_ALT_RENDER_ERROR:"\u8F49\u8B6F\u932F\u8AA4\u3002\u8ACB\u6AA2\u67E5\u4E3B\u63A7\u53F0\u6216\u9023\u7D61\u6A5F\u5668\u4EBA\u958B\u767C\u4EBA\u54E1\u3002",CONNECTIVITY_STATUS_ALT_SLOW_CONNECTION:"\u9023\u7DDA\u6240\u9700\u7684\u6642\u9593\u6BD4\u5E73\u6642\u66F4\u9577\u3002",CONNECTIVITY_STATUS_ALT:"\u9023\u7DDA\u72C0\u614B: $1",FILE_CONTENT_ALT:"'$1'",FILE_CONTENT_DOWNLOADABLE_ALT:"\u4E0B\u8F09 '$1' \u6A94\u6848",FILE_CONTENT_DOWNLOADABLE_WITH_SIZE_ALT:"\u4E0B\u8F09 '$1' \u6A94\u6848\uFF0C\u5927\u5C0F\u70BA $2",FILE_CONTENT_WITH_SIZE_ALT:"'$1'\uFF0C\u5927\u5C0F\u70BA $2",KEYBOARD_HELP_CHAT_HISTORY_ACCESS_ITEMS_IN_MESSAGE_BODY:"ENTER \u9375",KEYBOARD_HELP_CHAT_HISTORY_ACCESS_ITEMS_IN_MESSAGE_HEADER:"\u5B58\u53D6\u8A0A\u606F\u4E2D\u7684\u9805\u76EE",KEYBOARD_HELP_CHAT_HISTORY_HEADER:"\u804A\u5929\u8A18\u9304",KEYBOARD_HELP_CHAT_HISTORY_LEAVE_MESSAGE_BODY:"ESC \u9375",KEYBOARD_HELP_CHAT_HISTORY_LEAVE_MESSAGE_HEADER:"\u7D50\u675F\u8A0A\u606F",KEYBOARD_HELP_CHAT_HISTORY_MOVE_BETWEEN_ITEMS_BODY:`Tab \u9375
137
137
  Shift + Tab \u9375`,KEYBOARD_HELP_CHAT_HISTORY_MOVE_BETWEEN_ITEMS_HEADER:"\u5728\u8A0A\u606F\u4E2D\u7684\u9805\u76EE\u4E4B\u9593\u79FB\u52D5",KEYBOARD_HELP_CHAT_HISTORY_MOVE_BETWEEN_MESSAGES_BODY:`\u5411\u4E0A\u9375
138
138
  \u5411\u4E0B\u9375`,KEYBOARD_HELP_CHAT_HISTORY_MOVE_BETWEEN_MESSAGES_HEADER:"\u5728\u8A0A\u606F\u4E4B\u9593\u79FB\u52D5",KEYBOARD_HELP_CHAT_WINDOW_BODY_DO_ACTION_BODY:"ENTER \u9375",KEYBOARD_HELP_CHAT_WINDOW_BODY_DO_ACTION_HEADER:"\u57F7\u884C\u52D5\u4F5C",KEYBOARD_HELP_CHAT_WINDOW_BODY_MOVE_BETWEEN_ITEMS_BODY:`Tab \u9375
139
- Shift + Tab \u9375`,KEYBOARD_HELP_CHAT_WINDOW_BODY_MOVE_BETWEEN_ITEMS_HEADER:"\u5728\u804A\u5929\u8996\u7A97\u4E2D\u7684\u9805\u76EE\u4E4B\u9593\u79FB\u52D5",KEYBOARD_HELP_CHAT_WINDOW_HEADER:"\u804A\u5929\u8996\u7A97",KEYBOARD_HELP_CLOSE_BUTTON_ALT:"\u95DC\u9589",KEYBOARD_HELP_HEADER:"\u9375\u76E4\u63A7\u5236\u9805",MARKDOWN_EXTERNAL_LINK_ALT:"\u5728\u65B0\u8996\u7A97\u4E2D\u958B\u555F; \u5916\u90E8\u3002",RECEIPT_CARD_TAX:"\u7A05\u91D1",RECEIPT_CARD_TOTAL:"\u7E3D\u8A08",RECEIPT_CARD_VAT:"\u52A0\u503C\u7A05",REFERENCE_LIST_HEADER_ONE:"$1 \u500B\u53C3\u8003",REFERENCE_LIST_HEADER_FEW:"$1 \u500B\u53C3\u8003",REFERENCE_LIST_HEADER_MANY:"$1 \u500B\u53C3\u8003",REFERENCE_LIST_HEADER_OTHER:"$1 \u500B\u53C3\u8003",REFERENCE_LIST_HEADER_TWO:"$1 \u500B\u53C3\u8003",SEND_BOX_IS_EMPTY_TOOLTIP_ALT:"\u7121\u6CD5\u50B3\u9001\u7A7A\u767D\u8A0A\u606F\u3002",SPEECH_INPUT_LISTENING:"\u6B63\u5728\u8046\u807D\u2026",SPEECH_INPUT_MICROPHONE_BUTTON_CLOSE_ALT:"\u95DC\u9589\u9EA5\u514B\u98A8",SPEECH_INPUT_MICROPHONE_BUTTON_OPEN_ALT:"\u958B\u555F\u9EA5\u514B\u98A8",SPEECH_INPUT_STARTING:"\u6B63\u5728\u555F\u52D5\u2026",SUGGESTED_ACTIONS_FLIPPER_NEXT_ALT:"\u4E0B\u4E00\u500B",SUGGESTED_ACTIONS_FLIPPER_PREVIOUS_ALT:"\u4E0A\u4E00\u500B",SUGGESTED_ACTIONS_LABEL_ALT:"\u5EFA\u8B70\u7684\u52D5\u4F5C",TEXT_INPUT_ALT:"\u8A0A\u606F\u8F38\u5165\u65B9\u584A",TEXT_INPUT_PLACEHOLDER:"\u8F38\u5165\u60A8\u7684\u8A0A\u606F",TEXT_INPUT_SEND_BUTTON_ALT:"\u50B3\u9001",TEXT_INPUT_SPEAK_BUTTON_ALT:"\u8AAA\u8A71",TEXT_INPUT_UPLOAD_BUTTON_ALT:"\u4E0A\u50B3\u6A94\u6848",TOAST_ACCORDION_FEW:"$1 \u5247\u901A\u77E5: \u6309\u4E00\u4E0B\u9019\u88E1\u4F86\u67E5\u770B\u8A73\u7D30\u8CC7\u6599",TOAST_ACCORDION_MANY:"$1 \u5247\u901A\u77E5: \u6309\u4E00\u4E0B\u9019\u88E1\u4F86\u67E5\u770B\u8A73\u7D30\u8CC7\u6599",TOAST_ACCORDION_OTHER:"$1 \u5247\u901A\u77E5: \u6309\u4E00\u4E0B\u9019\u88E1\u4F86\u67E5\u770B\u8A73\u7D30\u8CC7\u6599",TOAST_ACCORDION_TWO:"$1 \u5247\u901A\u77E5: \u6309\u4E00\u4E0B\u9019\u88E1\u4F86\u67E5\u770B\u8A73\u7D30\u8CC7\u6599",TOAST_ALT_ERROR:"\u932F\u8AA4",TOAST_ALT_INFO:"\u8CC7\u8A0A",TOAST_ALT_SUCCESS:"\u6210\u529F",TOAST_ALT_WARN:"\u8B66\u544A",TOAST_DISMISS_BUTTON:"\u95DC\u9589",TOAST_TITLE_ALT:"\u901A\u77E5",TRANSCRIPT_ARIA_LABEL_ALT:"\u804A\u5929\u8A18\u9304\uFF0C\u6309\u65B9\u5411\u9375\u9032\u884C\u700F\u89BD\u3002",TRANSCRIPT_ARIA_ROLE_ALT:"\u804A\u5929\u8A18\u9304",TRANSCRIPT_LIVE_REGION_INTERACTIVE_LABEL_ALT:"\u8A0A\u606F\u70BA\u4E92\u52D5\u5F0F\u3002\u8ACB\u6309 Shift Tab \u9375 2 \u5230 3 \u6B21\u5207\u63DB\u81F3\u804A\u5929\u8A18\u9304\uFF0C\u7136\u5F8C\u6309\u4E00\u4E0B\u8A0A\u606F\u9032\u884C\u4E92\u52D5\u3002",TRANSCRIPT_LIVE_REGION_INTERACTIVE_WITH_LINKS_LABEL_ALT:"\u8A0A\u606F\u4E2D\u7684\u4E00\u6216\u591A\u500B\u9023\u7D50\u3002\u8ACB\u6309 Shift Tab \u9375 2 \u5230 3 \u6B21\u5207\u63DB\u81F3\u804A\u5929\u8A18\u9304\uFF0C\u7136\u5F8C\u6309\u4E00\u4E0B\u8A0A\u606F\u9032\u884C\u4E92\u52D5\u3002",TRANSCRIPT_LIVE_REGION_SUGGESTED_ACTIONS_LABEL_ALT:"\u8A0A\u606F\u6709\u5EFA\u8B70\u7684\u52D5\u4F5C\u3002\u8ACB\u6309\u4E0B Shift Tab 2 \u81F3 3 \u6B21\u9078\u53D6\u5B83\u5011\u3002",TRANSCRIPT_LIVE_REGION_SUGGESTED_ACTIONS_WITH_ACCESS_KEY_LABEL_ALT:"\u8A0A\u606F\u6709\u5EFA\u8B70\u7684\u52D5\u4F5C\u3002\u8ACB\u6309\u4E0B $1 \u9078\u53D6\u5B83\u5011\u3002",TRANSCRIPT_LIVE_REGION_SEND_FAILED_ALT:"\u7121\u6CD5\u50B3\u9001\u8A0A\u606F\u3002",TRANSCRIPT_MORE_MESSAGES:"\u66F4\u591A\u8A0A\u606F",TRANSCRIPT_NEW_MESSAGES:"\u65B0\u8A0A\u606F",TRANSCRIPT_TERMINATOR_TEXT:"\u804A\u5929\u8A18\u9304\u7D50\u5C3E",TYPING_INDICATOR_ALT:"\u986F\u793A\u8F38\u5165\u6307\u793A\u5668",TYPING_INDICATOR_SINGLE_TEXT:"$1 \u6B63\u5728\u9375\u5165\u3002",TYPING_INDICATOR_MULTIPLE_TEXT:"$1 \u548C\u5176\u4ED6\u4EBA\u6B63\u5728\u9375\u5165\u3002",VOTE_DISLIKE_ALT:"\u4E0D\u559C\u6B61",VOTE_LIKE_ALT:"\u559C\u6B61"};var oE={"ar-EG":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"ar-EG",SPEECH_LANGUAGE:"ar-EG"},"ar-SA":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"ar-SA",SPEECH_LANGUAGE:"ar-SA"},"bg-BG":{COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"bg",SPEECH_LANGUAGE:"bg-BG"},"ca-ES":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"ca",SPEECH_LANGUAGE:"ca-ES"},"cs-CZ":{COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"cs",SPEECH_LANGUAGE:"cs-CZ"},"da-DK":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"da",SPEECH_LANGUAGE:"da-DK"},"de-DE":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:"neural",GLOBALIZE_LANGUAGE:"de",SPEECH_LANGUAGE:"de-DE"},"el-GR":{COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"el",SPEECH_LANGUAGE:"el-GR"},"en-US":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:"neural",GLOBALIZE_LANGUAGE:"en",SPEECH_LANGUAGE:"en-US"},"es-ES":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"es",SPEECH_LANGUAGE:"es-ES"},"et-EE":{GLOBALIZE_LANGUAGE:"et"},"eu-ES":{GLOBALIZE_LANGUAGE:"eu"},"fi-FI":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"fi",SPEECH_LANGUAGE:"fi-FI"},"fr-FR":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"fr",SPEECH_LANGUAGE:"fr-FR"},"gl-ES":{GLOBALIZE_LANGUAGE:"gl"},"he-IL":{COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"he",SPEECH_LANGUAGE:"he-IL"},"hi-IN":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"hi",SPEECH_LANGUAGE:"hi-IN"},"hr-HR":{COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"hr",SPEECH_LANGUAGE:"hr-HR"},"hu-HU":{COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"hu",SPEECH_LANGUAGE:"hu-HU"},"id-ID":{COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"id",SPEECH_LANGUAGE:"id-ID"},"it-IT":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:"neural",GLOBALIZE_LANGUAGE:"it",SPEECH_LANGUAGE:"it-IT"},"ja-JP":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"ja",SPEECH_LANGUAGE:"ja-JP"},"kk-KZ":{GLOBALIZE_LANGUAGE:"kk"},"ko-KR":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"ko",SPEECH_LANGUAGE:"ko-KR"},"lt-LT":{GLOBALIZE_LANGUAGE:"lt"},"lv-LV":{GLOBALIZE_LANGUAGE:"lv"},"ms-MY":{COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"ms",SPEECH_LANGUAGE:"ms-MY"},"nb-NO":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"nb",SPEECH_LANGUAGE:"nb-NO"},"nl-NL":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"nl",SPEECH_LANGUAGE:"nl-NL"},"pl-PL":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"pl",SPEECH_LANGUAGE:"pl-PL"},"pt-BR":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"pt",SPEECH_LANGUAGE:"pt-BR"},"pt-PT":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"pt-PT",SPEECH_LANGUAGE:"pt-PT"},"ro-RO":{COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"ro",SPEECH_LANGUAGE:"ro-RO"},"ru-RU":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"ru",SPEECH_LANGUAGE:"ru-RU"},"sk-SK":{COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"sk",SPEECH_LANGUAGE:"sk-SK"},"sl-SI":{COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"sl",SPEECH_LANGUAGE:"sl-SI"},"sr-Cyrl":{GLOBALIZE_LANGUAGE:"sr-Cyrl"},"sr-Latn":{GLOBALIZE_LANGUAGE:"sr-Latn"},"sv-SE":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"sv",SPEECH_LANGUAGE:"sv-SE"},"th-TH":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"th",SPEECH_LANGUAGE:"th-TH"},"tr-TR":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"tr",SPEECH_LANGUAGE:"tr-TR"},"uk-UA":{GLOBALIZE_LANGUAGE:"uk"},"vi-VN":{COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"vi",SPEECH_LANGUAGE:"vi-VN"},yue:{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"yue",SPEECH_LANGUAGE:"zh-HK"},"zh-Hans":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:"neural",GLOBALIZE_LANGUAGE:"zh-Hans",SPEECH_LANGUAGE:"zh-CN"},"zh-Hans-SG":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:"neural",GLOBALIZE_LANGUAGE:"zh-Hans-SG",SPEECH_LANGUAGE:"zh-CN"},"zh-Hant":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"zh-Hant",SPEECH_LANGUAGE:"zh-TW"},"zh-Hant-HK":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"zh-Hant-HK",SPEECH_LANGUAGE:"zh-HK"},"zh-Hant-MO":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"zh-Hant-MO",SPEECH_LANGUAGE:"zh-HK"}};import{isForbiddenPropertyName as ma}from"botframework-webchat-core";function bT(...T){let t={},_=T.reduce((E,r)=>[...E,...Object.keys(r)],[]);for(let E of new Set(_))ma(E)||(t[E]=T.reduce((r,A)=>({...r,...A[E]}),{}));return t}var IE;function da(){return IE||(IE=bT({"ar-EG":u_,"ar-JO":L_,"ar-SA":l_,"bg-BG":m_,"ca-ES":d_,"cs-CZ":P_,"da-DK":c_,"de-DE":D_,"el-GR":p_,"en-US":M_,"es-ES":H_,"et-EE":Y_,"eu-ES":f_,"fi-FI":B_,"fr-FR":h_,"gl-ES":U_,"he-IL":V_,"hi-IN":v_,"hr-HR":b_,"hu-HU":y_,"id-ID":k_,"it-IT":G_,"ja-JP":g_,"kk-KZ":F_,"ko-KR":W_,"lt-LT":K_,"lv-LV":$_,"ms-MY":w_,"nb-NO":z_,"nl-NL":j_,"pl-PL":X_,"pt-BR":x_,"pt-PT":Z_,"ro-RO":q_,"ru-RU":J_,"sk-SK":Q_,"sl-SI":eE,"sr-Cyrl":TE,"sr-Latn":tE,"sv-SE":_E,"th-TH":EE,"tr-TR":rE,"uk-UA":aE,"vi-VN":AE,yue:nE,"zh-Hans":VT,"zh-Hant":vT,"zh-Hans-SG":VT,"zh-Hant-HK":iE,"zh-Hant-MO":vT},oE))}var Ke=da;import{warnOnce as qe}from"botframework-webchat-core";var Pa=qe('"styleOptions.hideScrollToEndButton" has been deprecated. To hide scroll to end button, set "scrollToEndBehavior" to false. This deprecation migration will be removed on or after 2023-06-02.'),ca=qe('"styleOptions.newMessagesButtonFontSize" has been renamed to "styleOptions.scrollToEndButtonFontSize". This deprecation migration will be removed on or after 2023-06-02.'),Da=qe('"styleOptions.suggestedActionBackground" has been deprecated. Please use "styleOptions.suggestedActionBackgroundColor" instead. This deprecation migration will be removed on or after 2021-09-16.'),sT=qe('"styleOptions.suggestedActionXXXBackground" has been deprecated. Please use "styleOptions.suggestedActionBackgroundColorOnXXX" instead. This deprecation migration will be removed on or after 2021-09-16.'),CT=qe('"styleOptions.suggestedActionDisabledXXX" has been renamed to "styleOptions.suggestedActionXXXOnDisabled". This deprecation migration will be removed on or after 2021-09-16.');function RT({hideScrollToEndButton:T,newMessagesButtonFontSize:t,..._}={}){let E={...hT,..._},{bubbleFromUserNubOffset:r,bubbleNubOffset:A,emojiSet:O}=E,s,N,H;r==="top"?s=0:typeof r!="number"?s=-0:s=r,A==="top"?N=0:typeof A!="number"?N=-0:N=A,O===!0?H={":)":"\u{1F60A}",":-)":"\u{1F60A}","(:":"\u{1F60A}","(-:":"\u{1F60A}",":-|":"\u{1F610}",":|":"\u{1F610}",":-(":"\u2639\uFE0F",":(":"\u2639\uFE0F",":-D":"\u{1F600}",":D":"\u{1F600}",":-p":"\u{1F61B}",":p":"\u{1F61B}",":-P":"\u{1F61B}",":P":"\u{1F61B}",":-o":"\u{1F632}",":o":"\u{1F632}",":O":"\u{1F632}",":-O":"\u{1F632}",":-0":"\u{1F632}",":0":"\u{1F632}",";-)":"\u{1F609}",";)":"\u{1F609}","<3":"\u2764\uFE0F","</3":"\u{1F494}","<\\3":"\u{1F494}"}:Object.prototype.toString.call(O)!=="[object Object]"?(console.warn("botframework-webchat: emojiSet must be a boolean or an object with emoticon: emojiValues"),H=!1):H=O,T&&(Pa(),E.scrollToEndButtonBehavior=_.scrollToEndButtonBehavior||!1);let D=E.scrollToEndButtonBehavior;return D!=="any"&&D!==!1&&(D==="unread"||console.warn('Web Chat: "scrollToEndButtonBehavior" must be either "unread", "any", or false, will set to "unread".'),D="unread"),t&&(ca(),E.scrollToEndButtonFontSize=_.scrollToEndButtonFontSize||t),_.suggestedActionBackground&&Da(),_.suggestedActionActiveBackground&&(sT(),E.suggestedActionBackgroundColorOnActive=_.suggestedActionBackgroundColorOnActive||_.suggestedActionActiveBackground),_.suggestedActionFocusBackground&&(sT(),E.suggestedActionBackgroundColorOnFocus=_.suggestedActionBackgroundColorOnFocus||_.suggestedActionFocusBackground),_.suggestedActionHoverBackground&&(sT(),E.suggestedActionBackgroundColorOnHover=_.suggestedActionBackgroundColorOnHover||_.suggestedActionHoverBackground),_.suggestedActionDisabledBackground&&(sT(),E.suggestedActionBackgroundColorOnDisabled=_.suggestedActionBackgroundColorOnDisabled||_.suggestedActionDisabledBackground),_.suggestedActionDisabledBorderColor&&(CT(),E.suggestedActionBorderColorOnDisabled=_.suggestedActionBorderColorOnDisabled||_.suggestedActionDisabledBorderColor),_.suggestedActionDisabledBorderStyle&&(CT(),E.suggestedActionBorderStyleOnDisabled=_.suggestedActionBorderStyleOnDisabled||_.suggestedActionDisabledBorderStyle),_.suggestedActionDisabledBorderWidth&&(CT(),E.suggestedActionBorderWidthOnDisabled=_.suggestedActionBorderWidthOnDisabled||_.suggestedActionDisabledBorderWidth),_.suggestedActionDisabledTextColor&&(CT(),E.suggestedActionTextColorOnDisabled=_.suggestedActionTextColorOnDisabled||_.suggestedActionDisabledTextColor),{...E,bubbleFromUserNubOffset:s,bubbleNubOffset:N,emojiSet:H,scrollToEndButtonBehavior:D}}import pa from"simple-update-in";function yT(T){return T.slowConnectionAfter<0&&(console.warn('Web Chat: "slowConnectionAfter" cannot be negative, will set to 0.'),T=pa(T,["slowConnectionAfter"],()=>0)),T}import ka,{useCallback as GT,useMemo as $e,useState as OE}from"react";import{useEffect as Ma,useRef as Ha}from"react";function Je(T){let t=Ha();return Ma(()=>{t.current=T}),t.current}import{useMemo as Ya,useRef as fa}from"react";function Qe(T){let t=fa(),_=Ya(()=>Object.create({},{current:{get:()=>t.current}}),[]);return t.current=T,_}import{createContext as Ba}from"react";import{createDispatchHook as ha,createSelectorHook as Ua}from"react-redux";var uT=Ba(),SE=ha(uT),Ee=Ua(uT);uT.displayName="WebChatReduxContext";var NE=uT;function pe(){return[Ee(({activities:T})=>T)]}function kT(T,t){let _=[...T].reverse().findIndex(t);if(~_){let{length:E}=T||[];return E-_-1}return _}import{useContext as va}from"react";import{createContext as Va}from"react";var LT=Va(void 0);function de(T=!0){let t=va(LT);if(T&&!t)throw new Error("botframework-webchat internal: This hook can only be used under <ActivityKeyerComposer>.");return t}function eT(){return de().activityKeysState}import{createContext as ba}from"react";var ya=ba(void 0),lT=ya;function sE(T,t,_){if(t.includes(T))return T;if(!_||!T)return;let E=_.indexOf(T);if(~E){let r=_.slice(0,E).reverse();for(let A of r)if(t.includes(A))return A}}var Ga=({children:T})=>{let[t]=pe(),[_]=eT(),[E,r]=OE(),[A,O]=OE(),s=Qe(_),N=Je(_),H=$e(()=>kT(t,f=>f.from?.role==="user"),[t]),D=$e(()=>(A&&!~N.includes(A)&&console.warn(`botframework-webchat internal assertion: "rawLastReadActivityKey" of value ${A} should be in the "prevAllActivityKeys" array.`),sE(A,_,N)),[_,N,A]),p=Qe(D),V=$e(()=>{E&&!~N.includes(E)&&console.warn(`botframework-webchat internal assertion: "rawLastAcknowledgedActivityKey" of value ${E} should be in the "prevAllActivityKeys" array.`);let f=sE(E,_,N);return _[Math.max(_.indexOf(f),H)]||_[_.length-1]},[_,H,N,E]),x=$e(()=>{let f=new Map,J=_.indexOf(V),te=_.indexOf(D);return _.forEach((Ne,Ie)=>{f.set(Ne,{acknowledged:Ie<=J,read:Ie<=te})}),Object.freeze(f)},[_,V,D]),Z=Qe(x),_e=GT(f=>Z.current.get(f)?.acknowledged,[Z]),U=$e(()=>{let f=_.indexOf(D);return Object.freeze([Object.freeze(_.slice(0,f+1)),Object.freeze(_.slice(f+1))])},[_,D]),u=GT(()=>{let{current:f}=s;r(f[f.length-1])},[s,r]),B=GT(f=>{let{current:J}=s,te=J.indexOf(f);if(!~te)return console.warn(`botframework-webchat: Cannot mark activity with key ${f} as read because it is not in the transcript.`);te>J.indexOf(p.current)&&O(f)},[s,p,O]);U[0].length+U[1].length!==_.length&&console.warn("botframework-webchat internal: Sum of count of read and unread activity keys MUST equals to total number of activity keys.");let G=$e(()=>({activityKeysByReadState:U,getHasAcknowledgedByActivityKey:_e,lastAcknowledgedActivityKeyState:Object.freeze([V]),lastReadActivityKeyState:Object.freeze([D]),markActivityKeyAsRead:B,markAllAsAcknowledged:u}),[U,_e,V,D,B,u]);return ka.createElement(lT.Provider,{value:G},T)},CE=Ga;import Fa,{useCallback as KT,useMemo as RE,useRef as mT}from"react";function gT(T){return T.id}function FT(T){return T.channelData?.clientActivityID}import ga from"math-random";function WT(){return ga().toString(36).substring(2,7)}var Wa=({children:T})=>{if(de(!1))throw new Error("botframework-webchat internal: <ActivityKeyerComposer> should not be nested.");let[_]=pe(),E=mT(Object.freeze(new Map)),r=mT(Object.freeze(new Map)),A=mT(Object.freeze(new Map)),O=mT(Object.freeze(new Map)),s=RE(()=>{let{current:x}=E,{current:Z}=r,{current:_e}=A,U=new Map,u=[],B=new Map,G=new Map,f=new Map;return _.forEach(J=>{let te=gT(J),Ne=FT(J),Ie=Ne&&_e.get(Ne)||te&&x.get(te)||Z.get(J)||WT();te&&U.set(te,Ie),Ne&&G.set(Ne,Ie),B.set(J,Ie),f.set(Ie,J),u.push(Ie)}),E.current=Object.freeze(U),r.current=Object.freeze(B),A.current=Object.freeze(G),O.current=Object.freeze(f),Object.freeze([Object.freeze(u)])},[_,E,r,A,O]),N=KT(x=>x&&O.current.get(x),[O]),H=KT(x=>x&&r.current.get(x),[r]),D=KT(x=>x&&E.current.get(x),[E]),p=RE(()=>({activityKeysState:s,getActivityByKey:N,getKeyByActivity:H,getKeyByActivityId:D}),[s,N,H,D]),{length:V}=_;return E.current.size>V&&console.warn('botframework-webchat internal assertion: "activityIdToKeyMap.size" should be equal or less than "activities.length".'),r.current.size!==V&&console.warn('botframework-webchat internal assertion: "activityToKeyMap.size" should be same as "activities.length".'),A.current.size>V&&console.warn('botframework-webchat internal assertion: "clientActivityIdToKeyMap.size" should be equal or less than "activities.length".'),O.current.size!==V&&console.warn('botframework-webchat internal assertion: "keyToActivityMap.size" should be same as "activities.length".'),s[0].length!==V&&console.warn('botframework-webchat internal assertion: "activityKeys.length" should be same as "activities.length".'),Fa.createElement(LT.Provider,{value:p},T)},uE=Wa;import FA,{useEffect as WA,useMemo as Zt,useRef as KA}from"react";var kE={};lr(kE,{useActiveTyping:()=>LE,useActivities:()=>pe,useActivityKeys:()=>lE,useActivityKeysByRead:()=>mE,useAvatarForBot:()=>wT,useAvatarForUser:()=>zT,useByteFormatter:()=>XT,useConnectivityStatus:()=>xT,useCreateActivityRenderer:()=>qT,useCreateActivityStatusRenderer:()=>et,useCreateAttachmentForScreenReaderRenderer:()=>Tt,useCreateAvatarRenderer:()=>tt,useCreateScrollToEndButtonRenderer:()=>_t,useDateFormatter:()=>_T,useDebouncedNotifications:()=>YE,useDictateInterims:()=>rt,useDictateState:()=>at,useDirection:()=>nt,useDisabled:()=>it,useDismissNotification:()=>ot,useEmitTypingIndicator:()=>It,useGetActivityByKey:()=>pT,useGetHasAcknowledgedByActivityKey:()=>fE,useGetKeyByActivity:()=>dT,useGetKeyByActivityId:()=>BE,useGetSendTimeoutForActivity:()=>ye,useGrammars:()=>st,useGroupActivities:()=>Ct,useGroupTimestamp:()=>Rt,useLanguage:()=>be,useLastAcknowledgedActivityKey:()=>hE,useLastReadActivityKey:()=>UE,useLocalizer:()=>aT,useMarkActivityAsSpoken:()=>mt,useMarkActivityKeyAsRead:()=>VE,useMarkAllAsAcknowledged:()=>MT,useNotifications:()=>ET,usePerformCardAction:()=>ct,usePonyfill:()=>Se,usePostActivity:()=>Dt,useReferenceGrammarID:()=>pt,useRelativeTimeFormatter:()=>Mt,useRenderAttachment:()=>TT,useRenderToast:()=>Ht,useRenderTypingIndicator:()=>Yt,useSendBoxAttachments:()=>AT,useSendBoxValue:()=>ft,useSendEvent:()=>Bt,useSendFiles:()=>bE,useSendMessage:()=>ht,useSendMessageBack:()=>Ut,useSendPostBack:()=>Vt,useSendStatusByActivityKey:()=>ze,useSendTimeoutForActivity:()=>vt,useSendTypingIndicator:()=>bt,useSetNotification:()=>yt,useShouldSpeakIncomingActivity:()=>kt,useStartDictate:()=>Gt,useStopDictate:()=>gt,useStyleOptions:()=>ne,useSubmitSendBox:()=>Ft,useSuggestedActions:()=>Wt,useTimeoutForSend:()=>Kt,useTrackDimension:()=>nT,useTrackEvent:()=>le,useTrackException:()=>Ge,useTrackTiming:()=>wt,useUserID:()=>zt,useUsername:()=>jt,useVoiceSelector:()=>Xt});import{useEffect as za}from"react";import{useCallback as Ka,useState as $a}from"react";function wa(){let[,T]=$a();return Ka(()=>T({}),[T])}var we=wa;function ne(){return[L().styleOptions]}function ja(T){let[{clearTimeout:t,Date:_,setTimeout:E}]=Se(),[{typingAnimationDuration:r}]=ne(),A=we(),O=Ee(({typing:p})=>p),s=_.now();typeof T!="number"&&(T=r);let N=Object.entries(O).reduce((p,[V,{at:x,last:Z,name:_e,role:U}])=>{let u=Z+T;return u>s?{...p,[V]:{at:x,expireAt:u,name:_e,role:U}}:p},{}),H=Math.min(...Object.values(N).map(({expireAt:p})=>p)),D=H&&H-s;return za(()=>{if(D&&isFinite(D)){let p=E(A,Math.max(0,D));return()=>t(p)}},[t,A,E,D]),[N]}var LE=ja;var lE=eT;import{useContext as Xa}from"react";function Le(T=!0){let t=Xa(lT);if(T&&!t)throw new Error("botframework-webchat internal: This hook can only be used under <ActivityAcknowledgementContext>.");return t}function $T(){return Le().activityKeysByReadState}var mE=$T;function wT(){let[{botAvatarImage:T,botAvatarInitials:t}]=ne();return[{image:T,initials:t}]}function zT(){let[{userAvatarImage:T,userAvatarInitials:t}]=ne();return[{image:T,initials:t}]}import{useMemo as xa}from"react";function Me(){return L().localizedGlobalizeState}var dE=1024,PE=1048576,cE=1073741824,Za={form:"long"},jT={form:"short"};function XT(){let[T]=Me();return xa(()=>{let t=T.unitFormatter.bind(T);return _=>_<dE?t("byte",Za)(_):_<PE?t("kilobyte",jT)(~~(_/dE)):_<cE?t("megabyte",jT)(~~(_/PE)):t("gigabyte",jT)(~~(_/cE))},[T])}function xT(){return[Ee(({connectivityStatus:T})=>T)]}import{isValidElement as qa,useMemo as Ja}from"react";function TT(){let{attachmentRenderer:T}=L();return T}function ZT(T){let{activityRenderer:t}=L(),_=TT(),E=T||_;return Ja(()=>(...r)=>{let A=t(...r);return A?O=>{if(qa(A))return A;let s=A((...N)=>E(...N),O);return s||console.warn("botframework-webchat: To hide an activity, the activity renderer should return false. It should not return a function that will return false when called."),s}:!1},[t,E])}function qT(){return ZT()}import DE,{memo as pE,useMemo as tA}from"react";function tT(){return de().getKeyByActivity}var dT=tT;import{useContext as TA}from"react";import{createContext as Qa}from"react";var eA=Qa(void 0),PT=eA;function JT(T=!0){let t=TA(PT);if(T&&!t)throw new Error("botframework-webchat internal: This hook can only be used under <ActivitySendStatusComposer>.");return t}function QT(){return JT().sendStatusByActivityKeyState}var ze=QT;var _A=pE(({activity:T,hideTimestamp:t,nextVisibleActivity:_,sendStatus:E})=>{let{activityStatusRenderer:r}=L();return r({activity:T,hideTimestamp:t,nextVisibleActivity:_,sameTimestampGroup:t,sendState:E==="send failed"||E==="sent"?E:"sending"})}),EA=pE(({activity:T,hideTimestamp:t,nextVisibleActivity:_})=>{let[E]=ze(),A=dT()(T),O=typeof A=="string"&&E.get(A)||"sent";return DE.createElement(_A,{activity:T,hideTimestamp:t,nextVisibleActivity:_,sendStatus:O})});function et(){return tA(()=>({activity:T,nextVisibleActivity:t})=>({hideTimestamp:_}={})=>DE.createElement(EA,{activity:T,hideTimestamp:_,nextVisibleActivity:t}),[])}function Tt(){return L().attachmentForScreenReaderRenderer}import{useMemo as rA}from"react";function tt(){let[T]=ne(),{avatarRenderer:t}=L();return rA(()=>({activity:_})=>{let{from:{role:E}={}}=_,r=t({activity:_,fromUser:E==="user",styleOptions:T});return r!==!1&&typeof r!="function"?(console.warn("botframework-webchat: avatarMiddleware should return a function to render the avatar, or return false if avatar should be hidden. Please refer to HOOKS.md for details."),()=>r):r},[t,T])}function _t(){return L().scrollToEndButtonRenderer}import{useMemo as aA}from"react";function _T(){let[{Date:T}]=Se(),[t]=Me();return aA(()=>E=>t.dateFormatter({skeleton:"MMMMdhm"})(new T(E)),[T,t])}import{useRef as oA}from"react";import HE from"simple-update-in";function cT(T){return typeof T>"u"}var AA=T=>T;function nA(T,t=AA){return T.reduce((_,E)=>{let r=cT(_)?_:t(_),A=cT(E)?E:t(E);return cT(r)?E:cT(A)||r<A?_:E},void 0)}var ME=nA;import{useEffect as iA}from"react";function Et(T,t){let[{clearTimeout:_,Date:E,setTimeout:r}]=Ze();iA(()=>{if(typeof T=="number"){let A=Math.max(0,T-E.now());if(A){let O=r(t,A);return()=>_(O)}t()}},[T,_,E,t,r])}function ET(){return[Ee(({notifications:T})=>T)]}function IA(T){return ME(Object.values(T).filter(({outOfDate:t})=>t).map(({updateNotBefore:t})=>t))}function SA(){let[{Date:T}]=Se(),[{notificationDebounceTimeout:t}]=ne(),[_]=ET(),E=oA({}),r=we(),A=T.now();for(let O of Object.keys(E.current).filter(s=>!(s in _)))E.current=HE(E.current,[O],s=>{if(A<s.updateNotBefore)return{...s,outOfDate:!0}});for(let[,{alt:O,data:s,id:N,level:H,message:D,timestamp:p}]of Object.entries(_))E.current=HE(E.current,[N],V=>V&&O===V.alt&&Object.is(s,V.data)&&H===V.level&&D===V.message&&p===V.timestamp?V:V&&A<V.updateNotBefore?{...V,outOfDate:!0}:{...V,alt:O,data:s,id:N,level:H,message:D,outOfDate:!1,timestamp:p,updateNotBefore:A+t});return Et(IA(E.current),r),[E.current]}var YE=SA;function rt(){return[Ee(({dictateInterims:T})=>T)||[],L().setDictateInterims]}function at(){return[Ee(({dictateState:T})=>T)]}import{useMemo as NA}from"react";function DT(){return["ar-EG","ar-JO","ar-SA","he-IL"]}function At(){return[L().dir]}function rT(){let{localizedStrings:T}=L();return T}function be(T){let{language:t}=L(),_=rT();return T==="speech"?[_.SPEECH_LANGUAGE||t]:[t]}function OA(T,t){return T!=="auto"?T:DT().includes(t)?"rtl":"ltr"}function nt(){let[T]=At(),[t]=be();return[NA(()=>OA(T,t),[T,t])]}function it(){return[L().disabled]}function ot(){return L().dismissNotification}function It(){return L().emitTypingIndicator}function St(){return de().getActivityByKey}var pT=St;function Nt(){return Le().getHasAcknowledgedByActivityKey}var fE=Nt;function Ot(){return de().getKeyByActivityId}var BE=Ot;import{useMemo as sA}from"react";function ye(){let[{sendTimeout:T,sendTimeoutForAttachments:t}]=ne();return sA(()=>({activity:_})=>typeof T=="function"?T(_):_.type==="message"&&_.attachments?.length?t:T,[T,t])}function st(){return[L().grammars]}function Ct(){return L().groupActivities}function Rt(){let[{groupTimestamp:T}]=ne();return[T]}function ut(){return Le().lastAcknowledgedActivityKeyState}var hE=ut;function Lt(){return Le().lastReadActivityKeyState}var UE=Lt;import{isForbiddenPropertyName as RA}from"botframework-webchat-core";import{useCallback as uA}from"react";var{toString:CA}={};function he(T){return CA.call(T)==="[object Object]"}var LA=Ke()["en-US"];function aT({plural:T}={}){let[t]=Me(),_=rT();return uA((E,...r)=>{let A=E;if(T){let O=E;if(he(O)){if(typeof O.other!="string")throw new Error('useLocalizer: Plural string must have "id.other" of string.');if(typeof r[0]!="number")throw new Error("useLocalizer: Plural string must have first argument as a number.")}else throw new Error('useLocalizer: Plural string must pass "id" as a map instead of string.');for(let N of["zero","one","two","few","many"]){let H=typeof E[N];if(H!=="string"&&H!=="undefined")throw new Error(`useLocalizer: Plural string must have "id.${N}" of string or undefined.`)}let s=Object.keys(E).filter(N=>!["zero","one","two","few","many","other"].includes(N));if(s.length)throw new Error(`useLocalizer: Plural string "id" must be either "zero", "one", "two", "few", "many", "other". But not ${s.map(N=>`"${N}"`).join(", ")}.`);A=O[t.plural(r[0])]||O.other}else if(typeof E!="string")throw new Error('useLocalizer: "id" must be a string.');return Object.entries(r).reduce((O,[s,N])=>O.replace(`$${+s+1}`,N),RA(A)?"":_[A]||LA[A]||"")},[t,_,T])}import{useCallback as lA}from"react";function lt(){return L().markActivity}function mt(){let T=lt();return lA(t=>T(t,"speak",!1),[T])}function dt(){return Le().markActivityKeyAsRead}var VE=dt;function Pt(){return Le().markAllAsAcknowledged}var MT=Pt;function ct(){return L().onCardAction}function Dt(){return L().postActivity}function pt(){return[Ee(({referenceGrammarID:T})=>T)]}import{useMemo as mA}from"react";function Mt(){let[{Date:T}]=Se(),[t]=Me(),_=_T(),E=aT();return mA(()=>{let r=t.relativeTimeFormatter.bind(t);return A=>{let O=new T(A),s=O.getTime();if(isNaN(s))return A;let H=T.now()-s,D=Math.floor(H/6e4),p=Math.floor(H/36e5);return D<1?E("ACTIVITY_STATUS_TIMESTAMP_JUST_NOW"):D===1?E("ACTIVITY_STATUS_TIMESTAMP_ONE_MINUTE_AGO"):p<1?r("minute")(-D):p===1?E("ACTIVITY_STATUS_TIMESTAMP_ONE_HOUR_AGO"):p<5?r("hour")(-p):H<=24*36e5?E("ACTIVITY_STATUS_TIMESTAMP_TODAY"):H<=48*36e5?E("ACTIVITY_STATUS_TIMESTAMP_YESTERDAY"):_(O)}},[T,_,t,E])}function Ht(){return L().toastRenderer}function Yt(){return L().typingIndicatorRenderer}import{useMemo as dA}from"react";function AT(){let T=Ee(({sendBoxAttachments:_})=>_),{setSendBoxAttachments:t}=L();return dA(()=>Object.freeze([T,t]),[T,t])}function ft(){return[Ee(({sendBoxValue:T})=>T),L().setSendBox]}function Bt(){return L().sendEvent}import{warnOnce as MA}from"botframework-webchat-core";import{useCallback as HA}from"react";import{useCallback as DA,useMemo as pA}from"react";import{isForbiddenPropertyName as PA}from"botframework-webchat-core";function Pe(T,t){let _;return typeof CustomEvent=="function"?_=new CustomEvent(T):(_=document.createEvent("Event"),_.initEvent(T,!0,!0)),Object.entries(t).forEach(([E,r])=>{PA(E)||(_[E]=r)}),_}import{useCallback as cA}from"react";function ke(){let{telemetryDimensionsRef:T}=L();return cA(()=>({...T.current}),[T])}function vE(T){return typeof T=="number"&&isFinite(T)&&T>=0||typeof T=="string"}function le(){let{onTelemetry:T}=L(),t=ke(),_=DA((E,r,A)=>{if(!r||typeof r!="string")return console.warn('botframework-webchat: "name" passed to "useTrackEvent" hook must be a string.');if(typeof A<"u"){if(he(A)){if(!Object.values(A).every(O=>vE(O)))return console.warn('botframework-webchat: Every value in "data" map passed to "useTrackEvent" hook must be a non-negative finite number or string.')}else if(!vE(A))return console.warn('botframework-webchat: "data" passed to "useTrackEvent" hook must be a non-negative finite number or string.')}T&&T(Pe("event",{data:A,dimensions:t(),level:E,name:r}))},[T,t]);return pA(()=>{let E=_.bind(null,"info");return E.debug=_.bind(null,"debug"),E.error=_.bind(null,"error"),E.info=E,E.warn=_.bind(null,"warn"),E},[_])}var YA=MA("This hook will be removed on or after 2026-04-03. Please use `useSendMessage` instead.");function fA(){let{sendFiles:T}=L(),t=le();return HA(_=>{_&&_.length&&(YA(),T(_),t("sendFiles",{numFiles:_.length,sumSizeInKB:Math.round(_.reduce((E,{size:r})=>E+r,0)/1024)}))},[T,t])}var bE=fA;import{useCallback as BA}from"react";function ht(){let{sendMessage:T}=L(),t=le();return BA((_,E,{attachments:r,channelData:A}={})=>{t("sendMessage",{numAttachments:r?.length||0,sumSizeInKB:Math.round(r?.reduce((O,{blob:{size:s}})=>O+s,0)/1024)}),T(_,E,{attachments:r,channelData:A})},[T,t])}function Ut(){return L().sendMessageBack}function Vt(){return L().sendPostBack}var yE=!0;function vt(T){return yE&&(console.warn('botframework-webchat: "useSendTimeoutForActivity" is deprecated and will be removed on or after 2022-07-28. Please use "useGetSendTimeoutForActivity()" instead.'),yE=!1),ye()({activity:T})}function bt(){return[Ee(({sendTypingIndicator:T})=>T)]}function yt(){return L().setNotification}import{useCallback as hA}from"react";function kt(){let{startSpeakingActivity:T,stopSpeakingActivity:t}=L();return[Ee(({shouldSpeakIncomingActivity:_})=>_),hA(_=>{_?T():t()},[T,t])]}function Gt(){return L().startDictate}function gt(){return L().stopDictate}import{useCallback as UA}from"react";import{useRefFrom as VA}from"use-ref-from";function Ft(){let[T]=AT(),{submitSendBox:t}=L(),_=le(),E=VA(T);return UA((r,{channelData:A}={})=>{let{current:O}=E;return _("submitSendBox",{...r?{method:r}:{},numFiles:O.length,sumSizeInKB:Math.round(O.reduce((s,{blob:{size:N}})=>s+N,0)/1024)}),t(r,A&&{channelData:A})},[E,t,_])}import{useCallback as vA}from"react";function Wt(){let T=Ee(({suggestedActions:_})=>_),{clearSuggestedActions:t}=L();return[T,vA(_=>{if(_&&_.length)throw new Error("SuggestedActions cannot be set to values other than empty.");t()},[t])]}function Kt(){let[{sendTimeout:T}]=ne();return[T]}function nT(){let{trackDimension:T}=L();return T}import{useCallback as bA}from"react";function Ge(){let{onTelemetry:T}=L(),t=ke();return bA((_,E=!0)=>{if(!(_ instanceof Error))return console.warn('botframework-webchat: "error" passed to "useTrackException" must be specified and of type Error.');T&&T(Pe("exception",{dimensions:{...t()},error:_,fatal:!!E}))},[T,t])}import{useCallback as kA}from"react";import yA from"math-random";function $t(T=5){return yA().toString(36).substr(2,T)}function wt(){let[{Date:T}]=Se(),{onTelemetry:t}=L(),_=ke(),E=Ge();return kA(async(r,A)=>{if(!r||typeof r!="string"){console.warn('botframework-webchat: "name" passed to "useTrackTiming" hook must be specified and of type string.');return}else if(typeof A!="function"&&typeof A.then!="function"){console.warn('botframework-webchat: "functionOrPromise" passed to "useTrackTiming" hook must be specified, of type function or Promise.');return}let O=$t();t&&t(Pe("timingstart",{dimensions:_(),name:r,timingId:O}));let s=T.now();try{return await(typeof A=="function"?A():A)}catch(N){throw E(N,!1),N}finally{let N=T.now()-s;t&&t(Pe("timingend",{dimensions:_(),duration:N,name:r,timingId:O}))}},[T,t,_,E])}function zt(){return[L().userID]}function jt(){return[L().username]}import{useCallback as GA}from"react";function Xt(T){let t=L();return GA(_=>t.selectVoice(_,T),[T,t])}function gA(T){return Object.freeze(T)}var GE=gA;function xt(T,t){if(!T&&t||T&&!t)return!1;let _=new Set(T?.keys()),E=new Set(t?.keys());if(_.size!==E.size)return!1;for(let r of E)_.add(r);if(_.size!==E.size)return!1;for(let r of _)if(!Object.is(T.get(r),t.get(r)))return!1;return!0}var $A=-1/0,gE=1/0,wA=({children:T})=>{let[t]=pe(),[{clearTimeout:_,Date:E,setTimeout:r}]=Se(),A=we(),O=tT(),s=ye(),N=KA(Object.freeze(new Map)),H=Zt(()=>Object.freeze(t.reduce((U,u)=>{if(u.from.role==="user"){let B=O(u);if(B){let{channelData:{state:G,"webchat:send-status":f}}=u,J=f||(G==="sent"?"sent":"sending");if(J==="sent")U.set(B,gE);else if(J==="send failed")U.set(B,$A);else{let te=+new E(u.localTimestamp)+s({activity:u});te&&U.set(B,te)}}}return U},new Map)),[t,E,O,s]),D=new Map,p=E.now();for(let[U,u]of H)D.set(U,u===gE?"sent":p>=u?"send failed":"sending");xt(N.current,D)||(N.current=Object.freeze(D));let{current:V}=N,x=Zt(()=>GE([V]),[V]),Z=Zt(()=>({sendStatusByActivityKeyState:x}),[x]),_e=Array.from(H.values()).reduce((U,u)=>u>p&&u<U?u:U,1/0);return WA(()=>{if(_e){let U=r(A,_e-E.now());return()=>_(U)}},[_,E,A,_e,r]),FA.createElement(PT.Provider,{value:Z},T)},FE=wA;var zA=()=>{let[T]=ze(),t=Je(T),_=pT(),E=le();if(t)for(let r of T.keys()){let A=T.get(r),O=t.get(r);if(A&&A!==O){let s=_(r),N=s?.channelData.clientActivityID,H=s?.type,D={hasAttachment:s?.type==="message"&&s.attachments?.length>0?"true":"false",key:r,status:A,...N?{clientActivityID:N}:{},...H?{type:H}:{}};O&&(D.prevStatus=O),E("send-status:change",D)}}return null},WE=zA;import jA from"prop-types";import XA,{useMemo as KE,useRef as xA}from"react";var qt=({children:T,ponyfill:t})=>{if(xA(t).current!==t)throw new Error('botframework-webchat: "ponyfill" props cannot be changed after initial render.');let _=KE(()=>{let r=typeof globalThis>"u"?window:globalThis;return{cancelAnimationFrame:t?.cancelAnimationFrame||(typeof cancelAnimationFrame=="function"?cancelAnimationFrame.bind(r):void 0),cancelIdleCallback:t?.cancelIdleCallback||(typeof cancelIdleCallback=="function"?cancelIdleCallback.bind(r):void 0),clearImmediate:t?.clearImmediate||(typeof clearImmediate=="function"?clearImmediate.bind(r):void 0),clearInterval:t?.clearInterval||(typeof clearInterval=="function"?clearInterval.bind(r):void 0),clearTimeout:t?.clearTimeout||(typeof clearTimeout=="function"?clearTimeout.bind(r):void 0),Date:t?.Date||Date,requestAnimationFrame:t?.requestAnimationFrame||(typeof requestAnimationFrame=="function"?requestAnimationFrame.bind(r):void 0),requestIdleCallback:t?.requestIdleCallback||(typeof requestIdleCallback=="function"?requestIdleCallback.bind(r):void 0),setImmediate:t?.setImmediate||(typeof setImmediate=="function"?setImmediate.bind(r):void 0),setInterval:t?.setInterval||(typeof setInterval=="function"?setInterval.bind(r):void 0),setTimeout:t?.setTimeout||(typeof setTimeout=="function"?setTimeout.bind(r):void 0)}},[t]),E=KE(()=>({ponyfillState:Object.freeze([_])}),[_]);return XA.createElement(OT.Provider,{value:E},T)};qt.defaultProps={ponyfill:void 0};qt.propTypes={ponyfill:jA.any};var $E=qt;import{isForbiddenPropertyName as ZA}from"botframework-webchat-core";function Jt(T,t){return Object.entries(T).reduce((_,[E,r])=>(ZA(E)||(_[E]=t(r,E)),_),{})}function iT(T){return T=T.toLowerCase(),T==="ar-eg"?"ar-EG":T==="ar-jo"?"ar-JO":T.startsWith("ar")?"ar-SA":T.startsWith("bg")?"bg-BG":T.startsWith("ca")?"ca-ES":T.startsWith("cs")?"cs-CZ":T.startsWith("da")?"da-DK":T.startsWith("de")?"de-DE":T.startsWith("el")?"el-GR":T.startsWith("es")?"es-ES":T.startsWith("et")?"et-EE":T.startsWith("eu")?"eu-ES":T.startsWith("fi")?"fi-FI":T.startsWith("fr")?"fr-FR":T.startsWith("gl")?"gl-ES":T.startsWith("he")?"he-IL":T.startsWith("hi")?"hi-IN":T.startsWith("hr")?"hr-HR":T.startsWith("hu")?"hu-HU":T.startsWith("id")?"id-ID":T.startsWith("it")?"it-IT":T.startsWith("ja")?"ja-JP":T.startsWith("kk")?"kk-KZ":T.startsWith("ko")?"ko-KR":T.startsWith("lt")?"lt-LT":T.startsWith("lv")?"lv-LV":T.startsWith("ms")?"ms-MY":T.startsWith("nb")||T.startsWith("nn")||T.startsWith("no")?"nb-NO":T.startsWith("nl")?"nl-NL":T.startsWith("pl")?"pl-PL":T==="pt-br"?"pt-BR":T.startsWith("pt")?"pt-PT":T.startsWith("ro")?"ro-RO":T.startsWith("ru")?"ru-RU":T.startsWith("sk")?"sk-SK":T.startsWith("sl")?"sl-SI":T.startsWith("sr-cyrl")?"sr-Cyrl":T.startsWith("sr-latn")?"sr-Latn":T.startsWith("sv")?"sv-SE":T.startsWith("th")?"th-TH":T.startsWith("tr")?"tr-TR":T.startsWith("uk")?"uk-UA":T.startsWith("vi")?"vi-VN":T.startsWith("yue")||T==="zh-yue"?(T==="zh-yue"&&console.warn('botframework-webchat: The locale "zh-YUE" is being renamed to "yue" and deprecated. It will be removed on or after 2022-02-12.'),"yue"):T==="zh-hant"||T==="zh-tw"?"zh-Hant":T==="zh-hant-hk"||T==="zh-hk"?"zh-Hant-HK":T==="zh-hant-mo"||T==="zh-mo"?"zh-Hant-MO":T==="zh-hans-sg"||T==="zh-sg"?"zh-Hans-SG":T.startsWith("zh")?"zh-Hans":"en-US"}import{warnOnce as qA}from"botframework-webchat-core";import{createChainOfResponsibility as JA}from"react-chain-of-responsibility";import{any as QA,array as en,custom as Tn,safeParse as tn}from"valibot";function oT(T){let t=Tn(N=>typeof N=="function","Middleware must be a function."),_=en(QA([t])),E=N=>tn(_,N).success,r=qA(`"${T}" prop is invalid`),A=N=>{if(N){if(E(N))return Object.isFrozen(N)?N:Object.freeze([...N]);r()}return Object.freeze([])},{Provider:O,Proxy:s}=JA();return{types:{middleware:{},props:{},request:{}},Provider:O,Proxy:s,rectifyProps:A}}var{Provider:wE,Proxy:_n,rectifyProps:En,types:fu}=oT("sendBoxMiddleware");var{Provider:zE,Proxy:rn,rectifyProps:an,types:Uu}=oT("sendBoxToolbarMiddleware");import{useEffect as jE}from"react";function An(){let[T]=be(),t=nT(),_=le();jE(()=>{t("prop:locale",T)},[T,t]),jE(()=>{_("init")},[_])}var XE=An;var nn=()=>(XE(),null),xE=nn;function ZE({language:T},t,_){return[_.locale,T,window.navigator.language,"en-US"].reduce((E,r)=>E||t.find(({lang:A,name:O})=>A===r&&/neural/iu.test(O))||t.find(({lang:A})=>A===r),null)||t[0]}import Fe,{isValidElement as tr}from"react";import{createElement as on,useEffect as qE}from"react";import JE from"prop-types";function Qt(){let{internalErrorBoxClass:T}=L();return[T]}var e_=({error:T,type:t})=>{let[_]=Qt(),E=Ge();return qE(()=>{E(T,!1)},[T,E]),qE(()=>{console.group(`botframework-webchat: ${t}`),console.error(T),console.groupEnd()},[T,t]),!!_&&on(_,{error:T,type:t})};e_.defaultProps={type:void 0};e_.propTypes={error:JE.any.isRequired,type:JE.string};var ge=e_;function je(...T){return t=>{let _=T.reduce((E,r)=>r?[...E,r(t)]:E,[]);return E=>{let r=_.slice(),A=O=>(...s)=>{let N=r[+O];return(N?N(A(O+1)):E)(...s)};return A(0)}}}import er from"prop-types";import Tr,{useCallback as On,useState as sn}from"react";import In,{Component as Sn}from"react";import QE from"prop-types";var Nn=({children:T})=>typeof T=="function"?T():T,IT=class extends Sn{constructor(){super(),this.state={hasError:!1}}componentDidCatch(t){let{onError:_}=this.props;this.setState({hasError:!0}),_(t)}render(){let{children:t}=this.props,{hasError:_}=this.state;return!_&&In.createElement(Nn,null,t)}};IT.defaultProps={children:void 0,onError:void 0};IT.propTypes={children:QE.any,onError:QE.func};var HT=IT;var T_=({children:T,type:t})=>{let[_,E]=sn(),r=On(A=>E(A),[]);return _?Tr.createElement(ge,{error:_,type:t}):Tr.createElement(HT,{onError:r},T)};T_.defaultProps={children:void 0,type:void 0};T_.propTypes={children:er.any,type:er.string};var YT=T_;function fT(T,...t){return(..._)=>je(...t)(..._)(()=>{throw new Error(`reached terminator of ${T}`)})}function _r(T,...t){return(..._)=>{let E=je(...t)(..._)(()=>{throw new Error(`reached terminator of ${T}`)});return(...r)=>Fe.createElement(YT,{type:`render of ${T}`},()=>{try{return E(...r)}catch(A){return Fe.createElement(ge,{error:A,type:`render of ${T}`})}})}}function Ue(T,{strict:t=!1}={},..._){return(...E)=>{let r=je(..._)(...E)(()=>Fe.createElement(ge,{error:new Error(`reached terminator of ${T}`),type:T}));return(...A)=>{try{let O=r(...A);if(O){if(tr(O))return t?(console.error(`botframework-webchat: ${T} should only return either false or a render function.`),!1):Fe.createElement(YT,{type:`render of ${T}`},O)}else return!1;return(...s)=>Fe.createElement(YT,{type:`render of ${T}`},()=>{try{let N=O(...s);return t&&!tr(N)&&console.error(`botframework-webchat: ${T} should return React element only.`),N}catch(N){return Fe.createElement(ge,{error:N,type:`render of ${T}`})}})}catch(O){return Fe.createElement(ge,{error:O,type:`render of ${T}`})}}}}import{sendMessage as Cn,sendMessageBack as Rn,sendPostBack as un}from"botframework-webchat-core";function t_(){return({dispatch:T})=>t=>(..._)=>{let[{cardAction:E,cardAction:{value:r}}]=_;switch(E.type){case"imBack":if(typeof r=="string")T(Cn(r,"imBack"));else throw new Error('cannot send "imBack" with a non-string value');break;case"messageBack":T(Rn(r,E.text,E.displayText));break;case"postBack":T(un(r));break;default:return t(..._)}}}function Er(T,t){let _,E=[],r;return T.forEach(A=>{r&&t(r,A)?_.push(A):(_=[A],E.push(_)),r=A}),E}function rr(T){if(T.from.role==="user"){let{channelData:{state:t,"webchat:send-status":_}}=T;return _||(t==="sent"?"sent":"sending")}}function Ln(T,t,_,{Date:E}){if(_===!1)return!0;if(T&&t){if(rr(T)!==rr(t))return!1;_=typeof _=="number"?_:1/0;let r=new E(T.timestamp).getTime(),A=new E(t.timestamp).getTime();return Math.abs(r-A)<=_}return!1}function __({groupTimestamp:T,ponyfill:t}){return()=>()=>({activities:_})=>({sender:Er(_,(E,r)=>E.from.role===r.from.role),status:Er(_,(E,r)=>Ln(E,r,T,t))})}function E_(T,{setTimeout:t}){return new Promise((_,E)=>{let r=T.subscribe(A=>{_(A),t(()=>r.unsubscribe(),0)},A=>{E(A),t(()=>r.unsubscribe(),0)})})}var S_=mr(Cr()),Zn={clearSuggestedActions:ln,dismissNotification:cn,emitTypingIndicator:Dn,markActivity:pn,postActivity:Mn,sendEvent:Hn,sendFiles:Yn,sendMessage:fn,sendMessageBack:Bn,sendPostBack:hn,setDictateInterims:Un,setDictateState:Vn,setNotification:bn,setSendBox:yn,setSendBoxAttachments:kn,setSendTimeout:Gn,startDictate:Fn,startSpeakingActivity:Wn,stopDictate:Kn,stopSpeakingActivity:$n,submitSendBox:wn};function qn({cardActionMiddleware:T,directLine:t,dispatch:_,markAllAsAcknowledged:E,ponyfill:r}){let A=fT("card action",...T,t_())({dispatch:_});return{onCardAction:(O,{target:s}={})=>(E(),A({cardAction:O,getSignInUrl:O.type==="signin"?()=>{let{value:N}=O;return t.getSessionId?E_(t.getSessionId(),r).then(H=>`${N}${encodeURIComponent(`&code_challenge=${H}`)}`):(console.warn("botframework-webchat: OAuth is not supported on this Direct Line adapter."),N)}:null,target:s}))}}function Jn({groupActivitiesMiddleware:T,groupTimestamp:t,ponyfill:_}){return{groupActivities:fT("group activities",...T,__({groupTimestamp:t,ponyfill:_}))({})}}function Qn(T,t,_){if(_){if(typeof _=="function"){let E=_(T,t);if(!he(E))throw new Error("botframework-webchat: overrideLocalizedStrings function must return an object.");return E}}else return T;if(!he(_))throw new Error("botframework-webchat: overrideLocalizedStrings must be either a function, an object, or falsy.");return{...T,..._}}var N_=({activityMiddleware:T,activityStatusMiddleware:t,attachmentForScreenReaderMiddleware:_,attachmentMiddleware:E,avatarMiddleware:r,cardActionMiddleware:A,children:O,dir:s,directLine:N,disabled:H,downscaleImageToDataURL:D,grammars:p,groupActivitiesMiddleware:V,internalErrorBoxClass:x,locale:Z,onTelemetry:_e,overrideLocalizedStrings:U,renderMarkdown:u,scrollToEndButtonMiddleware:B,selectVoice:G,sendBoxMiddleware:f,sendBoxToolbarMiddleware:J,sendTypingIndicator:te,styleOptions:Ne,toastMiddleware:Ie,typingIndicatorMiddleware:Ve,userID:He,username:Ye})=>{let[fe]=Se(),Oe=SE(),Ae=zn({}),S=ie(()=>s==="ltr"||s==="rtl"?s:"auto",[s]),m=ie(()=>p||[],[p]),j=ie(()=>RT(yT(Ne)),[Ne]);I_(()=>{Oe(vn(Z))},[Oe,Z]),I_(()=>{Oe(gn(!!te))},[Oe,te]),I_(()=>(Oe(mn({directLine:N,userID:He,username:Ye})),()=>{Oe(Pn())}),[Oe,N,He,Ye]);let F=MT(),K=ie(()=>qn({cardActionMiddleware:Object.freeze([...ce(A)]),directLine:N,dispatch:Oe,markAllAsAcknowledged:F,ponyfill:fe}),[A,N,Oe,F,fe]),n=ie(()=>G||ZE.bind(null,{language:Z}),[Z,G]),c=ie(()=>Jn({groupActivitiesMiddleware:Object.freeze([...ce(V)]),groupTimestamp:j.groupTimestamp,ponyfill:fe}),[V,j.groupTimestamp,fe]),l=ie(()=>Jt(Zn,z=>(...se)=>Oe(z(...se))),[Oe]),M=ie(()=>Qn(Ke()[iT(Z)],Z,U),[Z,U]),Y=ie(()=>{let{GLOBALIZE:z,GLOBALIZE_LANGUAGE:se}=M||{};return z||se&&(0,S_.default)(se)||(0,S_.default)("en")},[M]),v=Rr((z,se)=>{if(!z||typeof z!="string")return console.warn("botframework-webchat: Telemetry dimension name must be a string.");let oe=typeof se;if(oe!=="string"&&oe!=="undefined")return console.warn("botframework-webchat: Telemetry dimension data must be a string or undefined.");Ae.current=xn(Ae.current,[z],oe==="undefined"?se:()=>se)},[Ae]),W=ie(()=>Ue("activity",{strict:!1},...ce(T),()=>()=>({activity:z})=>{throw z?new Error(`No renderer for activity of type "${z.type}"`):new Error("No activity to render")})({}),[T]),ee=ie(()=>Ue("activity status",{strict:!1},...ce(t),()=>()=>()=>!1)({}),[t]),Te=ie(()=>Ue("attachment for screen reader",{strict:!0},...ce(_),()=>()=>({attachment:z})=>z?(console.warn(`No renderer for attachment for screen reader of type "${z.contentType}"`),!1):()=>{throw new Error("No attachment to render")})({}),[_]),C=ie(()=>_r("attachment",...ce(E),()=>()=>({attachment:z})=>{throw z?new Error(`No renderer for attachment of type "${z.contentType}"`):new Error("No attachment to render")})({}),[E]),P=ie(()=>Ue("avatar",{strict:!1},...ce(r),()=>()=>()=>!1)({}),[r]),h=ie(()=>Ue("toast",{strict:!1},...ce(Ie),()=>()=>({notification:z})=>{throw z?new Error(`No renderer for notification of type "${z.contentType}"`):new Error("No notification to render")})({}),[Ie]),w=ie(()=>Ue("typing indicator",{strict:!1},...ce(Ve),()=>()=>()=>!1)({}),[Ve]),Q=ie(()=>Ue("scroll to end button",{strict:!0},...ce(B),()=>()=>()=>!1)(),[B]),ue=ie(()=>({...K,...c,...l,activityRenderer:W,activityStatusRenderer:ee,attachmentForScreenReaderRenderer:Te,attachmentRenderer:C,avatarRenderer:P,dir:S,directLine:N,disabled:H,downscaleImageToDataURL:D,grammars:m,internalErrorBoxClass:x,language:Z,localizedGlobalizeState:[Y],localizedStrings:M,onTelemetry:_e,renderMarkdown:u,scrollToEndButtonRenderer:Q,selectVoice:n,sendTypingIndicator:te,styleOptions:j,telemetryDimensionsRef:Ae,toastRenderer:h,trackDimension:v,typingIndicatorRenderer:w,userID:He,username:Ye}),[K,N,H,D,c,l,x,Z,Y,_e,W,ee,Te,C,P,S,m,M,n,j,h,w,u,Q,te,Ae,v,He,Ye]);return me.createElement(s_.Provider,{value:ue},me.createElement(FE,null,me.createElement(wE,{middleware:f||Object.freeze([])},me.createElement(zE,{middleware:J||Object.freeze([])},typeof O=="function"?O(ue):O,me.createElement(WE,null)))),_e&&me.createElement(xE,null))};N_.defaultProps={activityMiddleware:void 0,activityStatusMiddleware:void 0,attachmentForScreenReaderMiddleware:void 0,attachmentMiddleware:void 0,avatarMiddleware:void 0,cardActionMiddleware:void 0,children:void 0,dir:"auto",disabled:!1,downscaleImageToDataURL:void 0,grammars:[],groupActivitiesMiddleware:void 0,internalErrorBoxClass:void 0,locale:window.navigator.language||"en-US",onTelemetry:void 0,overrideLocalizedStrings:void 0,renderMarkdown:void 0,scrollToEndButtonMiddleware:void 0,selectVoice:void 0,sendTypingIndicator:!1,styleOptions:{},toastMiddleware:void 0,typingIndicatorMiddleware:void 0,userID:"",username:""};N_.propTypes={activityMiddleware:d.oneOfType([d.arrayOf(d.func),d.func]),activityStatusMiddleware:d.oneOfType([d.arrayOf(d.func),d.func]),attachmentForScreenReaderMiddleware:d.oneOfType([d.arrayOf(d.func),d.func]),attachmentMiddleware:d.oneOfType([d.arrayOf(d.func),d.func]),avatarMiddleware:d.oneOfType([d.arrayOf(d.func),d.func]),cardActionMiddleware:d.oneOfType([d.arrayOf(d.func),d.func]),children:d.any,dir:d.oneOf(["auto","ltr","rtl"]),directLine:d.shape({activity$:d.shape({subscribe:d.func.isRequired}).isRequired,connectionStatus$:d.shape({subscribe:d.func.isRequired}).isRequired,end:d.func,getSessionId:d.func,postActivity:d.func.isRequired,referenceGrammarID:d.string,token:d.string}).isRequired,disabled:d.bool,downscaleImageToDataURL:d.func,grammars:d.arrayOf(d.string),groupActivitiesMiddleware:d.oneOfType([d.arrayOf(d.func),d.func]),internalErrorBoxClass:d.func,locale:d.string,onTelemetry:d.func,overrideLocalizedStrings:d.oneOfType([d.any,d.func]),renderMarkdown:d.func,scrollToEndButtonMiddleware:d.oneOfType([d.arrayOf(d.func),d.func]),selectVoice:d.func,sendTypingIndicator:d.bool,styleOptions:d.any,toastMiddleware:d.oneOfType([d.arrayOf(d.func),d.func]),typingIndicatorMiddleware:d.oneOfType([d.arrayOf(d.func),d.func]),userID:d.string,username:d.string};var NT=({onTelemetry:T,store:t,..._})=>{let[E]=Se(),r=ie(()=>{let A=t||dn({ponyfill:E}),O=A.getState().internal?.ponyfill||{},s=new Set([...Object.keys(O),...Object.keys(E)]);s.delete("prototype"),Object.getOwnPropertyNames(Object.prototype).forEach(p=>{s.delete(p)});let N=p=>typeof p=="function"&&(""+p).endsWith("() { [native code] }"),H=(p,V)=>N(p)&&N(V)||p===V,D=Array.from(s).filter(p=>!H(O[p],E[p]));return D.length&&console.warn(`botframework-webchat: Ponyfill used in store should match the ponyfill passed in props: ${D.join(", ")}`),A},[E,t]);return me.createElement(Xn,{context:NE,store:r},me.createElement(uE,null,me.createElement(CE,null,me.createElement(N_,{onTelemetry:T,..._}))))};NT.defaultProps={onTelemetry:void 0,store:void 0};NT.propTypes={onTelemetry:d.func,store:d.any};var O_=({internalRenderErrorBox:T,onTelemetry:t,ponyfill:_,...E})=>{let[r,A]=jn(),O=Rr(s=>{console.error("botframework-webchat: Uncaught exception",{error:s}),t&&t(Pe("exception",{error:s,fatal:!0})),A(s)},[t,A]);return r?!!T&&T({error:r,type:"uncaught exception"}):me.createElement(HT,{onError:O},me.createElement($E,{ponyfill:_},me.createElement(NT,{onTelemetry:t,...E})))};O_.defaultProps={...NT.defaultProps,internalRenderErrorBox:void 0,onTelemetry:void 0,ponyfill:void 0};O_.propTypes={...NT.propTypes,internalRenderErrorBox:d.any,onTelemetry:d.func,ponyfill:d.any};var ei=O_;import{isForbiddenPropertyName as ur}from"botframework-webchat-core";var Lr;function Ti(T,t,..._){Lr||(console.warn("botframework-webchat: localize() is deprecated. Please use the useLocalizer() hooks instead. This function will be removed on or after 2022-02-12."),Lr=!0);let E=Ke(),r=iT(t),A=ur(t)?void 0:E[r];return Object.entries(_).reduce((O,[s,N])=>typeof O=="string"?O.replace(`$${+s+1}`,N):O,ur(T)?"":A&&A[T]||E["en-US"][T]||"")}var ti="tsup",_i="esmodules",Ei="4.17.0",rl={buildTool:ti,moduleFormat:_i,version:Ei};export{ei as Composer,_n as SendBoxMiddlewareProxy,rn as SendBoxToolbarMiddlewareProxy,rl as buildInfo,je as concatMiddleware,hT as defaultStyleOptions,kE as hooks,Ti as localize,RT as normalizeStyleOptions,En as rectifySendBoxMiddlewareProps,an as rectifySendBoxToolbarMiddlewareProps,Ei as version};
139
+ Shift + Tab \u9375`,KEYBOARD_HELP_CHAT_WINDOW_BODY_MOVE_BETWEEN_ITEMS_HEADER:"\u5728\u804A\u5929\u8996\u7A97\u4E2D\u7684\u9805\u76EE\u4E4B\u9593\u79FB\u52D5",KEYBOARD_HELP_CHAT_WINDOW_HEADER:"\u804A\u5929\u8996\u7A97",KEYBOARD_HELP_CLOSE_BUTTON_ALT:"\u95DC\u9589",KEYBOARD_HELP_HEADER:"\u9375\u76E4\u63A7\u5236\u9805",MARKDOWN_EXTERNAL_LINK_ALT:"\u5728\u65B0\u8996\u7A97\u4E2D\u958B\u555F; \u5916\u90E8\u3002",RECEIPT_CARD_TAX:"\u7A05\u91D1",RECEIPT_CARD_TOTAL:"\u7E3D\u8A08",RECEIPT_CARD_VAT:"\u52A0\u503C\u7A05",REFERENCE_LIST_HEADER_ONE:"$1 \u500B\u53C3\u8003",REFERENCE_LIST_HEADER_FEW:"$1 \u500B\u53C3\u8003",REFERENCE_LIST_HEADER_MANY:"$1 \u500B\u53C3\u8003",REFERENCE_LIST_HEADER_OTHER:"$1 \u500B\u53C3\u8003",REFERENCE_LIST_HEADER_TWO:"$1 \u500B\u53C3\u8003",SEND_BOX_IS_EMPTY_TOOLTIP_ALT:"\u7121\u6CD5\u50B3\u9001\u7A7A\u767D\u8A0A\u606F\u3002",SPEECH_INPUT_LISTENING:"\u6B63\u5728\u8046\u807D\u2026",SPEECH_INPUT_MICROPHONE_BUTTON_CLOSE_ALT:"\u95DC\u9589\u9EA5\u514B\u98A8",SPEECH_INPUT_MICROPHONE_BUTTON_OPEN_ALT:"\u958B\u555F\u9EA5\u514B\u98A8",SPEECH_INPUT_STARTING:"\u6B63\u5728\u555F\u52D5\u2026",SUGGESTED_ACTIONS_FLIPPER_NEXT_ALT:"\u4E0B\u4E00\u500B",SUGGESTED_ACTIONS_FLIPPER_PREVIOUS_ALT:"\u4E0A\u4E00\u500B",SUGGESTED_ACTIONS_LABEL_ALT:"\u5EFA\u8B70\u7684\u52D5\u4F5C",TEXT_INPUT_ALT:"\u8A0A\u606F\u8F38\u5165\u65B9\u584A",TEXT_INPUT_PLACEHOLDER:"\u8F38\u5165\u60A8\u7684\u8A0A\u606F",TEXT_INPUT_SEND_BUTTON_ALT:"\u50B3\u9001",TEXT_INPUT_SPEAK_BUTTON_ALT:"\u8AAA\u8A71",TEXT_INPUT_UPLOAD_BUTTON_ALT:"\u4E0A\u50B3\u6A94\u6848",TOAST_ACCORDION_FEW:"$1 \u5247\u901A\u77E5: \u6309\u4E00\u4E0B\u9019\u88E1\u4F86\u67E5\u770B\u8A73\u7D30\u8CC7\u6599",TOAST_ACCORDION_MANY:"$1 \u5247\u901A\u77E5: \u6309\u4E00\u4E0B\u9019\u88E1\u4F86\u67E5\u770B\u8A73\u7D30\u8CC7\u6599",TOAST_ACCORDION_OTHER:"$1 \u5247\u901A\u77E5: \u6309\u4E00\u4E0B\u9019\u88E1\u4F86\u67E5\u770B\u8A73\u7D30\u8CC7\u6599",TOAST_ACCORDION_TWO:"$1 \u5247\u901A\u77E5: \u6309\u4E00\u4E0B\u9019\u88E1\u4F86\u67E5\u770B\u8A73\u7D30\u8CC7\u6599",TOAST_ALT_ERROR:"\u932F\u8AA4",TOAST_ALT_INFO:"\u8CC7\u8A0A",TOAST_ALT_SUCCESS:"\u6210\u529F",TOAST_ALT_WARN:"\u8B66\u544A",TOAST_DISMISS_BUTTON:"\u95DC\u9589",TOAST_TITLE_ALT:"\u901A\u77E5",TRANSCRIPT_ARIA_LABEL_ALT:"\u804A\u5929\u8A18\u9304\uFF0C\u6309\u65B9\u5411\u9375\u9032\u884C\u700F\u89BD\u3002",TRANSCRIPT_ARIA_ROLE_ALT:"\u804A\u5929\u8A18\u9304",TRANSCRIPT_LIVE_REGION_INTERACTIVE_LABEL_ALT:"\u8A0A\u606F\u70BA\u4E92\u52D5\u5F0F\u3002\u8ACB\u6309 Shift Tab \u9375 2 \u5230 3 \u6B21\u5207\u63DB\u81F3\u804A\u5929\u8A18\u9304\uFF0C\u7136\u5F8C\u6309\u4E00\u4E0B\u8A0A\u606F\u9032\u884C\u4E92\u52D5\u3002",TRANSCRIPT_LIVE_REGION_INTERACTIVE_WITH_LINKS_LABEL_ALT:"\u8A0A\u606F\u4E2D\u7684\u4E00\u6216\u591A\u500B\u9023\u7D50\u3002\u8ACB\u6309 Shift Tab \u9375 2 \u5230 3 \u6B21\u5207\u63DB\u81F3\u804A\u5929\u8A18\u9304\uFF0C\u7136\u5F8C\u6309\u4E00\u4E0B\u8A0A\u606F\u9032\u884C\u4E92\u52D5\u3002",TRANSCRIPT_LIVE_REGION_SUGGESTED_ACTIONS_LABEL_ALT:"\u8A0A\u606F\u6709\u5EFA\u8B70\u7684\u52D5\u4F5C\u3002\u8ACB\u6309\u4E0B Shift Tab 2 \u81F3 3 \u6B21\u9078\u53D6\u5B83\u5011\u3002",TRANSCRIPT_LIVE_REGION_SUGGESTED_ACTIONS_WITH_ACCESS_KEY_LABEL_ALT:"\u8A0A\u606F\u6709\u5EFA\u8B70\u7684\u52D5\u4F5C\u3002\u8ACB\u6309\u4E0B $1 \u9078\u53D6\u5B83\u5011\u3002",TRANSCRIPT_LIVE_REGION_SEND_FAILED_ALT:"\u7121\u6CD5\u50B3\u9001\u8A0A\u606F\u3002",TRANSCRIPT_MORE_MESSAGES:"\u66F4\u591A\u8A0A\u606F",TRANSCRIPT_NEW_MESSAGES:"\u65B0\u8A0A\u606F",TRANSCRIPT_TERMINATOR_TEXT:"\u804A\u5929\u8A18\u9304\u7D50\u5C3E",TYPING_INDICATOR_ALT:"\u986F\u793A\u8F38\u5165\u6307\u793A\u5668",TYPING_INDICATOR_SINGLE_TEXT:"$1 \u6B63\u5728\u9375\u5165\u3002",TYPING_INDICATOR_MULTIPLE_TEXT:"$1 \u548C\u5176\u4ED6\u4EBA\u6B63\u5728\u9375\u5165\u3002",VOTE_DISLIKE_ALT:"\u4E0D\u559C\u6B61",VOTE_LIKE_ALT:"\u559C\u6B61"};var oE={"ar-EG":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"ar-EG",SPEECH_LANGUAGE:"ar-EG"},"ar-SA":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"ar-SA",SPEECH_LANGUAGE:"ar-SA"},"bg-BG":{COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"bg",SPEECH_LANGUAGE:"bg-BG"},"ca-ES":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"ca",SPEECH_LANGUAGE:"ca-ES"},"cs-CZ":{COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"cs",SPEECH_LANGUAGE:"cs-CZ"},"da-DK":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"da",SPEECH_LANGUAGE:"da-DK"},"de-DE":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:"neural",GLOBALIZE_LANGUAGE:"de",SPEECH_LANGUAGE:"de-DE"},"el-GR":{COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"el",SPEECH_LANGUAGE:"el-GR"},"en-US":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:"neural",GLOBALIZE_LANGUAGE:"en",SPEECH_LANGUAGE:"en-US"},"es-ES":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"es",SPEECH_LANGUAGE:"es-ES"},"et-EE":{GLOBALIZE_LANGUAGE:"et"},"eu-ES":{GLOBALIZE_LANGUAGE:"eu"},"fi-FI":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"fi",SPEECH_LANGUAGE:"fi-FI"},"fr-FR":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"fr",SPEECH_LANGUAGE:"fr-FR"},"gl-ES":{GLOBALIZE_LANGUAGE:"gl"},"he-IL":{COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"he",SPEECH_LANGUAGE:"he-IL"},"hi-IN":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"hi",SPEECH_LANGUAGE:"hi-IN"},"hr-HR":{COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"hr",SPEECH_LANGUAGE:"hr-HR"},"hu-HU":{COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"hu",SPEECH_LANGUAGE:"hu-HU"},"id-ID":{COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"id",SPEECH_LANGUAGE:"id-ID"},"it-IT":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:"neural",GLOBALIZE_LANGUAGE:"it",SPEECH_LANGUAGE:"it-IT"},"ja-JP":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"ja",SPEECH_LANGUAGE:"ja-JP"},"kk-KZ":{GLOBALIZE_LANGUAGE:"kk"},"ko-KR":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"ko",SPEECH_LANGUAGE:"ko-KR"},"lt-LT":{GLOBALIZE_LANGUAGE:"lt"},"lv-LV":{GLOBALIZE_LANGUAGE:"lv"},"ms-MY":{COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"ms",SPEECH_LANGUAGE:"ms-MY"},"nb-NO":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"nb",SPEECH_LANGUAGE:"nb-NO"},"nl-NL":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"nl",SPEECH_LANGUAGE:"nl-NL"},"pl-PL":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"pl",SPEECH_LANGUAGE:"pl-PL"},"pt-BR":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"pt",SPEECH_LANGUAGE:"pt-BR"},"pt-PT":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"pt-PT",SPEECH_LANGUAGE:"pt-PT"},"ro-RO":{COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"ro",SPEECH_LANGUAGE:"ro-RO"},"ru-RU":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"ru",SPEECH_LANGUAGE:"ru-RU"},"sk-SK":{COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"sk",SPEECH_LANGUAGE:"sk-SK"},"sl-SI":{COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"sl",SPEECH_LANGUAGE:"sl-SI"},"sr-Cyrl":{GLOBALIZE_LANGUAGE:"sr-Cyrl"},"sr-Latn":{GLOBALIZE_LANGUAGE:"sr-Latn"},"sv-SE":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"sv",SPEECH_LANGUAGE:"sv-SE"},"th-TH":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"th",SPEECH_LANGUAGE:"th-TH"},"tr-TR":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"tr",SPEECH_LANGUAGE:"tr-TR"},"uk-UA":{GLOBALIZE_LANGUAGE:"uk"},"vi-VN":{COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"vi",SPEECH_LANGUAGE:"vi-VN"},yue:{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"yue",SPEECH_LANGUAGE:"zh-HK"},"zh-Hans":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:"neural",GLOBALIZE_LANGUAGE:"zh-Hans",SPEECH_LANGUAGE:"zh-CN"},"zh-Hans-SG":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:"neural",GLOBALIZE_LANGUAGE:"zh-Hans-SG",SPEECH_LANGUAGE:"zh-CN"},"zh-Hant":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"zh-Hant",SPEECH_LANGUAGE:"zh-TW"},"zh-Hant-HK":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"zh-Hant-HK",SPEECH_LANGUAGE:"zh-HK"},"zh-Hant-MO":{COGNITIVE_SERVICES_SPEECH_TO_TEXT:!0,COGNITIVE_SERVICES_TEXT_TO_SPEECH:!0,GLOBALIZE_LANGUAGE:"zh-Hant-MO",SPEECH_LANGUAGE:"zh-HK"}};import{isForbiddenPropertyName as ma}from"botframework-webchat-core";function bT(...T){let t={},_=T.reduce((E,r)=>[...E,...Object.keys(r)],[]);for(let E of new Set(_))ma(E)||(t[E]=T.reduce((r,A)=>({...r,...A[E]}),{}));return t}var IE;function da(){return IE||(IE=bT({"ar-EG":u_,"ar-JO":L_,"ar-SA":l_,"bg-BG":m_,"ca-ES":d_,"cs-CZ":P_,"da-DK":c_,"de-DE":D_,"el-GR":p_,"en-US":M_,"es-ES":H_,"et-EE":Y_,"eu-ES":f_,"fi-FI":B_,"fr-FR":h_,"gl-ES":U_,"he-IL":V_,"hi-IN":v_,"hr-HR":b_,"hu-HU":y_,"id-ID":k_,"it-IT":G_,"ja-JP":g_,"kk-KZ":F_,"ko-KR":W_,"lt-LT":K_,"lv-LV":$_,"ms-MY":w_,"nb-NO":z_,"nl-NL":j_,"pl-PL":X_,"pt-BR":x_,"pt-PT":Z_,"ro-RO":q_,"ru-RU":J_,"sk-SK":Q_,"sl-SI":eE,"sr-Cyrl":TE,"sr-Latn":tE,"sv-SE":_E,"th-TH":EE,"tr-TR":rE,"uk-UA":aE,"vi-VN":AE,yue:nE,"zh-Hans":VT,"zh-Hant":vT,"zh-Hans-SG":VT,"zh-Hant-HK":iE,"zh-Hant-MO":vT},oE))}var Ke=da;import{warnOnce as qe}from"botframework-webchat-core";var Pa=qe('"styleOptions.hideScrollToEndButton" has been deprecated. To hide scroll to end button, set "scrollToEndBehavior" to false. This deprecation migration will be removed on or after 2023-06-02.'),ca=qe('"styleOptions.newMessagesButtonFontSize" has been renamed to "styleOptions.scrollToEndButtonFontSize". This deprecation migration will be removed on or after 2023-06-02.'),Da=qe('"styleOptions.suggestedActionBackground" has been deprecated. Please use "styleOptions.suggestedActionBackgroundColor" instead. This deprecation migration will be removed on or after 2021-09-16.'),sT=qe('"styleOptions.suggestedActionXXXBackground" has been deprecated. Please use "styleOptions.suggestedActionBackgroundColorOnXXX" instead. This deprecation migration will be removed on or after 2021-09-16.'),CT=qe('"styleOptions.suggestedActionDisabledXXX" has been renamed to "styleOptions.suggestedActionXXXOnDisabled". This deprecation migration will be removed on or after 2021-09-16.');function RT({hideScrollToEndButton:T,newMessagesButtonFontSize:t,..._}={}){let E={...hT,..._},{bubbleFromUserNubOffset:r,bubbleNubOffset:A,emojiSet:O}=E,s,N,H;r==="top"?s=0:typeof r!="number"?s=-0:s=r,A==="top"?N=0:typeof A!="number"?N=-0:N=A,O===!0?H={":)":"\u{1F60A}",":-)":"\u{1F60A}","(:":"\u{1F60A}","(-:":"\u{1F60A}",":-|":"\u{1F610}",":|":"\u{1F610}",":-(":"\u2639\uFE0F",":(":"\u2639\uFE0F",":-D":"\u{1F600}",":D":"\u{1F600}",":-p":"\u{1F61B}",":p":"\u{1F61B}",":-P":"\u{1F61B}",":P":"\u{1F61B}",":-o":"\u{1F632}",":o":"\u{1F632}",":O":"\u{1F632}",":-O":"\u{1F632}",":-0":"\u{1F632}",":0":"\u{1F632}",";-)":"\u{1F609}",";)":"\u{1F609}","<3":"\u2764\uFE0F","</3":"\u{1F494}","<\\3":"\u{1F494}"}:Object.prototype.toString.call(O)!=="[object Object]"?(console.warn("botframework-webchat: emojiSet must be a boolean or an object with emoticon: emojiValues"),H=!1):H=O,T&&(Pa(),E.scrollToEndButtonBehavior=_.scrollToEndButtonBehavior||!1);let D=E.scrollToEndButtonBehavior;return D!=="any"&&D!==!1&&(D==="unread"||console.warn('Web Chat: "scrollToEndButtonBehavior" must be either "unread", "any", or false, will set to "unread".'),D="unread"),t&&(ca(),E.scrollToEndButtonFontSize=_.scrollToEndButtonFontSize||t),_.suggestedActionBackground&&Da(),_.suggestedActionActiveBackground&&(sT(),E.suggestedActionBackgroundColorOnActive=_.suggestedActionBackgroundColorOnActive||_.suggestedActionActiveBackground),_.suggestedActionFocusBackground&&(sT(),E.suggestedActionBackgroundColorOnFocus=_.suggestedActionBackgroundColorOnFocus||_.suggestedActionFocusBackground),_.suggestedActionHoverBackground&&(sT(),E.suggestedActionBackgroundColorOnHover=_.suggestedActionBackgroundColorOnHover||_.suggestedActionHoverBackground),_.suggestedActionDisabledBackground&&(sT(),E.suggestedActionBackgroundColorOnDisabled=_.suggestedActionBackgroundColorOnDisabled||_.suggestedActionDisabledBackground),_.suggestedActionDisabledBorderColor&&(CT(),E.suggestedActionBorderColorOnDisabled=_.suggestedActionBorderColorOnDisabled||_.suggestedActionDisabledBorderColor),_.suggestedActionDisabledBorderStyle&&(CT(),E.suggestedActionBorderStyleOnDisabled=_.suggestedActionBorderStyleOnDisabled||_.suggestedActionDisabledBorderStyle),_.suggestedActionDisabledBorderWidth&&(CT(),E.suggestedActionBorderWidthOnDisabled=_.suggestedActionBorderWidthOnDisabled||_.suggestedActionDisabledBorderWidth),_.suggestedActionDisabledTextColor&&(CT(),E.suggestedActionTextColorOnDisabled=_.suggestedActionTextColorOnDisabled||_.suggestedActionDisabledTextColor),{...E,bubbleFromUserNubOffset:s,bubbleNubOffset:N,emojiSet:H,scrollToEndButtonBehavior:D}}import pa from"simple-update-in";function yT(T){return T.slowConnectionAfter<0&&(console.warn('Web Chat: "slowConnectionAfter" cannot be negative, will set to 0.'),T=pa(T,["slowConnectionAfter"],()=>0)),T}import ka,{useCallback as GT,useMemo as $e,useState as OE}from"react";import{useEffect as Ma,useRef as Ha}from"react";function Je(T){let t=Ha();return Ma(()=>{t.current=T}),t.current}import{useMemo as Ya,useRef as fa}from"react";function Qe(T){let t=fa(),_=Ya(()=>Object.create({},{current:{get:()=>t.current}}),[]);return t.current=T,_}import{createContext as Ba}from"react";import{createDispatchHook as ha,createSelectorHook as Ua}from"react-redux";var uT=Ba(),SE=ha(uT),Ee=Ua(uT);uT.displayName="WebChatReduxContext";var NE=uT;function pe(){return[Ee(({activities:T})=>T)]}function kT(T,t){let _=[...T].reverse().findIndex(t);if(~_){let{length:E}=T||[];return E-_-1}return _}import{useContext as va}from"react";import{createContext as Va}from"react";var LT=Va(void 0);function de(T=!0){let t=va(LT);if(T&&!t)throw new Error("botframework-webchat internal: This hook can only be used under <ActivityKeyerComposer>.");return t}function eT(){return de().activityKeysState}import{createContext as ba}from"react";var ya=ba(void 0),lT=ya;function sE(T,t,_){if(t.includes(T))return T;if(!_||!T)return;let E=_.indexOf(T);if(~E){let r=_.slice(0,E).reverse();for(let A of r)if(t.includes(A))return A}}var Ga=({children:T})=>{let[t]=pe(),[_]=eT(),[E,r]=OE(),[A,O]=OE(),s=Qe(_),N=Je(_),H=$e(()=>kT(t,f=>f.from?.role==="user"),[t]),D=$e(()=>(A&&!~N.includes(A)&&console.warn(`botframework-webchat internal assertion: "rawLastReadActivityKey" of value ${A} should be in the "prevAllActivityKeys" array.`),sE(A,_,N)),[_,N,A]),p=Qe(D),V=$e(()=>{E&&!~N.includes(E)&&console.warn(`botframework-webchat internal assertion: "rawLastAcknowledgedActivityKey" of value ${E} should be in the "prevAllActivityKeys" array.`);let f=sE(E,_,N);return _[Math.max(_.indexOf(f),H)]||_[_.length-1]},[_,H,N,E]),x=$e(()=>{let f=new Map,J=_.indexOf(V),te=_.indexOf(D);return _.forEach((Ne,Ie)=>{f.set(Ne,{acknowledged:Ie<=J,read:Ie<=te})}),Object.freeze(f)},[_,V,D]),Z=Qe(x),_e=GT(f=>Z.current.get(f)?.acknowledged,[Z]),U=$e(()=>{let f=_.indexOf(D);return Object.freeze([Object.freeze(_.slice(0,f+1)),Object.freeze(_.slice(f+1))])},[_,D]),u=GT(()=>{let{current:f}=s;r(f[f.length-1])},[s,r]),B=GT(f=>{let{current:J}=s,te=J.indexOf(f);if(!~te)return console.warn(`botframework-webchat: Cannot mark activity with key ${f} as read because it is not in the transcript.`);te>J.indexOf(p.current)&&O(f)},[s,p,O]);U[0].length+U[1].length!==_.length&&console.warn("botframework-webchat internal: Sum of count of read and unread activity keys MUST equals to total number of activity keys.");let G=$e(()=>({activityKeysByReadState:U,getHasAcknowledgedByActivityKey:_e,lastAcknowledgedActivityKeyState:Object.freeze([V]),lastReadActivityKeyState:Object.freeze([D]),markActivityKeyAsRead:B,markAllAsAcknowledged:u}),[U,_e,V,D,B,u]);return ka.createElement(lT.Provider,{value:G},T)},CE=Ga;import Fa,{useCallback as KT,useMemo as RE,useRef as mT}from"react";function gT(T){return T.id}function FT(T){return T.channelData?.clientActivityID}import ga from"math-random";function WT(){return ga().toString(36).substring(2,7)}var Wa=({children:T})=>{if(de(!1))throw new Error("botframework-webchat internal: <ActivityKeyerComposer> should not be nested.");let[_]=pe(),E=mT(Object.freeze(new Map)),r=mT(Object.freeze(new Map)),A=mT(Object.freeze(new Map)),O=mT(Object.freeze(new Map)),s=RE(()=>{let{current:x}=E,{current:Z}=r,{current:_e}=A,U=new Map,u=[],B=new Map,G=new Map,f=new Map;return _.forEach(J=>{let te=gT(J),Ne=FT(J),Ie=Ne&&_e.get(Ne)||te&&x.get(te)||Z.get(J)||WT();te&&U.set(te,Ie),Ne&&G.set(Ne,Ie),B.set(J,Ie),f.set(Ie,J),u.push(Ie)}),E.current=Object.freeze(U),r.current=Object.freeze(B),A.current=Object.freeze(G),O.current=Object.freeze(f),Object.freeze([Object.freeze(u)])},[_,E,r,A,O]),N=KT(x=>x&&O.current.get(x),[O]),H=KT(x=>x&&r.current.get(x),[r]),D=KT(x=>x&&E.current.get(x),[E]),p=RE(()=>({activityKeysState:s,getActivityByKey:N,getKeyByActivity:H,getKeyByActivityId:D}),[s,N,H,D]),{length:V}=_;return E.current.size>V&&console.warn('botframework-webchat internal assertion: "activityIdToKeyMap.size" should be equal or less than "activities.length".'),r.current.size!==V&&console.warn('botframework-webchat internal assertion: "activityToKeyMap.size" should be same as "activities.length".'),A.current.size>V&&console.warn('botframework-webchat internal assertion: "clientActivityIdToKeyMap.size" should be equal or less than "activities.length".'),O.current.size!==V&&console.warn('botframework-webchat internal assertion: "keyToActivityMap.size" should be same as "activities.length".'),s[0].length!==V&&console.warn('botframework-webchat internal assertion: "activityKeys.length" should be same as "activities.length".'),Fa.createElement(LT.Provider,{value:p},T)},uE=Wa;import FA,{useEffect as WA,useMemo as Zt,useRef as KA}from"react";var kE={};lr(kE,{useActiveTyping:()=>LE,useActivities:()=>pe,useActivityKeys:()=>lE,useActivityKeysByRead:()=>mE,useAvatarForBot:()=>wT,useAvatarForUser:()=>zT,useByteFormatter:()=>XT,useConnectivityStatus:()=>xT,useCreateActivityRenderer:()=>qT,useCreateActivityStatusRenderer:()=>et,useCreateAttachmentForScreenReaderRenderer:()=>Tt,useCreateAvatarRenderer:()=>tt,useCreateScrollToEndButtonRenderer:()=>_t,useDateFormatter:()=>_T,useDebouncedNotifications:()=>YE,useDictateInterims:()=>rt,useDictateState:()=>at,useDirection:()=>nt,useDisabled:()=>it,useDismissNotification:()=>ot,useEmitTypingIndicator:()=>It,useGetActivityByKey:()=>pT,useGetHasAcknowledgedByActivityKey:()=>fE,useGetKeyByActivity:()=>dT,useGetKeyByActivityId:()=>BE,useGetSendTimeoutForActivity:()=>ye,useGrammars:()=>st,useGroupActivities:()=>Ct,useGroupTimestamp:()=>Rt,useLanguage:()=>be,useLastAcknowledgedActivityKey:()=>hE,useLastReadActivityKey:()=>UE,useLocalizer:()=>aT,useMarkActivityAsSpoken:()=>mt,useMarkActivityKeyAsRead:()=>VE,useMarkAllAsAcknowledged:()=>MT,useNotifications:()=>ET,usePerformCardAction:()=>ct,usePonyfill:()=>Se,usePostActivity:()=>Dt,useReferenceGrammarID:()=>pt,useRelativeTimeFormatter:()=>Mt,useRenderAttachment:()=>TT,useRenderToast:()=>Ht,useRenderTypingIndicator:()=>Yt,useSendBoxAttachments:()=>AT,useSendBoxValue:()=>ft,useSendEvent:()=>Bt,useSendFiles:()=>bE,useSendMessage:()=>ht,useSendMessageBack:()=>Ut,useSendPostBack:()=>Vt,useSendStatusByActivityKey:()=>ze,useSendTimeoutForActivity:()=>vt,useSendTypingIndicator:()=>bt,useSetNotification:()=>yt,useShouldSpeakIncomingActivity:()=>kt,useStartDictate:()=>Gt,useStopDictate:()=>gt,useStyleOptions:()=>ne,useSubmitSendBox:()=>Ft,useSuggestedActions:()=>Wt,useTimeoutForSend:()=>Kt,useTrackDimension:()=>nT,useTrackEvent:()=>le,useTrackException:()=>Ge,useTrackTiming:()=>wt,useUserID:()=>zt,useUsername:()=>jt,useVoiceSelector:()=>Xt});import{useEffect as za}from"react";import{useCallback as Ka,useState as $a}from"react";function wa(){let[,T]=$a();return Ka(()=>T({}),[T])}var we=wa;function ne(){return[L().styleOptions]}function ja(T){let[{clearTimeout:t,Date:_,setTimeout:E}]=Se(),[{typingAnimationDuration:r}]=ne(),A=we(),O=Ee(({typing:p})=>p),s=_.now();typeof T!="number"&&(T=r);let N=Object.entries(O).reduce((p,[V,{at:x,last:Z,name:_e,role:U}])=>{let u=Z+T;return u>s?{...p,[V]:{at:x,expireAt:u,name:_e,role:U}}:p},{}),H=Math.min(...Object.values(N).map(({expireAt:p})=>p)),D=H&&H-s;return za(()=>{if(D&&isFinite(D)){let p=E(A,Math.max(0,D));return()=>t(p)}},[t,A,E,D]),[N]}var LE=ja;var lE=eT;import{useContext as Xa}from"react";function Le(T=!0){let t=Xa(lT);if(T&&!t)throw new Error("botframework-webchat internal: This hook can only be used under <ActivityAcknowledgementContext>.");return t}function $T(){return Le().activityKeysByReadState}var mE=$T;function wT(){let[{botAvatarImage:T,botAvatarInitials:t}]=ne();return[{image:T,initials:t}]}function zT(){let[{userAvatarImage:T,userAvatarInitials:t}]=ne();return[{image:T,initials:t}]}import{useMemo as xa}from"react";function Me(){return L().localizedGlobalizeState}var dE=1024,PE=1048576,cE=1073741824,Za={form:"long"},jT={form:"short"};function XT(){let[T]=Me();return xa(()=>{let t=T.unitFormatter.bind(T);return _=>_<dE?t("byte",Za)(_):_<PE?t("kilobyte",jT)(~~(_/dE)):_<cE?t("megabyte",jT)(~~(_/PE)):t("gigabyte",jT)(~~(_/cE))},[T])}function xT(){return[Ee(({connectivityStatus:T})=>T)]}import{isValidElement as qa,useMemo as Ja}from"react";function TT(){let{attachmentRenderer:T}=L();return T}function ZT(T){let{activityRenderer:t}=L(),_=TT(),E=T||_;return Ja(()=>(...r)=>{let A=t(...r);return A?O=>{if(qa(A))return A;let s=A((...N)=>E(...N),O);return s||console.warn("botframework-webchat: To hide an activity, the activity renderer should return false. It should not return a function that will return false when called."),s}:!1},[t,E])}function qT(){return ZT()}import DE,{memo as pE,useMemo as tA}from"react";function tT(){return de().getKeyByActivity}var dT=tT;import{useContext as TA}from"react";import{createContext as Qa}from"react";var eA=Qa(void 0),PT=eA;function JT(T=!0){let t=TA(PT);if(T&&!t)throw new Error("botframework-webchat internal: This hook can only be used under <ActivitySendStatusComposer>.");return t}function QT(){return JT().sendStatusByActivityKeyState}var ze=QT;var _A=pE(({activity:T,hideTimestamp:t,nextVisibleActivity:_,sendStatus:E})=>{let{activityStatusRenderer:r}=L();return r({activity:T,hideTimestamp:t,nextVisibleActivity:_,sameTimestampGroup:t,sendState:E==="send failed"||E==="sent"?E:"sending"})}),EA=pE(({activity:T,hideTimestamp:t,nextVisibleActivity:_})=>{let[E]=ze(),A=dT()(T),O=typeof A=="string"&&E.get(A)||"sent";return DE.createElement(_A,{activity:T,hideTimestamp:t,nextVisibleActivity:_,sendStatus:O})});function et(){return tA(()=>({activity:T,nextVisibleActivity:t})=>({hideTimestamp:_}={})=>DE.createElement(EA,{activity:T,hideTimestamp:_,nextVisibleActivity:t}),[])}function Tt(){return L().attachmentForScreenReaderRenderer}import{useMemo as rA}from"react";function tt(){let[T]=ne(),{avatarRenderer:t}=L();return rA(()=>({activity:_})=>{let{from:{role:E}={}}=_,r=t({activity:_,fromUser:E==="user",styleOptions:T});return r!==!1&&typeof r!="function"?(console.warn("botframework-webchat: avatarMiddleware should return a function to render the avatar, or return false if avatar should be hidden. Please refer to HOOKS.md for details."),()=>r):r},[t,T])}function _t(){return L().scrollToEndButtonRenderer}import{useMemo as aA}from"react";function _T(){let[{Date:T}]=Se(),[t]=Me();return aA(()=>E=>t.dateFormatter({skeleton:"MMMMdhm"})(new T(E)),[T,t])}import{useRef as oA}from"react";import HE from"simple-update-in";function cT(T){return typeof T>"u"}var AA=T=>T;function nA(T,t=AA){return T.reduce((_,E)=>{let r=cT(_)?_:t(_),A=cT(E)?E:t(E);return cT(r)?E:cT(A)||r<A?_:E},void 0)}var ME=nA;import{useEffect as iA}from"react";function Et(T,t){let[{clearTimeout:_,Date:E,setTimeout:r}]=Ze();iA(()=>{if(typeof T=="number"){let A=Math.max(0,T-E.now());if(A){let O=r(t,A);return()=>_(O)}t()}},[T,_,E,t,r])}function ET(){return[Ee(({notifications:T})=>T)]}function IA(T){return ME(Object.values(T).filter(({outOfDate:t})=>t).map(({updateNotBefore:t})=>t))}function SA(){let[{Date:T}]=Se(),[{notificationDebounceTimeout:t}]=ne(),[_]=ET(),E=oA({}),r=we(),A=T.now();for(let O of Object.keys(E.current).filter(s=>!(s in _)))E.current=HE(E.current,[O],s=>{if(A<s.updateNotBefore)return{...s,outOfDate:!0}});for(let[,{alt:O,data:s,id:N,level:H,message:D,timestamp:p}]of Object.entries(_))E.current=HE(E.current,[N],V=>V&&O===V.alt&&Object.is(s,V.data)&&H===V.level&&D===V.message&&p===V.timestamp?V:V&&A<V.updateNotBefore?{...V,outOfDate:!0}:{...V,alt:O,data:s,id:N,level:H,message:D,outOfDate:!1,timestamp:p,updateNotBefore:A+t});return Et(IA(E.current),r),[E.current]}var YE=SA;function rt(){return[Ee(({dictateInterims:T})=>T)||[],L().setDictateInterims]}function at(){return[Ee(({dictateState:T})=>T)]}import{useMemo as NA}from"react";function DT(){return["ar-EG","ar-JO","ar-SA","he-IL"]}function At(){return[L().dir]}function rT(){let{localizedStrings:T}=L();return T}function be(T){let{language:t}=L(),_=rT();return T==="speech"?[_.SPEECH_LANGUAGE||t]:[t]}function OA(T,t){return T!=="auto"?T:DT().includes(t)?"rtl":"ltr"}function nt(){let[T]=At(),[t]=be();return[NA(()=>OA(T,t),[T,t])]}function it(){return[L().disabled]}function ot(){return L().dismissNotification}function It(){return L().emitTypingIndicator}function St(){return de().getActivityByKey}var pT=St;function Nt(){return Le().getHasAcknowledgedByActivityKey}var fE=Nt;function Ot(){return de().getKeyByActivityId}var BE=Ot;import{useMemo as sA}from"react";function ye(){let[{sendTimeout:T,sendTimeoutForAttachments:t}]=ne();return sA(()=>({activity:_})=>typeof T=="function"?T(_):_.type==="message"&&_.attachments?.length?t:T,[T,t])}function st(){return[L().grammars]}function Ct(){return L().groupActivities}function Rt(){let[{groupTimestamp:T}]=ne();return[T]}function ut(){return Le().lastAcknowledgedActivityKeyState}var hE=ut;function Lt(){return Le().lastReadActivityKeyState}var UE=Lt;import{isForbiddenPropertyName as RA}from"botframework-webchat-core";import{useCallback as uA}from"react";var{toString:CA}={};function he(T){return CA.call(T)==="[object Object]"}var LA=Ke()["en-US"];function aT({plural:T}={}){let[t]=Me(),_=rT();return uA((E,...r)=>{let A=E;if(T){let O=E;if(he(O)){if(typeof O.other!="string")throw new Error('useLocalizer: Plural string must have "id.other" of string.');if(typeof r[0]!="number")throw new Error("useLocalizer: Plural string must have first argument as a number.")}else throw new Error('useLocalizer: Plural string must pass "id" as a map instead of string.');for(let N of["zero","one","two","few","many"]){let H=typeof E[N];if(H!=="string"&&H!=="undefined")throw new Error(`useLocalizer: Plural string must have "id.${N}" of string or undefined.`)}let s=Object.keys(E).filter(N=>!["zero","one","two","few","many","other"].includes(N));if(s.length)throw new Error(`useLocalizer: Plural string "id" must be either "zero", "one", "two", "few", "many", "other". But not ${s.map(N=>`"${N}"`).join(", ")}.`);A=O[t.plural(r[0])]||O.other}else if(typeof E!="string")throw new Error('useLocalizer: "id" must be a string.');return Object.entries(r).reduce((O,[s,N])=>O.replace(`$${+s+1}`,N),RA(A)?"":_[A]||LA[A]||"")},[t,_,T])}import{useCallback as lA}from"react";function lt(){return L().markActivity}function mt(){let T=lt();return lA(t=>T(t,"speak",!1),[T])}function dt(){return Le().markActivityKeyAsRead}var VE=dt;function Pt(){return Le().markAllAsAcknowledged}var MT=Pt;function ct(){return L().onCardAction}function Dt(){return L().postActivity}function pt(){return[Ee(({referenceGrammarID:T})=>T)]}import{useMemo as mA}from"react";function Mt(){let[{Date:T}]=Se(),[t]=Me(),_=_T(),E=aT();return mA(()=>{let r=t.relativeTimeFormatter.bind(t);return A=>{let O=new T(A),s=O.getTime();if(isNaN(s))return A;let H=T.now()-s,D=Math.floor(H/6e4),p=Math.floor(H/36e5);return D<1?E("ACTIVITY_STATUS_TIMESTAMP_JUST_NOW"):D===1?E("ACTIVITY_STATUS_TIMESTAMP_ONE_MINUTE_AGO"):p<1?r("minute")(-D):p===1?E("ACTIVITY_STATUS_TIMESTAMP_ONE_HOUR_AGO"):p<5?r("hour")(-p):H<=24*36e5?E("ACTIVITY_STATUS_TIMESTAMP_TODAY"):H<=48*36e5?E("ACTIVITY_STATUS_TIMESTAMP_YESTERDAY"):_(O)}},[T,_,t,E])}function Ht(){return L().toastRenderer}function Yt(){return L().typingIndicatorRenderer}import{useMemo as dA}from"react";function AT(){let T=Ee(({sendBoxAttachments:_})=>_),{setSendBoxAttachments:t}=L();return dA(()=>Object.freeze([T,t]),[T,t])}function ft(){return[Ee(({sendBoxValue:T})=>T),L().setSendBox]}function Bt(){return L().sendEvent}import{warnOnce as MA}from"botframework-webchat-core";import{useCallback as HA}from"react";import{useCallback as DA,useMemo as pA}from"react";import{isForbiddenPropertyName as PA}from"botframework-webchat-core";function Pe(T,t){let _;return typeof CustomEvent=="function"?_=new CustomEvent(T):(_=document.createEvent("Event"),_.initEvent(T,!0,!0)),Object.entries(t).forEach(([E,r])=>{PA(E)||(_[E]=r)}),_}import{useCallback as cA}from"react";function ke(){let{telemetryDimensionsRef:T}=L();return cA(()=>({...T.current}),[T])}function vE(T){return typeof T=="number"&&isFinite(T)&&T>=0||typeof T=="string"}function le(){let{onTelemetry:T}=L(),t=ke(),_=DA((E,r,A)=>{if(!r||typeof r!="string")return console.warn('botframework-webchat: "name" passed to "useTrackEvent" hook must be a string.');if(typeof A<"u"){if(he(A)){if(!Object.values(A).every(O=>vE(O)))return console.warn('botframework-webchat: Every value in "data" map passed to "useTrackEvent" hook must be a non-negative finite number or string.')}else if(!vE(A))return console.warn('botframework-webchat: "data" passed to "useTrackEvent" hook must be a non-negative finite number or string.')}T&&T(Pe("event",{data:A,dimensions:t(),level:E,name:r}))},[T,t]);return pA(()=>{let E=_.bind(null,"info");return E.debug=_.bind(null,"debug"),E.error=_.bind(null,"error"),E.info=E,E.warn=_.bind(null,"warn"),E},[_])}var YA=MA("This hook will be removed on or after 2026-04-03. Please use `useSendMessage` instead.");function fA(){let{sendFiles:T}=L(),t=le();return HA(_=>{_&&_.length&&(YA(),T(_),t("sendFiles",{numFiles:_.length,sumSizeInKB:Math.round(_.reduce((E,{size:r})=>E+r,0)/1024)}))},[T,t])}var bE=fA;import{useCallback as BA}from"react";function ht(){let{sendMessage:T}=L(),t=le();return BA((_,E,{attachments:r,channelData:A}={})=>{t("sendMessage",{numAttachments:r?.length||0,sumSizeInKB:Math.round(r?.reduce((O,{blob:{size:s}})=>O+s,0)/1024)}),T(_,E,{attachments:r,channelData:A})},[T,t])}function Ut(){return L().sendMessageBack}function Vt(){return L().sendPostBack}var yE=!0;function vt(T){return yE&&(console.warn('botframework-webchat: "useSendTimeoutForActivity" is deprecated and will be removed on or after 2022-07-28. Please use "useGetSendTimeoutForActivity()" instead.'),yE=!1),ye()({activity:T})}function bt(){return[Ee(({sendTypingIndicator:T})=>T)]}function yt(){return L().setNotification}import{useCallback as hA}from"react";function kt(){let{startSpeakingActivity:T,stopSpeakingActivity:t}=L();return[Ee(({shouldSpeakIncomingActivity:_})=>_),hA(_=>{_?T():t()},[T,t])]}function Gt(){return L().startDictate}function gt(){return L().stopDictate}import{useCallback as UA}from"react";import{useRefFrom as VA}from"use-ref-from";function Ft(){let[T]=AT(),{submitSendBox:t}=L(),_=le(),E=VA(T);return UA((r,{channelData:A}={})=>{let{current:O}=E;return _("submitSendBox",{...r?{method:r}:{},numFiles:O.length,sumSizeInKB:Math.round(O.reduce((s,{blob:{size:N}})=>s+N,0)/1024)}),t(r,A&&{channelData:A})},[E,t,_])}import{useCallback as vA}from"react";function Wt(){let T=Ee(({suggestedActions:_})=>_),{clearSuggestedActions:t}=L();return[T,vA(_=>{if(_&&_.length)throw new Error("SuggestedActions cannot be set to values other than empty.");t()},[t])]}function Kt(){let[{sendTimeout:T}]=ne();return[T]}function nT(){let{trackDimension:T}=L();return T}import{useCallback as bA}from"react";function Ge(){let{onTelemetry:T}=L(),t=ke();return bA((_,E=!0)=>{if(!(_ instanceof Error))return console.warn('botframework-webchat: "error" passed to "useTrackException" must be specified and of type Error.');T&&T(Pe("exception",{dimensions:{...t()},error:_,fatal:!!E}))},[T,t])}import{useCallback as kA}from"react";import yA from"math-random";function $t(T=5){return yA().toString(36).substr(2,T)}function wt(){let[{Date:T}]=Se(),{onTelemetry:t}=L(),_=ke(),E=Ge();return kA(async(r,A)=>{if(!r||typeof r!="string"){console.warn('botframework-webchat: "name" passed to "useTrackTiming" hook must be specified and of type string.');return}else if(typeof A!="function"&&typeof A.then!="function"){console.warn('botframework-webchat: "functionOrPromise" passed to "useTrackTiming" hook must be specified, of type function or Promise.');return}let O=$t();t&&t(Pe("timingstart",{dimensions:_(),name:r,timingId:O}));let s=T.now();try{return await(typeof A=="function"?A():A)}catch(N){throw E(N,!1),N}finally{let N=T.now()-s;t&&t(Pe("timingend",{dimensions:_(),duration:N,name:r,timingId:O}))}},[T,t,_,E])}function zt(){return[L().userID]}function jt(){return[L().username]}import{useCallback as GA}from"react";function Xt(T){let t=L();return GA(_=>t.selectVoice(_,T),[T,t])}function gA(T){return Object.freeze(T)}var GE=gA;function xt(T,t){if(!T&&t||T&&!t)return!1;let _=new Set(T?.keys()),E=new Set(t?.keys());if(_.size!==E.size)return!1;for(let r of E)_.add(r);if(_.size!==E.size)return!1;for(let r of _)if(!Object.is(T.get(r),t.get(r)))return!1;return!0}var $A=-1/0,gE=1/0,wA=({children:T})=>{let[t]=pe(),[{clearTimeout:_,Date:E,setTimeout:r}]=Se(),A=we(),O=tT(),s=ye(),N=KA(Object.freeze(new Map)),H=Zt(()=>Object.freeze(t.reduce((U,u)=>{if(u.from.role==="user"){let B=O(u);if(B){let{channelData:{state:G,"webchat:send-status":f}}=u,J=f||(G==="sent"?"sent":"sending");if(J==="sent")U.set(B,gE);else if(J==="send failed")U.set(B,$A);else{let te=+new E(u.localTimestamp)+s({activity:u});te&&U.set(B,te)}}}return U},new Map)),[t,E,O,s]),D=new Map,p=E.now();for(let[U,u]of H)D.set(U,u===gE?"sent":p>=u?"send failed":"sending");xt(N.current,D)||(N.current=Object.freeze(D));let{current:V}=N,x=Zt(()=>GE([V]),[V]),Z=Zt(()=>({sendStatusByActivityKeyState:x}),[x]),_e=Array.from(H.values()).reduce((U,u)=>u>p&&u<U?u:U,1/0);return WA(()=>{if(_e){let U=r(A,_e-E.now());return()=>_(U)}},[_,E,A,_e,r]),FA.createElement(PT.Provider,{value:Z},T)},FE=wA;var zA=()=>{let[T]=ze(),t=Je(T),_=pT(),E=le();if(t)for(let r of T.keys()){let A=T.get(r),O=t.get(r);if(A&&A!==O){let s=_(r),N=s?.channelData.clientActivityID,H=s?.type,D={hasAttachment:s?.type==="message"&&s.attachments?.length>0?"true":"false",key:r,status:A,...N?{clientActivityID:N}:{},...H?{type:H}:{}};O&&(D.prevStatus=O),E("send-status:change",D)}}return null},WE=zA;import jA from"prop-types";import XA,{useMemo as KE,useRef as xA}from"react";var qt=({children:T,ponyfill:t})=>{if(xA(t).current!==t)throw new Error('botframework-webchat: "ponyfill" props cannot be changed after initial render.');let _=KE(()=>{let r=typeof globalThis>"u"?window:globalThis;return{cancelAnimationFrame:t?.cancelAnimationFrame||(typeof cancelAnimationFrame=="function"?cancelAnimationFrame.bind(r):void 0),cancelIdleCallback:t?.cancelIdleCallback||(typeof cancelIdleCallback=="function"?cancelIdleCallback.bind(r):void 0),clearImmediate:t?.clearImmediate||(typeof clearImmediate=="function"?clearImmediate.bind(r):void 0),clearInterval:t?.clearInterval||(typeof clearInterval=="function"?clearInterval.bind(r):void 0),clearTimeout:t?.clearTimeout||(typeof clearTimeout=="function"?clearTimeout.bind(r):void 0),Date:t?.Date||Date,requestAnimationFrame:t?.requestAnimationFrame||(typeof requestAnimationFrame=="function"?requestAnimationFrame.bind(r):void 0),requestIdleCallback:t?.requestIdleCallback||(typeof requestIdleCallback=="function"?requestIdleCallback.bind(r):void 0),setImmediate:t?.setImmediate||(typeof setImmediate=="function"?setImmediate.bind(r):void 0),setInterval:t?.setInterval||(typeof setInterval=="function"?setInterval.bind(r):void 0),setTimeout:t?.setTimeout||(typeof setTimeout=="function"?setTimeout.bind(r):void 0)}},[t]),E=KE(()=>({ponyfillState:Object.freeze([_])}),[_]);return XA.createElement(OT.Provider,{value:E},T)};qt.defaultProps={ponyfill:void 0};qt.propTypes={ponyfill:jA.any};var $E=qt;import{isForbiddenPropertyName as ZA}from"botframework-webchat-core";function Jt(T,t){return Object.entries(T).reduce((_,[E,r])=>(ZA(E)||(_[E]=t(r,E)),_),{})}function iT(T){return T=T.toLowerCase(),T==="ar-eg"?"ar-EG":T==="ar-jo"?"ar-JO":T.startsWith("ar")?"ar-SA":T.startsWith("bg")?"bg-BG":T.startsWith("ca")?"ca-ES":T.startsWith("cs")?"cs-CZ":T.startsWith("da")?"da-DK":T.startsWith("de")?"de-DE":T.startsWith("el")?"el-GR":T.startsWith("es")?"es-ES":T.startsWith("et")?"et-EE":T.startsWith("eu")?"eu-ES":T.startsWith("fi")?"fi-FI":T.startsWith("fr")?"fr-FR":T.startsWith("gl")?"gl-ES":T.startsWith("he")?"he-IL":T.startsWith("hi")?"hi-IN":T.startsWith("hr")?"hr-HR":T.startsWith("hu")?"hu-HU":T.startsWith("id")?"id-ID":T.startsWith("it")?"it-IT":T.startsWith("ja")?"ja-JP":T.startsWith("kk")?"kk-KZ":T.startsWith("ko")?"ko-KR":T.startsWith("lt")?"lt-LT":T.startsWith("lv")?"lv-LV":T.startsWith("ms")?"ms-MY":T.startsWith("nb")||T.startsWith("nn")||T.startsWith("no")?"nb-NO":T.startsWith("nl")?"nl-NL":T.startsWith("pl")?"pl-PL":T==="pt-br"?"pt-BR":T.startsWith("pt")?"pt-PT":T.startsWith("ro")?"ro-RO":T.startsWith("ru")?"ru-RU":T.startsWith("sk")?"sk-SK":T.startsWith("sl")?"sl-SI":T.startsWith("sr-cyrl")?"sr-Cyrl":T.startsWith("sr-latn")?"sr-Latn":T.startsWith("sv")?"sv-SE":T.startsWith("th")?"th-TH":T.startsWith("tr")?"tr-TR":T.startsWith("uk")?"uk-UA":T.startsWith("vi")?"vi-VN":T.startsWith("yue")||T==="zh-yue"?(T==="zh-yue"&&console.warn('botframework-webchat: The locale "zh-YUE" is being renamed to "yue" and deprecated. It will be removed on or after 2022-02-12.'),"yue"):T==="zh-hant"||T==="zh-tw"?"zh-Hant":T==="zh-hant-hk"||T==="zh-hk"?"zh-Hant-HK":T==="zh-hant-mo"||T==="zh-mo"?"zh-Hant-MO":T==="zh-hans-sg"||T==="zh-sg"?"zh-Hans-SG":T.startsWith("zh")?"zh-Hans":"en-US"}import{warnOnce as qA}from"botframework-webchat-core";import{createChainOfResponsibility as JA}from"react-chain-of-responsibility";import{any as QA,array as en,custom as Tn,safeParse as tn}from"valibot";function oT(T){let t=Tn(N=>typeof N=="function","Middleware must be a function."),_=en(QA([t])),E=N=>tn(_,N).success,r=qA(`"${T}" prop is invalid`),A=N=>{if(N){if(E(N))return Object.isFrozen(N)?N:Object.freeze([...N]);r()}return Object.freeze([])},{Provider:O,Proxy:s}=JA();return{types:{middleware:{},props:{},request:{}},Provider:O,Proxy:s,rectifyProps:A}}var{Provider:wE,Proxy:_n,rectifyProps:En,types:fu}=oT("sendBoxMiddleware");var{Provider:zE,Proxy:rn,rectifyProps:an,types:Uu}=oT("sendBoxToolbarMiddleware");import{useEffect as jE}from"react";function An(){let[T]=be(),t=nT(),_=le();jE(()=>{t("prop:locale",T)},[T,t]),jE(()=>{_("init")},[_])}var XE=An;var nn=()=>(XE(),null),xE=nn;function ZE({language:T},t,_){return[_.locale,T,window.navigator.language,"en-US"].reduce((E,r)=>E||t.find(({lang:A,name:O})=>A===r&&/neural/iu.test(O))||t.find(({lang:A})=>A===r),null)||t[0]}import Fe,{isValidElement as tr}from"react";import{createElement as on,useEffect as qE}from"react";import JE from"prop-types";function Qt(){let{internalErrorBoxClass:T}=L();return[T]}var e_=({error:T,type:t})=>{let[_]=Qt(),E=Ge();return qE(()=>{E(T,!1)},[T,E]),qE(()=>{console.group(`botframework-webchat: ${t}`),console.error(T),console.groupEnd()},[T,t]),!!_&&on(_,{error:T,type:t})};e_.defaultProps={type:void 0};e_.propTypes={error:JE.any.isRequired,type:JE.string};var ge=e_;function je(...T){return t=>{let _=T.reduce((E,r)=>r?[...E,r(t)]:E,[]);return E=>{let r=_.slice(),A=O=>(...s)=>{let N=r[+O];return(N?N(A(O+1)):E)(...s)};return A(0)}}}import er from"prop-types";import Tr,{useCallback as On,useState as sn}from"react";import In,{Component as Sn}from"react";import QE from"prop-types";var Nn=({children:T})=>typeof T=="function"?T():T,IT=class extends Sn{constructor(){super(),this.state={hasError:!1}}componentDidCatch(t){let{onError:_}=this.props;this.setState({hasError:!0}),_(t)}render(){let{children:t}=this.props,{hasError:_}=this.state;return!_&&In.createElement(Nn,null,t)}};IT.defaultProps={children:void 0,onError:void 0};IT.propTypes={children:QE.any,onError:QE.func};var HT=IT;var T_=({children:T,type:t})=>{let[_,E]=sn(),r=On(A=>E(A),[]);return _?Tr.createElement(ge,{error:_,type:t}):Tr.createElement(HT,{onError:r},T)};T_.defaultProps={children:void 0,type:void 0};T_.propTypes={children:er.any,type:er.string};var YT=T_;function fT(T,...t){return(..._)=>je(...t)(..._)(()=>{throw new Error(`reached terminator of ${T}`)})}function _r(T,...t){return(..._)=>{let E=je(...t)(..._)(()=>{throw new Error(`reached terminator of ${T}`)});return(...r)=>Fe.createElement(YT,{type:`render of ${T}`},()=>{try{return E(...r)}catch(A){return Fe.createElement(ge,{error:A,type:`render of ${T}`})}})}}function Ue(T,{strict:t=!1}={},..._){return(...E)=>{let r=je(..._)(...E)(()=>Fe.createElement(ge,{error:new Error(`reached terminator of ${T}`),type:T}));return(...A)=>{try{let O=r(...A);if(O){if(tr(O))return t?(console.error(`botframework-webchat: ${T} should only return either false or a render function.`),!1):Fe.createElement(YT,{type:`render of ${T}`},O)}else return!1;return(...s)=>Fe.createElement(YT,{type:`render of ${T}`},()=>{try{let N=O(...s);return t&&!tr(N)&&console.error(`botframework-webchat: ${T} should return React element only.`),N}catch(N){return Fe.createElement(ge,{error:N,type:`render of ${T}`})}})}catch(O){return Fe.createElement(ge,{error:O,type:`render of ${T}`})}}}}import{sendMessage as Cn,sendMessageBack as Rn,sendPostBack as un}from"botframework-webchat-core";function t_(){return({dispatch:T})=>t=>(..._)=>{let[{cardAction:E,cardAction:{value:r}}]=_;switch(E.type){case"imBack":if(typeof r=="string")T(Cn(r,"imBack"));else throw new Error('cannot send "imBack" with a non-string value');break;case"messageBack":T(Rn(r,E.text,E.displayText));break;case"postBack":T(un(r));break;default:return t(..._)}}}function Er(T,t){let _,E=[],r;return T.forEach(A=>{r&&t(r,A)?_.push(A):(_=[A],E.push(_)),r=A}),E}function rr(T){if(T.from.role==="user"){let{channelData:{state:t,"webchat:send-status":_}}=T;return _||(t==="sent"?"sent":"sending")}}function Ln(T,t,_,{Date:E}){if(_===!1)return!0;if(T&&t){if(rr(T)!==rr(t))return!1;_=typeof _=="number"?_:1/0;let r=new E(T.timestamp).getTime(),A=new E(t.timestamp).getTime();return Math.abs(r-A)<=_}return!1}function __({groupTimestamp:T,ponyfill:t}){return()=>()=>({activities:_})=>({sender:Er(_,(E,r)=>E.from.role===r.from.role),status:Er(_,(E,r)=>Ln(E,r,T,t))})}function E_(T,{setTimeout:t}){return new Promise((_,E)=>{let r=T.subscribe(A=>{_(A),t(()=>r.unsubscribe(),0)},A=>{E(A),t(()=>r.unsubscribe(),0)})})}var S_=mr(Cr()),Zn={clearSuggestedActions:ln,dismissNotification:cn,emitTypingIndicator:Dn,markActivity:pn,postActivity:Mn,sendEvent:Hn,sendFiles:Yn,sendMessage:fn,sendMessageBack:Bn,sendPostBack:hn,setDictateInterims:Un,setDictateState:Vn,setNotification:bn,setSendBox:yn,setSendBoxAttachments:kn,setSendTimeout:Gn,startDictate:Fn,startSpeakingActivity:Wn,stopDictate:Kn,stopSpeakingActivity:$n,submitSendBox:wn};function qn({cardActionMiddleware:T,directLine:t,dispatch:_,markAllAsAcknowledged:E,ponyfill:r}){let A=fT("card action",...T,t_())({dispatch:_});return{onCardAction:(O,{target:s}={})=>(E(),A({cardAction:O,getSignInUrl:O.type==="signin"?()=>{let{value:N}=O;return t.getSessionId?E_(t.getSessionId(),r).then(H=>`${N}${encodeURIComponent(`&code_challenge=${H}`)}`):(console.warn("botframework-webchat: OAuth is not supported on this Direct Line adapter."),N)}:null,target:s}))}}function Jn({groupActivitiesMiddleware:T,groupTimestamp:t,ponyfill:_}){return{groupActivities:fT("group activities",...T,__({groupTimestamp:t,ponyfill:_}))({})}}function Qn(T,t,_){if(_){if(typeof _=="function"){let E=_(T,t);if(!he(E))throw new Error("botframework-webchat: overrideLocalizedStrings function must return an object.");return E}}else return T;if(!he(_))throw new Error("botframework-webchat: overrideLocalizedStrings must be either a function, an object, or falsy.");return{...T,..._}}var N_=({activityMiddleware:T,activityStatusMiddleware:t,attachmentForScreenReaderMiddleware:_,attachmentMiddleware:E,avatarMiddleware:r,cardActionMiddleware:A,children:O,dir:s,directLine:N,disabled:H,downscaleImageToDataURL:D,grammars:p,groupActivitiesMiddleware:V,internalErrorBoxClass:x,locale:Z,onTelemetry:_e,overrideLocalizedStrings:U,renderMarkdown:u,scrollToEndButtonMiddleware:B,selectVoice:G,sendBoxMiddleware:f,sendBoxToolbarMiddleware:J,sendTypingIndicator:te,styleOptions:Ne,toastMiddleware:Ie,typingIndicatorMiddleware:Ve,userID:He,username:Ye})=>{let[fe]=Se(),Oe=SE(),Ae=zn({}),S=ie(()=>s==="ltr"||s==="rtl"?s:"auto",[s]),m=ie(()=>p||[],[p]),j=ie(()=>RT(yT(Ne)),[Ne]);I_(()=>{Oe(vn(Z))},[Oe,Z]),I_(()=>{Oe(gn(!!te))},[Oe,te]),I_(()=>(Oe(mn({directLine:N,userID:He,username:Ye})),()=>{Oe(Pn())}),[Oe,N,He,Ye]);let F=MT(),K=ie(()=>qn({cardActionMiddleware:Object.freeze([...ce(A)]),directLine:N,dispatch:Oe,markAllAsAcknowledged:F,ponyfill:fe}),[A,N,Oe,F,fe]),n=ie(()=>G||ZE.bind(null,{language:Z}),[Z,G]),c=ie(()=>Jn({groupActivitiesMiddleware:Object.freeze([...ce(V)]),groupTimestamp:j.groupTimestamp,ponyfill:fe}),[V,j.groupTimestamp,fe]),l=ie(()=>Jt(Zn,z=>(...se)=>Oe(z(...se))),[Oe]),M=ie(()=>Qn(Ke()[iT(Z)],Z,U),[Z,U]),Y=ie(()=>{let{GLOBALIZE:z,GLOBALIZE_LANGUAGE:se}=M||{};return z||se&&(0,S_.default)(se)||(0,S_.default)("en")},[M]),v=Rr((z,se)=>{if(!z||typeof z!="string")return console.warn("botframework-webchat: Telemetry dimension name must be a string.");let oe=typeof se;if(oe!=="string"&&oe!=="undefined")return console.warn("botframework-webchat: Telemetry dimension data must be a string or undefined.");Ae.current=xn(Ae.current,[z],oe==="undefined"?se:()=>se)},[Ae]),W=ie(()=>Ue("activity",{strict:!1},...ce(T),()=>()=>({activity:z})=>{throw z?new Error(`No renderer for activity of type "${z.type}"`):new Error("No activity to render")})({}),[T]),ee=ie(()=>Ue("activity status",{strict:!1},...ce(t),()=>()=>()=>!1)({}),[t]),Te=ie(()=>Ue("attachment for screen reader",{strict:!0},...ce(_),()=>()=>({attachment:z})=>z?(console.warn(`No renderer for attachment for screen reader of type "${z.contentType}"`),!1):()=>{throw new Error("No attachment to render")})({}),[_]),C=ie(()=>_r("attachment",...ce(E),()=>()=>({attachment:z})=>{throw z?new Error(`No renderer for attachment of type "${z.contentType}"`):new Error("No attachment to render")})({}),[E]),P=ie(()=>Ue("avatar",{strict:!1},...ce(r),()=>()=>()=>!1)({}),[r]),h=ie(()=>Ue("toast",{strict:!1},...ce(Ie),()=>()=>({notification:z})=>{throw z?new Error(`No renderer for notification of type "${z.contentType}"`):new Error("No notification to render")})({}),[Ie]),w=ie(()=>Ue("typing indicator",{strict:!1},...ce(Ve),()=>()=>()=>!1)({}),[Ve]),Q=ie(()=>Ue("scroll to end button",{strict:!0},...ce(B),()=>()=>()=>!1)(),[B]),ue=ie(()=>({...K,...c,...l,activityRenderer:W,activityStatusRenderer:ee,attachmentForScreenReaderRenderer:Te,attachmentRenderer:C,avatarRenderer:P,dir:S,directLine:N,disabled:H,downscaleImageToDataURL:D,grammars:m,internalErrorBoxClass:x,language:Z,localizedGlobalizeState:[Y],localizedStrings:M,onTelemetry:_e,renderMarkdown:u,scrollToEndButtonRenderer:Q,selectVoice:n,sendTypingIndicator:te,styleOptions:j,telemetryDimensionsRef:Ae,toastRenderer:h,trackDimension:v,typingIndicatorRenderer:w,userID:He,username:Ye}),[K,N,H,D,c,l,x,Z,Y,_e,W,ee,Te,C,P,S,m,M,n,j,h,w,u,Q,te,Ae,v,He,Ye]);return me.createElement(s_.Provider,{value:ue},me.createElement(FE,null,me.createElement(wE,{middleware:f||Object.freeze([])},me.createElement(zE,{middleware:J||Object.freeze([])},typeof O=="function"?O(ue):O,me.createElement(WE,null)))),_e&&me.createElement(xE,null))};N_.defaultProps={activityMiddleware:void 0,activityStatusMiddleware:void 0,attachmentForScreenReaderMiddleware:void 0,attachmentMiddleware:void 0,avatarMiddleware:void 0,cardActionMiddleware:void 0,children:void 0,dir:"auto",disabled:!1,downscaleImageToDataURL:void 0,grammars:[],groupActivitiesMiddleware:void 0,internalErrorBoxClass:void 0,locale:window.navigator.language||"en-US",onTelemetry:void 0,overrideLocalizedStrings:void 0,renderMarkdown:void 0,scrollToEndButtonMiddleware:void 0,selectVoice:void 0,sendTypingIndicator:!1,styleOptions:{},toastMiddleware:void 0,typingIndicatorMiddleware:void 0,userID:"",username:""};N_.propTypes={activityMiddleware:d.oneOfType([d.arrayOf(d.func),d.func]),activityStatusMiddleware:d.oneOfType([d.arrayOf(d.func),d.func]),attachmentForScreenReaderMiddleware:d.oneOfType([d.arrayOf(d.func),d.func]),attachmentMiddleware:d.oneOfType([d.arrayOf(d.func),d.func]),avatarMiddleware:d.oneOfType([d.arrayOf(d.func),d.func]),cardActionMiddleware:d.oneOfType([d.arrayOf(d.func),d.func]),children:d.any,dir:d.oneOf(["auto","ltr","rtl"]),directLine:d.shape({activity$:d.shape({subscribe:d.func.isRequired}).isRequired,connectionStatus$:d.shape({subscribe:d.func.isRequired}).isRequired,end:d.func,getSessionId:d.func,postActivity:d.func.isRequired,referenceGrammarID:d.string,token:d.string}).isRequired,disabled:d.bool,downscaleImageToDataURL:d.func,grammars:d.arrayOf(d.string),groupActivitiesMiddleware:d.oneOfType([d.arrayOf(d.func),d.func]),internalErrorBoxClass:d.func,locale:d.string,onTelemetry:d.func,overrideLocalizedStrings:d.oneOfType([d.any,d.func]),renderMarkdown:d.func,scrollToEndButtonMiddleware:d.oneOfType([d.arrayOf(d.func),d.func]),selectVoice:d.func,sendTypingIndicator:d.bool,styleOptions:d.any,toastMiddleware:d.oneOfType([d.arrayOf(d.func),d.func]),typingIndicatorMiddleware:d.oneOfType([d.arrayOf(d.func),d.func]),userID:d.string,username:d.string};var NT=({onTelemetry:T,store:t,..._})=>{let[E]=Se(),r=ie(()=>{let A=t||dn({ponyfill:E}),O=A.getState().internal?.ponyfill||{},s=new Set([...Object.keys(O),...Object.keys(E)]);s.delete("prototype"),Object.getOwnPropertyNames(Object.prototype).forEach(p=>{s.delete(p)});let N=p=>typeof p=="function"&&(""+p).endsWith("() { [native code] }"),H=(p,V)=>N(p)&&N(V)||p===V,D=Array.from(s).filter(p=>!H(O[p],E[p]));return D.length&&console.warn(`botframework-webchat: Ponyfill used in store should match the ponyfill passed in props: ${D.join(", ")}`),A},[E,t]);return me.createElement(Xn,{context:NE,store:r},me.createElement(uE,null,me.createElement(CE,null,me.createElement(N_,{onTelemetry:T,..._}))))};NT.defaultProps={onTelemetry:void 0,store:void 0};NT.propTypes={onTelemetry:d.func,store:d.any};var O_=({internalRenderErrorBox:T,onTelemetry:t,ponyfill:_,...E})=>{let[r,A]=jn(),O=Rr(s=>{console.error("botframework-webchat: Uncaught exception",{error:s}),t&&t(Pe("exception",{error:s,fatal:!0})),A(s)},[t,A]);return r?!!T&&T({error:r,type:"uncaught exception"}):me.createElement(HT,{onError:O},me.createElement($E,{ponyfill:_},me.createElement(NT,{onTelemetry:t,...E})))};O_.defaultProps={...NT.defaultProps,internalRenderErrorBox:void 0,onTelemetry:void 0,ponyfill:void 0};O_.propTypes={...NT.propTypes,internalRenderErrorBox:d.any,onTelemetry:d.func,ponyfill:d.any};var ei=O_;import{isForbiddenPropertyName as ur}from"botframework-webchat-core";var Lr;function Ti(T,t,..._){Lr||(console.warn("botframework-webchat: localize() is deprecated. Please use the useLocalizer() hooks instead. This function will be removed on or after 2022-02-12."),Lr=!0);let E=Ke(),r=iT(t),A=ur(t)?void 0:E[r];return Object.entries(_).reduce((O,[s,N])=>typeof O=="string"?O.replace(`$${+s+1}`,N):O,ur(T)?"":A&&A[T]||E["en-US"][T]||"")}var ti="tsup",_i="esmodules",Ei="4.17.1-main.20240508.bf8dbd9",rl={buildTool:ti,moduleFormat:_i,version:Ei};export{ei as Composer,_n as SendBoxMiddlewareProxy,rn as SendBoxToolbarMiddlewareProxy,rl as buildInfo,je as concatMiddleware,hT as defaultStyleOptions,kE as hooks,Ti as localize,RT as normalizeStyleOptions,En as rectifySendBoxMiddlewareProps,an as rectifySendBoxToolbarMiddlewareProps,Ei as version};
140
140
  /*! For license information please see botframework-webchat-api.mjs.LEGAL.txt */
141
141
  //# sourceMappingURL=botframework-webchat-api.mjs.map