permission.ts 595 B

123456789101112131415161718
  1. import { DatasetPermission } from '@/models/datasets'
  2. type DatasetConfig = {
  3. createdBy: string
  4. partialMemberList: string[]
  5. permission: DatasetPermission
  6. }
  7. export const hasEditPermissionForDataset = (userId: string, datasetConfig: DatasetConfig) => {
  8. const { createdBy, partialMemberList, permission } = datasetConfig
  9. if (permission === DatasetPermission.onlyMe)
  10. return userId === createdBy
  11. if (permission === DatasetPermission.allTeamMembers)
  12. return true
  13. if (permission === DatasetPermission.partialMembers)
  14. return partialMemberList.includes(userId)
  15. return false
  16. }