♻️ (builder) Change to features-centric folder structure

This commit is contained in:
Baptiste Arnaud
2022-11-15 09:35:48 +01:00
committed by Baptiste Arnaud
parent 3686465a85
commit 643571fe7d
683 changed files with 3907 additions and 3643 deletions

View File

@@ -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,
})

View File

@@ -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',
})

View File

@@ -0,0 +1,7 @@
import { sendRequest } from 'utils'
export const deleteMemberQuery = (workspaceId: string, userId: string) =>
sendRequest({
method: 'DELETE',
url: `/api/workspaces/${workspaceId}/members/${userId}`,
})

View File

@@ -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',
})

View File

@@ -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,
})

View File

@@ -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,
})

View File

@@ -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,
})

View File

@@ -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,
})