vdb-ai-chat 1.0.13 → 1.0.15

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 (41) hide show
  1. package/dist/chat-widget.js +1 -1
  2. package/lib/commonjs/api.js +47 -1
  3. package/lib/commonjs/api.js.map +1 -1
  4. package/lib/commonjs/components/BetaNotice.js +1 -1
  5. package/lib/commonjs/components/BetaNotice.js.map +1 -1
  6. package/lib/commonjs/components/ChatInput.js +1 -1
  7. package/lib/commonjs/components/ChatInput.js.map +1 -1
  8. package/lib/commonjs/components/ChatWidget.js +142 -36
  9. package/lib/commonjs/components/ChatWidget.js.map +1 -1
  10. package/lib/commonjs/components/ProductsListView.js +26 -20
  11. package/lib/commonjs/components/ProductsListView.js.map +1 -1
  12. package/lib/commonjs/components/utils.js +37 -1
  13. package/lib/commonjs/components/utils.js.map +1 -1
  14. package/lib/module/api.js +46 -1
  15. package/lib/module/api.js.map +1 -1
  16. package/lib/module/components/BetaNotice.js +1 -1
  17. package/lib/module/components/BetaNotice.js.map +1 -1
  18. package/lib/module/components/ChatInput.js +1 -1
  19. package/lib/module/components/ChatInput.js.map +1 -1
  20. package/lib/module/components/ChatWidget.js +144 -38
  21. package/lib/module/components/ChatWidget.js.map +1 -1
  22. package/lib/module/components/ProductsListView.js +27 -21
  23. package/lib/module/components/ProductsListView.js.map +1 -1
  24. package/lib/module/components/utils.js +33 -0
  25. package/lib/module/components/utils.js.map +1 -1
  26. package/lib/typescript/api.d.ts +12 -0
  27. package/lib/typescript/api.d.ts.map +1 -1
  28. package/lib/typescript/components/ChatWidget.d.ts.map +1 -1
  29. package/lib/typescript/components/ProductsListView.d.ts.map +1 -1
  30. package/lib/typescript/components/utils.d.ts +3 -0
  31. package/lib/typescript/components/utils.d.ts.map +1 -1
  32. package/lib/typescript/types.d.ts +2 -0
  33. package/lib/typescript/types.d.ts.map +1 -1
  34. package/package.json +1 -1
  35. package/src/api.ts +71 -3
  36. package/src/components/BetaNotice.tsx +1 -1
  37. package/src/components/ChatInput.tsx +1 -1
  38. package/src/components/ChatWidget.tsx +196 -33
  39. package/src/components/ProductsListView.tsx +39 -32
  40. package/src/components/utils.ts +36 -0
  41. package/src/types.ts +2 -0
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.clearChatHistory = clearChatHistory;
7
7
  exports.fetchInitialMessages = fetchInitialMessages;
8
+ exports.fetchOlderMessages = fetchOlderMessages;
8
9
  exports.getProducts = getProducts;
9
10
  exports.handleFeedbackActionApi = void 0;
10
11
  exports.normaliseMessages = normaliseMessages;
@@ -106,6 +107,49 @@ async function fetchInitialMessages(apiUrl, _params, priceMode) {
106
107
  }
107
108
  return data;
108
109
  }
