]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - shared/extra-utils/users/users.ts
Merge remote-tracking branch 'weblate/develop' into develop
[github/Chocobozzz/PeerTube.git] / shared / extra-utils / users / users.ts
index 30ed1bf4a325eb1ab96434d36d43a46b1eeda9b9..2fe0e55c219e32e62e0dde89f84ab1f0f1a5f843 100644 (file)
@@ -1,14 +1,15 @@
 import * as request from 'supertest'
 import { makePostBodyRequest, makePutBodyRequest, updateAvatarRequest } from '../requests/requests'
-import { NSFWPolicyType } from '../../models/videos/nsfw-policy.type'
 import { UserAdminFlag } from '../../models/users/user-flag.model'
 import { UserRegister } from '../../models/users/user-register.model'
 import { UserRole } from '../../models/users/user-role'
 import { ServerInfo } from '../server/servers'
 import { userLogin } from './login'
 import { UserUpdateMe } from '../../models/users'
+import { omit } from 'lodash'
 
-type CreateUserArgs = { url: string,
+type CreateUserArgs = {
+  url: string,
   accessToken: string,
   username: string,
   password: string,
@@ -214,33 +215,10 @@ function unblockUser (url: string, userId: number | string, accessToken: string,
     .expect(expectedStatus)
 }
 
-function updateMyUser (options: {
-  url: string
-  accessToken: string
-  currentPassword?: string
-  newPassword?: string
-  nsfwPolicy?: NSFWPolicyType
-  email?: string
-  autoPlayVideo?: boolean
-  displayName?: string
-  description?: string
-  videosHistoryEnabled?: boolean
-  theme?: string
-}) {
+function updateMyUser (options: { url: string, accessToken: string } & UserUpdateMe) {
   const path = '/api/v1/users/me'
 
-  const toSend: UserUpdateMe = {}
-  if (options.currentPassword !== undefined && options.currentPassword !== null) toSend.currentPassword = options.currentPassword
-  if (options.newPassword !== undefined && options.newPassword !== null) toSend.password = options.newPassword
-  if (options.nsfwPolicy !== undefined && options.nsfwPolicy !== null) toSend.nsfwPolicy = options.nsfwPolicy
-  if (options.autoPlayVideo !== undefined && options.autoPlayVideo !== null) toSend.autoPlayVideo = options.autoPlayVideo
-  if (options.email !== undefined && options.email !== null) toSend.email = options.email
-  if (options.description !== undefined && options.description !== null) toSend.description = options.description
-  if (options.displayName !== undefined && options.displayName !== null) toSend.displayName = options.displayName
-  if (options.theme !== undefined && options.theme !== null) toSend.theme = options.theme
-  if (options.videosHistoryEnabled !== undefined && options.videosHistoryEnabled !== null) {
-    toSend.videosHistoryEnabled = options.videosHistoryEnabled
-  }
+  const toSend: UserUpdateMe = omit(options, 'url', 'accessToken')
 
   return makePutBodyRequest({
     url: options.url,