UNPKG

forest-cli

Version:

The Lumberjacks' toolbelt is the Forest CLI which makes easy to manage your back office application directly from the terminal.

39 lines 3.08 kB
const agent = require('superagent'); const Context = require('@forestadmin/context'); /** * @param {{ projectId: number | string }} config */ function InvitationManager(config) { const { assertPresent, authenticator, env } = Context.inject(); assertPresent({ authenticator, env }); /** * @param {Array<{ * email: string; * teamId: number | string; * roleId: number | string; * permissionLevel: string; * }>} invitations */ this.inviteUsers = async (invitations) => { const authToken = authenticator.getAuthToken(); const data = invitations.map(invitation => ({ type: 'invitations', attributes: { email: invitation.email, 'permission-level': invitation.permissionLevel, }, relationships: { team: { data: { type: 'teams', id: String(invitation.teamId) } }, role: { data: { type: 'roles', id: String(invitation.roleId) } }, }, })); return agent .post(`${env.FOREST_SERVER_URL}/api/invitations`) .set('Authorization', `Bearer ${authToken}`) .set('forest-project-id', config.projectId) .send({ data }) .then(response => response.body); }; } module.exports = InvitationManager; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW52aXRhdGlvbi1tYW5hZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NlcnZpY2VzL2ludml0YXRpb24tbWFuYWdlci5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7QUFDcEMsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLHNCQUFzQixDQUFDLENBQUM7QUFFaEQ7O0dBRUc7QUFDSCxTQUFTLGlCQUFpQixDQUFDLE1BQU07SUFDL0IsTUFBTSxFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFFLEdBQUcsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQy9ELGFBQWEsQ0FBQyxFQUFFLGFBQWEsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBRXRDOzs7Ozs7O09BT0c7SUFDSCxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssRUFBQyxXQUFXLEVBQUMsRUFBRTtRQUNyQyxNQUFNLFNBQVMsR0FBRyxhQUFhLENBQUMsWUFBWSxFQUFFLENBQUM7UUFFL0MsTUFBTSxJQUFJLEdBQUcsV0FBVyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDMUMsSUFBSSxFQUFFLGFBQWE7WUFDbkIsVUFBVSxFQUFFO2dCQUNWLEtBQUssRUFBRSxVQUFVLENBQUMsS0FBSztnQkFDdkIsa0JBQWtCLEVBQUUsVUFBVSxDQUFDLGVBQWU7YUFDL0M7WUFDRCxhQUFhLEVBQUU7Z0JBQ2IsSUFBSSxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFO2dCQUNoRSxJQUFJLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUU7YUFDakU7U0FDRixDQUFDLENBQUMsQ0FBQztRQUVKLE9BQU8sS0FBSzthQUNULElBQUksQ0FBQyxHQUFHLEdBQUcsQ0FBQyxpQkFBaUIsa0JBQWtCLENBQUM7YUFDaEQsR0FBRyxDQUFDLGVBQWUsRUFBRSxVQUFVLFNBQVMsRUFBRSxDQUFDO2FBQzNDLEdBQUcsQ0FBQyxtQkFBbUIsRUFBRSxNQUFNLENBQUMsU0FBUyxDQUFDO2FBQzFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDO2FBQ2QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3JDLENBQUMsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLENBQUMsT0FBTyxHQUFHLGlCQUFpQixDQUFDIn0=