@axos-web-dev/shared-components 1.0.100-dev.7 → 1.0.100-dev.70

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.
Files changed (368) hide show
  1. package/dist/ATMLocator/ATMLocator.js +6 -4
  2. package/dist/Accordion/Accordion.css.js +2 -1
  3. package/dist/Accordion/Accordion.js +2 -1
  4. package/dist/AlertBanner/index.js +2 -1
  5. package/dist/Article/Article.css.d.ts +9 -36
  6. package/dist/Article/Article.css.js +12 -9
  7. package/dist/Article/Article.d.ts +2 -1
  8. package/dist/Article/Article.js +13 -2
  9. package/dist/Article/index.js +3 -2
  10. package/dist/ArticlesSet/ArticlesSet.css.d.ts +10 -70
  11. package/dist/ArticlesSet/ArticlesSet.css.js +2 -1
  12. package/dist/ArticlesSet/ArticlesSet.js +1 -1
  13. package/dist/Auth/ErrorAlert.js +5 -3
  14. package/dist/Auth/SignIn.css.js +2 -1
  15. package/dist/Auth/SignInPassword.js +2 -2
  16. package/dist/Avatar/Avatar.module.js +7 -7
  17. package/dist/AwardsBanner/AwardsBanner.css.js +5 -1
  18. package/dist/AwardsItem/AwardsItem.css.js +1 -2
  19. package/dist/Blockquote/Blockquote.module.js +3 -3
  20. package/dist/BulletItem/BulletItem.js +3 -1
  21. package/dist/Button/Button.css.d.ts +3 -3
  22. package/dist/Button/Button.css.js +2 -1
  23. package/dist/Button/Button.js +5 -3
  24. package/dist/Calculators/AnnualFeeCalculator/AnnualFeeCalculator.css.js +2 -1
  25. package/dist/Calculators/AnnualFeeCalculator/index.js +1 -1
  26. package/dist/Calculators/ApyCalculator/ApyCalculator.css.d.ts +2 -30
  27. package/dist/Calculators/ApyCalculator/ApyCalculator.css.js +2 -1
  28. package/dist/Calculators/ApyCalculator/index.js +11 -5
  29. package/dist/Calculators/AxosOneCalculator/BalanceAPYCalculator.css.d.ts +3 -0
  30. package/dist/Calculators/AxosOneCalculator/BalanceAPYCalculator.css.js +10 -2
  31. package/dist/Calculators/AxosOneCalculator/index.d.ts +3 -0
  32. package/dist/Calculators/AxosOneCalculator/index.js +106 -70
  33. package/dist/Calculators/BalanceAPYCalculator/BalanceAPYCalculator.css.d.ts +2 -30
  34. package/dist/Calculators/BalanceAPYCalculator/BalanceAPYCalculator.css.js +2 -1
  35. package/dist/Calculators/BalanceAPYCalculator/index.js +2 -1
  36. package/dist/Calculators/BuyDownCalculator/BuyDownCalculator.css.d.ts +0 -1
  37. package/dist/Calculators/BuyDownCalculator/BuyDownCalculator.css.js +3 -4
  38. package/dist/Calculators/BuyDownCalculator/index.d.ts +4 -1
  39. package/dist/Calculators/BuyDownCalculator/index.js +108 -68
  40. package/dist/Calculators/Calculator.d.ts +3 -0
  41. package/dist/Calculators/Calculator.js +12 -6
  42. package/dist/Calculators/MarineLoanMonthlyPaymentCalculator/index.js +1 -1
  43. package/dist/Calculators/MaxLoanCalculator/index.js +1 -1
  44. package/dist/Calculators/MonthlyPaymentCalculator/MonthlyPaymentCalculator.css.js +2 -1
  45. package/dist/Calculators/MonthlyPaymentCalculator/index.js +1 -1
  46. package/dist/Calculators/MonthlyPaymentLVFCalculator/MonthlyPaymentCalculator.css.js +2 -1
  47. package/dist/Calculators/SummitApyCalculator/BalanceAPYCalculator.css.js +2 -1
  48. package/dist/Calculators/SummitApyCalculator/index.js +17 -7
  49. package/dist/Calculators/calculator.css.d.ts +2 -8
  50. package/dist/Calculators/calculator.css.js +2 -1
  51. package/dist/CallToActionBar/CallToActionBar.css.d.ts +3 -1
  52. package/dist/CallToActionBar/CallToActionBar.css.js +23 -16
  53. package/dist/CallToActionBar/index.js +4 -3
  54. package/dist/Carousel/Carousel.css.d.ts +8 -19
  55. package/dist/Carousel/Carousel.css.js +2 -1
  56. package/dist/Carousel/index.js +5 -3
  57. package/dist/Chatbot/AnimatedGradientBorder.css.d.ts +3 -0
  58. package/dist/Chatbot/AnimatedGradientBorder.css.js +13 -0
  59. package/dist/Chatbot/Bubble.css.d.ts +4 -0
  60. package/dist/Chatbot/Bubble.css.js +15 -3
  61. package/dist/Chatbot/Bubble.d.ts +3 -1
  62. package/dist/Chatbot/Bubble.js +31 -21
  63. package/dist/Chatbot/Chat.js +0 -7
  64. package/dist/Chatbot/ChatWindow.css.d.ts +19 -0
  65. package/dist/Chatbot/ChatWindow.css.js +48 -15
  66. package/dist/Chatbot/ChatWindow.d.ts +9 -7
  67. package/dist/Chatbot/ChatWindow.js +405 -249
  68. package/dist/Chatbot/Chatbot.css.js +1 -1
  69. package/dist/Chatbot/Chatbot.d.ts +6 -1
  70. package/dist/Chatbot/Chatbot.js +344 -21
  71. package/dist/Chatbot/ChatbotMessage.d.ts +17 -0
  72. package/dist/Chatbot/ChatbotMessage.js +219 -0
  73. package/dist/Chatbot/EllipsisAnimation.d.ts +2 -0
  74. package/dist/Chatbot/EllipsisAnimation.js +85 -0
  75. package/dist/Chatbot/ThankYouMessage.d.ts +9 -0
  76. package/dist/Chatbot/ThankYouMessage.js +510 -0
  77. package/dist/Chatbot/index.d.ts +0 -1
  78. package/dist/Chatbot/index.js +20 -4
  79. package/dist/Chatbot/store/chat.d.ts +7 -0
  80. package/dist/Chatbot/store/chat.js +22 -4
  81. package/dist/Chatbot/store/messages.d.ts +2 -1
  82. package/dist/Chatbot/store/messages.js +12 -4
  83. package/dist/Chatbot/useHeadlessChat.d.ts +2 -1
  84. package/dist/Chatbot/useHeadlessChat.js +64 -17
  85. package/dist/Chevron/Chevron.css.d.ts +2 -2
  86. package/dist/Chevron/Chevron.css.js +2 -1
  87. package/dist/Chevron/index.js +5 -3
  88. package/dist/CollectInformationAlert/CollectInformationAlert.css.js +2 -1
  89. package/dist/CollectInformationAlert/index.js +3 -2
  90. package/dist/Comparison/Comparison.css.js +2 -1
  91. package/dist/Comparison/Comparison.js +5 -3
  92. package/dist/ContentBanner/ContentBanner.css.js +3 -1
  93. package/dist/DownloadTile/DownloadTile.css.js +2 -1
  94. package/dist/ExecutiveBio/ExecutiveBio.css.d.ts +153 -0
  95. package/dist/ExecutiveBio/ExecutiveBio.css.js +52 -1
  96. package/dist/ExecutiveBio/ExecutiveBio.d.ts +1 -1
  97. package/dist/ExecutiveBio/ExecutiveBio.interface.d.ts +11 -4
  98. package/dist/ExecutiveBio/ExecutiveBio.js +263 -8
  99. package/dist/ExecutiveBio/Overlay.d.ts +8 -0
  100. package/dist/ExecutiveBio/Overlay.js +589 -0
  101. package/dist/ExecutiveBio/index.js +26 -1
  102. package/dist/FaqAccordion/FaqAccordion.css.js +2 -1
  103. package/dist/FaqAccordion/index.js +5 -3
  104. package/dist/FooterDisclosure/LVF/LaVictorieFooter.css.js +2 -1
  105. package/dist/FooterDisclosure/LVF/LaVictorieFooter.js +2 -1
  106. package/dist/FooterSiteMap/AxosBank/FooterSiteMap.css.js +2 -1
  107. package/dist/FooterSiteMap/AxosBank/FooterSiteMap.js +9 -29
  108. package/dist/Forms/ApplicationStart.js +6 -3
  109. package/dist/Forms/ApplyNow.js +6 -4
  110. package/dist/Forms/ClearingForm.js +6 -3
  111. package/dist/Forms/CommercialDeposits.js +6 -3
  112. package/dist/Forms/CommercialDepositsNoLendingOption.d.ts +16 -0
  113. package/dist/Forms/CommercialDepositsNoLendingOption.js +333 -0
  114. package/dist/Forms/CommercialLending.js +6 -3
  115. package/dist/Forms/CommercialPremiumFinance.js +6 -3
  116. package/dist/Forms/ConstructionLendingDynamic.d.ts +12 -0
  117. package/dist/Forms/ConstructionLendingDynamic.js +301 -0
  118. package/dist/Forms/ContactCompany.js +6 -3
  119. package/dist/Forms/ContactCompanyTitle.js +6 -3
  120. package/dist/Forms/ContactUs.js +6 -3
  121. package/dist/Forms/ContactUsAAS.js +6 -3
  122. package/dist/Forms/ContactUsBusiness.d.ts +1 -1
  123. package/dist/Forms/ContactUsBusiness.js +13 -9
  124. package/dist/Forms/ContactUsBusinessNameEmail.js +9 -5
  125. package/dist/Forms/ContactUsLVF.js +6 -3
  126. package/dist/Forms/ContactUsNMLSId.js +9 -5
  127. package/dist/Forms/CpraRequest.d.ts +1 -1
  128. package/dist/Forms/CpraRequest.js +7 -3
  129. package/dist/Forms/CraPublicFile.js +9 -5
  130. package/dist/Forms/DealerServices.js +6 -3
  131. package/dist/Forms/EmailOnly.js +96 -67
  132. package/dist/Forms/EmailUs.js +9 -6
  133. package/dist/Forms/FormEnums.js +4 -1
  134. package/dist/Forms/Forms.css.d.ts +8 -31
  135. package/dist/Forms/Forms.css.js +52 -45
  136. package/dist/Forms/HoneyPot/index.js +2 -1
  137. package/dist/Forms/MortgageRate/MortgageRateForm.js +41 -16
  138. package/dist/Forms/MortgageRate/MortgageRateQuoteFilters.js +11 -5
  139. package/dist/Forms/MortgageRate/MortgageRateWatch.js +5 -3
  140. package/dist/Forms/MortgageWarehouseLending.js +9 -5
  141. package/dist/Forms/QuickPricer/QuickPricerForm.js +18 -13
  142. package/dist/Forms/QuickPricer/UserInformation.css.js +2 -1
  143. package/dist/Forms/ScheduleCall.js +6 -3
  144. package/dist/Forms/ScheduleCallPremier.js +6 -3
  145. package/dist/Forms/SuccesForm.js +6 -4
  146. package/dist/Forms/VendorQuestionnaire.js +6 -2
  147. package/dist/Forms/WcplSurvey.js +2 -1
  148. package/dist/Forms/index.d.ts +2 -0
  149. package/dist/Forms/index.js +9 -1
  150. package/dist/HeroBanner/HeroBanner.css.d.ts +5 -17
  151. package/dist/HeroBanner/HeroBanner.css.js +3 -1
  152. package/dist/HeroBanner/HeroBanner.js +16 -17
  153. package/dist/HeroBanner/LargeBanner.css.js +2 -1
  154. package/dist/HeroBanner/SelectionBanner.css.d.ts +1 -19
  155. package/dist/HeroBanner/SelectionBanner.css.js +8 -7
  156. package/dist/Hyperlink/Hyperlink.css.d.ts +4 -4
  157. package/dist/Hyperlink/Hyperlink.css.js +5 -1
  158. package/dist/Hyperlink/index.js +5 -3
  159. package/dist/IconBillboard/IconBillboard.css.d.ts +7 -40
  160. package/dist/IconBillboard/IconBillboard.css.js +13 -10
  161. package/dist/IconBillboard/IconBillboard.js +3 -3
  162. package/dist/IconBillboard/index.js +2 -1
  163. package/dist/ImageBillboard/ImageBillboard.css.d.ts +5 -61
  164. package/dist/ImageBillboard/ImageBillboard.css.js +3 -1
  165. package/dist/ImageBillboard/ImageBillboard.js +2 -1
  166. package/dist/ImageBillboard/ImageBillboardSet.js +4 -3
  167. package/dist/ImageLink/ImageLink.js +6 -4
  168. package/dist/ImageLink/ImageLinkSet.js +5 -3
  169. package/dist/ImageLink/index.js +5 -3
  170. package/dist/Input/Input.css.d.ts +1 -0
  171. package/dist/Input/Input.css.js +12 -9
  172. package/dist/Input/index.js +2 -1
  173. package/dist/Inputs/Input.css.js +2 -1
  174. package/dist/Insight/Featured/CategorySelector.css.js +2 -1
  175. package/dist/Insight/Featured/CategorySelector.js +5 -3
  176. package/dist/Insight/Featured/Featured.js +5 -3
  177. package/dist/Insight/Featured/Header.js +5 -3
  178. package/dist/Insight/Insight.css.d.ts +18 -0
  179. package/dist/Insight/Insight.css.js +44 -8
  180. package/dist/Insight/index.js +19 -1
  181. package/dist/Interstitial/Interstitial-variants.css.js +2 -1
  182. package/dist/LandingPageHeader/LandingPageHeader.css.d.ts +2 -0
  183. package/dist/LandingPageHeader/LandingPageHeader.css.js +8 -3
  184. package/dist/LandingPageHeader/LandingPageHeader.js +20 -10
  185. package/dist/LandingPageHeader/index.js +3 -1
  186. package/dist/LoadingIndicator/LoadingIndicator.css.d.ts +4 -4
  187. package/dist/LoadingIndicator/index.js +1 -0
  188. package/dist/MainHTML/index.d.ts +1 -1
  189. package/dist/MainHTML/index.js +3 -1
  190. package/dist/Modal/Modal.css.d.ts +1 -0
  191. package/dist/Modal/Modal.css.js +7 -4
  192. package/dist/Modal/Modal.js +8 -6
  193. package/dist/Modal/contextApi/store.js +2 -2
  194. package/dist/NavigationMenu/AxosALTS/NavBar.css.js +2 -1
  195. package/dist/NavigationMenu/AxosALTS/NavData.js +5 -3
  196. package/dist/NavigationMenu/AxosALTS/index.js +5 -3
  197. package/dist/NavigationMenu/AxosAdvisor/NavBar.css.d.ts +2 -0
  198. package/dist/NavigationMenu/AxosAdvisor/NavBar.css.js +8 -2
  199. package/dist/NavigationMenu/AxosAdvisor/NavBar.module.js +52 -52
  200. package/dist/NavigationMenu/AxosAdvisor/SubNavbar.css.js +2 -1
  201. package/dist/NavigationMenu/AxosAdvisor/index.js +40 -22
  202. package/dist/NavigationMenu/AxosAdvisorServices/NavBar.css.d.ts +2 -0
  203. package/dist/NavigationMenu/AxosAdvisorServices/NavBar.css.js +8 -2
  204. package/dist/NavigationMenu/AxosAdvisorServices/NavBar.module.js +53 -53
  205. package/dist/NavigationMenu/AxosAdvisorServices/SubNavbar.css.d.ts +1 -1
  206. package/dist/NavigationMenu/AxosAdvisorServices/SubNavbar.css.js +4 -3
  207. package/dist/NavigationMenu/AxosAdvisorServices/index.js +14 -8
  208. package/dist/NavigationMenu/AxosBank/MobileMenu/MobileMenu.js +216 -72
  209. package/dist/NavigationMenu/AxosBank/MobileMenu/MobileMenu.module.js +50 -17
  210. package/dist/NavigationMenu/AxosBank/MobileMenu/MobileNavData.d.ts +18 -14
  211. package/dist/NavigationMenu/AxosBank/MobileMenu/MobileNavData.js +43 -29
  212. package/dist/NavigationMenu/AxosBank/NavBar.css.js +3 -1
  213. package/dist/NavigationMenu/AxosBank/NavBar.module.js +41 -41
  214. package/dist/NavigationMenu/AxosBank/NavData.js +5 -3
  215. package/dist/NavigationMenu/AxosBank/SubNavBar.js +285 -333
  216. package/dist/NavigationMenu/AxosBank/SubNavbar.css.d.ts +2 -0
  217. package/dist/NavigationMenu/AxosBank/SubNavbar.css.js +6 -1
  218. package/dist/NavigationMenu/AxosBank/index.js +5 -3
  219. package/dist/NavigationMenu/AxosClearing/NavBar.module.js +37 -37
  220. package/dist/NavigationMenu/AxosFiduciary/NavBar.module.js +41 -41
  221. package/dist/NavigationMenu/LaVictoire/NavData.js +5 -3
  222. package/dist/NavigationMenu/LaVictoire/index.js +5 -3
  223. package/dist/NavigationMenu/NavDataJson.js +5 -3
  224. package/dist/NavigationMenu/Navbar.js +5 -3
  225. package/dist/NavigationMenu/SignInNavButton.js +5 -3
  226. package/dist/PageNavItem/PageNavItem.css.d.ts +4 -22
  227. package/dist/PageNavItem/PageNavItem.css.js +2 -1
  228. package/dist/Pagination/Pagination.js +8 -7
  229. package/dist/SecondaryFooter/SecondaryFooter.css.js +2 -1
  230. package/dist/SetContainer/SetContainer.css.js +2 -1
  231. package/dist/SetContainer/SetContainer.js +6 -4
  232. package/dist/SocialMediaBar/iconsRepository.js +5 -3
  233. package/dist/StepItem/StepItem.css.d.ts +8 -36
  234. package/dist/StepItem/StepItem.css.js +2 -1
  235. package/dist/StepItemSet/StepItemSet.css.d.ts +6 -32
  236. package/dist/StepItemSet/StepItemSet.css.js +13 -6
  237. package/dist/StepItemSet/StepItemSet.d.ts +8 -0
  238. package/dist/StepItemSet/StepItemSet.js +39 -14
  239. package/dist/StepItemSet/index.js +4 -2
  240. package/dist/Tab/Tab.css.js +2 -1
  241. package/dist/Tab/Tab.js +1 -0
  242. package/dist/Table/Table.css.d.ts +7 -7
  243. package/dist/Table/Table.css.js +7 -6
  244. package/dist/Table/Table.js +3 -2
  245. package/dist/TextBlock/TextBlock.css.js +2 -1
  246. package/dist/VideoTile/VideoTile.css.js +2 -1
  247. package/dist/VideoTile/VideoTile.js +5 -3
  248. package/dist/VideoWrapper/index.js +5 -3
  249. package/dist/WalnutIframe/wrapper.module.js +3 -3
  250. package/dist/assets/Accordion/Accordion.css +4 -4
  251. package/dist/assets/AlertBanner/AlertBanner.css +4 -1
  252. package/dist/assets/Article/Article.css +87 -86
  253. package/dist/assets/ArticlesSet/ArticlesSet.css +26 -56
  254. package/dist/assets/Auth/SignIn.css +12 -12
  255. package/dist/assets/Avatar/Avatar.css.css +10 -10
  256. package/dist/assets/AwardsBanner/AwardsBanner.css +1 -4
  257. package/dist/assets/AwardsItem/AwardsItem.css +3 -4
  258. package/dist/assets/Blockquote/Blockquote.css.css +21 -17
  259. package/dist/assets/Button/Button.css +28 -28
  260. package/dist/assets/Calculators/AnnualFeeCalculator/AnnualFeeCalculator.css +8 -8
  261. package/dist/assets/Calculators/ApyCalculator/ApyCalculator.css +13 -22
  262. package/dist/assets/Calculators/AxosOneCalculator/BalanceAPYCalculator.css +72 -14
  263. package/dist/assets/Calculators/BalanceAPYCalculator/BalanceAPYCalculator.css +22 -34
  264. package/dist/assets/Calculators/BuyDownCalculator/BuyDownCalculator.css +15 -21
  265. package/dist/assets/Calculators/MarginTradingCalculator/MarginTradingCalculator.css +2 -2
  266. package/dist/assets/Calculators/MonthlyPaymentCalculator/MonthlyPaymentCalculator.css +9 -9
  267. package/dist/assets/Calculators/MonthlyPaymentLVFCalculator/MonthlyPaymentCalculator.css +11 -11
  268. package/dist/assets/Calculators/SummitApyCalculator/BalanceAPYCalculator.css +19 -11
  269. package/dist/assets/Calculators/calculator.css +9 -15
  270. package/dist/assets/CallToActionBar/CallToActionBar.css +95 -69
  271. package/dist/assets/Carousel/Carousel.css +28 -42
  272. package/dist/assets/Chatbot/AnimatedGradientBorder.css +38 -0
  273. package/dist/assets/Chatbot/Bubble.css +58 -21
  274. package/dist/assets/Chatbot/ChatWindow.css +227 -82
  275. package/dist/assets/Chatbot/Chatbot.css +3 -0
  276. package/dist/assets/Chevron/Chevron.css +11 -10
  277. package/dist/assets/CollectInformationAlert/CollectInformationAlert.css +4 -3
  278. package/dist/assets/Comparison/Comparison.css +5 -4
  279. package/dist/assets/ContentBanner/ContentBanner.css +14 -8
  280. package/dist/assets/DownloadTile/DownloadTile.css +8 -8
  281. package/dist/assets/ExecutiveBio/ExecutiveBio.css +342 -27
  282. package/dist/assets/FaqAccordion/FaqAccordion.css +5 -5
  283. package/dist/assets/FooterDisclosure/FooterDisclosure.css +1 -1
  284. package/dist/assets/FooterSiteMap/AxosBank/FooterSiteMap.css +3 -8
  285. package/dist/assets/Forms/Forms.css +184 -169
  286. package/dist/assets/Forms/QuickPricer/UserInformation.css +1 -1
  287. package/dist/assets/HelpArticle/HelpArticle.css +2 -2
  288. package/dist/assets/HeroBanner/HeroBanner.css +86 -77
  289. package/dist/assets/HeroBanner/LargeBanner.css +15 -15
  290. package/dist/assets/HeroBanner/SelectionBanner.css +15 -29
  291. package/dist/assets/Hyperlink/Hyperlink.css +4 -4
  292. package/dist/assets/IconBillboard/IconBillboard.css +57 -66
  293. package/dist/assets/ImageBillboard/ImageBillboard.css +80 -85
  294. package/dist/assets/Input/Input.css +54 -47
  295. package/dist/assets/Inputs/Input.css +5 -5
  296. package/dist/assets/Insight/Featured/CategorySelector.css +2 -2
  297. package/dist/assets/Insight/Insight.css +213 -44
  298. package/dist/assets/Interstitial/Interstitial-variants.css +3 -3
  299. package/dist/assets/LandingPageHeader/LandingPageHeader.css +37 -4
  300. package/dist/assets/LoadingIndicator/LoadingIndicator.css +5 -5
  301. package/dist/assets/Modal/Modal.css +17 -28
  302. package/dist/assets/NavigationMenu/AxosALTS/NavBar.css +1 -1
  303. package/dist/assets/NavigationMenu/AxosAdvisor/NavBar.css +25 -2
  304. package/dist/assets/NavigationMenu/AxosAdvisor/NavBar.css.css +138 -126
  305. package/dist/assets/NavigationMenu/AxosAdvisor/SubNavbar.css +5 -4
  306. package/dist/assets/NavigationMenu/AxosAdvisorServices/NavBar.css +25 -2
  307. package/dist/assets/NavigationMenu/AxosAdvisorServices/NavBar.css.css +142 -130
  308. package/dist/assets/NavigationMenu/AxosAdvisorServices/SubNavbar.css +22 -4
  309. package/dist/assets/NavigationMenu/AxosBank/MobileMenu/MobileMenu.css.css +197 -35
  310. package/dist/assets/NavigationMenu/AxosBank/NavBar.css +21 -9
  311. package/dist/assets/NavigationMenu/AxosBank/NavBar.css.css +120 -148
  312. package/dist/assets/NavigationMenu/AxosBank/SubNavbar.css +35 -1
  313. package/dist/assets/NavigationMenu/AxosClearing/NavBar.css.css +133 -107
  314. package/dist/assets/NavigationMenu/AxosFiduciary/NavBar.css.css +84 -83
  315. package/dist/assets/PageNavItem/PageNavItem.css +16 -33
  316. package/dist/assets/PageNavSet/PageNavigationSet.css +4 -3
  317. package/dist/assets/Pagination/Pagination.css +1 -1
  318. package/dist/assets/SetContainer/SetContainer.css +8 -5
  319. package/dist/assets/StepItem/StepItem.css +26 -42
  320. package/dist/assets/StepItemSet/StepItemSet.css +50 -41
  321. package/dist/assets/Tab/Tab.css +12 -12
  322. package/dist/assets/Table/Table.css +90 -97
  323. package/dist/assets/TextBlock/TextBlock.css +1 -1
  324. package/dist/assets/Topic/Topic.css +1 -1
  325. package/dist/assets/TopicalNavItem/TopicalNavItem.css +3 -3
  326. package/dist/assets/TopicalNavSet/TopicalNavSet.css +3 -3
  327. package/dist/assets/Typography/Typography.css +1 -1
  328. package/dist/assets/VideoTile/VideoTile.css +2 -2
  329. package/dist/assets/WalnutIframe/wrapper.css.css +7 -8
  330. package/dist/assets/globals.css +23 -8
  331. package/dist/assets/icons/ArrowIcon/ArrowIcon.css +3 -3
  332. package/dist/assets/icons/DownloadIcon/DownloadIcon.css +1 -1
  333. package/dist/assets/icons/FollowIcon/FollowIcon.css +1 -1
  334. package/dist/assets/themes/axos.css +44 -32
  335. package/dist/assets/themes/premier.css +43 -31
  336. package/dist/assets/themes/ufb.css +52 -0
  337. package/dist/assets/themes/victorie.css +35 -23
  338. package/dist/icons/ArrowIcon/ArrowIcon.css.js +2 -1
  339. package/dist/icons/CheckCircle.js +1 -1
  340. package/dist/icons/CheckCircleLight.js +1 -1
  341. package/dist/icons/CheckIcon/CheckIcon.css.js +2 -1
  342. package/dist/icons/CheckIcon/index.js +1 -1
  343. package/dist/icons/Clock/index.js +6 -6
  344. package/dist/icons/DownloadIcon/DownloadIcon.css.js +2 -1
  345. package/dist/icons/FollowIcon/FollowIcon.css.js +2 -1
  346. package/dist/icons/Logos/SPB.d.ts +4 -0
  347. package/dist/icons/Logos/SPB.js +132 -0
  348. package/dist/icons/QuoteIconGrey.js +2 -2
  349. package/dist/icons/index.d.ts +1 -0
  350. package/dist/icons/index.js +2 -0
  351. package/dist/main.js +111 -27
  352. package/dist/themes/axos.css.d.ts +30 -12
  353. package/dist/themes/axos.css.js +1 -1
  354. package/dist/themes/index.d.ts +1 -0
  355. package/dist/themes/index.js +2 -0
  356. package/dist/themes/ufb.css.d.ts +1 -0
  357. package/dist/themes/ufb.css.js +6 -0
  358. package/dist/utils/allowedAxosDomains.js +3 -1
  359. package/dist/utils/emailValidation.d.ts +1 -0
  360. package/dist/utils/emailValidation.js +31 -0
  361. package/dist/utils/index.d.ts +4 -1
  362. package/dist/utils/index.js +9 -1
  363. package/dist/utils/nmlsValidation.d.ts +1 -0
  364. package/dist/utils/nmlsValidation.js +34 -0
  365. package/dist/utils/useCachedValidators.d.ts +2 -0
  366. package/dist/utils/useCachedValidators.js +22 -0
  367. package/package.json +1 -1
  368. package/dist/Chatbot/Chatbot.css.ts.vanilla.css.js +0 -1
