From 1af845e4e5cb37bb3c5518538ca74a2038e4f525 Mon Sep 17 00:00:00 2001 From: Hongbo Wu Date: Wed, 7 Jun 2023 21:50:43 +0800 Subject: [PATCH] feat: add bulk action api schema --- packages/api/src/generated/graphql.ts | 33 ++++++++++++++++++++--- packages/api/src/generated/schema.graphql | 23 +++++++++++++++- packages/api/src/schema.ts | 23 +++++++++++++++- 3 files changed, 73 insertions(+), 6 deletions(-) diff --git a/packages/api/src/generated/graphql.ts b/packages/api/src/generated/graphql.ts index e722f0d57..ef690965c 100644 --- a/packages/api/src/generated/graphql.ts +++ b/packages/api/src/generated/graphql.ts @@ -222,6 +222,13 @@ export type ArticlesSuccess = { pageInfo: PageInfo; }; +export type BulkAction = { + itemIds: Array; + itemType: BulkActionItemType; + labelIds?: InputMaybe>; + type: BulkActionType; +}; + export type BulkActionError = { __typename?: 'BulkActionError'; errorCodes: Array; @@ -231,6 +238,18 @@ export enum BulkActionErrorCode { Unauthorized = 'UNAUTHORIZED' } +export type BulkActionInput = { + actions: Array; + query?: InputMaybe; +}; + +export enum BulkActionItemType { + Highlight = 'HIGHLIGHT', + Label = 'LABEL', + Page = 'PAGE', + Subscription = 'SUBSCRIPTION' +} + export type BulkActionResult = BulkActionError | BulkActionSuccess; export type BulkActionSuccess = { @@ -239,8 +258,10 @@ export type BulkActionSuccess = { }; export enum BulkActionType { + AddLabels = 'ADD_LABELS', Archive = 'ARCHIVE', - Delete = 'DELETE' + Delete = 'DELETE', + MarkAsRead = 'MARK_AS_READ' } export enum ContentReader { @@ -1298,8 +1319,7 @@ export type MutationAddPopularReadArgs = { export type MutationBulkActionArgs = { - action: BulkActionType; - query?: InputMaybe; + input: BulkActionInput; }; @@ -3293,8 +3313,11 @@ export type ResolversTypes = { ArticlesResult: ResolversTypes['ArticlesError'] | ResolversTypes['ArticlesSuccess']; ArticlesSuccess: ResolverTypeWrapper; Boolean: ResolverTypeWrapper; + BulkAction: BulkAction; BulkActionError: ResolverTypeWrapper; BulkActionErrorCode: BulkActionErrorCode; + BulkActionInput: BulkActionInput; + BulkActionItemType: BulkActionItemType; BulkActionResult: ResolversTypes['BulkActionError'] | ResolversTypes['BulkActionSuccess']; BulkActionSuccess: ResolverTypeWrapper; BulkActionType: BulkActionType; @@ -3773,7 +3796,9 @@ export type ResolversParentTypes = { ArticlesResult: ResolversParentTypes['ArticlesError'] | ResolversParentTypes['ArticlesSuccess']; ArticlesSuccess: ArticlesSuccess; Boolean: Scalars['Boolean']; + BulkAction: BulkAction; BulkActionError: BulkActionError; + BulkActionInput: BulkActionInput; BulkActionResult: ResolversParentTypes['BulkActionError'] | ResolversParentTypes['BulkActionSuccess']; BulkActionSuccess: BulkActionSuccess; CreateArticleError: CreateArticleError; @@ -5012,7 +5037,7 @@ export type MoveLabelSuccessResolvers = { addPopularRead?: Resolver>; - bulkAction?: Resolver>; + bulkAction?: Resolver>; createArticle?: Resolver>; createArticleSavingRequest?: Resolver>; createGroup?: Resolver>; diff --git a/packages/api/src/generated/schema.graphql b/packages/api/src/generated/schema.graphql index e8d6cb93c..faca55a26 100644 --- a/packages/api/src/generated/schema.graphql +++ b/packages/api/src/generated/schema.graphql @@ -183,6 +183,13 @@ type ArticlesSuccess { pageInfo: PageInfo! } +input BulkAction { + itemIds: [ID!]! + itemType: BulkActionItemType! + labelIds: [ID!] + type: BulkActionType! +} + type BulkActionError { errorCodes: [BulkActionErrorCode!]! } @@ -191,6 +198,18 @@ enum BulkActionErrorCode { UNAUTHORIZED } +input BulkActionInput { + actions: [BulkAction!]! + query: String +} + +enum BulkActionItemType { + HIGHLIGHT + LABEL + PAGE + SUBSCRIPTION +} + union BulkActionResult = BulkActionError | BulkActionSuccess type BulkActionSuccess { @@ -198,8 +217,10 @@ type BulkActionSuccess { } enum BulkActionType { + ADD_LABELS ARCHIVE DELETE + MARK_AS_READ } enum ContentReader { @@ -1090,7 +1111,7 @@ type MoveLabelSuccess { type Mutation { addPopularRead(name: String!): AddPopularReadResult! - bulkAction(action: BulkActionType!, query: String): BulkActionResult! + bulkAction(input: BulkActionInput!): BulkActionResult! createArticle(input: CreateArticleInput!): CreateArticleResult! createArticleSavingRequest(input: CreateArticleSavingRequestInput!): CreateArticleSavingRequestResult! createGroup(input: CreateGroupInput!): CreateGroupResult! diff --git a/packages/api/src/schema.ts b/packages/api/src/schema.ts index 5b9801aa9..ee6c2d6dc 100755 --- a/packages/api/src/schema.ts +++ b/packages/api/src/schema.ts @@ -2416,6 +2416,27 @@ const schema = gql` enum BulkActionType { DELETE ARCHIVE + MARK_AS_READ + ADD_LABELS + } + + input BulkAction { + itemType: BulkActionItemType! + type: BulkActionType! + itemIds: [ID!]! + labelIds: [ID!] + } + + enum BulkActionItemType { + PAGE + HIGHLIGHT + LABEL + SUBSCRIPTION + } + + input BulkActionInput { + query: String + actions: [BulkAction!]! } union BulkActionResult = BulkActionSuccess | BulkActionError @@ -2538,7 +2559,7 @@ const schema = gql` contentType: String! ): UploadImportFileResult! markEmailAsItem(recentEmailId: ID!): MarkEmailAsItemResult! - bulkAction(query: String, action: BulkActionType!): BulkActionResult! + bulkAction(input: BulkActionInput!): BulkActionResult! importFromIntegration(integrationId: ID!): ImportFromIntegrationResult! }