@athoscommerce/snap-store-mobx 1.2.3-beta.1 → 1.2.3-beta.3
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.
- package/dist/cjs/Chat/ChatStore.d.ts.map +1 -1
- package/dist/cjs/Chat/ChatStore.js +13 -2
- package/dist/cjs/Chat/Stores/ChatSessionStore.d.ts +1 -0
- package/dist/cjs/Chat/Stores/ChatSessionStore.d.ts.map +1 -1
- package/dist/cjs/Chat/Stores/ChatSessionStore.js +12 -0
- package/dist/esm/Chat/ChatStore.d.ts.map +1 -1
- package/dist/esm/Chat/ChatStore.js +13 -2
- package/dist/esm/Chat/Stores/ChatSessionStore.d.ts +1 -0
- package/dist/esm/Chat/Stores/ChatSessionStore.d.ts.map +1 -1
- package/dist/esm/Chat/Stores/ChatSessionStore.js +12 -0
- package/package.json +5 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatStore.d.ts","sourceRoot":"","sources":["../../../src/Chat/ChatStore.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAC7G,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,OAAO,EAAY,MAAM,oCAAoC,CAAC;AAIvE,qBAAa,SAAU,SAAQ,aAAa,CAAC,eAAe,CAAC;IACrD,IAAI,CAAC,EAAE,SAAS,CAAa;IAC7B,UAAU,EAAE,MAAM,CAAM;IACxB,IAAI,EAAE,OAAO,CAAS;IACtB,OAAO,EAAE,YAAY,CAAC;IACtB,KAAK,EAAE,gBAAgB,EAAE,CAAM;IAC/B,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,OAAO,GAAG,IAAI,CAAQ;IACnC,eAAe,EAAE,OAAO,CAAS;IACjC,kBAAkB,EAAE,MAAM,EAAE,CAAM;IAClC,cAAc,EAAE,MAAM,CAAM;IAC5B,QAAQ,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAA4E;IACpH,gBAAgB,EAAE,OAAO,GAAG,IAAI,CAAQ;IACxC,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAQ;IACnD,kEAAkE;IAClE,OAAO,CAAC,cAAc,CAAkC;gBAE5C,MAAM,EAAE,eAAe;
|
|
1
|
+
{"version":3,"file":"ChatStore.d.ts","sourceRoot":"","sources":["../../../src/Chat/ChatStore.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAC7G,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,OAAO,EAAY,MAAM,oCAAoC,CAAC;AAIvE,qBAAa,SAAU,SAAQ,aAAa,CAAC,eAAe,CAAC;IACrD,IAAI,CAAC,EAAE,SAAS,CAAa;IAC7B,UAAU,EAAE,MAAM,CAAM;IACxB,IAAI,EAAE,OAAO,CAAS;IACtB,OAAO,EAAE,YAAY,CAAC;IACtB,KAAK,EAAE,gBAAgB,EAAE,CAAM;IAC/B,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,OAAO,GAAG,IAAI,CAAQ;IACnC,eAAe,EAAE,OAAO,CAAS;IACjC,kBAAkB,EAAE,MAAM,EAAE,CAAM;IAClC,cAAc,EAAE,MAAM,CAAM;IAC5B,QAAQ,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAA4E;IACpH,gBAAgB,EAAE,OAAO,GAAG,IAAI,CAAQ;IACxC,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAQ;IACnD,kEAAkE;IAClE,OAAO,CAAC,cAAc,CAAkC;gBAE5C,MAAM,EAAE,eAAe;IAmGnC,IAAI,WAAW,IAAI,gBAAgB,GAAG,SAAS,CAE9C;IAED,IAAI,QAAQ,IAAI,MAAM,EAAE,CAEvB;IAED,IAAI,OAAO,IAAI,OAAO,CAQrB;IAEM,wBAAwB,CAAC,QAAQ,EAAE,kBAAkB,GAAG,OAAO;IAW/D,KAAK,IAAI,IAAI;IAOb,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAK3C,sBAAsB,CAAC,QAAQ,EAAE,qBAAqB,GAAG,IAAI;IA8B7D,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI/C,qBAAqB,IAAI,IAAI;IAK7B,YAAY,IAAI,IAAI;IAoBpB,UAAU,CAAC,IAAI,CAAC,EAAE;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,gBAAgB;IAyB1D,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAa5B,gBAAgB,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE;QAAE,WAAW,EAAE,cAAc,GAAG,gBAAgB,GAAG,mBAAmB,CAAA;KAAE,GAAG,IAAI;IAkBtH,cAAc,CAAC,MAAM,EAAE,GAAG,GAAG,IAAI;IAMjC,QAAQ,CAAC,KAAK,EAAE,GAAG,GAAG,IAAI;IAW1B,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAgB7C,kBAAkB,IAAI,IAAI;IAW1B,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO;IAYpD,OAAO,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAmBxC,MAAM,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,iBAAiB,CAAC;QAAC,IAAI,EAAE,iBAAiB,CAAA;KAAE,GAAG,IAAI;CAkB/E"}
|
|
@@ -93,6 +93,10 @@ var ChatStore = /** @class */ (function (_super) {
|
|
|
93
93
|
latestChatId = chatId;
|
|
94
94
|
}
|
|
95
95
|
});
|
|
96
|
+
// Prefer the persisted active chat ID so switching chats survives page reloads.
|
|
97
|
+
// Fall back to the most recently created chat if the stored ID is missing or stale.
|
|
98
|
+
var storedCurrentChatId = _this.storage.get('currentChatId');
|
|
99
|
+
var activeChatId = storedCurrentChatId && _this.chats.some(function (chat) { return chat.id === storedCurrentChatId; }) ? storedCurrentChatId : latestChatId;
|
|
96
100
|
var storedMeta = _this.storage.get('meta');
|
|
97
101
|
if (storedMeta) {
|
|
98
102
|
try {
|
|
@@ -106,7 +110,7 @@ var ChatStore = /** @class */ (function (_super) {
|
|
|
106
110
|
_this.storedMetaData = metaData;
|
|
107
111
|
// Only hydrate the active chat session — inactive sessions will be
|
|
108
112
|
// hydrated lazily when switched to via switchChat()
|
|
109
|
-
var activeChat = _this.chats.find(function (chat) { return chat.id ===
|
|
113
|
+
var activeChat = _this.chats.find(function (chat) { return chat.id === activeChatId; });
|
|
110
114
|
if (activeChat) {
|
|
111
115
|
activeChat.hydrateResults(metaData);
|
|
112
116
|
activeChat.hydrated = true;
|
|
@@ -116,7 +120,7 @@ var ChatStore = /** @class */ (function (_super) {
|
|
|
116
120
|
_this.storage.set('meta', null);
|
|
117
121
|
}
|
|
118
122
|
}
|
|
119
|
-
_this.currentChatId =
|
|
123
|
+
_this.currentChatId = activeChatId;
|
|
120
124
|
(0, mobx_1.makeObservable)(_this, {
|
|
121
125
|
meta: mobx_1.observable,
|
|
122
126
|
inputValue: mobx_1.observable,
|
|
@@ -233,6 +237,11 @@ var ChatStore = /** @class */ (function (_super) {
|
|
|
233
237
|
this.chats = [currentChat];
|
|
234
238
|
};
|
|
235
239
|
ChatStore.prototype.createChat = function (data) {
|
|
240
|
+
// abandon any in-flight request state from the previous chat — its
|
|
241
|
+
// response will be discarded by the controller, so the UI shouldn't
|
|
242
|
+
// keep showing its loading spinner or stale error
|
|
243
|
+
this.loading = false;
|
|
244
|
+
this.error = undefined;
|
|
236
245
|
// Prune old sessions before creating a new one to keep storage bounded
|
|
237
246
|
ChatSessionStore_1.ChatSessionStore.pruneStoredSessions(this.storage);
|
|
238
247
|
var newChat = new ChatSessionStore_1.ChatSessionStore({
|
|
@@ -244,6 +253,7 @@ var ChatStore = /** @class */ (function (_super) {
|
|
|
244
253
|
},
|
|
245
254
|
});
|
|
246
255
|
this.currentChatId = newChat.id;
|
|
256
|
+
this.storage.set('currentChatId', newChat.id);
|
|
247
257
|
this.chats.push(newChat);
|
|
248
258
|
return newChat;
|
|
249
259
|
};
|
|
@@ -256,6 +266,7 @@ var ChatStore = /** @class */ (function (_super) {
|
|
|
256
266
|
chatExists.hydrated = true;
|
|
257
267
|
}
|
|
258
268
|
this.currentChatId = id;
|
|
269
|
+
this.storage.set('currentChatId', id);
|
|
259
270
|
}
|
|
260
271
|
};
|
|
261
272
|
ChatStore.prototype.sendProductQuery = function (result, options) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatSessionStore.d.ts","sourceRoot":"","sources":["../../../../src/Chat/Stores/ChatSessionStore.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACX,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,EACpB,mCAAmC,EACnC,iCAAiC,EACjC,uBAAuB,EACvB,6BAA6B,EAC7B,iCAAiC,EACjC,qCAAqC,EACrC,qBAAqB,EACrB,0BAA0B,EAC1B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACN,2BAA2B,EAI3B,mBAAmB,EACnB,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAA6B,MAAM,4BAA4B,CAAC;AAC1F,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"ChatSessionStore.d.ts","sourceRoot":"","sources":["../../../../src/Chat/Stores/ChatSessionStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -41,6 +41,7 @@ function serializeProduct(product) {
|
|
|
41
41
|
return product;
|
|
42
42
|
var raw = {
|
|
43
43
|
id: product.id,
|
|
44
|
+
responseId: product.responseId,
|
|
44
45
|
mappings: product.mappings,
|
|
45
46
|
attributes: product.attributes,
|
|
46
47
|
};
|
|
@@ -464,6 +465,17 @@ var ChatSessionStore = /** @class */ (function () {
|
|
|
464
465
|
attachments: attachments.length > 0 ? attachments : undefined,
|
|
465
466
|
text: "Filter by ".concat(filterTextArray_1.join(' and ')),
|
|
466
467
|
requestType: request.data.requestType,
|
|
468
|
+
request: request.data, // request is added here to conditionally display different text in MessageUser
|
|
469
|
+
});
|
|
470
|
+
}
|
|
471
|
+
else if (request.data.searchTerm) {
|
|
472
|
+
// for when a query is clicked from ChatInspirationResultMessage
|
|
473
|
+
this.chat.push({
|
|
474
|
+
id: (0, uuid_1.v4)(),
|
|
475
|
+
messageType: 'user',
|
|
476
|
+
text: request.data.searchTerm,
|
|
477
|
+
requestType: request.data.requestType,
|
|
478
|
+
request: request.data, // request is added here to conditionally display different text in MessageUser
|
|
467
479
|
});
|
|
468
480
|
}
|
|
469
481
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatStore.d.ts","sourceRoot":"","sources":["../../../src/Chat/ChatStore.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAC7G,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,OAAO,EAAY,MAAM,oCAAoC,CAAC;AAIvE,qBAAa,SAAU,SAAQ,aAAa,CAAC,eAAe,CAAC;IACrD,IAAI,CAAC,EAAE,SAAS,CAAa;IAC7B,UAAU,EAAE,MAAM,CAAM;IACxB,IAAI,EAAE,OAAO,CAAS;IACtB,OAAO,EAAE,YAAY,CAAC;IACtB,KAAK,EAAE,gBAAgB,EAAE,CAAM;IAC/B,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,OAAO,GAAG,IAAI,CAAQ;IACnC,eAAe,EAAE,OAAO,CAAS;IACjC,kBAAkB,EAAE,MAAM,EAAE,CAAM;IAClC,cAAc,EAAE,MAAM,CAAM;IAC5B,QAAQ,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAA4E;IACpH,gBAAgB,EAAE,OAAO,GAAG,IAAI,CAAQ;IACxC,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAQ;IACnD,kEAAkE;IAClE,OAAO,CAAC,cAAc,CAAkC;gBAE5C,MAAM,EAAE,eAAe;
|
|
1
|
+
{"version":3,"file":"ChatStore.d.ts","sourceRoot":"","sources":["../../../src/Chat/ChatStore.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAC7G,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,OAAO,EAAY,MAAM,oCAAoC,CAAC;AAIvE,qBAAa,SAAU,SAAQ,aAAa,CAAC,eAAe,CAAC;IACrD,IAAI,CAAC,EAAE,SAAS,CAAa;IAC7B,UAAU,EAAE,MAAM,CAAM;IACxB,IAAI,EAAE,OAAO,CAAS;IACtB,OAAO,EAAE,YAAY,CAAC;IACtB,KAAK,EAAE,gBAAgB,EAAE,CAAM;IAC/B,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,OAAO,GAAG,IAAI,CAAQ;IACnC,eAAe,EAAE,OAAO,CAAS;IACjC,kBAAkB,EAAE,MAAM,EAAE,CAAM;IAClC,cAAc,EAAE,MAAM,CAAM;IAC5B,QAAQ,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAA4E;IACpH,gBAAgB,EAAE,OAAO,GAAG,IAAI,CAAQ;IACxC,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAQ;IACnD,kEAAkE;IAClE,OAAO,CAAC,cAAc,CAAkC;gBAE5C,MAAM,EAAE,eAAe;IAmGnC,IAAI,WAAW,IAAI,gBAAgB,GAAG,SAAS,CAE9C;IAED,IAAI,QAAQ,IAAI,MAAM,EAAE,CAEvB;IAED,IAAI,OAAO,IAAI,OAAO,CAQrB;IAEM,wBAAwB,CAAC,QAAQ,EAAE,kBAAkB,GAAG,OAAO;IAW/D,KAAK,IAAI,IAAI;IAOb,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAK3C,sBAAsB,CAAC,QAAQ,EAAE,qBAAqB,GAAG,IAAI;IA8B7D,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI/C,qBAAqB,IAAI,IAAI;IAK7B,YAAY,IAAI,IAAI;IAoBpB,UAAU,CAAC,IAAI,CAAC,EAAE;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,gBAAgB;IAyB1D,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAa5B,gBAAgB,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE;QAAE,WAAW,EAAE,cAAc,GAAG,gBAAgB,GAAG,mBAAmB,CAAA;KAAE,GAAG,IAAI;IAkBtH,cAAc,CAAC,MAAM,EAAE,GAAG,GAAG,IAAI;IAMjC,QAAQ,CAAC,KAAK,EAAE,GAAG,GAAG,IAAI;IAW1B,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAgB7C,kBAAkB,IAAI,IAAI;IAW1B,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO;IAYpD,OAAO,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAmBxC,MAAM,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,iBAAiB,CAAC;QAAC,IAAI,EAAE,iBAAiB,CAAA;KAAE,GAAG,IAAI;CAkB/E"}
|
|
@@ -66,6 +66,10 @@ export class ChatStore extends AbstractStore {
|
|
|
66
66
|
latestChatId = chatId;
|
|
67
67
|
}
|
|
68
68
|
});
|
|
69
|
+
// Prefer the persisted active chat ID so switching chats survives page reloads.
|
|
70
|
+
// Fall back to the most recently created chat if the stored ID is missing or stale.
|
|
71
|
+
const storedCurrentChatId = this.storage.get('currentChatId');
|
|
72
|
+
const activeChatId = storedCurrentChatId && this.chats.some((chat) => chat.id === storedCurrentChatId) ? storedCurrentChatId : latestChatId;
|
|
69
73
|
const storedMeta = this.storage.get('meta');
|
|
70
74
|
if (storedMeta) {
|
|
71
75
|
try {
|
|
@@ -79,7 +83,7 @@ export class ChatStore extends AbstractStore {
|
|
|
79
83
|
this.storedMetaData = metaData;
|
|
80
84
|
// Only hydrate the active chat session — inactive sessions will be
|
|
81
85
|
// hydrated lazily when switched to via switchChat()
|
|
82
|
-
const activeChat = this.chats.find((chat) => chat.id ===
|
|
86
|
+
const activeChat = this.chats.find((chat) => chat.id === activeChatId);
|
|
83
87
|
if (activeChat) {
|
|
84
88
|
activeChat.hydrateResults(metaData);
|
|
85
89
|
activeChat.hydrated = true;
|
|
@@ -89,7 +93,7 @@ export class ChatStore extends AbstractStore {
|
|
|
89
93
|
this.storage.set('meta', null);
|
|
90
94
|
}
|
|
91
95
|
}
|
|
92
|
-
this.currentChatId =
|
|
96
|
+
this.currentChatId = activeChatId;
|
|
93
97
|
makeObservable(this, {
|
|
94
98
|
meta: observable,
|
|
95
99
|
inputValue: observable,
|
|
@@ -193,6 +197,11 @@ export class ChatStore extends AbstractStore {
|
|
|
193
197
|
this.chats = [currentChat];
|
|
194
198
|
}
|
|
195
199
|
createChat(data) {
|
|
200
|
+
// abandon any in-flight request state from the previous chat — its
|
|
201
|
+
// response will be discarded by the controller, so the UI shouldn't
|
|
202
|
+
// keep showing its loading spinner or stale error
|
|
203
|
+
this.loading = false;
|
|
204
|
+
this.error = undefined;
|
|
196
205
|
// Prune old sessions before creating a new one to keep storage bounded
|
|
197
206
|
ChatSessionStore.pruneStoredSessions(this.storage);
|
|
198
207
|
const newChat = new ChatSessionStore({
|
|
@@ -204,6 +213,7 @@ export class ChatStore extends AbstractStore {
|
|
|
204
213
|
},
|
|
205
214
|
});
|
|
206
215
|
this.currentChatId = newChat.id;
|
|
216
|
+
this.storage.set('currentChatId', newChat.id);
|
|
207
217
|
this.chats.push(newChat);
|
|
208
218
|
return newChat;
|
|
209
219
|
}
|
|
@@ -216,6 +226,7 @@ export class ChatStore extends AbstractStore {
|
|
|
216
226
|
chatExists.hydrated = true;
|
|
217
227
|
}
|
|
218
228
|
this.currentChatId = id;
|
|
229
|
+
this.storage.set('currentChatId', id);
|
|
219
230
|
}
|
|
220
231
|
}
|
|
221
232
|
sendProductQuery(result, options) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatSessionStore.d.ts","sourceRoot":"","sources":["../../../../src/Chat/Stores/ChatSessionStore.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACX,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,EACpB,mCAAmC,EACnC,iCAAiC,EACjC,uBAAuB,EACvB,6BAA6B,EAC7B,iCAAiC,EACjC,qCAAqC,EACrC,qBAAqB,EACrB,0BAA0B,EAC1B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACN,2BAA2B,EAI3B,mBAAmB,EACnB,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAA6B,MAAM,4BAA4B,CAAC;AAC1F,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"ChatSessionStore.d.ts","sourceRoot":"","sources":["../../../../src/Chat/Stores/ChatSessionStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,6 +27,7 @@ function serializeProduct(product) {
|
|
|
27
27
|
return product;
|
|
28
28
|
const raw = {
|
|
29
29
|
id: product.id,
|
|
30
|
+
responseId: product.responseId,
|
|
30
31
|
mappings: product.mappings,
|
|
31
32
|
attributes: product.attributes,
|
|
32
33
|
};
|
|
@@ -439,6 +440,17 @@ export class ChatSessionStore {
|
|
|
439
440
|
attachments: attachments.length > 0 ? attachments : undefined,
|
|
440
441
|
text: `Filter by ${filterTextArray.join(' and ')}`,
|
|
441
442
|
requestType: request.data.requestType,
|
|
443
|
+
request: request.data, // request is added here to conditionally display different text in MessageUser
|
|
444
|
+
});
|
|
445
|
+
}
|
|
446
|
+
else if (request.data.searchTerm) {
|
|
447
|
+
// for when a query is clicked from ChatInspirationResultMessage
|
|
448
|
+
this.chat.push({
|
|
449
|
+
id: uuidv4(),
|
|
450
|
+
messageType: 'user',
|
|
451
|
+
text: request.data.searchTerm,
|
|
452
|
+
requestType: request.data.requestType,
|
|
453
|
+
request: request.data, // request is added here to conditionally display different text in MessageUser
|
|
442
454
|
});
|
|
443
455
|
}
|
|
444
456
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@athoscommerce/snap-store-mobx",
|
|
3
|
-
"version": "1.2.3-beta.
|
|
3
|
+
"version": "1.2.3-beta.3+25a2f4522",
|
|
4
4
|
"description": "Snap MobX Store",
|
|
5
5
|
"main": "dist/cjs/index.js",
|
|
6
6
|
"module": "dist/esm/index.js",
|
|
@@ -23,16 +23,16 @@
|
|
|
23
23
|
"test:watch": "jest --watch"
|
|
24
24
|
},
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@athoscommerce/snap-toolbox": "1.2.3-beta.
|
|
26
|
+
"@athoscommerce/snap-toolbox": "1.2.3-beta.3+25a2f4522",
|
|
27
27
|
"mobx": "6.15.0"
|
|
28
28
|
},
|
|
29
29
|
"devDependencies": {
|
|
30
|
-
"@athoscommerce/snap-client": "1.2.3-beta.
|
|
31
|
-
"@athoscommerce/snap-url-manager": "1.2.3-beta.
|
|
30
|
+
"@athoscommerce/snap-client": "1.2.3-beta.3+25a2f4522",
|
|
31
|
+
"@athoscommerce/snap-url-manager": "1.2.3-beta.3+25a2f4522"
|
|
32
32
|
},
|
|
33
33
|
"sideEffects": false,
|
|
34
34
|
"files": [
|
|
35
35
|
"dist/**/*"
|
|
36
36
|
],
|
|
37
|
-
"gitHead": "
|
|
37
|
+
"gitHead": "25a2f452248ffbf114c80137ea8ad95516b3f106"
|
|
38
38
|
}
|