mirror of
https://github.com/eigent-ai/eigent.git
synced 2026-04-30 12:40:10 +00:00
65 lines
1.9 KiB
JavaScript
65 lines
1.9 KiB
JavaScript
// src/interface/crud/current-user.ts
|
|
import { createCrud } from "../../crud";
|
|
import { yupObject } from "../../schema-fields";
|
|
import { teamsCrudClientReadSchema } from "./teams";
|
|
import { usersCrudServerDeleteSchema, usersCrudServerReadSchema, usersCrudServerUpdateSchema } from "./users";
|
|
var clientUpdateSchema = usersCrudServerUpdateSchema.pick([
|
|
"display_name",
|
|
"profile_image_url",
|
|
"client_metadata",
|
|
"selected_team_id",
|
|
"totp_secret_base64",
|
|
"otp_auth_enabled",
|
|
"passkey_auth_enabled"
|
|
]).defined();
|
|
var serverUpdateSchema = usersCrudServerUpdateSchema;
|
|
var clientReadSchema = usersCrudServerReadSchema.pick([
|
|
"id",
|
|
"primary_email",
|
|
"primary_email_verified",
|
|
"display_name",
|
|
"client_metadata",
|
|
"client_read_only_metadata",
|
|
"profile_image_url",
|
|
"signed_up_at_millis",
|
|
"has_password",
|
|
"auth_with_email",
|
|
"oauth_providers",
|
|
"selected_team_id",
|
|
"requires_totp_mfa",
|
|
"otp_auth_enabled",
|
|
"passkey_auth_enabled",
|
|
"is_anonymous"
|
|
]).concat(yupObject({
|
|
selected_team: teamsCrudClientReadSchema.nullable().defined()
|
|
})).defined();
|
|
var serverReadSchema = usersCrudServerReadSchema.defined();
|
|
var clientDeleteSchema = usersCrudServerDeleteSchema;
|
|
var currentUserCrud = createCrud({
|
|
clientReadSchema,
|
|
serverReadSchema,
|
|
clientUpdateSchema,
|
|
serverUpdateSchema,
|
|
clientDeleteSchema,
|
|
docs: {
|
|
clientRead: {
|
|
summary: "Get current user",
|
|
description: "Gets the currently authenticated user.",
|
|
tags: ["Users"]
|
|
},
|
|
clientUpdate: {
|
|
summary: "Update current user",
|
|
description: "Updates the currently authenticated user. Only the values provided will be updated.",
|
|
tags: ["Users"]
|
|
},
|
|
clientDelete: {
|
|
summary: "Delete current user",
|
|
description: "Deletes the currently authenticated user. Use this with caution.",
|
|
tags: ["Users"]
|
|
}
|
|
}
|
|
});
|
|
export {
|
|
currentUserCrud
|
|
};
|
|
//# sourceMappingURL=current-user.js.map
|