110
+
111
+ /**
112
+ * Fetches older messages for pagination when user scrolls to top.
113
+ * Uses cursor-based pagination if available, falls back to page number.
114
+ */
115
+ async function fetchOlderMessages(apiUrl, priceMode, cursor, pageNumber) {
116
+ const conversations = await getValidConversations();
117
+ const storedId = conversations?.[priceMode ?? ""]?.conversation_id ?? null;
118
+ if (!storedId) {
119
+ return {
120
+ messages: [],
121
+ has_more: false
122
+ };
123
+ }
124
+ const body = {
125
+ conversation_id: Number.isNaN(Number(storedId)) ? storedId : Number(storedId),
126
+ fetch_history: true
127
+ };
128
+
129
+ // Support both cursor-based and page-based pagination
130
+ if (cursor !== undefined) {
131
+ body.cursor = cursor;
132
+ }
133
+ if (pageNumber !== undefined) {
134
+ body.page = pageNumber;
135
+ }
136
+ const res = await fetch(apiUrl, {
137
+ method: "POST",
138
+ headers: await buildHeaders(),
139
+ body: JSON.stringify(body)
140
+ });
141
+ if (!res.ok) {
142
+ throw new Error(`POST ${apiUrl} failed with ${res.status}`);
143
+ }
144
+ const data = await res.json();
145
+ return {
146
+ messages: data.messages || [],
147
+ conversation_id: data.conversation_id,
148
+ has_more: data.has_more ?? false,
149
+ next_cursor: data.next_cursor,
150
+ total_count: data.total_count
151
+ };
152
+ }
109
153
  async function sendUserMessage(apiUrl, userMessage, _params, _history, priceMode) {
110
154
  // Get conversations valid for current session
111
155
  const conversations = await getValidConversations();
@@ -113,8 +157,10 @@ async function sendUserMessage(apiUrl, userMessage, _params, _history, priceMode
113
157
  if (priceMode === undefined) {
114
158
  return null;
115
159
  }
160
+ const external_context = await _storage.Storage.getJSON("external_context");
116
161
  const body = {
117
- query: userMessage
162
+ query: userMessage,
163
+ external_context: external_context || null
118
164
  };
119
165
  if (storedId) {
120
166
  body.conversation_id = Number.isNaN(Number(storedId)) ? storedId : Number(storedId);
@@ -1 +1 @@
1
- {"version":3,"names":["_storage","require","getUserToken","userInfo","Storage","getJSON","userData","JSON","parse","user","token","buildHeaders","iid","getItem","installationId","parsed","installationIdentifier","session","Accept","Authorization","Cookie","getValidConversations","currentToken","stored","removeItem","conversations","saveConversations","data","setJSON","normaliseMessages","raw","messages","Array","isArray","map","m","index","id","String","role","created_at","Date","now","text","content","createdAt","search_payload","reaction","suggestions","undefined","fetchInitialMessages","apiUrl","_params","priceMode","storedId","conversation_id","body","Number","isNaN","res","fetch","method","headers","Object","keys","length","stringify","ok","Error","status","json","updatedConversations","sendUserMessage","userMessage","_history","query","clearChatHistory","url","URL","searchParams","set","toString","getProducts","params","isLabgrown","lab_grown","activeProduct","searchResultViewTypeMap","searchResultViewType","rawState","rootState","selectedGroups","mGroupIds","vdbSetting","includes","filter","groupId","three_x","queryParamList","assign","group_ids","depth_percent_from","depth_percent_to","table_percent_from","table_percent_to","max_search_key_values","min_depth","max_depth","min_table","max_table","vdb","page_size","price_mode","vdb_setting","results_view_type","featured","pair","with_available_items","page_number","handleFeedbackActionApi","action","message_id","feedbackUrl","payload","response","exports"],"sourceRoot":"../../src","sources":["api.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_storage","require","getUserToken","userInfo","Storage","getJSON","userData","JSON","parse","user","token","buildHeaders","iid","getItem","installationId","parsed","installationIdentifier","session","Accept","Authorization","Cookie","getValidConversations","currentToken","stored","removeItem","conversations","saveConversations","data","setJSON","normaliseMessages","raw","messages","Array","isArray","map","m","index","id","String","role","created_at","Date","now","text","content","createdAt","search_payload","reaction","suggestions","undefined","fetchInitialMessages","apiUrl","_params","priceMode","storedId","conversation_id","body","Number","isNaN","res","fetch","method","headers","Object","keys","length","stringify","ok","Error","status","json","updatedConversations","fetchOlderMessages","cursor","pageNumber","has_more","fetch_history","page","next_cursor","total_count","sendUserMessage","userMessage","_history","external_context","query","clearChatHistory","url","URL","searchParams","set","toString","getProducts","params","isLabgrown","lab_grown","activeProduct","searchResultViewTypeMap","searchResultViewType","rawState","rootState","selectedGroups","mGroupIds","vdbSetting","includes","filter","groupId","three_x","queryParamList","assign","group_ids","depth_percent_from","depth_percent_to","table_percent_from","table_percent_to","max_search_key_values","min_depth","max_depth","min_table","max_table","vdb","page_size","price_mode","vdb_setting","results_view_type","featured","pair","with_available_items","page_number","handleFeedbackActionApi","action","message_id","feedbackUrl","payload","response","exports"],"sourceRoot":"../../src","sources":["api.ts"],"mappings":"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","ignoreList":[]}
@@ -14,7 +14,7 @@ const BetaNotice = ({
14
14
  if (!active) return null;
15
15
  return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
16
16
  style: styles.container
17
- }, /*#__PURE__*/_react.default.createElement(TextView, null, "This AI feature is in beta and may make mistakes."));
17
+ }, /*#__PURE__*/_react.default.createElement(TextView, null, "This beta feature uses AI-generated results that should be verified."));
18
18
  };
