@gengage/assistant-fe 0.1.6 → 0.1.8

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 (75) hide show
  1. package/README.md +125 -20
  2. package/dist/assistant-fe.css +1 -1
  3. package/dist/chat/components/ChatDrawer.d.ts +8 -4
  4. package/dist/chat/components/ChatDrawer.d.ts.map +1 -1
  5. package/dist/chat/index.d.ts +5 -0
  6. package/dist/chat/index.d.ts.map +1 -1
  7. package/dist/chat/types.d.ts +1 -1
  8. package/dist/chat.cjs +1 -1
  9. package/dist/chat.iife.js +16 -16
  10. package/dist/chat.iife.js.map +1 -1
  11. package/dist/chat.js +2 -2
  12. package/dist/common/events.d.ts.map +1 -1
  13. package/dist/common/index.d.ts +2 -0
  14. package/dist/common/index.d.ts.map +1 -1
  15. package/dist/common/native-webview.d.ts +61 -0
  16. package/dist/common/native-webview.d.ts.map +1 -0
  17. package/dist/common/overlay.d.ts +5 -0
  18. package/dist/common/overlay.d.ts.map +1 -1
  19. package/dist/common.cjs +1 -1
  20. package/dist/common.cjs.map +1 -1
  21. package/dist/common.js +197 -426
  22. package/dist/common.js.map +1 -1
  23. package/dist/index-BqIzV4ni.cjs +2 -0
  24. package/dist/index-BqIzV4ni.cjs.map +1 -0
  25. package/dist/index-CcOJTzYu.js +510 -0
  26. package/dist/index-CcOJTzYu.js.map +1 -0
  27. package/dist/index-DZ3Mi5xF.cjs +13 -0
  28. package/dist/index-DZ3Mi5xF.cjs.map +1 -0
  29. package/dist/index-FnP8WtfG.js +4571 -0
  30. package/dist/index-FnP8WtfG.js.map +1 -0
  31. package/dist/index.cjs +1 -1
  32. package/dist/index.d.ts +2 -2
  33. package/dist/index.d.ts.map +1 -1
  34. package/dist/index.js +55 -50
  35. package/dist/index.js.map +1 -1
  36. package/dist/native/index.d.ts +3 -0
  37. package/dist/native/index.d.ts.map +1 -0
  38. package/dist/native.cjs +2 -0
  39. package/dist/native.cjs.map +1 -0
  40. package/dist/native.iife.js +97 -0
  41. package/dist/native.iife.js.map +1 -0
  42. package/dist/native.js +9 -0
  43. package/dist/native.js.map +1 -0
  44. package/dist/qna/components/TextInput.d.ts.map +1 -1
  45. package/dist/qna/components/renderUISpec.d.ts.map +1 -1
  46. package/dist/qna/index.d.ts +1 -0
  47. package/dist/qna/index.d.ts.map +1 -1
  48. package/dist/qna/types.d.ts +1 -1
  49. package/dist/qna/types.d.ts.map +1 -1
  50. package/dist/qna.cjs +1 -1
  51. package/dist/qna.cjs.map +1 -1
  52. package/dist/qna.css +1 -1
  53. package/dist/qna.iife.js +14 -14
  54. package/dist/qna.iife.js.map +1 -1
  55. package/dist/qna.js +92 -80
  56. package/dist/qna.js.map +1 -1
  57. package/dist/{schemas-DhaO7I0-.cjs → schemas-DHzfUzwA.cjs} +22 -22
  58. package/dist/schemas-DHzfUzwA.cjs.map +1 -0
  59. package/dist/{schemas-BlkBmaA5.js → schemas-yF4IOEUi.js} +807 -755
  60. package/dist/schemas-yF4IOEUi.js.map +1 -0
  61. package/dist/simrel/components/ProductCard.d.ts.map +1 -1
  62. package/dist/simrel.cjs +1 -1
  63. package/dist/simrel.cjs.map +1 -1
  64. package/dist/simrel.css +1 -1
  65. package/dist/simrel.iife.js +8 -8
  66. package/dist/simrel.iife.js.map +1 -1
  67. package/dist/simrel.js +218 -214
  68. package/dist/simrel.js.map +1 -1
  69. package/package.json +9 -2
  70. package/dist/index-B8EeSm-F.cjs +0 -13
  71. package/dist/index-B8EeSm-F.cjs.map +0 -1
  72. package/dist/index-BSpLCzAK.js +0 -4523
  73. package/dist/index-BSpLCzAK.js.map +0 -1
  74. package/dist/schemas-BlkBmaA5.js.map +0 -1
  75. package/dist/schemas-DhaO7I0-.cjs.map +0 -1
