Index: pages/+Layout.telefunc.ts
===================================================================
--- pages/+Layout.telefunc.ts	(revision e7f1bfa7ce76200b61fe01419065e5b4c1bc1f96)
+++ pages/+Layout.telefunc.ts	(revision ad311c33bc79a550eeaa21f0291e015ee0021a78)
@@ -10,9 +10,9 @@
 }
 
-export async function onGetAllComponents({ componentType, limit, q }
-                                            : { componentType?: string; limit?: number; q?: string }) {
+export async function onGetAllComponents({ componentType, limit, sort, q }
+                                            : { componentType?: string; limit?: number; sort?: string, q?: string }) {
     const c = ctx();
 
-    const components = await drizzleQueries.getAllComponents(c.db, limit, componentType, q);
+    const components = await drizzleQueries.getAllComponents(c.db, limit, componentType, sort, q);
 
     return components;
Index: pages/forge/forge.telefunc.ts
===================================================================
--- pages/forge/forge.telefunc.ts	(revision e7f1bfa7ce76200b61fe01419065e5b4c1bc1f96)
+++ pages/forge/forge.telefunc.ts	(revision ad311c33bc79a550eeaa21f0291e015ee0021a78)
@@ -62,10 +62,11 @@
 }
 
-export async function onGetCompatibleComponents({ buildId, componentType }: { buildId: number, componentType: string }) {
+export async function onGetCompatibleComponents({ buildId, componentType, limit, sort }
+                                                : { db: Database, buildId: number, componentType: string, limit?: number, sort?: string }) {
     const { c, userId } = requireUser()
 
     if(!Number.isInteger(buildId) || buildId <= 0) throw Abort();
 
-    const compatibleComponents = await drizzleQueries.getCompatibleComponents(c.db, buildId, componentType);
+    const compatibleComponents = await drizzleQueries.getCompatibleComponents(c.db, buildId, componentType, limit, sort);
 
     if(!compatibleComponents) throw Abort();
