@doswiftly/storefront-operations 5.5.0 → 6.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +778 -0
- package/fragments.graphql +161 -150
- package/mutations.graphql +104 -55
- package/package.json +1 -1
- package/queries.graphql +72 -44
- package/schema.graphql +1767 -758
package/fragments.graphql
CHANGED
|
@@ -20,6 +20,12 @@ fragment UserError on UserError {
|
|
|
20
20
|
field
|
|
21
21
|
}
|
|
22
22
|
|
|
23
|
+
fragment CartWarning on CartWarning {
|
|
24
|
+
message
|
|
25
|
+
code
|
|
26
|
+
target
|
|
27
|
+
}
|
|
28
|
+
|
|
23
29
|
# Base Image — no transform (for logos, favicons, branding assets that are already small)
|
|
24
30
|
fragment Image on Image {
|
|
25
31
|
id
|
|
@@ -97,19 +103,13 @@ fragment ProductVariant on ProductVariant {
|
|
|
97
103
|
title
|
|
98
104
|
sku
|
|
99
105
|
price {
|
|
100
|
-
...PriceMoney
|
|
101
|
-
}
|
|
102
|
-
originalPrice {
|
|
103
106
|
...Money
|
|
104
107
|
}
|
|
105
108
|
compareAtPrice {
|
|
106
|
-
...PriceMoney
|
|
107
|
-
}
|
|
108
|
-
originalCompareAtPrice {
|
|
109
109
|
...Money
|
|
110
110
|
}
|
|
111
|
-
|
|
112
|
-
|
|
111
|
+
isAvailable
|
|
112
|
+
availableStock
|
|
113
113
|
image {
|
|
114
114
|
...ImageThumbnail
|
|
115
115
|
}
|
|
@@ -117,8 +117,11 @@ fragment ProductVariant on ProductVariant {
|
|
|
117
117
|
...SelectedOption
|
|
118
118
|
}
|
|
119
119
|
barcode
|
|
120
|
-
weight
|
|
121
|
-
|
|
120
|
+
weight {
|
|
121
|
+
value
|
|
122
|
+
unit
|
|
123
|
+
}
|
|
124
|
+
sortOrder
|
|
122
125
|
}
|
|
123
126
|
|
|
124
127
|
# Minimal product data for listing views (cards, grids, search results).
|
|
@@ -128,8 +131,8 @@ fragment ProductCard on Product {
|
|
|
128
131
|
handle
|
|
129
132
|
title
|
|
130
133
|
vendor
|
|
131
|
-
|
|
132
|
-
|
|
134
|
+
category
|
|
135
|
+
isAvailable
|
|
133
136
|
averageRating
|
|
134
137
|
reviewCount
|
|
135
138
|
tags
|
|
@@ -138,18 +141,18 @@ fragment ProductCard on Product {
|
|
|
138
141
|
}
|
|
139
142
|
priceRange {
|
|
140
143
|
minVariantPrice {
|
|
141
|
-
...
|
|
144
|
+
...Money
|
|
142
145
|
}
|
|
143
146
|
maxVariantPrice {
|
|
144
|
-
...
|
|
147
|
+
...Money
|
|
145
148
|
}
|
|
146
149
|
}
|
|
147
150
|
compareAtPriceRange {
|
|
148
151
|
minVariantPrice {
|
|
149
|
-
...
|
|
152
|
+
...Money
|
|
150
153
|
}
|
|
151
154
|
maxVariantPrice {
|
|
152
|
-
...
|
|
155
|
+
...Money
|
|
153
156
|
}
|
|
154
157
|
}
|
|
155
158
|
}
|
|
@@ -159,25 +162,9 @@ fragment ProductBase on Product {
|
|
|
159
162
|
...ProductCard
|
|
160
163
|
description
|
|
161
164
|
descriptionHtml
|
|
162
|
-
|
|
163
|
-
minVariantPrice {
|
|
164
|
-
...Money
|
|
165
|
-
}
|
|
166
|
-
maxVariantPrice {
|
|
167
|
-
...Money
|
|
168
|
-
}
|
|
169
|
-
}
|
|
170
|
-
originalCompareAtPriceRange {
|
|
171
|
-
minVariantPrice {
|
|
172
|
-
...Money
|
|
173
|
-
}
|
|
174
|
-
maxVariantPrice {
|
|
175
|
-
...Money
|
|
176
|
-
}
|
|
177
|
-
}
|
|
178
|
-
totalInventory
|
|
165
|
+
stockTotal
|
|
179
166
|
type
|
|
180
|
-
|
|
167
|
+
requiresRecipientInfo
|
|
181
168
|
# Faza 1.5 (Decision D-A v3 + D-B)
|
|
182
169
|
visibility
|
|
183
170
|
attributeSetId
|
|
@@ -188,10 +175,34 @@ fragment ProductBase on Product {
|
|
|
188
175
|
fragment ProductFull on Product {
|
|
189
176
|
...ProductBase
|
|
190
177
|
images(first: 20) {
|
|
191
|
-
|
|
178
|
+
edges {
|
|
179
|
+
cursor
|
|
180
|
+
node {
|
|
181
|
+
...ImageFull
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
nodes {
|
|
185
|
+
...ImageFull
|
|
186
|
+
}
|
|
187
|
+
pageInfo {
|
|
188
|
+
...PageInfo
|
|
189
|
+
}
|
|
190
|
+
totalCount
|
|
192
191
|
}
|
|
193
192
|
variants(first: 100) {
|
|
194
|
-
|
|
193
|
+
edges {
|
|
194
|
+
cursor
|
|
195
|
+
node {
|
|
196
|
+
...ProductVariant
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
nodes {
|
|
200
|
+
...ProductVariant
|
|
201
|
+
}
|
|
202
|
+
pageInfo {
|
|
203
|
+
...PageInfo
|
|
204
|
+
}
|
|
205
|
+
totalCount
|
|
195
206
|
}
|
|
196
207
|
seo {
|
|
197
208
|
title
|
|
@@ -244,8 +255,8 @@ fragment Category on Category {
|
|
|
244
255
|
|
|
245
256
|
fragment MailingAddress on MailingAddress {
|
|
246
257
|
id
|
|
247
|
-
|
|
248
|
-
|
|
258
|
+
streetLine1
|
|
259
|
+
streetLine2
|
|
249
260
|
city
|
|
250
261
|
company
|
|
251
262
|
country
|
|
@@ -253,9 +264,9 @@ fragment MailingAddress on MailingAddress {
|
|
|
253
264
|
firstName
|
|
254
265
|
lastName
|
|
255
266
|
phone
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
267
|
+
state
|
|
268
|
+
stateCode
|
|
269
|
+
postalCode
|
|
259
270
|
isDefault
|
|
260
271
|
}
|
|
261
272
|
|
|
@@ -271,12 +282,18 @@ fragment Customer on Customer {
|
|
|
271
282
|
lastName
|
|
272
283
|
displayName
|
|
273
284
|
phone
|
|
274
|
-
|
|
275
|
-
|
|
285
|
+
isEmailVerified
|
|
286
|
+
emailMarketing
|
|
287
|
+
tags
|
|
288
|
+
customerType
|
|
289
|
+
companyName
|
|
290
|
+
taxId
|
|
291
|
+
vatNumber
|
|
292
|
+
regon
|
|
276
293
|
defaultAddress {
|
|
277
294
|
...MailingAddress
|
|
278
295
|
}
|
|
279
|
-
|
|
296
|
+
orderCount
|
|
280
297
|
totalSpent {
|
|
281
298
|
...Money
|
|
282
299
|
}
|
|
@@ -287,20 +304,22 @@ fragment Customer on Customer {
|
|
|
287
304
|
fragment Order on Order {
|
|
288
305
|
id
|
|
289
306
|
orderNumber
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
307
|
+
totals {
|
|
308
|
+
total {
|
|
309
|
+
...Money
|
|
310
|
+
}
|
|
311
|
+
subtotal {
|
|
312
|
+
...Money
|
|
313
|
+
}
|
|
314
|
+
totalTax {
|
|
315
|
+
...Money
|
|
316
|
+
}
|
|
317
|
+
totalShipping {
|
|
318
|
+
...Money
|
|
319
|
+
}
|
|
301
320
|
}
|
|
302
321
|
status
|
|
303
|
-
|
|
322
|
+
paymentStatus
|
|
304
323
|
fulfillmentStatus
|
|
305
324
|
processedAt
|
|
306
325
|
confirmedAt
|
|
@@ -309,7 +328,7 @@ fragment Order on Order {
|
|
|
309
328
|
shippingAddress {
|
|
310
329
|
...MailingAddress
|
|
311
330
|
}
|
|
312
|
-
|
|
331
|
+
itemCount
|
|
313
332
|
}
|
|
314
333
|
|
|
315
334
|
# ============================================
|
|
@@ -317,37 +336,40 @@ fragment Order on Order {
|
|
|
317
336
|
# ============================================
|
|
318
337
|
|
|
319
338
|
fragment CartCost on CartCost {
|
|
320
|
-
|
|
321
|
-
...
|
|
339
|
+
total {
|
|
340
|
+
...Money
|
|
341
|
+
}
|
|
342
|
+
subtotal {
|
|
343
|
+
...Money
|
|
322
344
|
}
|
|
323
|
-
|
|
324
|
-
...
|
|
345
|
+
totalTax {
|
|
346
|
+
...Money
|
|
325
347
|
}
|
|
326
|
-
|
|
327
|
-
...
|
|
348
|
+
totalDuty {
|
|
349
|
+
...Money
|
|
328
350
|
}
|
|
329
|
-
|
|
330
|
-
...
|
|
351
|
+
checkoutCharge {
|
|
352
|
+
...Money
|
|
331
353
|
}
|
|
332
354
|
}
|
|
333
355
|
|
|
334
356
|
fragment CartLineCost on CartLineCost {
|
|
335
|
-
|
|
336
|
-
...
|
|
357
|
+
pricePerUnit {
|
|
358
|
+
...Money
|
|
337
359
|
}
|
|
338
|
-
|
|
339
|
-
...
|
|
360
|
+
subtotal {
|
|
361
|
+
...Money
|
|
340
362
|
}
|
|
341
|
-
|
|
342
|
-
...
|
|
363
|
+
total {
|
|
364
|
+
...Money
|
|
343
365
|
}
|
|
344
|
-
|
|
345
|
-
...
|
|
366
|
+
compareAtPricePerUnit {
|
|
367
|
+
...Money
|
|
346
368
|
}
|
|
347
369
|
}
|
|
348
370
|
|
|
349
371
|
# Typed customer-filled attribute snapshot (Faza 1 R5 + Decision D-A v3 + D-I).
|
|
350
|
-
# Distinct from CartLine.attributes (
|
|
372
|
+
# Distinct from CartLine.attributes (raw KV line item properties).
|
|
351
373
|
fragment AttributeSelection on AttributeSelection {
|
|
352
374
|
attributeDefinitionId
|
|
353
375
|
attributeName
|
|
@@ -367,7 +389,7 @@ fragment AttributeSelection on AttributeSelection {
|
|
|
367
389
|
fragment CartLine on CartLine {
|
|
368
390
|
id
|
|
369
391
|
quantity
|
|
370
|
-
|
|
392
|
+
variant {
|
|
371
393
|
...ProductVariant
|
|
372
394
|
}
|
|
373
395
|
cost {
|
|
@@ -394,7 +416,7 @@ fragment CartBuyerIdentity on CartBuyerIdentity {
|
|
|
394
416
|
|
|
395
417
|
fragment CartDiscountCode on CartDiscountCode {
|
|
396
418
|
code
|
|
397
|
-
|
|
419
|
+
isApplicable
|
|
398
420
|
}
|
|
399
421
|
|
|
400
422
|
fragment CartDiscountAllocation on CartDiscountAllocation {
|
|
@@ -412,7 +434,23 @@ fragment Cart on Cart {
|
|
|
412
434
|
...CartCost
|
|
413
435
|
}
|
|
414
436
|
lines(first: 100) {
|
|
415
|
-
|
|
437
|
+
edges {
|
|
438
|
+
cursor
|
|
439
|
+
node {
|
|
440
|
+
... on CartLine {
|
|
441
|
+
...CartLine
|
|
442
|
+
}
|
|
443
|
+
}
|
|
444
|
+
}
|
|
445
|
+
nodes {
|
|
446
|
+
... on CartLine {
|
|
447
|
+
...CartLine
|
|
448
|
+
}
|
|
449
|
+
}
|
|
450
|
+
pageInfo {
|
|
451
|
+
...PageInfo
|
|
452
|
+
}
|
|
453
|
+
totalCount
|
|
416
454
|
}
|
|
417
455
|
buyerIdentity {
|
|
418
456
|
...CartBuyerIdentity
|
|
@@ -460,8 +498,8 @@ fragment SocialLinks on SocialLinks {
|
|
|
460
498
|
}
|
|
461
499
|
|
|
462
500
|
fragment ShopAddress on ShopAddress {
|
|
463
|
-
|
|
464
|
-
|
|
501
|
+
streetLine1
|
|
502
|
+
streetLine2
|
|
465
503
|
city
|
|
466
504
|
state
|
|
467
505
|
postalCode
|
|
@@ -513,7 +551,11 @@ fragment Shop on Shop {
|
|
|
513
551
|
id
|
|
514
552
|
name
|
|
515
553
|
description
|
|
516
|
-
primaryDomain
|
|
554
|
+
primaryDomain {
|
|
555
|
+
host
|
|
556
|
+
url
|
|
557
|
+
isSslEnabled
|
|
558
|
+
}
|
|
517
559
|
currencyCode
|
|
518
560
|
supportedCurrencies
|
|
519
561
|
paymentCurrencies
|
|
@@ -567,12 +609,6 @@ fragment AvailablePaymentMethods on AvailablePaymentMethods {
|
|
|
567
609
|
# Checkout Fragments
|
|
568
610
|
# ============================================
|
|
569
611
|
|
|
570
|
-
fragment CheckoutUserError on CheckoutUserError {
|
|
571
|
-
field
|
|
572
|
-
message
|
|
573
|
-
code
|
|
574
|
-
}
|
|
575
|
-
|
|
576
612
|
fragment ShippingRate on ShippingRate {
|
|
577
613
|
handle
|
|
578
614
|
title
|
|
@@ -608,7 +644,7 @@ fragment DiscountAffectedItem on DiscountAffectedItem {
|
|
|
608
644
|
|
|
609
645
|
fragment DiscountApplication on DiscountApplication {
|
|
610
646
|
code
|
|
611
|
-
|
|
647
|
+
isApplicable
|
|
612
648
|
type
|
|
613
649
|
value {
|
|
614
650
|
...Money
|
|
@@ -625,7 +661,7 @@ fragment DiscountApplication on DiscountApplication {
|
|
|
625
661
|
|
|
626
662
|
fragment DiscountCode on DiscountCode {
|
|
627
663
|
code
|
|
628
|
-
|
|
664
|
+
isApplicable
|
|
629
665
|
}
|
|
630
666
|
|
|
631
667
|
fragment CheckoutLineItem on CheckoutLineItem {
|
|
@@ -633,10 +669,10 @@ fragment CheckoutLineItem on CheckoutLineItem {
|
|
|
633
669
|
title
|
|
634
670
|
variantTitle
|
|
635
671
|
quantity
|
|
636
|
-
|
|
672
|
+
pricePerUnit {
|
|
637
673
|
...Money
|
|
638
674
|
}
|
|
639
|
-
|
|
675
|
+
total {
|
|
640
676
|
...Money
|
|
641
677
|
}
|
|
642
678
|
variantId
|
|
@@ -661,8 +697,8 @@ fragment AppliedGiftCard on AppliedGiftCard {
|
|
|
661
697
|
|
|
662
698
|
fragment Checkout on Checkout {
|
|
663
699
|
id
|
|
664
|
-
|
|
665
|
-
|
|
700
|
+
isReady
|
|
701
|
+
isCompleted
|
|
666
702
|
completedOrderId
|
|
667
703
|
webUrl
|
|
668
704
|
lineItems {
|
|
@@ -695,24 +731,16 @@ fragment Checkout on Checkout {
|
|
|
695
731
|
...PaymentMethod
|
|
696
732
|
}
|
|
697
733
|
selectedPaymentMethodId
|
|
698
|
-
|
|
699
|
-
...Money
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
...Money
|
|
703
|
-
|
|
704
|
-
totalTax {
|
|
705
|
-
...Money
|
|
734
|
+
cost {
|
|
735
|
+
subtotal { ...Money }
|
|
736
|
+
total { ...Money }
|
|
737
|
+
totalTax { ...Money }
|
|
738
|
+
totalShipping { ...Money }
|
|
739
|
+
totalDiscounts { ...Money }
|
|
706
740
|
}
|
|
707
741
|
taxLines {
|
|
708
742
|
...TaxLine
|
|
709
743
|
}
|
|
710
|
-
totalDiscounts {
|
|
711
|
-
...Money
|
|
712
|
-
}
|
|
713
|
-
totalPrice {
|
|
714
|
-
...Money
|
|
715
|
-
}
|
|
716
744
|
# GAP-001: Gift Card Checkout Integration
|
|
717
745
|
appliedGiftCards {
|
|
718
746
|
...AppliedGiftCard
|
|
@@ -767,7 +795,7 @@ fragment Shipment on Shipment {
|
|
|
767
795
|
trackingUrl
|
|
768
796
|
labelUrl
|
|
769
797
|
status
|
|
770
|
-
|
|
798
|
+
estimatedDeliveryAt
|
|
771
799
|
shippedAt
|
|
772
800
|
deliveredAt
|
|
773
801
|
recipientAddress {
|
|
@@ -793,7 +821,7 @@ fragment ShipmentBasic on Shipment {
|
|
|
793
821
|
trackingNumber
|
|
794
822
|
trackingUrl
|
|
795
823
|
status
|
|
796
|
-
|
|
824
|
+
estimatedDeliveryAt
|
|
797
825
|
shippedAt
|
|
798
826
|
deliveredAt
|
|
799
827
|
createdAt
|
|
@@ -875,23 +903,9 @@ fragment ReturnReasonOption on ReturnReasonOption {
|
|
|
875
903
|
# Gift Card Fragments (R32 - Gift Cards)
|
|
876
904
|
# ============================================
|
|
877
905
|
|
|
878
|
-
fragment GiftCardTransaction on GiftCardTransaction {
|
|
879
|
-
id
|
|
880
|
-
type
|
|
881
|
-
amount {
|
|
882
|
-
...Money
|
|
883
|
-
}
|
|
884
|
-
balanceAfter {
|
|
885
|
-
...Money
|
|
886
|
-
}
|
|
887
|
-
orderId
|
|
888
|
-
createdAt
|
|
889
|
-
}
|
|
890
|
-
|
|
891
906
|
fragment GiftCard on GiftCard {
|
|
892
907
|
id
|
|
893
908
|
maskedCode
|
|
894
|
-
lastCharacters
|
|
895
909
|
status
|
|
896
910
|
initialAmount {
|
|
897
911
|
...Money
|
|
@@ -902,9 +916,6 @@ fragment GiftCard on GiftCard {
|
|
|
902
916
|
expiresAt
|
|
903
917
|
recipientName
|
|
904
918
|
message
|
|
905
|
-
transactions {
|
|
906
|
-
...GiftCardTransaction
|
|
907
|
-
}
|
|
908
919
|
createdAt
|
|
909
920
|
}
|
|
910
921
|
|
|
@@ -914,7 +925,7 @@ fragment GiftCardError on GiftCardError {
|
|
|
914
925
|
}
|
|
915
926
|
|
|
916
927
|
fragment GiftCardValidation on GiftCardValidation {
|
|
917
|
-
|
|
928
|
+
isValid
|
|
918
929
|
availableBalance {
|
|
919
930
|
...Money
|
|
920
931
|
}
|
|
@@ -1150,11 +1161,11 @@ fragment LoyaltyReward on LoyaltyReward {
|
|
|
1150
1161
|
image {
|
|
1151
1162
|
...ImageCard
|
|
1152
1163
|
}
|
|
1153
|
-
|
|
1164
|
+
isAvailable
|
|
1154
1165
|
tierRequired {
|
|
1155
1166
|
...LoyaltyTier
|
|
1156
1167
|
}
|
|
1157
|
-
|
|
1168
|
+
redemptionsRemaining
|
|
1158
1169
|
}
|
|
1159
1170
|
|
|
1160
1171
|
fragment PointsEstimate on PointsEstimate {
|
|
@@ -1166,12 +1177,12 @@ fragment PointsEstimate on PointsEstimate {
|
|
|
1166
1177
|
|
|
1167
1178
|
fragment LoyaltyAction on LoyaltyAction {
|
|
1168
1179
|
type
|
|
1169
|
-
|
|
1180
|
+
isEnabled
|
|
1170
1181
|
points
|
|
1171
1182
|
}
|
|
1172
1183
|
|
|
1173
1184
|
fragment LoyaltySettings on LoyaltySettings {
|
|
1174
|
-
|
|
1185
|
+
isEnabled
|
|
1175
1186
|
pointsName
|
|
1176
1187
|
pointsPerCurrency
|
|
1177
1188
|
pointsExpiryMonths
|
|
@@ -1224,6 +1235,7 @@ fragment ProductReview on ProductReview {
|
|
|
1224
1235
|
authorName
|
|
1225
1236
|
isVerifiedPurchase
|
|
1226
1237
|
helpfulCount
|
|
1238
|
+
unhelpfulCount
|
|
1227
1239
|
response
|
|
1228
1240
|
responseAt
|
|
1229
1241
|
createdAt
|
|
@@ -1250,7 +1262,7 @@ fragment WishlistItem on WishlistItem {
|
|
|
1250
1262
|
product {
|
|
1251
1263
|
...ProductCard
|
|
1252
1264
|
}
|
|
1253
|
-
|
|
1265
|
+
priceWhenAdded {
|
|
1254
1266
|
...Money
|
|
1255
1267
|
}
|
|
1256
1268
|
notifyOnSale
|
|
@@ -1296,7 +1308,7 @@ fragment BlogPost on BlogPost {
|
|
|
1296
1308
|
slug
|
|
1297
1309
|
excerpt
|
|
1298
1310
|
content
|
|
1299
|
-
|
|
1311
|
+
contentFormat
|
|
1300
1312
|
featuredImage {
|
|
1301
1313
|
...ImageCard
|
|
1302
1314
|
}
|
|
@@ -1315,7 +1327,7 @@ fragment BlogPost on BlogPost {
|
|
|
1315
1327
|
...BlogTag
|
|
1316
1328
|
}
|
|
1317
1329
|
publishedAt
|
|
1318
|
-
|
|
1330
|
+
readingTimeMinutes
|
|
1319
1331
|
viewCount
|
|
1320
1332
|
commentCount
|
|
1321
1333
|
allowComments
|
|
@@ -1362,23 +1374,23 @@ fragment CartRecommendation on CartRecommendations {
|
|
|
1362
1374
|
}
|
|
1363
1375
|
|
|
1364
1376
|
# ============================================
|
|
1365
|
-
# Store Availability Fragments (
|
|
1377
|
+
# Store Availability Fragments (BOPIS / multi-location)
|
|
1366
1378
|
# ============================================
|
|
1367
1379
|
# Field access:
|
|
1368
1380
|
# - `available: Boolean!` — always public.
|
|
1369
|
-
# - `
|
|
1381
|
+
# - `pickupTime: String` — public, localized merchant-configured string.
|
|
1370
1382
|
# - `quantityAvailable: Int` — TOKEN-GATED (null for anonymous, Int for authenticated).
|
|
1371
1383
|
# - `location: Location!` — public, includes coords + businessHours when configured.
|
|
1372
1384
|
|
|
1373
1385
|
fragment LocationAddress on LocationAddress {
|
|
1374
|
-
|
|
1375
|
-
|
|
1386
|
+
streetLine1
|
|
1387
|
+
streetLine2
|
|
1376
1388
|
city
|
|
1377
1389
|
country
|
|
1378
1390
|
countryCode
|
|
1379
|
-
|
|
1380
|
-
|
|
1381
|
-
|
|
1391
|
+
state
|
|
1392
|
+
stateCode
|
|
1393
|
+
postalCode
|
|
1382
1394
|
phone
|
|
1383
1395
|
latitude
|
|
1384
1396
|
longitude
|
|
@@ -1404,7 +1416,7 @@ fragment Location on Location {
|
|
|
1404
1416
|
id
|
|
1405
1417
|
name
|
|
1406
1418
|
type
|
|
1407
|
-
|
|
1419
|
+
supportsPickup
|
|
1408
1420
|
timezone
|
|
1409
1421
|
pickupInstructions
|
|
1410
1422
|
address {
|
|
@@ -1416,9 +1428,9 @@ fragment Location on Location {
|
|
|
1416
1428
|
}
|
|
1417
1429
|
|
|
1418
1430
|
fragment StoreAvailability on StoreAvailability {
|
|
1419
|
-
|
|
1420
|
-
|
|
1421
|
-
|
|
1431
|
+
isAvailable
|
|
1432
|
+
availableStock
|
|
1433
|
+
pickupTime
|
|
1422
1434
|
location {
|
|
1423
1435
|
...Location
|
|
1424
1436
|
}
|
|
@@ -1441,8 +1453,8 @@ fragment VariantStoreAvailability on ProductVariant {
|
|
|
1441
1453
|
id
|
|
1442
1454
|
title
|
|
1443
1455
|
sku
|
|
1444
|
-
|
|
1445
|
-
|
|
1456
|
+
isAvailable
|
|
1457
|
+
availableStock
|
|
1446
1458
|
storeAvailability(first: 10) {
|
|
1447
1459
|
...StoreAvailabilityConnection
|
|
1448
1460
|
}
|
|
@@ -1457,7 +1469,7 @@ fragment ShopPage on ShopPage {
|
|
|
1457
1469
|
handle
|
|
1458
1470
|
title
|
|
1459
1471
|
body
|
|
1460
|
-
|
|
1472
|
+
excerpt
|
|
1461
1473
|
seo {
|
|
1462
1474
|
title
|
|
1463
1475
|
description
|
|
@@ -1500,7 +1512,6 @@ fragment Menu on Menu {
|
|
|
1500
1512
|
id
|
|
1501
1513
|
handle
|
|
1502
1514
|
title
|
|
1503
|
-
itemsCount
|
|
1504
1515
|
items {
|
|
1505
1516
|
...MenuItem
|
|
1506
1517
|
}
|
|
@@ -1518,7 +1529,7 @@ fragment UrlRedirect on UrlRedirect {
|
|
|
1518
1529
|
# ============================================
|
|
1519
1530
|
# Unified Product Configurator (Faza 1 + Faza 1.5 — Decision D-A v3 + D-I)
|
|
1520
1531
|
# ============================================
|
|
1521
|
-
# Hybrid
|
|
1532
|
+
# Hybrid AttributeSet binding:
|
|
1522
1533
|
# - Product.attributes returns UNION of set definitions (via Product.attributeSetId)
|
|
1523
1534
|
# and per-product scoped definitions (AttributeDefinition.scopeProductId = product.id)
|
|
1524
1535
|
# - CUSTOMER fillingMode → rendered in storefront configurator UX
|
|
@@ -1530,7 +1541,7 @@ fragment LinkedVariantSummary on LinkedVariantSummary {
|
|
|
1530
1541
|
productId
|
|
1531
1542
|
title
|
|
1532
1543
|
sku
|
|
1533
|
-
|
|
1544
|
+
availableStock
|
|
1534
1545
|
isAvailable
|
|
1535
1546
|
trackQuantity
|
|
1536
1547
|
}
|