Packages

pify: some helpers to use gleam in your shopify project.

Current section

Files

Jump to
pify src fragments.erl
Raw

src/fragments.erl

-module(fragments).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]).
-define(FILEPATH, "src/fragments.gleam").
-export([image_fragment/0, metafield_fragment/0, metaobject_fragment/0, money_fields_fragment/0, money_bag_fields_fragment/0, line_items_fields_fragment/0, discount_application_fields_fragment/0, address_fields_fragment/0, customer_fields_fragments/0, order_node_fields/0, seo_fragment/0, product_fragment/0, cart_fragment/0]).
-file("src/fragments.gleam", 60).
-spec image_fragment() -> binary().
image_fragment() ->
<<"
fragment image on Image {
url
altText
width
height
}
"/utf8>>.
-file("src/fragments.gleam", 72).
-spec metafield_fragment() -> binary().
metafield_fragment() ->
<<"
fragment metafield on Metafield {
key
value
type
}
"/utf8>>.
-file("src/fragments.gleam", 83).
-spec metaobject_fragment() -> binary().
metaobject_fragment() ->
<<"
fragment metaobject on Metaobject {
id
type
fields {
key
value
type
reference {
... on Metaobject {
id
type
fields {
key
value
}
}
}
}
}
"/utf8>>.
-file("src/fragments.gleam", 108).
-spec money_fields_fragment() -> binary().
money_fields_fragment() ->
<<"
fragment MoneyFields on MoneyV2 {
amount
currencyCode
}
"/utf8>>.
-file("src/fragments.gleam", 117).
-spec money_bag_fields_fragment() -> binary().
money_bag_fields_fragment() ->
<<"
fragment MoneyBagFields on MoneyBag {
shopMoney {
...MoneyFields
}
presentmentMoney {
...MoneyFields
}
}
"/utf8>>.
-file("src/fragments.gleam", 130).
-spec line_items_fields_fragment() -> binary().
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
}
}
"/utf8>>.
-file("src/fragments.gleam", 184).
-spec discount_application_fields_fragment() -> binary().
discount_application_fields_fragment() ->
<<"
fragment DiscountApplicationFields on DiscountApplication {
allocationMethod
targetSelection
targetType
value {
... on MoneyV2 {
...MoneyFields
}
... on PricingPercentageValue {
percentage
}
}
... on DiscountCodeApplication {
code
}
... on AutomaticDiscountApplication {
title
}
}
"/utf8>>.
-file("src/fragments.gleam", 208).
-spec address_fields_fragment() -> binary().
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
}
}
"/utf8>>.
-file("src/fragments.gleam", 243).
-spec customer_fields_fragments() -> binary().
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
}
}
"/utf8>>.
-file("src/fragments.gleam", 285).
-spec order_node_fields() -> binary().
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
}
}
"/utf8>>.
-file("src/fragments.gleam", 483).
-spec seo_fragment() -> binary().
seo_fragment() ->
<<"
fragment seo on SEO {
description
title
}
"/utf8>>.
-file("src/fragments.gleam", 376).
-spec product_fragment() -> binary().
product_fragment() ->
<<<<"
fragment product on Product {
id
handle
availableForSale
title
description
descriptionHtml
vendor
options {
id
name
values
}
priceRange {
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
}
metafields(
{ namespace: \"metafield\", key: \"width\" }
{ namespace: \"metafield\", key: \"height\" }
{ namespace: \"metafield\", key: \"thickness\" }
{ namespace: \"metafield\", key: \"pages\" }
{ namespace: \"metafield\", key: \"categories\" }
{ namespace: \"metafield\", key: \"language\" }
{ namespace: \"metafield\", key: \"format\" }
{ namespace: \"custom\", key: \"author\" }
{ namespace: \"custom\", key: \"publisher\" }
{ namespace: \"custom\", key: \"related-authors\" }
{ namespace: \"custom\", key: \"people-who-worked\" }
{ namespace: \"custom\", key: \"translator\" }
{ namespace: \"custom\", key: \"related-books\" }
{ namespace: \"shopify\", key: \"genre\" }
{ namespace: \"shopify\", key: \"book-cover-type\" }
{ namespace: \"shopify\", key: \"target-audience\" }
]
) {
key
namespace
value
type
references(first: 5) {
nodes {
... on Metaobject {
id
type
fields {
key
value
}
}
}
}
}
tags
updatedAt
}
"/utf8,
(image_fragment())/binary>>/binary,
(seo_fragment())/binary>>.
-file("src/fragments.gleam", 1).
-spec cart_fragment() -> binary().
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
}
"/utf8,
(product_fragment())/binary>>.