diff options
Diffstat (limited to 'app/assets/javascripts/ci/catalog/graphql')
6 files changed, 119 insertions, 0 deletions
diff --git a/app/assets/javascripts/ci/catalog/graphql/fragments/catalog_resource.fragment.graphql b/app/assets/javascripts/ci/catalog/graphql/fragments/catalog_resource.fragment.graphql new file mode 100644 index 00000000000..f4d1bb0eaaf --- /dev/null +++ b/app/assets/javascripts/ci/catalog/graphql/fragments/catalog_resource.fragment.graphql @@ -0,0 +1,25 @@ +fragment CatalogResourceFields on CiCatalogResource { + id + icon + name + description + starCount + forksCount + latestVersion { + id + tagName + tagPath + releasedAt + author { + id + name + webUrl + } + } + rootNamespace { + id + fullPath + name + } + webPath +} diff --git a/app/assets/javascripts/ci/catalog/graphql/queries/get_ci_catalog_resource_components.query.graphql b/app/assets/javascripts/ci/catalog/graphql/queries/get_ci_catalog_resource_components.query.graphql new file mode 100644 index 00000000000..6aef5dcc4e7 --- /dev/null +++ b/app/assets/javascripts/ci/catalog/graphql/queries/get_ci_catalog_resource_components.query.graphql @@ -0,0 +1,20 @@ +query getCiCatalogResourceComponents($id: CiCatalogResourceID!) { + ciCatalogResource(id: $id) { + id + components @client { + nodes { + id + name + description + path + inputs { + nodes { + name + defaultValue + required + } + } + } + } + } +} diff --git a/app/assets/javascripts/ci/catalog/graphql/queries/get_ci_catalog_resource_details.query.graphql b/app/assets/javascripts/ci/catalog/graphql/queries/get_ci_catalog_resource_details.query.graphql new file mode 100644 index 00000000000..382d3866795 --- /dev/null +++ b/app/assets/javascripts/ci/catalog/graphql/queries/get_ci_catalog_resource_details.query.graphql @@ -0,0 +1,29 @@ +query getCiCatalogResourceDetails($id: CiCatalogResourceID!) { + ciCatalogResource(id: $id) { + id + openIssuesCount + openMergeRequestsCount + versions(first: 1) { + nodes { + id + commit { + id + pipelines(first: 1) { + nodes { + id + detailedStatus { + id + detailsPath + icon + text + group + } + } + } + } + tagName + releasedAt + } + } + } +} diff --git a/app/assets/javascripts/ci/catalog/graphql/queries/get_ci_catalog_resource_readme.query.graphql b/app/assets/javascripts/ci/catalog/graphql/queries/get_ci_catalog_resource_readme.query.graphql new file mode 100644 index 00000000000..6b3d0cdcfc7 --- /dev/null +++ b/app/assets/javascripts/ci/catalog/graphql/queries/get_ci_catalog_resource_readme.query.graphql @@ -0,0 +1,6 @@ +query getCiCatalogResourceReadme($id: CiCatalogResourceID!) { + ciCatalogResource(id: $id) { + id + readmeHtml + } +} diff --git a/app/assets/javascripts/ci/catalog/graphql/queries/get_ci_catalog_resource_shared_data.query.graphql b/app/assets/javascripts/ci/catalog/graphql/queries/get_ci_catalog_resource_shared_data.query.graphql new file mode 100644 index 00000000000..4ac4cb0e394 --- /dev/null +++ b/app/assets/javascripts/ci/catalog/graphql/queries/get_ci_catalog_resource_shared_data.query.graphql @@ -0,0 +1,7 @@ +#import "../fragments/catalog_resource.fragment.graphql" + +query getCiCatalogResourceSharedData($id: CiCatalogResourceID!) { + ciCatalogResource(id: $id) { + ...CatalogResourceFields + } +} diff --git a/app/assets/javascripts/ci/catalog/graphql/settings.js b/app/assets/javascripts/ci/catalog/graphql/settings.js new file mode 100644 index 00000000000..a87b26ca4fc --- /dev/null +++ b/app/assets/javascripts/ci/catalog/graphql/settings.js @@ -0,0 +1,32 @@ +import { componentsMockData } from '../constants'; + +export const ciCatalogResourcesItemsCount = 20; +export const CI_CATALOG_RESOURCE_TYPE = 'Ci::Catalog::Resource'; + +export const cacheConfig = { + cacheConfig: { + typePolicies: { + Query: { + fields: { + ciCatalogResource(_, { args, toReference }) { + return toReference({ + __typename: 'CiCatalogResource', + id: args.id, + }); + }, + ciCatalogResources: { + keyArgs: false, + }, + }, + }, + }, + }, +}; + +export const resolvers = { + CiCatalogResource: { + components() { + return componentsMockData; + }, + }, +}; |