From 96641a6fa0def85f89c4c6d812c4f01d9de4ab49 Mon Sep 17 00:00:00 2001 From: Alex Gleason Date: Wed, 16 Aug 2023 21:38:21 -0500 Subject: [PATCH] Move limit to GetFilterOpts --- src/client.ts | 3 +-- src/types.ts | 3 +++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/client.ts b/src/client.ts index ce3b9e14..6e298767 100644 --- a/src/client.ts +++ b/src/client.ts @@ -50,8 +50,7 @@ function getFilters(filters: Filter[], opts: GetFiltersOpts sig: event.sig, }); } - // HACK - if (filters.length === 1 && filters[0].limit && results.length >= filters[0].limit) { + if (typeof opts.limit === 'number' && results.length >= opts.limit) { unsub(); clearTimeout(tid); resolve(results as SignedEvent[]); diff --git a/src/types.ts b/src/types.ts index e3338180..096b847a 100644 --- a/src/types.ts +++ b/src/types.ts @@ -7,7 +7,10 @@ interface DittoFilter extends Filter { /** Additional options to apply to the whole subscription. */ interface GetFiltersOpts { + /** How long to wait (in milliseconds) until aborting the request. */ timeout?: number; + /** Event limit for the whole subscription. */ + limit?: number; } export type { DittoFilter, GetFiltersOpts };