♻️ (builder) Change to features-centric folder structure
This commit is contained in:
committed by
Baptiste Arnaud
parent
3686465a85
commit
643571fe7d
@@ -0,0 +1,28 @@
|
||||
import { Workspace } from 'db'
|
||||
import { sendRequest } from 'utils'
|
||||
|
||||
export const createWorkspaceQuery = async (
|
||||
body: Omit<
|
||||
Workspace,
|
||||
| 'id'
|
||||
| 'icon'
|
||||
| 'createdAt'
|
||||
| 'stripeId'
|
||||
| 'additionalChatsIndex'
|
||||
| 'additionalStorageIndex'
|
||||
| 'chatsLimitFirstEmailSentAt'
|
||||
| 'chatsLimitSecondEmailSentAt'
|
||||
| 'storageLimitFirstEmailSentAt'
|
||||
| 'storageLimitSecondEmailSentAt'
|
||||
| 'customChatsLimit'
|
||||
| 'customStorageLimit'
|
||||
| 'customSeatsLimit'
|
||||
>
|
||||
) =>
|
||||
sendRequest<{
|
||||
workspace: Workspace
|
||||
}>({
|
||||
url: `/api/workspaces`,
|
||||
method: 'POST',
|
||||
body,
|
||||
})
|
||||
@@ -0,0 +1,10 @@
|
||||
import { sendRequest } from 'utils'
|
||||
|
||||
export const deleteInvitationQuery = (invitation: {
|
||||
workspaceId: string
|
||||
id: string
|
||||
}) =>
|
||||
sendRequest({
|
||||
url: `/api/workspaces/${invitation.workspaceId}/invitations/${invitation.id}`,
|
||||
method: 'DELETE',
|
||||
})
|
||||
@@ -0,0 +1,7 @@
|
||||
import { sendRequest } from 'utils'
|
||||
|
||||
export const deleteMemberQuery = (workspaceId: string, userId: string) =>
|
||||
sendRequest({
|
||||
method: 'DELETE',
|
||||
url: `/api/workspaces/${workspaceId}/members/${userId}`,
|
||||
})
|
||||
@@ -0,0 +1,10 @@
|
||||
import { Workspace } from 'db'
|
||||
import { sendRequest } from 'utils'
|
||||
|
||||
export const deleteWorkspaceQuery = (workspaceId: string) =>
|
||||
sendRequest<{
|
||||
workspace: Workspace
|
||||
}>({
|
||||
url: `/api/workspaces/${workspaceId}`,
|
||||
method: 'DELETE',
|
||||
})
|
||||
@@ -0,0 +1,12 @@
|
||||
import { WorkspaceInvitation } from 'db'
|
||||
import { sendRequest } from 'utils'
|
||||
import { Member } from '../types'
|
||||
|
||||
export const sendInvitationQuery = (
|
||||
invitation: Omit<WorkspaceInvitation, 'id' | 'createdAt'>
|
||||
) =>
|
||||
sendRequest<{ invitation?: WorkspaceInvitation; member?: Member }>({
|
||||
url: `/api/workspaces/${invitation.workspaceId}/invitations`,
|
||||
method: 'POST',
|
||||
body: invitation,
|
||||
})
|
||||
@@ -0,0 +1,11 @@
|
||||
import { WorkspaceInvitation } from 'db'
|
||||
import { sendRequest } from 'utils'
|
||||
|
||||
export const updateInvitationQuery = (
|
||||
invitation: Partial<WorkspaceInvitation>
|
||||
) =>
|
||||
sendRequest({
|
||||
url: `/api/workspaces/${invitation.workspaceId}/invitations/${invitation.id}`,
|
||||
method: 'PATCH',
|
||||
body: invitation,
|
||||
})
|
||||
@@ -0,0 +1,12 @@
|
||||
import { MemberInWorkspace } from 'db'
|
||||
import { sendRequest } from 'utils'
|
||||
|
||||
export const updateMemberQuery = (
|
||||
workspaceId: string,
|
||||
member: Partial<MemberInWorkspace>
|
||||
) =>
|
||||
sendRequest({
|
||||
method: 'PATCH',
|
||||
url: `/api/workspaces/${workspaceId}/members/${member.userId}`,
|
||||
body: member,
|
||||
})
|
||||
@@ -0,0 +1,11 @@
|
||||
import { Workspace } from 'db'
|
||||
import { sendRequest } from 'utils'
|
||||
|
||||
export const updateWorkspaceQuery = async (updates: Partial<Workspace>) =>
|
||||
sendRequest<{
|
||||
workspace: Workspace
|
||||
}>({
|
||||
url: `/api/workspaces/${updates.id}`,
|
||||
method: 'PATCH',
|
||||
body: updates,
|
||||
})
|
||||
Reference in New Issue
Block a user