diff --git a/web/components/contracts-list.tsx b/web/components/contracts-list.tsx
index 74c94ad5..b80ade7c 100644
--- a/web/components/contracts-list.tsx
+++ b/web/components/contracts-list.tsx
@@ -110,6 +110,8 @@ function ContractsGrid(props: { contracts: Contract[] }) {
)
}
+const MAX_CONTRACTS_DISPLAYED = 99
+
type Sort = 'createdTime' | 'pool' | 'resolved' | 'all'
export function SearchableGrid(props: {
contracts: Contract[]
@@ -143,6 +145,9 @@ export function SearchableGrid(props: {
)
}
+ if (matches.length > MAX_CONTRACTS_DISPLAYED)
+ matches = _.slice(matches, 0, MAX_CONTRACTS_DISPLAYED)
+
return (
{/* Show a search input next to a sort dropdown */}
diff --git a/web/lib/firebase/contracts.ts b/web/lib/firebase/contracts.ts
index f97e111c..b8ea93e3 100644
--- a/web/lib/firebase/contracts.ts
+++ b/web/lib/firebase/contracts.ts
@@ -107,7 +107,7 @@ export async function listContracts(creatorId: string): Promise {
}
export async function listAllContracts(): Promise {
- const q = query(contractCollection, orderBy('createdTime', 'desc'), limit(99))
+ const q = query(contractCollection, orderBy('createdTime', 'desc'))
const snapshot = await getDocs(q)
return snapshot.docs.map((doc) => doc.data() as Contract)
}
@@ -115,7 +115,7 @@ export async function listAllContracts(): Promise {
export function listenForContracts(
setContracts: (contracts: Contract[]) => void
) {
- const q = query(contractCollection, orderBy('createdTime', 'desc'), limit(99))
+ const q = query(contractCollection, orderBy('createdTime', 'desc'))
return onSnapshot(q, (snap) => {
setContracts(snap.docs.map((doc) => doc.data() as Contract))
})