@absolutejs/absolute 0.19.0-beta.630 → 0.19.0-beta.631

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/dist/ai/index.js CHANGED
@@ -28796,11 +28796,19 @@ var toPostgresJsonPath = (key) => {
28796
28796
  return segments;
28797
28797
  };
28798
28798
  var toPostgresFilterBinding = (value) => {
28799
- if (typeof value === "string" || typeof value === "number" || typeof value === "boolean") {
28799
+ if (typeof value === "string" || typeof value === "number" || typeof value === "boolean" || value === null) {
28800
28800
  return value;
28801
28801
  }
28802
28802
  return;
28803
28803
  };
28804
+ var buildPostgresJsonbScalarEquality = (input) => {
28805
+ const comparison = input.comparison ?? "=";
28806
+ return comparison === "=" ? `jsonb_typeof(${input.valueSql}) = 'null'` : `coalesce(jsonb_typeof(${input.valueSql}), 'missing') <> 'null'`;
28807
+ };
28808
+ var buildPostgresMetadataScalarEquality = (input) => input.value === null ? buildPostgresJsonbScalarEquality({
28809
+ comparison: input.comparison,
28810
+ valueSql: input.valueSql
28811
+ }) : `${input.actualSql} ${input.comparison ?? "="} ${input.bind(String(input.value))}`;
28804
28812
  var buildPostgresFilterPlan = (filter, startIndex = 0) => {
28805
28813
  if (!filter) {
28806
28814
  return { clause: "", params: [] };
@@ -28855,7 +28863,12 @@ var buildPostgresFilterPlan = (filter, startIndex = 0) => {
28855
28863
  if (binding === undefined) {
28856
28864
  return null;
28857
28865
  }
28858
- clauses.push(`${actualSql} = ${bind(String(binding))}`);
28866
+ clauses.push(isScalarField ? `${actualSql} = ${bind(String(binding))}` : buildPostgresMetadataScalarEquality({
28867
+ actualSql,
28868
+ bind,
28869
+ value: binding,
28870
+ valueSql: metadataValueSql
28871
+ }));
28859
28872
  continue;
28860
28873
  }
28861
28874
  const operatorClauses = Object.entries(value).map(([operator, expected]) => {
@@ -28870,11 +28883,22 @@ var buildPostgresFilterPlan = (filter, startIndex = 0) => {
28870
28883
  if (bindings.length !== expected.length) {
28871
28884
  return null;
28872
28885
  }
28873
- return `${actualSql} IN (${bindings.map((entry2) => bind(String(entry2))).join(", ")})`;
28886
+ return isScalarField ? `${actualSql} IN (${bindings.map((entry2) => bind(String(entry2))).join(", ")})` : `(${bindings.map((entry2) => buildPostgresMetadataScalarEquality({
28887
+ actualSql,
28888
+ bind,
28889
+ value: entry2,
28890
+ valueSql: metadataValueSql
28891
+ })).join(" OR ")})`;
28874
28892
  }
28875
28893
  case "$ne": {
28876
28894
  const binding = toPostgresFilterBinding(expected);
28877
- return binding === undefined ? null : `${actualSql} <> ${bind(String(binding))}`;
28895
+ return binding === undefined ? null : isScalarField ? `${actualSql} <> ${bind(String(binding))}` : buildPostgresMetadataScalarEquality({
28896
+ actualSql,
28897
+ bind,
28898
+ comparison: "<>",
28899
+ value: binding,
28900
+ valueSql: metadataValueSql
28901
+ });
28878
28902
  }
28879
28903
  case "$gt":
28880
28904
  case "$gte":
@@ -32414,5 +32438,5 @@ export {
32414
32438
  addRAGEvaluationSuiteCase
32415
32439
  };
32416
32440
 
32417
- //# debugId=3B5439AB31EF0CD864756E2164756E21
32441
+ //# debugId=C144272A4AF7838F64756E2164756E21
32418
32442
  //# sourceMappingURL=index.js.map