Current section
Files
Jump to
Current section
Files
src/admin/fragments.gleam
pub const image_fragment = // GraphQL
"
fragment image on Image {
url
id
altText
width
height
thumbhash
}
"
pub const media_fragment = "
fragment media on Media {
id
mediaContentType
alt
preview {
...media_preview_image
}
}
"
pub const media_preview_image = "
fragment media_preview_image on MediaPreviewImage {
image {
...image
}
status
}
"
pub const metafield_fragment = // GraphQL
"
fragment metafield on Metafield {
key
value
type
}
"
pub const metaobject_fragment = // GraphQL
"
fragment metaobject on Metaobject {
id
type
fields {
key
value
type
reference {
... on Metaobject {
id
type
fields {
key
value
}
}
}
}
}
"
pub const money_fields_fragment = "
fragment MoneyFields on MoneyV2 {
amount
currencyCode
}
"
pub const money_bag_fields_fragment = "
fragment MoneyBagFields on MoneyBag {
shopMoney {
...MoneyFields
}
presentmentMoney {
...MoneyFields
}
}
"
pub const line_items_fields_fragment = "
fragment LineItemFields on LineItem {
id
name
title
quantity
discountAllocations {
allocatedAmountSet {
presentmentMoney {
amount
currencyCode
}
}
discountApplication {
allocationMethod
value {
...MoneyFields
}
}
discountApplication {
...DiscountApplicationFields
}
}
requiresShipping
sku
taxable
product {
id
handle
}
variant {
id
price
product {
id
handle
}
title
}
originalTotalSet {
...MoneyBagFields
}
discountedTotalSet {
...MoneyBagFields
}
customAttributes {
key
value
}
}
"
pub const discount_application_fields_fragment = "
fragment DiscountApplicationFields on DiscountApplication {
allocationMethod
targetSelection
targetType
value {
... on MoneyV2 {
...MoneyFields
}
... on PricingPercentageValue {
percentage
}
}
... on DiscountCodeApplication {
code
}
... on AutomaticDiscountApplication {
title
}
}
"
pub const address_fields_fragment = "
fragment AddressFields on MailingAddressConnection {
pageInfo {
hasNextPage
endCursor
}
edges {
cursor
node {
... on MailingAddress{
name
}
}
}
nodes{
id
address1
address2
name
firstName
lastName
city
province
country
countryCodeV2
formatted
formattedArea
timeZone
zip
}
}
"
pub const customer_fields_fragments = "
fragment CustomerFields on Customer {
id
displayName
firstName
lastName
numberOfOrders
note
tags
updatedAt
verifiedEmail
defaultAddress{
name
phone
timeZone
id
address1
address2
zip
city
company
country
countryCodeV2
formatted
formattedArea
}
defaultEmailAddress {
emailAddress
marketingOptInLevel
marketingState
validFormat
}
defaultPhoneNumber {
phoneNumber
marketingOptInLevel
marketingState
}
}
"
pub const order_node_fields = "
fragment OrderNodeFields on Order {
id
name
note
createdAt
updatedAt
processedAt
cancelledAt
cancelReason
closed
closedAt
confirmed
test
currentSubtotalLineItemsQuantity
currentTotalWeight
displayFinancialStatus
displayFulfillmentStatus
edited
requiresShipping
currentSubtotalPriceSet {
...MoneyBagFields
}
currentTotalPriceSet {
...MoneyBagFields
}
currentTotalDiscountsSet {
...MoneyBagFields
}
currentTotalTaxSet {
...MoneyBagFields
}
originalTotalPriceSet {
...MoneyBagFields
}
app {
id
name
}
customer {
...CustomerFields
}
discountApplications(first: 10) {
edges {
node {
...DiscountApplicationFields
}
}
}
tags
taxExempt
taxesIncluded
lineItems(first: 25) {
edges {
node {
...LineItemFields
}
}
}
fulfillments {
id
createdAt
displayStatus
estimatedDeliveryAt
status
trackingInfo {
company
number
url
}
}
refunds {
id
createdAt
note
}
transactions {
id
createdAt
errorCode
gateway
kind
processedAt
status
test
}
}
"
pub const product_fragment = "
fragment product on Product {
id
handle
title
totalInventory
description
descriptionHtml
vendor
options {
id
name
values
}
priceRangeV2 {
maxVariantPrice {
amount
currencyCode
}
minVariantPrice {
amount
currencyCode
}
}
compareAtPriceRange {
maxVariantPrice {
amount
currencyCode
}
minVariantPrice {
amount
currencyCode
}
}
variants(first: 250) {
edges {
node {
id
title
availableForSale
selectedOptions {
name
value
}
price {
amount
currencyCode
}
}
}
}
featuredImage {
...image
}
images(first: 20) {
edges {
node {
...image
}
}
}
seo {
...seo
}
tags
updatedAt
}
"
<> image_fragment
<> seo_fragment
pub const seo_fragment = "
fragment seo on SEO {
description
title
}
"
pub const cart_fragment = "
fragment cart on Cart {
id
checkoutUrl
cost {
subtotalAmount {
amount
currencyCode
}
totalAmount {
amount
currencyCode
}
totalTaxAmount {
amount
currencyCode
}
}
lines(first: 100) {
edges {
node {
id
quantity
attributes {
key
value
}
cost {
totalAmount {
amount
currencyCode
}
}
merchandise {
... on ProductVariant {
id
title
compareAtPrice {
amount
currencyCode
}
selectedOptions {
name
value
}
product {
...product
}
}
}
}
}
}
totalQuantity
}
"
<> product_fragment