saleor-dashboard/src/categories/queries.ts
Jakub Majorek d5a36e47fc
Add channel picker product details (#1355)
* Add channel picker product details (#1353)

* Enable channel picker on product details page

* Add channel picker to product details

* Simplify category details page

* Update snapshots and translations

* Update types

* Update testId, bump macaw-ui

* Update snapshots, types and schema
2021-09-03 14:27:34 +02:00

94 lines
1.9 KiB
TypeScript

import {
categoryDetailsFragment,
categoryFragment
} from "@saleor/fragments/categories";
import { pageInfoFragment } from "@saleor/fragments/pageInfo";
import makeQuery from "@saleor/hooks/makeQuery";
import gql from "graphql-tag";
import {
CategoryDetails,
CategoryDetailsVariables
} from "./types/CategoryDetails";
import { RootCategories } from "./types/RootCategories";
export const rootCategories = gql`
${categoryFragment}
${pageInfoFragment}
query RootCategories(
$first: Int
$after: String
$last: Int
$before: String
$filter: CategoryFilterInput
$sort: CategorySortingInput
) {
categories(
level: 0
first: $first
after: $after
last: $last
before: $before
filter: $filter
sortBy: $sort
) {
edges {
node {
...CategoryFragment
}
}
pageInfo {
...PageInfoFragment
}
}
}
`;
export const useRootCategoriesQuery = makeQuery<RootCategories, {}>(
rootCategories
);
export const categoryDetails = gql`
${categoryFragment}
${categoryDetailsFragment}
${pageInfoFragment}
query CategoryDetails(
$id: ID!
$first: Int
$after: String
$last: Int
$before: String
) {
category(id: $id) {
...CategoryDetailsFragment
children(first: $first, after: $after, last: $last, before: $before) {
edges {
node {
...CategoryFragment
}
}
pageInfo {
...PageInfoFragment
}
}
products(first: $first, after: $after, last: $last, before: $before) {
pageInfo {
...PageInfoFragment
}
edges {
cursor
node {
id
name
thumbnail {
url
}
}
}
}
}
}
`;
export const useCategoryDetailsQuery = makeQuery<
CategoryDetails,
CategoryDetailsVariables
>(categoryDetails);