@gengage/assistant-fe 0.2.3 → 0.2.5

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 (98) hide show
  1. package/dist/assistant-fe.css +1 -1
  2. package/dist/chat/api.d.ts.map +1 -1
  3. package/dist/chat/catalog.d.ts +2 -0
  4. package/dist/chat/catalog.d.ts.map +1 -1
  5. package/dist/chat/components/ChatDrawer.d.ts +47 -2
  6. package/dist/chat/components/ChatDrawer.d.ts.map +1 -1
  7. package/dist/chat/components/ChoicePrompter.d.ts +3 -1
  8. package/dist/chat/components/ChoicePrompter.d.ts.map +1 -1
  9. package/dist/chat/components/ComparisonTable.d.ts.map +1 -1
  10. package/dist/chat/components/GroundingReviewCard.d.ts.map +1 -1
  11. package/dist/chat/components/PanelTopBar.d.ts +1 -0
  12. package/dist/chat/components/PanelTopBar.d.ts.map +1 -1
  13. package/dist/chat/components/ProductSummaryCard.d.ts.map +1 -1
  14. package/dist/chat/components/ReviewHighlights.d.ts.map +1 -1
  15. package/dist/chat/components/renderUISpec.d.ts.map +1 -1
  16. package/dist/chat/index.d.ts +22 -0
  17. package/dist/chat/index.d.ts.map +1 -1
  18. package/dist/chat/locales/en.d.ts.map +1 -1
  19. package/dist/chat/locales/tr.d.ts.map +1 -1
  20. package/dist/chat/panel-manager.d.ts +6 -4
  21. package/dist/chat/panel-manager.d.ts.map +1 -1
  22. package/dist/chat/session-persistence.d.ts +6 -1
  23. package/dist/chat/session-persistence.d.ts.map +1 -1
  24. package/dist/chat/types.d.ts +23 -1
  25. package/dist/chat/types.d.ts.map +1 -1
  26. package/dist/chat.cjs +1 -1
  27. package/dist/chat.iife.js +29 -29
  28. package/dist/chat.iife.js.map +1 -1
  29. package/dist/chat.js +2 -2
  30. package/dist/common/action-router.d.ts.map +1 -1
  31. package/dist/common/communication-bridge.d.ts.map +1 -1
  32. package/dist/common/ga-datalayer.d.ts.map +1 -1
  33. package/dist/common/price-formatter.d.ts +1 -1
  34. package/dist/common/price-formatter.d.ts.map +1 -1
  35. package/dist/common/product-utils.d.ts.map +1 -1
  36. package/dist/common/quantity-stepper.d.ts +1 -1
  37. package/dist/common/quantity-stepper.d.ts.map +1 -1
  38. package/dist/common/skeleton.d.ts +9 -0
  39. package/dist/common/skeleton.d.ts.map +1 -0
  40. package/dist/common/widget-base.d.ts.map +1 -1
  41. package/dist/common.cjs +1 -1
  42. package/dist/common.js +5 -5
  43. package/dist/{index-Bctbyou5.cjs → index-B6xRdkMq.cjs} +2 -2
  44. package/dist/{index-Bctbyou5.cjs.map → index-B6xRdkMq.cjs.map} +1 -1
  45. package/dist/{index-BaG-fiAK.js → index-BsvmfVa1.js} +3 -3
  46. package/dist/{index-BaG-fiAK.js.map → index-BsvmfVa1.js.map} +1 -1
  47. package/dist/index-BzCc2DCm.cjs +13 -0
  48. package/dist/index-BzCc2DCm.cjs.map +1 -0
  49. package/dist/index-D5UPIXIA.js +4831 -0
  50. package/dist/index-D5UPIXIA.js.map +1 -0
  51. package/dist/index.cjs +1 -1
  52. package/dist/index.js +3 -3
  53. package/dist/native.cjs +1 -1
  54. package/dist/native.iife.js +29 -29
  55. package/dist/native.iife.js.map +1 -1
  56. package/dist/native.js +1 -1
  57. package/dist/qna/index.d.ts.map +1 -1
  58. package/dist/qna.cjs +1 -1
  59. package/dist/qna.cjs.map +1 -1
  60. package/dist/qna.css +1 -1
  61. package/dist/qna.iife.js +14 -14
  62. package/dist/qna.iife.js.map +1 -1
  63. package/dist/qna.js +57 -48
  64. package/dist/qna.js.map +1 -1
  65. package/dist/quantity-stepper-CQWgexMO.cjs +2 -0
  66. package/dist/quantity-stepper-CQWgexMO.cjs.map +1 -0
  67. package/dist/quantity-stepper-CjY_cpgJ.js +80 -0
  68. package/dist/quantity-stepper-CjY_cpgJ.js.map +1 -0
  69. package/dist/{schemas-DOxyUYVA.cjs → schemas-CNzyBhf7.cjs} +8 -8
  70. package/dist/schemas-CNzyBhf7.cjs.map +1 -0
  71. package/dist/{schemas-D1Kd4wn8.js → schemas-Fiaobs4L.js} +306 -308
  72. package/dist/schemas-Fiaobs4L.js.map +1 -0
  73. package/dist/simrel/components/GroupTabs.d.ts.map +1 -1
  74. package/dist/simrel/components/ProductCard.d.ts.map +1 -1
  75. package/dist/simrel/components/ProductGrid.d.ts.map +1 -1
  76. package/dist/simrel/index.d.ts.map +1 -1
  77. package/dist/simrel/locales/en.d.ts.map +1 -1
  78. package/dist/simrel/locales/tr.d.ts.map +1 -1
  79. package/dist/simrel/types.d.ts +6 -0
  80. package/dist/simrel/types.d.ts.map +1 -1
  81. package/dist/simrel.cjs +1 -1
  82. package/dist/simrel.cjs.map +1 -1
  83. package/dist/simrel.css +1 -1
  84. package/dist/simrel.iife.js +11 -11
  85. package/dist/simrel.iife.js.map +1 -1
  86. package/dist/simrel.js +163 -158
  87. package/dist/simrel.js.map +1 -1
  88. package/package.json +1 -1
  89. package/dist/index-BHaQLt-o.js +0 -4468
  90. package/dist/index-BHaQLt-o.js.map +0 -1
  91. package/dist/index-CO5VnxEn.cjs +0 -13
  92. package/dist/index-CO5VnxEn.cjs.map +0 -1
  93. package/dist/quantity-stepper-BKtPQUR1.js +0 -78
  94. package/dist/quantity-stepper-BKtPQUR1.js.map +0 -1
  95. package/dist/quantity-stepper-DU6va4sS.cjs +0 -2
  96. package/dist/quantity-stepper-DU6va4sS.cjs.map +0 -1
  97. package/dist/schemas-D1Kd4wn8.js.map +0 -1
  98. package/dist/schemas-DOxyUYVA.cjs.map +0 -1