19
19
  exports.BetaNotice = BetaNotice;
20
20
  const TextView = _native.default.Text`
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_native","e","__esModule","default","BetaNotice","active","createElement","View","style","styles","container","TextView","exports","styled","Text","theme","StyleSheet","create","alignSelf","paddingVertical","paddingHorizontal","backgroundColor","alignItems","justifyContent","_default"],"sourceRoot":"../../../src","sources":["components/BetaNotice.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAH,sBAAA,CAAAC,OAAA;AAA8C,SAAAD,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAGvC,MAAMG,UAAU,GAAGA,CAAC;EAAEC;AAA6B,CAAC,KAAK;EAC9D,IAAI,CAACA,MAAM,EAAE,OAAO,IAAI;EACxB,oBACET,MAAA,CAAAO,OAAA,CAAAG,aAAA,CAACP,YAAA,CAAAQ,IAAI;IAACC,KAAK,EAAEC,MAAM,CAACC;EAAU,gBAC5Bd,MAAA,CAAAO,OAAA,CAAAG,aAAA,CAACK,QAAQ,QAAC,mDAA2D,CACjE,CAAC;AAEX,CAAC;AAACC,OAAA,CAAAR,UAAA,GAAAA,UAAA;AAEF,MAAMO,QAAQ,GAAGE,eAAM,CAACC,IAA6B;AACrD,WAAW,CAAC;EAAEC;AAA+B,CAAC,KAC1CA,KAAK,CAAC,SAAS,CAAC,IAAI,SAAS;AACjC;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAED,MAAMN,MAAM,GAAGO,uBAAU,CAACC,MAAM,CAAC;EAC/BP,SAAS,EAAE;IACTQ,SAAS,EAAE,SAAS;IACpBC,eAAe,EAAE,CAAC;IAClBC,iBAAiB,EAAE,EAAE;IACrBC,eAAe,EAAE,aAAa;IAC9BC,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE;EAClB;AACF,CAAC,CAAC;AAAC,IAAAC,QAAA,GAAAZ,OAAA,CAAAT,OAAA,GAEYC,UAAU","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_native","e","__esModule","default","BetaNotice","active","createElement","View","style","styles","container","TextView","exports","styled","Text","theme","StyleSheet","create","alignSelf","paddingVertical","paddingHorizontal","backgroundColor","alignItems","justifyContent","_default"],"sourceRoot":"../../../src","sources":["components/BetaNotice.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,OAAA,GAAAH,sBAAA,CAAAC,OAAA;AAA8C,SAAAD,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAGvC,MAAMG,UAAU,GAAGA,CAAC;EAAEC;AAA6B,CAAC,KAAK;EAC9D,IAAI,CAACA,MAAM,EAAE,OAAO,IAAI;EACxB,oBACET,MAAA,CAAAO,OAAA,CAAAG,aAAA,CAACP,YAAA,CAAAQ,IAAI;IAACC,KAAK,EAAEC,MAAM,CAACC;EAAU,gBAC5Bd,MAAA,CAAAO,OAAA,CAAAG,aAAA,CAACK,QAAQ,QAAC,sEAA8E,CACpF,CAAC;AAEX,CAAC;AAACC,OAAA,CAAAR,UAAA,GAAAA,UAAA;AAEF,MAAMO,QAAQ,GAAGE,eAAM,CAACC,IAA6B;AACrD,WAAW,CAAC;EAAEC;AAA+B,CAAC,KAC1CA,KAAK,CAAC,SAAS,CAAC,IAAI,SAAS;AACjC;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAED,MAAMN,MAAM,GAAGO,uBAAU,CAACC,MAAM,CAAC;EAC/BP,SAAS,EAAE;IACTQ,SAAS,EAAE,SAAS;IACpBC,eAAe,EAAE,CAAC;IAClBC,iBAAiB,EAAE,EAAE;IACrBC,eAAe,EAAE,aAAa;IAC9BC,UAAU,EAAE,QAAQ;IACpBC,cAAc,EAAE;EAClB;AACF,CAAC,CAAC;AAAC,IAAAC,QAAA,GAAAZ,OAAA,CAAAT,OAAA,GAEYC,UAAU","ignoreList":[]}
@@ -54,7 +54,7 @@ const ChatInput = ({
54
54
  ,
55
55
  id: "chat-input",
56
56
  style: [styles.inputWeb],
57
- placeholder: placeholder || "What are you looking for?",
57
+ placeholder: placeholder || "Describe the diamond you’re looking for...",
58
58
  placeholderTextColor: theme["core-06"] || "#999",
59
59
  value: value,
60
60
  onChangeText: onChangeText,
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_native","_interopRequireWildcard","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ImageComponent","Image","Platform","OS","ExpoImage","SendIcon","disabled","isEmpty","isInactive","theme","useTheme","createElement","source","uri","resizeMode","style","styles","buttonIcon","tintColor","cursor","ChatInput","value","onChangeText","onSend","placeholder","inputRef","InputContainer","Input","ref","id","inputWeb","placeholderTextColor","onSubmitEditing","editable","autoFocus","SendButton","onPress","trim","exports","styled","View","TextInput","TouchableOpacity","StyleSheet","create","webShadow","boxShadow","nativeShadow","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","elevation","outlineStyle","outlineWidth","sendIconText","fontSize","fontWeight","textAlign"],"sourceRoot":"../../../src","sources":["components/ChatInput.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_native","_interopRequireWildcard","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ImageComponent","Image","Platform","OS","ExpoImage","SendIcon","disabled","isEmpty","isInactive","theme","useTheme","createElement","source","uri","resizeMode","style","styles","buttonIcon","tintColor","cursor","ChatInput","value","onChangeText","onSend","placeholder","inputRef","InputContainer","Input","ref","id","inputWeb","placeholderTextColor","onSubmitEditing","editable","autoFocus","SendButton","onPress","trim","exports","styled","View","TextInput","TouchableOpacity","StyleSheet","create","webShadow","boxShadow","nativeShadow","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","elevation","outlineStyle","outlineWidth","sendIconText","fontSize","fontWeight","textAlign"],"sourceRoot":"../../../src","sources":["components/ChatInput.tsx"],"mappings":"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","ignoreList":[]}
@@ -33,7 +33,8 @@ const ChatWidget = exports.ChatWidget = /*#__PURE__*/(0, _react.forwardRef)(({
33
33
  onClearChat,
34
34
  onViewAllPress,
35
35
  onItemPress: onItemPressProp,
36
- isBetaMode: isBetaModeProp
36
+ isBetaMode: isBetaModeProp,
37
+ activeProductType
37
38
  }, ref) => {
38
39
  const [messages, setMessages] = (0, _react.useState)(initialMessages);
39
40
  const [input, setInput] = (0, _react.useState)("");
@@ -41,14 +42,23 @@ const ChatWidget = exports.ChatWidget = /*#__PURE__*/(0, _react.forwardRef)(({
41
42
  const [loadingMessageId, setLoadingMessageId] = (0, _react.useState)(null);
42
43
  const [typingMessageId, setTypingMessageId] = (0, _react.useState)(null);
43
44
  const [typingFullText, setTypingFullText] = (0, _react.useState)("");
44
- const [scrollY, setScrollY] = (0, _react.useState)(0);
45
- const [autoScroll, setAutoScroll] = (0, _react.useState)(true);
46
45
  const [productsByMsg, setProductsByMsg] = (0, _react.useState)({});
47
46
  const [reloadLoadingIds, setReloadLoadingIds] = (0, _react.useState)(new Set());
48
47
  const [priceMode, setPriceMode] = (0, _react.useState)(priceModeProp || null);
49
48
  const [userToken, setUserToken] = (0, _react.useState)(userTokenProp || "");
49
+ // Pagination state
50
+ const [loadingOlder, setLoadingOlder] = (0, _react.useState)(false);
51
+ const [hasMoreMessages, setHasMoreMessages] = (0, _react.useState)(true);
52
+ const [nextCursor, setNextCursor] = (0, _react.useState)(undefined);
53
+ const [currentPage, setCurrentPage] = (0, _react.useState)(1);
50
54
  const scrollRef = (0, _react.useRef)(null);
51
55
  const inputRef = (0, _react.useRef)(null);
56
+ // Scroll management refs - using refs instead of state to avoid re-renders
57
+ const scrollYRef = (0, _react.useRef)(0);
58
+ const contentHeightRef = (0, _react.useRef)(0);
59
+ const isUserScrollingRef = (0, _react.useRef)(false);
60
+ const isPaginatingRef = (0, _react.useRef)(false);
61
+ const initialScrollDoneRef = (0, _react.useRef)(false);
52
62
  const themeProps = (0, _react.useMemo)(() => (0, _theme.mergeTheme)(themeOverrides), [themeOverrides]);
53
63
  const {
54
64
  _identify
@@ -74,6 +84,14 @@ const ChatWidget = exports.ChatWidget = /*#__PURE__*/(0, _react.forwardRef)(({
74
84
  };
75
85
  loadAuthData();
76
86
  }, [userTokenProp]);
87
+ (0, _react.useEffect)(() => {
88
+ const setActiveProduct = async () => {
89
+ if (activeProductType) {
90
+ await _storage.Storage.setJSON("external_context", activeProductType);
91
+ }
92
+ };
93
+ setActiveProduct();
94
+ }, [activeProductType]);
77
95
  const onViewAll = item => {
78
96
  let searchPayload = item?.search_payload;
79
97
  if (searchPayload?.cut_from || searchPayload?.cut_to || searchPayload?.polish_from || searchPayload?.polish_to || searchPayload?.symmetry_from || searchPayload?.symmetry_to) {
@@ -160,11 +178,22 @@ const ChatWidget = exports.ChatWidget = /*#__PURE__*/(0, _react.forwardRef)(({
160
178
  const initial = await (0, _api.fetchInitialMessages)(apiUrl, apiParams, priceMode);
161
179
  if (!cancelled) {
162
180
  const normalised = (0, _api.normaliseMessages)(initial).reverse();
181
+ // Capture pagination info from initial response
182
+ if (initial?.has_more !== undefined) {
183
+ setHasMoreMessages(initial.has_more);
184
+ }
185
+ if (initial?.next_cursor !== undefined) {
186
+ setNextCursor(initial.next_cursor);
187
+ }
188
+
189
+ // Reset scroll tracking for fresh load
190
+ initialScrollDoneRef.current = false;
191
+ isUserScrollingRef.current = false;
163
192
  if (normalised.length === 0) {
164
193
  const initialAssistant = {
165
194
  id: "",
166
195
  role: "assistant",
167
- text: "Search our diamond inventory instantly. Try asking for a 'Natural Diamonds 1.5ct Round under $2,000 VS' or 'Lab Grown Pear 2ct VS2+ $10000'",
196
+ text: 'Describe the diamond you\'re looking for for example, "2ct F VS2 under $10,000" or "1–2ct D–F VS pear" — and I\'ll take it from there.',
168
197
  createdAt: Date.now(),
169
198
  isLoading: false,
170
199
  suggestions: [],
@@ -172,19 +201,11 @@ const ChatWidget = exports.ChatWidget = /*#__PURE__*/(0, _react.forwardRef)(({
172
201
  reaction: "0"
173
202
  };
174
203
  setMessages([initialAssistant]);
175
- setTimeout(() => {
176
- scrollRef.current?.scrollToEnd({
177
- animated: false
178
- });
179
- }, 0);
204
+ setHasMoreMessages(false);
180
205
  } else {
181
206
  setMessages(normalised);
182
- setTimeout(() => {
183
- scrollRef.current?.scrollToEnd({
184
- animated: false
185
- });
186
- }, 0);
187
207
  }
208
+ // onContentSizeChange will handle scrollToEnd
188
209
  }
189
210
  } catch (error) {
190
211
  console.error("Failed to fetch initial messages", error);
@@ -200,11 +221,13 @@ const ChatWidget = exports.ChatWidget = /*#__PURE__*/(0, _react.forwardRef)(({
200
221
  const sendMessage = (0, _react.useCallback)(async rawText => {
201
222
  const trimmed = rawText.trim();
202
223
  if (!trimmed || loading) return;
224
+ const external_context = await _storage.Storage.getJSON("external_context");
203
225
  const userMessage = {
204
226
  id: `user-${Date.now()}`,
205
227
  role: "user",
206
228
  text: trimmed,
207
- createdAt: Date.now()
229
+ createdAt: Date.now(),
230
+ external_context: external_context || null
208
231
  };
209
232
  const loadingId = `bot-loading-${Date.now()}`;
210
233
  const loadingMessage = {
@@ -330,6 +353,53 @@ const ChatWidget = exports.ChatWidget = /*#__PURE__*/(0, _react.forwardRef)(({
330
353
  });
331
354
  }
332
355
  }, []);
356
+
357
+ // Load older messages when user scrolls to top
358
+ const loadOlderMessages = (0, _react.useCallback)(async () => {
359
+ if (loadingOlder || !hasMoreMessages || !hasAuth) return;
360
+
361
+ // Mark that we're paginating - this prevents auto-scroll to bottom
362
+ isPaginatingRef.current = true;
363
+ const prevHeight = contentHeightRef.current;
364
+ setLoadingOlder(true);
365
+ try {
366
+ const result = await (0, _api.fetchOlderMessages)(apiUrl, priceMode, nextCursor, currentPage + 1);
367
+ const olderMessages = (0, _api.normaliseMessages)(result);
368
+ if (olderMessages.length > 0) {
369
+ // Prepend older messages to the beginning
370
+ setMessages(prev => {
371
+ // Filter out duplicates by id
372
+ const existingIds = new Set(prev.map(m => m.id));
373
+ const newMessages = olderMessages.filter(m => !existingIds.has(m.id));
374
+ return [...newMessages, ...prev];
375
+ });
376
+ setCurrentPage(prev => prev + 1);
377
+
378
+ // After state update, adjust scroll to maintain position
379
+ // Use requestAnimationFrame to wait for layout
380
+ requestAnimationFrame(() => {
381
+ const newHeight = contentHeightRef.current;
382
+ const heightDiff = newHeight - prevHeight;
383
+ if (heightDiff > 0 && scrollRef.current) {
384
+ scrollRef.current.scrollTo({
385
+ y: scrollYRef.current + heightDiff,
386
+ animated: false
387
+ });
388
+ }
389
+ isPaginatingRef.current = false;
390
+ });
391
+ } else {
392
+ isPaginatingRef.current = false;
393
+ }
394
+ setHasMoreMessages(result.has_more ?? olderMessages.length > 0);
395
+ setNextCursor(result.next_cursor);
396
+ } catch (e) {
397
+ console.error("Failed to load older messages", e);
398
+ isPaginatingRef.current = false;
399
+ } finally {
400
+ setLoadingOlder(false);
401
+ }
402
+ }, [loadingOlder, hasMoreMessages, hasAuth, apiUrl, priceMode, nextCursor, currentPage]);
333
403
  (0, _react.useEffect)(() => {
334
404
  const scrollToBottom = () => {
335
405
  setTimeout(() => {
@@ -392,13 +462,21 @@ const ChatWidget = exports.ChatWidget = /*#__PURE__*/(0, _react.forwardRef)(({
392
462
  setLoadingMessageId(null);
393
463
  setTypingMessageId(null);
394
464
  setTypingFullText("");
465
+ // Reset pagination state
466
+ setHasMoreMessages(true);
467
+ setNextCursor(undefined);
468
+ setCurrentPage(1);
469
+ // Reset scroll tracking
470
+ initialScrollDoneRef.current = false;
471
+ isUserScrollingRef.current = false;
472
+ isPaginatingRef.current = false;
395
473
  const fresh = await (0, _api.fetchInitialMessages)(apiUrl, undefined, priceMode);
396
474
  const normalised = (0, _api.normaliseMessages)(fresh).reverse();
397
475
  if (normalised.length === 0) {
398
476
  const initialAssistant = {
399
477
  id: "",
400
478
  role: "assistant",
401
- text: "Search our diamond inventory instantly. Try asking for a 'Natural Diamonds 1.5ct Round under $2,000 VS' or 'Lab Grown Pear 2ct VS2+ $10000'",
479
+ text: 'Describe the diamond you\'re looking for for example, "2ct F VS2 under $10,000" or "1–2ct D–F VS pear" — and I\'ll take it from there.',
402
480
  createdAt: Date.now(),
403
481
  isLoading: false,
404
482
  suggestions: [],
@@ -409,11 +487,7 @@ const ChatWidget = exports.ChatWidget = /*#__PURE__*/(0, _react.forwardRef)(({
409
487
  } else {
410
488
  setMessages(normalised);
411
489
  }
412
- setTimeout(() => {
413
- scrollRef.current?.scrollToEnd({
414
- animated: false
415
- });
416
- }, 500);
490
+ // onContentSizeChange will handle scrollToEnd
417
491
  onClearChat?.();
418
492
  } catch (err) {
419
493
  console.error("Failed to clear chat", err);
@@ -487,10 +561,15 @@ const ChatWidget = exports.ChatWidget = /*#__PURE__*/(0, _react.forwardRef)(({
487
561
  contentSize,
488
562
  layoutMeasurement
489
563
  } = e.nativeEvent;
490
- setScrollY(contentOffset.y);
564
+ scrollYRef.current = contentOffset.y;
491
565
  const distanceFromBottom = contentSize.height - (layoutMeasurement.height + contentOffset.y);
492
- // Enable auto-scroll when user is near the bottom; disable when scrolled up
493
- setAutoScroll(distanceFromBottom < 48);
566
+ // Track if user has scrolled away from bottom
567
+ isUserScrollingRef.current = distanceFromBottom > 100;
568
+
569
+ // Load older messages when scrolled near the top (within 50px)
570
+ if (contentOffset.y < 50 && hasMoreMessages && !loadingOlder && !isPaginatingRef.current) {
571
+ loadOlderMessages();
572
+ }
494
573
  },
495
574
  scrollEventThrottle: 16,
496
575
  style: modalHeight ? {
@@ -510,14 +589,35 @@ const ChatWidget = exports.ChatWidget = /*#__PURE__*/(0, _react.forwardRef)(({
510
589
  width: "100%"
511
590
  } : {})
512
591
  },
513
- onContentSizeChange: () => {
514
- if (autoScroll) {
592
+ onContentSizeChange: (_width, height) => {
593
+ contentHeightRef.current = height;
594
+
595
+ // Skip auto-scroll during pagination - scroll is handled in loadOlderMessages
596
+ if (isPaginatingRef.current || loadingOlder) {
597
+ return;
598
+ }
599
+
600
+ // Only auto-scroll to bottom if:
601
+ // 1. Initial scroll hasn't been done yet, OR
602
+ // 2. User is near the bottom (not scrolled up to view history)
603
+ if (!initialScrollDoneRef.current) {
604
+ scrollRef.current?.scrollToEnd({
605
+ animated: false
606
+ });
607
+ initialScrollDoneRef.current = true;
608
+ } else if (!isUserScrollingRef.current) {
609
+ // User is near bottom, auto-scroll for new messages
515
610
  scrollRef.current?.scrollToEnd({
516
611
  animated: false
517
612
  });
518
613
  }
519
614
  }
520
- }, messages?.[0]?.createdAt && /*#__PURE__*/_react.default.createElement(EmptyContainer, {
615
+ }, loadingOlder && /*#__PURE__*/_react.default.createElement(LoadingOlderContainer, null, /*#__PURE__*/_react.default.createElement(_reactNative.ActivityIndicator, {
616
+ size: "small",
617
+ color: theme["core-06"] || "#4F4E57"
618
+ }), /*#__PURE__*/_react.default.createElement(LoadingOlderText, {
619
+ theme: theme
620
+ }, "Loading older messages...")), messages?.[0]?.createdAt && /*#__PURE__*/_react.default.createElement(EmptyContainer, {
521
621
  theme: theme
522
622
  }, /*#__PURE__*/_react.default.createElement(EmptyText, {
523
623
  theme: theme
@@ -555,15 +655,7 @@ const ChatWidget = exports.ChatWidget = /*#__PURE__*/(0, _react.forwardRef)(({
555
655
  }));
556
656
  const diamonds = result?.response?.body?.diamonds;
557
657
  const hasAny = Array.isArray(diamonds) && diamonds.length > 0;
558
- if (hasAny) {
559
- try {
560
- scrollRef.current?.scrollTo({
561
- x: 0,
562
- y: scrollY + 120,
563
- animated: true
564
- });
565
- } catch (_) {}
566
- } else {
658
+ if (!hasAny) {
567
659
  setMessages(prev => prev.map(msg => msg.id === id ? {
568
660
  ...msg,
569
661
  id: msg.id,
@@ -571,6 +663,7 @@ const ChatWidget = exports.ChatWidget = /*#__PURE__*/(0, _react.forwardRef)(({
571
663
  isLoading: false
572
664
  } : msg));
573
665
  }
666
+ // Let onContentSizeChange handle scrolling naturally
574
667
  }
575
668
  }), item.role === "assistant" && hasDiamonds && /*#__PURE__*/_react.default.createElement(_ProductsList.default, {
576
669
  data: productsByMsg[item.id]?.response?.body?.diamonds || [],
@@ -646,6 +739,19 @@ const LineView = _native.default.View`
646
739
  }) => theme["core-03"] || "#E0E0E0"};
647
740
  border-top-width: 1;
648
741
  `;
742
+ const LoadingOlderContainer = _native.default.View`
743
+ padding: 12px;
744
+ align-items: center;
745
+ justify-content: center;
746
+ flex-direction: row;
747
+ gap: 8px;
748
+ `;
749
+ const LoadingOlderText = _native.default.Text`
750
+ font-size: 12px;
751
+ color: ${({
752
+ theme
753
+ }) => theme["core-06"] || "#4F4E57"};
754
+ `;
649
755
  const styles = _reactNative.StyleSheet.create({
650
756
  listContent: {
651
757
  paddingVertical: 8,