Compare commits
36 Commits
61799bd4de
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
| b6adae4949 | |||
| 459e89d8b8 | |||
| fa2ff19572 | |||
| 428286fa5a | |||
|
|
8771350115 | ||
|
|
f1594b8492 | ||
|
|
3ec3e3d081 | ||
|
|
d2c697e4cb | ||
| 3484af9dde | |||
| bc62cb5e39 | |||
| bc52145a9e | |||
| 5c286f2bcf | |||
| d636c298f8 | |||
| 681320c62d | |||
| 49f409f60b | |||
| e7fc6c147d | |||
| 10c3f6de53 | |||
|
|
d7b1aaee13 | ||
| b477590137 | |||
|
|
d428a8caa2 | ||
| 48207e12ee | |||
|
|
1d403f8155 | ||
| 6758f3e77a | |||
|
|
79979b001a | ||
| 49fbebd0c2 | |||
| 9219451c8d | |||
| 42601f9587 | |||
| acfb750265 | |||
| ffa96a24c3 | |||
| 5b73dd3a83 | |||
| d1bc29b41b | |||
| 853769e183 | |||
| 84524d165d | |||
|
|
f4c5fcedd6 | ||
| 07ca121a3e | |||
|
|
66fb4d3dcc |
677
src/index.tsx
677
src/index.tsx
File diff suppressed because it is too large
Load Diff
@@ -42,6 +42,8 @@ fragment VideoCardFields on VideoGQL {
|
|||||||
id
|
id
|
||||||
lastIntendedSegmentBound
|
lastIntendedSegmentBound
|
||||||
streamSegmentType
|
streamSegmentType
|
||||||
|
isCompleted
|
||||||
|
lastSegmentUploadedAt
|
||||||
}
|
}
|
||||||
tableSize
|
tableSize
|
||||||
pocketSize
|
pocketSize
|
||||||
@@ -146,5 +148,6 @@ query GetVideoFeed(
|
|||||||
endCursor
|
endCursor
|
||||||
}
|
}
|
||||||
hasFollowing
|
hasFollowing
|
||||||
|
followingCount
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -56,6 +56,7 @@ query GetDrillRunLeaderboard(
|
|||||||
video {
|
video {
|
||||||
tableSize
|
tableSize
|
||||||
pocketSize
|
pocketSize
|
||||||
|
createdAt
|
||||||
}
|
}
|
||||||
user {
|
user {
|
||||||
id
|
id
|
||||||
|
|||||||
@@ -44,12 +44,20 @@ query GetAvailableSubscriptionOptions {
|
|||||||
active
|
active
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
appleIap {
|
||||||
|
enabled
|
||||||
|
proMonthlyProductId
|
||||||
|
productIds
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
query GetSubscriptionStatus {
|
query GetSubscriptionStatus {
|
||||||
getUserSubscriptionStatus {
|
getUserSubscriptionStatus {
|
||||||
hasActiveSubscription
|
hasActiveSubscription
|
||||||
|
entitlementSource
|
||||||
|
entitlementStartsAt
|
||||||
|
entitlementEndsAt
|
||||||
subscriptionStatus
|
subscriptionStatus
|
||||||
currentPeriodStart
|
currentPeriodStart
|
||||||
currentPeriodEnd
|
currentPeriodEnd
|
||||||
@@ -59,9 +67,35 @@ query GetSubscriptionStatus {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
query GetAppleAppAccountToken {
|
||||||
|
getAppleAppAccountToken
|
||||||
|
}
|
||||||
|
|
||||||
|
mutation SyncAppleSubscription($signedTransactionInfo: String!) {
|
||||||
|
syncAppleSubscription(
|
||||||
|
input: { signedTransactionInfo: $signedTransactionInfo }
|
||||||
|
) {
|
||||||
|
ok
|
||||||
|
errorCode
|
||||||
|
errorMessage
|
||||||
|
hasActiveSubscription
|
||||||
|
entitlementSource
|
||||||
|
entitlementStartsAt
|
||||||
|
entitlementEndsAt
|
||||||
|
appleStatus
|
||||||
|
originalTransactionId
|
||||||
|
latestTransactionId
|
||||||
|
productId
|
||||||
|
expiresAt
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
mutation CancelSubscription {
|
mutation CancelSubscription {
|
||||||
cancelSubscription {
|
cancelSubscription {
|
||||||
hasActiveSubscription
|
hasActiveSubscription
|
||||||
|
entitlementSource
|
||||||
|
entitlementStartsAt
|
||||||
|
entitlementEndsAt
|
||||||
subscriptionStatus
|
subscriptionStatus
|
||||||
currentPeriodStart
|
currentPeriodStart
|
||||||
currentPeriodEnd
|
currentPeriodEnd
|
||||||
|
|||||||
@@ -10,6 +10,11 @@ fragment PlayerSummaryFields on PlayerSummaryGQL {
|
|||||||
score
|
score
|
||||||
longestRun
|
longestRun
|
||||||
runLengths
|
runLengths
|
||||||
|
spinTypeBreakdown {
|
||||||
|
draw
|
||||||
|
center
|
||||||
|
follow
|
||||||
|
}
|
||||||
averageDifficulty
|
averageDifficulty
|
||||||
averageTimeBetweenShots
|
averageTimeBetweenShots
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -177,6 +177,7 @@ mutation editUser(
|
|||||||
$fargoRating: Int
|
$fargoRating: Int
|
||||||
$videosPrivateByDefault: Boolean
|
$videosPrivateByDefault: Boolean
|
||||||
$agreesToMarketing: Boolean
|
$agreesToMarketing: Boolean
|
||||||
|
$bio: String
|
||||||
) {
|
) {
|
||||||
editUser(
|
editUser(
|
||||||
input: {
|
input: {
|
||||||
@@ -184,6 +185,7 @@ mutation editUser(
|
|||||||
fargoRating: $fargoRating
|
fargoRating: $fargoRating
|
||||||
videosPrivateByDefault: $videosPrivateByDefault
|
videosPrivateByDefault: $videosPrivateByDefault
|
||||||
agreesToMarketing: $agreesToMarketing
|
agreesToMarketing: $agreesToMarketing
|
||||||
|
bio: $bio
|
||||||
}
|
}
|
||||||
) {
|
) {
|
||||||
id
|
id
|
||||||
@@ -193,6 +195,7 @@ mutation editUser(
|
|||||||
updatedAt
|
updatedAt
|
||||||
videosPrivateByDefault
|
videosPrivateByDefault
|
||||||
agreesToMarketing
|
agreesToMarketing
|
||||||
|
bio
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -206,6 +209,7 @@ fragment UserFragment on UserGQL {
|
|||||||
username
|
username
|
||||||
isAdmin
|
isAdmin
|
||||||
profileImageUri
|
profileImageUri
|
||||||
|
bio
|
||||||
fargoRating
|
fargoRating
|
||||||
activeVideoId
|
activeVideoId
|
||||||
createdAt
|
createdAt
|
||||||
|
|||||||
30
src/operations/video_export.gql
Normal file
30
src/operations/video_export.gql
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
fragment VideoExportJobFields on VideoExportJobGQL {
|
||||||
|
id
|
||||||
|
videoId
|
||||||
|
mode
|
||||||
|
status
|
||||||
|
shotIds
|
||||||
|
runId
|
||||||
|
downloadUrl
|
||||||
|
fileSizeBytes
|
||||||
|
expiresAt
|
||||||
|
createdAt
|
||||||
|
}
|
||||||
|
|
||||||
|
mutation RequestVideoExport($input: RequestVideoExportInput!) {
|
||||||
|
requestVideoExport(input: $input) {
|
||||||
|
...VideoExportJobFields
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
query VideoExportJob($jobId: Int!) {
|
||||||
|
videoExportJob(jobId: $jobId) {
|
||||||
|
...VideoExportJobFields
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
query MyVideoExports($limit: Int = 30, $offset: Int = 0) {
|
||||||
|
myVideoExports(limit: $limit, offset: $offset) {
|
||||||
|
...VideoExportJobFields
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -67,6 +67,13 @@ mutation GetHlsInitUploadLink($videoId: Int!) {
|
|||||||
... on TooManyInitUploadsErr {
|
... on TooManyInitUploadsErr {
|
||||||
linksRequested
|
linksRequested
|
||||||
}
|
}
|
||||||
|
... on StorageLimitExceededErr {
|
||||||
|
reason
|
||||||
|
tierName
|
||||||
|
retainedStorageUsedBytes
|
||||||
|
retainedStorageLimitBytes
|
||||||
|
remainingStorageBytes
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -108,8 +108,10 @@ type Query {
|
|||||||
): UserRelationshipsResult!
|
): UserRelationshipsResult!
|
||||||
getAvailableSubscriptionOptions: StripeSubscriptionOptionsGQL!
|
getAvailableSubscriptionOptions: StripeSubscriptionOptionsGQL!
|
||||||
getUserSubscriptionStatus: UserSubscriptionStatusGQL!
|
getUserSubscriptionStatus: UserSubscriptionStatusGQL!
|
||||||
|
getResolvedTier: ResolvedTierGQL!
|
||||||
getAppleAppAccountToken: String!
|
getAppleAppAccountToken: String!
|
||||||
getQuotaStatus: QuotaStatusGQL!
|
getQuotaStatus: QuotaStatusGQL!
|
||||||
|
getStorageStatus: StorageStatusGQL
|
||||||
getPlayTime(userId: Int!, filters: VideoFilterInput = null): UserPlayTimeGQL!
|
getPlayTime(userId: Int!, filters: VideoFilterInput = null): UserPlayTimeGQL!
|
||||||
getUserVideos(
|
getUserVideos(
|
||||||
userId: Int = null
|
userId: Int = null
|
||||||
@@ -119,6 +121,8 @@ type Query {
|
|||||||
): VideoHistoryGQL!
|
): VideoHistoryGQL!
|
||||||
getUserTags(includeRetiredTags: Boolean = false): [TagGQL!]!
|
getUserTags(includeRetiredTags: Boolean = false): [TagGQL!]!
|
||||||
getGameTypeTagMetrics(input: GameTypeTagMetricsInput!): [GameTypeTagMetric!]!
|
getGameTypeTagMetrics(input: GameTypeTagMetricsInput!): [GameTypeTagMetric!]!
|
||||||
|
videoExportJob(jobId: Int!): VideoExportJobGQL
|
||||||
|
myVideoExports(limit: Int! = 30, offset: Int! = 0): [VideoExportJobGQL!]!
|
||||||
getVideo(videoId: Int!, debuggingJson: JSON = null): VideoGQL!
|
getVideo(videoId: Int!, debuggingJson: JSON = null): VideoGQL!
|
||||||
getVideos(videoIds: [Int!]!): [VideoGQL!]!
|
getVideos(videoIds: [Int!]!): [VideoGQL!]!
|
||||||
}
|
}
|
||||||
@@ -356,6 +360,7 @@ type UserGQL {
|
|||||||
activeVideoId: Int
|
activeVideoId: Int
|
||||||
stripeCustomerId: String
|
stripeCustomerId: String
|
||||||
profileImageUri: String
|
profileImageUri: String
|
||||||
|
bio: String
|
||||||
createdAt: DateTime
|
createdAt: DateTime
|
||||||
updatedAt: DateTime
|
updatedAt: DateTime
|
||||||
videosPrivateByDefault: Boolean
|
videosPrivateByDefault: Boolean
|
||||||
@@ -529,6 +534,7 @@ type UploadStreamGQL {
|
|||||||
initPlaylistUploadStatus: InitPlaylistUploadStatusEnum
|
initPlaylistUploadStatus: InitPlaylistUploadStatusEnum
|
||||||
lowestUnuploadedSegmentIndex: Int!
|
lowestUnuploadedSegmentIndex: Int!
|
||||||
uploadCompletionCursor: Int!
|
uploadCompletionCursor: Int!
|
||||||
|
lastSegmentUploadedAt: DateTime
|
||||||
errors: [StreamErrorGQL!]!
|
errors: [StreamErrorGQL!]!
|
||||||
createdAt: DateTime!
|
createdAt: DateTime!
|
||||||
updatedAt: DateTime!
|
updatedAt: DateTime!
|
||||||
@@ -689,10 +695,17 @@ type PlayerSummaryGQL {
|
|||||||
score: Int
|
score: Int
|
||||||
longestRun: Int!
|
longestRun: Int!
|
||||||
runLengths: [Int!]!
|
runLengths: [Int!]!
|
||||||
|
spinTypeBreakdown: SpinTypeBreakdownGQL!
|
||||||
averageDifficulty: Float
|
averageDifficulty: Float
|
||||||
averageTimeBetweenShots: Float
|
averageTimeBetweenShots: Float
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type SpinTypeBreakdownGQL {
|
||||||
|
draw: Int!
|
||||||
|
center: Int!
|
||||||
|
follow: Int!
|
||||||
|
}
|
||||||
|
|
||||||
type DeployedConfigGQL {
|
type DeployedConfigGQL {
|
||||||
allowNewUsers: Boolean!
|
allowNewUsers: Boolean!
|
||||||
firebase: Boolean!
|
firebase: Boolean!
|
||||||
@@ -701,6 +714,7 @@ type DeployedConfigGQL {
|
|||||||
minimumAllowedAppVersion: String!
|
minimumAllowedAppVersion: String!
|
||||||
subscriptionGatingEnabled: Boolean!
|
subscriptionGatingEnabled: Boolean!
|
||||||
quotaEnforcementEnabled: Boolean!
|
quotaEnforcementEnabled: Boolean!
|
||||||
|
storageLimitEnforcementEnabled: Boolean!
|
||||||
bannerMessages: [BannerGQL!]!
|
bannerMessages: [BannerGQL!]!
|
||||||
defaultAndroidRecordingFormat: StreamSegmentTypeEnum!
|
defaultAndroidRecordingFormat: StreamSegmentTypeEnum!
|
||||||
bucketUrl: String!
|
bucketUrl: String!
|
||||||
@@ -725,6 +739,7 @@ type VideoHistoryGQL {
|
|||||||
videos: [VideoGQL!]!
|
videos: [VideoGQL!]!
|
||||||
pageInfo: PageInfoGQL!
|
pageInfo: PageInfoGQL!
|
||||||
hasFollowing: Boolean!
|
hasFollowing: Boolean!
|
||||||
|
followingCount: Int!
|
||||||
}
|
}
|
||||||
|
|
||||||
type PageInfoGQL {
|
type PageInfoGQL {
|
||||||
@@ -852,6 +867,7 @@ enum NotificationTypeEnum {
|
|||||||
REACTION
|
REACTION
|
||||||
FOLLOW
|
FOLLOW
|
||||||
CHALLENGE_INVITE
|
CHALLENGE_INVITE
|
||||||
|
EXPORT_READY
|
||||||
}
|
}
|
||||||
|
|
||||||
input NotificationFilters {
|
input NotificationFilters {
|
||||||
@@ -1026,6 +1042,7 @@ type StripePriceGQL {
|
|||||||
type AppleIapSubscriptionOptionsGQL {
|
type AppleIapSubscriptionOptionsGQL {
|
||||||
enabled: Boolean!
|
enabled: Boolean!
|
||||||
proMonthlyProductId: String
|
proMonthlyProductId: String
|
||||||
|
productIds: [String!]!
|
||||||
}
|
}
|
||||||
|
|
||||||
type UserSubscriptionStatusGQL {
|
type UserSubscriptionStatusGQL {
|
||||||
@@ -1060,6 +1077,17 @@ enum StripeSubscriptionStatusEnum {
|
|||||||
PAUSED
|
PAUSED
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type ResolvedTierGQL {
|
||||||
|
tierName: String!
|
||||||
|
tierDisplayName: String!
|
||||||
|
hasActiveSubscription: Boolean!
|
||||||
|
entitlementSource: EntitlementSourceTypeEnum
|
||||||
|
entitlementStatus: String
|
||||||
|
entitlementStartsAt: DateTime
|
||||||
|
entitlementEndsAt: DateTime
|
||||||
|
capabilities: [String!]!
|
||||||
|
}
|
||||||
|
|
||||||
type QuotaStatusGQL {
|
type QuotaStatusGQL {
|
||||||
tierName: String!
|
tierName: String!
|
||||||
periodStart: DateTime!
|
periodStart: DateTime!
|
||||||
@@ -1084,6 +1112,27 @@ type QuotaBucketStatusGQL {
|
|||||||
canUpload: Boolean!
|
canUpload: Boolean!
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type StorageStatusGQL {
|
||||||
|
userId: Int!
|
||||||
|
tierName: String!
|
||||||
|
retainedStorageUsedBytes: BigInt!
|
||||||
|
retainedStorageLimitBytes: BigInt
|
||||||
|
isUnlimited: Boolean!
|
||||||
|
policyConfigured: Boolean!
|
||||||
|
remainingStorageBytes: BigInt
|
||||||
|
storageUsageRatio: Float
|
||||||
|
isNearLimit: Boolean!
|
||||||
|
isOverLimit: Boolean!
|
||||||
|
usageCalculated: Boolean!
|
||||||
|
usageSource: String
|
||||||
|
lastCalculatedAt: DateTime
|
||||||
|
}
|
||||||
|
|
||||||
|
"""
|
||||||
|
Integer value that can exceed GraphQL Int's 32-bit range.
|
||||||
|
"""
|
||||||
|
scalar BigInt
|
||||||
|
|
||||||
type UserPlayTimeGQL {
|
type UserPlayTimeGQL {
|
||||||
totalSeconds: Float!
|
totalSeconds: Float!
|
||||||
}
|
}
|
||||||
@@ -1119,6 +1168,34 @@ input GameTypeTagMetricsInput {
|
|||||||
includePrivate: IncludePrivateEnum! = MINE
|
includePrivate: IncludePrivateEnum! = MINE
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type VideoExportJobGQL {
|
||||||
|
id: Int!
|
||||||
|
videoId: Int!
|
||||||
|
mode: VideoExportModeEnum!
|
||||||
|
status: VideoExportStatusEnum!
|
||||||
|
shotIds: [Int!]
|
||||||
|
runId: Int
|
||||||
|
downloadUrl: String
|
||||||
|
fileSizeBytes: Int
|
||||||
|
expiresAt: DateTime
|
||||||
|
createdAt: DateTime
|
||||||
|
}
|
||||||
|
|
||||||
|
enum VideoExportModeEnum {
|
||||||
|
FULL_SESSION
|
||||||
|
SHOTS
|
||||||
|
RUN
|
||||||
|
}
|
||||||
|
|
||||||
|
enum VideoExportStatusEnum {
|
||||||
|
CREATED
|
||||||
|
QUEUED
|
||||||
|
RUNNING
|
||||||
|
SUCCEEDED
|
||||||
|
FAILED
|
||||||
|
EXPIRED
|
||||||
|
}
|
||||||
|
|
||||||
"""
|
"""
|
||||||
The `JSON` scalar type represents JSON values as specified by [ECMA-404](https://ecma-international.org/wp-content/uploads/ECMA-404_2nd_edition_december_2017.pdf).
|
The `JSON` scalar type represents JSON values as specified by [ECMA-404](https://ecma-international.org/wp-content/uploads/ECMA-404_2nd_edition_december_2017.pdf).
|
||||||
"""
|
"""
|
||||||
@@ -1220,6 +1297,7 @@ type Mutation {
|
|||||||
feedback: String = null
|
feedback: String = null
|
||||||
metadata: CancellationFeedbackMetadataInput = null
|
metadata: CancellationFeedbackMetadataInput = null
|
||||||
): Boolean!
|
): Boolean!
|
||||||
|
requestVideoExport(input: RequestVideoExportInput!): VideoExportJobGQL!
|
||||||
findPrerecordTableLayout(b64Image: String!, videoId: Int!): HomographyInfoGQL
|
findPrerecordTableLayout(b64Image: String!, videoId: Int!): HomographyInfoGQL
|
||||||
createUploadStream(
|
createUploadStream(
|
||||||
videoMetadata: VideoMetadataInput!
|
videoMetadata: VideoMetadataInput!
|
||||||
@@ -1355,6 +1433,7 @@ input EditUserInputGQL {
|
|||||||
fargoRating: Int = null
|
fargoRating: Int = null
|
||||||
videosPrivateByDefault: Boolean = null
|
videosPrivateByDefault: Boolean = null
|
||||||
agreesToMarketing: Boolean = null
|
agreesToMarketing: Boolean = null
|
||||||
|
bio: String = null
|
||||||
}
|
}
|
||||||
|
|
||||||
type SyncAppleSubscriptionResultGQL {
|
type SyncAppleSubscriptionResultGQL {
|
||||||
@@ -1401,6 +1480,13 @@ input CancellationFeedbackMetadataInput {
|
|||||||
platform: String = null
|
platform: String = null
|
||||||
}
|
}
|
||||||
|
|
||||||
|
input RequestVideoExportInput {
|
||||||
|
videoId: Int!
|
||||||
|
mode: VideoExportModeEnum!
|
||||||
|
shotIds: [Int!] = null
|
||||||
|
runId: Int = null
|
||||||
|
}
|
||||||
|
|
||||||
type CreateUploadStreamReturn {
|
type CreateUploadStreamReturn {
|
||||||
videoId: Int!
|
videoId: Int!
|
||||||
}
|
}
|
||||||
@@ -1440,10 +1526,10 @@ type GetUploadLinkReturn {
|
|||||||
union UploadLinkGetUploadLinkErrors = UploadLink | GetUploadLinkErrors
|
union UploadLinkGetUploadLinkErrors = UploadLink | GetUploadLinkErrors
|
||||||
|
|
||||||
type GetUploadLinkErrors {
|
type GetUploadLinkErrors {
|
||||||
error: MustHaveSetForUploadLinkErrSegmentAlreadyUploadedErrProcessingFailedErrNoInitForChunkedUploadErrTooManyProfileImageUploadsErrInitUploadAlreadyCompletedErrTooManyInitUploadsErr!
|
error: MustHaveSetForUploadLinkErrSegmentAlreadyUploadedErrProcessingFailedErrNoInitForChunkedUploadErrTooManyProfileImageUploadsErrInitUploadAlreadyCompletedErrTooManyInitUploadsErrStorageLimitExceededErr!
|
||||||
}
|
}
|
||||||
|
|
||||||
union MustHaveSetForUploadLinkErrSegmentAlreadyUploadedErrProcessingFailedErrNoInitForChunkedUploadErrTooManyProfileImageUploadsErrInitUploadAlreadyCompletedErrTooManyInitUploadsErr =
|
union MustHaveSetForUploadLinkErrSegmentAlreadyUploadedErrProcessingFailedErrNoInitForChunkedUploadErrTooManyProfileImageUploadsErrInitUploadAlreadyCompletedErrTooManyInitUploadsErrStorageLimitExceededErr =
|
||||||
MustHaveSetForUploadLinkErr
|
MustHaveSetForUploadLinkErr
|
||||||
| SegmentAlreadyUploadedErr
|
| SegmentAlreadyUploadedErr
|
||||||
| ProcessingFailedErr
|
| ProcessingFailedErr
|
||||||
@@ -1451,6 +1537,7 @@ union MustHaveSetForUploadLinkErrSegmentAlreadyUploadedErrProcessingFailedErrNoI
|
|||||||
| TooManyProfileImageUploadsErr
|
| TooManyProfileImageUploadsErr
|
||||||
| InitUploadAlreadyCompletedErr
|
| InitUploadAlreadyCompletedErr
|
||||||
| TooManyInitUploadsErr
|
| TooManyInitUploadsErr
|
||||||
|
| StorageLimitExceededErr
|
||||||
|
|
||||||
type MustHaveSetForUploadLinkErr {
|
type MustHaveSetForUploadLinkErr {
|
||||||
resolution: Boolean
|
resolution: Boolean
|
||||||
@@ -1476,3 +1563,11 @@ type InitUploadAlreadyCompletedErr {
|
|||||||
type TooManyInitUploadsErr {
|
type TooManyInitUploadsErr {
|
||||||
linksRequested: Int!
|
linksRequested: Int!
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type StorageLimitExceededErr {
|
||||||
|
reason: String!
|
||||||
|
tierName: String!
|
||||||
|
retainedStorageUsedBytes: BigInt!
|
||||||
|
retainedStorageLimitBytes: BigInt
|
||||||
|
remainingStorageBytes: BigInt
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user