Compare commits

...

42 Commits

Author SHA1 Message Date
b50ea5b573 Merge pull request 'Sync Apollo version w/ mobile to prevent ts errors' (#150) from loewy/sync-apollo-version-w-mobile into master
Reviewed-on: #150
Reviewed-by: Ivan Malison <ivanmalison@gmail.com>
2024-12-19 11:28:04 -07:00
de17659dbb sync apollo version w/ mobile to prevent ts errors
All checks were successful
Tests / Tests (pull_request) Successful in 9s
2024-12-19 10:26:09 -08:00
33886b4e9e Update getFeed operation 2024-12-17 18:07:00 -07:00
9d0ba908dc Generalize getFeed 2024-12-17 17:35:38 -07:00
7b4880a990 Add all videos 2024-12-17 14:12:25 -07:00
8ed177b0f3 Merge pull request 'Add EditShot operation' (#149) from loewy/add-edit-shot-operation into master
Reviewed-on: #149
2024-12-09 14:33:47 -07:00
976cc66ccb add editshot operation
All checks were successful
Tests / Tests (pull_request) Successful in 17s
2024-12-09 14:00:36 -07:00
af461fff00 Merge pull request 'Add Difficulty ShotOrdering' (#148) from mk/shots-ordering-by-difficulty into master
Reviewed-on: #148
2024-12-07 15:27:08 -07:00
7a39b4ca60 Add Difficulty ShotOrdering
All checks were successful
Tests / Tests (pull_request) Successful in 15s
2024-12-07 14:25:08 -08:00
9befbe3833 Merge pull request 'Add private field to video endpoints' (#147) from loewy/add-private-to-operations into master
Reviewed-on: #147
2024-12-05 16:31:25 -07:00
68a4c064f3 add private field to video endpoints
All checks were successful
Tests / Tests (pull_request) Successful in 16s
2024-12-05 15:30:16 -08:00
54fd741670 Merge pull request 'Request additional medals in operations' (#146) from loewy/request-new-medals-in-operation into master
Reviewed-on: #146
2024-12-05 14:57:41 -07:00
2f9e630de4 new assets for medals
All checks were successful
Tests / Tests (pull_request) Successful in 17s
2024-12-05 13:47:47 -08:00
5efd8ef8e5 Merge pull request 'Remove distance 60 from operation' (#145) from loewy/remove-distance-60-from-request into master
Reviewed-on: #145
2024-12-04 15:00:27 -07:00
6ad3d449d8 remove distance 60 from operation
All checks were successful
Tests / Tests (pull_request) Successful in 9s
2024-12-04 13:59:51 -08:00
8fe20d1c41 Merge pull request 'Add editShotData types' (#144) from mk/edit-shot-data into master
Reviewed-on: #144
2024-12-02 20:01:53 -07:00
e151f39582 Add edit shot data stuff
All checks were successful
Tests / Tests (pull_request) Successful in 5s
2024-12-02 18:57:36 -08:00
f136ddb9ca Merge pull request 'Replaces interval with datetime range' (#143) from mk/fix-medal-time-input into master
Reviewed-on: #143
2024-11-26 14:21:16 -07:00
5d05614e07 Replaces interval with datetime range
All checks were successful
Tests / Tests (pull_request) Successful in 17s
2024-11-26 13:19:33 -08:00
c4c3ccde00 id in homography 2024-11-25 14:53:41 -08:00
e137ce8ad1 Request id in Homography info 2024-11-21 17:59:29 -07:00
bd5bebb747 Merge pull request 'Update medal collection' (#142) from loewy/update-medals-operation into master
Reviewed-on: #142
2024-11-21 15:16:23 -07:00
034facebf3 update medal operation, create fragment
All checks were successful
Tests / Tests (pull_request) Successful in 16s
2024-11-21 12:18:17 -08:00
ac1fceb648 Merge pull request 'Add new makes medals' (#141) from mk/extend-makes-medals into master
Reviewed-on: #141
2024-11-21 11:56:49 -07:00
fd87ade629 Add new makes medals
All checks were successful
Tests / Tests (pull_request) Successful in 8s
2024-11-21 10:54:06 -08:00
1fab007654 Merge pull request 'Change FilterInput to RunFilterInput' (#140) from mk/use-run-filter-input into master
Reviewed-on: #140
2024-11-19 16:30:20 -07:00
cd2cdb475a Change FilterInput to RunFilterInput
All checks were successful
Tests / Tests (pull_request) Successful in 6s
2024-11-19 15:29:21 -08:00
c3c74379fb Merge pull request 'Add support for getRuns' (#139) from mk/runs-qb into master
Reviewed-on: #139
2024-11-19 15:06:15 -07:00
da21627f15 Add support for getRuns
All checks were successful
Tests / Tests (pull_request) Successful in 31s
2024-11-19 14:05:21 -08:00
8fabfd67cf Merge pull request 'Add difficulty to pocketingIntentionFeatures in ShotWithAllFeatures' (#138) from loewy/add-difficulty-to-shot-features-fragment into master
Reviewed-on: #138
2024-11-19 00:30:17 -07:00
e6960038f2 add difficulty to pocketingIntentionFeatures in ShotWithAllFeatures
All checks were successful
Tests / Tests (pull_request) Successful in 8s
2024-11-18 23:11:47 -08:00
b6ec7ed39d Merge pull request 'Add clientUploadStatus' (#137) from mk/stream-status into master
Reviewed-on: #137
2024-11-18 18:47:30 -07:00
545ba638c2 Add clientUploadStatus
All checks were successful
Tests / Tests (pull_request) Successful in 8s
2024-11-18 17:46:48 -08:00
94e4e55558 Merge pull request 'Medals' (#135) from volodymyr/medals into master
Reviewed-on: #135
2024-11-15 17:52:14 -07:00
2536f5db6b add nickname to operation, remove currently unsupported fields from request
All checks were successful
Tests / Tests (pull_request) Successful in 15s
2024-11-15 16:51:17 -08:00
ffd0814a98 remove dasystreak 2024-11-15 16:44:42 -08:00
55bfe42484 Medals 2024-11-15 16:44:42 -08:00
dabb0d1d9c Merge pull request 'Remove unimplemented dayStreak and add support for nickname' (#136) from mk/add-nickname-to-medals into master
Reviewed-on: #136
2024-11-15 12:50:49 -07:00
a538c1d81c Remove unimplemented dayStreak and add support for nickname
All checks were successful
Tests / Tests (pull_request) Successful in 7s
2024-11-15 11:50:11 -08:00
872bce3adb Merge pull request 'Add ID to user processing' (#134) from kat/add-id-processing into master
Reviewed-on: #134
2024-11-14 00:20:05 -07:00
457d375bed Add ID to user processing
All checks were successful
Tests / Tests (pull_request) Successful in 9s
2024-11-14 00:18:57 -07:00
12798e368c Merge pull request 'Get user videos' (#132) from volodymyr/get-user-videos into master
Reviewed-on: #132
Reviewed-by: Ivan Malison <ivanmalison@gmail.com>
2024-11-13 15:14:48 -07:00
8 changed files with 811 additions and 88 deletions

View File

@@ -12,7 +12,7 @@
"author": "Ivan Malison <IvanMalison@gmail.com>",
"license": "MIT",
"dependencies": {
"@apollo/client": "^3.9.2",
"@apollo/client": "^3.11.10",
"@graphql-codegen/cli": "^5.0.0",
"@graphql-codegen/typescript": "^4.0.1",
"@graphql-codegen/typescript-operations": "^4.0.1",

View File

@@ -117,6 +117,11 @@ export type BucketSetInputGql = {
feature: Scalars["String"]["input"];
};
export enum ClientUploadStatusEnum {
UploadDisabled = "UPLOAD_DISABLED",
UploadEnabled = "UPLOAD_ENABLED",
}
export type CreateBucketSetInput = {
buckets: Array<BucketInputGql>;
feature: Scalars["String"]["input"];
@@ -150,6 +155,11 @@ export type DateRangeFilter = {
lessThanInclusive?: Scalars["Boolean"]["input"];
};
export type DatetimeOrdering = {
descending?: Scalars["Boolean"]["input"];
startingAt?: InputMaybe<Scalars["DateTime"]["input"]>;
};
export type DatetimeRangeAggregationInput = {
endDatetime?: InputMaybe<Scalars["DateTime"]["input"]>;
feature?: Scalars["String"]["input"];
@@ -157,11 +167,6 @@ export type DatetimeRangeAggregationInput = {
startDatetime?: InputMaybe<Scalars["DateTime"]["input"]>;
};
export type DatetimeShotOrdering = {
descending?: Scalars["Boolean"]["input"];
startingAt?: InputMaybe<Scalars["DateTime"]["input"]>;
};
export type DeployedConfigGql = {
__typename?: "DeployedConfigGQL";
allowNewUsers: Scalars["Boolean"]["output"];
@@ -181,12 +186,29 @@ export type DoesNotOwnShotErrOtherErrorNeedsNote =
| DoesNotOwnShotErr
| OtherErrorNeedsNote;
export type EditShotReturn = {
__typename?: "EditShotReturn";
error?: Maybe<DoesNotOwnShotErr>;
shot?: Maybe<ShotGql>;
};
export type EditUserInputGql = {
fargoRating?: InputMaybe<Scalars["Int"]["input"]>;
username?: InputMaybe<Scalars["String"]["input"]>;
videosPrivateByDefault?: InputMaybe<Scalars["Boolean"]["input"]>;
};
export type EditableShotFieldInputGql = {
backcut?: InputMaybe<Scalars["Boolean"]["input"]>;
excludeFromStats?: InputMaybe<Scalars["Boolean"]["input"]>;
intendedPocketType?: InputMaybe<PocketEnum>;
make?: InputMaybe<Scalars["Boolean"]["input"]>;
notes?: InputMaybe<Scalars["String"]["input"]>;
shotDirection?: InputMaybe<ShotDirectionEnum>;
spinType?: InputMaybe<SpinTypeEnum>;
targetPocketAngleDirection?: InputMaybe<ShotDirectionEnum>;
};
export type EnumAggregation = {
feature: Scalars["String"]["input"];
};
@@ -1873,6 +1895,11 @@ export type FilterInput =
videoId: Array<Scalars["Int"]["input"]>;
};
export type FloatOrdering = {
descending?: Scalars["Boolean"]["input"];
startingAt?: InputMaybe<Scalars["Float"]["input"]>;
};
export type FloatRangeFilter = {
greaterThan?: InputMaybe<Scalars["Float"]["input"]>;
greaterThanEqualTo?: InputMaybe<Scalars["Float"]["input"]>;
@@ -1882,11 +1909,6 @@ export type FloatRangeFilter = {
lessThanInclusive?: Scalars["Boolean"]["input"];
};
export type FloatShotOrdering = {
descending?: Scalars["Boolean"]["input"];
startingAt?: InputMaybe<Scalars["Float"]["input"]>;
};
export type GetProfileUploadLinkErrors = {
__typename?: "GetProfileUploadLinkErrors";
error: TooManyProfileImageUploadsErr;
@@ -1897,6 +1919,17 @@ export type GetProfileUploadLinkReturn = {
value: UploadLinkGetProfileUploadLinkErrors;
};
export type GetRunsOrdering = {
orderings: Array<RunsOrderingComponent>;
};
export type GetRunsResult = {
__typename?: "GetRunsResult";
count?: Maybe<Scalars["Int"]["output"]>;
runIds: Array<Scalars["Int"]["output"]>;
runs: Array<RunGql>;
};
export type GetShotsOrdering = {
orderings: Array<ShotsOrderingComponent>;
};
@@ -1948,6 +1981,12 @@ export type HomographyInfoGql = {
sourcePoints: PocketPointsGql;
};
export enum IncludePrivateEnum {
All = "ALL",
Mine = "MINE",
None = "NONE",
}
export enum InitPlaylistUploadStatusEnum {
NotApplicable = "NOT_APPLICABLE",
NotUploaded = "NOT_UPLOADED",
@@ -1959,17 +1998,17 @@ export type InitUploadAlreadyCompletedErr = {
segmentType: StreamSegmentTypeEnum;
};
export type IntOrdering = {
descending?: Scalars["Boolean"]["input"];
startingAt?: InputMaybe<Scalars["Int"]["input"]>;
};
export type IntPoint2D = {
__typename?: "IntPoint2D";
x: Scalars["Int"]["output"];
y: Scalars["Int"]["output"];
};
export type IntShotOrdering = {
descending?: Scalars["Boolean"]["input"];
startingAt?: InputMaybe<Scalars["Int"]["input"]>;
};
export type MakePercentageIntervalGql = {
__typename?: "MakePercentageIntervalGQL";
elapsedTime: Scalars["Float"]["output"];
@@ -1979,11 +2018,21 @@ export type MakePercentageIntervalGql = {
export type MedalGql = {
__typename?: "MedalGQL";
count: Scalars["Int"]["output"];
nickname?: Maybe<Scalars["String"]["output"]>;
};
export type MedalScope =
| { interval: TimeInterval; videoId?: never }
| { interval?: never; videoId: Scalars["Int"]["input"] };
| {
datetimeRange: DatetimeRangeAggregationInput;
interval?: never;
videoId?: never;
} /** @deprecated NO LONGER SUPPORTED, USE DATETIME_RANGE */
| { datetimeRange?: never; interval: TimeInterval; videoId?: never }
| {
datetimeRange?: never;
interval?: never;
videoId: Scalars["Int"]["input"];
};
export type MustHaveSetForUploadLinkErr = {
__typename?: "MustHaveSetForUploadLinkErr";
@@ -2008,6 +2057,7 @@ export type Mutation = {
createUploadStream: CreateUploadStreamReturn;
deleteVideo: Scalars["Boolean"]["output"];
editProfileImageUri: UserGql;
editShot: EditShotReturn;
editUploadStream: Scalars["Boolean"]["output"];
editUser: UserGql;
findPrerecordTableLayout?: Maybe<HomographyInfoGql>;
@@ -2043,6 +2093,11 @@ export type MutationEditProfileImageUriArgs = {
profileImageUri: Scalars["String"]["input"];
};
export type MutationEditShotArgs = {
fieldsToEdit: EditableShotFieldInputGql;
shotId: Scalars["Int"]["input"];
};
export type MutationEditUploadStreamArgs = {
videoId: Scalars["Int"]["input"];
videoMetadata: VideoMetadataInput;
@@ -2180,6 +2235,7 @@ export type Query = {
getMedals: RequestedMedalsGql;
getOrderedShots: GetShotsResult;
getPlayTime: UserPlayTimeGql;
getRuns: GetRunsResult;
getShotAnnotationTypes: Array<ShotAnnotationTypeGql>;
getShots: Array<ShotGql>;
getShotsByIds: Array<ShotGql>;
@@ -2209,8 +2265,10 @@ export type QueryGetBucketSetArgs = {
export type QueryGetFeedVideosArgs = {
after?: InputMaybe<Scalars["String"]["input"]>;
feedInput?: InputMaybe<VideoFeedInputGql>;
filters?: InputMaybe<VideoFilterInput>;
includeCallersVideos?: InputMaybe<Scalars["Boolean"]["input"]>;
includePrivate?: IncludePrivateEnum;
limit?: Scalars["Int"]["input"];
};
@@ -2232,6 +2290,14 @@ export type QueryGetPlayTimeArgs = {
userId: Scalars["Int"]["input"];
};
export type QueryGetRunsArgs = {
countRespectsLimit?: Scalars["Boolean"]["input"];
filterInput: RunFilterInput;
limit?: Scalars["Int"]["input"];
runIds?: InputMaybe<Array<Scalars["Int"]["input"]>>;
runsOrdering?: InputMaybe<GetRunsOrdering>;
};
export type QueryGetShotAnnotationTypesArgs = {
errorTypes?: InputMaybe<Scalars["Boolean"]["input"]>;
};
@@ -2299,17 +2365,11 @@ export type QueryWaitForArgs = {
export type RequestedMedalsGql = {
__typename?: "RequestedMedalsGQL";
dayStreak2?: Maybe<MedalGql>;
dayStreak3?: Maybe<MedalGql>;
dayStreak4?: Maybe<MedalGql>;
dayStreak5?: Maybe<MedalGql>;
dayStreak6?: Maybe<MedalGql>;
dayStreak7?: Maybe<MedalGql>;
dayStreak14?: Maybe<MedalGql>;
dayStreak21?: Maybe<MedalGql>;
dayStreak30?: Maybe<MedalGql>;
dayStreak60?: Maybe<MedalGql>;
dayStreak90?: Maybe<MedalGql>;
dailyMakes50?: Maybe<MedalGql>;
dailyMakes100?: Maybe<MedalGql>;
dailyMakes150?: Maybe<MedalGql>;
dailyMakes200?: Maybe<MedalGql>;
dailyMakes250?: Maybe<MedalGql>;
distanceOver66?: Maybe<MedalGql>;
distanceOver78?: Maybe<MedalGql>;
distanceOver90?: Maybe<MedalGql>;
@@ -2323,18 +2383,53 @@ export type RequestedMedalsGql = {
runLength30?: Maybe<MedalGql>;
runLength40?: Maybe<MedalGql>;
runLength50?: Maybe<MedalGql>;
/** @deprecated no longer supported */
totalMakes25?: Maybe<MedalGql>;
/** @deprecated no longer supported */
totalMakes50?: Maybe<MedalGql>;
/** @deprecated no longer supported */
totalMakes75?: Maybe<MedalGql>;
totalMakes100?: Maybe<MedalGql>;
/** @deprecated no longer supported */
totalMakes200?: Maybe<MedalGql>;
/** @deprecated no longer supported */
totalMakes300?: Maybe<MedalGql>;
/** @deprecated no longer supported */
totalMakes400?: Maybe<MedalGql>;
totalMakes500?: Maybe<MedalGql>;
/** @deprecated no longer supported */
totalMakes750?: Maybe<MedalGql>;
totalMakes1000?: Maybe<MedalGql>;
totalMakes5000?: Maybe<MedalGql>;
totalMakes10000?: Maybe<MedalGql>;
};
export type RunFilterInput = {
andFilters?: InputMaybe<Array<RunFilterInput>>;
createdAt?: InputMaybe<DateRangeFilter>;
notFilter?: InputMaybe<RunFilterInput>;
orFilters?: InputMaybe<Array<RunFilterInput>>;
runLength?: InputMaybe<FloatRangeFilter>;
tableSize?: InputMaybe<FloatRangeFilter>;
userId?: InputMaybe<Array<Scalars["Int"]["input"]>>;
username?: InputMaybe<Array<Scalars["String"]["input"]>>;
videoId?: InputMaybe<Array<Scalars["Int"]["input"]>>;
};
export type RunGql = {
__typename?: "RunGQL";
id: Scalars["Int"]["output"];
runLength: Scalars["Int"]["output"];
shots: Array<ShotGql>;
userId: Scalars["Int"]["output"];
videoId: Scalars["Int"]["output"];
};
export type RunsOrderingComponent =
| { runLength: IntOrdering; videoCreation?: never; videoId?: never }
| { runLength?: never; videoCreation: DatetimeOrdering; videoId?: never }
| { runLength?: never; videoCreation?: never; videoId: IntOrdering };
export type SegmentAlreadyUploadedErr = {
__typename?: "SegmentAlreadyUploadedErr";
segmentId: Scalars["Int"]["output"];
@@ -2414,39 +2509,52 @@ export type ShotGql = {
export type ShotsOrderingComponent =
| {
marginOfError: FloatShotOrdering;
difficulty: FloatOrdering;
marginOfError?: never;
runLength?: never;
startFrame?: never;
videoCreation?: never;
videoId?: never;
}
| {
marginOfError?: never;
runLength: IntShotOrdering;
difficulty?: never;
marginOfError: FloatOrdering;
runLength?: never;
startFrame?: never;
videoCreation?: never;
videoId?: never;
}
| {
difficulty?: never;
marginOfError?: never;
runLength?: never;
startFrame: IntShotOrdering;
runLength: IntOrdering;
startFrame?: never;
videoCreation?: never;
videoId?: never;
}
| {
difficulty?: never;
marginOfError?: never;
runLength?: never;
startFrame?: never;
videoCreation: DatetimeShotOrdering;
startFrame: IntOrdering;
videoCreation?: never;
videoId?: never;
}
| {
difficulty?: never;
marginOfError?: never;
runLength?: never;
startFrame?: never;
videoCreation: DatetimeOrdering;
videoId?: never;
}
| {
difficulty?: never;
marginOfError?: never;
runLength?: never;
startFrame?: never;
videoCreation?: never;
videoId: IntShotOrdering;
videoId: IntOrdering;
};
export type SpinTypeCountsGql = {
@@ -2556,6 +2664,7 @@ export type UploadSegmentGql = {
export type UploadStreamGql = {
__typename?: "UploadStreamGQL";
clientUploadStatus?: Maybe<ClientUploadStatusEnum>;
createdAt: Scalars["DateTime"]["output"];
errors: Array<StreamErrorGql>;
id: Scalars["ID"]["output"];
@@ -2608,6 +2717,23 @@ export type UserRelationshipsResult = {
relationships: Array<UserRelationship>;
};
export type VideoFeedInputGql =
| {
allUsers: Scalars["Boolean"]["input"];
followedByUserId?: never;
userId?: never;
}
| {
allUsers?: never;
followedByUserId: Scalars["Int"]["input"];
userId?: never;
}
| {
allUsers?: never;
followedByUserId?: never;
userId: Scalars["Int"]["input"];
};
export type VideoFilterInput = {
createdAt?: InputMaybe<DateRangeFilter>;
excludeVideosWithNoShots?: InputMaybe<Scalars["Boolean"]["input"]>;
@@ -2650,6 +2776,7 @@ export type VideoHistoryGql = {
};
export type VideoMetadataInput = {
clientUploadStatus?: InputMaybe<ClientUploadStatusEnum>;
endStream?: Scalars["Boolean"]["input"];
endTime?: InputMaybe<Scalars["DateTime"]["input"]>;
framesPerSecond?: InputMaybe<Scalars["Float"]["input"]>;
@@ -2869,6 +2996,8 @@ export type GetVideoFeedQueryVariables = Exact<{
after?: InputMaybe<Scalars["String"]["input"]>;
filters?: InputMaybe<VideoFilterInput>;
includeCallersVideos?: InputMaybe<Scalars["Boolean"]["input"]>;
includePrivate?: InputMaybe<IncludePrivateEnum>;
feedInput?: InputMaybe<VideoFeedInputGql>;
}>;
export type GetVideoFeedQuery = {
@@ -2942,6 +3071,134 @@ export type GetVideoMakePercentageIntervalsQuery = {
}>;
};
export type MedalFieldsFragment = {
__typename?: "MedalGQL";
count: number;
nickname?: string | null;
};
export type GetMedalsQueryVariables = Exact<{
scope: MedalScope;
userId?: InputMaybe<Scalars["Int"]["input"]>;
}>;
export type GetMedalsQuery = {
__typename?: "Query";
getMedals: {
__typename?: "RequestedMedalsGQL";
distanceOver78?: {
__typename?: "MedalGQL";
count: number;
nickname?: string | null;
} | null;
distanceOver90?: {
__typename?: "MedalGQL";
count: number;
nickname?: string | null;
} | null;
runLength3?: {
__typename?: "MedalGQL";
count: number;
nickname?: string | null;
} | null;
runLength5?: {
__typename?: "MedalGQL";
count: number;
nickname?: string | null;
} | null;
runLength8?: {
__typename?: "MedalGQL";
count: number;
nickname?: string | null;
} | null;
runLength10?: {
__typename?: "MedalGQL";
count: number;
nickname?: string | null;
} | null;
runLength15?: {
__typename?: "MedalGQL";
count: number;
nickname?: string | null;
} | null;
runLength20?: {
__typename?: "MedalGQL";
count: number;
nickname?: string | null;
} | null;
runLength25?: {
__typename?: "MedalGQL";
count: number;
nickname?: string | null;
} | null;
runLength30?: {
__typename?: "MedalGQL";
count: number;
nickname?: string | null;
} | null;
runLength40?: {
__typename?: "MedalGQL";
count: number;
nickname?: string | null;
} | null;
runLength50?: {
__typename?: "MedalGQL";
count: number;
nickname?: string | null;
} | null;
totalMakes100?: {
__typename?: "MedalGQL";
count: number;
nickname?: string | null;
} | null;
totalMakes500?: {
__typename?: "MedalGQL";
count: number;
nickname?: string | null;
} | null;
totalMakes1000?: {
__typename?: "MedalGQL";
count: number;
nickname?: string | null;
} | null;
totalMakes5000?: {
__typename?: "MedalGQL";
count: number;
nickname?: string | null;
} | null;
totalMakes10000?: {
__typename?: "MedalGQL";
count: number;
nickname?: string | null;
} | null;
dailyMakes50?: {
__typename?: "MedalGQL";
count: number;
nickname?: string | null;
} | null;
dailyMakes100?: {
__typename?: "MedalGQL";
count: number;
nickname?: string | null;
} | null;
dailyMakes150?: {
__typename?: "MedalGQL";
count: number;
nickname?: string | null;
} | null;
dailyMakes200?: {
__typename?: "MedalGQL";
count: number;
nickname?: string | null;
} | null;
dailyMakes250?: {
__typename?: "MedalGQL";
count: number;
nickname?: string | null;
} | null;
};
};
export type GetSerializedShotPathsQueryVariables = Exact<{
filterInput: FilterInput;
}>;
@@ -3086,6 +3343,7 @@ export type GetShotsWithMetadataFilterResultQuery = {
targetPocketAngleDirection?: ShotDirectionEnum | null;
marginOfErrorInDegrees?: number | null;
intendedPocketType?: PocketEnum | null;
difficulty?: number | null;
} | null;
pocketingIntentionInfo?: {
__typename?: "PocketingIntentionInfoGQL";
@@ -3152,6 +3410,7 @@ export type GetShotsWithMetadataQuery = {
targetPocketAngleDirection?: ShotDirectionEnum | null;
marginOfErrorInDegrees?: number | null;
intendedPocketType?: PocketEnum | null;
difficulty?: number | null;
} | null;
pocketingIntentionInfo?: {
__typename?: "PocketingIntentionInfoGQL";
@@ -3211,6 +3470,7 @@ export type GetShotsByIdsQuery = {
targetPocketAngleDirection?: ShotDirectionEnum | null;
marginOfErrorInDegrees?: number | null;
intendedPocketType?: PocketEnum | null;
difficulty?: number | null;
} | null;
pocketingIntentionInfo?: {
__typename?: "PocketingIntentionInfoGQL";
@@ -3259,6 +3519,7 @@ export type ShotWithAllFeaturesFragment = {
targetPocketAngleDirection?: ShotDirectionEnum | null;
marginOfErrorInDegrees?: number | null;
intendedPocketType?: PocketEnum | null;
difficulty?: number | null;
} | null;
pocketingIntentionInfo?: {
__typename?: "PocketingIntentionInfoGQL";
@@ -3278,6 +3539,74 @@ export type ShotWithAllFeaturesFragment = {
}>;
};
export type EditShotMutationVariables = Exact<{
shotId: Scalars["Int"]["input"];
fieldsToEdit: EditableShotFieldInputGql;
}>;
export type EditShotMutation = {
__typename?: "Mutation";
editShot: {
__typename?: "EditShotReturn";
error?: {
__typename?: "DoesNotOwnShotErr";
shotId: number;
msg?: string | null;
} | null;
shot?: {
__typename?: "ShotGQL";
id: number;
videoId: number;
startFrame: number;
endFrame: number;
startTime: number;
endTime: number;
falsePositiveScore?: number | null;
createdAt?: any | null;
updatedAt?: any | null;
user?: { __typename?: "UserGQL"; id: number } | null;
cueObjectFeatures?: {
__typename?: "CueObjectFeaturesGQL";
cueObjectDistance?: number | null;
cueObjectAngle?: number | null;
cueBallSpeed?: number | null;
shotDirection?: ShotDirectionEnum | null;
spinType?: SpinTypeEnum | null;
} | null;
pocketingIntentionFeatures?: {
__typename?: "PocketingIntentionFeaturesGQL";
make?: boolean | null;
targetPocketDistance?: number | null;
targetPocketAngle?: number | null;
targetPocketAngleDirection?: ShotDirectionEnum | null;
marginOfErrorInDegrees?: number | null;
intendedPocketType?: PocketEnum | null;
difficulty?: number | null;
} | null;
pocketingIntentionInfo?: {
__typename?: "PocketingIntentionInfoGQL";
ballId: number;
pocketId: PocketIdentifier;
pathMetadataIndex: number;
} | null;
serializedShotPaths?: {
__typename?: "SerializedShotPathsGQL";
b64EncodedBuffer?: string | null;
} | null;
annotations: Array<{
__typename?: "ShotAnnotationGQL";
shotId: number;
notes: string;
type: {
__typename?: "ShotAnnotationTypeGQL";
id: number;
name: string;
};
}>;
} | null;
};
};
export type GetProfileImageUploadLinkMutationVariables = Exact<{
fileExt?: InputMaybe<Scalars["String"]["input"]>;
}>;
@@ -3501,6 +3830,7 @@ export type GetStreamMonitoringDetailsQuery = {
elapsedTime?: number | null;
currentHomography?: {
__typename?: "HomographyInfoGQL";
id: number;
frameIndex: number;
crop: {
__typename?: "BoundingBoxGQL";
@@ -3539,6 +3869,7 @@ export type GetStreamMonitoringDetailsQuery = {
} | null;
currentProcessing?: {
__typename?: "VideoProcessingGQL";
id: number;
errors: Array<{
__typename?: "VideoProcessingErrorGQL";
message: string;
@@ -3563,6 +3894,7 @@ export type GetVideoUpdatePageDetailsQuery = {
makePercentage: number;
elapsedTime?: number | null;
tableSize: number;
private: boolean;
tags: Array<{
__typename?: "VideoTag";
name: string;
@@ -3602,6 +3934,7 @@ export type GetVideoDetailsQuery = {
createdAt?: any | null;
updatedAt?: any | null;
tableSize: number;
private: boolean;
owner?: {
__typename?: "UserGQL";
id: number;
@@ -3715,6 +4048,7 @@ export type GetVideoQuery = {
} | null;
homographyHistory: Array<{
__typename?: "HomographyInfoGQL";
id: number;
frameIndex: number;
crop: {
__typename?: "BoundingBoxGQL";
@@ -3925,6 +4259,7 @@ export type FindPrerecordTableLayoutMutation = {
__typename?: "Mutation";
findPrerecordTableLayout?: {
__typename?: "HomographyInfoGQL";
id: number;
frameIndex: number;
crop: {
__typename?: "BoundingBoxGQL";
@@ -3954,6 +4289,7 @@ export type FindPrerecordTableLayoutMutation = {
export type HomographyInfoFragment = {
__typename?: "HomographyInfoGQL";
id: number;
frameIndex: number;
crop: {
__typename?: "BoundingBoxGQL";
@@ -4195,6 +4531,12 @@ export const VideoCardFieldsFragmentDoc = gql`
}
}
`;
export const MedalFieldsFragmentDoc = gql`
fragment MedalFields on MedalGQL {
count
nickname
}
`;
export const ShotWithAllFeaturesFragmentDoc = gql`
fragment ShotWithAllFeatures on ShotGQL {
id
@@ -4223,6 +4565,7 @@ export const ShotWithAllFeaturesFragmentDoc = gql`
targetPocketAngleDirection
marginOfErrorInDegrees
intendedPocketType
difficulty
}
pocketingIntentionInfo {
ballId
@@ -4315,6 +4658,7 @@ export const VideoDurationDataFragmentDoc = gql`
`;
export const HomographyInfoFragmentDoc = gql`
fragment HomographyInfo on HomographyInfoGQL {
id
frameIndex
crop {
left
@@ -4597,12 +4941,16 @@ export const GetVideoFeedDocument = gql`
$after: String = null
$filters: VideoFilterInput = null
$includeCallersVideos: Boolean = null
$includePrivate: IncludePrivateEnum = MINE
$feedInput: VideoFeedInputGQL = null
) {
getFeedVideos(
limit: $limit
after: $after
filters: $filters
includeCallersVideos: $includeCallersVideos
includePrivate: $includePrivate
feedInput: $feedInput
) {
videos {
...VideoCardFields
@@ -4632,6 +4980,8 @@ export const GetVideoFeedDocument = gql`
* after: // value for 'after'
* filters: // value for 'filters'
* includeCallersVideos: // value for 'includeCallersVideos'
* includePrivate: // value for 'includePrivate'
* feedInput: // value for 'feedInput'
* },
* });
*/
@@ -4765,6 +5115,141 @@ export type GetVideoMakePercentageIntervalsQueryResult = Apollo.QueryResult<
GetVideoMakePercentageIntervalsQuery,
GetVideoMakePercentageIntervalsQueryVariables
>;
export const GetMedalsDocument = gql`
query getMedals($scope: MedalScope!, $userId: Int) {
getMedals(scope: $scope, userId: $userId) {
distanceOver78 {
...MedalFields
}
distanceOver90 {
...MedalFields
}
runLength3 {
...MedalFields
}
runLength5 {
...MedalFields
}
runLength8 {
...MedalFields
}
runLength10 {
...MedalFields
}
runLength15 {
...MedalFields
}
runLength20 {
...MedalFields
}
runLength25 {
...MedalFields
}
runLength30 {
...MedalFields
}
runLength40 {
...MedalFields
}
runLength50 {
...MedalFields
}
totalMakes100 {
...MedalFields
}
totalMakes500 {
...MedalFields
}
totalMakes1000 {
...MedalFields
}
totalMakes5000 {
...MedalFields
}
totalMakes10000 {
...MedalFields
}
dailyMakes50 {
...MedalFields
}
dailyMakes100 {
...MedalFields
}
dailyMakes150 {
...MedalFields
}
dailyMakes200 {
...MedalFields
}
dailyMakes250 {
...MedalFields
}
}
}
${MedalFieldsFragmentDoc}
`;
/**
* __useGetMedalsQuery__
*
* To run a query within a React component, call `useGetMedalsQuery` and pass it any options that fit your needs.
* When your component renders, `useGetMedalsQuery` returns an object from Apollo Client that contains loading, error, and data properties
* you can use to render your UI.
*
* @param baseOptions options that will be passed into the query, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options;
*
* @example
* const { data, loading, error } = useGetMedalsQuery({
* variables: {
* scope: // value for 'scope'
* userId: // value for 'userId'
* },
* });
*/
export function useGetMedalsQuery(
baseOptions: Apollo.QueryHookOptions<GetMedalsQuery, GetMedalsQueryVariables>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useQuery<GetMedalsQuery, GetMedalsQueryVariables>(
GetMedalsDocument,
options,
);
}
export function useGetMedalsLazyQuery(
baseOptions?: Apollo.LazyQueryHookOptions<
GetMedalsQuery,
GetMedalsQueryVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useLazyQuery<GetMedalsQuery, GetMedalsQueryVariables>(
GetMedalsDocument,
options,
);
}
export function useGetMedalsSuspenseQuery(
baseOptions?: Apollo.SuspenseQueryHookOptions<
GetMedalsQuery,
GetMedalsQueryVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useSuspenseQuery<GetMedalsQuery, GetMedalsQueryVariables>(
GetMedalsDocument,
options,
);
}
export type GetMedalsQueryHookResult = ReturnType<typeof useGetMedalsQuery>;
export type GetMedalsLazyQueryHookResult = ReturnType<
typeof useGetMedalsLazyQuery
>;
export type GetMedalsSuspenseQueryHookResult = ReturnType<
typeof useGetMedalsSuspenseQuery
>;
export type GetMedalsQueryResult = Apollo.QueryResult<
GetMedalsQuery,
GetMedalsQueryVariables
>;
export const GetSerializedShotPathsDocument = gql`
query GetSerializedShotPaths($filterInput: FilterInput!) {
getShots(filterInput: $filterInput) {
@@ -5423,6 +5908,61 @@ export type GetShotsByIdsQueryResult = Apollo.QueryResult<
GetShotsByIdsQuery,
GetShotsByIdsQueryVariables
>;
export const EditShotDocument = gql`
mutation EditShot($shotId: Int!, $fieldsToEdit: EditableShotFieldInputGQL!) {
editShot(shotId: $shotId, fieldsToEdit: $fieldsToEdit) {
error {
shotId
msg
}
shot {
...ShotWithAllFeatures
}
}
}
${ShotWithAllFeaturesFragmentDoc}
`;
export type EditShotMutationFn = Apollo.MutationFunction<
EditShotMutation,
EditShotMutationVariables
>;
/**
* __useEditShotMutation__
*
* To run a mutation, you first call `useEditShotMutation` within a React component and pass it any options that fit your needs.
* When your component renders, `useEditShotMutation` returns a tuple that includes:
* - A mutate function that you can call at any time to execute the mutation
* - An object with fields that represent the current status of the mutation's execution
*
* @param baseOptions options that will be passed into the mutation, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options-2;
*
* @example
* const [editShotMutation, { data, loading, error }] = useEditShotMutation({
* variables: {
* shotId: // value for 'shotId'
* fieldsToEdit: // value for 'fieldsToEdit'
* },
* });
*/
export function useEditShotMutation(
baseOptions?: Apollo.MutationHookOptions<
EditShotMutation,
EditShotMutationVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useMutation<EditShotMutation, EditShotMutationVariables>(
EditShotDocument,
options,
);
}
export type EditShotMutationHookResult = ReturnType<typeof useEditShotMutation>;
export type EditShotMutationResult = Apollo.MutationResult<EditShotMutation>;
export type EditShotMutationOptions = Apollo.BaseMutationOptions<
EditShotMutation,
EditShotMutationVariables
>;
export const GetProfileImageUploadLinkDocument = gql`
mutation getProfileImageUploadLink($fileExt: String = ".png") {
getProfileImageUploadLink(fileExt: $fileExt) {
@@ -6294,6 +6834,7 @@ export const GetStreamMonitoringDetailsDocument = gql`
initPlaylistUploadStatus
}
currentProcessing {
id
errors {
message
startSegmentIndex
@@ -6380,6 +6921,7 @@ export const GetVideoUpdatePageDetailsDocument = gql`
makePercentage
elapsedTime
tableSize
private
tags {
tagClasses {
name
@@ -6520,6 +7062,7 @@ export const GetVideoDetailsDocument = gql`
createdAt
updatedAt
tableSize
private
owner {
id
firebaseUid

View File

@@ -62,12 +62,16 @@ query GetVideoFeed(
$after: String = null
$filters: VideoFilterInput = null
$includeCallersVideos: Boolean = null
$includePrivate: IncludePrivateEnum = MINE
$feedInput: VideoFeedInputGQL = null
) {
getFeedVideos(
limit: $limit
after: $after
filters: $filters
includeCallersVideos: $includeCallersVideos
includePrivate: $includePrivate
feedInput: $feedInput
) {
videos {
...VideoCardFields

75
src/operations/medals.gql Normal file
View File

@@ -0,0 +1,75 @@
fragment MedalFields on MedalGQL {
count
nickname
}
query getMedals($scope: MedalScope!, $userId: Int) {
getMedals(scope: $scope, userId: $userId) {
distanceOver78 {
...MedalFields
}
distanceOver90 {
...MedalFields
}
runLength3 {
...MedalFields
}
runLength5 {
...MedalFields
}
runLength8 {
...MedalFields
}
runLength10 {
...MedalFields
}
runLength15 {
...MedalFields
}
runLength20 {
...MedalFields
}
runLength25 {
...MedalFields
}
runLength30 {
...MedalFields
}
runLength40 {
...MedalFields
}
runLength50 {
...MedalFields
}
totalMakes100 {
...MedalFields
}
totalMakes500 {
...MedalFields
}
totalMakes1000 {
...MedalFields
}
totalMakes5000 {
...MedalFields
}
totalMakes10000 {
...MedalFields
}
dailyMakes50 {
...MedalFields
}
dailyMakes100 {
...MedalFields
}
dailyMakes150 {
...MedalFields
}
dailyMakes200 {
...MedalFields
}
dailyMakes250 {
...MedalFields
}
}
}

View File

@@ -159,6 +159,7 @@ fragment ShotWithAllFeatures on ShotGQL {
targetPocketAngleDirection
marginOfErrorInDegrees
intendedPocketType
difficulty
}
pocketingIntentionInfo {
ballId
@@ -177,3 +178,15 @@ fragment ShotWithAllFeatures on ShotGQL {
notes
}
}
mutation EditShot($shotId: Int!, $fieldsToEdit: EditableShotFieldInputGQL!) {
editShot(shotId: $shotId, fieldsToEdit: $fieldsToEdit) {
error {
shotId
msg
}
shot {
...ShotWithAllFeatures
}
}
}

View File

@@ -18,6 +18,7 @@ query GetStreamMonitoringDetails($videoId: Int!, $debuggingJson: JSON) {
initPlaylistUploadStatus
}
currentProcessing {
id
errors {
message
startSegmentIndex
@@ -35,6 +36,7 @@ query GetVideoUpdatePageDetails($videoId: Int!) {
makePercentage
elapsedTime
tableSize
private
tags {
tagClasses {
name
@@ -64,6 +66,7 @@ query GetVideoDetails($videoId: Int!) {
createdAt
updatedAt
tableSize
private
owner {
id
firebaseUid
@@ -221,6 +224,7 @@ mutation FindPrerecordTableLayout($b64Image: String!, $videoId: Int!) {
}
fragment HomographyInfo on HomographyInfoGQL {
id
frameIndex
crop {
left

View File

@@ -10,6 +10,13 @@ type Query {
intervalDuration: Int! = 300
): [MakePercentageIntervalGQL!]!
getMedals(scope: MedalScope!, userId: Int = null): RequestedMedalsGQL!
getRuns(
filterInput: RunFilterInput!
runIds: [Int!] = null
runsOrdering: GetRunsOrdering = null
limit: Int! = 500
countRespectsLimit: Boolean! = false
): GetRunsResult!
getOrderedShots(
filterInput: FilterInput!
ids: [Int!] = null
@@ -59,8 +66,10 @@ type Query {
getFeedVideos(
limit: Int! = 5
after: String = null
includePrivate: IncludePrivateEnum! = MINE
includeCallersVideos: Boolean = true
filters: VideoFilterInput = null
feedInput: VideoFeedInputGQL = null
): VideoHistoryGQL!
}
@@ -286,42 +295,49 @@ type RequestedMedalsGQL {
runLength30: MedalGQL
runLength40: MedalGQL
runLength50: MedalGQL
totalMakes25: MedalGQL
totalMakes50: MedalGQL
totalMakes75: MedalGQL
totalMakes25: MedalGQL @deprecated(reason: "no longer supported")
totalMakes50: MedalGQL @deprecated(reason: "no longer supported")
totalMakes75: MedalGQL @deprecated(reason: "no longer supported")
totalMakes200: MedalGQL @deprecated(reason: "no longer supported")
totalMakes300: MedalGQL @deprecated(reason: "no longer supported")
totalMakes400: MedalGQL @deprecated(reason: "no longer supported")
totalMakes750: MedalGQL @deprecated(reason: "no longer supported")
totalMakes100: MedalGQL
totalMakes200: MedalGQL
totalMakes300: MedalGQL
totalMakes400: MedalGQL
totalMakes500: MedalGQL
totalMakes750: MedalGQL
totalMakes1000: MedalGQL
dayStreak2: MedalGQL
dayStreak3: MedalGQL
dayStreak4: MedalGQL
dayStreak5: MedalGQL
dayStreak6: MedalGQL
dayStreak7: MedalGQL
dayStreak14: MedalGQL
dayStreak21: MedalGQL
dayStreak30: MedalGQL
dayStreak60: MedalGQL
dayStreak90: MedalGQL
totalMakes5000: MedalGQL
totalMakes10000: MedalGQL
dailyMakes50: MedalGQL
dailyMakes100: MedalGQL
dailyMakes150: MedalGQL
dailyMakes200: MedalGQL
dailyMakes250: MedalGQL
}
type MedalGQL {
count: Int!
nickname: String
}
input MedalScope @oneOf {
videoId: Int
interval: TimeInterval
@deprecated(reason: "NO LONGER SUPPORTED, USE DATETIME_RANGE")
datetimeRange: DatetimeRangeAggregationInput
}
type GetShotsResult {
shots: [ShotGQL!]!
type GetRunsResult {
runs: [RunGQL!]!
count: Int
ids: [Int!]!
runIds: [Int!]!
}
type RunGQL {
id: Int!
runLength: Int!
videoId: Int!
userId: Int!
shots: [ShotGQL!]!
}
type ShotGQL {
@@ -462,6 +478,7 @@ type UploadStreamGQL {
createdAt: DateTime!
updatedAt: DateTime!
segments: [UploadSegmentGQL!]!
clientUploadStatus: ClientUploadStatusEnum
resolution: VideoResolutionGQL!
streamSegmentType: StreamSegmentTypeEnum!
}
@@ -486,6 +503,11 @@ type UploadSegmentGQL {
linksRequested: Int!
}
enum ClientUploadStatusEnum {
UPLOAD_ENABLED
UPLOAD_DISABLED
}
type VideoResolutionGQL {
width: Int
height: Int
@@ -573,33 +595,62 @@ type VideoProcessingStatusGQL {
updatedAt: DateTime
}
input RunFilterInput {
videoId: [Int!]
userId: [Int!]
username: [String!]
andFilters: [RunFilterInput!]
orFilters: [RunFilterInput!]
notFilter: RunFilterInput
tableSize: FloatRangeFilter
createdAt: DateRangeFilter
runLength: FloatRangeFilter
}
input GetRunsOrdering {
orderings: [RunsOrderingComponent!]!
}
input RunsOrderingComponent @oneOf {
runLength: IntOrdering
videoId: IntOrdering
videoCreation: DatetimeOrdering
}
input IntOrdering {
descending: Boolean! = true
startingAt: Int = null
}
input DatetimeOrdering {
descending: Boolean! = true
startingAt: DateTime = null
}
type GetShotsResult {
shots: [ShotGQL!]!
count: Int
ids: [Int!]!
}
input GetShotsOrdering {
orderings: [ShotsOrderingComponent!]!
}
input ShotsOrderingComponent @oneOf {
videoCreation: DatetimeShotOrdering
marginOfError: FloatShotOrdering
videoId: IntShotOrdering
startFrame: IntShotOrdering
runLength: IntShotOrdering
videoCreation: DatetimeOrdering
marginOfError: FloatOrdering
difficulty: FloatOrdering
videoId: IntOrdering
startFrame: IntOrdering
runLength: IntOrdering
}
input DatetimeShotOrdering {
descending: Boolean! = true
startingAt: DateTime = null
}
input FloatShotOrdering {
input FloatOrdering {
descending: Boolean! = true
startingAt: Float = null
}
input IntShotOrdering {
descending: Boolean! = true
startingAt: Int = null
}
input GetShotsPagination {
createdAfter: CreatedAfter!
startFrameAfter: Int!
@@ -656,9 +707,25 @@ scalar JSON
url: "https://ecma-international.org/wp-content/uploads/ECMA-404_2nd_edition_december_2017.pdf"
)
enum IncludePrivateEnum {
ALL
MINE
NONE
}
input VideoFeedInputGQL @oneOf {
followedByUserId: Int
userId: Int
allUsers: Boolean
}
type Mutation {
createBucketSet(params: CreateBucketSetInput!): BucketSetGQL!
setLoggerLevel(path: String!, level: String!): Boolean!
editShot(
shotId: Int!
fieldsToEdit: EditableShotFieldInputGQL!
): EditShotReturn!
addAnnotationToShot(
shotId: Int!
annotationName: String!
@@ -696,6 +763,27 @@ input CreateBucketSetInput {
buckets: [BucketInputGQL!]!
}
type EditShotReturn {
shot: ShotGQL
error: DoesNotOwnShotErr
}
type DoesNotOwnShotErr {
shotId: Int!
msg: String
}
input EditableShotFieldInputGQL {
intendedPocketType: PocketEnum
shotDirection: ShotDirectionEnum
spinType: SpinTypeEnum
targetPocketAngleDirection: ShotDirectionEnum
make: Boolean
backcut: Boolean
excludeFromStats: Boolean
notes: String
}
type AddShotAnnotationReturn {
value: SuccessfulAddAddShotAnnotationErrors!
}
@@ -716,11 +804,6 @@ union DoesNotOwnShotErrOtherErrorNeedsNote =
DoesNotOwnShotErr
| OtherErrorNeedsNote
type DoesNotOwnShotErr {
shotId: Int!
msg: String
}
type OtherErrorNeedsNote {
msg: String
}
@@ -781,6 +864,7 @@ input VideoMetadataInput {
streamSegmentType: StreamSegmentTypeEnum = null
private: Boolean = null
endStream: Boolean! = false
clientUploadStatus: ClientUploadStatusEnum = null
resolution: VideoResolution = null
framesPerSecond: Float = null
}

View File

@@ -10,10 +10,10 @@
"@jridgewell/gen-mapping" "^0.3.0"
"@jridgewell/trace-mapping" "^0.3.9"
"@apollo/client@^3.9.2":
version "3.9.2"
resolved "https://registry.yarnpkg.com/@apollo/client/-/client-3.9.2.tgz#96edf2c212f828bad1ef3d84234fa473c5a27ff8"
integrity sha512-Zw9WvXjqhpbgkvAvnj52vstOWwM0iedKWtn1hSq1cODQyoe1CF2uFwMYFI7l56BrAY9CzLi6MQA0AhxpgJgvxw==
"@apollo/client@^3.11.10":
version "3.12.3"
resolved "https://registry.yarnpkg.com/@apollo/client/-/client-3.12.3.tgz#0d252749baad8328e06883fe118dc7e73e3bbb1f"
integrity sha512-KZ5zymRdb8bMbGUb1wP2U04ff7qIGgaC1BCdCVC+IPFiXkxEhHBc5fDEQOwAUT+vUo9KbBh3g7QK/JCOswn59w==
dependencies:
"@graphql-typed-document-node/core" "^3.1.1"
"@wry/caches" "^1.0.0"
@@ -23,7 +23,7 @@
hoist-non-react-statics "^3.3.2"
optimism "^0.18.0"
prop-types "^15.7.2"
rehackt "0.0.3"
rehackt "^0.1.0"
response-iterator "^0.2.6"
symbol-observable "^4.0.0"
ts-invariant "^0.10.3"
@@ -2633,10 +2633,10 @@ regenerator-runtime@^0.14.0:
resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz#356ade10263f685dda125100cd862c1db895327f"
integrity sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==
rehackt@0.0.3:
version "0.0.3"
resolved "https://registry.yarnpkg.com/rehackt/-/rehackt-0.0.3.tgz#1ea454620d4641db8342e2db44595cf0e7ac6aa0"
integrity sha512-aBRHudKhOWwsTvCbSoinzq+Lej/7R8e8UoPvLZo5HirZIIBLGAgdG7SL9QpdcBoQ7+3QYPi3lRLknAzXBlhZ7g==
rehackt@^0.1.0:
version "0.1.0"
resolved "https://registry.yarnpkg.com/rehackt/-/rehackt-0.1.0.tgz#a7c5e289c87345f70da8728a7eb878e5d03c696b"
integrity sha512-7kRDOuLHB87D/JESKxQoRwv4DzbIdwkAGQ7p6QKGdVlY1IZheUnVhlk/4UZlNUVxdAXpyxikE3URsG067ybVzw==
relay-runtime@12.0.0:
version "12.0.0"