@@ -1,13 +1,19 @@
1
1
  "use client";
2
- import { jsxs, jsx, Fragment as Fragment$1 } from "react/jsx-runtime";
2
+ import { jsxs, jsx, Fragment } from "react/jsx-runtime";
3
+ import { vars } from "../themes/axos.css.js";
4
+ import '../assets/themes/victorie.css';import '../assets/themes/ufb.css';import '../assets/themes/premier.css';import '../assets/themes/axos.css';/* empty css */
5
+ /* empty css */
6
+ /* empty css */
7
+ /* empty css */
3
8
  import clsx from "clsx";
4
- import React, { useRef, useEffect, Fragment } from "react";
5
- import ReactMarkdown from "react-markdown";
9
+ import React, { useRef, useEffect } from "react";
6
10
  import { useNetworkState, useMount } from "react-use";
7
- import remarkGfm from "remark-gfm";
8
- import { windowBarStyle, chat_title, chatbotMenuItem, chatbotMenu, button_reset, arrowFill, chatNetworkStatus, notificationStyle, messageStyle, inline_button_wrapper, inline_button, endChatButtonStyle, messagesContainerStyle, inputStyle, sendButtonStyle, windowStyle, windowOpenStyle } from "./ChatWindow.css.js";
11
+ import { gradientFocus } from "./AnimatedGradientBorder.css.js";
12
+ import { ChatbotMessage } from "./ChatbotMessage.js";
13
+ import { windowBarStyle, left_bar_section, chat_title, button_bar, chatbotMenuItem, chatbotMenu, chatEndDialogOverlay, chatFinishDialog, chatEndCircle, endChatButtonStyle, noAnswerButton, arrowFill, button_reset, buttonss_section, chatNetworkStatus, shimmerText, messagesContainerStyle, inputStyle, autoResize, sendButtonStyle, windowStyle, windowOpenStyle } from "./ChatWindow.css.js";
9
14
  import { EllipsisIcon } from "./EllipsisIcon.js";
