Files
Feeld/web/src/api/operations/mutations.ts
2026-03-20 18:49:48 -05:00

297 lines
5.9 KiB
TypeScript
Executable File

import { gql } from '@apollo/client/core';
// Mutations - exact from Proxyman
export const PROFILE_LIKE_MUTATION = gql`
mutation ProfileLike($targetProfileId: String!) {
profileLike(input: { targetProfileId: $targetProfileId }) {
status
chat {
id
name
type
streamChatId
status
members {
id
status
analyticsId
imaginaryName
streamUserId
age
dateOfBirth
sexuality
isIncognito
gender
photos {
id
publicId
pictureIsSafe
pictureIsPrivate
pictureUrl
pictureUrls {
small
medium
large
__typename
}
pictureType
__typename
}
__typename
}
__typename
}
__typename
}
}
`;
export const DEVICE_LOCATION_UPDATE_MUTATION = gql`
mutation DeviceLocationUpdate($input: DeviceLocationInput!) {
deviceLocationUpdate(input: $input) {
id
location {
device {
latitude
longitude
geocode {
city
country
__typename
}
__typename
}
__typename
}
profiles {
id
location {
... on DeviceLocation {
device {
latitude
longitude
geocode {
city
country
__typename
}
__typename
}
__typename
}
... on TeleportLocation {
current: device {
city
country
__typename
}
teleport {
latitude
longitude
geocode {
city
country
__typename
}
__typename
}
__typename
}
__typename
}
__typename
}
__typename
}
}
`;
export const SEARCH_SETTINGS_UPDATE_MUTATION = gql`
mutation SearchSettingsUpdate(
$ageRange: [Int]
$distanceMax: Float
$desiringFor: [Desire!]
$lookingFor: [LookingFor!]
$recentlyOnline: Boolean
) {
profileUpdate(
input: {
ageRange: $ageRange
distanceMax: $distanceMax
desiringFor: $desiringFor
lookingFor: $lookingFor
recentlyOnline: $recentlyOnline
}
) {
id
ageRange
distanceMax
desiringFor
lookingFor
location {
... on DeviceLocation {
device {
latitude
longitude
geocode {
city
country
__typename
}
__typename
}
__typename
}
... on VirtualLocation {
core
__typename
}
... on TeleportLocation {
current: device {
city
country
__typename
}
teleport {
latitude
longitude
geocode {
city
country
__typename
}
__typename
}
__typename
}
__typename
}
recentlyOnline
__typename
}
}
`;
export const LAST_SEEN_UPDATE_MUTATION = gql`
mutation LastSeenProviderUpdateProfile($profileId: String!) {
lastSeenProviderUpdateProfile(profileId: $profileId) {
id
lastSeen
__typename
}
}
`;
export const ACCOUNT_ADD_NOTIFICATION_TOKEN_MUTATION = gql`
mutation AccountAddNotificationToken($token: String!) {
accountAddNotificationToken(input: { token: $token })
}
`;
export const PROFILE_PING_MUTATION = gql`
mutation ProfilePing($targetProfileId: String!, $message: String, $overrideInappropriate: Boolean) {
profilePing(
input: {targetProfileId: $targetProfileId, message: $message, overrideInappropriate: $overrideInappropriate}
) {
status
chat {
id
name
type
streamChatId
status
members {
id
status
analyticsId
imaginaryName
streamUserId
age
dateOfBirth
sexuality
isIncognito
gender
photos {
id
publicId
pictureIsSafe
pictureIsPrivate
pictureUrl
pictureUrls {
small
medium
large
__typename
}
pictureType
__typename
}
__typename
}
disconnectedMembers {
id
__typename
}
__typename
}
account {
id
availablePings
__typename
}
__typename
}
}
`;
export const PROFILE_UPDATE_MUTATION = gql`
mutation ProfileUpdate($input: ProfileUpdateInput!) {
profileUpdate(input: $input) {
id
age
ageRange
allowPWM
bio
hiddenBio
hasHiddenBio
completionStatus
connectionGoals
dateOfBirth
desires
distanceMax
gender
imaginaryName
interests
isIncognito
lookingFor
recentlyOnline
sexuality
status
streamToken
isParticipantToEventChat
photos {
id
publicId
pictureIsSafe
pictureIsPrivate
pictureUrl
pictureUrls {
small
medium
large
__typename
}
__typename
}
__typename
}
}
`;
export const PROFILE_DISLIKE_MUTATION = gql`
mutation ProfileDislike($targetProfileId: String!) {
profileDislike(input: { targetProfileId: $targetProfileId })
}
`;