package/README.md CHANGED
@@ -19,6 +19,7 @@ contextual Q&A buttons, and a similar-products grid.
19
19
  | **Chat** | `@gengage/assistant-fe/chat` | Floating AI chat drawer with streaming responses |
20
20
  | **QNA** | `@gengage/assistant-fe/qna` | Contextual action buttons for product pages |
21
21
  | **SimRel** | `@gengage/assistant-fe/simrel` | Similar / related product grid |
22
+ | **Native Bridge** | `@gengage/assistant-fe/native` | Android/iOS WebView bridge + native-ready overlay bootstrap |
22
23
 
23
24
  > **`middlewareUrl` is required.** Set it in your initialization script to point to your
24
25
  > Gengage backend. The SDK has no built-in default — you must always provide it explicitly.
@@ -55,14 +56,20 @@ npm install @gengage/assistant-fe
55
56
  import { GengageChat, GengageQNA, GengageSimRel, bootstrapSession, wireQNAToChat } from '@gengage/assistant-fe';
56
57
 
57
58
  const sessionId = bootstrapSession();
59
+ const middlewareUrl = 'https://YOUR_MIDDLEWARE_URL';
58
60
 
59
61
  const chat = new GengageChat();
60
- await chat.init({ accountId: 'mystore', session: { sessionId } });
62
+ await chat.init({
63
+ accountId: 'mystore',
64
+ middlewareUrl,
65
+ session: { sessionId },
66
+ });
61
67
 
62
68
  // On PDP pages — mount QNA buttons and similar products
63
69
  const qna = new GengageQNA();
