1
1
'use strict' ;
2
2
3
3
const map = {
4
- accessScope : ' access-scope',
5
- apiPermission : ' api-permission',
6
- applicationCharge : ' application-charge',
7
- applicationCredit : ' application-credit',
8
- article : ' article',
9
- asset : ' asset',
10
- balance : ' balance',
11
- blog : ' blog',
12
- cancellationRequest : ' cancellation-request',
13
- carrierService : ' carrier-service',
14
- checkout : ' checkout',
15
- collect : ' collect',
16
- collection : ' collection',
17
- collectionListing : ' collection-listing',
18
- comment : ' comment',
19
- country : ' country',
20
- currency : ' currency',
21
- customCollection : ' custom-collection',
22
- customer : ' customer',
23
- customerAddress : ' customer-address',
24
- customerSavedSearch : ' customer-saved-search',
25
- deprecatedApiCall : ' deprecated-api-call',
26
- discountCode : ' discount-code',
27
- discountCodeCreationJob : ' discount-code-creation-job',
28
- dispute : ' dispute',
29
- disputeEvidence : ' dispute-evidence',
30
- disputeFileUpload : ' dispute-file-upload',
31
- draftOrder : ' draft-order',
32
- event : ' event',
33
- fulfillment : ' fulfillment',
34
- fulfillmentEvent : ' fulfillment-event',
35
- fulfillmentOrder : ' fulfillment-order',
36
- fulfillmentRequest : ' fulfillment-request',
37
- fulfillmentService : ' fulfillment-service',
38
- giftCard : ' gift-card',
39
- giftCardAdjustment : ' gift-card-adjustment',
40
- inventoryItem : ' inventory-item',
41
- inventoryLevel : ' inventory-level',
42
- location : ' location',
43
- marketingEvent : ' marketing-event',
44
- metafield : ' metafield',
45
- order : ' order',
46
- orderRisk : ' order-risk',
47
- page : ' page',
48
- payment : ' payment',
49
- payout : ' payout',
50
- policy : ' policy',
51
- priceRule : ' price-rule',
52
- product : ' product',
53
- productImage : ' product-image',
54
- productListing : ' product-listing',
55
- productResourceFeedback : ' product-resource-feedback',
56
- productVariant : ' product-variant',
57
- province : ' province',
58
- recurringApplicationCharge : ' recurring-application-charge',
59
- redirect : ' redirect',
60
- refund : ' refund',
61
- report : ' report',
62
- resourceFeedback : ' resource-feedback',
63
- scriptTag : ' script-tag',
64
- shippingZone : ' shipping-zone',
65
- shop : ' shop',
66
- smartCollection : ' smart-collection',
67
- storefrontAccessToken : ' storefront-access-token',
68
- tenderTransaction : ' tender-transaction',
69
- theme : ' theme',
70
- transaction : ' transaction',
71
- usageCharge : ' usage-charge',
72
- user : ' user',
73
- webhook : ' webhook'
4
+ accessScope : ( ) => require ( './ access-scope') ,
5
+ apiPermission : ( ) => require ( './ api-permission') ,
6
+ applicationCharge : ( ) => require ( './ application-charge') ,
7
+ applicationCredit : ( ) => require ( './ application-credit') ,
8
+ article : ( ) => require ( './ article') ,
9
+ asset : ( ) => require ( './ asset') ,
10
+ balance : ( ) => require ( './ balance') ,
11
+ blog : ( ) => require ( './ blog') ,
12
+ cancellationRequest : ( ) => require ( './ cancellation-request') ,
13
+ carrierService : ( ) => require ( './ carrier-service') ,
14
+ checkout : ( ) => require ( './ checkout') ,
15
+ collect : ( ) => require ( './ collect') ,
16
+ collection : ( ) => require ( './ collection') ,
17
+ collectionListing : ( ) => require ( './ collection-listing') ,
18
+ comment : ( ) => require ( './ comment') ,
19
+ country : ( ) => require ( './ country') ,
20
+ currency : ( ) => require ( './ currency') ,
21
+ customCollection : ( ) => require ( './ custom-collection') ,
22
+ customer : ( ) => require ( './ customer') ,
23
+ customerAddress : ( ) => require ( './ customer-address') ,
24
+ customerSavedSearch : ( ) => require ( './ customer-saved-search') ,
25
+ deprecatedApiCall : ( ) => require ( './ deprecated-api-call') ,
26
+ discountCode : ( ) => require ( './ discount-code') ,
27
+ discountCodeCreationJob : ( ) => require ( './ discount-code-creation-job') ,
28
+ dispute : ( ) => require ( './ dispute') ,
29
+ disputeEvidence : ( ) => require ( './ dispute-evidence') ,
30
+ disputeFileUpload : ( ) => require ( './ dispute-file-upload') ,
31
+ draftOrder : ( ) => require ( './ draft-order') ,
32
+ event : ( ) => require ( './ event') ,
33
+ fulfillment : ( ) => require ( './ fulfillment') ,
34
+ fulfillmentEvent : ( ) => require ( './ fulfillment-event') ,
35
+ fulfillmentOrder : ( ) => require ( './ fulfillment-order') ,
36
+ fulfillmentRequest : ( ) => require ( './ fulfillment-request') ,
37
+ fulfillmentService : ( ) => require ( './ fulfillment-service') ,
38
+ giftCard : ( ) => require ( './ gift-card') ,
39
+ giftCardAdjustment : ( ) => require ( './ gift-card-adjustment') ,
40
+ inventoryItem : ( ) => require ( './ inventory-item') ,
41
+ inventoryLevel : ( ) => require ( './ inventory-level') ,
42
+ location : ( ) => require ( './ location') ,
43
+ marketingEvent : ( ) => require ( './ marketing-event') ,
44
+ metafield : ( ) => require ( './ metafield') ,
45
+ order : ( ) => require ( './ order') ,
46
+ orderRisk : ( ) => require ( './ order-risk') ,
47
+ page : ( ) => require ( './ page') ,
48
+ payment : ( ) => require ( './ payment') ,
49
+ payout : ( ) => require ( './ payout') ,
50
+ policy : ( ) => require ( './ policy') ,
51
+ priceRule : ( ) => require ( './ price-rule') ,
52
+ product : ( ) => require ( './ product') ,
53
+ productImage : ( ) => require ( './ product-image') ,
54
+ productListing : ( ) => require ( './ product-listing') ,
55
+ productResourceFeedback : ( ) => require ( './ product-resource-feedback') ,
56
+ productVariant : ( ) => require ( './ product-variant') ,
57
+ province : ( ) => require ( './ province') ,
58
+ recurringApplicationCharge : ( ) => require ( './ recurring-application-charge') ,
59
+ redirect : ( ) => require ( './ redirect') ,
60
+ refund : ( ) => require ( './ refund') ,
61
+ report : ( ) => require ( './ report') ,
62
+ resourceFeedback : ( ) => require ( './ resource-feedback') ,
63
+ scriptTag : ( ) => require ( './ script-tag') ,
64
+ shippingZone : ( ) => require ( './ shipping-zone') ,
65
+ shop : ( ) => require ( './ shop') ,
66
+ smartCollection : ( ) => require ( './ smart-collection') ,
67
+ storefrontAccessToken : ( ) => require ( './ storefront-access-token') ,
68
+ tenderTransaction : ( ) => require ( './ tender-transaction') ,
69
+ theme : ( ) => require ( './ theme') ,
70
+ transaction : ( ) => require ( './ transaction') ,
71
+ usageCharge : ( ) => require ( './ usage-charge') ,
72
+ user : ( ) => require ( './ user') ,
73
+ webhook : ( ) => require ( './ webhook')
74
74
} ;
75
75
76
76
/**
@@ -80,18 +80,18 @@ const map = {
80
80
* @private
81
81
*/
82
82
function registerAll ( Shopify ) {
83
- Object . keys ( map ) . forEach ( ( prop ) => {
84
- Object . defineProperty ( Shopify . prototype , prop , {
83
+ Object . entries ( map ) . forEach ( ( [ resourceName , importResource ] ) => {
84
+ Object . defineProperty ( Shopify . prototype , resourceName , {
85
85
configurable : true ,
86
86
get : function get ( ) {
87
- const resource = require ( `./ ${ map [ prop ] } ` ) ;
87
+ const resource = importResource ( ) ;
88
88
89
- return Object . defineProperty ( this , prop , {
89
+ return Object . defineProperty ( this , resourceName , {
90
90
value : new resource ( this )
91
- } ) [ prop ] ;
91
+ } ) [ resourceName ] ;
92
92
} ,
93
93
set : function set ( value ) {
94
- Object . defineProperty ( this , prop , { value } ) ;
94
+ Object . defineProperty ( this , resourceName , { value } ) ;
95
95
}
96
96
} ) ;
97
97
} ) ;
0 commit comments