@shopify/shopify-api 6.0.0-rc1 → 6.0.0-rc3
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 +4 -0
- package/README.md +4 -3
- package/dist/adapters/__e2etests__/test_apps/test-cf-worker-app.d.ts +6 -0
- package/dist/adapters/__e2etests__/test_apps/test-cf-worker-app.d.ts.map +1 -0
- package/dist/adapters/__e2etests__/test_apps/test-cf-worker-app.js +178 -0
- package/dist/adapters/__e2etests__/test_apps/test-dummy-shopify-server.d.ts +2 -0
- package/dist/adapters/__e2etests__/test_apps/test-dummy-shopify-server.d.ts.map +1 -0
- package/dist/adapters/__e2etests__/test_apps/test-dummy-shopify-server.js +201 -0
- package/dist/adapters/__e2etests__/test_apps/test-node-app.d.ts +2 -0
- package/dist/adapters/__e2etests__/test_apps/test-node-app.d.ts.map +1 -0
- package/dist/adapters/__e2etests__/test_apps/test-node-app.js +194 -0
- package/dist/adapters/__e2etests__/test_config_types.d.ts +30 -0
- package/dist/adapters/__e2etests__/test_config_types.d.ts.map +1 -0
- package/dist/adapters/__e2etests__/test_config_types.js +23 -0
- package/dist/adapters/__e2etests__/test_environments.d.ts +4 -0
- package/dist/adapters/__e2etests__/test_environments.d.ts.map +1 -0
- package/dist/adapters/__e2etests__/test_environments.js +105 -0
- package/dist/adapters/__e2etests__/test_suite.d.ts +8 -0
- package/dist/adapters/__e2etests__/test_suite.d.ts.map +1 -0
- package/dist/adapters/__e2etests__/test_suite.js +314 -0
- package/dist/adapters/__e2etests__/utils.d.ts +5 -0
- package/dist/adapters/__e2etests__/utils.d.ts.map +1 -0
- package/dist/adapters/__e2etests__/utils.js +47 -0
- package/dist/adapters/cf-worker/index.js +8 -11
- package/dist/adapters/mock/index.js +8 -11
- package/dist/adapters/node/index.js +8 -11
- package/dist/auth/oauth/oauth.d.ts +0 -2
- package/dist/auth/oauth/oauth.d.ts.map +1 -1
- package/dist/auth/oauth/oauth.js +6 -7
- package/dist/auth/oauth/types.d.ts +2 -0
- package/dist/auth/oauth/types.d.ts.map +1 -1
- package/dist/auth/oauth/types.js +3 -0
- package/dist/base-types.d.ts +8 -8
- package/dist/base-types.d.ts.map +1 -1
- package/dist/base-types.js +2 -2
- package/dist/clients/graphql/graphql_client.d.ts +2 -2
- package/dist/clients/graphql/storefront_client.d.ts +2 -2
- package/dist/clients/http_client/http_client.d.ts +1 -1
- package/dist/clients/http_client/http_client.d.ts.map +1 -1
- package/dist/clients/http_client/http_client.js +7 -4
- package/dist/clients/http_client/types.d.ts +1 -2
- package/dist/clients/http_client/types.d.ts.map +1 -1
- package/dist/clients/index.d.ts +6 -6
- package/dist/config.d.ts +2 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/rest/admin/2022-01/abandoned_checkout.d.ts +2 -2
- package/dist/rest/admin/2022-01/abandoned_checkout.d.ts.map +1 -1
- package/dist/rest/admin/2022-01/abandoned_checkout.js +3 -2
- package/dist/rest/admin/2022-01/customer.d.ts +5 -0
- package/dist/rest/admin/2022-01/customer.d.ts.map +1 -1
- package/dist/rest/admin/2022-01/customer.js +21 -0
- package/dist/rest/admin/2022-01/gift_card.d.ts +5 -1
- package/dist/rest/admin/2022-01/gift_card.d.ts.map +1 -1
- package/dist/rest/admin/2022-01/gift_card.js +5 -5
- package/dist/rest/admin/2022-01/metafield.d.ts +3 -1
- package/dist/rest/admin/2022-01/metafield.d.ts.map +1 -1
- package/dist/rest/admin/2022-01/metafield.js +10 -6
- package/dist/rest/admin/2022-04/abandoned_checkout.d.ts +2 -2
- package/dist/rest/admin/2022-04/abandoned_checkout.d.ts.map +1 -1
- package/dist/rest/admin/2022-04/abandoned_checkout.js +3 -2
- package/dist/rest/admin/2022-04/customer.d.ts +5 -0
- package/dist/rest/admin/2022-04/customer.d.ts.map +1 -1
- package/dist/rest/admin/2022-04/customer.js +21 -0
- package/dist/rest/admin/2022-04/gift_card.d.ts +5 -1
- package/dist/rest/admin/2022-04/gift_card.d.ts.map +1 -1
- package/dist/rest/admin/2022-04/gift_card.js +5 -5
- package/dist/rest/admin/2022-04/metafield.d.ts.map +1 -1
- package/dist/rest/admin/2022-04/metafield.js +4 -2
- package/dist/rest/admin/2022-07/abandoned_checkout.d.ts +2 -2
- package/dist/rest/admin/2022-07/abandoned_checkout.d.ts.map +1 -1
- package/dist/rest/admin/2022-07/abandoned_checkout.js +3 -2
- package/dist/rest/admin/2022-07/customer.d.ts +5 -0
- package/dist/rest/admin/2022-07/customer.d.ts.map +1 -1
- package/dist/rest/admin/2022-07/customer.js +21 -0
- package/dist/rest/admin/2022-07/dispute_evidence.d.ts +1 -1
- package/dist/rest/admin/2022-07/dispute_evidence.d.ts.map +1 -1
- package/dist/rest/admin/2022-07/fulfillment_service.d.ts +0 -1
- package/dist/rest/admin/2022-07/fulfillment_service.d.ts.map +1 -1
- package/dist/rest/admin/2022-07/gift_card.d.ts +5 -1
- package/dist/rest/admin/2022-07/gift_card.d.ts.map +1 -1
- package/dist/rest/admin/2022-07/gift_card.js +5 -5
- package/dist/rest/admin/2022-07/metafield.d.ts.map +1 -1
- package/dist/rest/admin/2022-07/metafield.js +4 -2
- package/dist/rest/admin/{2021-10 → 2022-10}/abandoned_checkout.d.ts +2 -2
- package/dist/rest/admin/{2021-10 → 2022-10}/abandoned_checkout.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/abandoned_checkout.js +4 -3
- package/dist/rest/admin/{2021-10 → 2022-10}/access_scope.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/access_scope.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/access_scope.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/android_pay_key.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/android_pay_key.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/android_pay_key.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/apple_pay_certificate.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/apple_pay_certificate.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/apple_pay_certificate.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/application_charge.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/application_charge.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/application_charge.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/application_credit.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/application_credit.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/application_credit.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/article.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/article.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/article.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/asset.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/asset.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/asset.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/assigned_fulfillment_order.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/assigned_fulfillment_order.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/assigned_fulfillment_order.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/balance.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/balance.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/balance.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/blog.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/blog.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/blog.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/cancellation_request.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/cancellation_request.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/cancellation_request.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/carrier_service.d.ts +0 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/carrier_service.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/carrier_service.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/checkout.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/checkout.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/checkout.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/collect.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/collect.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/collect.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/collection.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/collection.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/collection.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/collection_listing.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/collection_listing.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/collection_listing.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/comment.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/comment.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/comment.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/country.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/country.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/country.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/currency.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/currency.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/currency.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/custom_collection.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/custom_collection.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/custom_collection.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/customer.d.ts +8 -0
- package/dist/rest/admin/2022-10/customer.d.ts.map +1 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/customer.js +22 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/customer_address.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/customer_address.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/customer_address.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/customer_saved_search.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/customer_saved_search.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/customer_saved_search.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/deprecated_api_call.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/deprecated_api_call.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/deprecated_api_call.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/discount_code.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/discount_code.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/discount_code.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/dispute.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/dispute.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/dispute.js +1 -1
- package/dist/rest/admin/2022-10/dispute_evidence.d.ts +57 -0
- package/dist/rest/admin/2022-10/dispute_evidence.d.ts.map +1 -0
- package/dist/rest/admin/2022-10/dispute_evidence.js +48 -0
- package/dist/rest/admin/2022-10/dispute_file_upload.d.ts +36 -0
- package/dist/rest/admin/2022-10/dispute_file_upload.d.ts.map +1 -0
- package/dist/rest/admin/2022-10/dispute_file_upload.js +46 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/draft_order.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/draft_order.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/draft_order.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/event.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/event.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/event.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/fulfillment.d.ts +0 -14
- package/dist/rest/admin/2022-10/fulfillment.d.ts.map +1 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/fulfillment.js +3 -52
- package/dist/rest/admin/{2021-10 → 2022-10}/fulfillment_event.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/fulfillment_event.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/fulfillment_event.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/fulfillment_order.d.ts +10 -0
- package/dist/rest/admin/2022-10/fulfillment_order.d.ts.map +1 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/fulfillment_order.js +25 -2
- package/dist/rest/admin/{2021-10 → 2022-10}/fulfillment_request.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/fulfillment_request.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/fulfillment_request.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/fulfillment_service.d.ts +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/fulfillment_service.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/fulfillment_service.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/gift_card.d.ts +5 -1
- package/dist/rest/admin/2022-10/gift_card.d.ts.map +1 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/gift_card.js +6 -6
- package/dist/rest/admin/{2021-10 → 2022-10}/gift_card_adjustment.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/gift_card_adjustment.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/gift_card_adjustment.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/image.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/image.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/image.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/index.d.ts +4 -0
- package/dist/rest/admin/2022-10/index.d.ts.map +1 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/index.js +4 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/inventory_item.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/inventory_item.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/inventory_item.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/inventory_level.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/inventory_level.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/inventory_level.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/location.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/location.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/location.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/locations_for_move.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/locations_for_move.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/locations_for_move.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/marketing_event.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/marketing_event.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/marketing_event.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/metafield.d.ts +2 -3
- package/dist/rest/admin/2022-10/metafield.d.ts.map +1 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/metafield.js +7 -4
- package/dist/rest/admin/{2021-10 → 2022-10}/mobile_platform_application.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/mobile_platform_application.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/mobile_platform_application.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/order.d.ts +1 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/order.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/order.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/order_risk.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/order_risk.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/order_risk.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/page.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/page.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/page.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/payment.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/payment.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/payment.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/payment_gateway.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/payment_gateway.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/payment_gateway.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/payment_transaction.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/payment_transaction.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/payment_transaction.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/payout.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/payout.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/payout.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/policy.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/policy.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/policy.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/price_rule.d.ts +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/price_rule.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/price_rule.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/product.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/product.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/product.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/product_listing.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/product_listing.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/product_listing.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/product_resource_feedback.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/product_resource_feedback.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/product_resource_feedback.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/province.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/province.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/province.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/recurring_application_charge.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/recurring_application_charge.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/recurring_application_charge.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/redirect.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/redirect.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/redirect.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/refund.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/refund.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/refund.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/report.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/report.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/report.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/resource_feedback.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/resource_feedback.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/resource_feedback.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/script_tag.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/script_tag.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/script_tag.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/shipping_zone.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/shipping_zone.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/shipping_zone.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/shop.d.ts +1 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/shop.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/shop.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/smart_collection.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/smart_collection.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/smart_collection.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/storefront_access_token.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/storefront_access_token.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/storefront_access_token.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/tender_transaction.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/tender_transaction.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/tender_transaction.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/theme.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/theme.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/theme.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/transaction.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/transaction.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/transaction.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/usage_charge.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/usage_charge.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/usage_charge.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/user.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/user.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/user.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/variant.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/variant.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/variant.js +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/webhook.d.ts +0 -0
- package/dist/rest/admin/{2021-10 → 2022-10}/webhook.d.ts.map +1 -1
- package/dist/rest/admin/{2021-10 → 2022-10}/webhook.js +1 -1
- package/dist/runtime/crypto/index.d.ts +1 -0
- package/dist/runtime/crypto/index.d.ts.map +1 -1
- package/dist/runtime/crypto/index.js +1 -0
- package/dist/runtime/index.d.ts +5 -0
- package/dist/runtime/index.d.ts.map +1 -0
- package/dist/runtime/index.js +7 -0
- package/dist/runtime/platform/index.d.ts +1 -0
- package/dist/runtime/platform/index.d.ts.map +1 -1
- package/dist/runtime/platform/index.js +1 -0
- package/dist/runtime/platform/runtime-string.d.ts +3 -3
- package/dist/runtime/platform/runtime-string.d.ts.map +1 -1
- package/dist/runtime/platform/types.d.ts +1 -1
- package/dist/runtime/platform/types.d.ts.map +1 -1
- package/dist/runtime/session/index.d.ts +1 -0
- package/dist/runtime/session/index.d.ts.map +1 -1
- package/dist/runtime/session/index.js +2 -0
- package/dist/runtime/types.d.ts +5 -0
- package/dist/runtime/types.d.ts.map +1 -0
- package/dist/runtime/types.js +7 -0
- package/dist/session/session-utils.js +2 -2
- package/dist/session-storage/kv.d.ts +17 -0
- package/dist/session-storage/kv.d.ts.map +1 -0
- package/dist/session-storage/kv.js +183 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/webhooks/index.d.ts +6 -8
- package/dist/webhooks/index.d.ts.map +1 -1
- package/dist/webhooks/index.js +7 -7
- package/dist/webhooks/registry.d.ts +8 -16
- package/dist/webhooks/registry.d.ts.map +1 -1
- package/dist/webhooks/registry.js +81 -91
- package/dist/webhooks/types.d.ts +12 -17
- package/dist/webhooks/types.d.ts.map +1 -1
- package/package.json +13 -3
- package/dist/rest/admin/2021-10/customer.d.ts.map +0 -1
- package/dist/rest/admin/2021-10/fulfillment.d.ts.map +0 -1
- package/dist/rest/admin/2021-10/fulfillment_order.d.ts.map +0 -1
- package/dist/rest/admin/2021-10/gift_card.d.ts.map +0 -1
- package/dist/rest/admin/2021-10/index.d.ts.map +0 -1
- package/dist/rest/admin/2021-10/metafield.d.ts.map +0 -1
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.initTestResponse = exports.initTestRequest = void 0;
|
|
4
|
+
var tslib_1 = require("tslib");
|
|
5
|
+
function initTestRequest(options) {
|
|
6
|
+
var defaults = {
|
|
7
|
+
method: 'get',
|
|
8
|
+
url: '/url/path',
|
|
9
|
+
headers: {},
|
|
10
|
+
};
|
|
11
|
+
return tslib_1.__assign(tslib_1.__assign({}, defaults), options);
|
|
12
|
+
}
|
|
13
|
+
exports.initTestRequest = initTestRequest;
|
|
14
|
+
function initTestResponse(options) {
|
|
15
|
+
var defaults = {
|
|
16
|
+
statusCode: 200,
|
|
17
|
+
statusText: 'OK',
|
|
18
|
+
headers: {},
|
|
19
|
+
body: JSON.stringify({ message: 'Your HTTP request was successful!' }),
|
|
20
|
+
};
|
|
21
|
+
return tslib_1.__assign(tslib_1.__assign({}, defaults), options);
|
|
22
|
+
}
|
|
23
|
+
exports.initTestResponse = initTestResponse;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { E2eTestEnvironment } from './test_config_types';
|
|
2
|
+
export declare function shutdownEnvironments(environments: E2eTestEnvironment[]): void;
|
|
3
|
+
export declare function runEnvironments(environments: E2eTestEnvironment[]): Promise<boolean>;
|
|
4
|
+
//# sourceMappingURL=test_environments.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test_environments.d.ts","sourceRoot":"","sources":["../../../src/adapters/__e2etests__/test_environments.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,kBAAkB,EAAC,MAAM,qBAAqB,CAAC;AAQvD,wBAAgB,oBAAoB,CAAC,YAAY,EAAE,kBAAkB,EAAE,GAAG,IAAI,CAM7E;AAeD,wBAAsB,eAAe,CACnC,YAAY,EAAE,kBAAkB,EAAE,GACjC,OAAO,CAAC,OAAO,CAAC,CAiBlB"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.runEnvironments = exports.shutdownEnvironments = void 0;
|
|
4
|
+
var tslib_1 = require("tslib");
|
|
5
|
+
var node_fetch_1 = tslib_1.__importDefault(require("node-fetch"));
|
|
6
|
+
function sleep(ms) {
|
|
7
|
+
return new Promise(function (resolve) {
|
|
8
|
+
setTimeout(resolve, ms);
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
function shutdownEnvironments(environments) {
|
|
12
|
+
var e_1, _a;
|
|
13
|
+
try {
|
|
14
|
+
for (var environments_1 = tslib_1.__values(environments), environments_1_1 = environments_1.next(); !environments_1_1.done; environments_1_1 = environments_1.next()) {
|
|
15
|
+
var env = environments_1_1.value;
|
|
16
|
+
if (typeof env.process.pid !== 'undefined') {
|
|
17
|
+
process.kill(-env.process.pid);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
22
|
+
finally {
|
|
23
|
+
try {
|
|
24
|
+
if (environments_1_1 && !environments_1_1.done && (_a = environments_1.return)) _a.call(environments_1);
|
|
25
|
+
}
|
|
26
|
+
finally { if (e_1) throw e_1.error; }
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
exports.shutdownEnvironments = shutdownEnvironments;
|
|
30
|
+
function serverReady(domain) {
|
|
31
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
32
|
+
var response, err_1;
|
|
33
|
+
return tslib_1.__generator(this, function (_a) {
|
|
34
|
+
switch (_a.label) {
|
|
35
|
+
case 0:
|
|
36
|
+
_a.trys.push([0, 2, , 3]);
|
|
37
|
+
return [4 /*yield*/, (0, node_fetch_1.default)(domain)];
|
|
38
|
+
case 1:
|
|
39
|
+
response = _a.sent();
|
|
40
|
+
return [2 /*return*/, response.status === 200];
|
|
41
|
+
case 2:
|
|
42
|
+
err_1 = _a.sent();
|
|
43
|
+
return [2 /*return*/, false];
|
|
44
|
+
case 3: return [2 /*return*/];
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
function allEnvironmentsReady(environments) {
|
|
50
|
+
return environments.map(function (env) { return env.ready; }).every(function (ready) { return ready; });
|
|
51
|
+
}
|
|
52
|
+
function runEnvironments(environments) {
|
|
53
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
54
|
+
var maxAttempts, environments_2, environments_2_1, env, attempts, ready, e_2_1;
|
|
55
|
+
var e_2, _a;
|
|
56
|
+
return tslib_1.__generator(this, function (_b) {
|
|
57
|
+
switch (_b.label) {
|
|
58
|
+
case 0:
|
|
59
|
+
maxAttempts = 5;
|
|
60
|
+
if (allEnvironmentsReady(environments))
|
|
61
|
+
return [2 /*return*/, true];
|
|
62
|
+
_b.label = 1;
|
|
63
|
+
case 1:
|
|
64
|
+
_b.trys.push([1, 9, 10, 11]);
|
|
65
|
+
environments_2 = tslib_1.__values(environments), environments_2_1 = environments_2.next();
|
|
66
|
+
_b.label = 2;
|
|
67
|
+
case 2:
|
|
68
|
+
if (!!environments_2_1.done) return [3 /*break*/, 8];
|
|
69
|
+
env = environments_2_1.value;
|
|
70
|
+
attempts = 0;
|
|
71
|
+
ready = false;
|
|
72
|
+
_b.label = 3;
|
|
73
|
+
case 3:
|
|
74
|
+
if (!(!ready && attempts < maxAttempts)) return [3 /*break*/, 6];
|
|
75
|
+
attempts++;
|
|
76
|
+
return [4 /*yield*/, sleep(100)];
|
|
77
|
+
case 4:
|
|
78
|
+
_b.sent();
|
|
79
|
+
return [4 /*yield*/, serverReady(env.domain)];
|
|
80
|
+
case 5:
|
|
81
|
+
ready = _b.sent();
|
|
82
|
+
return [3 /*break*/, 3];
|
|
83
|
+
case 6:
|
|
84
|
+
env.ready = ready;
|
|
85
|
+
_b.label = 7;
|
|
86
|
+
case 7:
|
|
87
|
+
environments_2_1 = environments_2.next();
|
|
88
|
+
return [3 /*break*/, 2];
|
|
89
|
+
case 8: return [3 /*break*/, 11];
|
|
90
|
+
case 9:
|
|
91
|
+
e_2_1 = _b.sent();
|
|
92
|
+
e_2 = { error: e_2_1 };
|
|
93
|
+
return [3 /*break*/, 11];
|
|
94
|
+
case 10:
|
|
95
|
+
try {
|
|
96
|
+
if (environments_2_1 && !environments_2_1.done && (_a = environments_2.return)) _a.call(environments_2);
|
|
97
|
+
}
|
|
98
|
+
finally { if (e_2) throw e_2.error; }
|
|
99
|
+
return [7 /*endfinally*/];
|
|
100
|
+
case 11: return [2 /*return*/, allEnvironmentsReady(environments)];
|
|
101
|
+
}
|
|
102
|
+
});
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
exports.runEnvironments = runEnvironments;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test_suite.d.ts","sourceRoot":"","sources":["../../../src/adapters/__e2etests__/test_suite.ts"],"names":[],"mappings":"AA4BA,eAAO,MAAM,SAAS;;;;;;GA0SrB,CAAC"}
|
|
@@ -0,0 +1,314 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.testSuite = void 0;
|
|
4
|
+
var tslib_1 = require("tslib");
|
|
5
|
+
var types_1 = require("../../clients/http_client/types");
|
|
6
|
+
var processed_query_1 = tslib_1.__importDefault(require("../../utils/processed-query"));
|
|
7
|
+
var test_config_types_1 = require("./test_config_types");
|
|
8
|
+
var postData = {
|
|
9
|
+
title: 'Test product',
|
|
10
|
+
amount: 10,
|
|
11
|
+
};
|
|
12
|
+
var putData = {
|
|
13
|
+
title: 'Test product',
|
|
14
|
+
amount: 10,
|
|
15
|
+
};
|
|
16
|
+
var graphqlQuery = "\n query {\n webhookSubscriptions(first:5) {\n edges {\n node {\n id\n endpoint\n }\n }\n }\n }\n ";
|
|
17
|
+
exports.testSuite = [
|
|
18
|
+
{
|
|
19
|
+
name: 'can make GET request',
|
|
20
|
+
config: {
|
|
21
|
+
testRequest: (0, test_config_types_1.initTestRequest)(),
|
|
22
|
+
expectedResponse: (0, test_config_types_1.initTestResponse)(),
|
|
23
|
+
},
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
name: 'can make POST request with type JSON',
|
|
27
|
+
config: {
|
|
28
|
+
testRequest: (0, test_config_types_1.initTestRequest)({
|
|
29
|
+
method: 'post',
|
|
30
|
+
bodyType: types_1.DataType.JSON,
|
|
31
|
+
body: JSON.stringify(postData),
|
|
32
|
+
}),
|
|
33
|
+
expectedResponse: (0, test_config_types_1.initTestResponse)(),
|
|
34
|
+
},
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
name: 'can make POST request with type JSON and data is already formatted',
|
|
38
|
+
config: {
|
|
39
|
+
testRequest: (0, test_config_types_1.initTestRequest)({
|
|
40
|
+
method: 'post',
|
|
41
|
+
bodyType: types_1.DataType.JSON,
|
|
42
|
+
body: JSON.stringify(JSON.stringify(postData)),
|
|
43
|
+
}),
|
|
44
|
+
expectedResponse: (0, test_config_types_1.initTestResponse)(),
|
|
45
|
+
},
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
name: 'can make POST request with zero-length JSON',
|
|
49
|
+
config: {
|
|
50
|
+
testRequest: (0, test_config_types_1.initTestRequest)({
|
|
51
|
+
method: 'post',
|
|
52
|
+
bodyType: types_1.DataType.JSON,
|
|
53
|
+
body: JSON.stringify(''),
|
|
54
|
+
}),
|
|
55
|
+
expectedResponse: (0, test_config_types_1.initTestResponse)(),
|
|
56
|
+
},
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
name: 'can make POST request with form-data type',
|
|
60
|
+
config: {
|
|
61
|
+
testRequest: (0, test_config_types_1.initTestRequest)({
|
|
62
|
+
method: 'post',
|
|
63
|
+
bodyType: types_1.DataType.URLEncoded,
|
|
64
|
+
body: JSON.stringify(postData),
|
|
65
|
+
}),
|
|
66
|
+
expectedResponse: (0, test_config_types_1.initTestResponse)(),
|
|
67
|
+
},
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
name: 'can make POST request with form-data type and data is already formatted',
|
|
71
|
+
config: {
|
|
72
|
+
testRequest: (0, test_config_types_1.initTestRequest)({
|
|
73
|
+
method: 'post',
|
|
74
|
+
bodyType: types_1.DataType.URLEncoded,
|
|
75
|
+
body: processed_query_1.default.stringify(postData),
|
|
76
|
+
}),
|
|
77
|
+
expectedResponse: (0, test_config_types_1.initTestResponse)(),
|
|
78
|
+
},
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
name: 'can make POST request with GraphQL type',
|
|
82
|
+
config: {
|
|
83
|
+
testRequest: (0, test_config_types_1.initTestRequest)({
|
|
84
|
+
method: 'post',
|
|
85
|
+
bodyType: types_1.DataType.GraphQL,
|
|
86
|
+
body: graphqlQuery,
|
|
87
|
+
}),
|
|
88
|
+
expectedResponse: (0, test_config_types_1.initTestResponse)(),
|
|
89
|
+
},
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
name: 'can make PUT request with type JSON',
|
|
93
|
+
config: {
|
|
94
|
+
testRequest: (0, test_config_types_1.initTestRequest)({
|
|
95
|
+
method: 'put',
|
|
96
|
+
url: '/url/path/123',
|
|
97
|
+
bodyType: types_1.DataType.JSON,
|
|
98
|
+
body: JSON.stringify(putData),
|
|
99
|
+
}),
|
|
100
|
+
expectedResponse: (0, test_config_types_1.initTestResponse)(),
|
|
101
|
+
},
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
name: 'can make DELETE request',
|
|
105
|
+
config: {
|
|
106
|
+
testRequest: (0, test_config_types_1.initTestRequest)({
|
|
107
|
+
method: 'delete',
|
|
108
|
+
url: '/url/path/123',
|
|
109
|
+
}),
|
|
110
|
+
expectedResponse: (0, test_config_types_1.initTestResponse)(),
|
|
111
|
+
},
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
name: 'gracefully handles 403 error',
|
|
115
|
+
config: {
|
|
116
|
+
testRequest: (0, test_config_types_1.initTestRequest)({ url: '/url/path/403' }),
|
|
117
|
+
expectedResponse: (0, test_config_types_1.initTestResponse)({
|
|
118
|
+
statusCode: 403,
|
|
119
|
+
statusText: 'Did not work',
|
|
120
|
+
errorType: 'HttpResponseError',
|
|
121
|
+
expectRequestId: 'Request id header',
|
|
122
|
+
}),
|
|
123
|
+
},
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
name: 'gracefully handles 404 error',
|
|
127
|
+
config: {
|
|
128
|
+
testRequest: (0, test_config_types_1.initTestRequest)({ url: '/url/path/404' }),
|
|
129
|
+
expectedResponse: (0, test_config_types_1.initTestResponse)({
|
|
130
|
+
statusCode: 404,
|
|
131
|
+
statusText: 'Did not work',
|
|
132
|
+
errorType: 'HttpResponseError',
|
|
133
|
+
}),
|
|
134
|
+
},
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
name: 'gracefully handles 429 error',
|
|
138
|
+
config: {
|
|
139
|
+
testRequest: (0, test_config_types_1.initTestRequest)({ url: '/url/path/429' }),
|
|
140
|
+
expectedResponse: (0, test_config_types_1.initTestResponse)({
|
|
141
|
+
statusCode: 429,
|
|
142
|
+
statusText: 'Did not work',
|
|
143
|
+
errorType: 'HttpThrottlingError',
|
|
144
|
+
expectRequestId: 'Request id header',
|
|
145
|
+
}),
|
|
146
|
+
},
|
|
147
|
+
},
|
|
148
|
+
{
|
|
149
|
+
name: 'gracefully handles 500 error',
|
|
150
|
+
config: {
|
|
151
|
+
testRequest: (0, test_config_types_1.initTestRequest)({ url: '/url/path/500' }),
|
|
152
|
+
expectedResponse: (0, test_config_types_1.initTestResponse)({
|
|
153
|
+
statusCode: 500,
|
|
154
|
+
statusText: 'Did not work',
|
|
155
|
+
errorType: 'HttpInternalError',
|
|
156
|
+
expectRequestId: 'Request id header',
|
|
157
|
+
}),
|
|
158
|
+
},
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
name: 'allows custom headers',
|
|
162
|
+
config: {
|
|
163
|
+
testRequest: (0, test_config_types_1.initTestRequest)({
|
|
164
|
+
url: '/url/path/custom',
|
|
165
|
+
headers: { 'X-Not-A-Real-Header': 'some_value' },
|
|
166
|
+
}),
|
|
167
|
+
expectedResponse: (0, test_config_types_1.initTestResponse)({
|
|
168
|
+
headers: { 'X-Not-A-Real-Header': 'some_value' },
|
|
169
|
+
}),
|
|
170
|
+
},
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
name: 'extends User-Agent if it is provided (capitalized)',
|
|
174
|
+
config: {
|
|
175
|
+
testRequest: (0, test_config_types_1.initTestRequest)({
|
|
176
|
+
url: '/url/path/uppercaseua',
|
|
177
|
+
headers: { 'User-Agent': 'My agent' },
|
|
178
|
+
}),
|
|
179
|
+
expectedResponse: (0, test_config_types_1.initTestResponse)({
|
|
180
|
+
headers: { 'User-Agent': 'My agent' },
|
|
181
|
+
}),
|
|
182
|
+
},
|
|
183
|
+
},
|
|
184
|
+
{
|
|
185
|
+
name: 'extends User-Agent if it is provided (lowercase)',
|
|
186
|
+
config: {
|
|
187
|
+
testRequest: (0, test_config_types_1.initTestRequest)({
|
|
188
|
+
url: '/url/path/lowercaseua',
|
|
189
|
+
headers: { 'user-agent': 'My lowercase agent' },
|
|
190
|
+
}),
|
|
191
|
+
expectedResponse: (0, test_config_types_1.initTestResponse)({
|
|
192
|
+
headers: { 'user-agent': 'My lowercase agent' },
|
|
193
|
+
}),
|
|
194
|
+
},
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
name: 'fails with invalid retry count',
|
|
198
|
+
config: {
|
|
199
|
+
testRequest: (0, test_config_types_1.initTestRequest)({ tries: -1 }),
|
|
200
|
+
expectedResponse: (0, test_config_types_1.initTestResponse)({
|
|
201
|
+
statusCode: 500,
|
|
202
|
+
statusText: 'Did not work',
|
|
203
|
+
errorType: 'HttpRequestError',
|
|
204
|
+
}),
|
|
205
|
+
},
|
|
206
|
+
},
|
|
207
|
+
{
|
|
208
|
+
name: 'retries failed requests but returns success',
|
|
209
|
+
config: {
|
|
210
|
+
testRequest: (0, test_config_types_1.initTestRequest)({
|
|
211
|
+
url: '/url/path/retries',
|
|
212
|
+
tries: 3,
|
|
213
|
+
retryTimeoutTimer: 0,
|
|
214
|
+
}),
|
|
215
|
+
expectedResponse: (0, test_config_types_1.initTestResponse)(),
|
|
216
|
+
},
|
|
217
|
+
},
|
|
218
|
+
{
|
|
219
|
+
name: 'retries failed requests and stops on non-retriable errors',
|
|
220
|
+
config: {
|
|
221
|
+
testRequest: (0, test_config_types_1.initTestRequest)({
|
|
222
|
+
url: '/url/path/retrythenfail',
|
|
223
|
+
tries: 3,
|
|
224
|
+
retryTimeoutTimer: 0,
|
|
225
|
+
}),
|
|
226
|
+
expectedResponse: (0, test_config_types_1.initTestResponse)({
|
|
227
|
+
statusCode: 403,
|
|
228
|
+
statusText: 'Did not work',
|
|
229
|
+
errorType: 'HttpResponseError',
|
|
230
|
+
}),
|
|
231
|
+
},
|
|
232
|
+
},
|
|
233
|
+
{
|
|
234
|
+
name: 'stops retrying after reaching the limit',
|
|
235
|
+
config: {
|
|
236
|
+
testRequest: (0, test_config_types_1.initTestRequest)({
|
|
237
|
+
url: '/url/path/maxretries',
|
|
238
|
+
tries: 3,
|
|
239
|
+
retryTimeoutTimer: 0,
|
|
240
|
+
}),
|
|
241
|
+
expectedResponse: (0, test_config_types_1.initTestResponse)({
|
|
242
|
+
statusCode: 500,
|
|
243
|
+
statusText: 'Did not work',
|
|
244
|
+
errorType: 'HttpMaxRetriesError',
|
|
245
|
+
}),
|
|
246
|
+
},
|
|
247
|
+
},
|
|
248
|
+
{
|
|
249
|
+
name: 'waits for the amount of time defined by the Retry-After header',
|
|
250
|
+
config: {
|
|
251
|
+
testRequest: (0, test_config_types_1.initTestRequest)({
|
|
252
|
+
url: '/url/path/retrythensuccess',
|
|
253
|
+
tries: 2,
|
|
254
|
+
retryTimeoutTimer: 3000,
|
|
255
|
+
}),
|
|
256
|
+
expectedResponse: (0, test_config_types_1.initTestResponse)(),
|
|
257
|
+
},
|
|
258
|
+
},
|
|
259
|
+
{
|
|
260
|
+
name: 'properly encodes strings in the error message',
|
|
261
|
+
config: {
|
|
262
|
+
testRequest: (0, test_config_types_1.initTestRequest)({
|
|
263
|
+
url: '/url/path/error',
|
|
264
|
+
retryTimeoutTimer: 0,
|
|
265
|
+
}),
|
|
266
|
+
expectedResponse: (0, test_config_types_1.initTestResponse)({
|
|
267
|
+
statusCode: 500,
|
|
268
|
+
statusText: 'Did not work',
|
|
269
|
+
errorType: 'HttpInternalError',
|
|
270
|
+
errorMessage: "Shopify internal error:\n\"Something went wrong\"",
|
|
271
|
+
}),
|
|
272
|
+
},
|
|
273
|
+
},
|
|
274
|
+
{
|
|
275
|
+
name: 'properly encodes objects in the error message',
|
|
276
|
+
config: {
|
|
277
|
+
testRequest: (0, test_config_types_1.initTestRequest)({
|
|
278
|
+
url: '/url/path/detailederror',
|
|
279
|
+
retryTimeoutTimer: 0,
|
|
280
|
+
}),
|
|
281
|
+
expectedResponse: (0, test_config_types_1.initTestResponse)({
|
|
282
|
+
statusCode: 500,
|
|
283
|
+
statusText: 'Did not work',
|
|
284
|
+
errorType: 'HttpInternalError',
|
|
285
|
+
errorMessage: "Shopify internal error:" +
|
|
286
|
+
"\n{" +
|
|
287
|
+
"\n \"title\": \"Invalid title\"," +
|
|
288
|
+
"\n \"description\": \"Invalid description\"" +
|
|
289
|
+
"\n}",
|
|
290
|
+
}),
|
|
291
|
+
},
|
|
292
|
+
},
|
|
293
|
+
{
|
|
294
|
+
name: 'adds missing slashes to paths',
|
|
295
|
+
config: {
|
|
296
|
+
testRequest: (0, test_config_types_1.initTestRequest)({ url: 'url/path' }),
|
|
297
|
+
expectedResponse: (0, test_config_types_1.initTestResponse)(),
|
|
298
|
+
},
|
|
299
|
+
},
|
|
300
|
+
{
|
|
301
|
+
name: 'properly formats arrays and hashes in query strings',
|
|
302
|
+
config: {
|
|
303
|
+
testRequest: (0, test_config_types_1.initTestRequest)({
|
|
304
|
+
url: '/url/path/query',
|
|
305
|
+
query: JSON.stringify({
|
|
306
|
+
array: ['a', 'b', 'c'],
|
|
307
|
+
// eslint-disable-next-line id-length
|
|
308
|
+
hash: { a: 'b', c: 'd' },
|
|
309
|
+
}),
|
|
310
|
+
}),
|
|
311
|
+
expectedResponse: (0, test_config_types_1.initTestResponse)(),
|
|
312
|
+
},
|
|
313
|
+
},
|
|
314
|
+
];
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { Headers } from '../../runtime/http';
|
|
2
|
+
import { ConfigInterface } from '../../base-types';
|
|
3
|
+
export declare function matchHeaders(received: Headers, expected: Headers): boolean;
|
|
4
|
+
export declare const config: ConfigInterface;
|
|
5
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/adapters/__e2etests__/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAsB,MAAM,oBAAoB,CAAC;AAEhE,OAAO,EAAC,eAAe,EAAqB,MAAM,kBAAkB,CAAC;AAGrE,wBAAgB,YAAY,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAkB1E;AAED,eAAO,MAAM,MAAM,EAAE,eAUpB,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.config = exports.matchHeaders = void 0;
|
|
4
|
+
var tslib_1 = require("tslib");
|
|
5
|
+
var http_1 = require("../../runtime/http");
|
|
6
|
+
var memory_1 = require("../../session-storage/memory");
|
|
7
|
+
var base_types_1 = require("../../base-types");
|
|
8
|
+
var scopes_1 = require("../../auth/scopes");
|
|
9
|
+
function matchHeaders(received, expected) {
|
|
10
|
+
var e_1, _a;
|
|
11
|
+
var expectedHeadersCorrect = true;
|
|
12
|
+
var canonicalizedReceived = (0, http_1.canonicalizeHeaders)(received);
|
|
13
|
+
var canonicalizedExpected = (0, http_1.canonicalizeHeaders)(expected);
|
|
14
|
+
if (Object.keys(canonicalizedExpected).length > 0) {
|
|
15
|
+
try {
|
|
16
|
+
for (var _b = tslib_1.__values(Object.entries(canonicalizedExpected)), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
17
|
+
var _d = tslib_1.__read(_c.value, 2), expectedKey = _d[0], expectedValues = _d[1];
|
|
18
|
+
expectedHeadersCorrect =
|
|
19
|
+
expectedHeadersCorrect &&
|
|
20
|
+
expectedKey in canonicalizedReceived &&
|
|
21
|
+
received[expectedKey][0].includes(expectedValues[0]);
|
|
22
|
+
if (!expectedHeadersCorrect)
|
|
23
|
+
return false;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
27
|
+
finally {
|
|
28
|
+
try {
|
|
29
|
+
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
|
|
30
|
+
}
|
|
31
|
+
finally { if (e_1) throw e_1.error; }
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
return expectedHeadersCorrect;
|
|
35
|
+
}
|
|
36
|
+
exports.matchHeaders = matchHeaders;
|
|
37
|
+
exports.config = {
|
|
38
|
+
apiKey: 'test_key',
|
|
39
|
+
apiSecretKey: 'test_secret_key',
|
|
40
|
+
scopes: new scopes_1.AuthScopes('test_scope'),
|
|
41
|
+
hostName: 'test_host_name',
|
|
42
|
+
hostScheme: 'https',
|
|
43
|
+
apiVersion: base_types_1.LATEST_API_VERSION,
|
|
44
|
+
isEmbeddedApp: true,
|
|
45
|
+
isPrivateApp: false,
|
|
46
|
+
sessionStorage: new memory_1.MemorySessionStorage(),
|
|
47
|
+
};
|
|
@@ -1,14 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
var
|
|
4
|
-
var crypto_1 = require("../../runtime/crypto");
|
|
5
|
-
var session_1 = require("../../runtime/session");
|
|
6
|
-
var platform_1 = require("../../runtime/platform");
|
|
3
|
+
var runtime_1 = require("../../runtime");
|
|
7
4
|
var adapter_1 = require("./adapter");
|
|
8
|
-
(0,
|
|
9
|
-
(0,
|
|
10
|
-
(0,
|
|
11
|
-
(0,
|
|
12
|
-
(0,
|
|
13
|
-
(0,
|
|
14
|
-
(0,
|
|
5
|
+
(0, runtime_1.setAbstractFetchFunc)(adapter_1.workerFetch);
|
|
6
|
+
(0, runtime_1.setAbstractConvertRequestFunc)(adapter_1.workerConvertRequest);
|
|
7
|
+
(0, runtime_1.setAbstractConvertResponseFunc)(adapter_1.workerConvertResponse);
|
|
8
|
+
(0, runtime_1.setAbstractConvertHeadersFunc)(adapter_1.workerConvertHeaders);
|
|
9
|
+
(0, runtime_1.setAbstractCreateDefaultStorage)(adapter_1.workerCreateDefaultStorage);
|
|
10
|
+
(0, runtime_1.setAbstractRuntimeString)(adapter_1.workerRuntimeString);
|
|
11
|
+
(0, runtime_1.setCrypto)(crypto);
|
|
@@ -2,15 +2,12 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
var tslib_1 = require("tslib");
|
|
4
4
|
var crypto_1 = tslib_1.__importDefault(require("crypto"));
|
|
5
|
-
var
|
|
6
|
-
var crypto_2 = require("../../runtime/crypto");
|
|
7
|
-
var session_1 = require("../../runtime/session");
|
|
8
|
-
var platform_1 = require("../../runtime/platform");
|
|
5
|
+
var runtime_1 = require("../../runtime");
|
|
9
6
|
var adapter_1 = require("./adapter");
|
|
10
|
-
(0,
|
|
11
|
-
(0,
|
|
12
|
-
(0,
|
|
13
|
-
(0,
|
|
14
|
-
(0,
|
|
15
|
-
(0,
|
|
16
|
-
(0,
|
|
7
|
+
(0, runtime_1.setAbstractFetchFunc)(adapter_1.mockFetch);
|
|
8
|
+
(0, runtime_1.setAbstractConvertRequestFunc)(adapter_1.mockConvertRequest);
|
|
9
|
+
(0, runtime_1.setAbstractConvertResponseFunc)(adapter_1.mockConvertResponse);
|
|
10
|
+
(0, runtime_1.setAbstractConvertHeadersFunc)(adapter_1.mockConvertHeaders);
|
|
11
|
+
(0, runtime_1.setAbstractCreateDefaultStorage)(adapter_1.mockCreateDefaultStorage);
|
|
12
|
+
(0, runtime_1.setAbstractRuntimeString)(adapter_1.mockRuntimeString);
|
|
13
|
+
(0, runtime_1.setCrypto)(crypto_1.default);
|
|
@@ -2,15 +2,12 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
var tslib_1 = require("tslib");
|
|
4
4
|
var crypto_1 = tslib_1.__importDefault(require("crypto"));
|
|
5
|
-
var
|
|
6
|
-
var crypto_2 = require("../../runtime/crypto");
|
|
7
|
-
var session_1 = require("../../runtime/session");
|
|
8
|
-
var platform_1 = require("../../runtime/platform");
|
|
5
|
+
var runtime_1 = require("../../runtime");
|
|
9
6
|
var adapter_1 = require("./adapter");
|
|
10
|
-
(0,
|
|
11
|
-
(0,
|
|
12
|
-
(0,
|
|
13
|
-
(0,
|
|
14
|
-
(0,
|
|
15
|
-
(0,
|
|
16
|
-
(0,
|
|
7
|
+
(0, runtime_1.setAbstractFetchFunc)(adapter_1.nodeFetch);
|
|
8
|
+
(0, runtime_1.setAbstractConvertRequestFunc)(adapter_1.nodeConvertRequest);
|
|
9
|
+
(0, runtime_1.setAbstractConvertResponseFunc)(adapter_1.nodeConvertAndSendResponse);
|
|
10
|
+
(0, runtime_1.setAbstractConvertHeadersFunc)(adapter_1.nodeConvertAndSetHeaders);
|
|
11
|
+
(0, runtime_1.setAbstractCreateDefaultStorage)(adapter_1.nodeCreateDefaultStorage);
|
|
12
|
+
(0, runtime_1.setAbstractRuntimeString)(adapter_1.nodeRuntimeString);
|
|
13
|
+
(0, runtime_1.setCrypto)(crypto_1.default);
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import { ConfigInterface } from '../../base-types';
|
|
2
2
|
import { AdapterResponse } from '../../runtime/http';
|
|
3
3
|
import { BeginParams, CallbackParams, CallbackResponse } from './types';
|
|
4
|
-
export declare const SESSION_COOKIE_NAME = "shopify_app_session";
|
|
5
|
-
export declare const STATE_COOKIE_NAME = "shopify_app_state";
|
|
6
4
|
export declare function createBegin(config: ConfigInterface): ({ shop, callbackPath, isOnline, ...adapterArgs }: BeginParams) => Promise<AdapterResponse>;
|
|
7
5
|
export declare function createCallback(config: ConfigInterface): <T = any>({ isOnline, ...adapterArgs }: CallbackParams) => Promise<CallbackResponse<T>>;
|
|
8
6
|
//# sourceMappingURL=oauth.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oauth.d.ts","sourceRoot":"","sources":["../../../src/auth/oauth/oauth.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,eAAe,EAAC,MAAM,kBAAkB,CAAC;AAYjD,OAAO,EAIL,eAAe,EAIhB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,
|
|
1
|
+
{"version":3,"file":"oauth.d.ts","sourceRoot":"","sources":["../../../src/auth/oauth/oauth.ts"],"names":[],"mappings":"AAGA,OAAO,EAAC,eAAe,EAAC,MAAM,kBAAkB,CAAC;AAYjD,OAAO,EAIL,eAAe,EAIhB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAGL,WAAW,EACX,cAAc,EAKd,gBAAgB,EACjB,MAAM,SAAS,CAAC;AAIjB,wBAAgB,WAAW,CAAC,MAAM,EAAE,eAAe,sDAM9C,WAAW,KAAG,QAAQ,eAAe,CAAC,CA6C1C;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,eAAe,2CAIjD,cAAc,kCAiFlB"}
|
package/dist/auth/oauth/oauth.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.createCallback = exports.createBegin =
|
|
3
|
+
exports.createCallback = exports.createBegin = void 0;
|
|
4
4
|
var tslib_1 = require("tslib");
|
|
5
5
|
var uuid_1 = require("uuid");
|
|
6
6
|
var processed_query_1 = tslib_1.__importDefault(require("../../utils/processed-query"));
|
|
@@ -12,10 +12,9 @@ var session_utils_1 = require("../../session/session-utils");
|
|
|
12
12
|
var http_client_1 = require("../../clients/http_client/http_client");
|
|
13
13
|
var types_1 = require("../../clients/http_client/types");
|
|
14
14
|
var http_1 = require("../../runtime/http");
|
|
15
|
+
var types_2 = require("./types");
|
|
15
16
|
var nonce_1 = require("./nonce");
|
|
16
17
|
var safe_compare_1 = require("./safe-compare");
|
|
17
|
-
exports.SESSION_COOKIE_NAME = 'shopify_app_session';
|
|
18
|
-
exports.STATE_COOKIE_NAME = 'shopify_app_state';
|
|
19
18
|
function createBegin(config) {
|
|
20
19
|
var _this = this;
|
|
21
20
|
return function (_a) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
|
|
@@ -34,7 +33,7 @@ function createBegin(config) {
|
|
|
34
33
|
secure: true,
|
|
35
34
|
});
|
|
36
35
|
state = (0, nonce_1.nonce)();
|
|
37
|
-
return [4 /*yield*/, cookies.setAndSign(
|
|
36
|
+
return [4 /*yield*/, cookies.setAndSign(types_2.STATE_COOKIE_NAME, state, {
|
|
38
37
|
expires: new Date(Date.now() + 60000),
|
|
39
38
|
sameSite: 'lax',
|
|
40
39
|
secure: true,
|
|
@@ -79,10 +78,10 @@ function createCallback(config) {
|
|
|
79
78
|
keys: [config.apiSecretKey],
|
|
80
79
|
secure: true,
|
|
81
80
|
});
|
|
82
|
-
return [4 /*yield*/, cookies.getAndVerify(
|
|
81
|
+
return [4 /*yield*/, cookies.getAndVerify(types_2.STATE_COOKIE_NAME)];
|
|
83
82
|
case 2:
|
|
84
83
|
stateFromCookie = _c.sent();
|
|
85
|
-
cookies.deleteCookie(
|
|
84
|
+
cookies.deleteCookie(types_2.STATE_COOKIE_NAME);
|
|
86
85
|
if (!stateFromCookie) {
|
|
87
86
|
throw new ShopifyErrors.CookieNotFound("Cannot complete OAuth process. Could not find an OAuth cookie for shop url: ".concat(query.get('shop')));
|
|
88
87
|
}
|
|
@@ -116,7 +115,7 @@ function createCallback(config) {
|
|
|
116
115
|
config: config,
|
|
117
116
|
});
|
|
118
117
|
if (!!config.isEmbeddedApp) return [3 /*break*/, 6];
|
|
119
|
-
return [4 /*yield*/, cookies.setAndSign(
|
|
118
|
+
return [4 /*yield*/, cookies.setAndSign(types_2.SESSION_COOKIE_NAME, session.id, {
|
|
120
119
|
expires: session.expires,
|
|
121
120
|
sameSite: 'lax',
|
|
122
121
|
secure: true,
|