@@ -1 +1 @@
1
- .gengage-qna-container{font-family:var(--gengage-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);font-size:var(--gengage-font-size, 14px);color:var(--gengage-foreground-color, #333);--_gengage-border-color: var(--gengage-border-color, #e5e7eb)}.gengage-qna-uispec>*{animation:gengage-qna-enter .15s cubic-bezier(.2,.72,.2,1) both}@keyframes gengage-qna-enter{0%{opacity:0;transform:translateY(4px) scale(.995)}to{opacity:1;transform:translateY(0) scale(1)}}.gengage-qna-buttons{display:flex;flex-wrap:wrap;gap:8px;padding:8px 0 12px}.gengage-qna-button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 14px;border:none;border-radius:var(--gengage-qna-pill-radius, 999px);background:var(--gengage-primary-color, #3b82f6);color:var(--gengage-primary-foreground, #fff);font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;transition:filter .14s ease,transform .12s ease;text-align:left;line-height:1.25}.gengage-qna-button:hover{filter:brightness(1.06);transform:translateY(-1px)}.gengage-qna-button:active{transform:translateY(1px) scale(.988)}.gengage-qna-button:focus-visible{outline:2px solid var(--gengage-primary-color, #3b82f6);outline-offset:2px}.gengage-qna-cta{display:inline-flex;align-items:center;min-height:40px;padding:8px 14px;border:1px dashed color-mix(in srgb,var(--gengage-primary-color, #3b82f6) 65%,#cbd5e1 35%);border-radius:var(--gengage-qna-pill-radius, 999px);background:transparent;color:var(--gengage-primary-color, #3b82f6);font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;opacity:.92;transition:opacity .12s ease,transform .12s ease;white-space:nowrap}.gengage-qna-cta:hover{opacity:1;transform:translateY(-1px)}.gengage-qna-cta:focus-visible{outline:2px solid var(--gengage-primary-color, #3b82f6);outline-offset:2px}.gengage-qna-input-wrapper{display:flex;gap:8px;padding:6px 0 2px;align-items:center}.gengage-qna-input{flex:1;min-width:0;height:48px;padding:0 14px 0 40px;border:1px solid var(--_gengage-border-color);border-radius:var(--gengage-qna-input-radius, 14px);font-size:15px;font-family:inherit;outline:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E") 14px center no-repeat;transition:border-color .14s ease,box-shadow .14s ease}.gengage-qna-input::placeholder{transition:opacity .18s ease}.gengage-qna-input--fade::placeholder{opacity:0}.gengage-qna-input:focus{border-color:var(--gengage-primary-color, #3b82f6);box-shadow:0 0 0 3px color-mix(in srgb,var(--gengage-primary-color, #3b82f6) 18%,transparent)}.gengage-qna-send{min-width:60px;height:48px;padding:0 16px;border:1px dashed color-mix(in srgb,var(--gengage-primary-color, #3b82f6) 65%,#cbd5e1 35%);border-radius:var(--gengage-qna-pill-radius, 999px);background:transparent;color:var(--gengage-primary-color, #3b82f6);font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;opacity:.92;transition:opacity .12s ease,transform .12s ease;white-space:nowrap}.gengage-qna-send:hover{opacity:1;transform:translateY(-1px)}.gengage-qna-send:focus-visible{outline:2px solid var(--gengage-primary-color, #3b82f6);outline-offset:2px}.gengage-qna-send:active{transform:translateY(1px)}.gengage-qna-heading{font-size:1.04em;font-weight:700;margin:0 0 6px;color:var(--gengage-foreground-color, #333)}.gengage-qna-loading{display:flex;gap:4px;padding:12px 0}.gengage-qna-loading-dot{width:7px;height:7px;border-radius:50%;background:var(--gengage-primary-color, #3b82f6);opacity:.4;animation:gengage-qna-pulse 1.4s infinite ease-in-out both}.gengage-qna-loading-dot:nth-child(1){animation-delay:0s}.gengage-qna-loading-dot:nth-child(2){animation-delay:.16s}.gengage-qna-loading-dot:nth-child(3){animation-delay:.32s}@keyframes gengage-qna-pulse{0%,80%,to{opacity:.4;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}@media(max-width:768px){.gengage-qna-buttons{gap:10px;padding:10px 0 14px}.gengage-qna-button,.gengage-qna-cta{min-height:44px;padding:10px 16px;font-size:14px;line-height:1.2}.gengage-qna-input-wrapper{flex-direction:column;gap:10px}.gengage-qna-input{width:100%;height:52px;padding-left:42px;font-size:16px}.gengage-qna-send{width:100%;min-height:48px;font-size:14px}}@media(prefers-reduced-motion:reduce){.gengage-qna-uispec>*,.gengage-qna-button,.gengage-qna-cta,.gengage-qna-send{animation:none!important;transition:none!important;transform:none!important}}.gengage-simrel-container{font-family:var(--gengage-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);font-size:var(--gengage-font-size, 14px);color:var(--gengage-foreground-color, #333);--_gengage-border-color: var(--gengage-border-color, #e5e7eb);--_gengage-discount-color: var(--gengage-discount-color, #ef4444);--_gengage-text-primary: var(--gengage-text-primary, #1f2937);--_gengage-text-secondary: var(--gengage-text-secondary, #6b7280);--_gengage-surface-muted: var(--gengage-surface-muted, #f8fafc);--_gengage-rating-color: var(--gengage-rating-color, #d97706)}.gengage-simrel-uispec>*{animation:gengage-simrel-enter .2s cubic-bezier(.2,.72,.2,1) both}@keyframes gengage-simrel-enter{0%{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}.gengage-simrel-grid{display:flex;gap:12px;overflow-x:auto;padding:8px 0 12px;-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-snap-type:x proximity}.gengage-simrel-grid::-webkit-scrollbar{display:none}.gengage-simrel-grid>*{scroll-snap-align:start;flex:0 0 auto}.gengage-simrel-card{display:flex;flex-direction:column;position:relative;border:1px solid var(--_gengage-border-color);border-radius:var(--gengage-simrel-card-radius, 16px);overflow:hidden;background:var(--gengage-background-color, #fff);cursor:pointer;transition:box-shadow .2s ease,transform .1s ease;box-shadow:0 2px 8px #0000000f;width:160px;min-width:160px;max-width:160px}.gengage-simrel-card:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}.gengage-simrel-card-image{position:relative;overflow:hidden;background:#fff}.gengage-simrel-card-image img{width:100%;height:120px;object-fit:contain;display:block;padding:8px;box-sizing:border-box}.gengage-simrel-badge{position:absolute;top:8px;left:8px;padding:2px 8px;border-radius:4px;background:var(--_gengage-discount-color);color:#fff;font-size:12px;font-weight:600}.gengage-simrel-card-info{padding:8px 10px 10px;display:flex;flex-direction:column;gap:4px;text-align:center}.gengage-simrel-card-brand{font-size:10px;color:var(--_gengage-text-secondary)}.gengage-simrel-card-name{font-size:13px;font-weight:600;color:var(--_gengage-text-primary);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;min-height:2.7em}.gengage-simrel-card-rating{font-size:12px;color:var(--_gengage-rating-color)}.gengage-simrel-card-rating .gengage-star-half{display:inline-block;position:relative}.gengage-simrel-card-rating .gengage-star-half>span{position:absolute;left:0;top:0;overflow:hidden;width:.5em}.gengage-simrel-card-review-count{color:var(--_gengage-text-secondary)}.gengage-simrel-card-price{padding-top:4px;display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:2px 4px}.gengage-simrel-card-price-original{text-decoration:line-through;color:var(--_gengage-text-secondary);font-weight:400;font-size:12px}.gengage-simrel-card-price-current{font-size:16px;font-weight:800;color:var(--_gengage-text-primary)}.gengage-simrel-card-cta{display:block;margin-top:auto;width:100%;padding:8px 10px;text-align:center;border:none;border-top:1px solid var(--_gengage-surface-muted);border-radius:0;background:transparent;color:var(--gengage-primary-color, #3b82f6);font-family:inherit;font-size:12px;font-weight:700;letter-spacing:.01em;cursor:pointer;transition:color .15s ease,background .15s ease}.gengage-simrel-card-cta:hover{color:var(--gengage-primary-color, #0b24d6);background:var(--_gengage-surface-muted)}.gengage-simrel-card .gengage-simrel-atc{display:flex;width:100%;border-top:1px solid var(--_gengage-border-color);border-left:none;border-right:none;border-bottom:none;border-radius:0;background:transparent}.gengage-simrel-card .gengage-simrel-atc.gengage-qty-stepper{gap:0;overflow:hidden;border-radius:0;border-top:1px solid var(--_gengage-surface-muted);border-left:none;border-right:none;border-bottom:none}.gengage-simrel-card .gengage-simrel-atc .gengage-qty-btn{width:32px;height:36px;color:var(--_gengage-text-secondary);font-size:14px}.gengage-simrel-card .gengage-simrel-atc .gengage-qty-btn:hover:not(:disabled){background:var(--_gengage-surface-muted)}.gengage-simrel-card .gengage-simrel-atc .gengage-qty-value{min-width:24px;font-size:13px;color:var(--_gengage-text-primary)}.gengage-simrel-card .gengage-simrel-atc .gengage-qty-submit{flex:1;border-left:1px solid var(--_gengage-border-color);background:transparent;color:var(--gengage-primary-color, #3b82f6);font-weight:700;font-size:12px;font-family:inherit;letter-spacing:.01em;padding:8px 10px;border-radius:0;transition:color .15s ease,background .15s ease}.gengage-simrel-card .gengage-simrel-atc .gengage-qty-submit:hover{color:var(--gengage-primary-color, #0b24d6);background:var(--_gengage-surface-muted)}.gengage-simrel-card-oos{width:100%;padding:8px 10px;text-align:center;border-top:1px solid var(--_gengage-surface-muted);color:var(--_gengage-text-secondary);font-size:12px;font-weight:600;letter-spacing:.01em}.gengage-simrel-quick-actions{display:flex;flex-wrap:wrap;gap:8px;padding:6px 12px 12px}.gengage-simrel-quick-action{border:1px solid var(--_gengage-border-color);background:var(--_gengage-surface-muted);color:var(--_gengage-text-primary);border-radius:999px;min-height:40px;padding:8px 10px;font-size:12px;font-weight:600;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.gengage-simrel-quick-action:hover{border-color:var(--gengage-primary-color, #3b82f6);color:var(--gengage-primary-color, #3b82f6);box-shadow:0 6px 14px #0f172a1f;transform:translateY(-1px)}.gengage-simrel-empty{width:100%;flex:1 0 100%;text-align:center;padding:40px 20px;color:var(--_gengage-text-secondary)}.gengage-simrel-tabs{display:flex;gap:4px;border-bottom:2px solid var(--_gengage-border-color);margin-bottom:16px;overflow-x:auto}.gengage-simrel-tab{min-height:40px;padding:10px 14px;border:none;background:transparent;color:var(--_gengage-text-secondary);font-size:inherit;font-family:inherit;cursor:pointer;white-space:nowrap;border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .2s,border-color .2s}.gengage-simrel-tab:hover{color:var(--gengage-primary-color, #3b82f6)}.gengage-simrel-tab--active{color:var(--gengage-primary-color, #3b82f6);border-bottom-color:var(--gengage-primary-color, #3b82f6);font-weight:600}.gengage-simrel-loading{display:flex;justify-content:center;padding:40px}.gengage-simrel-spinner{width:32px;height:32px;border:3px solid var(--_gengage-border-color);border-top-color:var(--gengage-primary-color, #3b82f6);border-radius:50%;animation:gengage-simrel-spin .7s linear infinite}@keyframes gengage-simrel-spin{to{transform:rotate(360deg)}}@media(max-width:768px){.gengage-simrel-grid{gap:10px;padding-top:8px;scroll-snap-type:x mandatory}.gengage-simrel-card{width:200px;min-width:200px;max-width:200px;scroll-snap-align:center}.gengage-simrel-card-image img{height:140px}.gengage-simrel-card-cta,.gengage-simrel-quick-action,.gengage-simrel-tab{min-height:44px}.gengage-simrel-card .gengage-simrel-atc .gengage-qty-btn{width:44px;height:44px;font-size:16px}.gengage-simrel-card .gengage-simrel-atc .gengage-qty-submit{min-height:44px;flex-basis:auto;border-left:1px solid var(--_gengage-border-color);border-top:none}}.gengage-simrel-card:focus-visible,.gengage-simrel-tab:focus-visible,.gengage-simrel-quick-action:focus-visible,.gengage-simrel-atc .gengage-qty-btn:focus-visible,.gengage-simrel-atc .gengage-qty-submit:focus-visible{outline:2px solid var(--gengage-primary-color, #3b82f6);outline-offset:2px}@media(prefers-reduced-motion:reduce){.gengage-simrel-uispec>*,.gengage-simrel-card,.gengage-simrel-card-image img,.gengage-simrel-quick-action,.gengage-simrel-spinner{animation:none!important;transition:none!important;transform:none!important}}
1
+ .gengage-qna-container{font-family:var(--gengage-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);font-size:var(--gengage-font-size, 14px);color:var(--gengage-foreground-color, #333);--_gengage-border-color: var(--gengage-border-color, #e5e7eb)}.gengage-qna-uispec{display:flex;flex-direction:column;gap:8px}.gengage-qna-uispec>*{animation:gengage-qna-enter .15s cubic-bezier(.2,.72,.2,1) both}@keyframes gengage-qna-enter{0%{opacity:0;transform:translateY(4px) scale(.995)}to{opacity:1;transform:translateY(0) scale(1)}}.gengage-qna-buttons{display:flex;flex-wrap:wrap;gap:8px;padding:8px 0 12px}.gengage-qna-button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 14px;border:none;border-radius:var(--gengage-qna-pill-radius, 999px);background:var(--gengage-primary-color, #3b82f6);color:var(--gengage-primary-foreground, #fff);font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;transition:filter .14s ease,transform .12s ease;text-align:left;line-height:1.25}.gengage-qna-button:hover{filter:brightness(1.06);transform:translateY(-1px)}.gengage-qna-button:active{transform:translateY(1px) scale(.988)}.gengage-qna-button:focus-visible{outline:2px solid var(--gengage-primary-color, #3b82f6);outline-offset:2px}.gengage-qna-cta{display:inline-flex;align-items:center;min-height:40px;padding:8px 14px;border:1px solid color-mix(in srgb,var(--gengage-primary-color, #3b82f6) 65%,#cbd5e1 35%);border-radius:var(--gengage-qna-pill-radius, 999px);background:transparent;color:var(--gengage-primary-color, #3b82f6);font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;opacity:.92;transition:opacity .12s ease,transform .12s ease;white-space:nowrap}.gengage-qna-cta:hover{opacity:1;transform:translateY(-1px)}.gengage-qna-cta:focus-visible{outline:2px solid var(--gengage-primary-color, #3b82f6);outline-offset:2px}.gengage-qna-input-wrapper{display:flex;gap:8px;padding:6px 0 2px;align-items:stretch}.gengage-qna-input{flex:1;min-width:0;height:48px;padding:0 14px 0 40px;border:1px solid var(--_gengage-border-color);border-radius:var(--gengage-qna-input-radius, 14px);font-size:15px;font-family:inherit;outline:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E") 14px center no-repeat;transition:border-color .14s ease,box-shadow .14s ease}.gengage-qna-input::placeholder{transition:opacity .18s ease}.gengage-qna-input--fade::placeholder{opacity:0}.gengage-qna-input:focus{border-color:var(--gengage-primary-color, #3b82f6);box-shadow:0 0 0 3px color-mix(in srgb,var(--gengage-primary-color, #3b82f6) 18%,transparent)}.gengage-qna-send{min-width:44px;min-height:44px;height:48px;padding:0 16px;border:1px solid var(--gengage-qna-primary, var(--gengage-primary-color, #3b82f6));border-radius:var(--gengage-qna-pill-radius, 999px);background:transparent;color:var(--gengage-primary-color, #3b82f6);font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;opacity:.92;transition:opacity .12s ease,transform .12s ease;white-space:nowrap}.gengage-qna-send:hover{opacity:1;transform:translateY(-1px)}.gengage-qna-send:focus-visible{outline:2px solid var(--gengage-primary-color, #3b82f6);outline-offset:2px}.gengage-qna-send:active{transform:translateY(1px)}.gengage-qna-heading{font-size:1.04em;font-weight:700;margin:0 0 6px;color:var(--gengage-foreground-color, #333)}.gengage-qna-loading{display:flex;gap:4px;padding:12px 0}.gengage-qna-loading-dot{width:7px;height:7px;border-radius:50%;background:var(--gengage-primary-color, #3b82f6);opacity:.4;animation:gengage-qna-pulse 1.4s infinite ease-in-out both}.gengage-qna-loading-dot:nth-child(1){animation-delay:0s}.gengage-qna-loading-dot:nth-child(2){animation-delay:.16s}.gengage-qna-loading-dot:nth-child(3){animation-delay:.32s}@keyframes gengage-qna-pulse{0%,80%,to{opacity:.4;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}@media(max-width:768px){.gengage-qna-buttons{gap:10px;padding:10px 0 14px}.gengage-qna-button,.gengage-qna-cta{min-height:44px;padding:10px 16px;font-size:14px;line-height:1.2}.gengage-qna-input-wrapper{flex-direction:column;gap:10px}.gengage-qna-input{width:100%;height:52px;padding-left:42px;font-size:16px}.gengage-qna-send{width:100%;min-height:48px;font-size:14px}}@media(prefers-reduced-motion:reduce){.gengage-qna-uispec>*,.gengage-qna-button,.gengage-qna-cta,.gengage-qna-send{animation:none!important;transition:none!important;transform:none!important}}.gengage-simrel-container{font-family:var(--gengage-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);font-size:var(--gengage-font-size, 14px);color:var(--gengage-foreground-color, #333);--_gengage-border-color: var(--gengage-border-color, #e5e7eb);--_gengage-discount-color: var(--gengage-discount-color, #ef4444);--_gengage-text-primary: var(--gengage-text-primary, #1f2937);--_gengage-text-secondary: var(--gengage-text-secondary, #6b7280);--_gengage-surface-muted: var(--gengage-surface-muted, #f8fafc);--_gengage-surface-secondary: var(--gengage-surface-secondary, #f3f4f6);--_gengage-rating-color: var(--gengage-rating-color, #d97706)}.gengage-simrel-uispec>*{animation:gengage-simrel-enter .2s cubic-bezier(.2,.72,.2,1) both}@keyframes gengage-simrel-enter{0%{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}.gengage-simrel-grid{display:flex;gap:12px;overflow-x:auto;padding:8px 0 72px;-webkit-overflow-scrolling:touch;scrollbar-width:none;scroll-snap-type:x proximity}.gengage-simrel-grid::-webkit-scrollbar{display:none}.gengage-simrel-grid>*{scroll-snap-align:start;flex:0 0 auto}.gengage-simrel-card{display:flex;flex-direction:column;position:relative;border:1px solid var(--_gengage-border-color);border-radius:var(--gengage-simrel-card-radius, 16px);overflow:hidden;background:var(--gengage-background-color, #fff);cursor:pointer;transition:box-shadow .2s ease,transform .1s ease;box-shadow:0 2px 8px #0000000f;width:160px;min-width:160px;max-width:160px}.gengage-simrel-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f}.gengage-simrel-card-image{position:relative;overflow:hidden;background:#fff}.gengage-simrel-card-image img{width:100%;height:120px;object-fit:contain;display:block;padding:8px;box-sizing:border-box}.gengage-simrel-badge{position:absolute;top:8px;left:8px;padding:2px 8px;border-radius:4px;background:var(--_gengage-discount-color);color:#fff;font-size:12px;font-weight:600}.gengage-simrel-card-info{padding:8px 10px 10px;display:flex;flex-direction:column;gap:4px;text-align:center}.gengage-simrel-card-brand{font-size:10px;color:var(--_gengage-text-secondary)}.gengage-simrel-card-name{font-size:13px;font-weight:600;color:var(--_gengage-text-primary);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;min-height:2.7em}.gengage-simrel-card-rating{font-size:12px;color:var(--_gengage-rating-color)}.gengage-simrel-card-rating .gengage-star-half{display:inline-block;position:relative}.gengage-simrel-card-rating .gengage-star-half>span{position:absolute;left:0;top:0;overflow:hidden;width:.5em}.gengage-simrel-card-review-count{color:var(--_gengage-text-secondary)}.gengage-simrel-card-price{padding-top:4px;display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:2px 4px}.gengage-simrel-card-price-original{text-decoration:line-through;color:var(--_gengage-text-secondary);font-weight:400;font-size:12px}.gengage-simrel-card-price-current{font-size:16px;font-weight:800;color:var(--_gengage-text-primary)}.gengage-simrel-card-cta{display:block;margin-top:auto;width:100%;padding:8px 10px;text-align:center;border:none;border-top:1px solid var(--_gengage-surface-muted);border-radius:0;background:transparent;color:var(--gengage-primary-color, #3b82f6);font-family:inherit;font-size:12px;font-weight:700;letter-spacing:.01em;cursor:pointer;transition:color .15s ease,background .15s ease}.gengage-simrel-card-cta:hover{color:var(--gengage-primary-color, #0b24d6);background:var(--_gengage-surface-muted)}.gengage-simrel-atc{border:1px solid var(--_gengage-border-color, #e5e7eb);border-radius:8px}.gengage-simrel-card .gengage-simrel-atc{display:flex;width:100%;border-top:1px solid var(--_gengage-border-color);border-left:none;border-right:none;border-bottom:none;border-radius:0;background:transparent}.gengage-simrel-card .gengage-simrel-atc.gengage-qty-stepper{gap:0;overflow:hidden;border-radius:0;border-top:1px solid var(--_gengage-surface-muted);border-left:none;border-right:none;border-bottom:none}.gengage-simrel-card .gengage-simrel-atc .gengage-qty-btn{width:32px;height:36px;color:var(--_gengage-text-secondary);font-size:14px}.gengage-simrel-card .gengage-simrel-atc .gengage-qty-btn:hover:not(:disabled){background:var(--_gengage-surface-muted)}.gengage-simrel-card .gengage-simrel-atc .gengage-qty-value{min-width:24px;font-size:13px;color:var(--_gengage-text-primary)}.gengage-simrel-card .gengage-simrel-atc .gengage-qty-submit{flex:1;border-left:1px solid var(--_gengage-border-color);background:transparent;color:var(--gengage-primary-color, #3b82f6);font-weight:700;font-size:12px;font-family:inherit;letter-spacing:.01em;padding:8px 10px;border-radius:0;transition:color .15s ease,background .15s ease}.gengage-simrel-card .gengage-simrel-atc .gengage-qty-submit:hover{color:var(--gengage-primary-color, #0b24d6);background:var(--_gengage-surface-muted)}.gengage-simrel-card-oos{width:100%;padding:8px 10px;text-align:center;border-top:1px solid var(--_gengage-surface-muted);color:var(--_gengage-text-secondary);font-size:12px;font-weight:600;letter-spacing:.01em}.gengage-simrel-card--out-of-stock{opacity:.55}.gengage-simrel-card--out-of-stock .gengage-simrel-card-image img{filter:grayscale(40%)}.gengage-simrel-quick-actions{display:flex;flex-wrap:wrap;gap:8px;padding:6px 12px 12px}.gengage-simrel-quick-action{border:1px solid var(--_gengage-border-color);background:var(--_gengage-surface-muted);color:var(--_gengage-text-primary);border-radius:999px;min-height:40px;padding:8px 10px;font-size:12px;font-weight:600;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.gengage-simrel-quick-action:hover{border-color:var(--gengage-primary-color, #3b82f6);color:var(--gengage-primary-color, #3b82f6);box-shadow:0 6px 14px #0f172a1f;transform:translateY(-1px)}.gengage-simrel-empty{width:100%;flex:1 0 100%;text-align:center;padding:40px 20px;color:var(--_gengage-text-secondary)}.gengage-simrel-error{text-align:center;padding:24px 16px;color:var(--_gengage-text-secondary, #6b7280);font-size:13px;line-height:1.5}.gengage-simrel-retry{display:inline-block;margin-top:8px;border:1px solid var(--_gengage-border-color, #d1d5db);background:#fff;border-radius:6px;padding:6px 16px;cursor:pointer;font-size:13px;color:var(--_gengage-text-primary, #374151);transition:background .15s}.gengage-simrel-retry:hover{background:var(--_gengage-surface-secondary, #f3f4f6)}.gengage-simrel-tabs{display:flex;gap:8px;border-bottom:2px solid var(--_gengage-border-color);margin-bottom:16px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.gengage-simrel-tabs::-webkit-scrollbar{display:none}.gengage-simrel-tab{min-height:40px;padding:10px 14px;border:none;background:transparent;color:var(--_gengage-text-primary, #374151);opacity:.7;font-size:inherit;font-family:inherit;cursor:pointer;white-space:nowrap;border-bottom:2px solid transparent;margin-bottom:-2px;transition:color .2s,border-color .2s,opacity .2s}.gengage-simrel-tab:hover{color:var(--gengage-primary-color, #3b82f6)}.gengage-simrel-tab--active{color:var(--gengage-primary-color, #3b82f6);border-bottom-color:var(--gengage-primary-color, #3b82f6);font-weight:600;opacity:1}.gengage-simrel-loading{display:flex;justify-content:center;padding:40px}.gengage-simrel-spinner{width:32px;height:32px;border:3px solid var(--_gengage-border-color);border-top-color:var(--gengage-primary-color, #3b82f6);border-radius:50%;animation:gengage-simrel-spin .7s linear infinite}@keyframes gengage-simrel-spin{to{transform:rotate(360deg)}}@media(max-width:768px){.gengage-simrel-grid{gap:10px;padding-top:8px;scroll-snap-type:x mandatory}.gengage-simrel-card{width:200px;min-width:200px;max-width:200px;scroll-snap-align:center}.gengage-simrel-card-image img{height:140px}.gengage-simrel-card-cta,.gengage-simrel-quick-action,.gengage-simrel-tab{min-height:44px}.gengage-simrel-card .gengage-simrel-atc .gengage-qty-btn{width:44px;height:44px;font-size:16px}.gengage-simrel-card .gengage-simrel-atc .gengage-qty-submit{min-height:44px;flex-basis:auto;border-left:1px solid var(--_gengage-border-color);border-top:none}.gengage-simrel-card{border:1px solid var(--_gengage-border-color)}.gengage-simrel-card-price-current{font-size:14px}}.gengage-simrel-card:focus-visible,.gengage-simrel-tab:focus-visible,.gengage-simrel-quick-action:focus-visible,.gengage-simrel-atc .gengage-qty-btn:focus-visible,.gengage-simrel-atc .gengage-qty-submit:focus-visible{outline:2px solid var(--gengage-primary-color, #3b82f6);outline-offset:2px}@media(prefers-reduced-motion:reduce){.gengage-simrel-uispec>*,.gengage-simrel-card,.gengage-simrel-card-image img,.gengage-simrel-quick-action,.gengage-simrel-spinner{animation:none!important;transition:none!important;transform:none!important}}
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/chat/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/chat/api.ts"],"names":[],"mappings":"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"}
@@ -164,6 +164,7 @@ export declare const ProductDetailsPanelSchema: z.ZodObject<{
164
164
  promotions: z.ZodOptional<z.ZodArray<z.ZodString>>;
165
165
  variants: z.ZodOptional<z.ZodArray<z.ZodObject<{
166
166
  name: z.ZodOptional<z.ZodString>;
167
+ value: z.ZodOptional<z.ZodString>;
167
168
  variant_name: z.ZodOptional<z.ZodString>;
168
169
  sku: z.ZodOptional<z.ZodString>;
169
170
  price: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>;
@@ -387,6 +388,7 @@ export declare const chatCatalog: {
387
388
  promotions: z.ZodOptional<z.ZodArray<z.ZodString>>;
388
389
  variants: z.ZodOptional<z.ZodArray<z.ZodObject<{
389
390
  name: z.ZodOptional<z.ZodString>;
391
+ value: z.ZodOptional<z.ZodString>;
390
392
  variant_name: z.ZodOptional<z.ZodString>;
391
393
  sku: z.ZodOptional<z.ZodString>;
392
394
  price: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>>;
@@ -1 +1 @@
1
- {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/chat/catalog.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,mBAAmB;;;;;;;iBAI9B,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;iBAS5B,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;iBAY9B,CAAC;AAEH,eAAO,MAAM,qBAAqB,gCAAe,CAAC;AAElD,eAAO,MAAM,aAAa;;iBAExB,CAAC;AAWH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA+BhC,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;iBAG/B,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;iBAc9B,CAAC;AAEH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;iBAE3B,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;iBAKpC,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;iBAShC,CAAC;AAEH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;iBAUvC,CAAC;AAeH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAwBpC,CAAC;AAEH,eAAO,MAAM,iBAAiB;;iBAE5B,CAAC;AASH,eAAO,MAAM,sBAAsB;;;;;;;iBAEjC,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;iBAI5B,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;iBAiBpC,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;iBAI9B,CAAC;AAUH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmEd,CAAC;AAEX,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAC;AAC7C,MAAM,MAAM,iBAAiB,GAAG,MAAM,WAAW,CAAC,YAAY,CAAC,CAAC"}
1
+ {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/chat/catalog.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,mBAAmB;;;;;;;iBAI9B,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;iBAS5B,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;iBAY9B,CAAC;AAEH,eAAO,MAAM,qBAAqB,gCAAe,CAAC;AAElD,eAAO,MAAM,aAAa;;iBAExB,CAAC;AAWH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA+BhC,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;iBAG/B,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;iBAc9B,CAAC;AAEH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;iBAE3B,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;iBAKpC,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;iBAShC,CAAC;AAEH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;iBAUvC,CAAC;AAgBH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAwBpC,CAAC;AAEH,eAAO,MAAM,iBAAiB;;iBAE5B,CAAC;AASH,eAAO,MAAM,sBAAsB;;;;;;;iBAEjC,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;iBAI5B,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;iBAiBpC,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;;iBAI9B,CAAC;AAUH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmEd,CAAC;AAEX,MAAM,MAAM,WAAW,GAAG,OAAO,WAAW,CAAC;AAC7C,MAAM,MAAM,iBAAiB,GAAG,MAAM,WAAW,CAAC,YAAY,CAAC,CAAC"}
@@ -1,27 +1,44 @@
1
1
  import { ChatI18n, ChatMessage } from '../types.js';
2
2
  import { ThumbnailEntry } from './ThumbnailsColumn.js';
3
+ /** Generic fallback icon (right-arrow) used when a pill specifies an icon name not in the map. */
4
+ declare const DEFAULT_ACTION_ICON = "<svg viewBox=\"0 0 16 16\" class=\"gengage-chat-icon\"><path d=\"M3 8h10M9 4l4 4-4 4\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/></svg>";
3
5
  /** SVG icon map for suggested action chips/pills. Keys match backend icon names. */
4
6
  declare const SUGGESTED_ACTION_ICONS: Record<string, string>;
5
- export { SUGGESTED_ACTION_ICONS };
7
+ export { SUGGESTED_ACTION_ICONS, DEFAULT_ACTION_ICON };
6
8
  export interface ChatDrawerOptions {
7
9
  i18n: ChatI18n;
8
10
  onSend: (text: string, attachment?: File) => void;
11
+ /** Callback fired when the cart icon button in the header is clicked. */
12
+ onCartClick?: (() => void) | undefined;
9
13
  onClose: () => void;
10
14
  onAttachment?: (file: File) => void;
11
15
  onPanelToggle?: () => void;
12
16
  onRollback?: (messageId: string) => void;
13
17
  headerTitle?: string | undefined;
14
18
  headerAvatarUrl?: string | undefined;
19
+ /** Launcher image URL — used as avatar fallback when headerAvatarUrl is not set. */
20
+ launcherImageUrl?: string | undefined;
15
21
  headerBadge?: string | undefined;
16
22
  /** URL for the cart icon link in the header (e.g. "/sepetim"). */
23
+ /** @deprecated Use onCartClick instead. If set, the cart button will navigate to this URL. */
17
24
  headerCartUrl?: string | undefined;
18
- /** Show a favorites (heart) toggle button in the header. */
25
+ /** @deprecated Favorites button is always shown. */
19
26
  headerFavoritesToggle?: boolean | undefined;
20
27
  onFavoritesClick?: (() => void) | undefined;
21
28
  /** Callback fired when the panel back button is clicked. */
22
29
  onPanelBack?: (() => void) | undefined;
23
30
  /** Callback fired when the panel forward button is clicked. */
24
31
  onPanelForward?: (() => void) | undefined;
32
+ /**
33
+ * Fired when the user drags the mobile handle and releases.
34
+ * 'half' | 'full' → switch to that snap position.
35
+ * 'close' → close the drawer.
36
+ */
37
+ onMobileSnap?: ((state: 'half' | 'full' | 'close') => void) | undefined;
38
+ /** Returns the current mobile sheet state so the drag handler knows which snap to target. */
39
+ getMobileState?: (() => 'half' | 'full') | undefined;
40
+ /** Returns true when the chat is displayed as a mobile bottom-sheet. Used to keep the side-panel back button always enabled. */
41
+ getMobileViewport?: (() => boolean) | undefined;
25
42
  /** Callback fired when a product thumbnail is clicked (for thread rollback). */
26
43
  onThumbnailClick?: ((threadId: string) => void) | undefined;
27
44
  /** Callback fired when a link in bot HTML is clicked. */
@@ -30,6 +47,8 @@ export interface ChatDrawerOptions {
30
47
  voiceEnabled?: boolean | undefined;
31
48
  /** BCP 47 language for speech recognition. Default: 'tr-TR'. */
32
49
  voiceLang?: string | undefined;
50
+ /** Callback fired when the "New Chat" button is clicked. */
51
+ onNewChat?: (() => void) | undefined;
33
52
  }
34
53
  export declare class ChatDrawer {
35
54
  private root;
@@ -57,6 +76,8 @@ export declare class ChatDrawer {
57
76
  private _scrollLockedUntil;
58
77
  private _inputChipsEl;
59
78
  private _thumbnailsColumn;
79
+ private _panelFloatingEl;
80
+ private _favBadgeEl;
60
81
  private _thinkingSteps;
61
82
  private _firstBotMessageIds;
62
83
  private _voiceInput;
@@ -68,6 +89,9 @@ export declare class ChatDrawer {
68
89
  private _focusTrapHandler;
69
90
  private _previouslyFocusedElement;
70
91
  private _stillWorkingTimer;
92
+ private _conversationEl;
93
+ private readonly _options;
94
+ private _reopenPanelBtn;
71
95
  constructor(container: HTMLElement, options: ChatDrawerOptions);
72
96
  addMessage(message: ChatMessage): void;
73
97
  showTypingIndicator(searchText?: string): void;
@@ -80,6 +104,11 @@ export declare class ChatDrawer {
80
104
  /** Remove the stop-generating button if present. */
81
105
  hideStopButton(): void;
82
106
  showError(message?: string, onRetry?: () => void): void;
107
+ /** Show error with recovery action pills ("Try again" + "Ask something else"). */
108
+ showErrorWithRecovery(message: string, actions: {
109
+ onRetry: () => void;
110
+ onNewQuestion: () => void;
111
+ }): void;
83
112
  clearMessages(): void;
84
113
  /** Replace suggestion pills. Pass empty array to hide. */
85
114
  setPills(pills: Array<{
@@ -105,6 +134,8 @@ export declare class ChatDrawer {
105
134
  appendPanelContent(el: HTMLElement): void;
106
135
  /** Return the panel element's content child (after topbar), or null. */
107
136
  getPanelContentElement(): HTMLElement | null;
137
+ /** Whether the panel is currently visible (may be empty). */
138
+ isPanelVisible(): boolean;
108
139
  /** Whether the panel is currently visible and has rendered content (beyond topbar + thumbnails column). */
109
140
  hasPanelContent(): boolean;
110
141
  /** Whether panel currently shows loading skeleton blocks. */
@@ -113,6 +144,9 @@ export declare class ChatDrawer {
113
144
  showPanelLoading(contentType?: string): void;
114
145
  /** Update the panel top bar navigation state. */
115
146
  updatePanelTopBar(canBack: boolean, canForward: boolean, title: string): void;
147
+ getPanelTopBarTitle(): string;
148
+ /** Update the favorites badge count. Pass 0 to hide the badge. */
149
+ updateFavoritesBadge(count: number): void;
116
150
  /**
117
151
  * Hide the panel and clear its content. Always hides — even in force-expanded mode.
118
152
  * Callers: _hideDrawer (stale panel cleanup), stream onDone (loading skeleton cleanup),
@@ -120,6 +154,12 @@ export declare class ChatDrawer {
120
154
  * Keeps `_panelCollapsed` untouched so user collapse preference survives future panel renders.
121
155
  */
122
156
  clearPanel(): void;
157
+ /**
158
+ * On mobile: hide the side panel overlay without clearing its content.
159
+ * Shows the reopen button in the header so the user can slide the panel back in.
160
+ */
161
+ hideMobilePanel(): void;
162
+ private _showMobilePanelFromBtn;
123
163
  /** Expand panel without locking — user can still toggle via divider. */
124
164
  expandPanel(): void;
125
165
  /**
@@ -127,6 +167,10 @@ export declare class ChatDrawer {
127
167
  * Users can still collapse/expand via the divider chevron.
128
168
  */
129
169
  setForceExpanded(): void;
170
+ /** Update scroll affordance (bottom fade gradient) on the panel. */
171
+ private _updateScrollAffordance;
172
+ /** Horizontal swipe on conversation/panel areas to toggle the panel (mobile only). */
173
+ private _setupHorizontalSwipe;
130
174
  /** Toggle panel between collapsed and expanded. */
131
175
  togglePanel(): void;
132
176
  /** Whether the panel is currently collapsed by the user. */
@@ -141,6 +185,7 @@ export declare class ChatDrawer {
141
185
  private _renderThinkingSteps;
142
186
  /** Render the accumulated thinking-step checklist into a container element. */
143
187
  private _renderThinkingStepsInto;
188
+ private _updateSendEnabled;
144
189
  private _submit;
145
190
  private _toggleVoice;
146
191
  /** Lock auto-scroll for 500ms after session history restore to prevent visual jump. */
@@ -1 +1 @@
1
- {"version":3,"file":"ChatDrawer.d.ts","sourceRoot":"","sources":["../../../src/chat/components/ChatDrawer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ChatDrawer.d.ts","sourceRoot":"","sources":["../../../src/chat/components/ChatDrawer.ts"],"names":[],"mappings":"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"}
@@ -8,10 +8,12 @@ export interface ChoicePrompterOptions {
8
8
  heading: string;
9
9
  suggestion: string;
10
10
  ctaLabel: string;
11
+ threadId: string;
11
12
  onCtaClick: () => void;
12
13
  onDismiss?: () => void;
13
14
  dismissAriaLabel?: string;
14
15
  }
15
16
  export declare function createChoicePrompter(options: ChoicePrompterOptions): HTMLElement;
16
- export declare function isChoicePrompterDismissed(): boolean;
17
+ export declare function isChoicePrompterGloballyDismissed(): boolean;
18
+ export declare function isChoicePrompterDismissed(threadId: string): boolean;
17
19
  //# sourceMappingURL=ChoicePrompter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ChoicePrompter.d.ts","sourceRoot":"","sources":["../../../src/chat/components/ChoicePrompter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,qBAAqB,GAAG,WAAW,CAsChF;AAED,wBAAgB,yBAAyB,IAAI,OAAO,CAMnD"}
1
+ {"version":3,"file":"ChoicePrompter.d.ts","sourceRoot":"","sources":["../../../src/chat/components/ChoicePrompter.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,qBAAqB,GAAG,WAAW,CAgDhF;AAED,wBAAgB,iCAAiC,IAAI,OAAO,CAM3D;AAED,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CASnE"}
@@ -1 +1 @@
1
- {"version":3,"file":"ComparisonTable.d.ts","sourceRoot":"","sources":["../../../src/chat/components/ComparisonTable.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAwCzE;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAMnG;AAED,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAClC;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,sFAAsF;IACtF,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,iBAAiB,CAAC;IAC/B,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,UAAU,EAAE,mBAAmB,EAAE,CAAC;IAClC,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IACpC,cAAc,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,WAAW,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IAClD,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,GAAG,SAAS,CAAC;IACtF,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,GAAG,SAAS,CAAC;IAChG,kBAAkB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,IAAI,CAAC,EAAE,mBAAmB,GAAG,SAAS,CAAC;IACvC,OAAO,CAAC,EAAE,iBAAiB,GAAG,SAAS,CAAC;CACzC;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,sBAAsB,GAAG,WAAW,CA2MlF"}
1
+ {"version":3,"file":"ComparisonTable.d.ts","sourceRoot":"","sources":["../../../src/chat/components/ComparisonTable.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAwCzE;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAMnG;AAED,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAClC;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB;IAClC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,sFAAsF;IACtF,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,sBAAsB;IACrC,WAAW,EAAE,iBAAiB,CAAC;IAC/B,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,UAAU,EAAE,mBAAmB,EAAE,CAAC;IAClC,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IACpC,cAAc,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,WAAW,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IAClD,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,GAAG,SAAS,CAAC;IACtF,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,GAAG,SAAS,CAAC;IAChG,kBAAkB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,IAAI,CAAC,EAAE,mBAAmB,GAAG,SAAS,CAAC;IACvC,OAAO,CAAC,EAAE,iBAAiB,GAAG,SAAS,CAAC;CACzC;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,sBAAsB,GAAG,WAAW,CA+NlF"}
@@ -1 +1 @@
1
- {"version":3,"file":"GroundingReviewCard.d.ts","sourceRoot":"","sources":["../../../src/chat/components/GroundingReviewCard.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAiB,MAAM,uBAAuB,CAAC;AACtE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAE3D,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,uBAAuB,GAAG,WAAW,CAiDvG"}
1
+ {"version":3,"file":"GroundingReviewCard.d.ts","sourceRoot":"","sources":["../../../src/chat/components/GroundingReviewCard.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAiB,MAAM,uBAAuB,CAAC;AACtE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAE3D,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,uBAAuB,GAAG,WAAW,CAyDvG"}
@@ -18,5 +18,6 @@ export declare class PanelTopBar {
18
18
  constructor(options: PanelTopBarOptions);
19
19
  update(canBack: boolean, canForward: boolean, title: string): void;
20
20
  getElement(): HTMLElement;
21
+ getTitle(): string;
21
22
  }
22
23
  //# sourceMappingURL=PanelTopBar.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PanelTopBar.d.ts","sourceRoot":"","sources":["../../../src/chat/components/PanelTopBar.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,GAAG,CAAc;IACzB,OAAO,CAAC,QAAQ,CAAoB;IACpC,OAAO,CAAC,WAAW,CAAoB;IACvC,OAAO,CAAC,QAAQ,CAAc;gBAElB,OAAO,EAAE,kBAAkB;IA4BvC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAMlE,UAAU,IAAI,WAAW;CAG1B"}
1
+ {"version":3,"file":"PanelTopBar.d.ts","sourceRoot":"","sources":["../../../src/chat/components/PanelTopBar.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,SAAS,EAAE,MAAM,IAAI,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,GAAG,CAAc;IACzB,OAAO,CAAC,QAAQ,CAAoB;IACpC,OAAO,CAAC,WAAW,CAAoB;IACvC,OAAO,CAAC,QAAQ,CAAc;gBAElB,OAAO,EAAE,kBAAkB;IA8BvC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAMlE,UAAU,IAAI,WAAW;IAIzB,QAAQ,IAAI,MAAM;CAGnB"}
@@ -1 +1 @@
1
- {"version":3,"file":"ProductSummaryCard.d.ts","sourceRoot":"","sources":["../../../src/chat/components/ProductSummaryCard.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAK3D,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,uBAAuB,GAAG,WAAW,CAgGtG"}
1
+ {"version":3,"file":"ProductSummaryCard.d.ts","sourceRoot":"","sources":["../../../src/chat/components/ProductSummaryCard.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAK3D,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,uBAAuB,GAAG,WAAW,CAkGtG"}
@@ -1 +1 @@
1
- {"version":3,"file":"ReviewHighlights.d.ts","sourceRoot":"","sources":["../../../src/chat/components/ReviewHighlights.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AASvD,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,SAAS,EAClB,OAAO,CAAC,EAAE;IACR,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,oBAAoB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,oBAAoB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC3C,GACA,WAAW,CA+Ib"}
1
+ {"version":3,"file":"ReviewHighlights.d.ts","sourceRoot":"","sources":["../../../src/chat/components/ReviewHighlights.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AASvD,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,SAAS,EAClB,OAAO,CAAC,EAAE;IACR,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,oBAAoB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,oBAAoB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC3C,GACA,WAAW,CA6Kb"}
@@ -1 +1 @@
1
- {"version":3,"file":"renderUISpec.d.ts","sourceRoot":"","sources":["../../../src/chat/components/renderUISpec.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,MAAM,EAA4B,MAAM,uBAAuB,CAAC;AAE9E,OAAO,KAAK,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAClG,OAAO,KAAK,EAAE,uBAAuB,EAAoB,MAAM,aAAa,CAAC;AAE7E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAsBzE,MAAM,MAAM,mBAAmB,GAAG,uBAAuB,CAAC;AAE1D,MAAM,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,mBAAmB,CAAC,CAAC;AAExE,YAAY,EAAE,iBAAiB,EAAE,CAAC;AA+BlC,eAAO,MAAM,gCAAgC,EAAE,wBAAwB,CAAC,mBAAmB,CAgB1F,CAAC;AAEF,wBAAgB,+BAA+B,IAAI,kBAAkB,CAEpE;AAED,wBAAgB,YAAY,CAC1B,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,mBAAmB,EACxB,QAAQ,qBAAgC,EACxC,eAAe,GAAE,wBAAwB,CAAC,mBAAmB,CAAoC,GAChG,WAAW,CAQb"}
1
+ {"version":3,"file":"renderUISpec.d.ts","sourceRoot":"","sources":["../../../src/chat/components/renderUISpec.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,MAAM,EAA4B,MAAM,uBAAuB,CAAC;AAE9E,OAAO,KAAK,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAClG,OAAO,KAAK,EAAE,uBAAuB,EAAoB,MAAM,aAAa,CAAC;AAE7E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAsBzE,MAAM,MAAM,mBAAmB,GAAG,uBAAuB,CAAC;AAE1D,MAAM,MAAM,kBAAkB,GAAG,iBAAiB,CAAC,mBAAmB,CAAC,CAAC;AAExE,YAAY,EAAE,iBAAiB,EAAE,CAAC;AAgClC,eAAO,MAAM,gCAAgC,EAAE,wBAAwB,CAAC,mBAAmB,CAgB1F,CAAC;AAEF,wBAAgB,+BAA+B,IAAI,kBAAkB,CAEpE;AAED,wBAAgB,YAAY,CAC1B,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,mBAAmB,EACxB,QAAQ,qBAAgC,EACxC,eAAe,GAAE,wBAAwB,CAAC,mBAAmB,CAAoC,GAChG,WAAW,CAQb"}
@@ -39,6 +39,8 @@ export declare class GengageChat extends BaseWidget<ChatWidgetConfig> {
39
39
  private _lastSku;
40
40
  private _comparisonSelectMode;
41
41
  private _comparisonSelectedSkus;
42
+ /** SKUs of products the user has viewed across panel product grids. */
43
+ private _viewedProductSkus;
42
44
  private _thumbnailEntries;
43
45
  private _choicePrompterEl;
44
46
  private _openState;
@@ -73,12 +75,23 @@ export declare class GengageChat extends BaseWidget<ChatWidgetConfig> {
73
75
  private _threadsWithFirstBot;
74
76
  /** Panel state manager (snapshots, topbar, navigation). */
75
77
  private _panel;
78
+ /** Client-side panel navigation stack for local drilldowns (e.g. card → detail). Max 10 entries.
79
+ * Stores rebuild info (UISpec or kind) instead of DOM clones so back navigation
80
+ * produces fresh elements with live event listeners. */
81
+ private _localPanelHistory;
82
+ private static readonly _MAX_PANEL_HISTORY;
83
+ /** Tracks how the current panel content was produced, for history/error-recovery rebuild. */
84
+ private _currentPanelSource;
76
85
  /** IndexedDB session persistence manager. */
77
86
  private _session;
78
87
  /** Registered event callbacks (GA4 event hooks). Key = event name, value = set of callbacks. */
79
88
  private _eventCallbacks;
80
89
  /** Last sent action+options for retry on error. */
81
90
  private _lastSentAction;
91
+ /** Consecutive identical error counter for account-inactive detection. */
92
+ private _consecutiveErrorCount;
93
+ /** Last error message text for deduplication. */
94
+ private _lastErrorMessage;
82
95
  protected onInit(config: ChatWidgetConfig): Promise<void>;
83
96
  protected onUpdate(context: Partial<PageContext>): void;
84
97
  protected onShow(): void;
@@ -113,6 +126,8 @@ export declare class GengageChat extends BaseWidget<ChatWidgetConfig> {
113
126
  private _handleBridgeMessage;
114
127
  private _registerPublicAPI;
115
128
  private _showDrawer;
129
+ /** Show welcome message and starter pills on first open with empty history. */
130
+ private _showWelcomeIfNeeded;
116
131
  private _hideDrawer;
117
132
  private _syncViewportState;
118
133
  private _applyOpenStateClasses;
@@ -146,6 +161,11 @@ export declare class GengageChat extends BaseWidget<ChatWidgetConfig> {
146
161
  * Extracted so both the render-context callback and DOM-created checkboxes
147
162
  * share the same state-mutation + refresh path.
148
163
  */
164
+ /**
165
+ * Panel back navigation: pop local drilldown history first (e.g. card→detail),
166
+ * then fall back to thread-level history.
167
+ */
168
+ private _navigatePanelBack;
149
169
  private _toggleComparisonSku;
150
170
  /**
151
171
  * Refresh the panel DOM to reflect the current comparison state without
@@ -159,6 +179,8 @@ export declare class GengageChat extends BaseWidget<ChatWidgetConfig> {
159
179
  */
160
180
  private _buildRenderContext;
161
181
  private _toggleFavorite;
182
+ private _openFavoritesPanel;
183
+ private _buildFavoritesPageEl;
162
184
  /**
163
185
  * Run registered callbacks for a GA4 event.
164
186
  * If any callback returns false or throws, handle the failure (e.g. show error for cart-add).
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/chat/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/chat/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"en.d.ts","sourceRoot":"","sources":["../../../src/chat/locales/en.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,eAAO,MAAM,YAAY,EAAE,QAiF1B,CAAC"}
1
+ {"version":3,"file":"en.d.ts","sourceRoot":"","sources":["../../../src/chat/locales/en.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,eAAO,MAAM,YAAY,EAAE,QAuF1B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"tr.d.ts","sourceRoot":"","sources":["../../../src/chat/locales/tr.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,eAAO,MAAM,YAAY,EAAE,QAiF1B,CAAC"}
1
+ {"version":3,"file":"tr.d.ts","sourceRoot":"","sources":["../../../src/chat/locales/tr.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,eAAO,MAAM,YAAY,EAAE,QAuF1B,CAAC"}
@@ -17,6 +17,8 @@ export declare class PanelManager {
17
17
  private readonly deps;
18
18
  /** Panel content snapshots keyed by bot message ID for history navigation. */
19
19
  readonly snapshots: Map<string, HTMLElement>;
20
+ /** Rebuild functions keyed by message ID — produce fresh DOM with live event listeners. */
21
+ private readonly _snapshotRebuilders;
20
22
  /** Component type for each panel snapshot (for topbar title restoration). */
21
23
  readonly snapshotTypes: Map<string, string>;
22
24
  /** Currently active (highlighted) message ID in the chat pane. */
@@ -29,11 +31,11 @@ export declare class PanelManager {
29
31
  lastActionType: string | null;
30
32
  constructor(deps: PanelManagerDeps);
31
33
  /**
32
- * Deep-clone the current panel content (excluding topbar/thumbnails) and store
33
- * it keyed by message ID. Called when a stream completes so panel content can
34
- * be restored later without duplicating the topbar.
34
+ * Snapshot the current panel state for a message. Stores a rebuild function
35
+ * (preferred produces fresh DOM with live event listeners) alongside a
36
+ * static DOM clone as fallback.
35
37
  */
36
- snapshotForMessage(messageId: string): void;
38
+ snapshotForMessage(messageId: string, rebuild?: (() => HTMLElement) | undefined): void;
37
39
  /**
38
40
  * Attach a click handler to a bot message bubble so clicking it restores
39
41
  * the panel content that was active when that message was received.
@@ -1 +1 @@
1
- {"version":3,"file":"panel-manager.d.ts","sourceRoot":"","sources":["../../src/chat/panel-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,KAAK,EAAE,mBAAmB,EAAoB,MAAM,0BAA0B,CAAC;AACtF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,MAAM,EAAa,MAAM,oBAAoB,CAAC;AAE5D,sEAAsE;AACtE,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,UAAU,GAAG,IAAI,CAAC;IAChC,MAAM,EAAE,MAAM,UAAU,GAAG,IAAI,CAAC;IAChC,eAAe,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;IACrC,MAAM,EAAE,MAAM,mBAAmB,GAAG,IAAI,CAAC;IACzC,mBAAmB,EAAE,MAAM,mBAAmB,GAAG,IAAI,CAAC;IACtD,IAAI,EAAE,MAAM,QAAQ,CAAC;IACrB,gBAAgB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9C;AAED,qBAAa,YAAY;IAcX,OAAO,CAAC,QAAQ,CAAC,IAAI;IAbjC,8EAA8E;IAC9E,QAAQ,CAAC,SAAS,2BAAkC;IACpD,6EAA6E;IAC7E,QAAQ,CAAC,aAAa,sBAA6B;IACnD,kEAAkE;IAClE,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC3C,oCAAoC;IACpC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAQ;IAClC,gEAAgE;IAChE,OAAO,EAAE,MAAM,EAAE,CAAM;IACvB,sFAAsF;IACtF,cAAc,EAAE,MAAM,GAAG,IAAI,CAAQ;gBAER,IAAI,EAAE,gBAAgB;IAEnD;;;;OAIG;IACH,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAe3C;;;OAGG;IACH,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAQ3C;;;;;OAKG;IACH,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IA8B7C;;;OAGG;IACH,eAAe,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI;IASxC;;;OAGG;IACH,iBAAiB,CAAC,aAAa,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM;IAoBvE;;;OAGG;IACH,YAAY,CAAC,aAAa,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI;IAUhE;;;OAGG;IACH,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAoBjD;;OAEG;IACH,kBAAkB,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI;IAW/C,6CAA6C;IAC7C,YAAY,IAAI,IAAI;IAUpB,yCAAyC;IACzC,eAAe,IAAI,IAAI;IAUvB;;;;OAIG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAkBjC,OAAO,IAAI,IAAI;CAOhB;AAMD;;;;;;GAMG;AACH,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,QAAQ,GAAG,gBAAgB,CAAC;AAExE,wBAAgB,0BAA0B,CAAC,IAAI,EAAE;IAC/C,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,OAAO,CAAC;IACxB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,EAAE,OAAO,CAAC;IACxB,2BAA2B,EAAE,OAAO,CAAC;CACtC,GAAG,iBAAiB,CAwBpB"}
1
+ {"version":3,"file":"panel-manager.d.ts","sourceRoot":"","sources":["../../src/chat/panel-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,KAAK,EAAE,mBAAmB,EAAoB,MAAM,0BAA0B,CAAC;AACtF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,MAAM,EAAa,MAAM,oBAAoB,CAAC;AAE5D,sEAAsE;AACtE,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,UAAU,GAAG,IAAI,CAAC;IAChC,MAAM,EAAE,MAAM,UAAU,GAAG,IAAI,CAAC;IAChC,eAAe,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;IACrC,MAAM,EAAE,MAAM,mBAAmB,GAAG,IAAI,CAAC;IACzC,mBAAmB,EAAE,MAAM,mBAAmB,GAAG,IAAI,CAAC;IACtD,IAAI,EAAE,MAAM,QAAQ,CAAC;IACrB,gBAAgB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9C;AAED,qBAAa,YAAY;IAgBX,OAAO,CAAC,QAAQ,CAAC,IAAI;IAfjC,8EAA8E;IAC9E,QAAQ,CAAC,SAAS,2BAAkC;IACpD,2FAA2F;IAC3F,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAwC;IAC5E,6EAA6E;IAC7E,QAAQ,CAAC,aAAa,sBAA6B;IACnD,kEAAkE;IAClE,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC3C,oCAAoC;IACpC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAQ;IAClC,gEAAgE;IAChE,OAAO,EAAE,MAAM,EAAE,CAAM;IACvB,sFAAsF;IACtF,cAAc,EAAE,MAAM,GAAG,IAAI,CAAQ;gBAER,IAAI,EAAE,gBAAgB;IAEnD;;;;OAIG;IACH,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,MAAM,WAAW,CAAC,GAAG,SAAS,GAAG,IAAI;IAgBtF;;;OAGG;IACH,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAQ3C;;;;;OAKG;IACH,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAiC7C;;;OAGG;IACH,eAAe,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI;IASxC;;;OAGG;IACH,iBAAiB,CAAC,aAAa,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM;IAoBvE;;;OAGG;IACH,YAAY,CAAC,aAAa,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI;IAUhE;;;OAGG;IACH,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAoBjD;;OAEG;IACH,kBAAkB,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI;IAW/C,6CAA6C;IAC7C,YAAY,IAAI,IAAI;IAUpB,yCAAyC;IACzC,eAAe,IAAI,IAAI;IAUvB;;;;OAIG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAkBjC,OAAO,IAAI,IAAI;CAQhB;AAMD;;;;;;GAMG;AACH,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,QAAQ,GAAG,gBAAgB,CAAC;AAExE,wBAAgB,0BAA0B,CAAC,IAAI,EAAE;IAC/C,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,OAAO,CAAC;IACxB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,EAAE,OAAO,CAAC;IACxB,2BAA2B,EAAE,OAAO,CAAC;CACtC,GAAG,iBAAiB,CAwBpB"}
@@ -1,8 +1,9 @@
1
- import { GengageIndexedDB } from '../common/indexed-db.js';
1
+ import { GengageIndexedDB, FavoriteData } from '../common/indexed-db.js';
2
2
  import { CommunicationBridge } from '../common/communication-bridge.js';
3
3
  import { BackendContext, UISpec } from '../common/types.js';
4
4
  import { ChatMessage } from './types.js';
5
5
  import { ThumbnailEntry } from './components/ThumbnailsColumn.js';
6
+ export type { FavoriteData };
6
7
  export interface PersistSessionParams {
7
8
  userId: string;
8
9
  appId: string;
@@ -21,6 +22,8 @@ export declare class SessionPersistence {
21
22
  private _db;
22
23
  /** Favorited product SKUs (loaded from IDB). */
23
24
  readonly favoritedSkus: Set<string>;
25
+ /** Full favorite data cache (loaded from IDB alongside favoritedSkus). */
26
+ private _favoritesCache;
24
27
  /** Async mutex: serializes persist() calls to prevent interleaved IDB writes. */
25
28
  private _persistLock;
26
29
  constructor(db: GengageIndexedDB | null);
@@ -51,6 +54,8 @@ export declare class SessionPersistence {
51
54
  * Load favorited SKUs from IDB into the in-memory set.
52
55
  */
53
56
  loadFavorites(userId: string, appId: string): Promise<void>;
57
+ /** Returns favorited products ordered newest-first. */
58
+ getFavoriteProducts(): FavoriteData[];
54
59
  /**
55
60
  * Toggle a product's favorited state in IDB and in-memory set.
56
61
  */
@@ -1 +1 @@
1
- {"version":3,"file":"session-persistence.d.ts","sourceRoot":"","sources":["../../src/chat/session-persistence.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAE7E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,KAAK,EAAE,WAAW,EAA2B,MAAM,YAAY,CAAC;AACvE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAEvE,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACzC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,gBAAgB,EAAE,cAAc,EAAE,CAAC;IACnC,kBAAkB,EAAE,cAAc,GAAG,IAAI,CAAC;IAC1C,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC1B;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,GAAG,CAA0B;IACrC,gDAAgD;IAChD,QAAQ,CAAC,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAa;IAChD,iFAAiF;IACjF,OAAO,CAAC,YAAY,CAAoC;gBAE5C,EAAE,EAAE,gBAAgB,GAAG,IAAI;IAIvC,IAAI,EAAE,IAAI,gBAAgB,GAAG,IAAI,CAEhC;IAED,IAAI,EAAE,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI,EAEpC;IAED;;;OAGG;IACG,OAAO,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;YAgB5C,YAAY;IA4D1B;;;;;;;;OAQG;IACG,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,mBAAmB,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBpH;;;OAGG;IACG,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAiB9E;;OAEG;IACG,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUjE;;OAEG;IACG,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBjH,KAAK,IAAI,IAAI;CAId"}
1
+ {"version":3,"file":"session-persistence.d.ts","sourceRoot":"","sources":["../../src/chat/session-persistence.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC9E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAE7E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,KAAK,EAAE,WAAW,EAA2B,MAAM,YAAY,CAAC;AACvE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAEvE,YAAY,EAAE,YAAY,EAAE,CAAC;AAE7B,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACzC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,gBAAgB,EAAE,cAAc,EAAE,CAAC;IACnC,kBAAkB,EAAE,cAAc,GAAG,IAAI,CAAC;IAC1C,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC1B;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,GAAG,CAA0B;IACrC,gDAAgD;IAChD,QAAQ,CAAC,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAa;IAChD,0EAA0E;IAC1E,OAAO,CAAC,eAAe,CAAwC;IAC/D,iFAAiF;IACjF,OAAO,CAAC,YAAY,CAAoC;gBAE5C,EAAE,EAAE,gBAAgB,GAAG,IAAI;IAIvC,IAAI,EAAE,IAAI,gBAAgB,GAAG,IAAI,CAEhC;IAED,IAAI,EAAE,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI,EAEpC;IAED;;;OAGG;IACG,OAAO,CAAC,MAAM,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;YAgB5C,YAAY;IA4D1B;;;;;;;;OAQG;IACG,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,mBAAmB,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBpH;;;OAGG;IACG,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAiB9E;;OAEG;IACG,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAajE,uDAAuD;IACvD,mBAAmB,IAAI,YAAY,EAAE;IAMrC;;OAEG;IACG,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBjH,KAAK,IAAI,IAAI;CAId"}
@@ -34,8 +34,10 @@ export interface ChatWidgetConfig extends BaseWidgetConfig {
34
34
  headerCartUrl?: string;
35
35
  /** Show a favorites (heart) toggle button in the header. */
36
36
  headerFavoritesToggle?: boolean;
37
- /** Callback fired when the favorites header button is clicked. */
37
+ /** Callback fired when the favorites header button is clicked (before internal favorites panel opens). */
38
38
  onFavoritesClick?: () => void;
39
+ /** Callback fired when the cart icon button in the header is clicked (when headerCartUrl is not set). */
40
+ onCartClick?: () => void;
39
41
  /** Hide the launcher on mobile viewports. */
40
42
  hideMobileLauncher?: boolean;
41
43
  /** Mobile breakpoint in px (default: 768). */
@@ -59,6 +61,10 @@ export interface ChatWidgetConfig extends BaseWidgetConfig {
59
61
  unknownActionPolicy?: UnknownActionPolicy;
60
62
  allowScriptCall?: boolean;
61
63
  };
64
+ /** Welcome message shown on first drawer open with empty history. */
65
+ welcomeMessage?: string;
66
+ /** Starter action pills shown with welcome message. */
67
+ welcomeActions?: string[];
62
68
  /**
63
69
  * Whether this is a demo website. When true, `productDetails` content
64
70
  * triggers the extended panel (host PDP maximize). Regular accounts
@@ -74,6 +80,12 @@ export interface ChatWidgetConfig extends BaseWidgetConfig {
74
80
  name: string;
75
81
  payload?: Record<string, unknown>;
76
82
  }) => void;
83
+ /**
84
+ * Allowed origins for the postMessage communication bridge.
85
+ * Defaults to `[location.origin]` (same-origin only).
86
+ * Pass `['*']` to allow any origin (not recommended for production).
87
+ */
88
+ allowedOrigins?: string[];
77
89
  }
78
90
  export interface ChatI18n {
79
91
  headerTitle: string;
@@ -140,6 +152,7 @@ export interface ChatI18n {
140
152
  stillWorkingMessage: string;
141
153
  cartAriaLabel: string;
142
154
  favoritesAriaLabel: string;
155
+ showPanelAriaLabel: string;
143
156
  addToFavoritesLabel: string;
144
157
  customerReviewsTitle: string;
145
158
  togglePanelAriaLabel: string;
@@ -156,6 +169,11 @@ export interface ChatI18n {
156
169
  reviewFilterNegative: string;
157
170
  decreaseLabel: string;
158
171
  increaseLabel: string;
172
+ tryAgainButton: string;
173
+ askSomethingElseButton: string;
174
+ accountInactiveMessage: string;
175
+ favoritesPageTitle: string;
176
+ emptyFavoritesMessage: string;
159
177
  }
160
178
  export interface ChatUISpecRenderContext {
161
179
  onAction: (action: ActionPayload) => void;
@@ -179,6 +197,10 @@ export interface ChatUISpecRenderContext {
179
197
  favoritedSkus?: Set<string> | undefined;
180
198
  onFavoriteToggle?: ((sku: string, product: Record<string, unknown>) => void) | undefined;
181
199
  topPicksLoadingSku?: string | null | undefined;
200
+ /** When true the stream is still in progress — defer compare CTA until stream ends. */
201
+ isStreaming?: boolean | undefined;
202
+ /** True when the widget is displayed in mobile viewport. Replaces hardcoded 768px check. */
203
+ isMobile?: boolean | undefined;
182
204
  }
183
205
  export interface ProductSortState {
184
206
  type: 'related' | 'price';