Compare commits

..

6 Commits

Author SHA1 Message Date
8246699915 Merge pull request 'Return ShotGQL w/ updateShotAnnotations' (#84) from loewy/annotations-return into master
Reviewed-on: #84
Reviewed-by: Ivan Malison <ivanmalison@gmail.com>
2024-10-24 10:54:05 -06:00
de9d47c289 Merge branch 'master' into loewy/annotations-return
All checks were successful
Tests / Tests (pull_request) Successful in 8s
2024-10-24 10:53:02 -06:00
39b1808cab Merge pull request 'Create get usernames and followers operation' (#85) from kat/add-get-usernames-following-operation into master
Reviewed-on: #85
2024-10-24 09:19:38 -06:00
a78f9e7b9d return shot gql with an annotation update
All checks were successful
Tests / Tests (pull_request) Successful in 16s
2024-10-23 16:39:16 -07:00
f573026853 Create get usernames and followers operation
All checks were successful
Tests / Tests (pull_request) Successful in 15s
2024-10-23 17:04:25 -06:00
f98c98ecdd Merge pull request 'Add get usernames and following response' (#83) from kat/add-usernames-response into master
Reviewed-on: #83
2024-10-23 16:53:50 -06:00
4 changed files with 171 additions and 52 deletions

View File

@@ -2412,15 +2412,6 @@ export type SuccessfulAddAddShotAnnotationErrors =
| AddShotAnnotationErrors | AddShotAnnotationErrors
| SuccessfulAdd; | SuccessfulAdd;
export type SuccessfulUpdate = {
__typename?: "SuccessfulUpdate";
value: Scalars["Boolean"]["output"];
};
export type SuccessfulUpdateUpdateShotAnnotationErrors =
| SuccessfulUpdate
| UpdateShotAnnotationErrors;
export type TagGql = { export type TagGql = {
__typename?: "TagGQL"; __typename?: "TagGQL";
group?: Maybe<Scalars["String"]["output"]>; group?: Maybe<Scalars["String"]["output"]>;
@@ -2463,14 +2454,10 @@ export type UpdateAnnotationInputGql = {
notes?: InputMaybe<Scalars["String"]["input"]>; notes?: InputMaybe<Scalars["String"]["input"]>;
}; };
export type UpdateShotAnnotationErrors = {
__typename?: "UpdateShotAnnotationErrors";
error?: Maybe<DoesNotOwnShotErr>;
};
export type UpdateShotAnnotationReturn = { export type UpdateShotAnnotationReturn = {
__typename?: "UpdateShotAnnotationReturn"; __typename?: "UpdateShotAnnotationReturn";
value: SuccessfulUpdateUpdateShotAnnotationErrors; error?: Maybe<DoesNotOwnShotErr>;
shot?: Maybe<ShotGql>;
}; };
export type UploadLink = { export type UploadLink = {
@@ -2783,16 +2770,26 @@ export type UpdateShotAnnotationsMutation = {
__typename?: "Mutation"; __typename?: "Mutation";
updateShotAnnotations: { updateShotAnnotations: {
__typename?: "UpdateShotAnnotationReturn"; __typename?: "UpdateShotAnnotationReturn";
value: shot?: {
| { __typename?: "SuccessfulUpdate"; value: boolean } __typename?: "ShotGQL";
| { id: number;
__typename?: "UpdateShotAnnotationErrors"; annotations: Array<{
error?: { __typename?: "ShotAnnotationGQL";
__typename?: "DoesNotOwnShotErr"; shotId: number;
shotId: number; notes: string;
msg?: string | null; errorDefault: boolean;
} | null; type: {
__typename?: "ShotAnnotationTypeGQL";
id: number;
name: string;
}; };
}>;
} | null;
error?: {
__typename?: "DoesNotOwnShotErr";
shotId: number;
msg?: string | null;
} | null;
}; };
}; };
@@ -3134,6 +3131,23 @@ export type GetUsernamesQuery = {
getUsernames: Array<string>; getUsernames: Array<string>;
}; };
export type GetUsernamesAndFollowingQueryVariables = Exact<{
userId: Scalars["Int"]["input"];
matchString: Scalars["String"]["input"];
limit?: InputMaybe<Scalars["Int"]["input"]>;
after?: InputMaybe<Scalars["String"]["input"]>;
}>;
export type GetUsernamesAndFollowingQuery = {
__typename?: "Query";
getUsernamesAndFollowing: {
__typename?: "UsernamesAndFollowingResponse";
followers: Array<number>;
following: Array<number>;
usernames: Array<string>;
};
};
export type GetUserTagsQueryVariables = Exact<{ [key: string]: never }>; export type GetUserTagsQueryVariables = Exact<{ [key: string]: never }>;
export type GetUserTagsQuery = { export type GetUserTagsQuery = {
@@ -4355,17 +4369,22 @@ export const UpdateShotAnnotationsDocument = gql`
$annotations: [UpdateAnnotationInputGQL!]! $annotations: [UpdateAnnotationInputGQL!]!
) { ) {
updateShotAnnotations(shotId: $shotId, annotations: $annotations) { updateShotAnnotations(shotId: $shotId, annotations: $annotations) {
value { shot {
... on SuccessfulUpdate { id
value annotations {
} shotId
... on UpdateShotAnnotationErrors { type {
error { id
shotId name
msg
} }
notes
errorDefault
} }
} }
error {
shotId
msg
}
} }
} }
`; `;
@@ -5100,6 +5119,94 @@ export type GetUsernamesQueryResult = Apollo.QueryResult<
GetUsernamesQuery, GetUsernamesQuery,
GetUsernamesQueryVariables GetUsernamesQueryVariables
>; >;
export const GetUsernamesAndFollowingDocument = gql`
query getUsernamesAndFollowing(
$userId: Int!
$matchString: String!
$limit: Int = null
$after: String = null
) {
getUsernamesAndFollowing(
userId: $userId
matchString: $matchString
limit: $limit
after: $after
) {
followers
following
usernames
}
}
`;
/**
* __useGetUsernamesAndFollowingQuery__
*
* To run a query within a React component, call `useGetUsernamesAndFollowingQuery` and pass it any options that fit your needs.
* When your component renders, `useGetUsernamesAndFollowingQuery` 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 } = useGetUsernamesAndFollowingQuery({
* variables: {
* userId: // value for 'userId'
* matchString: // value for 'matchString'
* limit: // value for 'limit'
* after: // value for 'after'
* },
* });
*/
export function useGetUsernamesAndFollowingQuery(
baseOptions: Apollo.QueryHookOptions<
GetUsernamesAndFollowingQuery,
GetUsernamesAndFollowingQueryVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useQuery<
GetUsernamesAndFollowingQuery,
GetUsernamesAndFollowingQueryVariables
>(GetUsernamesAndFollowingDocument, options);
}
export function useGetUsernamesAndFollowingLazyQuery(
baseOptions?: Apollo.LazyQueryHookOptions<
GetUsernamesAndFollowingQuery,
GetUsernamesAndFollowingQueryVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useLazyQuery<
GetUsernamesAndFollowingQuery,
GetUsernamesAndFollowingQueryVariables
>(GetUsernamesAndFollowingDocument, options);
}
export function useGetUsernamesAndFollowingSuspenseQuery(
baseOptions?: Apollo.SuspenseQueryHookOptions<
GetUsernamesAndFollowingQuery,
GetUsernamesAndFollowingQueryVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useSuspenseQuery<
GetUsernamesAndFollowingQuery,
GetUsernamesAndFollowingQueryVariables
>(GetUsernamesAndFollowingDocument, options);
}
export type GetUsernamesAndFollowingQueryHookResult = ReturnType<
typeof useGetUsernamesAndFollowingQuery
>;
export type GetUsernamesAndFollowingLazyQueryHookResult = ReturnType<
typeof useGetUsernamesAndFollowingLazyQuery
>;
export type GetUsernamesAndFollowingSuspenseQueryHookResult = ReturnType<
typeof useGetUsernamesAndFollowingSuspenseQuery
>;
export type GetUsernamesAndFollowingQueryResult = Apollo.QueryResult<
GetUsernamesAndFollowingQuery,
GetUsernamesAndFollowingQueryVariables
>;
export const GetUserTagsDocument = gql` export const GetUserTagsDocument = gql`
query GetUserTags { query GetUserTags {
getUserTags { getUserTags {

View File

@@ -22,17 +22,22 @@ mutation UpdateShotAnnotations(
$annotations: [UpdateAnnotationInputGQL!]! $annotations: [UpdateAnnotationInputGQL!]!
) { ) {
updateShotAnnotations(shotId: $shotId, annotations: $annotations) { updateShotAnnotations(shotId: $shotId, annotations: $annotations) {
value { shot {
... on SuccessfulUpdate { id
value annotations {
} shotId
... on UpdateShotAnnotationErrors { type {
error { id
shotId name
msg
} }
notes
errorDefault
} }
} }
error {
shotId
msg
}
} }
} }

View File

@@ -57,6 +57,24 @@ query getUsernames(
getUsernames(matchString: $matchString, limit: $limit, after: $after) getUsernames(matchString: $matchString, limit: $limit, after: $after)
} }
query getUsernamesAndFollowing(
$userId: Int!
$matchString: String!
$limit: Int = null
$after: String = null
) {
getUsernamesAndFollowing(
userId: $userId
matchString: $matchString
limit: $limit
after: $after
) {
followers
following
usernames
}
}
query GetUserTags { query GetUserTags {
getUserTags { getUserTags {
id id

View File

@@ -662,18 +662,7 @@ type OtherErrorNeedsNote {
} }
type UpdateShotAnnotationReturn { type UpdateShotAnnotationReturn {
value: SuccessfulUpdateUpdateShotAnnotationErrors! shot: ShotGQL
}
union SuccessfulUpdateUpdateShotAnnotationErrors =
SuccessfulUpdate
| UpdateShotAnnotationErrors
type SuccessfulUpdate {
value: Boolean!
}
type UpdateShotAnnotationErrors {
error: DoesNotOwnShotErr error: DoesNotOwnShotErr
} }