64
70
  await qna.init({
65
71
  accountId: 'mystore',
72
+ middlewareUrl,
66
73
  mountTarget: '#qna-section',
67
74
  pageContext: { pageType: 'pdp', sku: currentSku },
68
75
  session: { sessionId },
@@ -71,6 +78,7 @@ await qna.init({
71
78
  const simrel = new GengageSimRel();
72
79
  await simrel.init({
73
80
  accountId: 'mystore',
81
+ middlewareUrl,
74
82
  sku: currentSku,
75
83
  mountTarget: '#similar-section',
76
84
  session: { sessionId },
@@ -108,6 +116,103 @@ wireQNAToChat(); // auto-wires QNA button clicks → chat.openWithAction()
108
116
 
109
117
  `initOverlayWidgets()` is safe to call multiple times from GTM; it de-duplicates by idempotency key.
110
118
 
119
+ ## Native WebView SDK (Android / iOS)
120
+
121
+ Use the native helper package to bridge widget events with:
122
+ - iOS WKWebView (`webkit.messageHandlers`)
123
+ - Android `JavascriptInterface` (`window.GengageNative.postMessage`)
124
+ - React Native WebView (`window.ReactNativeWebView.postMessage`)
125
+
126
+ ```ts
127
+ import { initNativeOverlayWidgets, applyNativeSession } from '@gengage/assistant-fe/native';
128
+
129
+ applyNativeSession({
130
+ sessionId: 'native-session-id',
131
+ userId: 'native-user-id',
132
+ });
133
+
134
+ const { controller, bridge } = await initNativeOverlayWidgets({
135
+ accountId: 'yatasbeddingcomtr',
136
+ middlewareUrl: 'https://YOUR_MIDDLEWARE_URL',
137
+ locale: 'tr',
138
+ pageContext: { pageType: 'pdp', sku: '1066800' },
139
+ chat: {
140
+ variant: 'floating',
141
+ mobileInitialState: 'full',
142
+ },
143
+ qna: { mountTarget: '#gengage-qna' },
144
+ simrel: { mountTarget: '#gengage-simrel' },
145
+ });
146
+
147
+ // Optional manual command from JS side:
148
+ bridge.receive({ type: 'openChat', payload: { state: 'full' } });
149
+ ```
150
+
151
+ Inbound native commands supported by `bridge.receive(...)`:
152
+ `openChat`, `closeChat`, `updateContext`, `updateSku`, `setSession`, `destroy`.
153
+
154
+ Mobile SDK defaults (out-of-box):
155
+ - Commands received before overlay init are queued and replayed after controller is ready.
156
+ - `onAddToCart` and `onProductNavigate` auto-forward to native bridge messages if not provided.
157
+ - QNA/SimRel are auto-disabled when no mount exists (no noisy mount warnings).
158
+ - If QNA/SimRel are explicitly enabled but mount is missing, a default mount is auto-created.
159
+
160
+ Supported shorthand command envelopes:
161
+
162
+ ```ts
163
+ bridge.receive('openChat');
164
+ bridge.receive({ command: 'updateSku', data: '1066800' } as unknown as { type: string });
165
+ bridge.receive({ action: 'setSession', sessionId: 's1', userId: 'u1' } as unknown as { type: string });
166
+ ```
167
+
168
+ ### React Native (`react-native-webview`) host example
169
+
170
+ ```tsx
171
+ import React, { useMemo } from 'react';
172
+ import { WebView } from 'react-native-webview';
173
+
174
+ const NATIVE_HTML = `
175
+ <!doctype html>
176
+ <html>
177
+ <body>
178
+ <div id="gengage-qna"></div>
179
+ <div id="gengage-simrel"></div>
180
+ <script type="module">
181
+ import { initNativeOverlayWidgets } from 'https://cdn.jsdelivr.net/npm/@gengage/assistant-fe/dist/native.js';
182
+ await initNativeOverlayWidgets({
183
+ accountId: 'yatasbeddingcomtr',
184
+ middlewareUrl: 'https://YOUR_MIDDLEWARE_URL',
185
+ pageContext: { pageType: 'pdp', sku: '1066800' },
186
+ });
187
+ </script>
188
+ </body>
189
+ </html>`;
190
+
191
+ export function GengageNativeOverlay() {
192
+ const injectedJavaScript = useMemo(
193
+ () =>
194
+ `window.gengageNative && window.gengageNative.receive(${JSON.stringify({
195
+ type: 'setSession',
196
+ payload: { sessionId: 'native-session-id', userId: 'native-user-id' },
197
+ })}); true;`,
198
+ [],
199
+ );
200
+
201
+ return (
202
+ <WebView
203
+ originWhitelist={['*']}
204
+ source={{ html: NATIVE_HTML }}
205
+ injectedJavaScript={injectedJavaScript}
206
+ onMessage={(event) => {
207
+ // event.nativeEvent.data is JSON from window.ReactNativeWebView.postMessage(...)
208
+ const message = JSON.parse(event.nativeEvent.data);
209
+ console.log('gengage-native-event', message);
210
+ }}
211
+ />
212
+ );
213
+ }
214
+ ```
215
+
111
216
  ---
112
217
 
113
218
  ## Repository Structure
@@ -123,6 +228,7 @@ gengage-assistant-fe/
123
228
  │ │ └── components/ # Vanilla TS renderers (ChatDrawer, AITopPicks, etc.)
124
229
  │ ├── qna/ # QNA widget (same structure)
125
230
  │ ├── simrel/ # Similar Products widget (same structure)
231
+ │ ├── native/ # Native WebView bridge helper exports
126
232
  │ └── index.ts # Barrel export
127
233
  ├── demos/
128
234
  │ ├── koctascomtr/ # Koçtaş branded PDP (inline config)
@@ -137,7 +243,7 @@ gengage-assistant-fe/
137
243
  │ └── native/ # Mobile WebView overlay
138
244
  ├── catalog/ # Visual component catalog (no backend needed)
139
245
  │ ├── index.html # SPA shell
140
- │ ├── vite.config.ts # Resolves @gengage/assistant-fe → dist/
246
+ │ ├── vite.config.ts # Resolves @gengage/assistant-fe → src/
141
247
  │ └── src/ # Router, layout, mock data, sections
142
248
  ├── scripts/
143
249
  │ └── dev.ts # Dev server entry point (npm run dev)
@@ -155,13 +261,16 @@ gengage-assistant-fe/
155
261
 
156
262
  | Command | Description |
157
263
  |---------|-------------|
158
- | `npm run dev -- <accountId> <sku>` | Start local dev server in PDP mode for an account + SKU |
264
+ | `npm run dev -- <demo> [--sku=SKU] [--port=3000] [--backend-url=URL]` | Start local dev server for any demo |
265
+ | `npm run dev -- --client=<demo> [--sku=SKU] [--port=3000] [--backend-url=URL]` | Same as above, using named demo flag |
159
266
  | `npm run kill` | Kill zombie listeners on ports 3000-3010 |
160
- | `npm run prerequisites:check` | Validate kickoff prerequisites (docs/config/schema/action routing) |
267
+ | `npm run format` | Prettier + ESLint fix + `typecheck` + `typecheck:catalog` |
161
268
  | `npm run dev -- koctascomtr --sku=1000465056` | Example: Koçtaş PDP with SKU 1000465056 |
162
269
  | `npm run dev -- n11com --sku=ABC123 --port=3005` | Custom port |
270
+ | `npm run dev -- --client=yatasbeddingcomtr --sku=1066800 --backend-url=https://staging.example.com` | Demo alias + backend override |
163
271
  | `npm run build` | Build all widgets to `dist/` |
164
272
  | `npm run typecheck` | TypeScript strict check (no emit) |
273
+ | `npm run typecheck:catalog` | TypeScript check for `catalog/` |
165
274
  | `npm run lint` | ESLint `src/` |
166
275
  | `npm run test` | Vitest unit tests |
167
276
  | `npm run test:e2e` | Playwright smoke tests |
@@ -170,21 +279,16 @@ gengage-assistant-fe/
170
279
 
171
280
  ### `npm run dev` — Local Widget Test Server
172
281
 
173
- The dev server spins up an account-aware PDP host shell with all three widgets initialised
174
- for the given account and SKU. Every invocation generates fresh UUIDs printed to the console:
175
-
176
- Current focus is PDP mode (`product details`) with a concrete SKU.
177
- PLP mode (`category / sku-list`) is planned and will be added as a separate harness flow.
282
+ The dev server serves `demos/<demo>/index.html` with HMR and supports optional query
283
+ injection via CLI flags (`--sku`, `--backend-url`). It also supports `--client=<demo>`
284
+ as an alias for the positional demo argument.
178
285
 
179
286
  ```
180
287
  ── Gengage Dev Server ──────────────────────────────
181
- Account: koctascomtr
288
+ Demo: koctascomtr
182
289
  SKU: 1234567
183
- Page type: pdp
184
- Session ID: 550e8400-e29b-41d4-a716-446655440000
185
- User ID: 6ba7b810-9dad-11d1-80b4-00c04fd430c8
186
- View ID: 6ba7b811-9dad-11d1-80b4-00c04fd430c8
187
- URL: http://localhost:3000
290
+ Backend: https://staging.example.com
291
+ URL: http://localhost:3000?sku=1234567&middlewareUrl=https%3A%2F%2Fstaging.example.com
188
292
  ────────────────────────────────────────────────────
189
293
  ```
190
294
 
@@ -197,16 +301,16 @@ The page shows:
197
301
 
198
302
  HMR is active — editing `src/` files updates the page without a full reload.
199
303
 
200
- > The dev server serves the account's demo page from `demos/<accountId>/index.html`,
201
- > generating fresh session/user/view IDs on each start.
304
+ > The dev server serves the selected demo page from `demos/<demo>/index.html`,
305
+ > and keeps query options sticky if you open `/` directly.
202
306
 
203
307
  ### Component Catalog (`npm run catalog`)
204
308
 
205
309
  A visual catalog that renders every component with mock data — no backend needed.
206
- Imports from `dist/` (validates the npm package as consumers would see it).
310
+ `npm run catalog` already runs `npm run build` first.
207
311
 
208
312
  ```bash
209
- npm run build && npm run catalog # Build first, then serve at :3002
313
+ npm run catalog # Serves at :3002 (and builds first)
210
314
  ```
211
315
 
212
316
  Open `http://localhost:3002` to see:
@@ -220,7 +324,7 @@ Open `http://localhost:3002` to see:
220
324
  - **Theme Comparison** — same component rendered across all 12 merchant themes
221
325
  - **Responsive Preview** — mobile / tablet / desktop viewport frames
222
326
 
223
- The catalog lives in `catalog/` and is excluded from npm publish (`files: ["dist/"]`).
327
+ The catalog lives in `catalog/` and is excluded from npm publish (`files` publishes `dist/`, `README.md`, and `LICENSE`).
224
328
 
225
329
  ---
226
330
 
@@ -247,6 +351,7 @@ is the fully-wired reference. Copy it as a starting point for a new account.
247
351
  | [docs/wire-protocol.md](docs/wire-protocol.md) | Backend ↔ frontend NDJSON contract |
248
352
  | [docs/config-files.md](docs/config-files.md) | File-driven self-service account configuration |
249
353
  | [docs/analytics-contract.md](docs/analytics-contract.md) | Stream/token/metering/history/checkout analytics contract |
354
+ | [docs/native-mobile-sdk.md](docs/native-mobile-sdk.md) | Android/iOS/React Native WebView integration guide |
250
355
  | [CUSTOMIZATION-GUIDE.md](CUSTOMIZATION-GUIDE.md) | Fork/customize/deploy playbook for integrators and coding agents |
251
356
  | [CONTRIBUTION-GUIDE.md](CONTRIBUTION-GUIDE.md) | SDK/core development guide for contributors and coding agents |
252
357
 
@@ -1 +1 @@
1
- .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-secondary: var(--gengage-text-secondary, #6b7280)}.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:grid;grid-template-columns:repeat(var(--gengage-simrel-columns, 4),minmax(0,1fr));gap:14px;padding:10px 0 16px}@media(max-width:992px){.gengage-simrel-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:768px){.gengage-simrel-grid{grid-template-columns:repeat(2,1fr);gap:12px}}.gengage-simrel-card{display:flex;flex-direction:column;border:1px solid #eee;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}.gengage-simrel-card:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}.gengage-simrel-card-image{position:relative;aspect-ratio:1;overflow:hidden;background:#fff}.gengage-simrel-card-image img{width:100%;height:100%;object-fit:contain;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{flex:1;padding:8px 10px 10px;display:flex;flex-direction:column;gap:4px;text-align:center}.gengage-simrel-card-brand{font-size:10px;color:#666}.gengage-simrel-card-name{font-size:13px;font-weight:600;color:#1f2937;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:0}.gengage-simrel-card-rating{font-size:12px;color:#f59e0b}.gengage-simrel-card-review-count{color:#9ca3af}.gengage-simrel-card-price{margin-top:auto;padding-top:4px;display:flex;align-items:baseline;justify-content:center;gap:4px}.gengage-simrel-card-price-original{text-decoration:line-through;color:#64748b;font-weight:400;font-size:12px}.gengage-simrel-card-price-current{font-size:16px;font-weight:800;color:#0f172a}.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-atc.gengage-qty-stepper{gap:0;overflow:hidden;border-radius:0;border-top:1px solid #f1f5f9;border-left:none;border-right:none;border-bottom:none}.gengage-simrel-atc .gengage-qty-btn{width:32px;height:36px;color:#64748b;font-size:14px}.gengage-simrel-atc .gengage-qty-btn:hover:not(:disabled){background:#f1f5f9}.gengage-simrel-atc .gengage-qty-value{min-width:24px;font-size:13px;color:#334155}.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-atc .gengage-qty-submit:hover{color:var(--gengage-primary-color, #0b24d6);background:#f8fafc}.gengage-simrel-quick-actions{display:flex;flex-wrap:wrap;gap:8px;padding:6px 12px 12px}.gengage-simrel-quick-action{border:1px solid #d2d8e3;background:#f8fafc;color:#334155;border-radius:999px;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{grid-column:1 / -1;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{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}.gengage-simrel-atc.gengage-qty-stepper{flex-wrap:wrap}.gengage-simrel-atc .gengage-qty-btn{width:44px;height:44px;font-size:16px}.gengage-simrel-atc .gengage-qty-submit{min-height:44px;flex-basis:100%;border-left:none;border-top:1px solid var(--_gengage-border-color)}}.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-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-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 #d5dbe7;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: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-secondary: var(--gengage-text-secondary, #6b7280)}.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:grid;grid-template-columns:repeat(var(--gengage-simrel-columns, 4),minmax(0,1fr));gap:14px;padding:10px 0 16px}@media(max-width:992px){.gengage-simrel-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:768px){.gengage-simrel-grid{grid-template-columns:repeat(2,1fr);gap:12px}}.gengage-simrel-card{display:flex;flex-direction:column;position:relative;border:1px solid #eee;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}.gengage-simrel-grid .gengage-simrel-card.gengage-chat-product-card{width:100%;min-width:0;max-width:none}.gengage-simrel-card:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}.gengage-simrel-card-image{position:relative;aspect-ratio:1;overflow:hidden;background:#fff}.gengage-simrel-card-image img{width:100%;height:100%;object-fit:contain;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{flex:1;padding:8px 10px 10px;display:flex;flex-direction:column;gap:4px;text-align:center}.gengage-simrel-card-brand{font-size:10px;color:#666}.gengage-simrel-card-name{font-size:13px;font-weight:600;color:#1f2937;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:0}.gengage-simrel-card-rating{font-size:12px;color:#f59e0b}.gengage-simrel-card-review-count{color:#9ca3af}.gengage-simrel-card-price{margin-top:auto;padding-top:4px;display:flex;align-items:baseline;justify-content:center;gap:4px}.gengage-simrel-card-price-original{text-decoration:line-through;color:#64748b;font-weight:400;font-size:12px}.gengage-simrel-card-price-current{font-size:16px;font-weight:800;color:#0f172a}.gengage-simrel-card-cta{width:100%;min-height:40px;border:none;border-top:1px solid #f1f5f9;border-radius:0;background:transparent;font-family:inherit;cursor:pointer}.gengage-simrel-container .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-container .gengage-simrel-atc.gengage-qty-stepper{gap:0;overflow:hidden;border-radius:0;border-top:1px solid #f1f5f9;border-left:none;border-right:none;border-bottom:none}.gengage-simrel-container .gengage-simrel-atc .gengage-qty-btn{width:32px;height:36px;color:#64748b;font-size:14px}.gengage-simrel-container .gengage-simrel-atc .gengage-qty-btn:hover:not(:disabled){background:#f1f5f9}.gengage-simrel-container .gengage-simrel-atc .gengage-qty-value{min-width:24px;font-size:13px;color:#334155}.gengage-simrel-container .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-container .gengage-simrel-atc .gengage-qty-submit:hover{color:var(--gengage-primary-color, #0b24d6);background:#f8fafc}.gengage-simrel-quick-actions{display:flex;flex-wrap:wrap;gap:8px;padding:6px 12px 12px}.gengage-simrel-quick-action{border:1px solid #d2d8e3;background:#f8fafc;color:#334155;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{grid-column:1 / -1;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}.gengage-simrel-card-cta,.gengage-simrel-quick-action,.gengage-simrel-tab{min-height:44px}.gengage-simrel-container .gengage-simrel-atc .gengage-qty-btn{width:44px;height:44px;font-size:16px}.gengage-simrel-container .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}}
@@ -41,7 +41,6 @@ export declare class ChatDrawer {
41
41
  private _panelEl;
42
42
  private _panelVisible;
43
43
  private _panelCollapsed;
44
- private _panelForceExpanded;
45
44
  private _dividerEl;
46
45
  private _onPanelToggle;
47
46
  private _pendingAttachment;
@@ -64,6 +63,7 @@ export declare class ChatDrawer {
64
63
  private _micBtn;
65
64
  private _voiceEnabled;
66
65
  private _voiceLang;
66
+ private _ignoreNextDividerClick;
67
67
  constructor(container: HTMLElement, options: ChatDrawerOptions);
68
68
  addMessage(message: ChatMessage): void;
69
69
  showTypingIndicator(searchText?: string): void;
@@ -108,11 +108,15 @@ export declare class ChatDrawer {
108
108
  * Hide the panel and clear its content. Always hides — even in force-expanded mode.
109
109
  * Callers: _hideDrawer (stale panel cleanup), stream onDone (loading skeleton cleanup),
110
110
  * thread navigation (no snapshot to restore). All require full hide.
111
+ * Keeps `_panelCollapsed` untouched so user collapse preference survives future panel renders.
111
112
  */
112
113
  clearPanel(): void;
113
114
  /** Expand panel without locking — user can still toggle via divider. */
114
115
  expandPanel(): void;
115
- /** Force the panel to stay expanded (panelMode: 'expanded'). Hides the divider toggle. */
116
+ /**
117
+ * Ensure the panel starts expanded (panelMode: 'expanded').
118
+ * Users can still collapse/expand via the divider chevron.
119
+ */
116
120
  setForceExpanded(): void;
117
121
  /** Toggle panel between collapsed and expanded. */
118
122
  togglePanel(): void;
@@ -122,8 +126,8 @@ export declare class ChatDrawer {
122
126
  setPanelCollapsed(collapsed: boolean): void;
123
127
  /** Save panel collapsed state to sessionStorage. */
124
128
  persistPanelState(accountId: string): void;
125
- /** Restore panel collapsed state from sessionStorage. */
126
- restorePanelState(accountId: string): void;
129
+ /** Restore panel collapsed state from sessionStorage. Returns true when restored as collapsed. */
130
+ restorePanelState(accountId: string): boolean;
127
131
  /** Re-render thinking steps inside the existing typing indicator container. */
128
132
  private _renderThinkingSteps;
129
133
  /** Render the accumulated thinking-step checklist into a container element. */
@@ -1 +1 @@
1
- {"version":3,"file":"ChatDrawer.d.ts","sourceRoot":"","sources":["../../../src/chat/components/ChatDrawer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAOzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,oFAAoF;AACpF,QAAA,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAQlD,CAAC;AAEF,OAAO,EAAE,sBAAsB,EAAE,CAAC;AAElC,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,IAAI,KAAK,IAAI,CAAC;IAClD,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC;IACpC,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,kEAAkE;IAClE,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,4DAA4D;IAC5D,qBAAqB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5C,gBAAgB,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;IAC5C,4DAA4D;IAC5D,WAAW,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;IACvC,+DAA+D;IAC/D,cAAc,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;IAC1C,gFAAgF;IAChF,gBAAgB,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IAC5D,yDAAyD;IACzD,WAAW,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IAClD,+DAA+D;IAC/D,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACnC,gEAAgE;IAChE,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAChC;AAID,qBAAa,UAAU;IACrB,OAAO,CAAC,IAAI,CAAc;IAC1B,OAAO,CAAC,UAAU,CAAc;IAChC,OAAO,CAAC,OAAO,CAAsB;IACrC,OAAO,CAAC,OAAO,CAAoB;IACnC,OAAO,CAAC,IAAI,CAAW;IACvB,OAAO,CAAC,MAAM,CAA4C;IAC1D,OAAO,CAAC,QAAQ,CAAc;IAC9B,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,mBAAmB,CAAS;IACpC,OAAO,CAAC,UAAU,CAAc;IAChC,OAAO,CAAC,cAAc,CAAuC;IAC7D,OAAO,CAAC,kBAAkB,CAAqB;IAC/C,OAAO,CAAC,UAAU,CAAmB;IACrC,OAAO,CAAC,aAAa,CAAc;IACnC,OAAO,CAAC,YAAY,CAAc;IAClC,OAAO,CAAC,aAAa,CAAiD;IACtE,OAAO,CAAC,WAAW,CAAwD;IAC3E,OAAO,CAAC,YAAY,CAAkD;IACtE,OAAO,CAAC,QAAQ,CAAc;IAC9B,OAAO,CAAC,SAAS,CAAc;IAC/B,OAAO,CAAC,YAAY,CAAc;IAClC,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,kBAAkB,CAAK;IAC/B,OAAO,CAAC,aAAa,CAAc;IACnC,OAAO,CAAC,iBAAiB,CAAmB;IAC5C,OAAO,CAAC,cAAc,CAAgB;IACtC,OAAO,CAAC,mBAAmB,CAA0B;IACrD,OAAO,CAAC,WAAW,CAA2B;IAC9C,OAAO,CAAC,OAAO,CAAkC;IACjD,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,UAAU,CAAW;gBAEjB,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,iBAAiB;IAma9D,UAAU,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAkEtC,mBAAmB,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI;IAgC9C,qFAAqF;IACrF,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAKnC,qBAAqB,IAAI,IAAI;IAM7B,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,IAAI,GAAG,IAAI;IAsBvD,aAAa,IAAI,IAAI;IAIrB,0DAA0D;IAC1D,QAAQ,CACN,KAAK,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,IAAI,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,GACzG,IAAI;IA2DP,UAAU,IAAI,IAAI;IAIlB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,IAAI,GAAG,IAAI;IAMzD,cAAc,IAAI,IAAI;IAItB,UAAU,IAAI,WAAW;IAIzB,0DAA0D;IAC1D,eAAe,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAcjC,qDAAqD;IACrD,eAAe,IAAI,IAAI;IAUvB,yDAAyD;IACzD,oBAAoB,IAAI,IAAI,GAAG,IAAI;IAInC,gDAAgD;IAChD,eAAe,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAiBtC,sEAAsE;IACtE,kBAAkB,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAYzC,wEAAwE;IACxE,sBAAsB,IAAI,WAAW,GAAG,IAAI;IAe5C,2GAA2G;IAC3G,eAAe,IAAI,OAAO;IAI1B,6DAA6D;IAC7D,cAAc,IAAI,OAAO;IAIzB,+EAA+E;IAC/E,gBAAgB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI;IA+D5C,iDAAiD;IACjD,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAI7E;;;;OAIG;IACH,UAAU,IAAI,IAAI;IAUlB,wEAAwE;IACxE,WAAW,IAAI,IAAI;IAUnB,0FAA0F;IAC1F,gBAAgB,IAAI,IAAI;IAcxB,mDAAmD;IACnD,WAAW,IAAI,IAAI;IAKnB,4DAA4D;IAC5D,gBAAgB,IAAI,OAAO;IAI3B,kDAAkD;IAClD,iBAAiB,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI;IAc3C,oDAAoD;IACpD,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAa1C,yDAAyD;IACzD,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAW1C,+EAA+E;IAC/E,OAAO,CAAC,oBAAoB;IAa5B,+EAA+E;IAC/E,OAAO,CAAC,wBAAwB;IAkChC,OAAO,CAAC,UAAU;IA6BlB,OAAO,CAAC,OAAO;IAUf,OAAO,CAAC,YAAY;IAcpB,uFAAuF;IACvF,oBAAoB,IAAI,IAAI;IAI5B,mFAAmF;IACnF,OAAO,CAAC,eAAe;IASvB,gFAAgF;IAChF,sBAAsB,IAAI,IAAI;IAI9B,mFAAmF;IACnF,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAavD,mFAAmF;IACnF,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAQ5C,8EAA8E;IAC9E,kBAAkB,IAAI,IAAI;IAsB1B,+EAA+E;IAC/E,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,IAAI,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,IAAI;IAgC7F,8BAA8B;IAC9B,mBAAmB,IAAI,IAAI;IAK3B,aAAa,CAAC,OAAO,EAAE,cAAc,EAAE,GAAG,IAAI;IAS9C,cAAc,IAAI,IAAI;CAGvB"}
1
+ {"version":3,"file":"ChatDrawer.d.ts","sourceRoot":"","sources":["../../../src/chat/components/ChatDrawer.ts"],"names":[],"mappings":"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"}
@@ -32,6 +32,10 @@ export declare class GengageChat extends BaseWidget<ChatWidgetConfig> {
32
32
  private _mobileBreakpoint;
33
33
  private _isMobileViewport;
34
34
  private _pdpLaunched;
35
+ /** True while the initial silent PDP launch request is in flight. */
36
+ private _pdpPrimingInFlight;
37
+ /** User messages queued until silent PDP priming completes. */
38
+ private _queuedUserMessages;
35
39
  private _productContextUnavailableSku;
36
40
  private _i18n;
37
41
  private _extendedModeManager;
@@ -105,6 +109,7 @@ export declare class GengageChat extends BaseWidget<ChatWidgetConfig> {
105
109
  private _applyOpenStateClasses;
106
110
  private _handleAttachment;
107
111
  private _sendMessage;
112
+ private _flushQueuedUserMessages;
108
113
  private _sendAction;
109
114
  /** Return messages visible at the current thread cursor. */
110
115
  private _getVisibleMessages;
@@ -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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"}
@@ -38,7 +38,7 @@ export interface ChatWidgetConfig extends BaseWidgetConfig {
38
38
  * Panel display mode:
39
39
  * - 'auto' : Panel appears/hides with content; user can toggle (default)
40
40
  * - 'collapsed' : Panel starts collapsed; user can expand
41
- * - 'expanded' : Panel always expanded (empty placeholder if no content)
41
+ * - 'expanded' : Panel starts expanded (users can still collapse/expand)
42
42
  */
43
43
  panelMode?: 'auto' | 'collapsed' | 'expanded';
44
44
  /**
package/dist/chat.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./schemas-DhaO7I0-.cjs");const e=require("./index-B8EeSm-F.cjs");require("./quantity-stepper-UbAp53Ow.cjs");exports.GengageChat=e.GengageChat;exports.chatCatalog=e.chatCatalog;exports.createChatWidget=e.createChatWidget;exports.createDefaultChatUISpecRegistry=e.createDefaultChatUISpecRegistry;exports.defaultChatUnknownUISpecRenderer=e.defaultChatUnknownUISpecRenderer;exports.renderUISpec=e.renderUISpec;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("./schemas-DHzfUzwA.cjs");const e=require("./index-DZ3Mi5xF.cjs");require("./quantity-stepper-UbAp53Ow.cjs");exports.GengageChat=e.GengageChat;exports.chatCatalog=e.chatCatalog;exports.createChatWidget=e.createChatWidget;exports.createDefaultChatUISpecRegistry=e.createDefaultChatUISpecRegistry;exports.defaultChatUnknownUISpecRenderer=e.defaultChatUnknownUISpecRenderer;exports.renderUISpec=e.renderUISpec;
2
2
  //# sourceMappingURL=chat.cjs.map