@mastra/clickhouse 1.23.0 → 1.24.0-alpha.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.
package/dist/index.js CHANGED
@@ -6993,6 +6993,10 @@ function compileScalarPredicate(predicate, registry, parameters, allowMetadata =
6993
6993
  const member = parameters.add(predicate.value, field.parameterType);
6994
6994
  return predicate.operator === "includes" ? `has(${field.sql}, ${member})` : `notEmpty(${field.sql}) AND NOT has(${field.sql}, ${member})`;
6995
6995
  }
6996
+ if (predicate.type === "text") {
6997
+ const found = `position(${`concat(' ', replaceAll(lowerUTF8(replaceRegexpAll(replaceAll(normalizeUTF8NFC(${field.sql}), 'İ', 'i'), '[^\\\\p{L}\\\\p{M}\\\\p{N}]+', ' ')), 'ς', 'σ'), ' ')`}, ${parameters.add(` ${predicate.value} `, "String")}) > 0`;
6998
+ return `ifNull(${predicate.operator === "matches" ? found : `NOT (${found})`}, 0)`;
6999
+ }
6996
7000
  if (predicate.type === "membership") {
6997
7001
  const values = predicate.values.map((value) => parameters.add(value, field.parameterType)).join(", ");
6998
7002
  return `ifNull(${`${field.sql} ${predicate.operator === "in" ? "IN" : "NOT IN"} (${values})`}, ${predicate.operator === "in" ? "0" : "1"})`;