Files
create-better-t-stack/packages/backend/convex/testimonials.ts

41 lines
948 B
TypeScript

import { v } from "convex/values";
import { query } from "./_generated/server";
export const getVideos = query({
args: {},
returns: v.array(
v.object({
_id: v.id("videos"),
_creationTime: v.number(),
embedId: v.string(),
title: v.string(),
}),
),
handler: async (ctx) => {
return await ctx.db.query("videos").collect();
},
});
export const getTweets = query({
args: {},
returns: v.array(
v.object({
_id: v.id("tweets"),
_creationTime: v.number(),
tweetId: v.string(),
order: v.optional(v.number()),
}),
),
handler: async (ctx) => {
const rows = await ctx.db.query("tweets").collect();
return rows.sort((a, b) => {
const aHas = typeof a.order === "number";
const bHas = typeof b.order === "number";
if (aHas && bHas) return (a.order as number) - (b.order as number);
if (aHas && !bHas) return -1;
if (!aHas && bHas) return 1;
return b._creationTime - a._creationTime;
});
},
});