Compare commits

...

5 Commits

Author SHA1 Message Date
2718c29230 Add resolved tier query
All checks were successful
Tests / Tests (pull_request) Successful in 12s
2026-06-30 15:58:04 -07:00
524dcf77b4 Add storage status readiness query fields 2026-06-30 14:59:32 -07:00
7b1aa11071 Merge remote-tracking branch 'origin/loewy/storage-status-readiness-gql' into loewy/storage-status-card-readiness 2026-06-30 14:36:33 -07:00
c388932271 Add storage usage readiness fields 2026-06-26 11:36:02 -07:00
4f661d3c55 Add storage status query
All checks were successful
Tests / Tests (pull_request) Successful in 11s
2026-06-26 09:29:40 -07:00
3 changed files with 241 additions and 0 deletions

View File

@@ -3391,12 +3391,16 @@ export type StorageStatusGql = {
isNearLimit: Scalars["Boolean"]["output"]; isNearLimit: Scalars["Boolean"]["output"];
isOverLimit: Scalars["Boolean"]["output"]; isOverLimit: Scalars["Boolean"]["output"];
isUnlimited: Scalars["Boolean"]["output"]; isUnlimited: Scalars["Boolean"]["output"];
lastCalculatedAt?: Maybe<Scalars["DateTime"]["output"]>;
policyConfigured: Scalars["Boolean"]["output"]; policyConfigured: Scalars["Boolean"]["output"];
remainingStorageBytes?: Maybe<Scalars["BigInt"]["output"]>; remainingStorageBytes?: Maybe<Scalars["BigInt"]["output"]>;
retainedStorageLimitBytes?: Maybe<Scalars["BigInt"]["output"]>; retainedStorageLimitBytes?: Maybe<Scalars["BigInt"]["output"]>;
retainedStorageUsedBytes: Scalars["BigInt"]["output"]; retainedStorageUsedBytes: Scalars["BigInt"]["output"];
storageUsageRatio?: Maybe<Scalars["Float"]["output"]>; storageUsageRatio?: Maybe<Scalars["Float"]["output"]>;
tierName: Scalars["String"]["output"]; tierName: Scalars["String"]["output"];
usageCalculated: Scalars["Boolean"]["output"];
usageEstimated: Scalars["Boolean"]["output"];
usageSource?: Maybe<Scalars["String"]["output"]>;
userId: Scalars["Int"]["output"]; userId: Scalars["Int"]["output"];
}; };
@@ -5128,6 +5132,45 @@ export type GetSubscriptionStatusQuery = {
}; };
}; };
export type GetResolvedTierQueryVariables = Exact<{ [key: string]: never }>;
export type GetResolvedTierQuery = {
__typename?: "Query";
getResolvedTier: {
__typename?: "ResolvedTierGQL";
tierName: string;
tierDisplayName: string;
hasActiveSubscription: boolean;
entitlementSource?: EntitlementSourceTypeEnum | null;
entitlementStatus?: string | null;
entitlementStartsAt?: any | null;
entitlementEndsAt?: any | null;
capabilities: Array<string>;
};
};
export type GetStorageStatusQueryVariables = Exact<{ [key: string]: never }>;
export type GetStorageStatusQuery = {
__typename?: "Query";
getStorageStatus?: {
__typename?: "StorageStatusGQL";
userId: number;
tierName: string;
retainedStorageUsedBytes: any;
retainedStorageLimitBytes?: any | null;
isUnlimited: boolean;
policyConfigured: boolean;
remainingStorageBytes?: any | null;
storageUsageRatio?: number | null;
isNearLimit: boolean;
isOverLimit: boolean;
usageCalculated: boolean;
usageSource?: string | null;
lastCalculatedAt?: any | null;
} | null;
};
export type GetAppleAppAccountTokenQueryVariables = Exact<{ export type GetAppleAppAccountTokenQueryVariables = Exact<{
[key: string]: never; [key: string]: never;
}>; }>;
@@ -10913,6 +10956,169 @@ export type GetSubscriptionStatusQueryResult = Apollo.QueryResult<
GetSubscriptionStatusQuery, GetSubscriptionStatusQuery,
GetSubscriptionStatusQueryVariables GetSubscriptionStatusQueryVariables
>; >;
export const GetResolvedTierDocument = gql`
query GetResolvedTier {
getResolvedTier {
tierName
tierDisplayName
hasActiveSubscription
entitlementSource
entitlementStatus
entitlementStartsAt
entitlementEndsAt
capabilities
}
}
`;
/**
* __useGetResolvedTierQuery__
*
* To run a query within a React component, call `useGetResolvedTierQuery` and pass it any options that fit your needs.
* When your component renders, `useGetResolvedTierQuery` 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 } = useGetResolvedTierQuery({
* variables: {
* },
* });
*/
export function useGetResolvedTierQuery(
baseOptions?: Apollo.QueryHookOptions<
GetResolvedTierQuery,
GetResolvedTierQueryVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useQuery<GetResolvedTierQuery, GetResolvedTierQueryVariables>(
GetResolvedTierDocument,
options,
);
}
export function useGetResolvedTierLazyQuery(
baseOptions?: Apollo.LazyQueryHookOptions<
GetResolvedTierQuery,
GetResolvedTierQueryVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useLazyQuery<
GetResolvedTierQuery,
GetResolvedTierQueryVariables
>(GetResolvedTierDocument, options);
}
export function useGetResolvedTierSuspenseQuery(
baseOptions?: Apollo.SuspenseQueryHookOptions<
GetResolvedTierQuery,
GetResolvedTierQueryVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useSuspenseQuery<
GetResolvedTierQuery,
GetResolvedTierQueryVariables
>(GetResolvedTierDocument, options);
}
export type GetResolvedTierQueryHookResult = ReturnType<
typeof useGetResolvedTierQuery
>;
export type GetResolvedTierLazyQueryHookResult = ReturnType<
typeof useGetResolvedTierLazyQuery
>;
export type GetResolvedTierSuspenseQueryHookResult = ReturnType<
typeof useGetResolvedTierSuspenseQuery
>;
export type GetResolvedTierQueryResult = Apollo.QueryResult<
GetResolvedTierQuery,
GetResolvedTierQueryVariables
>;
export const GetStorageStatusDocument = gql`
query GetStorageStatus {
getStorageStatus {
userId
tierName
retainedStorageUsedBytes
retainedStorageLimitBytes
isUnlimited
policyConfigured
remainingStorageBytes
storageUsageRatio
isNearLimit
isOverLimit
usageCalculated
usageSource
lastCalculatedAt
}
}
`;
/**
* __useGetStorageStatusQuery__
*
* To run a query within a React component, call `useGetStorageStatusQuery` and pass it any options that fit your needs.
* When your component renders, `useGetStorageStatusQuery` 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 } = useGetStorageStatusQuery({
* variables: {
* },
* });
*/
export function useGetStorageStatusQuery(
baseOptions?: Apollo.QueryHookOptions<
GetStorageStatusQuery,
GetStorageStatusQueryVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useQuery<GetStorageStatusQuery, GetStorageStatusQueryVariables>(
GetStorageStatusDocument,
options,
);
}
export function useGetStorageStatusLazyQuery(
baseOptions?: Apollo.LazyQueryHookOptions<
GetStorageStatusQuery,
GetStorageStatusQueryVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useLazyQuery<
GetStorageStatusQuery,
GetStorageStatusQueryVariables
>(GetStorageStatusDocument, options);
}
export function useGetStorageStatusSuspenseQuery(
baseOptions?: Apollo.SuspenseQueryHookOptions<
GetStorageStatusQuery,
GetStorageStatusQueryVariables
>,
) {
const options = { ...defaultOptions, ...baseOptions };
return Apollo.useSuspenseQuery<
GetStorageStatusQuery,
GetStorageStatusQueryVariables
>(GetStorageStatusDocument, options);
}
export type GetStorageStatusQueryHookResult = ReturnType<
typeof useGetStorageStatusQuery
>;
export type GetStorageStatusLazyQueryHookResult = ReturnType<
typeof useGetStorageStatusLazyQuery
>;
export type GetStorageStatusSuspenseQueryHookResult = ReturnType<
typeof useGetStorageStatusSuspenseQuery
>;
export type GetStorageStatusQueryResult = Apollo.QueryResult<
GetStorageStatusQuery,
GetStorageStatusQueryVariables
>;
export const GetAppleAppAccountTokenDocument = gql` export const GetAppleAppAccountTokenDocument = gql`
query GetAppleAppAccountToken { query GetAppleAppAccountToken {
getAppleAppAccountToken getAppleAppAccountToken

View File

@@ -67,6 +67,37 @@ query GetSubscriptionStatus {
} }
} }
query GetResolvedTier {
getResolvedTier {
tierName
tierDisplayName
hasActiveSubscription
entitlementSource
entitlementStatus
entitlementStartsAt
entitlementEndsAt
capabilities
}
}
query GetStorageStatus {
getStorageStatus {
userId
tierName
retainedStorageUsedBytes
retainedStorageLimitBytes
isUnlimited
policyConfigured
remainingStorageBytes
storageUsageRatio
isNearLimit
isOverLimit
usageCalculated
usageSource
lastCalculatedAt
}
}
query GetAppleAppAccountToken { query GetAppleAppAccountToken {
getAppleAppAccountToken getAppleAppAccountToken
} }

View File

@@ -1119,6 +1119,10 @@ type StorageStatusGQL {
storageUsageRatio: Float storageUsageRatio: Float
isNearLimit: Boolean! isNearLimit: Boolean!
isOverLimit: Boolean! isOverLimit: Boolean!
usageCalculated: Boolean!
usageSource: String
lastCalculatedAt: DateTime
usageEstimated: Boolean!
} }
""" """