90 lines
1.9 KiB
TypeScript
90 lines
1.9 KiB
TypeScript
import gql from "graphql-tag";
|
|
|
|
import makeQuery from "@saleor/hooks/makeQuery";
|
|
import { pageInfoFragment } from "@saleor/queries";
|
|
import { fragmentAddress } from "@saleor/orders/queries";
|
|
import { WarehouseList, WarehouseListVariables } from "./types/WarehouseList";
|
|
import {
|
|
WarehouseDetails,
|
|
WarehouseDetailsVariables
|
|
} from "./types/WarehouseDetails";
|
|
|
|
export const warehouseFragment = gql`
|
|
fragment WarehouseFragment on Warehouse {
|
|
id
|
|
name
|
|
}
|
|
`;
|
|
export const warehouseWithShippingFragment = gql`
|
|
${warehouseFragment}
|
|
fragment WarehouseWithShippingFragment on Warehouse {
|
|
...WarehouseFragment
|
|
shippingZones(first: 100) {
|
|
edges {
|
|
node {
|
|
id
|
|
name
|
|
}
|
|
}
|
|
}
|
|
}
|
|
`;
|
|
|
|
export const warehouseDetailsFragment = gql`
|
|
${fragmentAddress}
|
|
${warehouseWithShippingFragment}
|
|
fragment WarehouseDetailsFragment on Warehouse {
|
|
...WarehouseWithShippingFragment
|
|
address {
|
|
...AddressFragment
|
|
}
|
|
}
|
|
`;
|
|
|
|
const warehouseList = gql`
|
|
${warehouseWithShippingFragment}
|
|
${pageInfoFragment}
|
|
query WarehouseList(
|
|
$first: Int
|
|
$after: String
|
|
$last: Int
|
|
$before: String
|
|
$filter: WarehouseFilterInput
|
|
$sort: WarehouseSortingInput
|
|
) {
|
|
warehouses(
|
|
before: $before
|
|
after: $after
|
|
first: $first
|
|
last: $last
|
|
filter: $filter
|
|
sortBy: $sort
|
|
) {
|
|
edges {
|
|
node {
|
|
...WarehouseWithShippingFragment
|
|
}
|
|
}
|
|
pageInfo {
|
|
...PageInfoFragment
|
|
}
|
|
}
|
|
}
|
|
`;
|
|
export const useWarehouseList = makeQuery<
|
|
WarehouseList,
|
|
WarehouseListVariables
|
|
>(warehouseList);
|
|
|
|
const warehouseDetails = gql`
|
|
${warehouseDetailsFragment}
|
|
query WarehouseDetails($id: ID!) {
|
|
warehouse(id: $id) {
|
|
...WarehouseDetailsFragment
|
|
}
|
|
}
|
|
`;
|
|
export const useWarehouseDetails = makeQuery<
|
|
WarehouseDetails,
|
|
WarehouseDetailsVariables
|
|
>(warehouseDetails);
|