Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GraphQl Schema actualization with latest released changes. #419

Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
62 changes: 54 additions & 8 deletions design-documents/graph-ql/coverage/shipping/store-pickup.graphqls
Original file line number Diff line number Diff line change
@@ -1,12 +1,15 @@
type Query {
pickupLocations (
filter: PickupLocationFilterInput,
area: AreaInput,
filters: PickupLocationFilterInput,
sort: PickupLocationSortInput,
pageSize: Int = 20,
currentPage: Int = 1
currentPage: Int = 1,
productsInfo: [ProductInfoInput]
): PickupLocations
}

input PickupLocationFilterInput {
input AreaInput {
# This type is added for extensibility
search_term: String! # Depending on the distance calculation algorithm selected in the admin, this field will require ZIP code (for offline mode) or arbitrary part of the address (for Google mode). IMPORTANT: Current mode must be exposed as part of storeConfig query and used on the client to display different hints for the input field
radius: Int # This field is not part of MVP and can be added later. IMPORTANT: Radius units must be exposed as part of storeConfig query and displayed on the client
Expand All @@ -18,12 +21,55 @@ type PickupLocations {
total_count: Int
}

input PickupLocationFilterInput {
name: FilterTypeInput
pickup_location_code: FilterTypeInput
country_id: FilterTypeInput
postcode: FilterTypeInput
region: FilterTypeInput
region_id: FilterTypeInput
city: FilterTypeInput
street: FilterTypeInput
}

input PickupLocationSortInput {
name: SortEnum
pickup_location_code: SortEnum
distance: SortEnum
country_id: SortEnum
region: SortEnum
region_id: SortEnum
city: SortEnum
street: SortEnum
postcode: SortEnum
longitude: SortEnum
latitude: SortEnum
email: SortEnum
fax: SortEnum
phone: SortEnum
contact_name: SortEnum
description: SortEnum
}

type PickupLocation {
pickup_location_code: String
name: String! # In the admin is called Frontend Name
description: String! # In the admin is called Frontend Description
country: String!
region: String!
city: String!
street: String!
postcode: String!
email: String
fax: String
contact_name: String
latitude: Float
longitude: Float
country_id: String
region_id: Int
region: String
city: String
street: String
postcode: String
phone: String
}

# Used in products assignment intersection search - select Pickup Locations which can be used to deliver all products in the request.
input ProductInfoInput {
sku: String!
}