@eshal-bot/chat-widget 0.1.38 → 0.1.40

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.
@@ -56008,21 +56008,22 @@
56008
56008
  // {category} placeholder is substituted at the call site (no i18n
56009
56009
  // interpolation engine here). Rendered through ReactMarkdown so the
56010
56010
  // **bold** segment comes out bold.
56011
- // Original was
56012
- // "Sure! Here are the main topics under **{category}**. Pick one or
56013
- // type your question below."
56014
- // referring to a tag-chip picker (TagSelectorInline) that's been off
56015
- // since EV-901 (SHOW_TAG_SELECTOR_BAR = false in ChatWindow.jsx).
56016
- // With no tag picker rendered, "Pick one" dangled there was
56017
- // literally nothing to pick. Updated to drop the tag hint and tell
56018
- // the user to ask their question directly; the category filter
56019
- // already constrains RAG to the right corner of the knowledge base.
56020
- // (The widget doesn't currently call this string itself — the
56021
- // mirror in frontend/src/lib/i18n/widgetI18n.js is the active
56022
- // copy used by the Testing Lab + chatbot-preview. Kept in sync
56023
- // here so a future widget-side renderer doesn't ship the stale
56024
- // copy.)
56025
- categoryTopicsHeading: "Sure ask anything about **{category}** and I'll answer using only what's published under that topic.",
56011
+ //
56012
+ // Copy history:
56013
+ // v1 "Sure! Here are the main topics under **{category}**. Pick
56014
+ // one or type your question below." (referenced the
56015
+ // TagSelectorInline tag-chip picker; off since EV-901).
56016
+ // v2 "Sure ask anything about **{category}** and I'll answer
56017
+ // using only what's published under that topic." (after the
56018
+ // tag picker was hidden explained the scoped behaviour).
56019
+ // v3 (current) "Please ask your **{category}** question below."
56020
+ // (user feedback 2026-05-29: shorter + friendlier; category
56021
+ // scope is now implicit from the picker UI affordance).
56022
+ //
56023
+ // Kept in sync with frontend/src/lib/i18n/widgetI18n.js (the active
56024
+ // copy used by the Testing Lab + chatbot-preview) so a future
56025
+ // widget-side renderer doesn't ship a stale string.
56026
+ categoryTopicsHeading: "Please ask your **{category}** question below.",
56026
56027
  // Heading shown above the initial-state quick-questions list, in
56027
56028
  // parallel with the category picker's "Choose a topic to get started:".
56028
56029
  quickQuestionsHeadingLabel: "Or ask a quick question:",
