Llabe
CCConvex Community
•Created by Llabe on 2/6/2025 in #support-community
Convex-helpers ERROR
Type error: Type 'Iterable<FromType>' can only be iterated through when using the '--downlevelIteration' flag or with a '--target' of 'es2015' or higher.
14 | let index = 0;
15 | list = await list;
16 | for (const item of list) {| ^ 17 | promises.push(asyncTransform(item, index)); 18 | index += 1; 19 | } I get that error when doing: npm run build. How can I fix it? Thanks!
33 replies
CCConvex Community
•Created by Llabe on 1/24/2025 in #support-community
gemini
import { GoogleGenerativeAI } from '@google/generative-ai';
import { action } from './_generated/server';
export const generateResponse = action({
args: {},
handler: async (ctx, args) => {
const genAI = new GoogleGenerativeAI(process.env.GEMINI_API_KEY as string);
const model = genAI.getGenerativeModel({ model: 'gemini-1.5-flash-8b' });
const chat = model.startChat({
history: [
{
role: 'user',
parts: [{ text: 'My name is Pedro' }],
},
],
});
const result = await chat.sendMessage(
'You have access to the history of messages from this chat session right?'
);
console.log(result.response.text());
return result.response.text();
},
});
Is omething like this correct? Or then will I have issues when deploying?
4 replies
CCConvex Community
•Created by Llabe on 1/23/2025 in #support-community
convex auth user creation
For what I saw in some videos, the user should get created automatically when using convex auth. But in my case its not happening, does anyone know why it could be?
88 replies
CCConvex Community
•Created by Llabe on 11/15/2024 in #support-community
Stable pagination
I am building an application and I need to add pagination to my tables but at the same time I don't want to have loading blinks when I apply filter. I followed this guide: "Help, my app is overreacting!". First when I added the stable it worked fine, but when I implemented the pagination it broke. I don't know what could be causing the problem. Has anyone have a similar problem?
3 replies
CCConvex Community
•Created by Llabe on 10/14/2024 in #support-community
What is the best approach for handling members?
In my application ill have teams and each team will have multiple projects, chats, etc... ANd I want to handle members. For the teams I have a team table and a teamMembers table (where I track members and roles). What about the projects and chats inside the team (ill have public ones -> Everyone is member, and then private ones -> the admin assigns who is a member there), so I don't know if I should store this chat/project members as an array of ids inside the project/chat table or also have separate tables for this. Thanks for your time
6 replies
CCConvex Community
•Created by Llabe on 10/14/2024 in #support-community
Schema with array of objects
Is it efficient to have an array of objects? Let's say that I have a task with the field sub tasks, and I want those to be objects with x,y,z fields and each task can handle multiple sub taks.
5 replies
CCConvex Community
•Created by Llabe on 9/23/2024 in #support-community
What is the recommended approach to structure my app?
I am using Nextjs + Convex and I am wondering how is the best way to structure the app.
When I am not using convex and I use a regular db I generally do this:
-The front end layer (either client or server component)
-Acitons (my server actions)
-Data-access (Where I access the db)
And I do this flow: The front if its a query call the data-access from the server (server component) And if it is a mutation/action that I need to perform, I usually use react tanstack query to perform those server actions.
What is the recommended approach for convex?
Thanks for your time
2 replies
CCConvex Community
•Created by Llabe on 4/6/2024 in #support-community
Deploying Next 14 + Convex in Vercel
When I first try deploying my application, it throw an error because it was missing the CONVEX_DEPLOY_KEY. So I added it and reployed, but now it's saying:
Detected a non-production build environment and "CONVEX_DEPLOY_KEY" for a production Convex deployment.
If someone had this issue, I would love to hear how you fix it 😄
15 replies
CCConvex Community
•Created by Llabe on 3/26/2024 in #support-community
Pagination + Optimistic updates
I have two questions, one exclusively related to pagination and another with combines pagination with optimistic updates.
Basically I am building a chat in my applicatin so team members can talk to each other.
1) In the code below you can see my convex function to return members form a project which should go to the chat members list. But I have to populate the user data field so thats why I have the promise all, when I try to implement it with pagination using the documentation in the convex web I get an error as I can't iterate a PaginatedREsult (I belive its call like that), and if I access the data then the paginated query throws an error:
export const getMembers = query({
args: {
projectId: v.id('projects'),
},
handler: async (ctx, args) => {
const access = await accessToProject(
ctx,
args.projectId,
'juanillaberia2002@gmail.com'
);
if (!access) return [];
const projectMembers = await ctx.db
.query('project_members')
.withIndex('by_projectId', q => q.eq('projectId', args.projectId))
.collect();
// const projectMembers = await ctx.db
// .query('project_members')
// .withIndex('by_projectId', q => q.eq('projectId', args.projectId))
// .paginate(args.paginationOpts);
return await Promise.all(
projectMembers.map(async member => {
const userData = await ctx.db.get(member.userId);
return {
...userData,
role: member.role,
};
})
);
},
});
2) And second, is it possible to implement optimistic updates and also paginate messages? I successfully implemented the optimistic updates, but I am not quite sure how to add the pagination (because of the question 1 and also if they go well together or their are meant to be separated features) as messages contain the userId who sent it and I need to query for the image and the name.
Thank you so much for your time! 🙂
16 replies
CCConvex Community
•Created by Llabe on 3/21/2024 in #support-community
Global state?
Hey everyone! I am building a team base application using Nextjs 14 and Convex. The main page of the team is a dashboard where you can access different features.
Comming from React Client components and the context API, I would probably fetch the data from my database using something like tanstack react query and then access the data needed on each dashboard window (to avoid refetching data).
I don't have that much experience with server components, and I was wondering if there is any way to replicate something similar to what I mention. Or if its okey to just have multiple convex queries around. Sorry if its a silly question 🙂
Have a good one!
3 replies
CCConvex Community
•Created by Llabe on 3/18/2024 in #support-community
How to implement next-auth with convex?
Hi!
I am building a next.js application. The basic idea is to create teams/projects to work together in X,Y,Z stuff. I am having some problems with authentication, I set up next-auth with some providers and the sessions work fine. But when it comes to Convex, I don't know how to protect data (only allow memebers of a team access the data of that team). And when an user authenticates if its new I would like to add it to the DB else just access that user data from the DB.
Thanks for your time!
16 replies