Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app/assets/javascripts/work_items/graphql')
-rw-r--r--app/assets/javascripts/work_items/graphql/create_work_item.mutation.graphql13
-rw-r--r--app/assets/javascripts/work_items/graphql/create_work_item_from_task.mutation.graphql9
-rw-r--r--app/assets/javascripts/work_items/graphql/delete_work_item.mutation.graphql5
-rw-r--r--app/assets/javascripts/work_items/graphql/provider.js32
-rw-r--r--app/assets/javascripts/work_items/graphql/resolvers.js29
-rw-r--r--app/assets/javascripts/work_items/graphql/typedefs.graphql56
-rw-r--r--app/assets/javascripts/work_items/graphql/update_work_item.mutation.graphql13
-rw-r--r--app/assets/javascripts/work_items/graphql/widget.fragment.graphql3
-rw-r--r--app/assets/javascripts/work_items/graphql/work_item.fragment.graphql8
-rw-r--r--app/assets/javascripts/work_items/graphql/work_item.query.graphql15
-rw-r--r--app/assets/javascripts/work_items/graphql/work_item_title.subscription.graphql8
11 files changed, 38 insertions, 153 deletions
diff --git a/app/assets/javascripts/work_items/graphql/create_work_item.mutation.graphql b/app/assets/javascripts/work_items/graphql/create_work_item.mutation.graphql
index 9312d1c582b..7f9aaf43068 100644
--- a/app/assets/javascripts/work_items/graphql/create_work_item.mutation.graphql
+++ b/app/assets/javascripts/work_items/graphql/create_work_item.mutation.graphql
@@ -1,18 +1,9 @@
-#import './widget.fragment.graphql'
+#import "./work_item.fragment.graphql"
mutation createWorkItem($input: WorkItemCreateInput!) {
workItemCreate(input: $input) {
workItem {
- id
- title
- workItemType {
- id
- }
- widgets @client {
- nodes {
- ...WidgetBase
- }
- }
+ ...WorkItem
}
}
}
diff --git a/app/assets/javascripts/work_items/graphql/create_work_item_from_task.mutation.graphql b/app/assets/javascripts/work_items/graphql/create_work_item_from_task.mutation.graphql
new file mode 100644
index 00000000000..b25210f5c74
--- /dev/null
+++ b/app/assets/javascripts/work_items/graphql/create_work_item_from_task.mutation.graphql
@@ -0,0 +1,9 @@
+mutation workItemCreateFromTask($input: WorkItemCreateFromTaskInput!) {
+ workItemCreateFromTask(input: $input) {
+ workItem {
+ id
+ descriptionHtml
+ }
+ errors
+ }
+}
diff --git a/app/assets/javascripts/work_items/graphql/delete_work_item.mutation.graphql b/app/assets/javascripts/work_items/graphql/delete_work_item.mutation.graphql
new file mode 100644
index 00000000000..c52c49ec5f6
--- /dev/null
+++ b/app/assets/javascripts/work_items/graphql/delete_work_item.mutation.graphql
@@ -0,0 +1,5 @@
+mutation deleteWorkItem($input: WorkItemDeleteInput!) {
+ workItemDelete(input: $input) {
+ errors
+ }
+}
diff --git a/app/assets/javascripts/work_items/graphql/provider.js b/app/assets/javascripts/work_items/graphql/provider.js
index 28328a840cf..3c2955ce1e2 100644
--- a/app/assets/javascripts/work_items/graphql/provider.js
+++ b/app/assets/javascripts/work_items/graphql/provider.js
@@ -1,41 +1,11 @@
import Vue from 'vue';
import VueApollo from 'vue-apollo';
import createDefaultClient from '~/lib/graphql';
-import workItemQuery from './work_item.query.graphql';
-import { resolvers } from './resolvers';
-import typeDefs from './typedefs.graphql';
export function createApolloProvider() {
Vue.use(VueApollo);
- const defaultClient = createDefaultClient(resolvers, {
- typeDefs,
- cacheConfig: {
- possibleTypes: {
- LocalWorkItemWidget: ['LocalTitleWidget'],
- },
- },
- });
-
- defaultClient.cache.writeQuery({
- query: workItemQuery,
- variables: {
- id: 'gid://gitlab/WorkItem/1',
- },
- data: {
- localWorkItem: {
- __typename: 'LocalWorkItem',
- id: 'gid://gitlab/WorkItem/1',
- type: 'FEATURE',
- // eslint-disable-next-line @gitlab/require-i18n-strings
- title: 'Test Work Item',
- widgets: {
- __typename: 'LocalWorkItemWidgetConnection',
- nodes: [],
- },
- },
- },
- });
+ const defaultClient = createDefaultClient();
return new VueApollo({
defaultClient,
diff --git a/app/assets/javascripts/work_items/graphql/resolvers.js b/app/assets/javascripts/work_items/graphql/resolvers.js
deleted file mode 100644
index fb74e27f840..00000000000
--- a/app/assets/javascripts/work_items/graphql/resolvers.js
+++ /dev/null
@@ -1,29 +0,0 @@
-import workItemQuery from './work_item.query.graphql';
-
-export const resolvers = {
- Mutation: {
- localUpdateWorkItem(_, { input }, { cache }) {
- const workItem = {
- __typename: 'LocalWorkItem',
- type: 'FEATURE',
- id: input.id,
- title: input.title,
- widgets: {
- __typename: 'LocalWorkItemWidgetConnection',
- nodes: [],
- },
- };
-
- cache.writeQuery({
- query: workItemQuery,
- variables: { id: input.id },
- data: { localWorkItem: workItem },
- });
-
- return {
- __typename: 'LocalUpdateWorkItemPayload',
- workItem,
- };
- },
- },
-};
diff --git a/app/assets/javascripts/work_items/graphql/typedefs.graphql b/app/assets/javascripts/work_items/graphql/typedefs.graphql
deleted file mode 100644
index 9b4811203f5..00000000000
--- a/app/assets/javascripts/work_items/graphql/typedefs.graphql
+++ /dev/null
@@ -1,56 +0,0 @@
-enum LocalWorkItemType {
- FEATURE
-}
-
-enum LocalWidgetType {
- TITLE
-}
-
-interface LocalWorkItemWidget {
- type: LocalWidgetType!
-}
-
-# Replicating Relay connection type for client schema
-type LocalWorkItemWidgetEdge {
- cursor: String!
- node: LocalWorkItemWidget
-}
-
-type LocalWorkItemWidgetConnection {
- edges: [LocalWorkItemWidgetEdge]
- nodes: [LocalWorkItemWidget]
- pageInfo: PageInfo!
-}
-
-type LocalWorkItem {
- id: ID!
- type: LocalWorkItemType!
- title: String!
- widgets: [LocalWorkItemWidgetConnection]
-}
-
-input LocalCreateWorkItemInput {
- title: String!
-}
-
-input LocalUpdateWorkItemInput {
- id: ID!
- title: String
-}
-
-type LocalCreateWorkItemPayload {
- workItem: LocalWorkItem!
-}
-
-type LocalUpdateWorkItemPayload {
- workItem: LocalWorkItem!
-}
-
-extend type Query {
- localWorkItem(id: ID!): LocalWorkItem!
-}
-
-extend type Mutation {
- localCreateWorkItem(input: LocalCreateWorkItemInput!): LocalCreateWorkItemPayload!
- localUpdateWorkItem(input: LocalUpdateWorkItemInput!): LocalUpdateWorkItemPayload!
-}
diff --git a/app/assets/javascripts/work_items/graphql/update_work_item.mutation.graphql b/app/assets/javascripts/work_items/graphql/update_work_item.mutation.graphql
index efb1ed8d6df..c0b6e856411 100644
--- a/app/assets/javascripts/work_items/graphql/update_work_item.mutation.graphql
+++ b/app/assets/javascripts/work_items/graphql/update_work_item.mutation.graphql
@@ -1,18 +1,9 @@
-#import './widget.fragment.graphql'
+#import "./work_item.fragment.graphql"
mutation workItemUpdate($input: WorkItemUpdateInput!) {
workItemUpdate(input: $input) {
workItem {
- id
- title
- workItemType {
- id
- }
- widgets @client {
- nodes {
- ...WidgetBase
- }
- }
+ ...WorkItem
}
}
}
diff --git a/app/assets/javascripts/work_items/graphql/widget.fragment.graphql b/app/assets/javascripts/work_items/graphql/widget.fragment.graphql
deleted file mode 100644
index 154367dc0d8..00000000000
--- a/app/assets/javascripts/work_items/graphql/widget.fragment.graphql
+++ /dev/null
@@ -1,3 +0,0 @@
-fragment WidgetBase on LocalWorkItemWidget {
- type
-}
diff --git a/app/assets/javascripts/work_items/graphql/work_item.fragment.graphql b/app/assets/javascripts/work_items/graphql/work_item.fragment.graphql
new file mode 100644
index 00000000000..2707d6bb790
--- /dev/null
+++ b/app/assets/javascripts/work_items/graphql/work_item.fragment.graphql
@@ -0,0 +1,8 @@
+fragment WorkItem on WorkItem {
+ id
+ title
+ workItemType {
+ id
+ name
+ }
+}
diff --git a/app/assets/javascripts/work_items/graphql/work_item.query.graphql b/app/assets/javascripts/work_items/graphql/work_item.query.graphql
index b32cb4f28fb..1d3dae0649d 100644
--- a/app/assets/javascripts/work_items/graphql/work_item.query.graphql
+++ b/app/assets/javascripts/work_items/graphql/work_item.query.graphql
@@ -1,16 +1,7 @@
-#import './widget.fragment.graphql'
+#import "./work_item.fragment.graphql"
-query WorkItem($id: ID!) {
+query workItem($id: ID!) {
workItem(id: $id) {
- id
- title
- workItemType {
- id
- }
- widgets @client {
- nodes {
- ...WidgetBase
- }
- }
+ ...WorkItem
}
}
diff --git a/app/assets/javascripts/work_items/graphql/work_item_title.subscription.graphql b/app/assets/javascripts/work_items/graphql/work_item_title.subscription.graphql
new file mode 100644
index 00000000000..2ac01b79d6f
--- /dev/null
+++ b/app/assets/javascripts/work_items/graphql/work_item_title.subscription.graphql
@@ -0,0 +1,8 @@
+subscription issuableTitleUpdated($issuableId: IssuableID!) {
+ issuableTitleUpdated(issuableId: $issuableId) {
+ ... on WorkItem {
+ id
+ title
+ }
+ }
+}