@indxsearch/intrface 3.1.0 → 3.1.2
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/CHANGELOG.md +16 -0
- package/README.md +3 -1
- package/dist/components/RangeFilterPanel.d.ts +1 -0
- package/dist/components/ValueFilterPanel.d.ts +8 -0
- package/dist/context/SearchContext.d.ts +4 -0
- package/dist/context/buildFilterProxy.d.ts +9 -5
- package/dist/index.cjs.js +1 -1
- package/dist/index.es.js +282 -239
- package/package.json +2 -2
package/dist/index.es.js
CHANGED
|
@@ -144,16 +144,16 @@ async function k(e, t, n, r, i, a) {
|
|
|
144
144
|
}, "CombineFilters", n, r, i, a);
|
|
145
145
|
return o;
|
|
146
146
|
}
|
|
147
|
-
async function A(e, t, n, r, i, a) {
|
|
148
|
-
let
|
|
147
|
+
async function A(e, t, n, r, i, a, o = {}) {
|
|
148
|
+
let s = Object.entries(e ?? {}).filter(([, e]) => e.length > 0), c = Object.entries(t ?? {}), [l, u] = await Promise.all([Promise.all(s.map(async ([e, t]) => k(await Promise.all(t.map((t) => O("value", {
|
|
149
149
|
fieldName: e,
|
|
150
150
|
value: t
|
|
151
|
-
}, `Value filter '${e}'`, n, r, i, a))), "or", n, r, i, a))), Promise.all(
|
|
151
|
+
}, `Value filter '${e}'`, n, r, i, a))), o[e] === "any" ? "or" : "and", n, r, i, a))), Promise.all(c.map(([e, { min: t, max: o }]) => O("range", {
|
|
152
152
|
fieldName: e,
|
|
153
153
|
lowerLimit: t,
|
|
154
154
|
upperLimit: o
|
|
155
155
|
}, `Range filter '${e}'`, n, r, i, a)))]);
|
|
156
|
-
return k([...
|
|
156
|
+
return k([...l, ...u], "and", n, r, i, a);
|
|
157
157
|
}
|
|
158
158
|
//#endregion
|
|
159
159
|
//#region src/context/useSearchExecution.ts
|
|
@@ -195,7 +195,7 @@ function M({ state: e, setState: t, authenticatedFetch: n, auth: r, url: a, team
|
|
|
195
195
|
i = !0;
|
|
196
196
|
}
|
|
197
197
|
try {
|
|
198
|
-
let c = await A(e.filters, e.rangeFilters, a, s, u, n), l = d || e.query.trim() !== "", f = {
|
|
198
|
+
let c = await A(e.filters, e.rangeFilters, a, s, u, n, e.valueMatch), l = d || e.query.trim() !== "", f = {
|
|
199
199
|
text: e.query,
|
|
200
200
|
maxNumberOfRecordsToReturn: l ? T : 0,
|
|
201
201
|
enableFacets: i,
|
|
@@ -238,6 +238,7 @@ function M({ state: e, setState: t, authenticatedFetch: n, auth: r, url: a, team
|
|
|
238
238
|
});
|
|
239
239
|
}
|
|
240
240
|
}
|
|
241
|
+
if (o !== g.current) return;
|
|
241
242
|
let R = e.query !== x, z = e.query !== C, B = e.facetStats ?? {};
|
|
242
243
|
if (R ? (B = {
|
|
243
244
|
...r.initialFacetStats,
|
|
@@ -261,7 +262,6 @@ function M({ state: e, setState: t, authenticatedFetch: n, auth: r, url: a, team
|
|
|
261
262
|
value: null
|
|
262
263
|
}));
|
|
263
264
|
}
|
|
264
|
-
if (o !== g.current) return;
|
|
265
265
|
let H = I.filter((t) => {
|
|
266
266
|
let n = e.query.trim();
|
|
267
267
|
return n === "" || n.length === 1 ? !0 : t.score >= k;
|
|
@@ -291,6 +291,7 @@ function M({ state: e, setState: t, authenticatedFetch: n, auth: r, url: a, team
|
|
|
291
291
|
}, [
|
|
292
292
|
e.query,
|
|
293
293
|
e.filters,
|
|
294
|
+
e.valueMatch,
|
|
294
295
|
e.rangeFilters,
|
|
295
296
|
e.facetStats,
|
|
296
297
|
N,
|
|
@@ -395,6 +396,7 @@ var N = n(void 0), P = ({ children: e, url: t, team: n, dataset: r, allowEmptySe
|
|
|
395
396
|
facetableFields: [],
|
|
396
397
|
sortableFields: [],
|
|
397
398
|
filters: {},
|
|
399
|
+
valueMatch: {},
|
|
398
400
|
rangeFilters: {},
|
|
399
401
|
facetStats: {},
|
|
400
402
|
rangeBounds: {},
|
|
@@ -510,7 +512,15 @@ var N = n(void 0), P = ({ children: e, url: t, team: n, dataset: r, allowEmptySe
|
|
|
510
512
|
filters: r
|
|
511
513
|
};
|
|
512
514
|
});
|
|
513
|
-
}, []), F = i((e, t
|
|
515
|
+
}, []), F = i((e, t) => {
|
|
516
|
+
C((n) => n.valueMatch[e] === t ? n : {
|
|
517
|
+
...n,
|
|
518
|
+
valueMatch: {
|
|
519
|
+
...n.valueMatch,
|
|
520
|
+
[e]: t
|
|
521
|
+
}
|
|
522
|
+
});
|
|
523
|
+
}, []), I = i((e, t, n) => {
|
|
514
524
|
y.current = !0, C((r) => ({
|
|
515
525
|
...r,
|
|
516
526
|
rangeFilters: {
|
|
@@ -521,13 +531,13 @@ var N = n(void 0), P = ({ children: e, url: t, team: n, dataset: r, allowEmptySe
|
|
|
521
531
|
}
|
|
522
532
|
}
|
|
523
533
|
}));
|
|
524
|
-
}, []),
|
|
534
|
+
}, []), L = i(() => {
|
|
525
535
|
y.current = !0, C((e) => ({
|
|
526
536
|
...e,
|
|
527
537
|
filters: {},
|
|
528
538
|
rangeFilters: {}
|
|
529
539
|
}));
|
|
530
|
-
}, []),
|
|
540
|
+
}, []), R = i((e, t, n = !0) => {
|
|
531
541
|
n && (y.current = !0), C((n) => {
|
|
532
542
|
let r = { ...n.filters }, i = (r[e] || []).filter((e) => e !== t);
|
|
533
543
|
return i.length > 0 ? r[e] = i : delete r[e], {
|
|
@@ -535,7 +545,7 @@ var N = n(void 0), P = ({ children: e, url: t, team: n, dataset: r, allowEmptySe
|
|
|
535
545
|
filters: r
|
|
536
546
|
};
|
|
537
547
|
});
|
|
538
|
-
}, []),
|
|
548
|
+
}, []), z = i((e, t = !0) => {
|
|
539
549
|
t && (y.current = !0), C((t) => {
|
|
540
550
|
let n = { ...t.rangeFilters };
|
|
541
551
|
return delete n[e], {
|
|
@@ -543,7 +553,7 @@ var N = n(void 0), P = ({ children: e, url: t, team: n, dataset: r, allowEmptySe
|
|
|
543
553
|
rangeFilters: n
|
|
544
554
|
};
|
|
545
555
|
});
|
|
546
|
-
}, []),
|
|
556
|
+
}, []), B = i((e, t) => {
|
|
547
557
|
C((n) => ({
|
|
548
558
|
...n,
|
|
549
559
|
sortBy: e || void 0,
|
|
@@ -562,11 +572,12 @@ var N = n(void 0), P = ({ children: e, url: t, team: n, dataset: r, allowEmptySe
|
|
|
562
572
|
authenticatedFetch: E,
|
|
563
573
|
setQuery: O,
|
|
564
574
|
toggleFilter: P,
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
575
|
+
setValueMatch: F,
|
|
576
|
+
setRangeFilter: I,
|
|
577
|
+
resetFilters: L,
|
|
578
|
+
resetSingleFilter: R,
|
|
579
|
+
resetRangeFilter: z,
|
|
580
|
+
setSort: B,
|
|
570
581
|
setDebounceDelay: k,
|
|
571
582
|
setSearchSettings: A,
|
|
572
583
|
fetchMoreResults: j
|
|
@@ -662,20 +673,20 @@ var N = n(void 0), P = ({ children: e, url: t, team: n, dataset: r, allowEmptySe
|
|
|
662
673
|
skeletonDelay: t * .1,
|
|
663
674
|
skeletonWidths: V[t % V.length]
|
|
664
675
|
}, t))
|
|
665
|
-
}),
|
|
666
|
-
function
|
|
676
|
+
}), ee = /^\[\s*(?:'[^']*'(?:\s*,\s*'[^']*')*)?\s*\]$/;
|
|
677
|
+
function U(e) {
|
|
667
678
|
let t = e.trim();
|
|
668
679
|
if (!t.startsWith("[") || !t.endsWith("]")) return;
|
|
669
680
|
try {
|
|
670
681
|
let e = JSON.parse(t);
|
|
671
682
|
if (Array.isArray(e)) return e.map((e) => String(e));
|
|
672
683
|
} catch {}
|
|
673
|
-
if (!
|
|
684
|
+
if (!ee.test(t)) return;
|
|
674
685
|
let n = [], r = /'([^']*)'/g, i;
|
|
675
686
|
for (; (i = r.exec(t)) !== null;) n.push(i[1]);
|
|
676
687
|
return n;
|
|
677
688
|
}
|
|
678
|
-
var
|
|
689
|
+
var W = ({ fields: e, resultsPerPage: t, parseArrayStrings: n = !1, children: r }) => {
|
|
679
690
|
let { state: { results: i, resultsSuppressed: a, searchSettings: s, truncationIndex: u, query: h, error: g }, isFetchingInitial: _, authError: v, allowEmptySearch: y, fetchMoreResults: b } = F(), x = t ?? 30, [S, C] = l(x), w = c(0), E = c("");
|
|
680
691
|
o(() => {
|
|
681
692
|
let e = h !== E.current;
|
|
@@ -728,7 +739,7 @@ var ee = ({ fields: e, resultsPerPage: t, parseArrayStrings: n = !1, children: r
|
|
|
728
739
|
if (n) for (let e in l) {
|
|
729
740
|
let t = l[e];
|
|
730
741
|
if (typeof t == "string") {
|
|
731
|
-
let n =
|
|
742
|
+
let n = U(t);
|
|
732
743
|
n && (l[e] = n);
|
|
733
744
|
}
|
|
734
745
|
}
|
|
@@ -765,7 +776,7 @@ var ee = ({ fields: e, resultsPerPage: t, parseArrayStrings: n = !1, children: r
|
|
|
765
776
|
sliderTrack: "_sliderTrack_145f5_32",
|
|
766
777
|
inputRow: "_inputRow_145f5_40",
|
|
767
778
|
inputBar: "_inputBar_145f5_45"
|
|
768
|
-
},
|
|
779
|
+
}, ne = [
|
|
769
780
|
65,
|
|
770
781
|
80,
|
|
771
782
|
55,
|
|
@@ -774,7 +785,7 @@ var ee = ({ fields: e, resultsPerPage: t, parseArrayStrings: n = !1, children: r
|
|
|
774
785
|
75,
|
|
775
786
|
50,
|
|
776
787
|
68
|
|
777
|
-
],
|
|
788
|
+
], q = ({ title: e, rows: t = 5, variant: n = "list", collapsible: r = !0, startCollapsed: i = !1 }) => /* @__PURE__ */ f(g, {
|
|
778
789
|
title: e,
|
|
779
790
|
collapsible: r,
|
|
780
791
|
collapsed: i,
|
|
@@ -795,40 +806,48 @@ var ee = ({ fields: e, resultsPerPage: t, parseArrayStrings: n = !1, children: r
|
|
|
795
806
|
children: Array.from({ length: t }).map((e, t) => /* @__PURE__ */ f("div", {
|
|
796
807
|
className: K.bar,
|
|
797
808
|
style: {
|
|
798
|
-
width: `${
|
|
809
|
+
width: `${ne[t % ne.length]}%`,
|
|
799
810
|
animationDelay: `${t * .05}s`
|
|
800
811
|
}
|
|
801
812
|
}, t))
|
|
802
813
|
})
|
|
803
|
-
}),
|
|
814
|
+
}), J = {
|
|
804
815
|
list: "_list_m82u6_2",
|
|
805
816
|
count: "_count_m82u6_7",
|
|
806
817
|
countValue: "_countValue_m82u6_17",
|
|
807
818
|
chip: "_chip_m82u6_22",
|
|
808
819
|
chipLabel: "_chipLabel_m82u6_32",
|
|
809
820
|
grid: "_grid_m82u6_40"
|
|
810
|
-
},
|
|
811
|
-
let { state: { facets:
|
|
821
|
+
}, re = ({ field: e, label: t, preserveBlankFacetState: n = !1, preserveBlankFacetStateOrder: r = !1, sortFacetsBy: i = "histogram", limit: a = 10, collapsible: s = !0, startCollapsed: u = !1, displayType: d = "checkbox", layout: _ = "list", showActivePanel: v = !1, showCount: y = !0, showNull: b = !1, match: x = "all", displayIfEmptyQuery: C = !0, displayCondition: w = (e) => !0 }) => {
|
|
822
|
+
let { state: { facets: T, filterableFields: E, facetableFields: D, filters: O, query: k }, toggleFilter: A, setValueMatch: j, isFetchingInitial: M, allowEmptySearch: N } = F();
|
|
823
|
+
o(() => {
|
|
824
|
+
j(e, x);
|
|
825
|
+
}, [
|
|
826
|
+
e,
|
|
827
|
+
x,
|
|
828
|
+
j
|
|
829
|
+
]);
|
|
830
|
+
let P = c(null), [I, L] = l(a);
|
|
812
831
|
if (o(() => {
|
|
813
|
-
|
|
814
|
-
}, [
|
|
815
|
-
if (
|
|
832
|
+
L(a);
|
|
833
|
+
}, [T?.[e], a]), !N && !k) return null;
|
|
834
|
+
if (M || !T) return d === "toggle" ? /* @__PURE__ */ f(q, {
|
|
816
835
|
rows: 1,
|
|
817
836
|
collapsible: !1
|
|
818
|
-
}) : /* @__PURE__ */ f(
|
|
837
|
+
}) : /* @__PURE__ */ f(q, {
|
|
819
838
|
title: t,
|
|
820
839
|
rows: Math.min(a, 6),
|
|
821
840
|
collapsible: s,
|
|
822
841
|
startCollapsed: u
|
|
823
842
|
});
|
|
824
|
-
if (!
|
|
825
|
-
query:
|
|
826
|
-
filters:
|
|
827
|
-
facets:
|
|
828
|
-
}) || !
|
|
829
|
-
if (!
|
|
843
|
+
if (!w({
|
|
844
|
+
query: k ?? "",
|
|
845
|
+
filters: O,
|
|
846
|
+
facets: T
|
|
847
|
+
}) || !C && !k && Object.keys(O).length < 1) return null;
|
|
848
|
+
if (!E?.includes(e) || !D?.includes(e)) {
|
|
830
849
|
let t = [];
|
|
831
|
-
return
|
|
850
|
+
return E?.includes(e) || t.push("filterable"), D?.includes(e) || t.push("facetable"), /* @__PURE__ */ f(g, {
|
|
832
851
|
collapsible: !1,
|
|
833
852
|
children: /* @__PURE__ */ p("div", {
|
|
834
853
|
style: {
|
|
@@ -845,29 +864,29 @@ var ee = ({ fields: e, resultsPerPage: t, parseArrayStrings: n = !1, children: r
|
|
|
845
864
|
})
|
|
846
865
|
});
|
|
847
866
|
}
|
|
848
|
-
let
|
|
849
|
-
if (!
|
|
850
|
-
let
|
|
851
|
-
n && !
|
|
852
|
-
let
|
|
853
|
-
n &&
|
|
854
|
-
|
|
855
|
-
}),
|
|
856
|
-
|
|
867
|
+
let R = T?.[e] ?? (d === "toggle" ? [] : void 0);
|
|
868
|
+
if (!R || !Array.isArray(R)) return null;
|
|
869
|
+
let z = O?.[e] ?? [];
|
|
870
|
+
n && !P.current && R.length > 0 && (P.current = R.reduce((e, t) => (e[t.key] = t.value, e), {}));
|
|
871
|
+
let B = /* @__PURE__ */ new Map();
|
|
872
|
+
n && P.current && Object.keys(P.current).forEach((e) => {
|
|
873
|
+
B.set(e, 0);
|
|
874
|
+
}), R.forEach((e) => {
|
|
875
|
+
B.set(e.key, e.value);
|
|
857
876
|
});
|
|
858
|
-
let
|
|
877
|
+
let V = new Set([
|
|
859
878
|
"true",
|
|
860
879
|
"false",
|
|
861
880
|
"null"
|
|
862
|
-
]),
|
|
863
|
-
if (
|
|
864
|
-
let e =
|
|
865
|
-
|
|
881
|
+
]), H = Array.from(B.keys()), ee = d === "toggle" && (H.length > 0 && H.every((e) => V.has(e)) || H.length === 0 && z.length > 0);
|
|
882
|
+
if (ee && B.has("null")) {
|
|
883
|
+
let e = B.get("null") ?? 0, t = B.get("false") ?? 0;
|
|
884
|
+
B.set("false", t + e), B.delete("null");
|
|
866
885
|
}
|
|
867
|
-
if (d === "toggle" && !
|
|
886
|
+
if (d === "toggle" && !ee) return /* @__PURE__ */ f(g, {
|
|
868
887
|
collapsible: !1,
|
|
869
888
|
children: /* @__PURE__ */ f("div", {
|
|
870
|
-
className:
|
|
889
|
+
className: J.count,
|
|
871
890
|
children: /* @__PURE__ */ f(S, {
|
|
872
891
|
label: t,
|
|
873
892
|
checked: !1,
|
|
@@ -876,17 +895,17 @@ var ee = ({ fields: e, resultsPerPage: t, parseArrayStrings: n = !1, children: r
|
|
|
876
895
|
})
|
|
877
896
|
})
|
|
878
897
|
});
|
|
879
|
-
if (
|
|
880
|
-
let n =
|
|
898
|
+
if (ee) {
|
|
899
|
+
let n = B.get("true"), r = typeof n == "number" ? n : null, i = z.includes("true"), a = r === 0 && !i, o = y && (r ?? 0) > 0 ? `${r}` : "";
|
|
881
900
|
return /* @__PURE__ */ f(g, {
|
|
882
901
|
collapsible: !1,
|
|
883
902
|
children: /* @__PURE__ */ p("div", {
|
|
884
|
-
className:
|
|
903
|
+
className: J.count,
|
|
885
904
|
children: [
|
|
886
905
|
/* @__PURE__ */ f(S, {
|
|
887
906
|
label: t,
|
|
888
907
|
checked: i,
|
|
889
|
-
onChange: () =>
|
|
908
|
+
onChange: () => A(e, "true"),
|
|
890
909
|
disabled: a
|
|
891
910
|
}),
|
|
892
911
|
" ",
|
|
@@ -895,73 +914,73 @@ var ee = ({ fields: e, resultsPerPage: t, parseArrayStrings: n = !1, children: r
|
|
|
895
914
|
})
|
|
896
915
|
});
|
|
897
916
|
}
|
|
898
|
-
let
|
|
899
|
-
if (b || (
|
|
917
|
+
let U = Array.from(B.entries());
|
|
918
|
+
if (b || (U = U.filter(([e]) => e !== "null")), U.length === 0 && !n) return null;
|
|
900
919
|
if (!r) if (i === "alphabetical") {
|
|
901
|
-
let e =
|
|
902
|
-
|
|
920
|
+
let e = U.filter(([, e]) => typeof e == "number" && e > 0).sort(([e], [t]) => e.localeCompare(t)), t = U.filter(([, e]) => e === 0 || e === null).sort(([e], [t]) => e.localeCompare(t));
|
|
921
|
+
U = [...e, ...t];
|
|
903
922
|
} else if (i === "numeric") {
|
|
904
923
|
let e = (e, t) => {
|
|
905
924
|
let n = Number(e), r = Number(t);
|
|
906
925
|
return !isNaN(n) && !isNaN(r) ? n - r : e.localeCompare(t);
|
|
907
|
-
}, t =
|
|
908
|
-
|
|
926
|
+
}, t = U.filter(([, e]) => typeof e == "number" && e > 0).sort(([t], [n]) => e(t, n)), n = U.filter(([, e]) => e === 0 || e === null).sort(([t], [n]) => e(t, n));
|
|
927
|
+
U = [...t, ...n];
|
|
909
928
|
} else {
|
|
910
|
-
let e =
|
|
911
|
-
|
|
929
|
+
let e = U.filter(([, e]) => typeof e == "number" && e > 0), t = U.filter(([, e]) => e === 0 || e === null);
|
|
930
|
+
U = [...e, ...t];
|
|
912
931
|
}
|
|
913
|
-
let
|
|
914
|
-
let r =
|
|
932
|
+
let W = typeof a == "number" && U.length > a, G = W ? U.slice(0, I) : U, te = (t, n) => {
|
|
933
|
+
let r = z.includes(t), i = n === 0, a = y && (n ?? 0) > 0 ? ` (${n})` : "", o = y && (n ?? 0) > 0 ? n : "";
|
|
915
934
|
switch (d) {
|
|
916
935
|
case "button": return _ === "list" ? /* @__PURE__ */ p("div", {
|
|
917
|
-
className:
|
|
936
|
+
className: J.count,
|
|
918
937
|
children: [/* @__PURE__ */ f(m, {
|
|
919
938
|
variant: r ? "primary" : "secondary",
|
|
920
|
-
onClick: () =>
|
|
939
|
+
onClick: () => A(e, t),
|
|
921
940
|
disabled: i,
|
|
922
941
|
size: "micro",
|
|
923
|
-
className:
|
|
942
|
+
className: J.chip,
|
|
924
943
|
title: t,
|
|
925
944
|
children: /* @__PURE__ */ f("span", {
|
|
926
|
-
className:
|
|
945
|
+
className: J.chipLabel,
|
|
927
946
|
children: t
|
|
928
947
|
})
|
|
929
948
|
}), /* @__PURE__ */ f("span", {
|
|
930
|
-
className:
|
|
949
|
+
className: J.countValue,
|
|
931
950
|
children: o
|
|
932
951
|
})]
|
|
933
952
|
}) : /* @__PURE__ */ f(m, {
|
|
934
953
|
variant: r ? "primary" : "secondary",
|
|
935
|
-
onClick: () =>
|
|
954
|
+
onClick: () => A(e, t),
|
|
936
955
|
disabled: i,
|
|
937
956
|
size: "micro",
|
|
938
|
-
className:
|
|
957
|
+
className: J.chip,
|
|
939
958
|
title: `${t}${a}`,
|
|
940
959
|
children: /* @__PURE__ */ f("span", {
|
|
941
|
-
className:
|
|
960
|
+
className: J.chipLabel,
|
|
942
961
|
children: `${t}${a}`
|
|
943
962
|
})
|
|
944
963
|
});
|
|
945
964
|
case "toggle": return /* @__PURE__ */ f(S, {
|
|
946
965
|
label: t,
|
|
947
966
|
checked: r,
|
|
948
|
-
onChange: () =>
|
|
967
|
+
onChange: () => A(e, t),
|
|
949
968
|
disabled: i
|
|
950
969
|
});
|
|
951
970
|
default: return _ === "list" ? /* @__PURE__ */ p("div", {
|
|
952
|
-
className:
|
|
971
|
+
className: J.count,
|
|
953
972
|
children: [/* @__PURE__ */ f(h, {
|
|
954
973
|
label: t,
|
|
955
974
|
score: "",
|
|
956
975
|
checked: r,
|
|
957
|
-
onChange: () =>
|
|
976
|
+
onChange: () => A(e, t),
|
|
958
977
|
disabled: i
|
|
959
978
|
}), /* @__PURE__ */ f("span", { children: o })]
|
|
960
979
|
}) : /* @__PURE__ */ f(h, {
|
|
961
980
|
label: t,
|
|
962
981
|
score: a,
|
|
963
982
|
checked: r,
|
|
964
|
-
onChange: () =>
|
|
983
|
+
onChange: () => A(e, t),
|
|
965
984
|
disabled: i
|
|
966
985
|
});
|
|
967
986
|
}
|
|
@@ -971,61 +990,84 @@ var ee = ({ fields: e, resultsPerPage: t, parseArrayStrings: n = !1, children: r
|
|
|
971
990
|
collapsible: s,
|
|
972
991
|
collapsed: s ? u : !1,
|
|
973
992
|
children: /* @__PURE__ */ p("ul", {
|
|
974
|
-
className: _ === "grid" ?
|
|
993
|
+
className: _ === "grid" ? J.grid : J.list,
|
|
975
994
|
style: {
|
|
976
995
|
listStyle: "none",
|
|
977
996
|
padding: 0,
|
|
978
997
|
margin: 0
|
|
979
998
|
},
|
|
980
|
-
children: [
|
|
981
|
-
let e =
|
|
999
|
+
children: [G.map(([e, t]) => /* @__PURE__ */ f("li", { children: te(e, t) }, e)), W && I < U.length && (() => {
|
|
1000
|
+
let e = U.length - I, t = Math.min(50, e);
|
|
982
1001
|
return /* @__PURE__ */ f("li", {
|
|
983
|
-
className:
|
|
1002
|
+
className: J.toggleItem,
|
|
984
1003
|
children: /* @__PURE__ */ f(m, {
|
|
985
1004
|
variant: "ghost",
|
|
986
1005
|
size: "micro",
|
|
987
|
-
onClick: () =>
|
|
988
|
-
children: `Show ${t} more of ${
|
|
1006
|
+
onClick: () => L((e) => e + 50),
|
|
1007
|
+
children: `Show ${t} more of ${U.length} total`
|
|
989
1008
|
})
|
|
990
1009
|
});
|
|
991
1010
|
})()]
|
|
992
1011
|
})
|
|
993
1012
|
});
|
|
994
|
-
},
|
|
1013
|
+
}, ie = {
|
|
995
1014
|
disabledMessage: "_disabledMessage_uci6n_1",
|
|
996
1015
|
histogram: "_histogram_uci6n_6",
|
|
997
1016
|
histogramBar: "_histogramBar_uci6n_15"
|
|
998
|
-
}
|
|
999
|
-
|
|
1017
|
+
};
|
|
1018
|
+
//#endregion
|
|
1019
|
+
//#region src/components/RangeFilterPanel.tsx
|
|
1020
|
+
function ae(e) {
|
|
1021
|
+
if (!Number.isFinite(e)) return 0;
|
|
1022
|
+
let t = String(e), n = t.indexOf(".");
|
|
1023
|
+
return n === -1 ? 0 : Math.min(6, t.length - n - 1);
|
|
1024
|
+
}
|
|
1025
|
+
function oe(e, t, n) {
|
|
1026
|
+
let r = t + Math.round((e - t) / n) * n;
|
|
1027
|
+
return Number(r.toFixed(ae(n)));
|
|
1028
|
+
}
|
|
1029
|
+
var Y = ({ field: t, label: n, expectedMin: r = 0, expectedMax: i = 1e3, displayType: a = "input", collapsible: o = !0, startCollapsed: s = !1, showHistogram: c = !1, resolution: l, step: u }) => {
|
|
1030
|
+
let { state: { rangeFilters: d, rangeBounds: m, facetStats: h, facets: v, filterableFields: y, facetableFields: b, query: S, facetDebounceDelayMillis: C }, setRangeFilter: w, resetRangeFilter: T, allowEmptySearch: E, isFetchingInitial: D } = F(), O = m?.[t] !== void 0, k = m?.[t] ?? {
|
|
1000
1031
|
min: r,
|
|
1001
1032
|
max: i
|
|
1002
|
-
},
|
|
1033
|
+
}, A = k.min, j = k.max, M = h?.[t] ?? k, N = Math.max(A, Math.min(j, M.min)), P = Math.max(A, Math.min(j, M.max)), I = e.useMemo(() => {
|
|
1034
|
+
if (u) return u;
|
|
1035
|
+
let e = Math.max(ae(A), ae(j)), n = v?.[t];
|
|
1036
|
+
if (Array.isArray(n)) for (let t of n) e = Math.max(e, ae(Number(t.key)));
|
|
1037
|
+
return e === 0 ? 1 : Number((10 ** -e).toFixed(e));
|
|
1038
|
+
}, [
|
|
1039
|
+
u,
|
|
1040
|
+
A,
|
|
1041
|
+
j,
|
|
1042
|
+
v,
|
|
1043
|
+
t
|
|
1044
|
+
]), L = O && A === j, R = L ? r : A, z = L ? i : j, B = d?.[t], V = B ? B.min : A, H = B ? B.max : j, ee = B !== void 0, U = N !== A || P !== j, [W, G] = e.useState([V, H]), [te, K] = e.useState(!1), [ne, J] = e.useState(!1), [re, Y] = e.useState(String(V)), [X, Z] = e.useState(String(H));
|
|
1003
1045
|
e.useEffect(() => {
|
|
1004
|
-
Y(String(
|
|
1005
|
-
}, [
|
|
1006
|
-
let { finalMin: Q, finalMax: $, isValidMin:
|
|
1007
|
-
let [e, t] =
|
|
1046
|
+
Y(String(W[0])), Z(String(W[1]));
|
|
1047
|
+
}, [W]);
|
|
1048
|
+
let { finalMin: Q, finalMax: $, isValidMin: se, isValidMax: ce } = e.useMemo(() => {
|
|
1049
|
+
let [e, t] = W, n = Math.max(A, Math.min(j, e)), r = Math.max(A, Math.min(j, t)), i = Math.min(n, r), a = Math.max(n, r);
|
|
1008
1050
|
return {
|
|
1009
1051
|
finalMin: i,
|
|
1010
1052
|
finalMax: a,
|
|
1011
|
-
isValidMin: i >=
|
|
1012
|
-
isValidMax: a <=
|
|
1053
|
+
isValidMin: i >= A && i < a,
|
|
1054
|
+
isValidMax: a <= j && a > i
|
|
1013
1055
|
};
|
|
1014
1056
|
}, [
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1057
|
+
W,
|
|
1058
|
+
A,
|
|
1059
|
+
j
|
|
1018
1060
|
]);
|
|
1019
1061
|
e.useEffect(() => {
|
|
1020
|
-
if (
|
|
1021
|
-
if (
|
|
1022
|
-
|
|
1062
|
+
if (L) return;
|
|
1063
|
+
if (W[0] === A && W[1] === j) {
|
|
1064
|
+
K(!1), J(!1);
|
|
1023
1065
|
return;
|
|
1024
1066
|
}
|
|
1025
|
-
let e =
|
|
1026
|
-
|
|
1067
|
+
let e = C ?? 500, n = setTimeout(() => {
|
|
1068
|
+
K(!se), J(!ce);
|
|
1027
1069
|
}, 300), r = setTimeout(() => {
|
|
1028
|
-
|
|
1070
|
+
se && ce && (Q === A && $ === j ? T(t, !1) : w(t, Q, $));
|
|
1029
1071
|
}, e);
|
|
1030
1072
|
return () => {
|
|
1031
1073
|
clearTimeout(n), clearTimeout(r);
|
|
@@ -1033,104 +1075,104 @@ var ee = ({ fields: e, resultsPerPage: t, parseArrayStrings: n = !1, children: r
|
|
|
1033
1075
|
}, [
|
|
1034
1076
|
Q,
|
|
1035
1077
|
$,
|
|
1036
|
-
|
|
1037
|
-
|
|
1038
|
-
k,
|
|
1078
|
+
se,
|
|
1079
|
+
ce,
|
|
1039
1080
|
A,
|
|
1081
|
+
j,
|
|
1040
1082
|
t,
|
|
1083
|
+
T,
|
|
1041
1084
|
w,
|
|
1042
1085
|
C,
|
|
1043
|
-
|
|
1044
|
-
P
|
|
1086
|
+
L
|
|
1045
1087
|
]), e.useEffect(() => {
|
|
1046
|
-
|
|
1088
|
+
G([V, H]), K(!1), J(!1);
|
|
1047
1089
|
}, [
|
|
1048
|
-
|
|
1049
|
-
|
|
1090
|
+
V,
|
|
1091
|
+
H,
|
|
1050
1092
|
t
|
|
1051
1093
|
]);
|
|
1052
|
-
let
|
|
1053
|
-
|
|
1094
|
+
let le = e.useCallback((e) => {
|
|
1095
|
+
L || G([Math.max(A, Math.min(P, e[0])), Math.max(N, Math.min(j, e[1]))]);
|
|
1054
1096
|
}, [
|
|
1055
|
-
|
|
1056
|
-
k,
|
|
1097
|
+
L,
|
|
1057
1098
|
A,
|
|
1058
|
-
|
|
1059
|
-
N
|
|
1060
|
-
|
|
1061
|
-
|
|
1062
|
-
|
|
1063
|
-
n
|
|
1099
|
+
j,
|
|
1100
|
+
N,
|
|
1101
|
+
P
|
|
1102
|
+
]), ue = e.useCallback((e) => {
|
|
1103
|
+
if (L) return;
|
|
1104
|
+
let n = Math.max(A, Math.min(P, e[0])), r = Math.max(N, Math.min(j, e[1]));
|
|
1105
|
+
n === A && r === j ? (G([A, j]), T(t, !0)) : G([n, r]);
|
|
1064
1106
|
}, [
|
|
1065
|
-
|
|
1066
|
-
k,
|
|
1107
|
+
L,
|
|
1067
1108
|
A,
|
|
1068
|
-
|
|
1109
|
+
j,
|
|
1069
1110
|
N,
|
|
1111
|
+
P,
|
|
1070
1112
|
t,
|
|
1071
|
-
|
|
1072
|
-
]),
|
|
1073
|
-
if (
|
|
1074
|
-
let e =
|
|
1113
|
+
T
|
|
1114
|
+
]), de = e.useCallback(() => {
|
|
1115
|
+
if (L) return;
|
|
1116
|
+
let e = re.trim(), t = e === "" ? NaN : Number(e);
|
|
1075
1117
|
if (isNaN(t)) {
|
|
1076
|
-
Y(String(
|
|
1118
|
+
Y(String(W[0]));
|
|
1077
1119
|
return;
|
|
1078
1120
|
}
|
|
1079
|
-
let n = Math.max(
|
|
1080
|
-
n <
|
|
1121
|
+
let n = Math.max(A, Math.min(P, t));
|
|
1122
|
+
n < W[1] ? G([n, W[1]]) : G([A, W[1]]), Y(String(n < W[1] ? n : A));
|
|
1081
1123
|
}, [
|
|
1082
|
-
|
|
1083
|
-
|
|
1084
|
-
|
|
1085
|
-
|
|
1086
|
-
|
|
1087
|
-
]),
|
|
1088
|
-
if (
|
|
1124
|
+
L,
|
|
1125
|
+
re,
|
|
1126
|
+
W,
|
|
1127
|
+
A,
|
|
1128
|
+
P
|
|
1129
|
+
]), fe = e.useCallback(() => {
|
|
1130
|
+
if (L) return;
|
|
1089
1131
|
let e = X.trim(), t = e === "" ? NaN : Number(e);
|
|
1090
1132
|
if (isNaN(t)) {
|
|
1091
|
-
Z(String(
|
|
1133
|
+
Z(String(W[1]));
|
|
1092
1134
|
return;
|
|
1093
1135
|
}
|
|
1094
|
-
let n = Math.max(
|
|
1095
|
-
n >
|
|
1136
|
+
let n = Math.max(N, Math.min(j, t));
|
|
1137
|
+
n > W[0] ? G([W[0], n]) : G([W[0], j]), Z(String(n > W[0] ? n : j));
|
|
1096
1138
|
}, [
|
|
1097
|
-
|
|
1139
|
+
L,
|
|
1098
1140
|
X,
|
|
1099
|
-
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
]),
|
|
1141
|
+
W,
|
|
1142
|
+
N,
|
|
1143
|
+
j
|
|
1144
|
+
]), pe = (e) => (t) => {
|
|
1103
1145
|
t.key === "Enter" && e();
|
|
1104
|
-
}, [
|
|
1146
|
+
}, [me, he] = e.useState(null), ge = e.useRef(null);
|
|
1105
1147
|
e.useEffect(() => {
|
|
1106
1148
|
if (!c) return;
|
|
1107
|
-
let e = `${
|
|
1108
|
-
if (e ===
|
|
1109
|
-
let n =
|
|
1149
|
+
let e = `${A}:${j}`;
|
|
1150
|
+
if (e === ge.current && ge.current !== null) return;
|
|
1151
|
+
let n = v?.[t];
|
|
1110
1152
|
if (!Array.isArray(n) || n.length === 0) return;
|
|
1111
1153
|
let r = n.filter((e) => e.value != null && !isNaN(Number(e.key))).map((e) => ({
|
|
1112
1154
|
key: e.key,
|
|
1113
1155
|
value: e.value
|
|
1114
1156
|
}));
|
|
1115
|
-
r.length > 0 && (
|
|
1157
|
+
r.length > 0 && (ge.current = e, he(r));
|
|
1116
1158
|
}, [
|
|
1117
|
-
k,
|
|
1118
1159
|
A,
|
|
1119
|
-
|
|
1160
|
+
j,
|
|
1161
|
+
v,
|
|
1120
1162
|
t,
|
|
1121
1163
|
c
|
|
1122
1164
|
]);
|
|
1123
|
-
let
|
|
1124
|
-
if (!c || !
|
|
1125
|
-
let e =
|
|
1165
|
+
let _e = e.useMemo(() => {
|
|
1166
|
+
if (!c || !me || me.length === 0) return [];
|
|
1167
|
+
let e = j - A;
|
|
1126
1168
|
if (e <= 0) return [];
|
|
1127
1169
|
let t = l ?? (Math.ceil(e / 20) || 1), n = Math.ceil(e / t);
|
|
1128
1170
|
return Array.from({ length: n }, (e, n) => {
|
|
1129
|
-
let r =
|
|
1171
|
+
let r = A + n * t, i = A + (n + 1) * t;
|
|
1130
1172
|
return {
|
|
1131
1173
|
bucketStart: r,
|
|
1132
1174
|
bucketEnd: i,
|
|
1133
|
-
count:
|
|
1175
|
+
count: me.filter((e) => {
|
|
1134
1176
|
let t = Number(e.key);
|
|
1135
1177
|
return t >= r && t < i;
|
|
1136
1178
|
}).reduce((e, t) => e + t.value, 0)
|
|
@@ -1138,37 +1180,37 @@ var ee = ({ fields: e, resultsPerPage: t, parseArrayStrings: n = !1, children: r
|
|
|
1138
1180
|
});
|
|
1139
1181
|
}, [
|
|
1140
1182
|
c,
|
|
1141
|
-
|
|
1142
|
-
k,
|
|
1183
|
+
me,
|
|
1143
1184
|
A,
|
|
1185
|
+
j,
|
|
1144
1186
|
l
|
|
1145
|
-
]),
|
|
1146
|
-
return c && !
|
|
1187
|
+
]), ve = e.useMemo(() => Math.max(..._e.map((e) => e.count), 1), [_e]);
|
|
1188
|
+
return c && !D && !b?.includes(t) && console.warn(`RangeFilterPanel: showHistogram=true but field "${t}" is not facetable. Add .Facetable = true to this field.`), D ? /* @__PURE__ */ f(q, {
|
|
1147
1189
|
title: n,
|
|
1148
1190
|
variant: "slider",
|
|
1149
1191
|
collapsible: o,
|
|
1150
1192
|
startCollapsed: s
|
|
1151
|
-
}) : !
|
|
1193
|
+
}) : !E && !S ? null : y?.includes(t) ? a === "slider" ? /* @__PURE__ */ p(g, {
|
|
1152
1194
|
title: n,
|
|
1153
1195
|
collapsed: s,
|
|
1154
1196
|
collapsible: o,
|
|
1155
1197
|
children: [
|
|
1156
|
-
|
|
1157
|
-
className:
|
|
1198
|
+
L && /* @__PURE__ */ p("div", {
|
|
1199
|
+
className: ie.disabledMessage,
|
|
1158
1200
|
children: [
|
|
1159
1201
|
"No adjustable range (all results have the same value: ",
|
|
1160
|
-
|
|
1202
|
+
A,
|
|
1161
1203
|
")."
|
|
1162
1204
|
]
|
|
1163
1205
|
}),
|
|
1164
|
-
c &&
|
|
1165
|
-
className:
|
|
1206
|
+
c && _e.length > 0 && /* @__PURE__ */ f("div", {
|
|
1207
|
+
className: ie.histogram,
|
|
1166
1208
|
children: (() => {
|
|
1167
|
-
let e = typeof
|
|
1168
|
-
return
|
|
1169
|
-
let r = Math.max(1, Math.ceil(t.count /
|
|
1209
|
+
let e = typeof N == "number" && typeof P == "number" && P > N && (N > A || P < j);
|
|
1210
|
+
return _e.map((t, n) => {
|
|
1211
|
+
let r = Math.max(1, Math.ceil(t.count / ve * 20)), i = e ? t.bucketEnd > N && t.bucketStart < P : t.bucketEnd > Q && t.bucketStart < $;
|
|
1170
1212
|
return /* @__PURE__ */ f("div", {
|
|
1171
|
-
className:
|
|
1213
|
+
className: ie.histogramBar,
|
|
1172
1214
|
"data-testid": "histogram-bar",
|
|
1173
1215
|
"data-active": i,
|
|
1174
1216
|
style: {
|
|
@@ -1182,17 +1224,18 @@ var ee = ({ fields: e, resultsPerPage: t, parseArrayStrings: n = !1, children: r
|
|
|
1182
1224
|
/* @__PURE__ */ f("div", {
|
|
1183
1225
|
style: { padding: "10px 10px 20px 10px" },
|
|
1184
1226
|
children: /* @__PURE__ */ f(x, {
|
|
1185
|
-
min:
|
|
1186
|
-
max:
|
|
1187
|
-
|
|
1227
|
+
min: R,
|
|
1228
|
+
max: z,
|
|
1229
|
+
step: I,
|
|
1230
|
+
value: L ? [R, z] : [oe(Q, R, I), oe($, R, I)],
|
|
1188
1231
|
isRange: !0,
|
|
1189
|
-
onChange: (e) =>
|
|
1190
|
-
onFinalChange: (e) =>
|
|
1191
|
-
disabled:
|
|
1192
|
-
activeMin:
|
|
1193
|
-
activeMax:
|
|
1194
|
-
isFaceted:
|
|
1195
|
-
highlightFaceted:
|
|
1232
|
+
onChange: (e) => le(e),
|
|
1233
|
+
onFinalChange: (e) => ue(e),
|
|
1234
|
+
disabled: L,
|
|
1235
|
+
activeMin: N,
|
|
1236
|
+
activeMax: P,
|
|
1237
|
+
isFaceted: U,
|
|
1238
|
+
highlightFaceted: ee,
|
|
1196
1239
|
"aria-label": n || `Filter by ${t}`
|
|
1197
1240
|
})
|
|
1198
1241
|
}),
|
|
@@ -1207,35 +1250,35 @@ var ee = ({ fields: e, resultsPerPage: t, parseArrayStrings: n = !1, children: r
|
|
|
1207
1250
|
children: [/* @__PURE__ */ f(_, {
|
|
1208
1251
|
label: "Min:",
|
|
1209
1252
|
type: "number",
|
|
1210
|
-
value:
|
|
1211
|
-
min:
|
|
1212
|
-
max: Math.min(
|
|
1253
|
+
value: L ? String(A) : re,
|
|
1254
|
+
min: A,
|
|
1255
|
+
max: Math.min(P, W[1] - 1),
|
|
1213
1256
|
onChange: (e) => Y(e.target.value),
|
|
1214
|
-
onBlur:
|
|
1215
|
-
onKeyDown:
|
|
1216
|
-
disabled:
|
|
1217
|
-
isValid:
|
|
1257
|
+
onBlur: de,
|
|
1258
|
+
onKeyDown: pe(de),
|
|
1259
|
+
disabled: L,
|
|
1260
|
+
isValid: L || !te
|
|
1218
1261
|
}), /* @__PURE__ */ f(_, {
|
|
1219
1262
|
label: "Max:",
|
|
1220
1263
|
type: "number",
|
|
1221
|
-
value:
|
|
1222
|
-
min: Math.max(
|
|
1223
|
-
max:
|
|
1264
|
+
value: L ? String(j) : X,
|
|
1265
|
+
min: Math.max(N, W[0] + 1),
|
|
1266
|
+
max: j,
|
|
1224
1267
|
onChange: (e) => Z(e.target.value),
|
|
1225
|
-
onBlur:
|
|
1226
|
-
onKeyDown:
|
|
1227
|
-
disabled:
|
|
1228
|
-
isValid:
|
|
1268
|
+
onBlur: fe,
|
|
1269
|
+
onKeyDown: pe(fe),
|
|
1270
|
+
disabled: L,
|
|
1271
|
+
isValid: L || !ne
|
|
1229
1272
|
})]
|
|
1230
1273
|
})
|
|
1231
1274
|
]
|
|
1232
1275
|
}) : /* @__PURE__ */ p(g, {
|
|
1233
1276
|
title: n,
|
|
1234
|
-
children: [
|
|
1235
|
-
className:
|
|
1277
|
+
children: [L && /* @__PURE__ */ p("div", {
|
|
1278
|
+
className: ie.disabledMessage,
|
|
1236
1279
|
children: [
|
|
1237
1280
|
"No adjustable range (all results have the same value: ",
|
|
1238
|
-
|
|
1281
|
+
A,
|
|
1239
1282
|
")."
|
|
1240
1283
|
]
|
|
1241
1284
|
}), /* @__PURE__ */ p("div", {
|
|
@@ -1247,25 +1290,25 @@ var ee = ({ fields: e, resultsPerPage: t, parseArrayStrings: n = !1, children: r
|
|
|
1247
1290
|
children: [/* @__PURE__ */ f(_, {
|
|
1248
1291
|
label: "Min:",
|
|
1249
1292
|
type: "number",
|
|
1250
|
-
value:
|
|
1251
|
-
min:
|
|
1252
|
-
max: Math.min(
|
|
1293
|
+
value: L ? String(A) : re,
|
|
1294
|
+
min: A,
|
|
1295
|
+
max: Math.min(P, W[1] - 1),
|
|
1253
1296
|
onChange: (e) => Y(e.target.value),
|
|
1254
|
-
onBlur:
|
|
1255
|
-
onKeyDown:
|
|
1256
|
-
disabled:
|
|
1257
|
-
isValid:
|
|
1297
|
+
onBlur: de,
|
|
1298
|
+
onKeyDown: pe(de),
|
|
1299
|
+
disabled: L,
|
|
1300
|
+
isValid: L || !te
|
|
1258
1301
|
}), /* @__PURE__ */ f(_, {
|
|
1259
1302
|
label: "Max:",
|
|
1260
1303
|
type: "number",
|
|
1261
|
-
value:
|
|
1262
|
-
min: Math.max(
|
|
1263
|
-
max:
|
|
1304
|
+
value: L ? String(j) : X,
|
|
1305
|
+
min: Math.max(N, W[0] + 1),
|
|
1306
|
+
max: j,
|
|
1264
1307
|
onChange: (e) => Z(e.target.value),
|
|
1265
|
-
onBlur:
|
|
1266
|
-
onKeyDown:
|
|
1267
|
-
disabled:
|
|
1268
|
-
isValid:
|
|
1308
|
+
onBlur: fe,
|
|
1309
|
+
onKeyDown: pe(fe),
|
|
1310
|
+
disabled: L,
|
|
1311
|
+
isValid: L || !ne
|
|
1269
1312
|
})]
|
|
1270
1313
|
})]
|
|
1271
1314
|
}) : /* @__PURE__ */ f(g, {
|
|
@@ -1282,34 +1325,34 @@ var ee = ({ fields: e, resultsPerPage: t, parseArrayStrings: n = !1, children: r
|
|
|
1282
1325
|
]
|
|
1283
1326
|
})
|
|
1284
1327
|
});
|
|
1285
|
-
},
|
|
1328
|
+
}, X = {
|
|
1286
1329
|
grid: "_grid_xm2uh_2",
|
|
1287
1330
|
chip: "_chip_xm2uh_17",
|
|
1288
1331
|
chipLabel: "_chipLabel_xm2uh_28"
|
|
1289
|
-
},
|
|
1332
|
+
}, Z = r(({ field: e, value: t, onReset: n }) => /* @__PURE__ */ f("li", { children: /* @__PURE__ */ f(m, {
|
|
1290
1333
|
onClick: n,
|
|
1291
1334
|
iconRight: /* @__PURE__ */ f(E, {}),
|
|
1292
1335
|
variant: "primary",
|
|
1293
1336
|
size: "micro",
|
|
1294
|
-
className:
|
|
1337
|
+
className: X.chip,
|
|
1295
1338
|
title: `${e}: ${t}`,
|
|
1296
1339
|
children: /* @__PURE__ */ p("span", {
|
|
1297
|
-
className:
|
|
1340
|
+
className: X.chipLabel,
|
|
1298
1341
|
children: [
|
|
1299
1342
|
e,
|
|
1300
1343
|
": ",
|
|
1301
1344
|
t
|
|
1302
1345
|
]
|
|
1303
1346
|
})
|
|
1304
|
-
}) })),
|
|
1347
|
+
}) })), Q = r(({ field: e, min: t, max: n, onReset: r }) => /* @__PURE__ */ f("li", { children: /* @__PURE__ */ f(m, {
|
|
1305
1348
|
onClick: r,
|
|
1306
1349
|
iconRight: /* @__PURE__ */ f(E, {}),
|
|
1307
1350
|
variant: "primary",
|
|
1308
1351
|
size: "micro",
|
|
1309
|
-
className:
|
|
1352
|
+
className: X.chip,
|
|
1310
1353
|
title: `${e}: ${t} – ${n}`,
|
|
1311
1354
|
children: /* @__PURE__ */ p("span", {
|
|
1312
|
-
className:
|
|
1355
|
+
className: X.chipLabel,
|
|
1313
1356
|
children: [
|
|
1314
1357
|
e,
|
|
1315
1358
|
": ",
|
|
@@ -1319,7 +1362,7 @@ var ee = ({ fields: e, resultsPerPage: t, parseArrayStrings: n = !1, children: r
|
|
|
1319
1362
|
]
|
|
1320
1363
|
})
|
|
1321
1364
|
}) }));
|
|
1322
|
-
function
|
|
1365
|
+
function $() {
|
|
1323
1366
|
let { state: { filters: e, rangeFilters: t }, resetFilters: n, resetSingleFilter: r, resetRangeFilter: i } = F(), a = s(() => Object.entries(e).map(([e, t]) => t.map((t) => ({
|
|
1324
1367
|
field: e,
|
|
1325
1368
|
value: t
|
|
@@ -1332,14 +1375,14 @@ function ie() {
|
|
|
1332
1375
|
collapsible: !1,
|
|
1333
1376
|
title: "Active filters",
|
|
1334
1377
|
children: /* @__PURE__ */ p("ul", {
|
|
1335
|
-
className:
|
|
1378
|
+
className: X.grid,
|
|
1336
1379
|
children: [
|
|
1337
|
-
a.map(({ field: e, value: t }) => /* @__PURE__ */ f(
|
|
1380
|
+
a.map(({ field: e, value: t }) => /* @__PURE__ */ f(Z, {
|
|
1338
1381
|
field: e,
|
|
1339
1382
|
value: t,
|
|
1340
1383
|
onReset: () => r(e, t)
|
|
1341
1384
|
}, `${e}-${t}`)),
|
|
1342
|
-
o.map(({ field: e, min: t, max: n }) => /* @__PURE__ */ f(
|
|
1385
|
+
o.map(({ field: e, min: t, max: n }) => /* @__PURE__ */ f(Q, {
|
|
1343
1386
|
field: e,
|
|
1344
1387
|
min: t,
|
|
1345
1388
|
max: n,
|
|
@@ -1355,12 +1398,12 @@ function ie() {
|
|
|
1355
1398
|
})
|
|
1356
1399
|
}) : null;
|
|
1357
1400
|
}
|
|
1358
|
-
var
|
|
1401
|
+
var se = {
|
|
1359
1402
|
select: "_select_nwf7i_1",
|
|
1360
1403
|
radioGroup: "_radioGroup_nwf7i_6"
|
|
1361
|
-
},
|
|
1404
|
+
}, ce = ({ displayType: e = "dropdown", collapsible: t = !0, startCollapsed: n = !1 }) => {
|
|
1362
1405
|
let { state: { sortableFields: r, sortBy: i, sortAscending: a }, setSort: o, isFetchingInitial: s } = F();
|
|
1363
|
-
if (s) return /* @__PURE__ */ f(
|
|
1406
|
+
if (s) return /* @__PURE__ */ f(q, {
|
|
1364
1407
|
title: "Sort by",
|
|
1365
1408
|
rows: e === "radio" ? 3 : 1,
|
|
1366
1409
|
collapsible: t,
|
|
@@ -1394,7 +1437,7 @@ var ae = {
|
|
|
1394
1437
|
placeholder: "Select sort...",
|
|
1395
1438
|
"aria-label": "Sort by"
|
|
1396
1439
|
}) : /* @__PURE__ */ f("div", {
|
|
1397
|
-
className:
|
|
1440
|
+
className: se.radioGroup,
|
|
1398
1441
|
children: l.map((e) => /* @__PURE__ */ f(v, {
|
|
1399
1442
|
id: `sort-${e.value}`,
|
|
1400
1443
|
name: "sort-by",
|
|
@@ -1405,10 +1448,10 @@ var ae = {
|
|
|
1405
1448
|
}, e.value))
|
|
1406
1449
|
})
|
|
1407
1450
|
});
|
|
1408
|
-
},
|
|
1451
|
+
}, le = { list: "_list_1y4fk_1" };
|
|
1409
1452
|
//#endregion
|
|
1410
1453
|
//#region src/components/SearchSettingsPanel.tsx
|
|
1411
|
-
function
|
|
1454
|
+
function ue() {
|
|
1412
1455
|
let { state: { searchSettings: e }, setSearchSettings: t } = F(), [n, r] = l(!1), i = (e, n) => {
|
|
1413
1456
|
let r = parseInt(n, 10);
|
|
1414
1457
|
isNaN(r) || t({ [e]: r });
|
|
@@ -1430,7 +1473,7 @@ function ce() {
|
|
|
1430
1473
|
collapsed: !0,
|
|
1431
1474
|
title: "Settings",
|
|
1432
1475
|
children: /* @__PURE__ */ p("ul", {
|
|
1433
|
-
className:
|
|
1476
|
+
className: le.list,
|
|
1434
1477
|
children: [
|
|
1435
1478
|
/* @__PURE__ */ f("li", { children: /* @__PURE__ */ f(_, {
|
|
1436
1479
|
label: "Max Results",
|
|
@@ -1459,8 +1502,8 @@ function ce() {
|
|
|
1459
1502
|
children: /* @__PURE__ */ f(x, {
|
|
1460
1503
|
min: 0,
|
|
1461
1504
|
max: 65535,
|
|
1462
|
-
step:
|
|
1463
|
-
value: e.minimumScore,
|
|
1505
|
+
step: 1,
|
|
1506
|
+
value: Math.max(0, Math.min(65535, Math.round(e.minimumScore))),
|
|
1464
1507
|
onChange: (e) => {
|
|
1465
1508
|
t({ minimumScore: e });
|
|
1466
1509
|
},
|
|
@@ -1564,7 +1607,7 @@ function ce() {
|
|
|
1564
1607
|
}
|
|
1565
1608
|
//#endregion
|
|
1566
1609
|
//#region src/components/SearchErrorBoundary.tsx
|
|
1567
|
-
var
|
|
1610
|
+
var de = class extends t {
|
|
1568
1611
|
constructor(e) {
|
|
1569
1612
|
super(e), this.state = {
|
|
1570
1613
|
hasError: !1,
|
|
@@ -1646,7 +1689,7 @@ var le = class extends t {
|
|
|
1646
1689
|
};
|
|
1647
1690
|
//#endregion
|
|
1648
1691
|
//#region src/hooks/useVectorSearch.ts
|
|
1649
|
-
function
|
|
1692
|
+
function fe(e, t) {
|
|
1650
1693
|
let { url: n, team: r, dataset: a, authenticatedFetch: o } = F(), [s, c] = l(null), [u, d] = l(!1), [f, p] = l(void 0);
|
|
1651
1694
|
return {
|
|
1652
1695
|
results: s,
|
|
@@ -1702,7 +1745,7 @@ function ue(e, t) {
|
|
|
1702
1745
|
}
|
|
1703
1746
|
//#endregion
|
|
1704
1747
|
//#region src/hooks/useHybridSearch.ts
|
|
1705
|
-
function
|
|
1748
|
+
function pe(e, t) {
|
|
1706
1749
|
let { url: n, team: r, dataset: a, authenticatedFetch: o } = F(), [s, c] = l(null), [u, d] = l(!1), [f, p] = l(void 0);
|
|
1707
1750
|
return {
|
|
1708
1751
|
results: s,
|
|
@@ -1761,4 +1804,4 @@ function de(e, t) {
|
|
|
1761
1804
|
};
|
|
1762
1805
|
}
|
|
1763
1806
|
//#endregion
|
|
1764
|
-
export {
|
|
1807
|
+
export { $ as ActiveFiltersPanel, q as FilterPanelSkeleton, Y as RangeFilterPanel, N as SearchContext, de as SearchErrorBoundary, I as SearchInput, P as SearchProvider, z as SearchResult, te as SearchResultRow, W as SearchResults, H as SearchResultsSkeleton, ue as SearchSettingsPanel, ce as SortByPanel, re as ValueFilterPanel, pe as useHybridSearch, F as useSearch, F as useSearchContext, fe as useVectorSearch };
|