10
15
  import { useOpenChat } from "./store/chat.js";
16
+ import { ThankYouMessage } from "./ThankYouMessage.js";
11
17
  const ChatWindow = ({
12
18
  messages,
13
19
  status = "connected",
@@ -18,145 +24,350 @@ const ChatWindow = ({
18
24
  console.log("End chat");
19
25
  },
20
26
  showReconnect = false,
21
- virtualAgent
27
+ virtualAgent,
28
+ showAvatar = false,
29
+ onNewChat = () => {
30
+ console.log("Start chat");
31
+ },
32
+ showName = false,
33
+ onCloseAfterThankYou = () => {
34
+ console.log("Close after thank you");
35
+ },
36
+ previewTyping = (msg) => {
37
+ console.log("Preview typing: ", msg);
38
+ }
22
39
  }) => {
40
+ const {
41
+ showThankyouMessage,
42
+ displayThankyouMessage,
43
+ toggleThankyouMessage,
44
+ hasEscalated
45
+ } = useOpenChat();
23
46
  const [mounted, setMounted] = React.useState(false);
24
47
  const [menuOpen, setMenuOpen] = React.useState(false);
25
48
  const [showEndChatDialog, setShowEndChatDialog] = React.useState(false);
26
49
  const state = useNetworkState();
27
50
  const [input, setInput] = React.useState("");
28
51
  const messagesEndRef = useRef(null);
52
+ const inputRef = useRef(null);
29
53
  const isOpen = useOpenChat((state2) => state2.isOpen);
30
54
  useEffect(() => {
31
55
  messagesEndRef.current?.scrollIntoView({ behavior: "smooth" });
32
56
  }, [messages]);
33
57
  const handleSend = (e) => {
34
58
  e.preventDefault();
35
- if (input.trim()) {
36
- onSend(input);
59
+ const cleaned = cleanInput(input);
60
+ if (cleaned) {
61
+ onSend(cleaned);
37
62
  setInput("");
38
63
  }
39
64
  };
40
65
  useMount(() => {
41
66
  setMounted(true);
42
67
  });
43
- const project = process.env.CCAI_PROJECT_ID;
44
- const isAxos = project === "axos";
45
- const endUserBg = isAxos ? "#14263d" : "#323339";
46
- const chatbotBg = isAxos ? "#E9F8FF" : "#EAE8E8";
68
+ const escalationDeflected = messages?.filter(
69
+ (item) => item.type == "noti" && item.event == "escalationDeflected"
70
+ ).length > 0;
71
+ const cleanInput = (text) => text.replace(/[\r\n]+/g, " ").trim();
72
+ const autoResizeTextarea = () => {
73
+ if (inputRef.current) {
74
+ inputRef.current.style.height = "auto";
75
+ inputRef.current.style.maxHeight = "80px";
76
+ inputRef.current.style.height = inputRef.current.scrollHeight + "px";
77
+ inputRef.current.style.overflowY = inputRef.current.scrollHeight > 80 ? "auto" : "hidden";
78
+ }
79
+ };
80
+ useEffect(() => {
81
+ autoResizeTextarea();
82
+ }, [input]);
83
+ const displayThankYouScreen = () => {
84
+ displayThankyouMessage();
85
+ };
86
+ const onCancelEndChat = () => {
87
+ setShowEndChatDialog(false);
88
+ toggleThankyouMessage?.();
89
+ onCloseAfterThankYou();
90
+ setInput("");
91
+ };
92
+ const onStartChat = () => {
93
+ onNewChat();
94
+ setInput("");
95
+ toggleThankyouMessage?.();
96
+ };
47
97
  return /* @__PURE__ */ jsxs("div", { className: clsx(windowStyle, isOpen && windowOpenStyle), children: [
48
98
  /* @__PURE__ */ jsxs("div", { className: windowBarStyle, children: [
49
- /* @__PURE__ */ jsxs("div", { className: "flex middle", style: { paddingBlock: "6px" }, children: [
99
+ /* @__PURE__ */ jsx("div", { className: clsx(left_bar_section) }),
100
+ /* @__PURE__ */ jsxs(
101
+ "div",
102
+ {
103
+ className: "flex middle center",
104
+ style: { paddingBlock: "6px", gap: 4 },
105
+ children: [
106
+ /* @__PURE__ */ jsxs(
107
+ "svg",
108
+ {
109
+ xmlns: "http://www.w3.org/2000/svg",
110
+ width: "20",
111
+ height: "17",
112
+ viewBox: "0 0 20 17",
113
+ fill: "none",
114
+ children: [
115
+ /* @__PURE__ */ jsx(
116
+ "path",
117
+ {
118
+ d: "M10.5277 2.78937C10.8911 2.78937 11.1852 3.08251 11.1853 3.44452C11.1852 3.80654 10.8911 4.10056 10.5277 4.10056H5.26386C4.5371 4.10064 3.94791 4.68761 3.94789 5.41175V10.6565C3.9479 11.3806 4.5371 11.9676 5.26386 11.9677H6.97488C7.12012 11.9678 7.23818 12.0854 7.23825 12.2301V15.6861L10.8932 12.0445C10.9424 11.9956 11.0092 11.9679 11.0786 11.9677H14.4765C15.2032 11.9676 15.7925 11.3806 15.7925 10.6565V9.27302C15.7925 8.91106 16.0868 8.61721 16.45 8.61697C16.8134 8.61699 17.1084 8.91093 17.1084 9.27302V10.6565C17.1084 12.1048 15.9301 13.2788 14.4765 13.2789H11.5149L8.16901 16.6135C7.33997 17.4393 5.92245 16.8542 5.92229 15.6861V13.2789H5.26386C3.81026 13.2788 2.63193 12.1048 2.63193 10.6565V5.41175C2.63194 3.96341 3.81027 2.78945 5.26386 2.78937H10.5277Z",
119
+ fill: "#1E3860"
120
+ }
121
+ ),
122
+ /* @__PURE__ */ jsx(
123
+ "path",
124
+ {
125
+ d: "M9.21265 0.166102C9.57579 0.166381 9.87012 0.460269 9.87018 0.822142C9.87004 1.18394 9.57574 1.47701 9.21265 1.47729H3.29036C2.20017 1.47729 1.31606 2.35831 1.31596 3.44452V6.72294C1.31577 7.08487 1.02083 7.37808 0.657534 7.37808C0.294361 7.37794 0.000196551 7.08478 0 6.72294V3.44452C9.80773e-05 1.63411 1.47333 0.166102 3.29036 0.166102H9.21265Z",
126
+ fill: "#1E3860"
127
+ }
128
+ ),
129
+ /* @__PURE__ */ jsx(
130
+ "path",
131
+ {
132
+ d: "M15.7145 0.475824C15.9558 -0.158638 16.8779 -0.158578 17.1192 0.475824L17.6459 1.8611C17.7218 2.06058 17.8835 2.2175 18.0885 2.29132L19.511 2.80454C20.163 3.03936 20.163 3.93626 19.511 4.17107L18.0885 4.6843C17.8835 4.75812 17.7218 4.91504 17.6459 5.11452L17.1192 6.49979C16.8779 7.1342 15.9558 7.13426 15.7145 6.49979L15.1878 5.11452C15.1119 4.91508 14.9502 4.75811 14.7453 4.6843L13.3227 4.17107C12.6708 3.93622 12.6708 3.0394 13.3227 2.80454L14.7453 2.29132C14.9502 2.21751 15.1119 2.06054 15.1878 1.8611L15.7145 0.475824Z",
133
+ fill: "#1E3860"
134
+ }
135
+ )
136
+ ]
137
+ }
138
+ ),
139
+ /* @__PURE__ */ jsx("h2", { className: chat_title, children: "Ask Evo AI" })
140
+ ]
141
+ }
142
+ ),
143
+ /* @__PURE__ */ jsxs("div", { className: clsx(buttonss_section), children: [
50
144
  /* @__PURE__ */ jsx(
51
- "img",
145
+ "button",
52
146
  {
53
- src: "https://www.axos.com/images/2xmVfQm5l0HWOKjgxQO1Iw/axb-assistant.svg",
54
- style: { marginRight: 12 },
55
- height: 18,
56
- width: 18
147
+ disabled: messages.length === 0,
148
+ onClick: () => {
149
+ setMenuOpen(!menuOpen);
150
+ },
151
+ className: clsx(button_bar),
152
+ style: {
153
+ border: menuOpen ? `1px solid ${vars.chatbot.window.headerText}` : "none",
154
+ cursor: "pointer",
155
+ padding: 0,
156
+ display: "flex",
157
+ alignContent: "center",
158
+ background: menuOpen ? "#0000000f" : void 0
159
+ },
160
+ children: /* @__PURE__ */ jsx(EllipsisIcon, {})
57
161
  }
58
162
  ),
59
- /* @__PURE__ */ jsx("h2", { className: chat_title, children: "Evo Virtual Assistant" })
60
- ] }),
61
- /* @__PURE__ */ jsx(
62
- "button",
63
- {
64
- onClick: () => {
65
- setMenuOpen(!menuOpen);
66
- },
67
- style: {
68
- border: "none",
69
- background: "transparent",
70
- marginLeft: "auto",
71
- cursor: "pointer",
72
- padding: 0,
73
- display: "flex",
74
- alignContent: "center"
75
- },
76
- children: /* @__PURE__ */ jsx(EllipsisIcon, { color: "#fff" })
77
- }
78
- ),
79
- menuOpen && /* @__PURE__ */ jsx("ul", { className: clsx(chatbotMenu), children: /* @__PURE__ */ jsx("li", { className: chatbotMenuItem, children: /* @__PURE__ */ jsx(
80
- "button",
81
- {
82
- type: "button",
83
- onClick: () => {
84
- setShowEndChatDialog(true);
85
- setMenuOpen(false);
86
- },
87
- style: { width: "100%" },
88
- children: "Finish chat"
89
- }
90
- ) }) }),
91
- showEndChatDialog && /* @__PURE__ */ jsx(
92
- "dialog",
93
- {
94
- open: showEndChatDialog,
95
- style: {
96
- padding: "1rem",
97
- borderRadius: 8,
98
- background: "#fff",
99
- color: "#000",
100
- border: "none",
101
- outline: "none",
102
- maxWidth: "90%",
103
- top: "25%"
104
- },
105
- children: /* @__PURE__ */ jsxs("form", { method: "dialog", children: [
106
- /* @__PURE__ */ jsx("p", { children: "are you sure you want to end this chat?" }),
107
- /* @__PURE__ */ jsx(
108
- "button",
163
+ menuOpen && /* @__PURE__ */ jsx("ul", { className: clsx(chatbotMenu), children: /* @__PURE__ */ jsx("li", { className: chatbotMenuItem, children: /* @__PURE__ */ jsxs(
164
+ "button",
165
+ {
166
+ type: "button",
167
+ onClick: () => {
168
+ setShowEndChatDialog(true);
169
+ setMenuOpen(false);
170
+ },
171
+ style: {
172
+ width: "100%",
173
+ display: "flex",
174
+ alignItems: "center",
175
+ gap: "12px"
176
+ },
177
+ children: [
178
+ /* @__PURE__ */ jsx("div", { className: clsx(button_bar), children: /* @__PURE__ */ jsxs(
179
+ "svg",
180
+ {
181
+ xmlns: "http://www.w3.org/2000/svg",
182
+ width: "16",
183
+ height: "16",
184
+ viewBox: "0 0 16 16",
185
+ fill: "none",
186
+ children: [
187
+ /* @__PURE__ */ jsxs("g", { clipPath: "url(#clip0_92_1389)", children: [
188
+ /* @__PURE__ */ jsx(
189
+ "path",
190
+ {
191
+ d: "M11.1236 5.37374L8.60278 7.89457L11.1236 10.4167L10.4166 11.1237L7.89445 8.6029L5.37362 11.1237L4.66658 10.4167L7.18742 7.89457L4.66658 5.37374L5.37362 4.66671L7.89445 7.18754L10.4166 4.66671L11.1236 5.37374Z",
192
+ fill: "#1E3860"
193
+ }
194
+ ),
195
+ /* @__PURE__ */ jsx(
196
+ "path",
197
+ {
198
+ fillRule: "evenodd",
199
+ clipRule: "evenodd",
200
+ d: "M13.3333 0.833374C14.3458 0.833374 15.1666 1.65419 15.1666 2.66671V13.3334C15.1666 14.3459 14.3458 15.1667 13.3333 15.1667H2.66659C1.65406 15.1667 0.833252 14.3459 0.833252 13.3334V2.66671C0.833252 1.65419 1.65406 0.833374 2.66659 0.833374H13.3333ZM2.66659 1.83337C2.20635 1.83337 1.83325 2.20647 1.83325 2.66671V13.3334C1.83325 13.7936 2.20635 14.1667 2.66659 14.1667H13.3333C13.7935 14.1667 14.1666 13.7936 14.1666 13.3334V2.66671C14.1666 2.20647 13.7935 1.83337 13.3333 1.83337H2.66659Z",
201
+ fill: "#1E3860"
202
+ }
203
+ )
204
+ ] }),
205
+ /* @__PURE__ */ jsx("defs", { children: /* @__PURE__ */ jsx("clipPath", { id: "clip0_92_1389", children: /* @__PURE__ */ jsx("rect", { width: "16", height: "16", fill: "white" }) }) })
206
+ ]
207
+ }
208
+ ) }),
209
+ /* @__PURE__ */ jsx("span", { children: "End Chat" })
210
+ ]
211
+ }
212
+ ) }) }),
213
+ showEndChatDialog && /* @__PURE__ */ jsxs(Fragment, { children: [
214
+ /* @__PURE__ */ jsx(
215
+ "div",
216
+ {
217
+ style: {
218
+ background: "#00000080",
219
+ position: "fixed",
220
+ top: 0,
221
+ left: 0,
222
+ right: 0,
223
+ bottom: 0,
224
+ zIndex: 999
225
+ }
226
+ }
227
+ ),
228
+ /* @__PURE__ */ jsx("dialog", { open: showEndChatDialog, className: chatEndDialogOverlay, children: /* @__PURE__ */ jsxs("form", { method: "dialog", className: chatFinishDialog, children: [
229
+ /* @__PURE__ */ jsx("div", { className: clsx(button_bar, chatEndCircle), children: /* @__PURE__ */ jsxs(
230
+ "svg",
109
231
  {
110
- type: "submit",
111
- onClick: () => {
112
- endChat();
113
- setShowEndChatDialog(false);
114
- },
115
- children: "Yes"
232
+ xmlns: "http://www.w3.org/2000/svg",
233
+ width: "24",
234
+ height: "24",
235
+ viewBox: "0 0 24 24",
236
+ fill: "none",
237
+ children: [
238
+ /* @__PURE__ */ jsx(
239
+ "path",
240
+ {
241
+ d: "M12.7514 7.14531V15.3953H11.2514V7.14531H12.7514Z",
242
+ fill: "#D2272F"
243
+ }
244
+ ),
245
+ /* @__PURE__ */ jsx(
246
+ "path",
247
+ {
248
+ d: "M12.0014 16.8953C12.6227 16.8953 13.1264 17.399 13.1264 18.0203C13.1264 18.6416 12.6227 19.1453 12.0014 19.1453C11.3801 19.1453 10.8764 18.6416 10.8764 18.0203C10.8764 17.399 11.3801 16.8953 12.0014 16.8953Z",
249
+ fill: "#D2272F"
250
+ }
251
+ ),
252
+ /* @__PURE__ */ jsx(
253
+ "path",
254
+ {
255
+ fillRule: "evenodd",
256
+ clipRule: "evenodd",
257
+ d: "M9.31805 3.51187L2.17215 17.8037C1.1748 19.7984 2.62529 22.1453 4.85543 22.1453H19.1472C21.3774 22.1453 22.8279 19.7984 21.8305 17.8037L14.6846 3.51188C13.579 1.30073 10.4236 1.30073 9.31805 3.51187ZM3.51379 18.4745L10.6597 4.18269C11.2125 3.07712 12.7902 3.07712 13.343 4.1827L20.4889 18.4745C20.9875 19.4718 20.2623 20.6453 19.1472 20.6453H4.85543C3.74036 20.6453 3.01512 19.4718 3.51379 18.4745Z",
258
+ fill: "#D2272F"
259
+ }
260
+ )
261
+ ]
116
262
  }
117
- ),
118
- /* @__PURE__ */ jsx(
119
- "button",
263
+ ) }),
264
+ /* @__PURE__ */ jsxs("p", { children: [
265
+ "Are you sure you want to end",
266
+ /* @__PURE__ */ jsx("br", {}),
267
+ " this chat?"
268
+ ] }),
269
+ /* @__PURE__ */ jsxs(
270
+ "div",
120
271
  {
121
- type: "button",
122
- onClick: () => {
123
- setShowEndChatDialog(false);
272
+ style: {
273
+ display: "flex",
274
+ gap: "1rem",
275
+ marginTop: "1rem",
276
+ flexDirection: "column",
277
+ marginBottom: 24,
278
+ width: "100%"
124
279
  },
125
- children: "No"
280
+ children: [
281
+ /* @__PURE__ */ jsx(
282
+ "button",
283
+ {
284
+ className: endChatButtonStyle,
285
+ type: "submit",
286
+ onClick: () => {
287
+ endChat();
288
+ displayThankYouScreen();
289
+ setShowEndChatDialog(false);
290
+ },
291
+ children: "Yes, End Chat"
292
+ }
293
+ ),
294
+ /* @__PURE__ */ jsx(
295
+ "button",
296
+ {
297
+ className: clsx(endChatButtonStyle, noAnswerButton),
298
+ type: "button",
299
+ onClick: () => {
300
+ setShowEndChatDialog(false);
301
+ },
302
+ children: "No, Go Back"
303
+ }
304
+ )
305
+ ]
126
306
  }
127
- )
128
- ] })
129
- }
130
- ),
131
- onClose && /* @__PURE__ */ jsx(
132
- "button",
133
- {
134
- onClick: onClose,
135
- className: button_reset,
136
- "aria-label": "Close chat",
137
- title: "Close",
138
- children: /* @__PURE__ */ jsx(
139
- "svg",
140
- {
141
- xmlns: "http://www.w3.org/2000/svg",
142
- width: "24",
143
- height: "24",
144
- viewBox: "0 0 24 24",
145
- fill: "none",
146
- children: /* @__PURE__ */ jsx(
147
- "path",
307
+ ),
308
+ " "
309
+ ] }) })
310
+ ] }),
311
+ /* @__PURE__ */ jsx(
312
+ ThankYouMessage,
313
+ {
314
+ showEndChatDialog: showThankyouMessage,
315
+ onStart: onStartChat,
316
+ onClose: onCancelEndChat
317
+ }
318
+ ),
319
+ onClose && /* @__PURE__ */ jsxs(
320
+ "button",
321
+ {
322
+ onClick: () => {
323
+ onClose();
324
+ setMenuOpen(false);
325
+ },
326
+ className: clsx(button_reset, button_bar),
327
+ "aria-label": "Close chat window",
328
+ title: "Close",
329
+ children: [
330
+ /* @__PURE__ */ jsx(
331
+ "svg",
148
332
  {
149
- className: arrowFill,
150
- d: "M2.46875 7.76574L11.9991 17.2961L21.5294 7.76574L20.4687 6.70508L11.9991 15.1749L3.52941 6.70508L2.46875 7.76574Z",
151
- fill: "#98DDFF"
333
+ xmlns: "http://www.w3.org/2000/svg",
334
+ width: "24",
335
+ height: "24",
336
+ viewBox: "0 0 24 24",
337
+ fill: "none",
338
+ children: /* @__PURE__ */ jsx(
339
+ "path",
340
+ {
341
+ className: arrowFill,
342
+ d: "M2.46875 7.76574L11.9991 17.2961L21.5294 7.76574L20.4687 6.70508L11.9991 15.1749L3.52941 6.70508L2.46875 7.76574Z",
343
+ color: vars.chatbot.window.headerText
344
+ }
345
+ )
346
+ }
347
+ ),
348
+ /* @__PURE__ */ jsx(
349
+ "svg",
350
+ {
351
+ width: "15",
352
+ height: "15",
353
+ viewBox: "0 0 15 15",
354
+ fill: "none",
355
+ xmlns: "http://www.w3.org/2000/svg",
356
+ children: /* @__PURE__ */ jsx(
357
+ "path",
358
+ {
359
+ d: "M13.2187 0L14.0142 0.795495L7.803 7.0065L14.0142 13.2187L13.2187 14.0142L7.0065 7.803L0.795495 14.0142L0 13.2187L6.21112 7.0065L0 0.795495L0.795495 0L7.0065 6.21112L13.2187 0Z",
360
+ fill: vars.chatbot.window.headerText
361
+ }
362
+ )
152
363
  }
153
364
  )
154
- }
155
- )
156
- }
157
- )
365
+ ]
366
+ }
367
+ )
368
+ ] })
158
369
  ] }),
159
- /* @__PURE__ */ jsx("div", { className: clsx(chatNetworkStatus), children: mounted && !state.online ? /* @__PURE__ */ jsxs(
370
+ mounted && !state.online ? /* @__PURE__ */ jsx("div", { className: clsx(chatNetworkStatus), children: /* @__PURE__ */ jsxs(
160
371
  "div",
161
372
  {
162
373
  style: {
@@ -178,131 +389,51 @@ const ChatWindow = ({
178
389
  "You are currently disconnected. Please check your connection."
179
390
  ]
180
391
  }
181
- ) : null }),
392
+ ) }) : null,
182
393
  /* @__PURE__ */ jsxs("div", { className: clsx(messagesContainerStyle), children: [
183
- messages?.map((msg) => /* @__PURE__ */ jsxs(Fragment, { children: [
184
- msg.type == "noti" && msg.$userType == "system" && msg.event == "escalationStarted" && /* @__PURE__ */ jsx("div", { className: notificationStyle, children: "We are connecting you with a human agent..." }, msg.$index),
185
- msg.type == "noti" && msg.$userType == "system" && msg.event == "memberLeft" && /* @__PURE__ */ jsxs("div", { className: notificationStyle, children: [
186
- /* @__PURE__ */ jsx("strong", { children: "Virtual Agent" }),
187
- " just left the conversation."
188
- ] }, msg.$index),
189
- msg.type == "noti" && msg.$userType == "system" && msg.event == "escalationAccepted" && /* @__PURE__ */ jsxs("div", { className: notificationStyle, children: [
190
- "You are now connected with a",
191
- " ",
192
- msg.to_agent ? /* @__PURE__ */ jsx("strong", { children: msg?.to_agent?.name }) : "an agent"
193
- ] }, msg.$index),
194
- ["text", "markdown_template", "markdown"].includes(msg.type) && /* @__PURE__ */ jsxs(
195
- "div",
196
- {
197
- className: messageStyle,
198
- style: {
199
- textAlign: msg.$userType == "end_user" ? "right" : "left",
200
- alignSelf: msg.$userType == "end_user" ? "flex-end" : "flex-start",
201
- background: msg.$userType == "end_user" ? endUserBg : chatbotBg,
202
- color: msg.$userType == "end_user" ? "#fff" : "#1F1F1F",
203
- boxShadow: msg.$userType == "end_user" ? "0 1px 4px #b3e0ff55" : void 0
204
- },
205
- children: [
206
- /* @__PURE__ */ jsxs(
207
- "div",
208
- {
209
- style: {
210
- fontSize: 13,
211
- display: "flex",
212
- flexDirection: "column",
213
- gap: 4
214
- },
215
- children: [
216
- msg.$userType == "virtual_agent" && /* @__PURE__ */ jsxs(
217
- "div",
218
- {
219
- style: {
220
- display: "flex",
221
- // justifyContent: "center",
222
- alignItems: "center",
223
- gap: "8px"
224
- },
225
- children: [
226
- /* @__PURE__ */ jsx(
227
- "img",
228
- {
229
- width: 24,
230
- height: 24,
231
- src: virtualAgent?.avatar_url,
232
- alt: "agent avatar"
233
- }
234
- ),
235
- /* @__PURE__ */ jsx("strong", { children: virtualAgent?.name })
236
- ]
237
- }
238
- ),
239
- /* @__PURE__ */ jsx(
240
- ReactMarkdown,
241
- {
242
- remarkPlugins: [[remarkGfm, { singleTilde: false }]],
243
- components: {
244
- p: ({ ...props }) => /* @__PURE__ */ jsx(
245
- "p",
246
- {
247
- style: { margin: 0, fontSize: "inherit" },
248
- title: new Date(msg.$timestamp).toLocaleString(),
249
- ...props
250
- }
251
- )
252
- },
253
- children: msg.content
254
- }
255
- )
256
- ]
257
- }
258
- ),
259
- /* @__PURE__ */ jsx("div", { style: { fontSize: 10, color: "#888", marginTop: 2 } })
260
- ]
394
+ (status === "idle" || messages.length == 0) && /* @__PURE__ */ jsx(
395
+ "div",
396
+ {
397
+ className: clsx(),
398
+ style: {
399
+ textAlign: "left",
400
+ alignSelf: "flex-start",
401
+ color: "#1e3860",
402
+ borderRadius: 16,
403
+ padding: "8px 8px",
404
+ maxWidth: "80%",
405
+ marginBottom: 2
261
406
  },
262
- msg.$index
263
- ),
264
- msg.type == "inline_button" && Array.isArray(msg.buttons) && msg.buttons.length > 0 && /* @__PURE__ */ jsx("div", { className: inline_button_wrapper, children: msg.buttons.length !== 0 && Array.isArray(msg.buttons) && msg.buttons.map((button, index) => {
265
- const lastItem = msg.buttons && msg.buttons?.length - 1;
266
- return /* @__PURE__ */ jsx(
267
- "button",
268
- {
269
- className: inline_button,
270
- style: {
271
- borderRadius: "0px",
272
- borderTopLeftRadius: [0].includes(index) ? 8 : 0,
273
- borderTopRightRadius: [0].includes(index) ? 8 : 0,
274
- borderBottomLeftRadius: [lastItem].includes(index) ? 8 : 0,
275
- borderBottomRightRadius: [lastItem].includes(index) ? 8 : 0
276
- },
277
- onClick: () => {
278
- onSend(button?.title);
279
- },
280
- children: button.title
281
- },
282
- index
283
- );
284
- }) }),
285
- msg.event == "chatEnded" && /* @__PURE__ */ jsxs(Fragment$1, { children: [
286
- /* @__PURE__ */ jsxs(
407
+ children: /* @__PURE__ */ jsx(
287
408
  "div",
288
409
  {
289
- title: (/* @__PURE__ */ new Date()).toLocaleString(),
290
410
  style: {
291
- fontSize: 12,
292
- color: "#888",
293
- marginBottom: 4,
294
- textAlign: "center"
411
+ fontSize: 14,
412
+ display: "flex",
413
+ flexDirection: "column",
414
+ gap: 4
295
415
  },
296
- children: [
297
- "Thank you for chatting!",
298
- /* @__PURE__ */ jsx("br", {}),
299
- " This conversation has ended."
300
- ]
416
+ children: /* @__PURE__ */ jsx("p", { className: shimmerText, children: "AI thinking..." })
301
417
  }
302
- ),
303
- /* @__PURE__ */ jsx("div", { style: { textAlign: "center", marginBottom: 12 }, children: /* @__PURE__ */ jsx("button", { className: endChatButtonStyle, onClick: endChat, children: "End Chat" }) })
304
- ] })
305
- ] }, msg.$index)),
418
+ )
419
+ }
420
+ ),
421
+ messages?.map((msg) => /* @__PURE__ */ jsx(
422
+ ChatbotMessage,
423
+ {
424
+ msg,
425
+ onSend,
426
+ showAvatar,
427
+ showName,
428
+ virtualAgent,
429
+ onCancelEndChat,
430
+ onEndChat: () => {
431
+ endChat();
432
+ onCloseAfterThankYou();
433
+ }
434
+ },
435
+ msg?.$index
436
+ )),
306
437
  showReconnect && /* @__PURE__ */ jsx(
307
438
  "button",
308
439
  {
@@ -314,51 +445,76 @@ const ChatWindow = ({
314
445
  ),
315
446
  /* @__PURE__ */ jsx("div", { ref: messagesEndRef })
316
447
  ] }),
317
- /* @__PURE__ */ jsxs(
318
- "form",
448
+ /* @__PURE__ */ jsx("div", { style: { padding: "16px 16px 24px 16px" }, children: /* @__PURE__ */ jsx("form", { onSubmit: handleSend, className: clsx(gradientFocus), children: /* @__PURE__ */ jsxs(
449
+ "div",
319
450
  {
320
- onSubmit: handleSend,
321
451
  style: {
322
- borderTop: "1px solid #eee",
323
452
  display: "flex",
324
- gap: 8
453
+ padding: "12px 16px",
454
+ background: "#ffffff",
455
+ borderRadius: 12
325
456
  },
326
457
  children: [
327
458
  /* @__PURE__ */ jsx(
328
- "input",
459
+ "textarea",
329
460
  {
330
- type: "text",
461
+ ref: inputRef,
331
462
  value: input,
332
463
  onChange: (e) => setInput(e.target.value),
333
- placeholder: "Ask something...",
334
- className: inputStyle,
335
- disabled: inputDisabled || status !== "connected"
464
+ onKeyDown: (e) => {
465
+ if (hasEscalated) {
466
+ previewTyping(e.target?.value);
467
+ }
468
+ if (e.key === "Enter" && !e.shiftKey) {
469
+ e.preventDefault();
470
+ const cleaned = cleanInput(input);
471
+ if (cleaned) {
472
+ onSend(cleaned);
473
+ setInput("");
474
+ }
475
+ }
476
+ },
477
+ placeholder: "Ask anything...",
478
+ className: clsx(inputStyle, autoResize),
479
+ autoFocus: true,
480
+ disabled: inputDisabled || status !== "connected" || messages.length == 0 || escalationDeflected,
481
+ rows: 1
336
482
  }
337
483
  ),
338
484
  /* @__PURE__ */ jsx(
339
485
  "button",
340
486
  {
341
- className: clsx(sendButtonStyle, input.trim().length > 0 && "active"),
487
+ className: clsx(
488
+ sendButtonStyle,
489
+ input.trim().length > 0 && "active"
490
+ ),
342
491
  type: "submit",
343
- disabled: inputDisabled || status !== "connected" || !input.trim(),
344
- children: /* @__PURE__ */ jsxs(
492
+ title: "Send message",
493
+ disabled: inputDisabled || status !== "connected" || !input.trim() || messages.length == 0 || escalationDeflected,
494
+ children: /* @__PURE__ */ jsx(
345
495
  "svg",
346
496
  {
347
497
  xmlns: "http://www.w3.org/2000/svg",
348
- id: "send-icon",
349
- width: 24,
350
- height: 24,
351
- children: [
352
- /* @__PURE__ */ jsx("path", { d: "M2.01 21L23 12 2.01 3 2 10l15 2-15 2z" }),
353
- /* @__PURE__ */ jsx("path", { d: "M0 0h24v24H0z", fill: "none" })
354
- ]
498
+ width: "16",
499
+ height: "16",
500
+ viewBox: "0 0 16 16",
501
+ fill: "none",
502
+ children: /* @__PURE__ */ jsx(
503
+ "path",
504
+ {
505
+ fillRule: "evenodd",
506
+ clipRule: "evenodd",
507
+ d: "M0.0030533 5.42479C0.0273417 5.1795 0.193529 4.9714 0.427369 4.89345L15.0114 0.0320896C15.236 -0.0427712 15.4836 0.0156801 15.651 0.183075C15.8184 0.35047 15.8769 0.598075 15.802 0.822659L10.9407 15.4067C10.8627 15.6406 10.6546 15.8068 10.4093 15.8311C10.164 15.8553 9.92737 15.7332 9.80508 15.5192L6.35411 9.47999L0.314925 6.02903C0.100912 5.90673 -0.0212351 5.67008 0.0030533 5.42479ZM7.59169 9.1263L9.64202 12.7144C9.85645 13.0896 10.4138 13.0344 10.5505 12.6244L13.9046 2.56191C14.0349 2.17103 13.6631 1.79916 13.2722 1.92946L3.20969 5.28362C2.79967 5.4203 2.74448 5.97766 3.11973 6.19209L6.70781 8.24242L9.90579 5.04443C10.1499 4.80036 10.5456 4.80036 10.7897 5.04443C11.0337 5.28851 11.0337 5.68424 10.7897 5.92832L7.59169 9.1263Z",
508
+ fill: "#435164"
509
+ }
510
+ )
355
511
  }
356
512
  )
357
513
  }
358
514
  )
359
515
  ]
360
516
  }
361
- )
517
+ ) }) })
362
518
  ] });
363
519
  };
364
520
  export {