import { factories } from '@strapi/strapi';

export default {
  async update(ctx: any) {
    const userId = ctx.state.user.id;
    const { phone, bio, username, email, avatar } = ctx.request.body;

    // Use Strapi document service to update the user with custom fields
    const updatedUser = await strapi.documents('plugin::users-permissions.user').update({
      documentId: ctx.params.id || userId,
      data: {
        phone,
        bio,
        username,
        email,
        avatar
      }
    });

    return updatedUser;
  }
};