@react-querybuilder/core 8.19.0 → 8.20.0

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.
@@ -428,6 +428,7 @@ const standardClassnames = {
428
428
  valueListItem: "rule-value-list-item",
429
429
  branches: "queryBuilder-branches",
430
430
  justified: "queryBuilder-justified",
431
+ responsive: "queryBuilder-responsive",
431
432
  hasSubQuery: "rule-hasSubQuery",
432
433
  loading: "queryBuilder-loading",
433
434
  valueDateTimeRelative: "rule-value-dateTimeRelative"
@@ -620,45 +621,19 @@ const toArray = (a, { retainEmptyStrings } = {}) => Array.isArray(a) ? a.map(tri
620
621
  */
621
622
  const nullFreeArray = (arr) => arr.every((el) => el === false || (el ?? false) !== false);
622
623
  //#endregion
623
- //#region src/utils/clsx.ts
624
- /* v8 ignore start -- @preserve */
625
- function toVal(mix) {
626
- let k;
627
- let y;
628
- let str = "";
629
- if (typeof mix === "string" || typeof mix === "number") str += mix;
630
- else if (typeof mix === "object") {
631
- if (Array.isArray(mix)) {
632
- const len = mix.length;
633
- for (k = 0; k < len; k++) if (mix[k] && (y = toVal(mix[k]))) {
634
- str && (str += " ");
635
- str += y;
636
- }
637
- } else for (y in mix) if (mix[y]) {
638
- str && (str += " ");
639
- str += y;
640
- }
641
- }
642
- return str;
624
+ //#region ../../node_modules/clsx/dist/clsx.mjs
625
+ function r(e) {
626
+ var t, f, n = "";
627
+ if ("string" == typeof e || "number" == typeof e) n += e;
628
+ else if ("object" == typeof e) if (Array.isArray(e)) {
629
+ var o = e.length;
630
+ for (t = 0; t < o; t++) e[t] && (f = r(e[t])) && (n && (n += " "), n += f);
631
+ } else for (f in e) e[f] && (n && (n += " "), n += f);
632
+ return n;
643
633
  }
644
- /* v8 ignore stop -- @preserve */
645
- /**
646
- * Vendored/adapted version of the `clsx` package.
647
- *
648
- * **NOTE:** Prefer the official package from npm outside the context of React Query Builder.
649
- */
650
- // v8 ignore next
651
- function clsx(...args) {
652
- let i = 0;
653
- let tmp;
654
- let x;
655
- let str = "";
656
- const len = args.length;
657
- for (; i < len; i++) if ((tmp = args[i]) && (x = toVal(tmp))) {
658
- str && (str += " ");
659
- str += x;
660
- }
661
- return str;
634
+ function clsx() {
635
+ for (var e, t, f = 0, n = "", o = arguments.length; f < o; f++) (e = arguments[f]) && (t = r(e)) && (n && (n += " "), n += t);
636
+ return n;
662
637
  }
663
638
  //#endregion
664
639
  //#region src/utils/misc.ts
@@ -4730,7 +4705,16 @@ const mergeAnyTranslation = (el, keyPropContextMap, defaults) => {
4730
4705
  };
4731
4706
  //#endregion
4732
4707
  //#region src/utils/mergeClassnames.ts
4733
- const joinClassnamesByName = (name, args) => clsx(args.map((c) => clsx(c?.[name])));
4708
+ const joinClassnamesByName = (name, args) => {
4709
+ let result = "";
4710
+ for (let i = 0; i < args.length; i++) {
4711
+ const v = args[i]?.[name];
4712
+ if (!v) continue;
4713
+ const s = typeof v === "string" ? v : clsx(v);
4714
+ if (s) result = result ? `${result} ${s}` : s;
4715
+ }
4716
+ return result;
4717
+ };
4734
4718
  /**
4735
4719
  * Merges a list of partial {@link Classnames} definitions into a single definition.
4736
4720
  */