From 6cd9d816c7f443e6defdf2f9fade46456b321bf8 Mon Sep 17 00:00:00 2001 From: YoEight Date: Wed, 26 Mar 2025 10:49:50 -0400 Subject: [PATCH] feat: add filter field in read all options. --- crates/bridge/src/client.rs | 2 +- src/index.ts | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/crates/bridge/src/client.rs b/crates/bridge/src/client.rs index 64e1dfa..f24a775 100644 --- a/crates/bridge/src/client.rs +++ b/crates/bridge/src/client.rs @@ -259,7 +259,7 @@ pub fn read_all(client: Client, mut cx: FunctionContext) -> JsResult } if let Some(regex) = filter_obj.get_opt::(&mut cx, "regex")? { - subscription_filter = subscription_filter.regex(®ex.value(&mut cx)); + subscription_filter = subscription_filter.regex(regex.value(&mut cx)); } options = options.filter(subscription_filter); diff --git a/src/index.ts b/src/index.ts index cabc9f1..9619cff 100644 --- a/src/index.ts +++ b/src/index.ts @@ -51,6 +51,7 @@ export type RustReadAllOptions = { requiresLeader: boolean; resolvesLink: boolean; credentials?: { username: string; password: string }; + filter?: Filter; }; export const STREAM_NAME = "streamName"; @@ -64,6 +65,8 @@ export type RustReadAllFilterBase = { filterOn: FilterOn; }; +export type Filter = RegexFilter | PrefixesFilter; + export interface RegexFilter extends RustReadAllFilterBase { regex: string; }