@proveanything/smartlinks-utils-ui 0.11.4 → 0.11.5

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.
@@ -993,90 +993,7 @@ var useProductChildren = (args) => {
993
993
  };
994
994
  };
995
995
  var EMPTY_RULE_FILTERS = { facetKeys: [], minClauses: null };
996
- var COMPLEXITY_THRESHOLDS = [3, 5, 10];
997
996
  var ruleOf = (r) => r.facetRule ?? null;
998
- function RuleFilterChips({ source, value, onChange }) {
999
- const facetKeyEntries = useMemo(() => {
1000
- const counts = /* @__PURE__ */ new Map();
1001
- for (const r of source) {
1002
- const rule = ruleOf(r);
1003
- if (!rule) continue;
1004
- for (const c of rule.all ?? []) {
1005
- counts.set(c.facetKey, (counts.get(c.facetKey) ?? 0) + 1);
1006
- }
1007
- }
1008
- return Array.from(counts.entries()).sort((a, b) => b[1] - a[1] || a[0].localeCompare(b[0]));
1009
- }, [source]);
1010
- const maxClauses = useMemo(() => {
1011
- let max = 0;
1012
- for (const r of source) {
1013
- const rule = ruleOf(r);
1014
- if (!rule) continue;
1015
- max = Math.max(max, rule.all?.length ?? 0);
1016
- }
1017
- return max;
1018
- }, [source]);
1019
- if (facetKeyEntries.length === 0 && maxClauses < 2) return null;
1020
- const toggleKey = (key) => {
1021
- const has = value.facetKeys.includes(key);
1022
- const next = has ? value.facetKeys.filter((k) => k !== key) : [...value.facetKeys, key];
1023
- onChange({ ...value, facetKeys: next });
1024
- };
1025
- const setMin = (n) => onChange({ ...value, minClauses: n });
1026
- const hasAny = value.facetKeys.length > 0 || value.minClauses != null;
1027
- return /* @__PURE__ */ jsxs("div", { className: "ra-rule-filters", children: [
1028
- /* @__PURE__ */ jsx("div", { className: "ra-rule-filters-row", role: "group", "aria-label": "Filter rules by facet", children: facetKeyEntries.map(([key, count]) => {
1029
- const active = value.facetKeys.includes(key);
1030
- return /* @__PURE__ */ jsxs(
1031
- "button",
1032
- {
1033
- type: "button",
1034
- onClick: () => toggleKey(key),
1035
- className: "ra-rule-filter-chip",
1036
- "data-active": active ? "true" : "false",
1037
- "aria-pressed": active,
1038
- title: `Show rules using ${key}`,
1039
- children: [
1040
- /* @__PURE__ */ jsx("span", { className: "ra-rule-filter-chip-label", children: key }),
1041
- /* @__PURE__ */ jsx("span", { className: "ra-rule-filter-chip-count", children: count })
1042
- ]
1043
- },
1044
- key
1045
- );
1046
- }) }),
1047
- maxClauses >= 2 && /* @__PURE__ */ jsx("div", { className: "ra-rule-filters-row", role: "group", "aria-label": "Filter by clause count", children: COMPLEXITY_THRESHOLDS.filter((n) => maxClauses >= n).map((n) => {
1048
- const active = value.minClauses === n;
1049
- return /* @__PURE__ */ jsxs(
1050
- "button",
1051
- {
1052
- type: "button",
1053
- onClick: () => setMin(active ? null : n),
1054
- className: "ra-rule-filter-chip",
1055
- "data-tone": "complexity",
1056
- "data-active": active ? "true" : "false",
1057
- "aria-pressed": active,
1058
- title: `Only rules with \u2265 ${n} facets`,
1059
- children: [
1060
- "\u2265 ",
1061
- n,
1062
- " facets"
1063
- ]
1064
- },
1065
- n
1066
- );
1067
- }) }),
1068
- hasAny && /* @__PURE__ */ jsx(
1069
- "button",
1070
- {
1071
- type: "button",
1072
- onClick: () => onChange(EMPTY_RULE_FILTERS),
1073
- className: "ra-rule-filter-clear",
1074
- "aria-label": "Clear rule filters",
1075
- children: "Clear filters"
1076
- }
1077
- )
1078
- ] });
1079
- }
1080
997
  function applyRuleFilters(items, filters) {
1081
998
  if (filters.facetKeys.length === 0 && filters.minClauses == null) return items;
1082
999
  return items.filter((r) => {
@@ -8037,7 +7954,6 @@ function RecordsAdminShellInner(props) {
8037
7954
  filter,
8038
7955
  setFilter,
8039
7956
  ruleFilters,
8040
- setRuleFilters,
8041
7957
  facetBrowseFilter,
8042
7958
  setFacetBrowseFilter,
8043
7959
  productBrowse,
@@ -9332,14 +9248,6 @@ function RecordsAdminShellInner(props) {
9332
9248
  }
9333
9249
  );
9334
9250
  })(),
9335
- isRuleTab && /* @__PURE__ */ jsx(
9336
- RuleFilterChips,
9337
- {
9338
- source: recordList.items,
9339
- value: ruleFilters,
9340
- onChange: setRuleFilters
9341
- }
9342
- ),
9343
9251
  isRuleTab && /* @__PURE__ */ jsx(
9344
9252
  FacetBrowseFilter,
9345
9253
  {