@m1212e/rumble 0.18.3 → 0.18.6

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/out/index.mjs CHANGED
@@ -180,20 +180,20 @@ function mapNullFieldsToUndefined(obj) {
180
180
  }
181
181
  //#endregion
182
182
  //#region package.json
183
- var version = "0.18.3";
183
+ var version = "0.18.6";
184
184
  //#endregion
185
185
  //#region lib/helpers/mergeFilters.ts
186
- function mergeFilters(filterA, filterB) {
186
+ function mergeFilters(filterA, filterB, mode = "AND") {
187
187
  return {
188
- where: filterA?.where && filterB?.where ? { AND: [filterA?.where, filterB?.where] } : filterA?.where ?? filterB?.where,
188
+ where: filterA?.where && filterB?.where ? mode === "OR" ? { OR: [filterA.where, filterB.where] } : { AND: [filterA.where, filterB.where] } : filterA?.where ?? filterB?.where,
189
189
  columns: filterA?.columns || filterB?.columns ? new Set([Object.entries(filterA?.columns ?? {}), Object.entries(filterB?.columns ?? {})].flat().filter(([, v]) => v === true).map(([k]) => k)).entries().reduce((acc, [key]) => {
190
190
  acc[key] = true;
191
191
  return acc;
192
192
  }, {}) : void 0,
193
193
  extras: filterA?.extras || filterB?.extras ? toMerged(filterA?.extras ?? {}, filterB?.extras ?? {}) : void 0,
194
194
  orderBy: filterA?.orderBy || filterB?.orderBy ? toMerged(filterA?.orderBy ?? {}, filterB?.orderBy ?? {}) : void 0,
195
- limit: filterA?.limit || filterB?.limit ? Math.min(filterA?.limit ?? Infinity, filterB?.limit ?? Infinity) : void 0,
196
- offset: filterA?.offset || filterB?.offset ? Math.min(filterA?.offset ?? Infinity, filterB?.offset ?? Infinity) : void 0,
195
+ limit: mode === "OR" ? filterA?.limit === void 0 || filterB?.limit === void 0 ? void 0 : Math.max(filterA.limit, filterB.limit) : filterA?.limit || filterB?.limit ? Math.min(filterA?.limit ?? Infinity, filterB?.limit ?? Infinity) : void 0,
196
+ offset: mode === "OR" ? filterA?.offset === void 0 || filterB?.offset === void 0 ? void 0 : Math.min(filterA.offset, filterB.offset) : filterA?.offset || filterB?.offset ? Math.min(filterA?.offset ?? Infinity, filterB?.offset ?? Infinity) : void 0,
197
197
  with: filterA?.with || filterB?.with ? toMerged(filterA?.with ?? {}, filterB?.with ?? {}) : void 0
198
198
  };
199
199
  }
@@ -621,8 +621,8 @@ by: (explicitFilter) => {
621
621
  return transformToResponse(blockEverythingFilter);
622
622
  }
623
623
  const mergedFilters = allQueryFilters.length === 1 ? allQueryFilters[0] : allQueryFilters.reduce((a, b) => {
624
- return mergeFilters(a, b);
625
- }, {});
624
+ return mergeFilters(a, b, "OR");
625
+ });
626
626
  span?.setAttribute("abilities.status", "applied");
627
627
  return transformToResponse(mergedFilters);
628
628
  };