@playlive/tiltify-search
    Preparing search index...

    Function buildFilterString

    • Convert a FilterableFields record into a Meilisearch filter literal (field = "value" AND other = true). Drops undefined values, drops empty strings (which would otherwise produce a malformed field = clause), quotes string values, and escapes embedded " / `` inside string values per the Meilisearch filter-syntax spec.

      Parameters

      Returns string

      The composed Meilisearch filter string. Empty when no fields survive.

      import { buildFilterString } from "@playlive/tiltify-search/filters";
      buildFilterString({ public: true, type: "campaign" });
      // 'public = true AND type = "campaign"'

      // Embedded quotes and backslashes are escaped so the filter parses cleanly
      // instead of returning a 400 from the search index:
      buildFilterString({ username: 'a"b\\c' });
      // 'username = "a\\"b\\\\c"'