Compare commits

..

8 Commits

Author SHA1 Message Date
9f5fcc066e Merge pull request 'Create subscription operations' (#197) from loewy/create-sub-operations into master
Reviewed-on: #197
2025-08-07 13:06:08 -06:00
dfb0361e12 Merge branch 'master' into loewy/create-sub-operations
All checks were successful
Tests / Tests (pull_request) Successful in 10s
2025-08-07 12:59:54 -06:00
01fb113e1c Merge pull request 'DeleteUser operation' (#195) from loewy/delete-user-operation into master
Reviewed-on: #195
2025-07-11 12:18:31 -06:00
c660ed54cd delete user mutation
All checks were successful
Tests / Tests (pull_request) Successful in 7s
2025-07-11 11:17:25 -07:00
b5fd2e2183 Merge pull request 'Create subscription' (#194) from loewy/add-stripe-stuff into master
Reviewed-on: #194
2025-07-09 12:45:03 -06:00
ddee57f4c2 create sub
All checks were successful
Tests / Tests (pull_request) Successful in 56s
2025-07-09 11:41:57 -07:00
a497abd44d create sub operations
All checks were successful
Tests / Tests (pull_request) Successful in 11s
2025-07-09 11:31:26 -07:00
49d43b2703 Merge pull request 'Create delete user' (#192) from kat/delete_user into master
Reviewed-on: #192
2025-07-09 12:04:03 -06:00
4 changed files with 280 additions and 0 deletions

View File

@@ -164,6 +164,12 @@ export type CreateBucketSetInput = {
keyName: Scalars["String"]["input"];
};
export type CreateSubscriptionResultGql = {
__typename?: "CreateSubscriptionResultGQL";
checkoutUrl: Scalars["String"]["output"];
sessionId: Scalars["String"]["output"];
};
export type CreateUploadStreamReturn = {
__typename?: "CreateUploadStreamReturn";
videoId: Scalars["Int"]["output"];
@@ -2272,6 +2278,7 @@ export type Mutation = {
addAnnotationToShot: AddShotAnnotationReturn;
commentOnVideo: Scalars["Boolean"]["output"];
createBucketSet: BucketSetGql;
createSubscription: CreateSubscriptionResultGql;
createUploadStream: CreateUploadStreamReturn;
deleteComment: Scalars["Boolean"]["output"];
deleteTags: Scalars["Boolean"]["output"];
@@ -2312,6 +2319,10 @@ export type MutationCreateBucketSetArgs = {
params: CreateBucketSetInput;
};
export type MutationCreateSubscriptionArgs = {
priceId: Scalars["String"]["input"];
};
export type MutationCreateUploadStreamArgs = {
videoMetadata: VideoMetadataInput;
};
@@ -3885,6 +3896,47 @@ export type EnsureStripeCustomerExistsMutation = {
};
};
export type CreateSubscriptionMutationVariables = Exact<{
priceId: Scalars["String"]["input"];
}>;
export type CreateSubscriptionMutation = {
__typename?: "Mutation";
createSubscription: {
__typename?: "CreateSubscriptionResultGQL";
checkoutUrl: string;
sessionId: string;
};
};
export type GetAvailableSubscriptionOptionsQueryVariables = Exact<{
[key: string]: never;
}>;
export type GetAvailableSubscriptionOptionsQuery = {
__typename?: "Query";
getAvailableSubscriptionOptions: {
__typename?: "StripeSubscriptionOptionsGQL";
products: Array<{
__typename?: "StripeProductGQL";
id: string;
name: string;
description?: string | null;
active: boolean;
prices: Array<{
__typename?: "StripePriceGQL";
id: string;
currency: string;
unitAmount?: number | null;
recurringInterval?: string | null;
recurringIntervalCount?: number | null;
type: string;
active: boolean;
}>;
}>;
};
};
export type ReactToVideoMutationVariables = Exact<{
videoId: Scalars["Int"]["input"];
reaction?: InputMaybe<ReactionEnum>;
@@ -4700,6 +4752,13 @@ export type EditUserMutation = {
};
};
export type DeleteUserMutationVariables = Exact<{ [key: string]: never }>;
export type DeleteUserMutation = {
__typename?: "Mutation";
deleteUser: boolean;
};
export type UserFragmentFragment = {
__typename?: "UserGQL";
id: number;
@@ -6751,6 +6810,143 @@ export type EnsureStripeCustomerExistsMutationOptions =
EnsureStripeCustomerExistsMutation,
EnsureStripeCustomerExistsMutationVariables
>;
export const CreateSubscriptionDocument = gql`
mutation CreateSubscription($priceId: String!) {
createSubscription(priceId: $priceId) {
checkoutUrl
sessionId
}
}
`;
export type CreateSubscriptionMutationFn = Apollo.MutationFunction<
CreateSubscriptionMutation,
CreateSubscriptionMutationVariables
>;
/**
* __useCreateSubscriptionMutation__
*
* To run a mutation, you first call `useCreateSubscriptionMutation` within a React component and pass it any options that fit your needs.
* When your component renders, `useCreateSubscriptionMutation` 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 [createSubscriptionMutation, { data, loading, error }] = useCreateSubscriptionMutation({
* variables: {
* priceId: // value for 'priceId'
* },
* });
*/
export function useCreateSubscriptionMutation(
baseOptions?: Apollo.MutationHookOptions<
CreateSubscriptionMutation,
CreateSubscriptionMutationVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useMutation<
CreateSubscriptionMutation,
CreateSubscriptionMutationVariables
>(CreateSubscriptionDocument, options);
}
export type CreateSubscriptionMutationHookResult = ReturnType<
typeof useCreateSubscriptionMutation
>;
export type CreateSubscriptionMutationResult =
Apollo.MutationResult<CreateSubscriptionMutation>;
export type CreateSubscriptionMutationOptions = Apollo.BaseMutationOptions<
CreateSubscriptionMutation,
CreateSubscriptionMutationVariables
>;
export const GetAvailableSubscriptionOptionsDocument = gql`
query GetAvailableSubscriptionOptions {
getAvailableSubscriptionOptions {
products {
id
name
description
active
prices {
id
currency
unitAmount
recurringInterval
recurringIntervalCount
type
active
}
}
}
}
`;
/**
* __useGetAvailableSubscriptionOptionsQuery__
*
* To run a query within a React component, call `useGetAvailableSubscriptionOptionsQuery` and pass it any options that fit your needs.
* When your component renders, `useGetAvailableSubscriptionOptionsQuery` 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 } = useGetAvailableSubscriptionOptionsQuery({
* variables: {
* },
* });
*/
export function useGetAvailableSubscriptionOptionsQuery(
baseOptions?: Apollo.QueryHookOptions<
GetAvailableSubscriptionOptionsQuery,
GetAvailableSubscriptionOptionsQueryVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useQuery<
GetAvailableSubscriptionOptionsQuery,
GetAvailableSubscriptionOptionsQueryVariables
>(GetAvailableSubscriptionOptionsDocument, options);
}
export function useGetAvailableSubscriptionOptionsLazyQuery(
baseOptions?: Apollo.LazyQueryHookOptions<
GetAvailableSubscriptionOptionsQuery,
GetAvailableSubscriptionOptionsQueryVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useLazyQuery<
GetAvailableSubscriptionOptionsQuery,
GetAvailableSubscriptionOptionsQueryVariables
>(GetAvailableSubscriptionOptionsDocument, options);
}
export function useGetAvailableSubscriptionOptionsSuspenseQuery(
baseOptions?: Apollo.SuspenseQueryHookOptions<
GetAvailableSubscriptionOptionsQuery,
GetAvailableSubscriptionOptionsQueryVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useSuspenseQuery<
GetAvailableSubscriptionOptionsQuery,
GetAvailableSubscriptionOptionsQueryVariables
>(GetAvailableSubscriptionOptionsDocument, options);
}
export type GetAvailableSubscriptionOptionsQueryHookResult = ReturnType<
typeof useGetAvailableSubscriptionOptionsQuery
>;
export type GetAvailableSubscriptionOptionsLazyQueryHookResult = ReturnType<
typeof useGetAvailableSubscriptionOptionsLazyQuery
>;
export type GetAvailableSubscriptionOptionsSuspenseQueryHookResult = ReturnType<
typeof useGetAvailableSubscriptionOptionsSuspenseQuery
>;
export type GetAvailableSubscriptionOptionsQueryResult = Apollo.QueryResult<
GetAvailableSubscriptionOptionsQuery,
GetAvailableSubscriptionOptionsQueryVariables
>;
export const ReactToVideoDocument = gql`
mutation ReactToVideo($videoId: Int!, $reaction: ReactionEnum) {
reactToVideo(videoId: $videoId, reaction: $reaction)
@@ -8721,6 +8917,53 @@ export type EditUserMutationOptions = Apollo.BaseMutationOptions<
EditUserMutation,
EditUserMutationVariables
>;
export const DeleteUserDocument = gql`
mutation deleteUser {
deleteUser
}
`;
export type DeleteUserMutationFn = Apollo.MutationFunction<
DeleteUserMutation,
DeleteUserMutationVariables
>;
/**
* __useDeleteUserMutation__
*
* To run a mutation, you first call `useDeleteUserMutation` within a React component and pass it any options that fit your needs.
* When your component renders, `useDeleteUserMutation` 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 [deleteUserMutation, { data, loading, error }] = useDeleteUserMutation({
* variables: {
* },
* });
*/
export function useDeleteUserMutation(
baseOptions?: Apollo.MutationHookOptions<
DeleteUserMutation,
DeleteUserMutationVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useMutation<DeleteUserMutation, DeleteUserMutationVariables>(
DeleteUserDocument,
options,
);
}
export type DeleteUserMutationHookResult = ReturnType<
typeof useDeleteUserMutation
>;
export type DeleteUserMutationResult =
Apollo.MutationResult<DeleteUserMutation>;
export type DeleteUserMutationOptions = Apollo.BaseMutationOptions<
DeleteUserMutation,
DeleteUserMutationVariables
>;
export const GetStreamMonitoringDetailsDocument = gql`
query GetStreamMonitoringDetails($videoId: Int!, $debuggingJson: JSON) {
getVideo(videoId: $videoId, debuggingJson: $debuggingJson) {

View File

@@ -12,3 +12,30 @@ mutation EnsureStripeCustomerExists {
updatedAt
}
}
mutation CreateSubscription($priceId: String!) {
createSubscription(priceId: $priceId) {
checkoutUrl
sessionId
}
}
query GetAvailableSubscriptionOptions {
getAvailableSubscriptionOptions {
products {
id
name
description
active
prices {
id
currency
unitAmount
recurringInterval
recurringIntervalCount
type
active
}
}
}
}

View File

@@ -157,6 +157,10 @@ mutation editUser(
}
}
mutation deleteUser {
deleteUser
}
fragment UserFragment on UserGQL {
id
firebaseUid

View File

@@ -907,6 +907,7 @@ type Mutation {
retireTags(tagIds: [Int!]!): Boolean!
ensureStripeCustomerExists: UserGQL!
deleteUser: Boolean!
createSubscription(priceId: String!): CreateSubscriptionResultGQL!
findPrerecordTableLayout(b64Image: String!, videoId: Int!): HomographyInfoGQL
createUploadStream(
videoMetadata: VideoMetadataInput!
@@ -1016,6 +1017,11 @@ input EditUserInputGQL {
videosPrivateByDefault: Boolean = null
}
type CreateSubscriptionResultGQL {
checkoutUrl: String!
sessionId: String!
}
type CreateUploadStreamReturn {
videoId: Int!
}