@@ -56064,6 +56065,12 @@
56064
56065
  const DICTIONARIES = {
56065
56066
  en: EN,
56066
56067
  ar: {
56068
+ // Topic-picker + quick-questions surface strings. {category} is
56069
+ // substituted verbatim at the call site and rendered through
56070
+ // ReactMarkdown — keep the **{category}** bold wrapper.
56071
+ chooseTopicLabel: "اختر موضوعًا للبدء:",
56072
+ categoryTopicsHeading: "يرجى طرح سؤالك حول **{category}** أدناه.",
56073
+ quickQuestionsHeadingLabel: "أو اطرح سؤالًا سريعًا:",
56067
56074
  typeYourMessage: "اكتب رسالتك هنا...",
56068
56075
  agentIsLoading: "جارٍ تحميل الوكيل...",
56069
56076
  conversationResolved: "تم إنهاء المحادثة",
@@ -56096,6 +56103,12 @@
56096
56103
  allowMicAccess: "السماح بالوصول إلى الميكروفون"
56097
56104
  },
56098
56105
  es: {
56106
+ // Topic-picker + quick-questions surface strings. {category} is
56107
+ // substituted verbatim at the call site and rendered through
56108
+ // ReactMarkdown — keep the **{category}** bold wrapper.
56109
+ chooseTopicLabel: "Elige un tema para empezar:",
56110
+ categoryTopicsHeading: "Por favor, haz tu pregunta sobre **{category}** a continuación.",
56111
+ quickQuestionsHeadingLabel: "O haz una pregunta rápida:",
56099
56112
  typeYourMessage: "Escribe tu mensaje...",
56100
56113
  agentIsLoading: "El agente está cargando...",
56101
56114
  conversationResolved: "Conversación resuelta",
@@ -56128,6 +56141,12 @@
56128
56141
  allowMicAccess: "Permitir acceso al micrófono"
56129
56142
  },
56130
56143
  be: {
56144
+ // Topic-picker + quick-questions surface strings. {category} is
56145
+ // substituted verbatim at the call site and rendered through
56146
+ // ReactMarkdown — keep the **{category}** bold wrapper.
56147
+ chooseTopicLabel: "Выберыце тэму, каб пачаць:",
56148
+ categoryTopicsHeading: "Калі ласка, задайце сваё пытанне пра **{category}** ніжэй.",
56149
+ quickQuestionsHeadingLabel: "Або задайце хуткае пытанне:",
56131
56150
  typeYourMessage: "Увядзіце паведамленне...",
56132
56151
  agentIsLoading: "Агент загружаецца...",
56133
56152
  conversationResolved: "Размова завершана",
@@ -56160,6 +56179,12 @@
56160
56179
  allowMicAccess: "Дазволіць доступ да мікрафона"
56161
56180
  },
56162
56181
  bs: {
56182
+ // Topic-picker + quick-questions surface strings. {category} is
56183
+ // substituted verbatim at the call site and rendered through
56184
+ // ReactMarkdown — keep the **{category}** bold wrapper.
56185
+ chooseTopicLabel: "Odaberite temu za početak:",
56186
+ categoryTopicsHeading: "Molimo postavite svoje pitanje o **{category}** ispod.",
56187
+ quickQuestionsHeadingLabel: "Ili postavite brzo pitanje:",
56163
56188
  typeYourMessage: "Upišite vašu poruku...",
56164
56189
  agentIsLoading: "Agent se učitava...",
56165
56190
  conversationResolved: "Razgovor je završen",
@@ -56192,6 +56217,12 @@
56192
56217
  allowMicAccess: "Dozvoli pristup mikrofonu"
56193
56218
  },
56194
56219
  bg: {
56220
+ // Topic-picker + quick-questions surface strings. {category} is
56221
+ // substituted verbatim at the call site and rendered through
56222
+ // ReactMarkdown — keep the **{category}** bold wrapper.
56223
+ chooseTopicLabel: "Изберете тема, за да започнете:",
56224
+ categoryTopicsHeading: "Моля, задайте въпроса си за **{category}** по-долу.",
56225
+ quickQuestionsHeadingLabel: "Или задайте бърз въпрос:",
56195
56226
  typeYourMessage: "Въведете съобщението си...",
56196
56227
  agentIsLoading: "Агентът се зарежда...",
56197
56228
  conversationResolved: "Разговорът е приключен",
@@ -56224,6 +56255,12 @@
56224
56255
  allowMicAccess: "Позволете достъп до микрофона"
56225
56256
  },
56226
56257
  my: {
56258
+ // Topic-picker + quick-questions surface strings. {category} is
56259
+ // substituted verbatim at the call site and rendered through
56260
+ // ReactMarkdown — keep the **{category}** bold wrapper.
56261
+ chooseTopicLabel: "စတင်ရန် ခေါင်းစဉ်တစ်ခု ရွေးချယ်ပါ:",
56262
+ categoryTopicsHeading: "ကျေးဇူးပြု၍ သင်၏ **{category}** မေးခွန်းကို အောက်တွင် မေးပါ။",
56263
+ quickQuestionsHeadingLabel: "သို့မဟုတ် မြန်ဆန်သော မေးခွန်းတစ်ခု မေးပါ:",
56227
56264
  typeYourMessage: "သင့်မက်ဆေ့ချ်ကို ရိုက်ထည့်ပါ...",
56228
56265
  agentIsLoading: "အေးဂျင့်ကို ဖွင့်နေသည်...",
56229
56266
  conversationResolved: "စကားဝိုင်း ပြီးစီးပြီ",
@@ -56256,6 +56293,12 @@
56256
56293
  allowMicAccess: "မိုက်ခရိုဖုန်း ဝင်ရောက်ခွင့်ပြုပါ"
56257
56294
  },
56258
56295
  ca: {
56296
+ // Topic-picker + quick-questions surface strings. {category} is
56297
+ // substituted verbatim at the call site and rendered through
56298
+ // ReactMarkdown — keep the **{category}** bold wrapper.
56299
+ chooseTopicLabel: "Tria un tema per començar:",
56300
+ categoryTopicsHeading: "Si us plau, fes la teva pregunta sobre **{category}** a continuació.",
56301
+ quickQuestionsHeadingLabel: "O fes una pregunta ràpida:",
56259
56302
  typeYourMessage: "Escriu el teu missatge...",
56260
56303
  agentIsLoading: "L'agent està carregant...",
56261
56304
  conversationResolved: "Conversa resolta",
@@ -56288,6 +56331,12 @@
56288
56331
  allowMicAccess: "Permetre accés al micròfon"
56289
56332
  },
56290
56333
  zh: {
56334
+ // Topic-picker + quick-questions surface strings. {category} is
56335
+ // substituted verbatim at the call site and rendered through
56336
+ // ReactMarkdown — keep the **{category}** bold wrapper.
56337
+ chooseTopicLabel: "选择一个主题开始:",
56338
+ categoryTopicsHeading: "请在下方提出您关于 **{category}** 的问题。",
56339
+ quickQuestionsHeadingLabel: "或者提一个快速问题:",
56291
56340
  typeYourMessage: "输入您的消息...",
56292
56341
  agentIsLoading: "客服正在加载...",
56293
56342
  conversationResolved: "对话已结束",
@@ -56320,6 +56369,12 @@
56320
56369
  allowMicAccess: "允许访问麦克风"
56321
56370
  },
56322
56371
  hr: {
56372
+ // Topic-picker + quick-questions surface strings. {category} is
56373
+ // substituted verbatim at the call site and rendered through
56374
+ // ReactMarkdown — keep the **{category}** bold wrapper.
56375
+ chooseTopicLabel: "Odaberite temu za početak:",
56376
+ categoryTopicsHeading: "Molimo postavite svoje pitanje o **{category}** u nastavku.",
56377
+ quickQuestionsHeadingLabel: "Ili postavite brzo pitanje:",
56323
56378
  typeYourMessage: "Upišite svoju poruku...",
56324
56379
  agentIsLoading: "Agent se učitava...",
56325
56380
  conversationResolved: "Razgovor je završen",
@@ -56352,6 +56407,12 @@
56352
56407
  allowMicAccess: "Dopustite pristup mikrofonu"
56353
56408
  },
56354
56409
  cs: {
56410
+ // Topic-picker + quick-questions surface strings. {category} is
56411
+ // substituted verbatim at the call site and rendered through
56412
+ // ReactMarkdown — keep the **{category}** bold wrapper.
56413
+ chooseTopicLabel: "Vyberte téma a začněte:",
56414
+ categoryTopicsHeading: "Prosím, položte svou otázku ohledně **{category}** níže.",
56415
+ quickQuestionsHeadingLabel: "Nebo položte rychlou otázku:",
56355
56416
  typeYourMessage: "Napište zprávu...",
56356
56417
  agentIsLoading: "Agent se načítá...",
56357
56418
  conversationResolved: "Konverzace ukončena",
@@ -56384,6 +56445,12 @@
56384
56445
  allowMicAccess: "Povolit přístup k mikrofonu"
56385
56446
  },
56386
56447
  da: {
56448
+ // Topic-picker + quick-questions surface strings. {category} is
56449
+ // substituted verbatim at the call site and rendered through
56450
+ // ReactMarkdown — keep the **{category}** bold wrapper.
56451
+ chooseTopicLabel: "Vælg et emne for at komme i gang:",
56452
+ categoryTopicsHeading: "Stil venligst dit spørgsmål om **{category}** nedenfor.",
56453
+ quickQuestionsHeadingLabel: "Eller stil et hurtigt spørgsmål:",
56387
56454
  typeYourMessage: "Skriv din besked...",
56388
56455
  agentIsLoading: "Agenten indlæses...",
56389
56456
  conversationResolved: "Samtale afsluttet",
@@ -56416,6 +56483,12 @@
56416
56483
  allowMicAccess: "Tillad mikrofonadgang"
56417
56484
  },
56418
56485
  nl: {
56486
+ // Topic-picker + quick-questions surface strings. {category} is
56487
+ // substituted verbatim at the call site and rendered through
56488
+ // ReactMarkdown — keep the **{category}** bold wrapper.
56489
+ chooseTopicLabel: "Kies een onderwerp om te beginnen:",
56490
+ categoryTopicsHeading: "Stel hieronder uw vraag over **{category}**.",
56491
+ quickQuestionsHeadingLabel: "Of stel een snelle vraag:",
56419
56492
  typeYourMessage: "Typ je bericht...",
56420
56493
  agentIsLoading: "Agent wordt geladen...",
56421
56494
  conversationResolved: "Gesprek beëindigd",
@@ -56448,6 +56521,12 @@
56448
56521
  allowMicAccess: "Toegang tot microfoon toestaan"
56449
56522
  },
56450
56523
  et: {
56524
+ // Topic-picker + quick-questions surface strings. {category} is
56525
+ // substituted verbatim at the call site and rendered through
56526
+ // ReactMarkdown — keep the **{category}** bold wrapper.
56527
+ chooseTopicLabel: "Vali alustamiseks teema:",
56528
+ categoryTopicsHeading: "Palun esita oma **{category}** küsimus allpool.",
56529
+ quickQuestionsHeadingLabel: "Või esita kiire küsimus:",
56451
56530
  typeYourMessage: "Sisesta oma sõnum...",
56452
56531
  agentIsLoading: "Agent laeb...",
56453
56532
  conversationResolved: "Vestlus lõpetatud",
@@ -56480,6 +56559,12 @@
56480
56559
  allowMicAccess: "Luba mikrofoni juurdepääs"
56481
56560
  },
56482
56561
  fi: {
56562
+ // Topic-picker + quick-questions surface strings. {category} is
56563
+ // substituted verbatim at the call site and rendered through
56564
+ // ReactMarkdown — keep the **{category}** bold wrapper.
56565
+ chooseTopicLabel: "Aloita valitsemalla aihe:",
56566
+ categoryTopicsHeading: "Esitä **{category}**-kysymyksesi alla.",
56567
+ quickQuestionsHeadingLabel: "Tai esitä nopea kysymys:",
56483
56568
  typeYourMessage: "Kirjoita viestisi...",
56484
56569
  agentIsLoading: "Agenttia ladataan...",
56485
56570
  conversationResolved: "Keskustelu päättynyt",
@@ -56512,6 +56597,12 @@
56512
56597
  allowMicAccess: "Salli mikrofonin käyttö"
56513
56598
  },
56514
56599
  fr: {
56600
+ // Topic-picker + quick-questions surface strings. {category} is
56601
+ // substituted verbatim at the call site and rendered through
56602
+ // ReactMarkdown — keep the **{category}** bold wrapper.
56603
+ chooseTopicLabel: "Choisissez un sujet pour commencer :",
56604
+ categoryTopicsHeading: "Veuillez poser votre question sur **{category}** ci-dessous.",
56605
+ quickQuestionsHeadingLabel: "Ou posez une question rapide :",
56515
56606
  typeYourMessage: "Tapez votre message...",
56516
56607
  agentIsLoading: "L'agent est en cours de chargement...",
56517
56608
  conversationResolved: "Conversation terminée",
@@ -56544,6 +56635,12 @@
56544
56635
  allowMicAccess: "Autoriser l'accès au microphone"
56545
56636
  },
56546
56637
  de: {
56638
+ // Topic-picker + quick-questions surface strings. {category} is
56639
+ // substituted verbatim at the call site and rendered through
56640
+ // ReactMarkdown — keep the **{category}** bold wrapper.
56641
+ chooseTopicLabel: "Wählen Sie ein Thema, um zu beginnen:",
56642
+ categoryTopicsHeading: "Bitte stellen Sie Ihre Frage zu **{category}** unten.",
56643
+ quickQuestionsHeadingLabel: "Oder stellen Sie eine schnelle Frage:",
56547
56644
  typeYourMessage: "Geben Sie Ihre Nachricht ein...",
56548
56645
  agentIsLoading: "Agent wird geladen...",
56549
56646
  conversationResolved: "Gespräch beendet",
@@ -56576,6 +56673,12 @@
56576
56673
  allowMicAccess: "Mikrofonzugriff erlauben"
56577
56674
  },
56578
56675
  el: {
56676
+ // Topic-picker + quick-questions surface strings. {category} is
56677
+ // substituted verbatim at the call site and rendered through
56678
+ // ReactMarkdown — keep the **{category}** bold wrapper.
56679
+ chooseTopicLabel: "Επιλέξτε ένα θέμα για να ξεκινήσετε:",
56680
+ categoryTopicsHeading: "Παρακαλώ κάντε την ερώτησή σας σχετικά με το **{category}** παρακάτω.",
56681
+ quickQuestionsHeadingLabel: "Ή κάντε μια γρήγορη ερώτηση:",
56579
56682
  typeYourMessage: "Πληκτρολογήστε το μήνυμά σας...",
56580
56683
  agentIsLoading: "Ο πράκτορας φορτώνει...",
56581
56684
  conversationResolved: "Η συζήτηση ολοκληρώθηκε",
@@ -56608,6 +56711,12 @@
56608
56711
  allowMicAccess: "Επιτρέψτε πρόσβαση στο μικρόφωνο"
56609
56712
  },
56610
56713
  hi: {
56714
+ // Topic-picker + quick-questions surface strings. {category} is
56715
+ // substituted verbatim at the call site and rendered through
56716
+ // ReactMarkdown — keep the **{category}** bold wrapper.
56717
+ chooseTopicLabel: "शुरू करने के लिए एक विषय चुनें:",
56718
+ categoryTopicsHeading: "कृपया अपना **{category}** प्रश्न नीचे पूछें।",
56719
+ quickQuestionsHeadingLabel: "या एक त्वरित प्रश्न पूछें:",
56611
56720
  typeYourMessage: "अपना संदेश लिखें...",
56612
56721
  agentIsLoading: "एजेंट लोड हो रहा है...",
56613
56722
  conversationResolved: "बातचीत समाप्त हुई",
@@ -56642,6 +56751,12 @@
56642
56751
  allowMicAccess: "माइक्रोफ़ोन एक्सेस की अनुमति दें"
56643
56752
  },
56644
56753
  mr: {
56754
+ // Topic-picker + quick-questions surface strings. {category} is
56755
+ // substituted verbatim at the call site and rendered through
56756
+ // ReactMarkdown — keep the **{category}** bold wrapper.
56757
+ chooseTopicLabel: "सुरू करण्यासाठी एक विषय निवडा:",
56758
+ categoryTopicsHeading: "कृपया तुमचा **{category}** प्रश्न खाली विचारा.",
56759
+ quickQuestionsHeadingLabel: "किंवा एक झटपट प्रश्न विचारा:",
56645
56760
  typeYourMessage: "तुमचा संदेश टाइप करा...",
56646
56761
  agentIsLoading: "एजंट लोड होत आहे...",
56647
56762
  conversationResolved: "संभाषण समाप्त",
@@ -56676,6 +56791,12 @@
56676
56791
  allowMicAccess: "मायक्रोफोन प्रवेशास परवानगी द्या"
56677
56792
  },
56678
56793
  hu: {
56794
+ // Topic-picker + quick-questions surface strings. {category} is
56795
+ // substituted verbatim at the call site and rendered through
56796
+ // ReactMarkdown — keep the **{category}** bold wrapper.
56797
+ chooseTopicLabel: "Válassz egy témát a kezdéshez:",
56798
+ categoryTopicsHeading: "Kérjük, tedd fel **{category}** kérdésedet alább.",
56799
+ quickQuestionsHeadingLabel: "Vagy tegyél fel egy gyors kérdést:",
56679
56800
  typeYourMessage: "Írja be az üzenetét...",
56680
56801
  agentIsLoading: "Az ügynök betöltődik...",
56681
56802
  conversationResolved: "Beszélgetés befejezve",
@@ -56708,6 +56829,12 @@
56708
56829
  allowMicAccess: "Mikrofon hozzáférés engedélyezése"
56709
56830
  },
56710
56831
  is: {
56832
+ // Topic-picker + quick-questions surface strings. {category} is
56833
+ // substituted verbatim at the call site and rendered through
56834
+ // ReactMarkdown — keep the **{category}** bold wrapper.
56835
+ chooseTopicLabel: "Veldu efni til að byrja:",
56836
+ categoryTopicsHeading: "Vinsamlegast spurðu spurningu þinnar um **{category}** hér að neðan.",
56837
+ quickQuestionsHeadingLabel: "Eða spurðu fljótlegrar spurningar:",
56711
56838
  typeYourMessage: "Sláðu inn skilaboð...",
56712
56839
  agentIsLoading: "Fulltrúi hleðst...",
56713
56840
  conversationResolved: "Samtali lokið",
@@ -56740,6 +56867,12 @@
56740
56867
  allowMicAccess: "Leyfa aðgang að hljóðnema"
56741
56868
  },
56742
56869
  id: {
56870
+ // Topic-picker + quick-questions surface strings. {category} is
56871
+ // substituted verbatim at the call site and rendered through
56872
+ // ReactMarkdown — keep the **{category}** bold wrapper.
56873
+ chooseTopicLabel: "Pilih topik untuk memulai:",
56874
+ categoryTopicsHeading: "Silakan ajukan pertanyaan **{category}** Anda di bawah.",
56875
+ quickQuestionsHeadingLabel: "Atau ajukan pertanyaan cepat:",
56743
56876
  typeYourMessage: "Ketik pesan Anda...",
56744
56877
  agentIsLoading: "Agen sedang dimuat...",
56745
56878
  conversationResolved: "Percakapan selesai",
@@ -56772,6 +56905,12 @@
56772
56905
  allowMicAccess: "Izinkan akses mikrofon"
56773
56906
  },
56774
56907
  it: {
56908
+ // Topic-picker + quick-questions surface strings. {category} is
56909
+ // substituted verbatim at the call site and rendered through
56910
+ // ReactMarkdown — keep the **{category}** bold wrapper.
56911
+ chooseTopicLabel: "Scegli un argomento per iniziare:",
56912
+ categoryTopicsHeading: "Per favore, poni la tua domanda su **{category}** qui sotto.",
56913
+ quickQuestionsHeadingLabel: "Oppure fai una domanda rapida:",
56775
56914
  typeYourMessage: "Scrivi il tuo messaggio...",
56776
56915
  agentIsLoading: "L'agente sta caricando...",
56777
56916
  conversationResolved: "Conversazione conclusa",
@@ -56804,6 +56943,12 @@
56804
56943
  allowMicAccess: "Consenti l'accesso al microfono"
56805
56944
  },
56806
56945
  ja: {
56946
+ // Topic-picker + quick-questions surface strings. {category} is
56947
+ // substituted verbatim at the call site and rendered through
56948
+ // ReactMarkdown — keep the **{category}** bold wrapper.
56949
+ chooseTopicLabel: "始めるにはトピックを選択してください:",
56950
+ categoryTopicsHeading: "**{category}** に関するご質問を以下にお書きください。",
56951
+ quickQuestionsHeadingLabel: "または、簡単な質問をどうぞ:",
56807
56952
  typeYourMessage: "メッセージを入力してください...",
56808
56953
  agentIsLoading: "エージェントを読み込んでいます...",
56809
56954
  conversationResolved: "会話が終了しました",
@@ -56836,6 +56981,12 @@
56836
56981
  allowMicAccess: "マイクへのアクセスを許可"
56837
56982
  },
56838
56983
  ko: {
56984
+ // Topic-picker + quick-questions surface strings. {category} is
56985
+ // substituted verbatim at the call site and rendered through
56986
+ // ReactMarkdown — keep the **{category}** bold wrapper.
56987
+ chooseTopicLabel: "시작하려면 주제를 선택하세요:",
56988
+ categoryTopicsHeading: "**{category}** 에 대한 질문을 아래에 작성해 주세요.",
56989
+ quickQuestionsHeadingLabel: "또는 간단한 질문을 해보세요:",
56839
56990
  typeYourMessage: "메시지를 입력하세요...",
56840
56991
  agentIsLoading: "상담원을 불러오는 중...",
56841
56992
  conversationResolved: "대화가 종료되었습니다",
@@ -56868,6 +57019,12 @@
56868
57019
  allowMicAccess: "마이크 액세스 허용"
56869
57020
  },
56870
57021
  lv: {
57022
+ // Topic-picker + quick-questions surface strings. {category} is
57023
+ // substituted verbatim at the call site and rendered through
57024
+ // ReactMarkdown — keep the **{category}** bold wrapper.
57025
+ chooseTopicLabel: "Izvēlieties tēmu, lai sāktu:",
57026
+ categoryTopicsHeading: "Lūdzu, uzdodiet savu jautājumu par **{category}** zemāk.",
57027
+ quickQuestionsHeadingLabel: "Vai uzdodiet ātru jautājumu:",
56871
57028
  typeYourMessage: "Ierakstiet savu ziņu...",
56872
57029
  agentIsLoading: "Aģents tiek ielādēts...",
56873
57030
  conversationResolved: "Saruna pabeigta",
@@ -56900,6 +57057,12 @@
56900
57057
  allowMicAccess: "Atļaut piekļuvi mikrofonam"
56901
57058
  },
56902
57059
  lt: {
57060
+ // Topic-picker + quick-questions surface strings. {category} is
57061
+ // substituted verbatim at the call site and rendered through
57062
+ // ReactMarkdown — keep the **{category}** bold wrapper.
57063
+ chooseTopicLabel: "Pasirinkite temą, kad pradėtumėte:",
57064
+ categoryTopicsHeading: "Prašome užduoti savo klausimą apie **{category}** žemiau.",
57065
+ quickQuestionsHeadingLabel: "Arba užduokite greitą klausimą:",
56903
57066
  typeYourMessage: "Įveskite pranešimą...",
56904
57067
  agentIsLoading: "Agentas kraunamas...",
56905
57068
  conversationResolved: "Pokalbis baigtas",
@@ -56932,6 +57095,12 @@
56932
57095
  allowMicAccess: "Leisti prieigą prie mikrofono"
56933
57096
  },
56934
57097
  mk: {
57098
+ // Topic-picker + quick-questions surface strings. {category} is
57099
+ // substituted verbatim at the call site and rendered through
57100
+ // ReactMarkdown — keep the **{category}** bold wrapper.
57101
+ chooseTopicLabel: "Изберете тема за да започнете:",
57102
+ categoryTopicsHeading: "Ве молиме поставете го вашето прашање за **{category}** подолу.",
57103
+ quickQuestionsHeadingLabel: "Или поставете брзо прашање:",
56935
57104
  typeYourMessage: "Напишете ја вашата порака...",
56936
57105
  agentIsLoading: "Агентот се вчитува...",
56937
57106
  conversationResolved: "Разговорот е завршен",
@@ -56964,6 +57133,12 @@
56964
57133
  allowMicAccess: "Дозволи пристап до микрофонот"
56965
57134
  },
56966
57135
  ms: {
57136
+ // Topic-picker + quick-questions surface strings. {category} is
57137
+ // substituted verbatim at the call site and rendered through
57138
+ // ReactMarkdown — keep the **{category}** bold wrapper.
57139
+ chooseTopicLabel: "Pilih topik untuk memulakan:",
57140
+ categoryTopicsHeading: "Sila ajukan soalan **{category}** anda di bawah.",
57141
+ quickQuestionsHeadingLabel: "Atau ajukan soalan ringkas:",
56967
57142
  typeYourMessage: "Taip mesej anda...",
56968
57143
  agentIsLoading: "Ejen sedang dimuatkan...",
56969
57144
  conversationResolved: "Perbualan selesai",
@@ -56996,6 +57171,12 @@
56996
57171
  allowMicAccess: "Benarkan akses mikrofon"
56997
57172
  },
56998
57173
  no: {
57174
+ // Topic-picker + quick-questions surface strings. {category} is
57175
+ // substituted verbatim at the call site and rendered through
57176
+ // ReactMarkdown — keep the **{category}** bold wrapper.
57177
+ chooseTopicLabel: "Velg et emne for å komme i gang:",
57178
+ categoryTopicsHeading: "Vennligst still spørsmålet ditt om **{category}** nedenfor.",
57179
+ quickQuestionsHeadingLabel: "Eller still et raskt spørsmål:",
56999
57180
  typeYourMessage: "Skriv meldingen din...",
57000
57181
  agentIsLoading: "Agenten laster...",
57001
57182
  conversationResolved: "Samtale avsluttet",
@@ -57028,6 +57209,12 @@
57028
57209
  allowMicAccess: "Tillat mikrofontilgang"
57029
57210
  },
57030
57211
  fa: {
57212
+ // Topic-picker + quick-questions surface strings. {category} is
57213
+ // substituted verbatim at the call site and rendered through
57214
+ // ReactMarkdown — keep the **{category}** bold wrapper.
57215
+ chooseTopicLabel: "برای شروع، یک موضوع را انتخاب کنید:",
57216
+ categoryTopicsHeading: "لطفاً سؤال خود درباره **{category}** را در زیر مطرح کنید.",
57217
+ quickQuestionsHeadingLabel: "یا یک سؤال سریع بپرسید:",
57031
57218
  typeYourMessage: "پیام خود را تایپ کنید...",
57032
57219
  agentIsLoading: "در حال بارگذاری نماینده...",
57033
57220
  conversationResolved: "مکالمه به پایان رسید",
@@ -57060,6 +57247,12 @@
57060
57247
  allowMicAccess: "اجازه دسترسی به میکروفون"
57061
57248
  },
57062
57249
  pl: {
57250
+ // Topic-picker + quick-questions surface strings. {category} is
57251
+ // substituted verbatim at the call site and rendered through
57252
+ // ReactMarkdown — keep the **{category}** bold wrapper.
57253
+ chooseTopicLabel: "Wybierz temat, aby rozpocząć:",
57254
+ categoryTopicsHeading: "Proszę zadać pytanie dotyczące **{category}** poniżej.",
57255
+ quickQuestionsHeadingLabel: "Lub zadaj szybkie pytanie:",
57063
57256
  typeYourMessage: "Wpisz wiadomość...",
57064
57257
  agentIsLoading: "Agent się ładuje...",
57065
57258
  conversationResolved: "Rozmowa zakończona",
@@ -57092,6 +57285,12 @@
57092
57285
  allowMicAccess: "Zezwól na dostęp do mikrofonu"
57093
57286
  },
57094
57287
  pt: {
57288
+ // Topic-picker + quick-questions surface strings. {category} is
57289
+ // substituted verbatim at the call site and rendered through
57290
+ // ReactMarkdown — keep the **{category}** bold wrapper.
57291
+ chooseTopicLabel: "Escolha um tópico para começar:",
57292
+ categoryTopicsHeading: "Por favor, faça sua pergunta sobre **{category}** abaixo.",
57293
+ quickQuestionsHeadingLabel: "Ou faça uma pergunta rápida:",
57095
57294
  typeYourMessage: "Digite sua mensagem...",
57096
57295
  agentIsLoading: "O agente está carregando...",
57097
57296
  conversationResolved: "Conversa encerrada",
@@ -57124,6 +57323,12 @@
57124
57323
  allowMicAccess: "Permitir acesso ao microfone"
57125
57324
  },
57126
57325
  ro: {
57326
+ // Topic-picker + quick-questions surface strings. {category} is
57327
+ // substituted verbatim at the call site and rendered through
57328
+ // ReactMarkdown — keep the **{category}** bold wrapper.
57329
+ chooseTopicLabel: "Alegeți un subiect pentru a începe:",
57330
+ categoryTopicsHeading: "Vă rugăm să adresați întrebarea dvs. despre **{category}** mai jos.",
57331
+ quickQuestionsHeadingLabel: "Sau puneți o întrebare rapidă:",
57127
57332
  typeYourMessage: "Scrieți mesajul dvs...",
57128
57333
  agentIsLoading: "Agentul se încarcă...",
57129
57334
  conversationResolved: "Conversație încheiată",
@@ -57156,6 +57361,12 @@
57156
57361
  allowMicAccess: "Permiteți accesul la microfon"
57157
57362
  },
57158
57363
  ru: {
57364
+ // Topic-picker + quick-questions surface strings. {category} is
57365
+ // substituted verbatim at the call site and rendered through
57366
+ // ReactMarkdown — keep the **{category}** bold wrapper.
57367
+ chooseTopicLabel: "Выберите тему, чтобы начать:",
57368
+ categoryTopicsHeading: "Пожалуйста, задайте свой вопрос о **{category}** ниже.",
57369
+ quickQuestionsHeadingLabel: "Или задайте быстрый вопрос:",
57159
57370
  typeYourMessage: "Введите ваше сообщение...",
57160
57371
  agentIsLoading: "Агент загружается...",
57161
57372
  conversationResolved: "Разговор завершен",
@@ -57188,6 +57399,12 @@
57188
57399
  allowMicAccess: "Разрешить доступ к микрофону"
57189
57400
  },
57190
57401
  sr: {
57402
+ // Topic-picker + quick-questions surface strings. {category} is
57403
+ // substituted verbatim at the call site and rendered through
57404
+ // ReactMarkdown — keep the **{category}** bold wrapper.
57405
+ chooseTopicLabel: "Изаберите тему да бисте започели:",
57406
+ categoryTopicsHeading: "Молимо поставите своје питање о **{category}** испод.",
57407
+ quickQuestionsHeadingLabel: "Или поставите брзо питање:",
57191
57408
  typeYourMessage: "Укуцајте вашу поруку...",
57192
57409
  agentIsLoading: "Агент се учитава...",
57193
57410
  conversationResolved: "Разговор је завршен",
@@ -57220,6 +57437,12 @@
57220
57437
  allowMicAccess: "Дозволи приступ микрофону"
57221
57438
  },
57222
57439
  sk: {
57440
+ // Topic-picker + quick-questions surface strings. {category} is
57441
+ // substituted verbatim at the call site and rendered through
57442
+ // ReactMarkdown — keep the **{category}** bold wrapper.
57443
+ chooseTopicLabel: "Vyberte tému, aby ste začali:",
57444
+ categoryTopicsHeading: "Prosím, položte svoju otázku o **{category}** nižšie.",
57445
+ quickQuestionsHeadingLabel: "Alebo položte rýchlu otázku:",
57223
57446
  typeYourMessage: "Napíšte svoju správu...",
57224
57447
  agentIsLoading: "Agent sa načítava...",
57225
57448
  conversationResolved: "Konverzácia ukončená",
@@ -57252,6 +57475,12 @@
57252
57475
  allowMicAccess: "Povoliť prístup k mikrofónu"
57253
57476
  },
57254
57477
  sl: {
57478
+ // Topic-picker + quick-questions surface strings. {category} is
57479
+ // substituted verbatim at the call site and rendered through
57480
+ // ReactMarkdown — keep the **{category}** bold wrapper.
57481
+ chooseTopicLabel: "Izberite temo za začetek:",
57482
+ categoryTopicsHeading: "Prosimo, postavite vprašanje o **{category}** spodaj.",
57483
+ quickQuestionsHeadingLabel: "Ali postavite hitro vprašanje:",
57255
57484
  typeYourMessage: "Vnesite svoje sporočilo...",
57256
57485
  agentIsLoading: "Agent se nalaga...",
57257
57486
  conversationResolved: "Pogovor je končan",
@@ -57284,6 +57513,12 @@
57284
57513
  allowMicAccess: "Dovoli dostop do mikrofona"
57285
57514
  },
57286
57515
  sv: {
57516
+ // Topic-picker + quick-questions surface strings. {category} is
57517
+ // substituted verbatim at the call site and rendered through
57518
+ // ReactMarkdown — keep the **{category}** bold wrapper.
57519
+ chooseTopicLabel: "Välj ett ämne för att komma igång:",
57520
+ categoryTopicsHeading: "Ställ gärna din **{category}**-fråga nedan.",
57521
+ quickQuestionsHeadingLabel: "Eller ställ en snabb fråga:",
57287
57522
  typeYourMessage: "Skriv ditt meddelande...",
57288
57523
  agentIsLoading: "Agenten laddas...",
57289
57524
  conversationResolved: "Konversation avslutad",
@@ -57316,6 +57551,12 @@
57316
57551
  allowMicAccess: "Tillåt mikrofonåtkomst"
57317
57552
  },
57318
57553
  th: {
57554
+ // Topic-picker + quick-questions surface strings. {category} is
57555
+ // substituted verbatim at the call site and rendered through
57556
+ // ReactMarkdown — keep the **{category}** bold wrapper.
57557
+ chooseTopicLabel: "เลือกหัวข้อเพื่อเริ่มต้น:",
57558
+ categoryTopicsHeading: "โปรดถามคำถามเกี่ยวกับ **{category}** ด้านล่าง",
57559
+ quickQuestionsHeadingLabel: "หรือถามคำถามด่วน:",
57319
57560
  typeYourMessage: "พิมพ์ข้อความของคุณ...",
57320
57561
  agentIsLoading: "กำลังโหลดตัวแทน...",
57321
57562
  conversationResolved: "การสนทนาสิ้นสุดลง",
@@ -57348,6 +57589,12 @@
57348
57589
  allowMicAccess: "อนุญาตการเข้าถึงไมโครโฟน"
57349
57590
  },
57350
57591
  tr: {
57592
+ // Topic-picker + quick-questions surface strings. {category} is
57593
+ // substituted verbatim at the call site and rendered through
57594
+ // ReactMarkdown — keep the **{category}** bold wrapper.
57595
+ chooseTopicLabel: "Başlamak için bir konu seçin:",
57596
+ categoryTopicsHeading: "Lütfen **{category}** sorunuzu aşağıya yazın.",
57597
+ quickQuestionsHeadingLabel: "Veya hızlı bir soru sorun:",
57351
57598
  typeYourMessage: "Mesajınızı yazın...",
57352
57599
  agentIsLoading: "Temsilci yükleniyor...",
57353
57600
  conversationResolved: "Görüşme sonlandırıldı",
@@ -57380,6 +57627,12 @@
57380
57627
  allowMicAccess: "Mikrofon erişimine izin ver"
57381
57628
  },
57382
57629
  uk: {
57630
+ // Topic-picker + quick-questions surface strings. {category} is
57631
+ // substituted verbatim at the call site and rendered through
57632
+ // ReactMarkdown — keep the **{category}** bold wrapper.
57633
+ chooseTopicLabel: "Виберіть тему, щоб почати:",
57634
+ categoryTopicsHeading: "Будь ласка, поставте своє запитання щодо **{category}** нижче.",
57635
+ quickQuestionsHeadingLabel: "Або поставте швидке запитання:",
57383
57636
  typeYourMessage: "Введіть ваше повідомлення...",
57384
57637
  agentIsLoading: "Агент завантажується...",
57385
57638
  conversationResolved: "Розмову завершено",
@@ -57412,6 +57665,12 @@
57412
57665
  allowMicAccess: "Дозволити доступ до мікрофона"
57413
57666
  },
57414
57667
  ur: {
57668
+ // Topic-picker + quick-questions surface strings. {category} is
57669
+ // substituted verbatim at the call site and rendered through
57670
+ // ReactMarkdown — keep the **{category}** bold wrapper.
57671
+ chooseTopicLabel: "شروع کرنے کے لیے ایک موضوع منتخب کریں:",
57672
+ categoryTopicsHeading: "براہ کرم اپنا **{category}** سوال نیچے پوچھیں۔",
57673
+ quickQuestionsHeadingLabel: "یا کوئی فوری سوال پوچھیں:",
57415
57674
  typeYourMessage: "اپنا پیغام ٹائپ کریں...",
57416
57675
  agentIsLoading: "ایجنٹ لوڈ ہو رہا ہے...",
57417
57676
  conversationResolved: "گفتگو مکمل",
@@ -57444,6 +57703,12 @@
57444
57703
  allowMicAccess: "مائیکروفون تک رسائی کی اجازت دیں"
57445
57704
  },
57446
57705
  vi: {
57706
+ // Topic-picker + quick-questions surface strings. {category} is
57707
+ // substituted verbatim at the call site and rendered through
57708
+ // ReactMarkdown — keep the **{category}** bold wrapper.
57709
+ chooseTopicLabel: "Chọn một chủ đề để bắt đầu:",
57710
+ categoryTopicsHeading: "Vui lòng đặt câu hỏi của bạn về **{category}** bên dưới.",
57711
+ quickQuestionsHeadingLabel: "Hoặc đặt một câu hỏi nhanh:",
57447
57712
  typeYourMessage: "Nhập tin nhắn của bạn...",
57448
57713
  agentIsLoading: "Đang tải trợ lý...",
57449
57714
  conversationResolved: "Cuộc trò chuyện đã kết thúc",
@@ -59383,6 +59648,7 @@
59383
59648
  (activeCategory === null || activeCategory === void 0 ? void 0 : activeCategory.tags) || [];
59384
59649
  const handleSelectCategory = reactExports.useCallback(categoryId => {
59385
59650
  if (!onWidgetFilterChange) return;
59651
+ const prevId = (widgetFilter === null || widgetFilter === void 0 ? void 0 : widgetFilter.category) || null;
59386
59652
  if (!categoryId) {
59387
59653
  onWidgetFilterChange(null);
59388
59654
  return;
@@ -59393,16 +59659,22 @@
59393
59659
  });
59394
59660
  setCategoryPickUserMsgCount(userMessageCount);
59395
59661
 
59396
- // EV-901: single click = single answer. Send the category label
59397
- // as a user inquiry so the bot responds directly, instead of the
59398
- // old two-step flow that synthesized a "here are sub-topics" stub
59399
- // and waited for the user to pick a sub-tag.
59400
- if (onDirectSend) {
59662
+ // Initial-state pick: inject a localized assistant ack bubble
59663
+ // ("Please ask your **{category}** question below.") to mirror
59664
+ // the testing-lab / chatbot-preview behaviour (InlineChat.tsx).
59665
+ // Mid-conversation switches stay silent the top CategoryTabsBar
59666
+ // is enough affordance there. Same-chip re-tap is a no-op too.
59667
+ // Replaces any prior ack bubble so switching categories shows
59668
+ // ONE bubble at a time, not a growing stack.
59669
+ if (!hasUserMessages && categoryId !== prevId && onSynthesizeAssistantMessage) {
59401
59670
  const cat = (filterCategories || []).find(c => c.id === categoryId);
59402
59671
  const label = (cat === null || cat === void 0 ? void 0 : cat.label) || categoryId;
59403
- onDirectSend(label);
59672
+ const heading = t("categoryTopicsHeading").replace("{category}", label);
59673
+ onSynthesizeAssistantMessage(heading, {
59674
+ replaceMarker: "category-intro"
59675
+ });
59404
59676
  }
59405
- }, [onWidgetFilterChange, userMessageCount, filterCategories, onDirectSend]);
59677
+ }, [onWidgetFilterChange, widgetFilter, userMessageCount, filterCategories, hasUserMessages, onSynthesizeAssistantMessage, t]);
59406
59678
  reactExports.useCallback(tag => {
59407
59679
  const categoryId = (widgetFilter === null || widgetFilter === void 0 ? void 0 : widgetFilter.category) || (activeCategory === null || activeCategory === void 0 ? void 0 : activeCategory.id);
59408
59680
  if (categoryId && onWidgetFilterChange) {
@@ -59433,8 +59705,13 @@
59433
59705
 
59434
59706
  // QuickQuestions are hidden when the bottom slot is occupied by the
59435
59707
  // tag selector — the user explicitly asked for tag pills to take the
59436
- // place of QQ on the initial screen.
59437
- const shouldShowQuickQuestions = !hasUserMessages && quickQuestions.length > 0 && quickQuestionsEnabled && !showTagSelector;
59708
+ // place of QQ on the initial screen. Also hidden once a category is
59709
+ // picked in the initial state: the category-intro ack bubble
59710
+ // ("Please ask your X question below.") explicitly cues the user to
59711
+ // type their question, so showing conversation-starter chips
59712
+ // underneath would contradict that affordance — matches the
59713
+ // chatbot-preview behaviour.
59714
+ const shouldShowQuickQuestions = !hasUserMessages && quickQuestions.length > 0 && quickQuestionsEnabled && !showTagSelector && !(widgetFilter !== null && widgetFilter !== void 0 && widgetFilter.category);
59438
59715
  const hasOnboardingQuestions = onboardingQuestions && onboardingQuestions.length > 0;
59439
59716
  const isCsatEnabled = Boolean(csatEnabled);
59440
59717
  const shouldHideResolveForOnboarding = onboardingEnabled && hasOnboardingQuestions && !onboardingCompleted;
@@ -60078,7 +60355,7 @@
60078
60355
 
60079
60356
  // Map API response to widget props (use props as overrides if provided)
60080
60357
  const widgetConfig = reactExports.useMemo(() => {
60081
- var _agentConfig$config, _cfg$identity, _cfg$branding, _cfg$typography, _cfg$messages, _cfg$voice, _cfg$onboarding, _cfg$disclaimer, _cfg$csat, _cfg$inactivity, _cfg$behavior, _cfg$security, _cfg$layout, _ref2, _ref3, _messages$bundles$loc, _messages$bundles, _messages$bundles2, _ref4, _ref5, _ref6, _ref7, _branding$chatbotAvat, _branding$chatbotAvat2, _ref8, _ref9, _ref0, _ref1, _ref10, _ref11, _ref12, _ref13, _ref14, _ref15, _ref16, _ref17, _ref18, _ref19, _inactivity$timeoutVa, _inactivity$timeoutUn, _ref20, _ref21, _ref22, _ref23, _ref24, _ref25, _ref26, _ref27, _csat$enabled, _csat$format, _csat$prompt, _csat$triggerType, _csat$idleTimeoutMins, _csat$followUpEnabled, _csat$followUpPrompt, _behavior$autoPromptE, _behavior$allowFeedba;
60358
+ var _agentConfig$config, _cfg$identity, _cfg$branding, _cfg$typography, _cfg$messages, _cfg$voice, _cfg$onboarding, _cfg$disclaimer, _cfg$csat, _cfg$inactivity, _cfg$behavior, _cfg$security, _cfg$layout, _ref2, _messages$bundles$loc, _messages$bundles, _messages$bundles$en, _messages$bundles2, _ref3, _ref4, _ref5, _ref6, _branding$chatbotAvat, _branding$chatbotAvat2, _ref7, _ref8, _ref9, _ref0, _ref1, _ref10, _ref11, _ref12, _ref13, _ref14, _ref15, _ref16, _ref17, _ref18, _inactivity$timeoutVa, _inactivity$timeoutUn, _ref19, _ref20, _ref21, _ref22, _ref23, _ref24, _ref25, _ref26, _csat$enabled, _csat$format, _csat$prompt, _csat$triggerType, _csat$idleTimeoutMins, _csat$followUpEnabled, _csat$followUpPrompt, _behavior$autoPromptE, _behavior$allowFeedba;
60082
60359
  if (!agentConfig) {
60083
60360
  return null;
60084
60361
  }
@@ -60098,55 +60375,69 @@
60098
60375
  const security = (_cfg$security = cfg.security) !== null && _cfg$security !== void 0 ? _cfg$security : {};
60099
60376
  const layout = (_cfg$layout = cfg.layout) !== null && _cfg$layout !== void 0 ? _cfg$layout : {};
60100
60377
  const locale = (_ref2 = defaultLanguage !== null && defaultLanguage !== void 0 ? defaultLanguage : messages.defaultLocale) !== null && _ref2 !== void 0 ? _ref2 : "en";
60101
- const bundle = (_ref3 = (_messages$bundles$loc = (_messages$bundles = messages.bundles) === null || _messages$bundles === void 0 ? void 0 : _messages$bundles[locale]) !== null && _messages$bundles$loc !== void 0 ? _messages$bundles$loc : (_messages$bundles2 = messages.bundles) === null || _messages$bundles2 === void 0 ? void 0 : _messages$bundles2["en"]) !== null && _ref3 !== void 0 ? _ref3 : {};
60378
+ // Per-field English fallback for the localized bundle. We can't use
60379
+ // `bundles[locale] ?? bundles.en` because `??` only catches
60380
+ // null/undefined — and the Languages config UI doesn't currently
60381
+ // expose per-language welcome / quickQuestions text, so picking
60382
+ // Hindi (etc.) as default leaves `bundles.hi = { welcome: "",
60383
+ // quickQuestions: [] }`. The empty string would shadow English and
60384
+ // useChatState (`if (!welcomeMessage) return []`) silently skips
60385
+ // the greeting bubble. Treat empty string / empty array as
60386
+ // "missing" and fall back to the English bundle for that field.
60387
+ const localeBundle = (_messages$bundles$loc = (_messages$bundles = messages.bundles) === null || _messages$bundles === void 0 ? void 0 : _messages$bundles[locale]) !== null && _messages$bundles$loc !== void 0 ? _messages$bundles$loc : {};
60388
+ const enBundle = (_messages$bundles$en = (_messages$bundles2 = messages.bundles) === null || _messages$bundles2 === void 0 ? void 0 : _messages$bundles2["en"]) !== null && _messages$bundles$en !== void 0 ? _messages$bundles$en : {};
60389
+ const bundle = {
60390
+ welcome: localeBundle.welcome || enBundle.welcome,
60391
+ quickQuestions: Array.isArray(localeBundle.quickQuestions) && localeBundle.quickQuestions.length > 0 ? localeBundle.quickQuestions : enBundle.quickQuestions
60392
+ };
60102
60393
 
60103
60394
  // Enum values from the DB are UPPER_SNAKE_CASE; widget uses lower-kebab-case
60104
60395
  const toLauncherPos = val => val ? val.toLowerCase().replace(/_/g, "-") : "bottom-right";
60105
60396
  const toDisclaimerPos = val => val ? val.toLowerCase() : "top";
60106
- const finalAllowedDomains = (_ref4 = allowedDomains !== null && allowedDomains !== void 0 ? allowedDomains : security.allowedDomains) !== null && _ref4 !== void 0 ? _ref4 : [];
60397
+ const finalAllowedDomains = (_ref3 = allowedDomains !== null && allowedDomains !== void 0 ? allowedDomains : security.allowedDomains) !== null && _ref3 !== void 0 ? _ref3 : [];
60107
60398
  return {
60108
60399
  darkMode: darkMode !== null && darkMode !== void 0 ? darkMode : false,
60109
- primaryColor: (_ref5 = primaryColor !== null && primaryColor !== void 0 ? primaryColor : branding.brandColor) !== null && _ref5 !== void 0 ? _ref5 : "#2563eb",
60110
- companyName: (_ref6 = companyName !== null && companyName !== void 0 ? companyName : identity.companyName) !== null && _ref6 !== void 0 ? _ref6 : "Support Team",
60400
+ primaryColor: (_ref4 = primaryColor !== null && primaryColor !== void 0 ? primaryColor : branding.brandColor) !== null && _ref4 !== void 0 ? _ref4 : "#2563eb",
60401
+ companyName: (_ref5 = companyName !== null && companyName !== void 0 ? companyName : identity.companyName) !== null && _ref5 !== void 0 ? _ref5 : "Support Team",
60111
60402
  conciergeName: conciergeName !== null && conciergeName !== void 0 ? conciergeName : identity.conciergeName,
60112
- companyLogo: (_ref7 = companyLogo !== null && companyLogo !== void 0 ? companyLogo : branding.avatar) !== null && _ref7 !== void 0 ? _ref7 : null,
60403
+ companyLogo: (_ref6 = companyLogo !== null && companyLogo !== void 0 ? companyLogo : branding.avatar) !== null && _ref6 !== void 0 ? _ref6 : null,
60113
60404
  chatbotAvatarEnabled: (_branding$chatbotAvat = branding.chatbotAvatarEnabled) !== null && _branding$chatbotAvat !== void 0 ? _branding$chatbotAvat : false,
60114
60405
  chatbotAvatar: (_branding$chatbotAvat2 = branding.chatbotAvatar) !== null && _branding$chatbotAvat2 !== void 0 ? _branding$chatbotAvat2 : null,
60115
- welcomeMessage: (_ref8 = welcomeMessage !== null && welcomeMessage !== void 0 ? welcomeMessage : bundle.welcome) !== null && _ref8 !== void 0 ? _ref8 : "Hi! How can we help?",
60116
- quickQuestions: (_ref9 = quickQuestions !== null && quickQuestions !== void 0 ? quickQuestions : bundle.quickQuestions) !== null && _ref9 !== void 0 ? _ref9 : [],
60406
+ welcomeMessage: (_ref7 = welcomeMessage !== null && welcomeMessage !== void 0 ? welcomeMessage : bundle.welcome) !== null && _ref7 !== void 0 ? _ref7 : "Hi! How can we help?",
60407
+ quickQuestions: (_ref8 = quickQuestions !== null && quickQuestions !== void 0 ? quickQuestions : bundle.quickQuestions) !== null && _ref8 !== void 0 ? _ref8 : [],
60117
60408
  quickQuestionsEnabled: quickQuestionsEnabled !== null && quickQuestionsEnabled !== void 0 ? quickQuestionsEnabled : messages.quickQuestionsEnabled,
60118
60409
  textColor: textColor !== null && textColor !== void 0 ? textColor : "#000000",
60119
60410
  agentMessageBubbleColor: agentMessageBubbleColor !== null && agentMessageBubbleColor !== void 0 ? agentMessageBubbleColor : typography.agentMessageBubbleColor,
60120
60411
  userMessageBoxColor: userMessageBoxColor !== null && userMessageBoxColor !== void 0 ? userMessageBoxColor : typography.userMessageBoxColor,
60121
- assistantTextColor: (_ref0 = assistantTextColor !== null && assistantTextColor !== void 0 ? assistantTextColor : typography.assistantTextColor) !== null && _ref0 !== void 0 ? _ref0 : "#000000",
60122
- userTextColor: (_ref1 = userTextColor !== null && userTextColor !== void 0 ? userTextColor : typography.userTextColor) !== null && _ref1 !== void 0 ? _ref1 : "#000000",
60123
- fontFamily: (_ref10 = fontFamily !== null && fontFamily !== void 0 ? fontFamily : typography.agentMessageBubbleFontFamily) !== null && _ref10 !== void 0 ? _ref10 : "Inter",
60124
- fontSize: (_ref11 = fontSize !== null && fontSize !== void 0 ? fontSize : typography.agentMessageBubbleFontSize) !== null && _ref11 !== void 0 ? _ref11 : "14px",
60412
+ assistantTextColor: (_ref9 = assistantTextColor !== null && assistantTextColor !== void 0 ? assistantTextColor : typography.assistantTextColor) !== null && _ref9 !== void 0 ? _ref9 : "#000000",
60413
+ userTextColor: (_ref0 = userTextColor !== null && userTextColor !== void 0 ? userTextColor : typography.userTextColor) !== null && _ref0 !== void 0 ? _ref0 : "#000000",
60414
+ fontFamily: (_ref1 = fontFamily !== null && fontFamily !== void 0 ? fontFamily : typography.agentMessageBubbleFontFamily) !== null && _ref1 !== void 0 ? _ref1 : "Inter",
60415
+ fontSize: (_ref10 = fontSize !== null && fontSize !== void 0 ? fontSize : typography.agentMessageBubbleFontSize) !== null && _ref10 !== void 0 ? _ref10 : "14px",
60125
60416
  defaultLanguage: locale,
60126
60417
  organizationId: orgId,
60127
- headerTextBold: (_ref12 = headerTextBold !== null && headerTextBold !== void 0 ? headerTextBold : typography.headerTextBold) !== null && _ref12 !== void 0 ? _ref12 : false,
60128
- headerTextItalic: (_ref13 = headerTextItalic !== null && headerTextItalic !== void 0 ? headerTextItalic : typography.headerTextItalic) !== null && _ref13 !== void 0 ? _ref13 : false,
60418
+ headerTextBold: (_ref11 = headerTextBold !== null && headerTextBold !== void 0 ? headerTextBold : typography.headerTextBold) !== null && _ref11 !== void 0 ? _ref11 : false,
60419
+ headerTextItalic: (_ref12 = headerTextItalic !== null && headerTextItalic !== void 0 ? headerTextItalic : typography.headerTextItalic) !== null && _ref12 !== void 0 ? _ref12 : false,
60129
60420
  headerTextColor: typography.headerTextColor,
60130
60421
  headerFontFamily: typography.headerFontFamily,
60131
60422
  headerFontSize: typography.headerFontSize,
60132
- enableVoiceInteraction: (_ref14 = enableVoiceInteraction !== null && enableVoiceInteraction !== void 0 ? enableVoiceInteraction : voice.enableVoiceInteraction) !== null && _ref14 !== void 0 ? _ref14 : false,
60133
- disclaimerEnabled: (_ref15 = disclaimerEnabled !== null && disclaimerEnabled !== void 0 ? disclaimerEnabled : disclaimer.enabled) !== null && _ref15 !== void 0 ? _ref15 : false,
60423
+ enableVoiceInteraction: (_ref13 = enableVoiceInteraction !== null && enableVoiceInteraction !== void 0 ? enableVoiceInteraction : voice.enableVoiceInteraction) !== null && _ref13 !== void 0 ? _ref13 : false,
60424
+ disclaimerEnabled: (_ref14 = disclaimerEnabled !== null && disclaimerEnabled !== void 0 ? disclaimerEnabled : disclaimer.enabled) !== null && _ref14 !== void 0 ? _ref14 : false,
60134
60425
  disclaimerText: disclaimerText !== null && disclaimerText !== void 0 ? disclaimerText : disclaimer.text,
60135
60426
  disclaimerPosition: disclaimerPosition !== null && disclaimerPosition !== void 0 ? disclaimerPosition : toDisclaimerPos(disclaimer.position),
60136
60427
  disclaimerLinkUrl: normalizeExternalUrl(disclaimerLinkUrl !== null && disclaimerLinkUrl !== void 0 ? disclaimerLinkUrl : disclaimer.linkUrl),
60137
60428
  disclaimerLinkLabel: disclaimerLinkLabel !== null && disclaimerLinkLabel !== void 0 ? disclaimerLinkLabel : disclaimer.linkLabel,
60138
- showPoweredBy: (_ref16 = showPoweredBy !== null && showPoweredBy !== void 0 ? showPoweredBy : branding.showPoweredBy) !== null && _ref16 !== void 0 ? _ref16 : true,
60139
- onboardingQuestions: (_ref17 = onboardingQuestions !== null && onboardingQuestions !== void 0 ? onboardingQuestions : onboarding.questions) !== null && _ref17 !== void 0 ? _ref17 : [],
60140
- collectionPrompt: (_ref18 = collectionPrompt !== null && collectionPrompt !== void 0 ? collectionPrompt : onboarding.collapsiblePrompt) !== null && _ref18 !== void 0 ? _ref18 : "Before we begin, I need to verify your details.",
60429
+ showPoweredBy: (_ref15 = showPoweredBy !== null && showPoweredBy !== void 0 ? showPoweredBy : branding.showPoweredBy) !== null && _ref15 !== void 0 ? _ref15 : true,
60430
+ onboardingQuestions: (_ref16 = onboardingQuestions !== null && onboardingQuestions !== void 0 ? onboardingQuestions : onboarding.questions) !== null && _ref16 !== void 0 ? _ref16 : [],
60431
+ collectionPrompt: (_ref17 = collectionPrompt !== null && collectionPrompt !== void 0 ? collectionPrompt : onboarding.collapsiblePrompt) !== null && _ref17 !== void 0 ? _ref17 : "Before we begin, I need to verify your details.",
60141
60432
  allowedDomains: finalAllowedDomains,
60142
60433
  launcherPosition: position !== null && position !== void 0 ? position : toLauncherPos(layout.launcherPosition),
60143
- onboardingEnabled: (_ref19 = onboardingEnabled !== null && onboardingEnabled !== void 0 ? onboardingEnabled : onboarding.enabled) !== null && _ref19 !== void 0 ? _ref19 : false,
60434
+ onboardingEnabled: (_ref18 = onboardingEnabled !== null && onboardingEnabled !== void 0 ? onboardingEnabled : onboarding.enabled) !== null && _ref18 !== void 0 ? _ref18 : false,
60144
60435
  inactivityTimeoutValue: (_inactivity$timeoutVa = inactivity.timeoutValue) !== null && _inactivity$timeoutVa !== void 0 ? _inactivity$timeoutVa : null,
60145
60436
  inactivityTimeoutUnit: (_inactivity$timeoutUn = inactivity.timeoutUnit) !== null && _inactivity$timeoutUn !== void 0 ? _inactivity$timeoutUn : null,
60146
- agentMessageBubbleFontFamily: (_ref20 = (_ref21 = agentMessageBubbleFontFamily !== null && agentMessageBubbleFontFamily !== void 0 ? agentMessageBubbleFontFamily : typography.agentMessageBubbleFontFamily) !== null && _ref21 !== void 0 ? _ref21 : fontFamily) !== null && _ref20 !== void 0 ? _ref20 : "Inter",
60147
- agentMessageBubbleFontSize: (_ref22 = (_ref23 = agentMessageBubbleFontSize !== null && agentMessageBubbleFontSize !== void 0 ? agentMessageBubbleFontSize : typography.agentMessageBubbleFontSize) !== null && _ref23 !== void 0 ? _ref23 : fontSize) !== null && _ref22 !== void 0 ? _ref22 : "14px",
60148
- userMessageBubbleFontFamily: (_ref24 = (_ref25 = userMessageBubbleFontFamily !== null && userMessageBubbleFontFamily !== void 0 ? userMessageBubbleFontFamily : typography.userMessageBubbleFontFamily) !== null && _ref25 !== void 0 ? _ref25 : fontFamily) !== null && _ref24 !== void 0 ? _ref24 : "Inter",
60149
- userMessageBubbleFontSize: (_ref26 = (_ref27 = userMessageBubbleFontSize !== null && userMessageBubbleFontSize !== void 0 ? userMessageBubbleFontSize : typography.userMessageBubbleFontSize) !== null && _ref27 !== void 0 ? _ref27 : fontSize) !== null && _ref26 !== void 0 ? _ref26 : "14px",
60437
+ agentMessageBubbleFontFamily: (_ref19 = (_ref20 = agentMessageBubbleFontFamily !== null && agentMessageBubbleFontFamily !== void 0 ? agentMessageBubbleFontFamily : typography.agentMessageBubbleFontFamily) !== null && _ref20 !== void 0 ? _ref20 : fontFamily) !== null && _ref19 !== void 0 ? _ref19 : "Inter",
60438
+ agentMessageBubbleFontSize: (_ref21 = (_ref22 = agentMessageBubbleFontSize !== null && agentMessageBubbleFontSize !== void 0 ? agentMessageBubbleFontSize : typography.agentMessageBubbleFontSize) !== null && _ref22 !== void 0 ? _ref22 : fontSize) !== null && _ref21 !== void 0 ? _ref21 : "14px",
60439
+ userMessageBubbleFontFamily: (_ref23 = (_ref24 = userMessageBubbleFontFamily !== null && userMessageBubbleFontFamily !== void 0 ? userMessageBubbleFontFamily : typography.userMessageBubbleFontFamily) !== null && _ref24 !== void 0 ? _ref24 : fontFamily) !== null && _ref23 !== void 0 ? _ref23 : "Inter",
60440
+ userMessageBubbleFontSize: (_ref25 = (_ref26 = userMessageBubbleFontSize !== null && userMessageBubbleFontSize !== void 0 ? userMessageBubbleFontSize : typography.userMessageBubbleFontSize) !== null && _ref26 !== void 0 ? _ref26 : fontSize) !== null && _ref25 !== void 0 ? _ref25 : "14px",
60150
60441
  csatEnabled: (_csat$enabled = csat.enabled) !== null && _csat$enabled !== void 0 ? _csat$enabled : false,
60151
60442
  csatFormat: (_csat$format = csat.format) !== null && _csat$format !== void 0 ? _csat$format : "EMOJI",
60152
60443
  csatPrompt: (_csat$prompt = csat.prompt) !== null && _csat$prompt !== void 0 ? _csat$prompt : "How was your experience?",