UNPKG

@grouparoo/core

Version:
49 lines (48 loc) 1.73 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.AccountEdit = exports.AccountView = void 0; const authenticatedAction_1 = require("../classes/actions/authenticatedAction"); class AccountView extends authenticatedAction_1.AuthenticatedAction { constructor() { super(...arguments); this.name = "account:view"; this.description = "view your account details"; this.permission = { topic: "*", mode: "read" }; this.outputExample = {}; } async runWithinTransaction({ session: { teamMember }, }) { if (!teamMember) throw new Error("team member not found"); return { teamMember: await teamMember.apiData(), team: await teamMember.team.apiData(), }; } } exports.AccountView = AccountView; class AccountEdit extends authenticatedAction_1.AuthenticatedAction { constructor() { super(...arguments); this.name = "account:edit"; this.description = "edit your account details"; this.permission = { topic: "*", mode: "write" }; this.outputExample = {}; this.inputs = { firstName: { required: false }, lastName: { required: false }, password: { required: false }, email: { required: false }, }; } async runWithinTransaction({ params, session: { teamMember }, }) { await teamMember.update(params); if (params.password) { await teamMember.updatePassword(params.password); } return { teamMember: await teamMember.apiData(), team: await teamMember.team.apiData(), }; } } exports.AccountEdit = AccountEdit;