adonis-workspaces

1.0.3 • Public • Published

Workspaces (Adonis 4.* Package)

A simple user and workspace management package for the adonis framework

Installation

adonis install adonis-workspaces

Checkout instructions.md for setup instructions

Usage

Add this in your controller.

const Workspaces = use('Workspaces')

Create a workspace.

const user = auth.user
await Workspaces.createWorkspace('My Creative Workspace', user)

Join the workspace. Creator of workspace will be joined automatically.

const user = auth.user
const workspace = await Workspace.find(id)
await Workspaces.joinWorkspace(workspace, user)

Invite others to the workspace.

const workspace = await Workspace.find(id)
const inviteFrom = await User.find(auth.user.id)
const inviteTo = await User.query().where('email', 'adam@example.com').first()

await Workspaces.inviteToWorkspace(workspace, inviteTo, inviteFrom)

Accept Invitation.

const invite = await Workspaces.getInviteFromAcceptToken(accept_token)
await Workspaces.acceptInvite(invite)

Deny Invitation.

const invite = await Workspaces.getInviteFromDenyToken(deny_token)
await Workspaces.denyInvite(invite)

Check in to a workspace. Check in to make workspace 'current workspace'.

await Workspaces.checkIntoWorkspace(workspace, user)

Check out from a workspace.

await Workspaces.checkOutFromWorkspace(workspace, user)

Leave a workspace.

await Workspaces.leaveWorkspace(workspace, user)

Delete a workspace. Only owner of workspace is allowed to do so.

await Workspaces.deleteWorkspace(workspace, user)

Other methods

await Workspaces.isOwnerOfWorkspace(workspace, user)
await Workspaces.getCurrentWorkspace(user)
await Workspaces.getWorkspaceOwner(workspace)
await Workspaces.getWorkspaces(user)
await Workspaces.hasPendingInvite(user, workspace)

Dependencies (1)

Dev Dependencies (0)

    Package Sidebar

    Install

    npm i adonis-workspaces

    Weekly Downloads

    2

    Version

    1.0.3

    License

    MIT

    Unpacked Size

    21.3 kB

    Total Files

    11

    Last publish

    Collaborators

    • kopahead007