aboutMeQuery.js 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. import { gql } from "../../helpers/getGQL";
  2. import { actionPromise } from "../types/promiseTypes";
  3. import { gqlAnon } from "../../helpers/getGQLAnon";
  4. export const actionAboutMe = (_id) =>
  5. actionPromise(
  6. 'aboutMe',
  7. gql(
  8. `query AboutMe($userId:String){
  9. UserFindOne(query:$userId)
  10. {
  11. _id createdAt login nick avatar{_id url}
  12. followers{_id login nick avatar{_id url}}
  13. following{_id login nick avatar{_id url}}
  14. likesCount
  15. }
  16. }`,
  17. {
  18. userId: JSON.stringify([{ _id }]),
  19. },
  20. ),
  21. )
  22. export const actionUserUpsert = (user, _id) =>
  23. actionPromise(
  24. 'userUpsert',
  25. gql(
  26. `mutation UserUpsert($user:UserInput){
  27. UserUpsert(user:$user){
  28. _id login nick avatar{_id}
  29. }
  30. }`,
  31. {
  32. user: {
  33. _id,
  34. login: user?.login,
  35. nick : user?.nick
  36. },
  37. },
  38. ),
  39. )
  40. export const actionAvatar = (imageId, _id) =>
  41. actionPromise(
  42. 'setAvatar',
  43. gql(
  44. `mutation setAvatar($imageId:ID, $userId:String){
  45. UserUpsert(user:{_id: $userId, avatar: {_id: $imageId}}){
  46. _id, avatar{
  47. _id
  48. }
  49. }
  50. }`,
  51. { imageId, userId: _id },
  52. ),
  53. )
  54. export const actionGetAvatar= (_id) =>
  55. actionPromise(
  56. 'getAvatar',
  57. gql(
  58. `query getAvatar($userId:String){
  59. UserFindOne(query:$userId)
  60. {
  61. avatar{_id url}
  62. }
  63. }`,
  64. {
  65. userId: JSON.stringify([{ _id }]),
  66. },
  67. ),
  68. )
  69. export const actionChangePassword = (login, password, newPassword) =>
  70. actionPromise(
  71. 'newPassword',
  72. gqlAnon(
  73. `mutation changePassword($login: String!, $password: String!, $newPassword: String!) {
  74. changePassword (login: $login, password: $password, newPassword: $newPassword) {
  75. _id login
  76. }
  77. }`,
  78. { login, password, newPassword },
  79. ),
  80. )