@athoscommerce/snap-store-mobx 1.5.1-beta.114 → 1.5.1-beta.116
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.
|
@@ -51,6 +51,19 @@ export declare class ChatStore extends AbstractStore<ChatStoreConfig> {
|
|
|
51
51
|
* across all filter fields. Each value in a value facet, each range in a range-bucket
|
|
52
52
|
* facet, and the single range on a slider facet each count as one. */
|
|
53
53
|
get pendingFacetCount(): number;
|
|
54
|
+
/** Current in-progress facet selection translated into the API's `searchFilters` shape.
|
|
55
|
+
* Returned unconditionally (not gated on `hasPendingFacetChanges`) so callers that need
|
|
56
|
+
* to explicitly force a `productSearch` request — e.g. the non-multiselect facet
|
|
57
|
+
* click handlers — can attach the current filters without re-implementing the mapping. */
|
|
58
|
+
get searchFilters(): {
|
|
59
|
+
key: string;
|
|
60
|
+
options: ({
|
|
61
|
+
key: string;
|
|
62
|
+
} | {
|
|
63
|
+
low: string;
|
|
64
|
+
high: string;
|
|
65
|
+
})[];
|
|
66
|
+
}[];
|
|
54
67
|
/** True when the in-progress facet selection differs from the filters that were applied
|
|
55
68
|
* by the active productSearchResult — i.e. the user has selected/removed something that
|
|
56
69
|
* hasn't been sent yet. Used to decide whether to show the Apply button. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatStore.d.ts","sourceRoot":"","sources":["../../../src/Chat/ChatStore.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,KAAK,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAC9F,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAC7G,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,OAAO,EAAY,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAIrE,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,QAAQ,EAAE,aAAa,CAAC;IAC/B;sEACkE;IAC3D,UAAU,EAAE,UAAU,CAAC;IAC9B,uFAAuF;IAChF,MAAM,EAAE,gBAAgB,CAAC;IACzB,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;IACxD,oGAAoG;IACpG,OAAO,CAAC,qBAAqB,CAAuB;IACpD,0FAA0F;IACnF,UAAU,EAAE,MAAM,CAAK;IAC9B;;kGAE8F;IAC9F,OAAO,CAAC,qBAAqB,CAAuB;gBAExC,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,aAAa;
|
|
1
|
+
{"version":3,"file":"ChatStore.d.ts","sourceRoot":"","sources":["../../../src/Chat/ChatStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -159,6 +159,7 @@ var ChatStore = /** @class */ (function (_super) {
|
|
|
159
159
|
urlVersion: mobx_1.observable,
|
|
160
160
|
hasPendingFacetChanges: mobx_1.computed,
|
|
161
161
|
pendingFacetCount: mobx_1.computed,
|
|
162
|
+
searchFilters: mobx_1.computed,
|
|
162
163
|
});
|
|
163
164
|
// Sync the root facets display with the active message. Only productSearchResult
|
|
164
165
|
// messages carry facets — for any other active message, clear the display so a
|
|
@@ -330,6 +331,43 @@ var ChatStore = /** @class */ (function (_super) {
|
|
|
330
331
|
enumerable: false,
|
|
331
332
|
configurable: true
|
|
332
333
|
});
|
|
334
|
+
Object.defineProperty(ChatStore.prototype, "searchFilters", {
|
|
335
|
+
/** Current in-progress facet selection translated into the API's `searchFilters` shape.
|
|
336
|
+
* Returned unconditionally (not gated on `hasPendingFacetChanges`) so callers that need
|
|
337
|
+
* to explicitly force a `productSearch` request — e.g. the non-multiselect facet
|
|
338
|
+
* click handlers — can attach the current filters without re-implementing the mapping. */
|
|
339
|
+
get: function () {
|
|
340
|
+
var _a;
|
|
341
|
+
void this.urlVersion;
|
|
342
|
+
var filterState = (_a = this.urlManager.state) === null || _a === void 0 ? void 0 : _a.filter;
|
|
343
|
+
var result = [];
|
|
344
|
+
if (!filterState)
|
|
345
|
+
return result;
|
|
346
|
+
Object.keys(filterState).forEach(function (field) {
|
|
347
|
+
var raw = filterState[field];
|
|
348
|
+
var values = Array.isArray(raw) ? raw : [raw];
|
|
349
|
+
var options = [];
|
|
350
|
+
values.forEach(function (v) {
|
|
351
|
+
if (typeof v === 'object' && v !== null) {
|
|
352
|
+
var low = v.low;
|
|
353
|
+
var high = v.high;
|
|
354
|
+
if (low == null && high == null)
|
|
355
|
+
return;
|
|
356
|
+
options.push({ low: low == null ? '*' : String(low), high: high == null ? '*' : String(high) });
|
|
357
|
+
}
|
|
358
|
+
else {
|
|
359
|
+
options.push({ key: String(v) });
|
|
360
|
+
}
|
|
361
|
+
});
|
|
362
|
+
if (options.length > 0) {
|
|
363
|
+
result.push({ key: field, options: options });
|
|
364
|
+
}
|
|
365
|
+
});
|
|
366
|
+
return result;
|
|
367
|
+
},
|
|
368
|
+
enumerable: false,
|
|
369
|
+
configurable: true
|
|
370
|
+
});
|
|
333
371
|
Object.defineProperty(ChatStore.prototype, "hasPendingFacetChanges", {
|
|
334
372
|
/** True when the in-progress facet selection differs from the filters that were applied
|
|
335
373
|
* by the active productSearchResult — i.e. the user has selected/removed something that
|
|
@@ -51,6 +51,19 @@ export declare class ChatStore extends AbstractStore<ChatStoreConfig> {
|
|
|
51
51
|
* across all filter fields. Each value in a value facet, each range in a range-bucket
|
|
52
52
|
* facet, and the single range on a slider facet each count as one. */
|
|
53
53
|
get pendingFacetCount(): number;
|
|
54
|
+
/** Current in-progress facet selection translated into the API's `searchFilters` shape.
|
|
55
|
+
* Returned unconditionally (not gated on `hasPendingFacetChanges`) so callers that need
|
|
56
|
+
* to explicitly force a `productSearch` request — e.g. the non-multiselect facet
|
|
57
|
+
* click handlers — can attach the current filters without re-implementing the mapping. */
|
|
58
|
+
get searchFilters(): {
|
|
59
|
+
key: string;
|
|
60
|
+
options: ({
|
|
61
|
+
key: string;
|
|
62
|
+
} | {
|
|
63
|
+
low: string;
|
|
64
|
+
high: string;
|
|
65
|
+
})[];
|
|
66
|
+
}[];
|
|
54
67
|
/** True when the in-progress facet selection differs from the filters that were applied
|
|
55
68
|
* by the active productSearchResult — i.e. the user has selected/removed something that
|
|
56
69
|
* hasn't been sent yet. Used to decide whether to show the Apply button. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatStore.d.ts","sourceRoot":"","sources":["../../../src/Chat/ChatStore.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,KAAK,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAC9F,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAC7G,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,OAAO,EAAY,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAIrE,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,QAAQ,EAAE,aAAa,CAAC;IAC/B;sEACkE;IAC3D,UAAU,EAAE,UAAU,CAAC;IAC9B,uFAAuF;IAChF,MAAM,EAAE,gBAAgB,CAAC;IACzB,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;IACxD,oGAAoG;IACpG,OAAO,CAAC,qBAAqB,CAAuB;IACpD,0FAA0F;IACnF,UAAU,EAAE,MAAM,CAAK;IAC9B;;kGAE8F;IAC9F,OAAO,CAAC,qBAAqB,CAAuB;gBAExC,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,aAAa;
|
|
1
|
+
{"version":3,"file":"ChatStore.d.ts","sourceRoot":"","sources":["../../../src/Chat/ChatStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -132,6 +132,7 @@ export class ChatStore extends AbstractStore {
|
|
|
132
132
|
urlVersion: observable,
|
|
133
133
|
hasPendingFacetChanges: computed,
|
|
134
134
|
pendingFacetCount: computed,
|
|
135
|
+
searchFilters: computed,
|
|
135
136
|
});
|
|
136
137
|
// Sync the root facets display with the active message. Only productSearchResult
|
|
137
138
|
// messages carry facets — for any other active message, clear the display so a
|
|
@@ -293,6 +294,38 @@ export class ChatStore extends AbstractStore {
|
|
|
293
294
|
}
|
|
294
295
|
return count;
|
|
295
296
|
}
|
|
297
|
+
/** Current in-progress facet selection translated into the API's `searchFilters` shape.
|
|
298
|
+
* Returned unconditionally (not gated on `hasPendingFacetChanges`) so callers that need
|
|
299
|
+
* to explicitly force a `productSearch` request — e.g. the non-multiselect facet
|
|
300
|
+
* click handlers — can attach the current filters without re-implementing the mapping. */
|
|
301
|
+
get searchFilters() {
|
|
302
|
+
void this.urlVersion;
|
|
303
|
+
const filterState = this.urlManager.state?.filter;
|
|
304
|
+
const result = [];
|
|
305
|
+
if (!filterState)
|
|
306
|
+
return result;
|
|
307
|
+
Object.keys(filterState).forEach((field) => {
|
|
308
|
+
const raw = filterState[field];
|
|
309
|
+
const values = Array.isArray(raw) ? raw : [raw];
|
|
310
|
+
const options = [];
|
|
311
|
+
values.forEach((v) => {
|
|
312
|
+
if (typeof v === 'object' && v !== null) {
|
|
313
|
+
const low = v.low;
|
|
314
|
+
const high = v.high;
|
|
315
|
+
if (low == null && high == null)
|
|
316
|
+
return;
|
|
317
|
+
options.push({ low: low == null ? '*' : String(low), high: high == null ? '*' : String(high) });
|
|
318
|
+
}
|
|
319
|
+
else {
|
|
320
|
+
options.push({ key: String(v) });
|
|
321
|
+
}
|
|
322
|
+
});
|
|
323
|
+
if (options.length > 0) {
|
|
324
|
+
result.push({ key: field, options });
|
|
325
|
+
}
|
|
326
|
+
});
|
|
327
|
+
return result;
|
|
328
|
+
}
|
|
296
329
|
/** True when the in-progress facet selection differs from the filters that were applied
|
|
297
330
|
* by the active productSearchResult — i.e. the user has selected/removed something that
|
|
298
331
|
* hasn't been sent yet. Used to decide whether to show the Apply button. */
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@athoscommerce/snap-store-mobx",
|
|
3
|
-
"version": "1.5.1-beta.
|
|
3
|
+
"version": "1.5.1-beta.116+2e6b3dd56",
|
|
4
4
|
"description": "Snap MobX Store",
|
|
5
5
|
"main": "dist/cjs/index.js",
|
|
6
6
|
"module": "dist/esm/index.js",
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"test:watch": "jest --watch"
|
|
24
24
|
},
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@athoscommerce/snap-toolbox": "1.5.1-beta.
|
|
26
|
+
"@athoscommerce/snap-toolbox": "1.5.1-beta.116+2e6b3dd56",
|
|
27
27
|
"deepmerge": "4.3.1",
|
|
28
28
|
"is-plain-object": "5.0.0"
|
|
29
29
|
},
|
|
@@ -31,13 +31,13 @@
|
|
|
31
31
|
"mobx": "^6.15.1"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
|
-
"@athoscommerce/snap-client": "1.5.1-beta.
|
|
35
|
-
"@athoscommerce/snap-url-manager": "1.5.1-beta.
|
|
34
|
+
"@athoscommerce/snap-client": "1.5.1-beta.116+2e6b3dd56",
|
|
35
|
+
"@athoscommerce/snap-url-manager": "1.5.1-beta.116+2e6b3dd56",
|
|
36
36
|
"mobx": "6.15.1"
|
|
37
37
|
},
|
|
38
38
|
"sideEffects": false,
|
|
39
39
|
"files": [
|
|
40
40
|
"dist/**/*"
|
|
41
41
|
],
|
|
42
|
-
"gitHead": "
|
|
42
|
+
"gitHead": "2e6b3dd56715d9f0a3db4c6e221146cf1147053c"
|
|
43
43
|
}
|