2020-05-14 09:30:32 +00:00
|
|
|
import makeQuery from "@saleor/hooks/makeQuery";
|
2019-06-19 14:40:52 +00:00
|
|
|
import gql from "graphql-tag";
|
|
|
|
|
2020-02-10 12:50:08 +00:00
|
|
|
import { pageInfoFragment } from "../queries";
|
2019-06-19 14:40:52 +00:00
|
|
|
import { ShippingZone, ShippingZoneVariables } from "./types/ShippingZone";
|
|
|
|
import { ShippingZones, ShippingZonesVariables } from "./types/ShippingZones";
|
|
|
|
|
|
|
|
export const shippingZoneFragment = gql`
|
|
|
|
fragment ShippingZoneFragment on ShippingZone {
|
|
|
|
id
|
|
|
|
countries {
|
|
|
|
code
|
|
|
|
country
|
|
|
|
}
|
|
|
|
name
|
|
|
|
}
|
|
|
|
`;
|
|
|
|
export const shippingMethodFragment = gql`
|
|
|
|
fragment ShippingMethodFragment on ShippingMethod {
|
|
|
|
id
|
|
|
|
minimumOrderPrice {
|
|
|
|
amount
|
|
|
|
currency
|
|
|
|
}
|
|
|
|
minimumOrderWeight {
|
|
|
|
unit
|
|
|
|
value
|
|
|
|
}
|
|
|
|
maximumOrderPrice {
|
|
|
|
amount
|
|
|
|
currency
|
|
|
|
}
|
|
|
|
maximumOrderWeight {
|
|
|
|
unit
|
|
|
|
value
|
|
|
|
}
|
|
|
|
name
|
|
|
|
price {
|
|
|
|
amount
|
|
|
|
currency
|
|
|
|
}
|
|
|
|
type
|
|
|
|
}
|
|
|
|
`;
|
|
|
|
export const shippingZoneDetailsFragment = gql`
|
|
|
|
${shippingZoneFragment}
|
|
|
|
${shippingMethodFragment}
|
|
|
|
fragment ShippingZoneDetailsFragment on ShippingZone {
|
|
|
|
...ShippingZoneFragment
|
|
|
|
default
|
|
|
|
shippingMethods {
|
|
|
|
...ShippingMethodFragment
|
|
|
|
}
|
2020-02-03 11:01:18 +00:00
|
|
|
warehouses {
|
|
|
|
id
|
|
|
|
name
|
|
|
|
}
|
2019-06-19 14:40:52 +00:00
|
|
|
}
|
|
|
|
`;
|
|
|
|
|
|
|
|
const shippingZones = gql`
|
|
|
|
${pageInfoFragment}
|
|
|
|
${shippingZoneFragment}
|
|
|
|
query ShippingZones(
|
|
|
|
$first: Int
|
|
|
|
$after: String
|
|
|
|
$last: Int
|
|
|
|
$before: String
|
|
|
|
) {
|
|
|
|
shippingZones(first: $first, after: $after, last: $last, before: $before) {
|
|
|
|
edges {
|
|
|
|
node {
|
|
|
|
...ShippingZoneFragment
|
|
|
|
}
|
|
|
|
}
|
|
|
|
pageInfo {
|
|
|
|
...PageInfoFragment
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
`;
|
2020-02-10 12:50:08 +00:00
|
|
|
export const useShippingZoneList = makeQuery<
|
2019-06-19 14:40:52 +00:00
|
|
|
ShippingZones,
|
|
|
|
ShippingZonesVariables
|
|
|
|
>(shippingZones);
|
|
|
|
|
|
|
|
const shippingZone = gql`
|
|
|
|
${shippingZoneDetailsFragment}
|
|
|
|
query ShippingZone($id: ID!) {
|
|
|
|
shippingZone(id: $id) {
|
|
|
|
...ShippingZoneDetailsFragment
|
|
|
|
}
|
|
|
|
}
|
|
|
|
`;
|
2020-02-05 14:11:37 +00:00
|
|
|
export const useShippingZone = makeQuery<ShippingZone, ShippingZoneVariables>(
|
|
|
|
shippingZone
|
|
|
|
);
|